Hi List,

I have a file with the following functions defined:

beambreakOn = {
  \set subdivideBeams = ##t
  \set baseMoment = #(ly:make-moment 1/8)
  \set beatStructure = #'(2 2 2 2)
}

beambreakOff = {
  \set subdivideBeams = ##f
  \set baseMoment = #(ly:make-moment 1/8)
  \set beatStructure = #'(2 2 2 2)
}

when invoked inside a music expression, they set all beams greater than the
8th (that is, past the first) to break at the 8th note. This allows, for
example, the following expression (pseudo-code):

{ a32 b c d e f g16 }

to split neatly at the midpoint, clarifying the metric structure. The
problem is, later on in the piece I have the following command:

\compoundMeter #'((3 4 16))

and a measure with the contents (pseudo-code):

{ < f a c >8 < d fis a >16 < f a c > < g b d >8\fermata < d fis a >16 }

theoretically, this should automatically divide thus:

{ < f a c >8[ < d fis a >16] < f a c >[ < g b d >8\fermata < d fis a >16] }

but instead it divides:

{ < f a c >8[ < d fis a >16 < f a c >] < g b d >8\fermata[ < d fis a >16] }

Here's the whole thing in a MWE:

---------------------------------
\version "2.19.80"


beambreakOn = {
  \set subdivideBeams = ##t
  \set baseMoment = #(ly:make-moment 1/8)
  \set beatStructure = #'(2 2 2 2)
}

beambreakOff = {
  \set subdivideBeams = ##f
  \set baseMoment = #(ly:make-moment 1/8)
  \set beatStructure = #'(2 2 2 2)
}


\relative c' {
  \time 4/8

  %1
  \beambreakOn a32\( b cis dis eis8\) a,32\( b cis dis eis16\)\fermata < a,
cis e >32 < a cis e > \beambreakOff

  | %2
  \compoundMeter #'((4 3 16))
  < f' a c >8 < d fis a >16 < f a c > < g b d >8\fermata < d fis a >16

  | %3
  \time 4/8
  \beambreakOn a32\( b cis dis eis8\) a,32\( b cis dis eis16\)\fermata < a,
cis e >32 < a cis e > \beambreakOff
}
---------------------------------

Is there a command I can insert after the first measure to allow the
\compoundMeter command to reset beam divisions as intended?

Cheers,

A
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to