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 duStaffSymbol
le plus proche – même lorsqu’une ligne de « non-portée » viendrait à s’intercaler. Unebasic-distance
inférieure àpadding
ouminimum-distance
sera sans effet, dans la mesure où l’espacement résultant ne saurait être inférieur àpadding
ouminimum-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-distance
inférieure à la valeur dupadding
sera 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.0
provoque uneprogramming_error
(erreur de programmation) et est ignorée ; vous pouvez toutefois utiliser1.0e7
pour 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-distance
et -
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)) }