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 :

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

[image of music]

L’instruction \tweak permet aussi de modifier l’aspect d’une liaison :

\relative { c'-\tweak thickness #5 ( d e f) }

[image of music]

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

[image of music]

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

[image of music]

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''

[image of music]

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.


LilyPond — Manuel de notation v2.23.82 (branche de développement).