GNU LilyPond – Manuel d'initiation: 4.4.1 Comportement automatique

### 4.4.1 Comportement automatique

Dans la notation musicale, il y a des objets qui appartiennent à la portée et d’autres qui sont placés à l’extérieur de la portée. On les appelle respectivement les « objets de la portée » (within-staff objects en anglais) et les « objets extérieurs à la portée » (outside-staff objects en anglais).

Les objets de la portée sont ceux qui sont placés sur la portée – les têtes de notes et les hampes, les altérations, etc. Leur position est généralement déterminée par la musique elle-même – ils sont placés verticalement sur des lignes spécifiques ou sont liés à d’autres objets placés de cette manière. Normalement, les collisions entre les têtes et queues de notes et les altérations dans des accords proches sont évitées automatiquement. Comme nous le verrons rapidement, il existe des commandes et des possibilités de retouche qui permettent de modifier ce comportement automatique.

Parmi les objets extérieurs à la portée, on compte des éléments comme les marques de reprise, les indications de texte ou de nuance. Dans LilyPond, la règle est de placer verticalement ces objets extérieurs à la portée le plus près possible de la portée, tout en évitant la collision avec d’autres objets. LilyPond utilise la propriété `outside-staff-priority` pour déterminer l’ordre selon lequel placer ces objets, de la manière suivante :

D’abord, LilyPond dresse la liste de tous les objets extérieurs à la portée. Puis ceux-ci sont classés suivant leur `outside-staff-priority`. Enfin, ils sont pris un par un, en commençant par les objets avec la `outside-staff-priority` la plus basse, et placés de façon à ne pas entrer en collision avec d’autres objets déjà positionnés. Cela signifie que, si deux grobs extérieurs à la portée doivent occuper la même place, c’est celui qui a la `outside-staff-priority` la plus basse qui est placé le plus près de la portée. Et si deux objets ont la même `outside-staff-priority`, le premier rencontré sera placé au plus près de la portée.

Dans l’exemple suivant, tous les markup ont la même priorité, dans la mesure où rien n’est indiqué explicitement. Vous remarquerez que `Text3` est également positionné près de la portée, juste en-dessous de `Text2`.

>     c''2^"Text1"
>     c''2^"Text2" |
>     c''2^"Text3"
>     c''2^"Text4" |

Les portées aussi sont positionnées, par défaut, le plus près possible les unes des autres, en ménageant tout de même une certaine séparation. Si des notes se rapprochent nettement d’une portée adjacente, elles ne forceront les portées à s’écarter que s’il y a un risque de chevauchement.

>     <<
>       \new Staff {
>         \relative { c'4 a, }
>       }
>       \new Staff {
>         \relative { c''''4 a, }
>       }
>     >>

#### LilyPond — Manuel d’initiation v2.22.2 (branche stable).