Grouping contexts: Difference between revisions
Appearance
m I deleted the full keyword because, as far as I can tell, this snippet does not need to demonstrate page layout features. |
mNo edit summary |
||
| Line 2: | Line 2: | ||
<lilypond version="2.24"> | <lilypond version="2.24"> | ||
topVoice = \relative c' { | topVoice = \relative c' { | ||
\key d\major | \key d\major | ||
| Line 46: | Line 40: | ||
\score { | \score { | ||
\ | \new Staff << \topVoice \\ \botVoice >> | ||
} | } | ||
\score { | \score { | ||
Latest revision as of 21:35, 2 February 2026
In polyphonic notation, many voices can share a staff: In this situation, the accidentals and staff are shared, but the stems, slurs, beams, etc., are private to each voice. Hence, engravers should be grouped. The engravers for note head, stems, slurs, etc., go into a group called “Voice context”, while the engravers for key, accidental, bar, etc., go into a group called “Staff context”. In the case of polyphony, a single Staff context contains more than one Voice context. Similarly, more Staff contexts can be put into a single Score context.
\version "2.24"
topVoice = \relative c' {
\key d\major
es8([ g] a[ fis])
b4
b16[-. b-. b-. cis-.]
d4->
}
botVoice = \relative c' {
\key d\major
c8[( f] b[ a)]
es4
es16[-. es-. es-. fis-.]
b4->
}
hoom = \relative c {
\key d \major
\clef bass
g8-. r
r4
fis8-.
r8
r4
b'4->
}
pah = \relative c' {
r8 b-.
r4
r8 g8-.
r16 g-. r8
\clef treble
fis'4->
}
\score {
\new Staff << \topVoice \\ \botVoice >>
}
\score {
<<
\new Staff << \topVoice \\ \botVoice >>
\new Staff << \pah \\ \hoom >>
>>
}