GNU LilyPond – Manuel d'initiation: 4.4.2 Objets inclus dans la portée

### 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 hampes. 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
>     a4 g c a |
>     \override Stem #'direction = #UP
>     a4 g c a |
>     \revert Stem #'direction
>     a4 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
--- | --- | --- | ---
`\arpeggioArrowDown` | `\arpeggioArrowUp` | `\arpeggioNormal` | Flèche en bas, en haut, ou pas de flèche
`\dotsDown` | `\dotsUp` | `\dotsNeutral` | Déplacement des points pour éviter les lignes de portée
`\dynamicDown` | `\dynamicUp` | `\dynamicNeutral` |
`\phrasingSlurDown` | `\phrasingSlurUp` | `\phrasingSlurNeutral` | Attention : à distinguer des commandes de liaison ci-dessous
`\slurDown` | `\slurUp` | `\slurNeutral` |
`\stemDown` | `\stemUp` | `\stemNeutral` |
`\textSpannerDown` | `\textSpannerUp` | `\textSpannerNeutral` | Le texte saisi en tant qu’extension est au-dessous/au-dessus de la portée
`\tieDown` | `\tieUp` | `\tieNeutral` |
`\tupletDown` | `\tupletUp` | `\tupletNeutral` | 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` :

>     c4-5 a-3 f-1 c'-5 |
>     \override Fingering #'direction = #DOWN
>     c4-5 a-3 f-1 c'-5 |
>     \override Fingering #'direction = #UP
>     c4-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 :

>     c4-5 a-3 f-1 c'-5 |
>     c4_5 a_3 f_1 c'_5 |
>     c4^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>4
>     <c-5 g-3 e-2>4
>     <c-5 g-3 e-2 c-1>4

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>4
>     <c^5 g_3 e_2 c_1>4
>     <c^5 g^3 e^2 c_1>4

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 dans 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 : Pour 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>4
>     <c-1 e-2 g-3 b-5>4
>     \set fingeringOrientations = #'(left)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4 |
>     \set fingeringOrientations = #'(up left down)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4
>     \set fingeringOrientations = #'(up left)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4 |
>     \set fingeringOrientations = #'(right)
>     <f-2>4
>     <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>4
>     <c-1 e-2 g-3 b-5>4
>     \set fingeringOrientations = #'(left)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4 |
>     \set fingeringOrientations = #'(up left down)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4
>     \set fingeringOrientations = #'(up left)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4 |
>     \set fingeringOrientations = #'(right)
>     <f-2>4
>     <c-1 e-2 g-3 b-5>4

Autres langues : English, česky, deutsch, español, 日本語, nederlands.

#### LilyPond — Manuel d’initiation