On Thu, Jan 3, 2013 at 10:59 PM, Shane Brandes <sh...@grayskies.net> wrote:

> To give you a reverse opinion. Lilypond at a basic level is fairly
> easy to understand especially if you use a program like Frescobaldi to
> help you construct the scores with their various parts.


This is my experience as well. Writing the music and articulations is
pretty straightforward one you get the logic. Slurring may look
counter-intuitive but it makes sense: to add a slur between b and c & d,
you would write "b ( c d )" and not "(b c d)" as the "(" means "starting
from the last note, start a slur up to and including the note before ")". A
similar logic holds for manual beaming. Writing music in relative mode is
easy as well - if the distance to the note is less than a fifth, then you
don't need to add a "'" or "," octave changing mark.


> That initially
> was to me the greatest challenge. With Frescobaldi you can build
> scores and then from there learn how the syntax works. Additionally
> with such an external editor it will point out syntax errors which is
> really handy even if you have a great understanding of Lilypond it can
> be a chore to find a simple small syntax error in a plain text file.
> Doable certainly fun no. So as far as simply getting up and running it
> should not take to terribly long.


I agree. Frescobaldi has another advantage: it supports built-in syntax
highlighting and you can click on error messages and will be brought to the
offending bit in the offending file. You can also click on a note in the
PDF preview to go to the source file where that note was defined (e.g., to
correct an octave error). And ifg you create MIDI output you can even play
back the MIDI from within Frescobaldi (if you added a "\midi{}" construct
in your "\score" block.


> Of course it is when you want
> Lilypond to do things that are either nonstandard practice or not yet
> resolved in terms of what the program is capable of automagically that
> is when it can be a bit of a bear and you must begin to really think
> about how to get around odd things.


This is absolutely true. The main difficulty is that LilyPond makes use of
Scheme, which is a programming language that is not seen very frequently
and has its own logic. I'm a software engineer and even I have difficulties
understanding Scheme as I never was taught Scheme so far - I need to learn
it on-the-fly, along with the LilyPond code and a lot of useful snippets
you can find via your preferred search engine.

For example I would like to make a
> trill line go for a measure or so without the obligatory Tr. showing
> up at the beginning. You think oh that should be easy. Let's turn off
> the Trill part. After searching the user manual and wading through the
> lilypond snippet repository (if you have not seen this yet it is an
> selection of useful code that does not need to clutter up the user
> manual) you discover there is no easy way. So you think to yourself
> well the trill line is made by a widget called a spanner maybe I can
> redefine a spanner to do what you want so you go looking at the bits
> of the manual that talk about lines and you then find a way to
> redefine a dynamic spanner as a line and voila you realize you can
> tell it what sort of line to be and after a bit you have a trill
> marking senza the Tr. and the best part is in that process you learn
> all manner of other odd things that are possible that you might not
> need at the moment. Of course there maybe even other ways of cracking
> such a problem.


There's not one way only that leads to Rome, as one says :-)

One you start touching the internals of LilyPond, you get exposed to a
completely new universe where virtually everything is possible.


> And on top of that the people that hang about this
> list are generally very good about giving suggestions and pointing
> people in the right direction.
>

That is absolutely true!

Best regards,

Olivier
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to