5.3.4 La commande d’affinage \tweak
L’utilisation d’un \override
pour modifier les propriétés d’un
objet graphique affectera toutes les instances de l’objet en question au
sein du contexte, et ce dès son apparition. Il peut parfois être
préférable de n’affecter qu’un seul objet en particulier plutôt que tous
les objets du contexte. C’est là le rôle de l’instruction \tweak
,
dont la syntaxe est :
\tweak [objet-de-rendu.]objet-propriété valeur
Mention de l’objet-de-rendu est optionnel.
La commande \tweak
s’applique à l’objet qui apparaît
immédiatement après valeur
.
Pour une introduction à la syntaxe et l’utilisation des retouches, voir le chapitre Méthodes de retouche.
Lorsque plusieurs éléments de même nature surviennent au même instant,
il devient impossible d’utiliser l’instruction \override
pour
n’en modifier qu’un seul individuellement, d’où l’intérêt de la commande
\tweak
. Entre autres éléments qui sont susceptibles de se
produire au même instant, nous citerons :
- les têtes de notes au sein d’un accord,
- les signes d’articulation,
- les liaisons de prolongation sur des notes d’un accord,
- les crochets de n-olets démarrant au même instant
Dans l’exemple suivant, l’une des têtes de note de l’accord est colorisée, et l’aspect d’une autre est changé.
< c'' \tweak color #red d'' g'' \tweak duration-log #1 a'' > 4
L’instruction \tweak
permet aussi de modifier l’aspect d’une
liaison :
\relative { c'-\tweak thickness #5 ( d e f) }
La commande \tweak
ne sera pleinement fonctionnelle que si elle
est directement rattachée à l’objet auquel elle doit s’appliquer alors
que le fichier source est converti en flux musical. Vouloir modifier la
globalité d’un accord est sans résultat dans la mesure où il ne
constitue qu’un conteneur pour des événements musicaux et que tous les
objets seront créés à partir d’événements appartenant à un
EventChord
(un événement d’accord) :
\tweak color #red c4 \tweak color #red <c e>4 <\tweak color #red c>4
La commande \tweak
simple ne saurait servir à modifier un élément
qui ne serait pas explicitement mentionné dans le fichier source. C’est
notamment le cas des hampes, ligatures automatiques ou altérations, dans
la mesure où elles seront ultérieurement générées et après les têtes de
note (objets NoteHead
), plutôt qu’au fil des éléments musicaux
saisis.
De tels objets créés indirectement ne peuvent être ajustés que par une
forme développée de la commande \tweak
, autrement dit
lorsque l’objet est explicitement mentionné :
\tweak Stem.color #(universal-color 'orange) \tweak Beam.color #(universal-color 'skyblue) c''8 e'' <c'' e'' \tweak Accidental.font-size #-3 ges''>4
La commande \tweak
ne peut non plus servir à modifier clefs ou
métriques, puisqu’elles seront immanquablement séparées du \tweak
par l’insertion automatique d’autres éléments requis pour spécifier le
contexte.
Plusieurs commandes \tweak
en enfilade permettent d’affecter un
même élément de notation :
c' -\tweak style #'dashed-line -\tweak dash-fraction #0.2 -\tweak thickness #3 -\tweak color #red \glissando f''
Vous pouvez examiner le flux musical généré par une portion d’un
fichier source, y compris les éléments automatiquement insérés, en
suivant les indications portées à la rubrique
Affichage d'expressions musicales. Ceci s’avère tout à fait
approprié pour déterminer ce qui peut se modifier à l’aide d’un
\tweak
ou bien aider à rectifier votre source de telle sorte
que le \tweak
produise ses effets.
Voir aussi
Manuel d’initiation : Méthodes de retouche.
Manuel d’extension : Affichage d'expressions musicales.
Problèmes connus et avertissements
Lorsqu’il y a plusieurs liaisons de prolongation dans un accord, la
commande \tweak
ne permet de modifier les points de contrôle que
pour la première rencontrée dans le fichier source.