Apparition d’une portée supplémentaire

Lorsque les contextes ne sont pas créés explicitement par la commande \new, ils le seront si la commande à exécuter n’est pas censée s’appliquer au contexte en cours. Pour des partitions simples, le fait que les contextes soient automatiquement créés rend bien des services, et c’est d’ailleurs le cas pour la majorité des exemples contenus dans les manuels de LilyPond. Cependant, la création implicite d’un contexte peut aboutir à l’apparition d’une portée « parasite ». On s’attend par exemple, en lisant le code qui suit, à ce que toutes les têtes de note soient en rouge, alors que le résultat nous présente deux portées et que les notes, placées sur la portée inférieure, restent en noir.

\override Staff.NoteHead.color = #red
\new Staff { a' }

[image of music]

Étant donné qu’aucun contexte Staff n’existe lorsque la dérogation est introduite, LilyPond le crée implicitement pour lui appliquer la directive considérée. Survient alors la commande \new Staff qui, à son tour, crée une nouvelle portée pour contenir les notes qui suivent. Voici la syntaxe correcte pour obtenir ces notes en rouge :

\new Staff {
  \override Staff.NoteHead.color = #red
  a'
}

[image of music]


GNU LilyPond – Utilisation des programmes v2.25.15 (branche de développement).