\scaleDurations を使用した多拍子の部分で拍子記号を変更する
measureLength, measurePosition プロパティは、小節線がどのタイミングで必要になるかを決定しています。しかし、\scaleDurations を使用する際、拍子記号と整合性が取れなくなることがあります。この場合には、measureLength を ly:make-moment
コールバックを用いて手動でセットします。2 つ目の引数は \scaleDurations
の 2 つ目の引数と一致している必要があります。
\layout {
\context {
\Score
\remove "Timing_translator"
\accepts TimingStaffGroup
}
\context {
\StaffGroup
\name TimingStaffGroup
\alias StaffGroup
\consists "Timing_translator"
}
}
<<
\new TimingStaffGroup <<
\new Staff {
\scaleDurations 8/5 {
\time 6/5 % to set measure length in Timing
\context Staff \polymetric \time 6/8
b8 b b b b b
\time 4/5 % to set measure length in Timing
\context Staff \polymetric \time 2/4
b4 b
}
}
>>
\new TimingStaffGroup <<
\new Staff {
\clef bass
\time 2/4
c2 d e f
}
>>
>>