4.4.2 Objets inclus dans la portée
Nous avons vu que les commandes \voiceXXX
jouent sur la
direction des liaisons, des doigtés et sur toute autre chose liée à
l’orientation des queues de notes. Ces commandes sont essentielles dans
la musique polyphonique pour distinguer des lignes mélodiques
entremêlées. Mais il arrive qu’on ait besoin de modifier ce comportement
automatique. On peut le faire pour toutes les parties de la musique ou
juste pour une note. La propriété qui contrôle ce comportement est la
propriété direction
de chaque objet. Expliquons d’abord ce
qu’elle fait, puis nous présenterons un certain nombre de commandes
déjà prêtes qui évitent, pour les modifications les plus courantes,
d’avoir à encoder les retouches.
Certains objets comme les traits des liaisons se recourbent tantôt
vers le haut, tantôt vers le bas ; d’autres encore, comme les hampes
et les crochets, peuvent se décaler vers la gauche ou vers la droite
selon qu’ils pointent vers le haut ou vers le bas. Ce comportement est
géré automatiquement dès lors que direction
est activé.
L’exemple ci-dessous montre dans la première mesure le comportement par défaut des hampes – celles des notes les plus hautes pointant vers le bas et celles des notes les plus basses pointant vers le haut ; viennent ensuite quatre notes avec les hampes forcées vers le bas, puis quatre autres avec les hampes forcées vers le haut, et pour finir quatre notes de nouveau avec le comportement par défaut.
a4 g c a \override Stem #'direction = #DOWN a g c a \override Stem #'direction = #UP a g c a \revert Stem #'direction a g c a
Nous utilisons ici les directions DOWN
et UP
. Elles
correspondent respectivement aux valeurs -1
et +1
,
que l’on peut utiliser à la place. La valeur 0
peut aussi être
utilisée dans certains cas. Elle est interprétée comme un UP
pour les hampes, et comme un ‘centré’ pour d’autres objets. Il
existe une direction, CENTER
, qui correspond à la valeur
0
.
Quoi qu’il en soit, ces retouches manuelles sont rarement utilisées car il existe des équivalents sous forme de commandes prédéfinies. Voici un tableau des plus courantes. Lorsque ce n’est pas évident, leur signification est précisée.
Bas/Gauche | Haut/Droite | Annulation | Effet |
---|---|---|---|
| | | Flèche en bas, en haut, ou pas de flèche |
| | | Déplacement des points pour éviter les lignes de portée |
| | | |
| | | Attention : à distinguer des commandes de liaison ci-dessous |
| | | |
| | | |
| | | Le texte saisi en tant qu’extension est au-dessous/au-dessus de la portée |
| | | |
| | | Les nolets sont au-dessous/au-dessus des notes |
Attention : ces commandes prédéfinies ne doivent pas être
précédées de \once
. Pour limiter l’effet à une seule note, il
faut soit utiliser la commande équivalente \once \override
, soit
utiliser la commande prédéfinie, suivie, après la note à modifier, de la
commande \xxxNeutral
correspondante.
Doigtés
Le placement des doigtés sur des notes simples peut aussi être contrôlé
par la propriété direction
, mais le changement de
direction
n’a pas d’effet sur les accords. Comme nous le
verrons, il existe des commandes qui permettent de contrôler le doigté
sur chaque note d’un accord, en plaçant l’indication de doigté
au-dessus, en dessous, à gauche ou à droite de chaque note.
Tout d’abord, voici l’effet de direction
sur le doigté lié à une
note simple. La première mesure montre le comportement par défaut, et
les deux suivantes montrent l’effet lorsqu’on indique DOWN
et
UP
:
c-5 a-3 f-1 c'-5 \override Fingering #'direction = #DOWN c-5 a-3 f-1 c'-5 \override Fingering #'direction = #UP c-5 a-3 f-1 c'-5
Le fait d’intervenir sur la propriété direction
n’est sûrement
pas la façon la plus simple de placer manuellement les doigtés au-dessus
ou en dessous des notes ; mieux vaut utiliser _
ou ^
devant le chiffre de doigté plutôt que -
. Voici ce que donne
l’exemple précédent avec cette méthode :
c-5 a-3 f-1 c'-5 c_5 a_3 f_1 c'_5 c^5 a^3 f^1 c'^5
La propriété direction
ne fonctionne pas pour les accords alors
que les préfixes de direction, _
et ^
, fonctionnent. Par
défaut, le doigté est placé automatiquement à la fois au-dessus et
au-dessous des notes d’un accord, comme ceci :
<c-5 g-3> <c-5 g-3 e-2> <c-5 g-3 e-2 c-1>
mais il est possible de forcer manuellement vers le haut ou vers le bas le placement de tous ou certains chiffres de doigté, comme ceci :
<c-5 g-3 e-2 c-1> <c^5 g_3 e_2 c_1> <c^5 g^3 e^2 c_1>
On peut aller encore plus loin dans le positionnement des doigtés pour
chacune des notes d’un accord grâce à la commande \set
fingeringOrientations
. La syntaxe de cette commande est :
\set fingeringOrientations = #'([up] [left/right] [down])
On utilise \set
car fingeringOrientations
est une propriété
du contexte Voice
, créée et utilisée par le graveur
New_fingering_engraver
.
On peut attribuer à cette propriété une liste composée de une à trois
valeurs. Celles-ci déterminent si l’indication de doigté doit être
placée au-dessus (lorsque up
apparaît dans la liste), au-dessous
(lorsque down
apparaît), à gauche (lorsque left
apparaît)
ou à droite (lorsque right
apparaît). En revanche, si une valeur
n’est pas sur la liste, aucun doigté n’ira à cet emplacement. LilyPond
garde ces contraintes en mémoire et recherche le meilleur emplacement
pour le doigté des notes des accords suivants. Vous remarquerez que
left
et right
s’excluent l’un l’autre – l’indication de
doigté ne peut être placée que d’un côté ou de l’autre, pas des deux.
Note : Ppour contrôler à l’aide de cette commande le placement du doigté sur une note simple, il faut la saisir comme un accord composé d’une note unique, en l’encadrant de chevrons. |
Voici quelques exemples :
\set fingeringOrientations = #'(left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(up left down) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(up left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(right) <f-2> < c-1 e-2 g-3 b-5 > 4
Si les indications de doigtés paraissent un peu serrées, on peut
toujours réduire la taille de police (font-size
). La valeur
par défaut donnée dans la RPI à la page de l’objet
Fingering
étant -5
, essayons -7
:
\override Fingering #'font-size = #-7 \set fingeringOrientations = #'(left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(up left down) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(up left) <f-2> < c-1 e-2 g-3 b-5 > 4 \set fingeringOrientations = #'(right) <f-2> < c-1 e-2 g-3 b-5 > 4