lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

beat divisions and compound meter


From: N. Andrew Walsh
Subject: beat divisions and compound meter
Date: Sat, 25 Nov 2017 12:13:30 +0100

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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]