26.4.1 Estructura de las listas-A de espaciado vertical flexible
Cada una de las variables de espaciado de \paper flexibles
es una lista-A (lista asociativa) que contiene cuatro
claves:
-
basic-distance(distancia básica): distancia vertical, medida en espacios de pentagrama, entre los puntos de referencia de los dos elementos, cuando no resulte ninguna colisión, y no se produzca ninguna ampliación o compresión. El punto de referencia de un elemento de marcado (de título o del nivel jerárquico superior) es su punto más alto, y el punto de referencia de un sistema es el centro vertical delStaffSymbolmás cercano (incluso si se trata de una línea que no es un pentagrama, como un contextoLyrics). Los valores dedistancia básicamenores depaddingo deminimum-distanceno son significativos, porque la distancia resultante nunca será menor quepaddingo queminimum-distance. -
minimum-distance(distancia mínima): la distancia vertical mínima permitida, medida en espacios de pentagrama, entre los puntos de referencia de los dos elementos, cuando se produce una compresión. Los valores deminimum-distancemenores depaddingno son significativos, porque la distancia resultante nunca será menor depadding. -
padding(relleno): mínimo espacio vertical vacío necesario entre los rectángulos circundantes (o las líneas de horizonte) de los dos elementos, medido en espacios de pentagrama. -
stretchability(ampliabilidad): medida sin unidades de la propensión relativa de esta dimensión a ampliarse. Si es cero, la distancia no se ampliará (a no ser que resultasen colisiones). Si es positiva, la significación del valor de ampliabilidad de una dimensión concreta depende solamente de su relación con los valores destretchabilityde las otras dimensiones. Por ejemplo, si una dimensión tiene el doble destretchabilityque otra, se ampliará con el doble de facilidad. Los valores deben ser no negativos y finitos. El valor+inf.0desencadena un error de programación y se ignora, pero se puede usar1.0e7para un muelle casi infinitamente ampliable. Si no se fija un valor, el valor predeterminado se establece abasic-distance. Observe que la propensión de la dimensión a comprimirse no se puede establecer directamente por el usuario y es igual a (basic-distance−minimum-distance).
Si una página tiene un margen inferior no justificado, la distancia resultante es la mayor de:
-
basic-distance, -
minimum-distance, y -
paddingmás la menor distancia necesaria para eliminar las colisiones.
Para partituras de varias páginas con la parte inferior no justificada en la última página, ésta usará el mismo espaciado que la página anterior siempre y cuando haya espacio suficiente para ello.
Los métodos específicos para la modificación de las listas-A se estudian en Modificación de las listas-A. El siguiente ejemplo muestra las dos formas en que pueden modificarse estas listas-A. La primera declaración actualiza un par clave-valor individualmente, y la segunda redefine la variable completamente:
\paper {
system-system-spacing.basic-distance = 8
score-system-spacing =
#'((basic-distance . 12)
(minimum-distance . 6)
(padding . 1)
(stretchability . 12))
}