On Wed, Feb 29, 2012 at 9:22 AM, David Kastrup <d...@gnu.org> wrote: > Janek Warchoł <janek.lilyp...@gmail.com> writes: > >>> Contextmodifications can be placed in variables, so you can write >>> >>> aasettings = \with { ... } >>> >>> and later use >>> >>> \new Voice = aa \aasettings { ... } >>> >>> or >>> >>> \new Voice = aa \with \aasettings { ... } >> >> sure, i can do this. Nevertheless, writing these in \layout {} would >> be more elegant > > No. An arbitrary number of named contexts can occur in the text, and > some are implicitly named anyway. So you want to change _all_ contexts > of a given type in \layout and/or derive a new context type (aaVoice or > so) and then use \new aaVoice ... in the score. > >> and in my opinion easier to maintain: \layout must be placed at the >> end of \score block, while variables containing context modifications >> must be defined before they are used, i.e. before \score block. Thus, >> style decisions are spread over two places. > > A _style_ is something affecting _all_ contexts of a given type, not > just particular contexts with a particular id.
Hmm. I'm not sure if i understand what you mean. Let me give an example case where i think that named context thingy would be useful: i have a piece for 3 SATB choirs; the structure is \score { << \new ChoirStaff = ChoirOne << \new Staff = soprano { } \new Staff = alto { } \new Staff = tenor { } \new Staff = bass { } >> \new ChoirStaff = ChoirTwo << \new Staff = soprano { } \new Staff = alto { } \new Staff = tenor { } \new Staff = bass { } >> \new ChoirStaff = ChoirThree << \new Staff = soprano { } \new Staff = alto { } \new Staff = tenor { } \new Staff = bass { } >> >> i'll print scores separately for each choir, so to save space i can make two choirStaves smaller in each print. In other words, first choir will get a score with regularly sized ChoirOne and smaller ChoirTwo and ChoirThree, and so on. I would find it handy if i could write \layout { \override ChoirTwo.StaffSymbol #'size = -3 \override ChoirThree.StaffSymbol #'size = -3 } to achieve this. Also, in my opinion it would be nice if i could use \layout { \override soprano.StaffSymbol #'thickness = 2 } to make all soprano staffs thicker. I could then very easily change it to make all alto staffs thicker, and so on. I don't insist that LilyPond should work this way; i'm only saying that i'd find it intuitive and useful. > And of course you can to > > mylayout = \layout { ... } > > at the top and then use it as a layout definition afterwards. That's nice, i didn't think about it. Thanks! Janek _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel