4.3.5 Ajout et suppression de graveurs
Nous avons vu que chaque contexte met en œuvre plusieurs graveurs et que chacun de ces graveurs est chargé de générer une composante particulière du fichier de sortie, qui les barres de mesure, qui la portée, qui les têtes de note, les hampes, etc. Le fait de supprimer un graveur d’un contexte éliminera sa contribution au fichier de sortie. Bien que ce soit là un moyen radical de modifier le résultat, cette pratique est dans quelques cas fort utile.
Modification d’un seul contexte
Nous utilisons, pour supprimer un graveur d’un contexte, la commande
\with
dès la création du-dit contexte, comme nous l’avons vu dans
la section précédente.
Illustrons notre propos en reprenant un exemple du chapitre précédent,
duquel nous supprimerons les lignes de la portée. Pour mémoire, les
lignes d’une portée sont générées par le Staff_symbol_engraver
.
\new Staff \with { \remove Staff_symbol_engraver } \relative { c'4 d \set fontSize = #-4 % make note heads smaller e4 f | \set fontSize = #2.5 % make note heads larger g4 a \unset fontSize % return to default size b4 c | }
Vous pouvez aussi ajouter individuellement un graveur à un contexte. La commande se formule ainsi :
\consists Nom_du_graveur
et se place dans un bloc \with
. Certaines partitions vocales
font apparaître un
ambitus au début de la portée, afin
d’indiquer ses notes extrêmes. L’ambitus est généré par
l’Ambitus_engraver
, que l’on peut adjoindre à n’importe quel
contexte. Si nous l’ajoutons au contexte Voice
, seule la
tessiture de cette voix sera calculée :
\new Staff << \new Voice \with { \consists Ambitus_engraver } { \relative { \voiceOne c''4 a b g } } \new Voice { \relative { \voiceTwo c'4 e d f } } >>
alors que si nous l’ajoutons au contexte Staff
,
l’Ambitus_engraver
calculera l’écart maximal à partir de toutes
les notes de toutes les voix de la portée :
\new Staff \with { \consists Ambitus_engraver } << \new Voice { \relative { \voiceOne c''4 a b g } } \new Voice { \relative { \voiceTwo c'4 e d f } } >>
Modification de tous les contextes d’un même type
Les exemples ci-dessus nous ont montré comment ajouter ou retirer des
graveurs à des contextes individuels. Nous pourrions aussi ajouter ou
supprimer des graveurs à tous les contextes d’un même type en insérant
les commandes pour le contexte approprié au sein d’un bloc
\layout
. Si nous voulions afficher un ambitus pour chacune des
portées d’un système à quatre portées, il nous suffirait d’écrire :
\score { << \new Staff { \relative { c''4 a b g } } \new Staff { \relative { c'4 a b g } } \new Staff { \clef "G_8" \relative { c'4 a b g } } \new Staff { \clef "bass" \relative { c4 a b g } } >> \layout { \context { \Staff \consists Ambitus_engraver } } }
Vous réglerez de la même manière les propriétés de tous les contextes
d’un type particulier si vous insérez les commandes \set
dans un
bloc \context
.
Voir aussi
Manuel de notation : Modification des greffons de contexte, Modification des réglages par défaut d'un contexte.
Problèmes connus et avertissements
Dans la mesure où les Stem_engraver
et Beam_engraver
rattachent à des têtes de note les objets qu’ils créent, désactiver le
Note_heads_engraver
entraîne l’absence de hampe et de ligature.