GNU LilyPond – Manuel d’initiation : 3.3.5 Adding and removing engravers
Description: GNU LilyPond – Manuel d'initiation: 3.3.5 Adding and removing engravers
Keywords: GNU LilyPond – Manuel d'initiation: 3.3.5 Adding and removing engravers

### 3.3.5 Adding and removing engravers

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.

#### Changing a single context

Nous utilisons, pour supprimer un graveur d’un contexte, la commande `\with` dès la création dudit 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' {
>       c4
>       \set fontSize = #-4  % make note heads smaller
>       d e
>       \set fontSize = #2.5  % make note heads larger
>       f g
>       \unset fontSize  % return to default size
>       a b
>     }

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 c'' {
>         \voiceOne
>         c a b g
>       }
>       \new Voice
>       \relative c' {
>         \voiceTwo
>         c 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 c'' {
>         \voiceOne
>         c a b g
>       }
>       \new Voice
>       \relative c' {
>         \voiceTwo
>         c e d f
>       }
>     >>

#### Changing all contexts of the same 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'' { c a b g }
>         >>
>         \new Staff <<
>           \relative c' { c a b g }
>         >>
>         \new Staff <<
>           \clef "G_8"
>           \relative c' { c a b g }
>         >>
>         \new Staff <<
>           \clef "bass"
>           \relative c { c 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`.

#### See also

Manuel de notation : Modifying context plug-ins, Changing context default settings.

Other languages: English, español, deutsch.

#### Manuel d’initiation