La commande \textLengthOn

Par défaut, l’espacement horizontal d’un texte produit sous forme de markup (ou d’étiquette) n’est pas pris en compte, dans la mesure où ce qui est concerné n’entre pas dans la musique. La commande \textLengthOn modifie ce comportement, faisant en sorte que les notes soient espacées autant qu’il le faut pour s’adapter au texte :

\textLengthOn  % Cause notes to space out to accommodate text
c''2^"Text1"
c''2^"Text2" |
c''2^"Text3"
c''2^"Text4" |

[image of music]

La commande qui permet de revenir au comportement par défaut est \textLengthOff. Alternativement, lorsque l’instruction \textLengthOn se limite à un seul instant musical, vous pouvez la préfixer d’un \once.
LilyPond dispose de commandes équivalentes et dévolues au traitement des repères et indications de tempo : \markLengthOn et \markLengthOff.

Les textes des markup éviteront également les notes qui s’échappent au-dessus de la portée. Si ce n’est pas notre souhait, il est possible de supprimer ce déplacement automatique vers le haut en attribuant à la priorité la valeur #f. Voici un exemple qui montre comment les textes des markup interagissent avec ces types de note.

\relative {
  % This markup is short enough to fit without collision
  c''2^"Tex" c'' |
  R1 |

  % This is too long to fit, so it is displaced upwards
  c,,2^"Text" c'' |
  R1 |

  % Turn off collision avoidance
  \once \override TextScript.outside-staff-priority = ##f
  c,,2^"Long Text   " c'' |
  R1 |

  % Turn off collision avoidance
  \once \override TextScript.outside-staff-priority = ##f
  \textLengthOn        % and turn on textLengthOn
  c,,2^"Long Text   "  % Spaces at end are honored
  c''2 |
}

[image of music]


GNU LilyPond – Manuel d’initiation v2.25.21 (branche de développement).