What is needed is for the secondary beam (the sixteenth beam) to be broken between each quintuplet group in the first measure of the left hand.
> 7 nov. 2024 kl. 06:11 skrev Jason Yip <sripedia_getp...@slmail.me>: > > On 2024-11-06 10:57, Richard Gress - rgress(a)nd.edu wrote: >> Hi everyone, >> I'm engraving a measure of Sorabji's First Symphony for Organ. In the left >> hand part, beams should be subdivided each dotted sixteenth note. However, >> the current behavior is that the beams are subdivided every beat (3 eighth >> notes in 9/8 time.) Here's my example. I will trim it down, but it will >> still be a lot, since I'm not sure what could possibly be interfering. I >> have tried many different settings for the variables, and time signatures. >> ... >> \version "2.24.4" >> #(set-default-paper-size "letterlandscape") >> upperOne = \relative c' { >> \clef treble >> %%%%% Time sig for first measure >> \time 9/8 >> \accidentalStyle forget >> << { >> \oneVoice ees8.[( fis a~] \tuplet 5/3 { a[ aes8] } a!8.[ c] \bar "!" \break >> %%%%% Time sig for second measure >> \compoundMeter #'((3 8) (3 8) (3 8) (3 16) (3 8) (3 8)) >> e,[ g] bes8[ a gis] \tuplet 5/3 { g!8.[ fis8] } e8. \voiceOne \tuplet 5/3 >> { d[ e8 ] } gis4.~gis16.[ a f8.]) >> } \\ { >> s1 s8 s2. s16. s s s \voiceTwo \once \override TupletBracket.positions = >> #'(-8 . -9.5) \tuplet 5/3 { r16 bes,[( a8 g16] } cis8[ b a] gis4.) >> } >> >> } >> upperTwo = \relative c { >> \clef bass >> \accidentalStyle forget >> << { \oneVoice >> \set subdivideBeams = ##t >> %%%%% Here is where the problem occurs. We're in 9/8 time. >> \set baseMoment = #(ly:make-moment 3/32) >> \set beatStructure = 2,2,2,2 %%%%% Whatever I set this to does nothing. >> Same behavior if omitted. >> \tuplet 5/3 { r16 cis([ d f e } >> \tuplet 5/3 { g f g aes bes } >> \tuplet 5/3 { b! g c d ees \clef treble } >> \tuplet 5/3 { f e! f g8 } >> \tuplet 5/3 { a!16 b c d ees } >> \tuplet 5/3 { d f e! d cis } >> \tuplet 5/3 { c! ees d c b } >> \tuplet 5/3 { bes des c bes aes] } >> \set baseMoment = #(ly:make-moment 1/8) >> \tuplet 3/2 { g[ b a } \tuplet 3/2 { f e d } cis8] >> \tuplet 5/3 { \clef bass c16[ b bes a g] } >> \set subdivideBeams = ##f >> f32[ e d c b bes] >> \tuplet 5/3 { a16[ f e' g f,] } >> \set subdivideBeams = ##t >> \set baseMoment = #(ly:make-moment 3/16) >> \tuplet 4/3 { e[ d c' e } >> \tuplet 4/3 { c, aes' c fis,]~ } \voiceTwo >> \tuplet 4/3 { fis[ c' ees a } >> \tuplet 4/3 { g b \clef treble g' b]) } >> } \\ { >> s1 s8 s8. s s4. s8. s s s4. \accidentalStyle default \voiceOne fis,,8.[ >> \accidentalStyle forget g'] >> } >> >> } >> \score { >> \new PianoStaff \with { \omit TimeSignature } >> << >> \new Staff = "upper1" \upperOne >> \new Staff = "upper2" \upperTwo >> >> >> } >> ... >> How do I get the beams in the first measure to be subdivided twice as often? >> The other beams look OK. > > Did you try running the latest development version of Lilypond? I have > attached the output of your score under version 2.25.21. You can even comment > out setting baseMoment and beatStructure--they do not seem to affect the > output. Is this what you are looking for? > > Note that I authored the new beam subdivision algorithm present in the 2.25.8 > version (but not in the 2.24 version series). It seems that your use case is > most likely not possible under the old algorithm. Let me know if you need > more help tuning the beam subdivision. > <20241106_21h05m04s_grim.png>