Saut de page manuel

La gestion automatique des sauts de page se contrôle à l’aide des commandes \pageBreak et \noPageBreak. Ces commandes fonctionnent de manière analogue à \break et \noBreak pour les sauts de ligne et se placent donc au moment d’une barre de mesure. Elles permettent de forcer, ou d’interdire, un saut de page à la prochaine barre de mesure. Comme on peut s’y attendre, \pageBreak force aussi le saut de ligne.

Les commandes \pageBreak et \noPageBreak peuvent se trouver à des niveaux supérieurs, entre deux partitions ou markups de premier rang.

Au sein même d’une pièce, les sauts de page automatiques sont inhibés dans la musique encadrée par les commandes \autoPageBreaksOff et \autoPageBreaksOn. Les sauts de page manuels ne sont pas affectés par ces commandes.

Tout comme ragged-right et ragged-last qui permettent de gérer la répartition horizontale, LilyPond dispose de commutateurs équivalents au niveau de la verticalité. ragged-bottom, une fois activé, empèchera les systmèes de se répartir sur la page. Quant à ragged-last-bottom (valorisé à #t par défaut), il laissera un espace vide en dernière page, y compris pour chaque \bookpart. Pour de plus amples détails, reportez-vous à Variables d’espacement vertical fixe.

Les sauts de page sont générés par la fonction page-breaking. LilyPond dispose de plusieurs algorithmes en la matière : ly:optimal-breaking, ly:page-turn-breaking et ly:minimal-breaking. C’est ly:optimal-breaking qui est activé par défaut, mais rien ne vous empêche d’en changer, par l’intermédiaire du bloc \paper :

\paper {
  page-breaking = #ly:page-turn-breaking
}

Lorsqu’un ouvrage contient plusieurs partitions et un certain nombre de pages, la gestion des sauts de page finit par devenir très gourmande, tant au niveau du processeur que de la mémoire. Vous pouvez cependant alléger la charge en recourant à des blocs \bookpart afin de sectionner l’ouvrage que vous traitez ; les sauts de page seront alors gérés individuellement au niveau de chacune des parties. Par ailleurs, cela vous autorisera une gestion différente selon les sections.

\bookpart {
  \header {
    subtitle = "Préface"
  }
  \paper {
     %% Pour une partie constituée principalement de texte
     %% ly:minimal-breaking est plus judicieux.
     page-breaking = #ly:minimal-breaking
  }
  \markup { … }
  …
}
\bookpart {
  %% Cette partie étant purement musicale,
  %% retour au style par défaut (optimal-breaking).
  \header {
    subtitle = "Premier mouvement"
  }
  \score { … }
  …
}

Commandes prédéfinies

\pageBreak, \noPageBreak, \autoPageBreaksOn, \autoPageBreaksOff.

Voir aussi

Manuel de notation : Variables de gestion des sauts de page.

Morceaux choisis : Espacements.

Problèmes connus et avertissements

Le préfixe \once est ineffectif en ce qui concerne les commandes \autoPageBreaksOn et \autoPageBreaksOff. Si le positionnement automatique des sauts de page est désactivé et qu’il est réactivé pour permettre un saut de page, il doit le rester pendant quelques mesures (le nombre précis de mesures dépendant de la pièce) avant d’être à nouveau désactivé, autrement l’opportunité de passer à la page suivante ne sera pas saisie.


GNU LilyPond – Manuel de notation v2.25.15 (branche de développement).