26.4.1 Structure des variables d’espacement vertical fluctuant
Chacune de ces variables attachées au bloc \paper est constituée
d’une liste associative (alist) à quatre clés :
-
basic-distance(distance de base) – la grandeur d’espace par défaut, exprimée en hauteur de portée, séparant les points de référence de deux éléments, qui évite tout risque de collision en l’absence de dilatation ou compression. Le point de référence d’un titre ou d’un markup est son sommet, celui d’un système est le centre vertical duStaffSymbolle plus proche – même lorsqu’une ligne de « non-portée » viendrait à s’intercaler. Unebasic-distanceinférieure àpaddingouminimum-distancesera sans effet, dans la mesure où l’espacement résultant ne saurait être inférieur àpaddingouminimum-distance. -
minimum-distance(distance minimale) – l’espacement minimal, exprimé en hauteur de portée, entre les points de référence des deux éléments alors qu’il y a déjà un effet de compression. Uneminimum-distanceinférieure à la valeur dupaddingsera sans effet, dans la mesure où l’espacement résultant ne saurait être inférieur aupadding. -
padding(décalage) – la grandeur minimale de « blanc » qui sépare deux éléments, exprimée en hauteur de portée. On peut le voir comme la hauteur minimale d’un rectangle vide qui devrait s’étendre sur toute la largeur des deux éléments. -
stretchability(dilatation) – le coefficient d’étirement de cet espace. Un coefficient nul permet de figer l’espacement, à moins qu’il n’en résulte des collisions. Un coefficient positif déterminera la propension d’un espacement à s’étirer, tout en tenant compte du coefficient affecté aux autres espacements. Par exemple, lorsque le coefficient de dilatation d’une dimension est double de celui d’une autre, elle pourra s’étirer deux fois plus que cette dernière. Il ne saurait être négatif. La valeur+inf.0provoque uneprogramming_error(erreur de programmation) et est ignorée ; vous pouvez toutefois utiliser1.0e7pour obtenir une valeur proche de l’infini. Lorsque cette clé n’est pas définie, sa valeur est par défaut égale àspace. Notez bien que l’utilisateur ne peut définir une propension à la compression ; elle est en fait égale à (basic-distance−minimum-distance).
Lorsque l’impression n’est pas en pleine page – elle est donc
ragged bottom pour les anglophones – l’élément space
n’est pas étiré. Les hauteurs sur une telle page correspondront donc au
maximum de
-
basic-distance, plus -
minimum-distanceet -
padding, augmenté de ce qu’il faut pour éviter les chevauchements.
Cependant, lorsque la partition fait plusieurs pages, la dernière page reprendra dans la mesure du possible l’espacement de la page précédente.
Les manières de modifier des listes associatives font l’objet d’un chapitre spécifique. L’exemple suivant indique deux façons de modifier une liste associative. La première déclaration intervient sur une seule clé, alors que la deuxième redéfinit complètement la variable.
\paper {
system-system-spacing.basic-distance = 8
score-system-spacing =
#'((padding . 1)
(basic-distance . 12)
(minimum-distance . 6)
(stretchability . 12))
}