1.2.4 Barres de ligature


Barres de ligature automatiques

LilyPond décide automatiquement de la manière de grouper les notes et d’imprimer les ligatures.

\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8

[image of music]

Lorsque ce comportement automatisé n’est pas satisfaisant, on peut définir des groupements manuellement — voir section suivante — ou personnaliser les groupements automatiques — voir Définition des règles de ligature automatique.

La commande \noBeam peut servir à empêcher des notes individuelles d’être rattachées aux autres.

\time 2/4 c8 c\noBeam c c

[image of music]

Voir aussi

Référence du programme : Beam.


Définition des règles de ligature automatique

Dans les métriques courantes, les ligatures automatiques peuvent commencer sur n’importe quelle note, mais ne peuvent se terminer qu’à certains points précis dans la mesure : sur une pulsation, ou après toute durée spécifiée par les propriétés nommées autoBeamSettings. Ces propriétés consistent en une liste de règles relatives au début ou à la fin des ligatures. Par défaut, elles sont définies dans le fichier ‘scm/auto-beam.scm’.

On peut ajouter à cette liste une nouvelle règle, au moyen de la commande

#(override-auto-beam-setting '(extrémité p q n m) a b [contexte])

Par exemple, si l’on veut que les ligatures s’achèvent toujours après la première noire :

#(override-auto-beam-setting '(end * * * *) 1 4)

On peut obliger une règle de ligatures à ne s’appliquer qu’à des groupes dont la note la plus brève est d’une valeur précise :

\time 2/4
#(override-auto-beam-setting '(end 1 16 * *) 1 16)
a16 a a a a a a a |
a32 a a a a16 a a a a a |
#(override-auto-beam-setting '(end 1 32 * *) 1 16)
a32 a a a a16 a a a a a |

[image of music]

On peut obliger une règle de ligatures à ne s’appliquer que pour un chiffre de mesure précis :

\time 5/8
#(override-auto-beam-setting '(end * * 5 8) 2 8)
c8 c d d d
\time 4/4
e8 e f f e e d d
\time 5/8
c8 c d d d

[image of music]

Enfin, on peut désactiver une règle de ligatures au moyen du réglage suivant :

#(revert-auto-beam-setting '(extrémité p q n m) a b [contexte])

extrémité, p, q, n, m, a, b et contexte étant les mêmes que plus haut. Il est même possible de désactiver des règles que l’on n’a pas explicitement créées : les règles par défaut, qui se trouvent dans le fichier ‘scm/auto-beam.scm’.

\time 4/4
a16 a a a a a a a a a a a a a a a
#(revert-auto-beam-setting '(end 1 16 4 4) 1 4)
a16 a a a a a a a a a a a a a a a

[image of music]

La commande revert-auto-beam-setting requiert exactement les mêmes arguments que la règle d’origine. En d’autres termes, les étoiles ne seront pas prises en compte ici.

\time 1/4
#(override-auto-beam-setting '(end 1 16 1 4) 1 8)
a16 a a a
#(revert-auto-beam-setting '(end 1 16 * *) 1 8) % ceci ne désactive pas la règle !
a a a a
#(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % ceci marche
a a a a

[image of music]

Si, dans une mesure à 5/4, l’on veut que les ligatures soient regroupées temps par temps, il est nécessaire d’indiquer toutes les terminaisons de ligatures.

#(override-auto-beam-setting '(end * * * *) 1 4 'Staff)
#(override-auto-beam-setting '(end * * * *) 1 2 'Staff)
#(override-auto-beam-setting '(end * * * *) 3 4 'Staff)
#(override-auto-beam-setting '(end * * * *) 5 4 'Staff)
…

La même syntaxe peut servir à définir les points de départ des ligatures. Dans l’exemple suivant, les ligatures automatiques ne peuvent se terminer que sur une noire pointée.

#(override-auto-beam-setting '(end * * * *) 3 8)
#(override-auto-beam-setting '(end * * * *) 1 2)
#(override-auto-beam-setting '(end * * * *) 7 8)

Dans une mesure à 4/4, cela implique que les ligatures ne peuvent se terminer que sur la troisième croche, ou sur le quatrième temps (après la valeur de deux fois trois croches).

Si une ligature se fait de manière inattendue, pensez à vérifer les règles automatiques dans le fichier ‘scm/auto-beam.scm’ pour rechercher d’éventuels conflits, dans la mesure ou les règles par défaut s’ajoutent à vos propres règles. Il est alors nécessaire de désactiver toute règle par défaut conduisant à des ligatures indésirables.

