5.1.7 Ordonnancement des contextes

Les contextes viennent en principe se positionner selon leur ordre d’apparition dans le fichier source. Lorsque plusieurs contextes sont imbriqués, le contexte englobant supportera les différents contextes mentionnés dans le fichier source, à la stricte condition qu’ils soient dûment « agréés ». Les contextes imbriqués qui ne font pas partie de la « liste d’agréments » du contexte englobant se retrouveront en dessous de celui-ci au lieu d’y être imbriqués.

La liste des « agréments » d’un contexte se gère à l’aide des instructions \accepts et \denies\accepts pour ajouter un contexte à la liste, et \denies pour retirer l’agrément. Il est par exemple peu conventionnel que les accords nommés apparaissent dans un contexte Staff ; autrement dit, le contexte ChordNames ne fait pas partie de la « liste d’agréments » du contexte Staff par défaut. Néanmoins, et s’il devait en être ainsi, vous pourriez le spécifier.

\score {
  \new Staff {
    c' d' e' f'
    \chords { d1:m7 b1:min7.5- }
  }
}

[image of music]

\score {
  \new Staff {
    c' d' e' f'
    \chords { d1:m7 b1:min7.5- }
  }
  \layout {
    \context {
      \Staff
      \accepts "ChordNames"
    }
  }
}

[image of music]

L’instruction \denies permet, lorsqu’un nouveau contexte reprend les définitions d’un contexte existant, d’en ajuster les composantes. C’est par exemple le cas du contexte VaticanaStaff, réplique du contexte Staff au sein duquel le contexte VaticanaVoice se substitue au contexte Voice dans la « liste d’agrément ».

Gardez à l’esprit que, face à une instruction qui ne s’appliquerait à aucun contexte déjà existant, LilyPond créera un nouveau contexte implicite. Ceci peut engendrer une nouvelle portée ou une autre partition.

Voir aussi

Manuel d’utilisation : Apparition d'une portée supplémentaire.

Fichiers d’initialisation : ‘ly/engraver-init.ly’.


Autres langues : English, deutsch, español, italiano, 日本語.
About automatic language selection.

LilyPond — Manuel de notation