On 24 November 2017 at 16:21, David Wright <[email protected]> wrote:
> On Fri 24 Nov 2017 at 10:08:29 (+0100), David Kastrup wrote: > > Gianmaria Lari <[email protected]> writes: > > > > > On 24 November 2017 at 09:49, David Kastrup <[email protected]> wrote: > > > > > >> Gianmaria Lari <[email protected]> writes: > > >> > > >> > I'm sorry for the trivial question but why this code is wrong? > > >> > > > >> > \version "2.19.80" > > >> > > > >> > music = {a b} > > >> > \music > > >> > > > >> > > > >> > My understanding was that "\music" is substituted by its value "{a > > >> b}".... > > >> > > >> You need to put anything in between. LilyPond looks at \music before > > >> deciding the assignment is complete because the assignment could be > > >> > > >> music = {a b} \addlyrics {Oh well} > > >> > > >> For that it needs to decide what \music is but the assignment is not > yet > > >> complete... > > > > > > Thank you David! > > > > > > It is a bit frustrating. > > > > If you think that is frustrating, try working on the parser. I didn't > > design that insane \addlyrics syntax. > > > > > Even apparently simple things are complicated.... but that's ok. > > > > Things are complicated _because_ of appearing simple. Some simple > > appearances are more complicated to do than others. > > > > You would not want to write your music in Scheme syntax, and that would > > be by far the simplest to make sense of. > > > > I've worked on that late assignment nuisance a few times already. > > When you think that writing just > > \music > > can buy you > > \score { > \new Staff { > \new Voice { > \music > } > } > } > > and more, then having to write at least > > { > \music > } > > won't seem so onerous. > > Cheers, > David. > It was just a theoretical question. I wanted to understand why this code is correct: {a} but not this music = {a} \a Now that I have understand the reason of the behaviour we can discuss it :)
_______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
