|
From: | Harald Christiansen |
Subject: | Understanding Lilypond language |
Date: | Sun, 06 Apr 2014 17:18:50 +1000 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 |
Hello, Is there a manual for the lilypond language itself ? I don't get it ... is it a programming language ... a macro expander ... all of the above ? I cannot build a mental model of how it works. For example, let's take variables. I take the notation reference, I look at the index and I see several entries. One entry specifies: 3.1.5 File structure [...] A variable, such as So far so good.foo = { c4 d e d } Another entry: 3.3.2 Different editions from one source [...] Using variables allLyrics = \lyricmode {King of glo -- ry } Is this just a macro substitution ? But then in one of my own I have to declare myLayout = \layout { <bla bla bla } even if \myLayout is used inside of a \layout section So it seems that there is more going on but what ? Are the variables typed ? (i.e. myLayout is of type \layout and I have to cast it or declare it ? I don't get it) I understand that at some level underneath lilypond uses Scheme (Guile) but how specifically ? e.g. \set Staff.printPartCombineTexts = ##f The way I guess this is: '#f' is the false atom, the first # switches to Guile interpretation ... but beyond this all is completely foggy. Thanks in advance for any help. Cheers, -- Nihil verus. Omnia possibilia. |
[Prev in Thread] | Current Thread | [Next in Thread] |