Ainsi, pour obtenir des ligatures en groupes de (3 4 3 2) croches, dans une mesure à 12/8, il faudra préalablement utiliser :

%%% annulons les réglages par défaut relatifs à 12/8, dans scm/auto-beam.scm 
#(revert-auto-beam-setting '(end * * 12 8) 3 8)
#(revert-auto-beam-setting '(end * * 12 8) 3 4)
#(revert-auto-beam-setting '(end * * 12 8) 9 8)

%%% puis ajoutons nos propres règles
#(override-auto-beam-setting '(end 1 8 12 8) 3 8)
#(override-auto-beam-setting '(end 1 8 12 8) 7 8)
#(override-auto-beam-setting '(end 1 8 12 8) 10 8)

Si des ligatures sont utilisées dans les paroles d’une chanson (pour indiquer des mélismes), les ligatures automatiques doivent être désactivées, avec \autoBeamOff.

Commandes prédéfinies

\autoBeamOff, \autoBeamOn.

Propriétés couramment modifiées

Les groupes de notes reliées par les ligatures peuvent être spécifiés au moyen de la propriété beatGrouping.

\time 5/16
\set beatGrouping = #'(2 3)
c8[^"(2+3)" c16 c8]
\set beatGrouping = #'(3 2)
c8[^"(3+2)" c16 c8]

[image of music]

Problèmes connus et avertissements

Si une partition se termine alors qu’une ligature automatique est restée inachevée, cette dernière ligature ne sera pas imprimée du tout. C’est également valable dans le cas d’une musique polyphonique, saisie avec la syntaxe << … \\ … >>, où une voix se terminerait sans que la dernière ligature soit achevée.


Barres de ligature manuelles

Dans certaines situations, il peut s’avérer nécessaire de supplanter l’algorithme de groupement automatique des notes, par exemple pour prolonger une ligature par-dessus un silence ou une barre de mesure. Le début et la fin de la ligature sont alors indiqués par [ et ].

{
  r4 r8[ g' a r8] r8 g[ | a] r8
}

[image of music]

Propriétés couramment modifiées

LilyPond peut déterminer automatiquement les sous-groupes à l’intérieur d’un groupement de notes, bien que le résultat ne soit pas toujours optimal. Les propriétés stemLeftBeamCount et stemRightBeamCount permettent alors d’ajuster ce comportement. Lorsque l’une ou l’autre de ces propriétés est définie, elle ne s’applique qu’une seule fois, après quoi sa définition est effacée.

{
   f8[ r16
      f g a]
   f8[ r16
   \set stemLeftBeamCount = #1
      f g a]
}

[image of music]

La propriété subdivideBeams sert à grouper les double-croches ou les valeurs plus brèves pulsation par pulsation, la pulsation étant définie par la propriété beatLength.

c16[ c c c c c c c]
\set subdivideBeams = ##t
c16[ c c c c c c c]
\set Score.beatLength = #(ly:make-moment 1 8)
c16[ c c c c c c c]

[image of music]

Pour plus d’information sur make-moment, voir Gestion du temps.

Lorsqu’une ligature franchit une barre de mesure, le saut de ligne est en principe interdit à cet endroit. Ce comportement peut être outrepassé en définissant breakable.

LilyPond insère automatiquement des ligatures coudées — certaines notes vers le haut, d’autres vers le bas — lorsqu’il détecte un espace important entre des têtes de notes. Ce comportement peut être changé par l’intermédiaire de l’objet auto-knee-gap

Problèmes connus et avertissements

Les ligatures coudées à cheval sur deux portées ne peuvent être employées en même temps que des portées invisibles. Voir Masquage de portées.

Les ligatures peuvent entrer en collision avec des symboles entourant les notes, contrairement aux textes ou aux altérations.


Liens de croches en soufflet

Les ligatures en soufflet s’obtiennent en définissant la propriété grow-direction d’une barre de ligature. La fonction \featherDurations sert à ajuster la durée des notes.

\override Beam #'grow-direction = #LEFT
\featherDurations #(ly:make-moment 5 4) 
{
  c16[ c c c c c c]
}

[image of music]

Problèmes connus et avertissements

La commande \featherDurations ne permet de traiter que de très courts extraits.


Autres langues : English, español, deutsch.

Manuel de notation