Subdivision des ligatures

Les ligatures d’une succession de notes de durée inférieure à la double croche ne sont pas subdivisées par défaut. Autrement dit, tous les traits de ligature (deux ou plus) seront continus. Ce comportement peut être modifié afin de diviser la ligature en sous-groupes grâce à la propriété subdivideBeams. Lorsqu’elle est activée, un certain nombre de traits de ligature entre deux hampes est supprimé à des intervalles correspondant à la durée de sous-groupe souhaitée.

Les propriétés beamMinimumSubdivision et beamMaximumSubdivision permettent de configurer les limites de la subdivision automatique des ligatures : l’intervalle rythmique minimum auquel subdiviser et le nombre de tronçons supprimés selon cet intervalle. Lorsque le nombre fourni à beamMaximumSubdivision n’est pas une puissance de 2, la plus petite durée pour subdiviser sera de beamMaximumSubdivision divisé par une puissance de 2 tout en restant supérieur ou égal à beamMinimumSubdivision. Dès lors que beamMaximumSubdivision est inférieur à beamMinimumSubdivision, la profondeur de subdivision se limite à beamMaximumSubdivision mais pas la fréquence ou l’intervalle, ce qui peut dévier de la valeur métrique à laquelle on est en droit de s’attendre.

Lorsque la propriété respectIncompletBeams est activée, la profondeur de la subdivision (le nombre de traits de ligature) correspond à la durée la plus longue de sous-groupe possible à partir de la hampe considérée. Les deux dernières hampes de la ligature sont toutefois exclues de cette règle.

\relative c'' {
  c32[ c c c c c c c]

  \set subdivideBeams = ##t
  c32[ c c c c c c c]

  % Set minimum beam subdivision interval to 1/8 just for this beam
  \once \set beamMinimumSubdivision = #1/8
  c32[ c c c c c c c]

  % Set maximum beam subdivision interval to 1/16 just for this beam
  \once \set beamMaximumSubdivision = #1/16
  c32[ c c c c c c c]

  % Set maximum beam subdivision interval to 3/8 just for this beam
  \once \set beamMaximumSubdivision = #3/8
  [ \repeat unfold 16 c64 ] r2.

  % Set maximum beam subdivision interval to 1/64 to limit subdivision depth,
  % despite not being metrically correct
  \once \set beamMinimumSubdivision = #1/32
  \once \set beamMaximumSubdivision = #1/64
  [ \repeat unfold 32 c128 ] r2.

  % Shorten beam by 1/32
  c32[ c c c c c c] r32

  % Shorten beam by 3/32
  c32[ c c c c] r16.

  % Respect the incomplete beams of the previous two examples
  \set respectIncompleteBeams = ##t
  c32[ c c c c c c] r32
  % no visual change here as last two stems are exempt from this
  % special rule
  c32[ c c c c] r16.
}

[image of music]


LilyPond snippets v2.25.23 (development-branch).