Paso de página óptimo

Con frecuencia es necesario encontrar una configuración de división de páginas de manera que haya un silencio al final de una página de cada dos. De esta forma, el músico puede pasar la página sin perder notas. La función ly:page-turn-breaking trata de encontrar una división de páginas que haga mínimos el apretujamiento y el estiramiento, pero con la restricción añadida de que sólo se permite introducir vueltas de página en los lugares especificados.

Hay dos etapas en el uso de esta función de división de páginas. En primer lugar debemos habilitarlo en el bloque \paper, como se explicó en Saltos de página. Entonces debemos decirle a la función dónde nos gustaría permitir los saltos de página.

Hay dos formas de conseguir la segunda tarea. Primero, podemos especificar manualmente cada uno de los pasos de página potenciales, insertando \allowPageTurn en nuestro archivo de entrada en los lugares adecuados.

Si esto es demasiado tedioso, podemos añadir un grabador Page_turn_engraver a un contexto Staff o Voice. El grabador Page_turn_engraver analizará el contexto en busca de secciones sin notas (observe que no busca silencios, sino la ausencia de notas. Se hace así para que la polifonía en un solo pentagrama con silencios en una de las voces no arruine la labor del grabador Page_turn_engraver). Cuando encuentra una sección sin notas suficientemente larga, el grabador Page_turn_engraver inserta un \allowPageTurn en la última barra de compás de dicha sección, a no ser que haya una barra ‘especial’ de compás (como una doble barra), en cuyo caso se insertará el \allowPageTurn en la última barra ‘especial’ de compás de la sección.

El grabador Page_turn_engraver lee la propiedad de contexto minimumPageTurnLength para determinar qué longitud debe tener una sección sin notas antes de que se considere la posibilidad de un paso de página. El valor predeterminado para minimumPageTurnLength es (ly:make-moment 1/1). Si quiere inhabilitar las vueltas de página, fíjelo a algún valor ‘muy grande’.

\new Staff \with { \consists Page_turn_engraver }
{
  a4 b c d |
  R1 | % aquí se permite un salto de página
  a4 b c d |
  \set Staff.minimumPageTurnLength = \musicLength 2*5
  R1 | % aquí no se permite un salto de página
  a4 b r2 |
  R1*2 | % aquí se permite un salto de página
  a1
}

Al usar repeticiones de primera y segunda vez, el grabador Page_turn_engraver solo permite un pase de página durante la repetición si hay suficiente tiempo al principio y al final de la repetición para volver a pasar la página hacia atrás. Si la repetición es demasiado corta, se puede usar el grabador Page_turn_engraver para inhabilitar los pasos de página mediante el establecimiento de un valor adecuado para la propiedad de contexto minimumRepeatLengthForPageTurn. En este caso el grabador Page_turn_engraver sólo permitirá los pases de página en las repeticiones cuya duración sea mayor que el valor especificado.

Las instrucciones de paso de página, \pageTurn, \noPageTurn y \allowPageTurn, se pueden usar también en el nivel más elevado del código, dentro de elementos de marcado del nivel superior y entre las partituras.

Instrucciones predefinidas

\pageTurn, \noPageTurn, \allowPageTurn.

Véase también

Referencia de la notación: Variables de \paper para los saltos de línea.

Fragmentos de código: Spacing.

Advertencias y problemas conocidos

Utilice un solo grabador Page_turn_engraver en cada partitura. Si hay más de uno, se interferirán entre sí.

Véase también

Notation Reference: Espaciado vertical.

Fragmentos de código: Spacing.


Referencia de la notación de GNU LilyPond v2.25.15 (rama de desarrollo).