Я пытаюсь написать барабанную партитуру 12/8 в Lilypond с большим количеством фразировок из 32-х нот, и группировка лучей по умолчанию выглядит немного уродливо:
( Вот приведенный выше пример в LilyBin: http://lilybin.com/w0s4nh/2 )
Я бы хотел, чтобы он был разделен на группы восьмых нот, например:
Как видно из ссылки на LilyBin, которую я вставил выше (строка 36), я попытался изменить параметр baseMoment в соответствии с документацией , но не имеет значения, что я установил, передача всегда остается неизменной.
Есть ли что-нибудь еще, что я должен делать здесь?
Вот хорошее начало.
\layout {
\context {
\DrumStaff
drumStyleTable = #(alist->hash-table drum-table)
subdivideBeams = ##t
baseMoment = #(ly:make-moment 1/8)
beatStructure = #'(3 3 3 3)
}
}
top = \drummode {
cymc8 \repeat unfold 5 { cymr }
cymr16 \repeat unfold 8 { sn32 }
\repeat unfold 6 { toml }
\repeat unfold 8 { tomfl }
}
bot = \drummode {
bd4 bd16 bd
sn bd sn bd sn bd
bd8 \repeat unfold 5 { hhp }
}
\score {
\new DrumStaff <<
\new DrumVoice {
\voiceOne \time 12/8 \top
}
\new DrumVoice {
\voiceTwo \time 12/8 \bot
}
>>
\layout {}
}
В конечном итоге это приводит к разделению вашего кода на более управляемые части: музыка — это просто музыка, макет — это просто макет, а партитура — это просто партитура. (Ну, по большей части). Таким образом, когда вам нужно внести изменения, вы можете гораздо быстрее определить, где это изменение должно произойти.
В таком случае вам может понадобиться временно смешать музыку и макет только для одного тембра:
\layout {
\context {
\DrumStaff
drumStyleTable = #(alist->hash-table drum-table)
}
}
top = \drummode {
\set Voice.subdivideBeams = ##t
\set Voice.baseMoment = #(ly:make-moment 1/8)
\set Voice.beatStructure = #'(3 3 3 3)
cymc8 \repeat unfold 5 { cymr }
cymr16 \repeat unfold 8 { sn32 }
\repeat unfold 6 { toml }
\repeat unfold 8 { tomfl }
}
bot = \drummode {
bd4 bd16 bd
sn bd sn bd sn bd
bd8 \repeat unfold 5 { hhp }
}
\score {
\new DrumStaff <<
\new DrumVoice {
\voiceOne \time 12/8 \top
}
\new DrumVoice {
\voiceTwo \time 12/8 \bot
}
>>
\layout {}
}
На мой взгляд, там, где вы можете добиться чего-то «программно», как в первом примере, это предпочтительнее. Но в крайнем случае или там, где это необходимо, второй пример может работать.
Нил
нунки
Нил