[ << Retouche de partition ] | [Top][Contents][Index] | [ Modèles >> ] |
[ < Le préfixe \once ] | [ Up : Méthodes de retouche ] | [ Le préfixe \single > ] |
Les commandes \tweak
et \offset
Les dernières commandes disponibles avec LilyPond pour les retouches
sont \tweak
et \offset
. Elles servent à changer les
propriétés d’objets qui surviennent simultanément dans la musique, comme
par exemple les notes d’un accord. La commande \override
modifierait toutes les notes de l’accord, tandis que \tweak
permet de ne modifier que l’élément immédiatement suivant dans la chaîne
de saisie.
La commande \offset
peut elle aussi s’utiliser en lieu et place
de \override
. Elle accepte aussi d’autres formes de syntaxe. Voir
La commande \offset
pour
plus de détails.
Voici un exemple. Supposons que nous voulions changer la taille de la
tête de note du milieu (le mi) dans un accord de do majeur. Voyons
d’abord ce que donnerait \once \override
:
\relative { <c' e g>4 \once \override NoteHead.font-size = -3 <c e g>4 <c e g>4 }
Nous voyons que \override
modifie toutes les têtes de
notes de l’accord, car toutes les notes de l’accord surviennent au même
instant musical et que la fonction de \once
est de faire
porter la modification sur tous les objets du type spécifié qui
surviennent au même instant musical, comme le fait la commande
\override
elle-même.
Les commandes \tweak
et \offset
opèrent différemment.
Elles agissent sur l’élément immédiatement suivant dans la chaîne de
saisie. Dans leur forme la plus simple, elles ne fonctionnent que sur
les objets créés directement à partir de l’élément suivant dans la
chaîne de saisie, c’est-à-dire essentiellement des têtes de notes et des
articulations.
Pour reprendre notre exemple, la taille de la note du milieu d’un accord peut être modifiée de cette manière :
\relative { <c' e g>4 <c \tweak font-size -3 e g>4 }
Essayons maintenant de modifier le positionnement vertical d’un symbole
\breathe
. Par défaut, LilyPond calcule automatiquement un
espacement vertical par rapport à la ligne médiane. Si nous voulions le
remonter de deux unités, par exemple, \offset
est la commande
qu’il convient d’utiliser. Avec un \tweak
, le positionnement
correct ne ne s’obtiendrait qu’en procédant à tâtons.
\relative c'' { c4 \breathe c4 \offset Y-offset 2 \breathe c2 \tweak Y-offset 4 \breathe }
De toute évidence, \offset
n’est effectif que pour traîter des
valeurs de type numérique. Il existe d’autres restrictions à ce qui peut
se modifier, comme mentionné dans La
commande \offset
.
Vous noterez que la syntaxe de \tweak
et \offset
est
différente de celle de la commande \override
. Ni le contexte, ni
l’objet n’ont besoin d’être spécifiés ; au contraire, cela produirait
une erreur si on le faisait. Tous deux sont sous-entendus par l’élément
suivant dans la chaîne de saisie. Il n’est pareillement pas nécessaire
d’insérer un signe égal. La syntaxe générale des commandes \tweak
et \offset
est donc, tout simplement :
\tweak propriété-de-rendu valeur \offset propriété-de-rendu valeur
\tweak
et \offset
peuvent aussi s’utiliser quand, dans une
série d’articulations, on veut n’en modifier qu’une seule. Ainsi :
a'4^"Black" -\tweak color "red" ^"Red" -\tweak color "green" _"Green"
Attention : les commandes \tweak
et \offset
doivent être
précédées d’une marque d’articulation, comme si elles-même étaient des
articulations. Dans la cas de multiples positionnements forcés –
‘^’ ou ‘_’ –, celui le plus à gauche aura préséance puisqu’il
sera appliqué en dernier.
Les objets tels que hampes et altérations seront créés postérieurement à
l’événement qui survient. L’utilisation des commandes \tweak
ou
\offset
sur de tels objets indirectement créés peut se faire en
nommant explicitement l’objet de rendu, si tant est que LilyPond puisse
remonter jusqu’à l’événement originel :
<\tweak Accidental.color "red" cis''4 \tweak Accidental.color "green" es'' g''>
Cette forme développée des commandes \tweak
et \offset
correspond à :
\tweak objet-de-rendu.propriété-de-rendu valeur \offset objet-de-rendu.propriété-de-rendu valeur
Quand plusieurs n-olets sont imbriqués et commencent au même instant
musical, c’est encore la commande \tweak
qui est utilisée pour
changer l’apparence de l’un d’entre eux. Dans l’exemple suivant, le long
crochet de n-olet et le premier des trois crochets courts commencent au
même instant musical ; une commande \override
s’appliquerait donc
à la fois aux deux. En revanche, \tweak
permet de les dissocier.
La première commande \tweak
indique que le long crochet doit être
placé au-dessus des notes, et la seconde indique que le coefficient de
n-olet doit être imprimé en rouge sur le premier crochet de triolet
court.
\relative c'' { \tweak direction #up \tuplet 3/4 { \tweak color "red" \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } } }
Si les n-olets imbriqués ne commencent pas au même moment, leur
apparence peut alors être modifiée de la façon habituelle, avec la
commande \override
:
\relative { \tuplet 3/2 { c'8[ c c] } \once \override TupletNumber.text = #tuplet-number::calc-fraction-text \tuplet 3/2 { c8[ c] c8[ c] \once \override TupletNumber.transparent = ##t \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } } }
Voir aussi
Manuel de notation :
La commande d’affinage (tweak),
La commande \offset
.
[ << Retouche de partition ] | [Top][Contents][Index] | [ Modèles >> ] |
[ < Le préfixe \once ] | [ Up : Méthodes de retouche ] | [ Le préfixe \single > ] |