GNU LilyPond – Manuel de notation: 5.3.4 La commande d'affinage \tweak

### 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 #red
>     \tweak Beam.color #green 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.

#### LilyPond — Manuel de notation v2.22.2 (branche stable).