5.3.3 La commande de dérogation \override
La commande \override permet de modifier la mise en forme des
objets graphiques. Les descriptions d’objet graphique, dont les noms
commencent par une majuscule, puis comprennent une ou plusieurs
majuscules (de style TotoTata), contiennent les réglages « par
défaut » pour les objets graphiques. Ces réglages sont sous forme de
liste Scheme ; on peut les consulter dans le fichier
‘scm/define-grobs.scm’.
\override est en fait un raccourci :
\override [contexte.]NomObjet.propriété = #valeur
Nous pouvons donc par exemple accroître l’épaisseur des hampes en jouant
sur la propriété thickness de l’objet stem :
c''4 c'' \override Voice.Stem.thickness = #3.0 c''4 c''
Lorsqu’aucun contexte n’est spécifié dans une clause \override,
celle-ci s’appliquera au contexte le plus bas :
\override Staff.Stem.thickness = #3.0
<<
\relative {
e''4 e
\override Stem.thickness = #0.5
e4 e
} \\
\relative {
c''4 c c c
}
>>
Certaines « sous-propriétés » sont parfois contenues dans une propriété. La commande devient alors :
\override Stem.details.beamed-lengths = #'(4 4 3)
ou, pour modifier les extrémités d’un objet à extension :
\override TextSpanner.bound-details.left.text = "texte de gauche" \override TextSpanner.bound-details.right.text = "texte de droite"
Les effets d’un \override prennent fin à l’aide de l’instruction
\revert.
La syntaxe de la commande \revert command est :
\revert [contexte.]NomObjet.propriété
Par exemple :
\relative {
c''4
\override Voice.Stem.thickness = #3.0
c4 c
\revert Voice.Stem.thickness
c4
}
Les effets d’un \override ou d’un \revert s’appliquent dès
l’endroit où ils apparaissent, et à tous les objets dans le contexte
mentionné :
<<
\relative {
e''4
\override Staff.Stem.thickness = #3.0
e4 e e
} \\
\relative {
c''4 c c
\revert Staff.Stem.thickness
c4
}
>>
Les instructions \override et \revert doivent être
précédées d’un \once dès lors que les effets de
l’accommodement ne concernent que l’événement qui les suit directement :
<<
\relative c {
\override Stem.thickness = #3.0
e''4 e e e
} \\
\relative {
c''4
\once \override Stem.thickness = #3.0
c4 c c
}
>>
Voir aussi
Référence des propriétés internes : Backend