[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Portées d’ossia ] | [ Up : Modification de portées individuelles ] | [ Écriture de parties séparées > ] |
Masquage de portées
Désactiver le graveur Staff_symbol_engraver
dans un contexte
Staff
permet de masquer des lignes. La commande \stopStaff
aura le même effet.
\new Staff \with { \remove Staff_symbol_engraver } \relative { a''8 f e16 d c b a2 }
L’instruction \RemoveEmptyStaves
placée dans un bloc
\layout
ou dans une clause \with
affectant une portée
particulière, aura pour effet de masquer toute portée qui ne contient
rien. Dans les partitions d’orchestre, les portées qui n’ont que des
silences sont habituellement masquées afin de gagner de la place. Ce
style d’édition s’appelle en anglais « Frenched Score ». Cette
fonctionnalité masque et supprime toutes les portées vides d’une
partition, hormis celles du premier système. Le premier système sera lui
aussi concerné dès lors que sera utilisée l’instruction
\RemoveAllEmptyStaves
.
\layout { \context { \Staff \RemoveEmptyStaves } } \relative << \new Staff { e'4 f g a \break b1 \break a4 b c2 } \new Staff { c,4 d e f \break R1 \break f4 g c,2 } >>
Une portée est considérée comme vide dès lors qu’elle ne contient que
des silences multimesures, des silences visibles ou invisibles (ou
d’espacement – les \skip) ou bien une combinaison de ces
éléments. Tous les autres objets musicaux, ceux qui font qu’une
portée ne sera pas considérée vide, sont répertoriés dans la propriété
de contexte keepAliveInterfaces
telle que définie dans le fichier
ly/engraver-init.ly.
\RemoveEmptyStaves
et \RemoveAllEmptyStaves
sont tous deux
des racourcis prédéfinis qui déterminent les propriétés telles que
remove-empty
et remove-first
, attachées à l’objet
VerticalAxisGroup
, comme indiqué dans Identificateurs de modification de contexte.
Le Keep_alive_together_engraver
permet de masquer l’intégralité
d’un regroupement de portées plutôt que des portées individuelles. Il
est normalement attaché au contexte PianoStaff
: un système
pianistique sera masqué uniquement dans le cas où les deux portées qui
le composent sont vides. De la même manière, il est d’usage pour un
conducteur d’orchestre de masquer les regroupements de portées plutôt
que de manière individuelle. Ceci s’obtient en ajoutant le
Keep_alive_together_engraver
au regroupement de portées
considéré, comme indiqué dans Modification des greffons de contexte –
see Regroupement de portées pour leur dénomination.
\layout { \context { \StaffGroup \RemoveEmptyStaves \consists Keep_alive_together_engraver } }
Dans l’exemple suivant, les portées des instruments à vent sont absentes du deuxième système, alors que celle de la contrebasse demeure présente puisqu’elle est rattachée au regroupement des cordes qui, elles, continuent de jouer.
En interne, le Keep_alive_together_engraver
recourt à la
propriété remove-layer
du VerticalAxisGroup
d’une portée
pour décider de son impression lorsqu’elle est considérée vide. Cette
propriété peut aussi se définir manuellement, auquel cas elle agit sous
forme d’index de priorité : des valeurs proches de zéro seront
prioritaires sur celles plus élevées, ce qui aura pour conséquence de
masquer d’abord les portées dont le remove-layer
est plus grand.
Ceci se révèle tout particulièrement utile pour une « division » de portée, lorsque plusieurs parties indépendantes – see Écriture de parties séparées – doivent momentanément se répartir sur plusieurs portées. Dans l’exemple qui suit, deux parties sont réparties sur trois portées ; ces trois portées n’apparaissent toutefois jamais simultanément :
- au premier système, une seule d’entre elles est affichée, dans la mesure
où la propriété
keepAliveInterfaces
a été réglée sur une liste vide – de fait, les deux autres portées sont considérées comme vides et donc masquées, en dépit de ce qu’elles pourraient contenir ; - lorsque cette propriété est désactivée – et retrouve donc ses réglages
par défaut – elle n’empêche plus les deux autres portées d’être
affichées. Cependant, et parce que le réglage de leur
remove-layer
est inférieur à celui de la portée unique, ces deux portées seront alors imprimées à la place.
De telles substitutions ne s’appliquent pas seulement aux notes, accords ou autres éléments musicaux intervenant dès après le nouveau réglage, mais à l’intégralité du système où il est mentionné.
\layout { short-indent = 2\cm indent = 3\cm \context { \Staff keepAliveInterfaces = #'() } } violI = { \repeat unfold 24 { d'4 } \once \unset Staff.keepAliveInterfaces <d' g''>2 \repeat unfold 14 { d'4 } \bar "|." } violII = { \repeat unfold 24 { g4 } <g d'>2 \repeat unfold 14 { g4 } \bar "|." } \new StaffGroup \with { \consists Keep_alive_together_engraver } << \new Staff \with { instrumentName = "Violins" shortInstrumentName = "V I & II" \override VerticalAxisGroup.remove-layer = 2 } << \violI \\ \violII >> \new Staff \with { instrumentName = "Violin I" shortInstrumentName = "V I" \RemoveAllEmptyStaves \override VerticalAxisGroup.remove-layer = 1 } \violI \new Staff \with { instrumentName = "Violin II" shortInstrumentName = "V II" \RemoveAllEmptyStaves \override VerticalAxisGroup.remove-layer = 1 } \violII >>
\RemoveAllEmptyStaves
permet aussi de gérer des fragments d’ossia
attachés à une portée. Pour plus de détails, voir Portées d’ossia.
Commandes prédéfinies
\RemoveEmptyStaves
,
\RemoveAllEmptyStaves
,
Voir aussi
Glossaire musicologique : Frenched staff.
Manuel d’initiation : Visibilité et couleur des objets.
Manuel de notation : Dictée à trous, Identificateurs de modification de contexte, Modification des greffons de contexte, Modification des réglages par défaut d’un contexte, Portées d’ossia, Regroupement de portées, Silences invisibles, Symbole de la portée, Visibilité des objets.
Fichiers d’initialisation : ly/engraver-init.ly.
Morceaux choisis : Notation sur la portée.
Référence des propriétés internes : Axis_group_engraver, ChordNames, FiguredBass, Keep_alive_together_engraver, Lyrics, Staff, Staff_symbol_engraver, VerticalAxisGroup.
Problèmes connus et avertissements
Supprimer le Staff_symbol_engraver
aura pour effet de masquer les
barres de mesure. Forcer leur visibilité peut entraîner des problèmes de
formatage. En pareil cas il vaut mieux, au lieu de supprimer le graveur,
recourir aux dérogations suivantes :
\omit StaffSymbol \override NoteHead.no-ledgers = ##t
En ce qui concerne les désagréments et messages liés à l’utilisation de
l’instruction \RemoveEmptyStaves
, consultez
Modification des réglages par défaut d’un contexte.
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Portées d’ossia ] | [ Up : Modification de portées individuelles ] | [ Écriture de parties séparées > ] |