4.3.1 Sauts de ligne

Les sauts de ligne sont normalement gérés de façon automatique. Ils interviennent de telle sorte qu’une ligne ne soit ni trop resserrée, ni trop aérée, et que des lignes consécutives aient à peu près la même densité.

Vous pouvez cependant insérer l’instruction \break à l’endroit où vous le jugez utile pour « forcer » le passage à la ligne suivante :

\relative c'' {
  c4 c c c | \break
  c4 c c c |
}

[image of music]

Par défaut, un saut de ligne ne saurait intervenir au beau milieu d’une mesure ; LilyPond vous le signalera par un message lors de la compilation du fichier. Si d’aventure vous voulez forcer un saut de ligne en l’absence de barre de mesure, vous devrez auparavant insérer une barre invisible – à l’aide de \bar "".

\relative c'' {
  c4 c c
  \bar ""
  \break
  c |
  c4 c c c |
}

[image of music]

LilyPond ignorera un \break placé sur une barre à la fin d’une mesure dès lors que la précédente avait une note en suspend – c’est typiquement le cas lorsqu’un n-olet est à cheval sur deux mesures. L’instruction \break sera toutefois opérationnelle si vous avez auparavant désactivé le Forbid_line_break_engraver du contexte Voice concerné. Notez bien qu’en pareil cas, les sauts de ligne forcés doivent être saisis au sein d’une expression polyphonique :

\new Voice \with {
  \remove "Forbid_line_break_engraver"
} \relative {
  <<
    { c''2. \tuplet 3/2 { c4 c c } c2. | }
    { s1 | \break s1 | }
  >>
}

[image of music]

Selon le même principe, un saut de ligne ne peut intervenir alors qu’une ligature s’étend sur deux mesures consécutives. Il faut en ce cas là introduire la dérogation \override Beam.breakable = ##t.

\relative c'' {
  \override Beam.breakable = ##t
  c2. c8[ c | \break
  c8 c] c2. |
}

[image of music]

L’instruction opposée, \noBreak, interdira toute tentative de saut de ligne à la fin de la mesure où elle est explicitée.

Au sein même d’une pièce, les sauts de lignes automatiques sont inhibés dans la musique encadrée par les commandes \autoLineBreaksOff et \autoLineBreaksOn. Dans le cas où les sauts de pages automatiques devraient eux aussi être inhibés, ce sont les commandes \autoBreaksOff et \autoBreaksOn qu’il faudrait utiliser. Les sauts de ligne ou de page manuels ne sont pas affectés par ces commandes. Notez bien que la désactivation du positionnement automatique des sauts des ligne peut avoir pour effet un débordement de la musique dans la marge de droite si tout ne peut être contenu sur une ligne.

Des sauts de ligne automatiques peuvent cependant être autorisés en un point particulier à l’aide d’un \once \autoLineBreaksOn sur une barre de mesure. Ceci ne concerne pas les sauts de page. Ceci indique qu’un saut de ligne peut intervenir à cet endroit précis, mais ne le force en aucun cas.

LilyPond dispose de deux variables de base pour influencer l’espacement au niveau des lignes. Toutes deux se définissent dans un bloc \layout, indent réglant l’indentation de la première ligne, et line-width la longueur des lignes.

L’activation du commutateur ragged-right au sein du bloc \layout aura pour effet de terminer les systèmes là où ils prendraient fin normalement plutôt que de les étirer sur toute la longueur de la ligne. Ceci est particulièrement utile pour de petits fragments ou pour vérifier la densité induite par l’espacement naturel.

Le commutateur ragged-last est équivalent à ragged-right, à ceci près qu’il n’affecte que la dernière ligne de la pièce.

\layout {
  indent = 0\mm
  line-width = 150\mm
  ragged-last = ##t
}

L’utilisation conjointe de \break et de blancs dans une section \repeat vous permettra de positionner des sauts de ligne à intervalle régulier. Par exemple, les 28 mesures de ce qui suit, si l’on est à 4/4, seront coupées toutes les quatre mesures, pas ailleurs :

<<
  \repeat unfold 7 {
    s1 \noBreak s1 \noBreak
    s1 \noBreak s1 \break
  }
  { et ici la musique… }
>>

Commandes prédéfinies

\break, \noBreak, \autoBreaksOff, \autoBreaksOn, \autoLineBreaksOff, \autoLineBreaksOn.

Morceaux choisis

Recours à une voix supplémentaire pour gérer les sauts

Il est souvent plus pratique de séparer ce qui est purement musical et les informations concernant les sauts de ligne ou de page en créant une voix supplémentaire dédiée. Cette voix spécifique ne contiendra que des blancs – des silences invisibles \skip –, des \break, des \pageBreak et autres informations concernant les ruptures.

Cette manière de procéder est tout à fait indiquée lorsque vous ajustez les line-break-system-details et autres propriétés fort intéressantes de NonMusicalPaperColumnGrob.

music = \relative c'' { c4 c c c }

\score {
  \new Staff <<
    \new Voice {
      s1 * 2 \break
      s1 * 3 \break
      s1 * 6 \break
      s1 * 5 \break
    }
    \new Voice {
      \repeat unfold 2 { \music }
      \repeat unfold 3 { \music }
      \repeat unfold 6 { \music }
      \repeat unfold 5 { \music }
    }
  >>
}

[image of music]

Voir aussi

Manuel de notation : Le bloc \layout, Variables de gestion des sauts de ligne.

Référence des propriétés internes : LineBreakEvent.

Morceaux choisis : Espacements.

Problèmes connus et avertissements

Les commandes \autoLineBreaksOff et \autoBreaksOff doivent impérativement se placer après le début de la musique pour éviter tout message d’erreur.


Autres langues : English, català, deutsch, español, italiano, 日本語.
About automatic language selection.

LilyPond — Manuel de notation v2.19.82 (branche de développement).