GNU LilyPond – Manuel de notation: 1.1.3 Gravure des hauteurs

### 1.1.3 Gravure des hauteurs

Nous allons voir dans cette partie comment influer sur la gravure des hauteurs.

#### Clefs

La clef indique quelles lignes de la portée correspondent à quelles hauteurs. En l’absence de commande explicite, LilyPond utilise par défaut la clef de sol.

>     c'2 c'

La clef se modifie à l’aide de la commande `\clef` suivie d’un nom approprié. Pour chacun des exemples suivants est indiquée la position du do médium.

>     \clef treble
>     c'2 c'
>     \clef alto
>     c'2 c'
>     \clef tenor
>     c'2 c'
>     \clef bass
>     c'2 c'

Les différents noms possibles sont répertoriés à l’annexe Styles de clef.

Des clefs spéciales, telles que celles rencontrées en musique ancienne, sont abordées dans Clefs anciennes et Clefs grégoriennes. La musique requérant des clefs de tablature est traitée dans Tablatures par défaut et Tablatures personnalisées.

Les citations peuvent demander une modification de clef à l’aide des commandes `\cueClef` et `\cueDuringWithClef` – voir Mise en forme d’une citation.

En ajoutant `_8` ou `^8` au nom de la clef, celle-ci est transposée à l’octave respectivement inférieure ou supérieure, et `_15` ou `^15` la transpose de deux octaves. D’autres nombres entiers peuvent être utilisés selon les besoins. L’argument clefname doit être mis entre guillemets lorsqu’il contient des caractères supplémentaires. Par exemple,

>     \clef treble
>     c'2 c'
>     \clef "treble_8"
>     c'2 c'
>     \clef "bass^15"
>     c'2 c'
>     \clef "alto_2"
>     c'2 c'
>     \clef "G_8"
>     c'2 c'
>     \clef "F^5"
>     c'2 c'

Une indication d’octaviation optionnelle s’obtient en entourant l’argument numérique par des parenthèses ou des crochets :

>     \clef "treble_(8)"
>     c'2 c'
>     \clef "bass^[15]"
>     c'2 c'

Les hauteurs seront affichées comme si l’argument numérique n’avait pas été encadré de parenthèses ou crochets.

Lorsqu’un changement de clef intervient en même temps qu’un saut de ligne, la nouvelle clef est imprimée à la fois en fin de ligne et au début de la suivante. Vous pouvez toujours supprimer cette « clef de précaution ».

>     \clef treble { c'2 c' } \break
>     \clef bass { c'2 c' } \break
>     \clef alto
>       \set Staff.explicitClefVisibility = #end-of-line-invisible
>       { c'2 c' } \break
>       \unset Staff.explicitClefVisibility
>     \clef bass { c'2 c' } \break

Lorsqu’une clef a déjà été imprimée et qu’aucune autre clef n’a depuis été imprimée, LilyPond ignorera toute réitération de la commande `\clef`. Forcer la réimpression de la clef s’obtient à l’aide de la commande `\set Staff.forceClef = ##t`.

>       \clef treble
>       c'1
>       \clef treble
>       c'1
>       \set Staff.forceClef = ##t
>       c'1
>       \clef treble
>       c'1

Pour être plus précis, la commande `\clef` n’a pas pour fonction d’imprimer une clef ; elle détermine ou modifie une propriété attachée au graveur de clefs (le `Clef_engraver`), qui décide de son propre chef quand doit être affichée une clef dans la portée en cours. La propriété `forceClef` ne vient que forcer la décision de réimprimer une fois la clef en un point donné.

Le symbole imprimé lors d’un changement de clef est plus petit que la clef initiale. La taille peut toutefois être ajustée.

>       \clef "treble"
>       c'1
>       \clef "bass"
>       c'1
>       \clef "treble"
>       c'1
>       \override Staff.Clef.full-size-change = ##t
>       \clef "bass"
>       c'1
>       \clef "treble"
>       c'1
>       \revert Staff.Clef.full-size-change
>       \clef "bass"
>       c'1
>       \clef "treble"
>       c'1

#### Morceaux choisis

#### Affinage des propriétés d’une clef

Modifier le glyphe, la position de la clef ou son octaviation ne changeront pas la position des notes ; il faut pour y parvenir modifier aussi la position du do médium. La redéfinition préalable de `middleCClefPosition` permet de placer l’armure sur les bonnes lignes. Le positionnement est relatif à la ligne médiane, un nombre positif faisant monter, un nombre négatif abaissant.

Par exemple, la commande `\clef "treble_8"` équivaut à définir `clefGlyph`, `clefPosition` – qui contrôle la position verticale de la clef – `middleCPosition` et `clefOctavation`. Une nouvelle clef apparaîtra dès lors que l’une de ces propriétés, à l’exception de `middleCPosition`, aura été modifiée.

Les exemples qui suivent illustrent les différentes possibilités de définir ces propriétés manuellement. Sur la première ligne, la position relative des notes par rapport aux clefs est préservée, ce qui n’est pas le cas pour la deuxième ligne.

>     {
>       % The default treble clef
>       \key f \major
>       c'1
>       % The standard bass clef
>       \set Staff.clefGlyph = #"clefs.F"
>       \set Staff.clefPosition = #2
>       \set Staff.middleCPosition = #6
>       \set Staff.middleCClefPosition = #6
>       \key g \major
>       c'1
>       % The baritone clef
>       \set Staff.clefGlyph = #"clefs.C"
>       \set Staff.clefPosition = #4
>       \set Staff.middleCPosition = #4
>       \set Staff.middleCClefPosition = #4
>       \key f \major
>       c'1
>       % The standard choral tenor clef
>       \set Staff.clefGlyph = #"clefs.G"
>       \set Staff.clefPosition = #-2
>       \set Staff.clefTransposition = #-7
>       \set Staff.middleCPosition = #1
>       \set Staff.middleCClefPosition = #1
>       \key f \major
>       c'1
>       % A non-standard clef
>       \set Staff.clefPosition = #0
>       \set Staff.clefTransposition = #0
>       \set Staff.middleCPosition = #-4
>       \set Staff.middleCClefPosition = #-4
>       \key g \major
>       c'1 \break

>       % The following clef changes do not preserve
>       % the normal relationship between notes, key signatures
>       % and clefs:

>       \set Staff.clefGlyph = #"clefs.F"
>       \set Staff.clefPosition = #2
>       c'1
>       \set Staff.clefGlyph = #"clefs.G"
>       c'1
>       \set Staff.clefGlyph = #"clefs.C"
>       c'1
>       \set Staff.clefTransposition = #7
>       c'1
>       \set Staff.clefTransposition = #0
>       \set Staff.clefPosition = #0
>       c'1

>       % Return to the normal clef:

>       \set Staff.middleCPosition = #0
>       c'1
>     }

#### Voir aussi

Manuel de notation : Clefs anciennes, Clefs grégoriennes, Mise en forme d’une citation, Notations anciennes, Tablatures par défaut, Tablatures personnalisées.

Fichiers d’initialisation : ‘`scm/parser-clef.scm`’.

Morceaux choisis: Hauteurs.

Référence des propriétés internes : Clef_engraver, Clef, ClefModifier, clef-interface.

#### Problèmes connus et avertissements

L’indicateur d’octaviation attaché à la clef est un objet graphique en lui même. Par voie de conséquence, tout `\override` affectant l’objet `Clef` devra être manuellement répercuté sur l’objet `ClefModifier`.

#### Armure

Note : Les nouveaux utilisateurs sont parfois déroutés par la gestion des altérations et de l’armure. Pour LilyPond, une hauteur n’est que du matériau brut ; l’armure et la clef ne feront que déterminer comment ce matériau sera retranscrit. Un simple `c` signifie tout bonnement « do naturel » quelles que soient l’armure et la clef en question. Pour plus d’information, reportez-vous au chapitre Hauteurs et armure.

L’armure indique la tonalité dans laquelle la pièce doit être jouée. Elle comprend un ensemble d’altérations (dièses ou bémols) à la clef, c’est-à-dire au début de la portée. Elle peut varier en cours de morceau.

On définit ou modifie l’armure avec la commande `\key` :

>     \key hauteur mode

Ici, `mode` doit être `\major` ou `\minor` afin d’avoir respectivement hauteur-majeur ou hauteur-mineur. Vous pouvez aussi avoir recours aux modes anciens que sont `\ionian`, `\locrian`, `\aeolian`, `\mixolydian`, `\lydian`, `\phrygian` et `\dorian`.

>     \relative {
>       \key g \major
>       fis''1
>       f
>       fis
>     }

Rien n’empèche de définir d’autres modes, en listant l’altération de chacun des degrés de la gamme en partant du do.

>     freygish = #`((0 . ,NATURAL) (1 . ,FLAT) (2 . ,NATURAL)
>         (3 . ,NATURAL) (4 . ,NATURAL) (5 . ,FLAT) (6 . ,FLAT))

>     \relative {
>       \key c \freygish c'4 des e f
>       \bar "||" \key d \freygish d es fis g
>     }

Les altérations à la clef peuvent s’imprimer à des octaves différents de leur position traditionnelle ou à plusieurs octaves, à l’aide des propriétés `flat-positions` et `sharp-positions` de l’objet `KeySignature`. Les entrées fournies à ces propriétés définissent l’amplitude des positions sur la portée où les altérations seront imprimées. Dans le cas où l’entrée est constituée d’une position unique, les altérations seront placées à l’intérieur de l’octave finissant à cette position sur la portée.

>     \override Staff.KeySignature.flat-positions = #'((-5 . 5))
>     \override Staff.KeyCancellation.flat-positions = #'((-5 . 5))
>     \clef bass \key es \major es g bes d'
>     \clef treble \bar "||" \key es \major es' g' bes' d''

>     \override Staff.KeySignature.sharp-positions = #'(2)
>     \bar "||" \key b \major b' fis' b'2

#### Morceaux choisis

#### Suppression des bécarres superflus lors d’un changement de tonalité

Après un changement de tonalité, un bécarre est imprimé pour annuler toute altération précédente. Ce comportement s’annule en désactivant la propriété `printKeyCancellation` du contexte `Staff`.

>     \relative c' {
>       \key d \major
>       a4 b cis d
>       \key g \minor
>       a4 bes c d
>       \set Staff.printKeyCancellation = ##f
>       \key d \major
>       a4 b cis d
>       \key g \minor
>       a4 bes c d
>     }

#### Armures inhabituelles

La commande `\key` détermine la propriété `keyAlterations` d’un contexte `Staff`.

Des armures inhabituelles peuvent être spécifiées en modifiant directement cette propriété. Il s’agit en l’occurrence de définir une liste :

    \set Staff.keyAlterations =
      #`(((octave . pas) . altération) ((octave . pas) . altération)
      @dots{})

dans laquelle, et pour chaque élément, `octave` spécifie l’octave (0 pour celle allant du do médium au si supérieur), `pas` la note dans cette octave (0 pour do et 6 pour si), et `altération` sera `,SHARP` ou `,FLAT` ou `,DOUBLE-SHARP`, etc. (attention à la virgule en préfixe).

Une formulation abrégée – `(pas . altération)` – signifie que l’altération de l’élément en question sera valide quelle que soit l’octave.

En ce qui concerne les gammes microtonales dans lesquelles un « dièse » n’est pas d’un centième, `altération` se réfère à un deux-centième de ton entier.

>     \include "arabic.ly"
>     \relative do' {
>       \set Staff.keyAlterations = #`((0 . ,SEMI-FLAT)
>                                      (1 . ,SEMI-FLAT)
>                                      (2 . ,FLAT)
>                                      (5 . ,FLAT)
>                                      (6 . ,SEMI-FLAT))
>     %\set Staff.extraNatural = ##f
>       re reb \dwn reb resd
>       dod dob dosd \dwn dob |
>       dobsb dodsd do do |
>     }

#### Voir aussi

Glossaire musicologique : mode d’église, scordatura.

Manuel d’initiation : Hauteurs et armure.

Morceaux choisis : Hauteurs.

Référence des propriétés internes : Key_engraver, Key_performer, KeyCancellation, KeyChangeEvent, KeySignature, key-signature-interface.

#### Marques d’octaviation

Les marques d’octaviation, Ottava, permettent d’introduire une transposition spécifique d’une octave pour la portée en cours. C’est la fonction `ottava` qui s’en charge.

>     \relative c'' {
>       a2 b
>       \ottava #-2
>       a2 b
>       \ottava #-1
>       a2 b
>       \ottava #0
>       a2 b
>       \ottava #1
>       a2 b
>       \ottava #2
>       a2 b
>     }

Par défaut s’imprimera un simple nombre en début de crochet. Ce réglage est modifiable afin d’obtenir un nombre ordinal dont l’abréviation peut se positionner en petite lettre haute ou en caractère normal (réglage par défaut auparavant) ; la graisse par défaut de ces caractères est elle aussi modifiable – voir Sélection de la fonte et de la taille.

L’exemple suivant illustre différentes options, ainsi que le moyen de retrouver le comportement par défaut.

>     \relative c'' {
>       \ottava #1
>       a'2 b
>       \ottava #2
>       a'2 b
>       \bar "||"
>       \set Staff.ottavationMarkups = #ottavation-ordinals
>       \ottava #1
>       a,2 b
>       \ottava #2
>       a'2 b
>       \bar "||"
>       \override Staff.OttavaBracket.font-series = #'medium
>       \set Staff.ottavationMarkups = #ottavation-simple-ordinals
>       \ottava #1
>       a,2 b
>       \ottava #2
>       a'2 b
>       \bar "||"
>       \revert Staff.OttavaBracket.font-series
>       \set Staff.ottavationMarkups = #ottavation-numbers
>       \ottava #1
>       a,2 b
>       \ottava #2
>       a'2 b
>     }

#### Morceaux choisis

#### Modification du texte des marques d’octaviation

En interne, la fonction `\ottava` détermine les propriétés `ottavation` (par ex. en `"8va"` ou `"8vb"`) et `middleCPosition`. Vous pouvez modifier le texte d’une marque d’octaviation en définissant `ottavation` après avoir fait appel à `ottava`.

Un texte bref est particulièrement utile lorsque l’octaviation est courte.

>     {
>       c'2
>       \ottava #1
>       \set Staff.ottavation = #"8"
>       c''2
>       \ottava #0
>       c'1
>       \ottava #1
>       \set Staff.ottavation = #"Text"
>       c''1
>     }

#### Ajout d’une indication d’octave pour une seule voix

Lorsque plusieurs voix cohabitent sur une même portée, déterminer l’octaviation d’une voix affecte la position des notes de toutes les voix, jusqu’à la fin du crochet d’octaviation. Si l’octaviation ne doit s’appliquer qu’à une seule voix, le `Ottava_spanner_engraver` devrait être déplacé dans le contexte `Voice`.

>     \layout {
>       \context {
>         \Staff
>         \remove Ottava_spanner_engraver
>       }
>       \context {
>         \Voice
>         \consists Ottava_spanner_engraver
>       }
>     }

>     {
>       \clef bass
>       << { <g d'>1~ q2 <c' e'> }
>       \\
>         {
>           r2.
>           \ottava -1
>           <b,,, b,,>4 ~ |
>           q2
>           \ottava 0
>           <c e>2
>         }
>       >>
>     }

#### Modification de la pente de l’extension d’octaviation

Il est possible d’adapter la pente d’une indication d’octaviation.

>     \relative c'' {
>       \override Staff.OttavaBracket.stencil = #ly:line-spanner::print
>       \override Staff.OttavaBracket.bound-details =
>         #`((left . ((Y . 0)
>                     (attach-dir . ,LEFT)
>                     (padding . 0)
>                     (stencil-align-dir-y . ,CENTER)))
>            (right . ((Y . 5.0) ; Change the number here
>                      (padding . 0)
>                      (attach-dir . ,RIGHT)
>                      (text . ,(make-draw-dashed-line-markup
>                                (cons 0 -1.2))))))
>       \override Staff.OttavaBracket.left-bound-info =
>          #ly:horizontal-line-spanner::calc-left-bound-info-and-text
>       \override Staff.OttavaBracket.right-bound-info =
>          #ly:horizontal-line-spanner::calc-right-bound-info
>       \ottava #1
>       c1
>       c'''1
>     }

#### Voir aussi

Glossaire musicologique : octaviation.

Manuel de notation : Sélection de la fonte et de la taille.

Morceaux choisis : Hauteurs.

Référence des propriétés internes : Ottava_spanner_engraver, OttavaBracket, ottava-bracket-interface.

#### Instruments transpositeurs

Lorsque l’on saisit une partition d’ensemble incluant des instruments transpositeurs, certaines parties peuvent être dans une autre tonalité que la tonalité de concert. Il faudra en pareil cas indiquer la tonalité spécifique de ces instruments transpositeurs, sous peine de fichier MIDI erroné et de citations incorrectes. Pour plus de détails sur les citations, consultez le chapitre Citation d’autres voix.

>     \transposition hauteur

La hauteur donnée en argument à `\transposition` doit correspondre à la note entendue lorsqu’un `do` écrit sur la portée est joué par l’instrument transpositeur. Cette hauteur doit être mentionnée en mode absolu. Par exemple, lorsque vous saisissez une partition en notes réelles, toutes les voix devraient être en ut ; si un instrument joue un ton au dessus, il faudra lui ajouter un `\transposition d'`. La commande `\transposition` s’utilise si, et seulement si les notes à saisir ne sont pas dans la tonalité de concert.

Voici un fragment pour violon et clarinette en si bémol (B-flat) pour lequel les parties respectives ont été recopiées à partir du conducteur. Les deux instruments sont à l’unisson.

>     \new GrandStaff <<
>       \new Staff = "violin" \with {
>         instrumentName = "Vln"
>         midiInstrument = "violin"
>        }
>       \relative c'' {
>         % not strictly necessary, but a good reminder
>         \transposition c'
>         \key c \major
>         g4( c8) r c r c4
>       }
>       \new Staff = "clarinet" \with {
>         instrumentName = \markup { Cl (B\flat) }
>         midiInstrument = "clarinet"
>       }
>       \relative c'' {
>         \transposition bes
>         \key d \major
>         a4( d8) r d r d4
>       }
>     >>

La `\transposition` peut évoluer au cours d’un morceau. Un clarinettiste peut être amené à jongler avec une clarinette en la et une autre en si bémol.

>     flute = \relative c'' {
>       \key f \major
>       \cueDuring "clarinet" #DOWN {
>         R1 _\markup\tiny "clarinet"
>         c4 f e d
>         R1 _\markup\tiny "clarinet"
>       }
>     }
>     clarinet = \relative c'' {
>       \key aes \major
>       \transposition a
>       aes4 bes c des
>       R1^\markup { muta in B\flat }
>       \key g \major
>       \transposition bes
>       d2 g,
>     }
>     \addQuote "clarinet" \clarinet
>     <<
>       \new Staff \with { instrumentName = "Flute" }
>         \flute
>       \new Staff \with { instrumentName = "Cl (A)" }
>         \clarinet
>     >>

#### Voir aussi

Glossaire musicologique : tonalité de concert, instrument transpositeur.

Manuel de notation : Citation d’autres voix, Transposition.

Morceaux choisis : Hauteurs.

#### Altérations accidentelles automatiques

LilyPond dispose d’une fonction chargée de regrouper les règles suivant lesquelles s’impriment les altérations. Elle s’invoque de la manière suivante :

>     \new Staff <<
>       \accidentalStyle voice
>       { … }
>     >>

La règle de gestion des altérations s’applique normalement au contexte `Staff` en cours, exception faite des styles `choral`, `piano` et `piano-cautionary` comme nous allons le voir. Cette fonction accepte un éventuel argument supplémentaire chargé de spécifier le champ d’action de la règle à suivre. À titre d’exemple, il faudra utiliser, pour que toutes les portées d’un même système – contexte `StaffGroup` – soient soumises à la même règle :

>     \accidentalStyle StaffGroup.voice

Nous vous présentons ci-après les différentes règles d’altération prises en charge. Pour les besoins de la démonstration, nous partirons de l’exemple suivant :

>     musicA = {
>       <<
>         \relative {
>           cis''8 fis, bes4 <a cis>8 f bis4 |
>           cis2. <c, g'>4 |
>         }
>         \\
>         \relative {
>           ais'2 cis, |
>           fis8 b a4 cis2 |
>         }
>       >>
>     }

>     musicB = {
>       \clef bass
>       \new Voice {
>         \voiceTwo \relative {
>           <fis a cis>8[ <fis a cis>
>           \change Staff = up
>           cis' cis
>           \change Staff = down
>           <fis, a> <fis a>]
>           \showStaffSwitch
>           \change Staff = up
>           dis'4 |
>           \change Staff = down
>           <fis, a cis>4 gis <f a d>2 |
>         }
>       }
>     }

>     \new PianoStaff {
>       <<
>         \new Staff = "up" {
>           \accidentalStyle default
>           \musicA
>         }
>         \new Staff = "down" {
>           \accidentalStyle default
>           \musicB
>         }
>       >>
>     }

Notez bien que pour appliquer le même style aux deux portées, seules les dernières lignes de cet exemple nous intéressent.

>     \new PianoStaff {
>       <<
>         \new Staff = "haut" {
>           %%% voici la ligne à modifier en conséquence :
>           \accidentalStyle Score.default
>           \musicA
>         }
>         \new Staff = "bas" {
>           \musicB
>         }
>       >>
>     }

`default`

  C’est la règle d’impression par défaut, qui se rapporte à l’usage en vigueur au XVIIIe siècle : les altérations accidentelles sont valables toute une mesure, et uniquement à leur propre octave. C’est la raison pour laquelle il n’y a pas de bécarre avant le si de la deuxième mesure, ni avant le dernier do.

`voice`

  En principe, LilyPond se souvient de toutes les altérations présentes sur la portée (contexte `Staff`). Avec cette règle, cependant, les altérations sont indépendantes pour chacune des voix tout en obéissant à la règle `default`.

  Les altérations d’une voix sont de fait ignorées dans les autres voix, ce qui peut donner lieu à un résultat malencontreux. Dans l’exemple suivant, il est difficile de dire si le deuxième la est dièse ou naturel. La règle `voice` n’est donc à envisager que dans le cas de voix devant être lues par des musiciens différents. S’il s’agit d’un « conducteur », ou d’une portée destinée à un seul musicien, il vaut mieux utiliser `modern` ou `modern-cautionary`.

`modern`

  Cette règle est la plus courante au XXe siècle. Certains bécarres ne sont pas imprimés, comme il était d’usage lorsqu’une note diésée suit cette même note flanquée d’un double dièse, ou bien un bémol un double bémol. Le style `modern` suit la même règle que le style `default`, avec deux additions afin de lever les ambiguïtés : lorsqu’une note non altérée apparaît à une octave différente, ou bien dans la mesure suivante, des bécarres de précaution sont ajoutés. Dans l’exemple suivant, notez ainsi les deux bécarres dans la deuxième mesure de la main droite.

`modern-cautionary`

  Cette règle est équivalente à `modern`, mais les bécarres de précaution (absents dans la règle `default`) sont imprimés entre parenthèses. Ils peuvent aussi adopter une taille différente, au moyen de la propriété `font-size` de l’objet `AccidentalSuggestion`.

`modern-voice`

  Cette règle sert aux altérations dans de la musique polyphonique destinée autant à des musiciens différents qu’à quelqu’un qui lirait l’ensemble des voix. Les altérations sont imprimées voix par voix, mais les autres voix d’un même contexte `Staff` en tiennent compte cette fois. C’est pourquoi le la de la dernière mesure est affublé d’un bécarre bien qu’il y en ait déjà eu un dans la mesure précédente, et que le ré de la main gauche en ait un alors que le dièse qu’il avait auparavant concernait la main droite.

`modern-voice-cautionary`

  Cette règle est similaire à la précédente, mais les altérations de précaution (celles que n’aurait pas ajoutées `voice`), sont imprimées de façon particulière. On retrouve donc toutes les altérations qu’imprimerait `default`, mais certaines sont considérées comme étant « de précaution ».

`piano`

  Cette règle est communément employée pour les partitions de piano au XXe siècle. Très similaire à `modern` de par son comportement, elle s’en distingue en ce que les altérations tiennent compte des autres portées du contexte `GrandStaff` ou `PianoStaff`.

  Cette règle s’applique par défaut dans un `GrandStaff` et dans un `PianoStaff` à moins d’être qualifiée d’un second argument.

`piano-cautionary`

  Identique au style `piano`, mais les altérations de précaution sont imprimées différemment.

`choral`

  Cette règle est une combinaison des styles `modern-voice` et `piano`. Les altérations accidentelles sont indiquées aussi bien pour un chanteur qui suit seulement sa voix, que pour un lecteur suivant toutes les voix d’un `ChoirStaff`.

  Ce style d’altération s’applique, par défaut, au `ChoirStaff` en cours à moins d’être qualifié d’un second argument.

`choral-cautionary`

  Identique au style `choral`, mais les altérations de précaution sont imprimées différemment.

`neo-modern`

  Cette règle suit les pratiques de la musique contemporaine : les altérations accidentelles apparaissent comme dans le style `modern`, à ceci près qu’elles sont répétées dans la même mesure – sauf si elles concernent deux notes consécutives.

`neo-modern-cautionary`

  Identique au style `neo-modern`, mais les altérations de précaution sont imprimées entre parenthèses. Elles peuvent aussi adopter une taille différente, au moyen de la propriété `font-size` de l’objet `AccidentalSuggestion`.

`neo-modern-voice`

  Cette règle sert aux altérations dans de la musique polyphonique destinée autant à des musiciens différents qu’à quelqu’un qui lirait l’ensemble des voix. Les altérations sont imprimées voix par voix comme avec le style `neo-modern` mais les autres voix dans le même contexte `Staff` en tiennent aussi compte.

`neo-modern-voice-cautionary`

  Cette règle est identique à `neo-modern-voice`, mais les altérations de précaution sont imprimées soit entre parenthèses (par défaut), soit en plus petit.

`dodecaphonic`

  Cette règle reproduit ce que certains compositeurs du début du XXe siècle ont introduit dans leur désir d’abolir la distinction entre les notes naturelles ou non. Ainsi, chaque note est affublée d’une altération, même si elle est naturelle.

`dodecaphonic-no-repeat`

  Comme dans le cas du style `dodecaphonic`, chaque note est par défaut affublée d’une altération. Celle-ci sera toutefois omise lorsque la même hauteur est immédiatement répétée dans la même portée.

`dodecaphonic-first`

  Comme dans le cas du style `dodecaphonic`, chaque note est par défaut affublée d’une altération. Cette altération n’apparaîtra que pour la première occurrence dans la mesure et seront répétés en cas d’octave différente.

`teaching`

  Cette règle est à usage pédagogique : l’impression d’une simple gamme fera apparaître une altération de précaution pour toute note altérée. Les altérations accidentelles sont imprimées selon le style `modern`, et une altération de précaution est ajoutée pour chaque dièse ou bémol à la clef – sauf dans le cas de notes consécutives.

`no-reset`

  C’est la même règle que `default`, mais l’effet des altérations accidentelles ne cesse jamais, même dans les mesures suivantes.

`forget`

  Tout le contraire de `no-reset` : l’effet des altérations cesse aussitôt ; toutes les altérations, quelle que soit leur place dans la mesure, sont de ce fait imprimées en fonction de l’éventuelle armure.

#### Voir aussi

Morceaux choisis : Hauteurs.

Référence des propriétés internes : Accidental, Accidental_engraver, GrandStaff et PianoStaff, Staff, AccidentalSuggestion, AccidentalPlacement, accidental-suggestion-interface.

#### Problèmes connus et avertissements

Les notes simultanées sont considérées comme des évènements séquentiels. Ceci implique que, dans un accord, les altérations accidentelles seront imprimées comme si les notes de l’accord apparaissaient l’une après l’autre, en fonction de l’ordre dans lequel elles ont été saisies – ce qui peut poser problème lorsqu’au sein d’un accord certaines altérations dépendent les unes des autres. Ce problème est à résoudre manuellement, en insérant des `!` et des `?` après les notes concernées, tel ‘`<f! fis!>`’.

L’absence d’altération de précaution est déterminée par l’examen de la mesure précédente.

Dans le cas d’une reprise, la logique voudrait que la présence d’altération de précaution d’une alternativee soit basée sur la dernière mesure jouée plutôt que la dernière imprimée. Dans l’exemple qui suit, vous conviendrez que le do de la seconde alternative ne nécessite pas son bécarre.

L’astuce suivante, qui définit temporairement le recours au style `forget`, permet d’obtenir quelque chose de présentable.

>     forget = #(define-music-function (music) (ly:music?) #{
>       \accidentalStyle forget
>       #music
>       \accidentalStyle modern
>     #})
>     {
>       \accidentalStyle modern
>       \time 2/4
>       \repeat volta 2 {
>         c'2
>       }
>       \alternative {
>         \volta 1 { cis' }
>         \volta 2 { \forget c' }
>       }
>     }

#### Glyphes d’altération alternatifs

Les systèmes de notation non occidentaux ou anciens disposent de leurs propres altérations. Leurs glyphes sont contrôlés par la propriété `alterationGlyphs` attachée à un contexte `Staff` ou équivalent. Les valeurs prédéfinies de cette propriété sont répertoriées à l’annexe Jeux de glyphes d’altération.

>     \layout {
>       \context {
>         \Staff
>         alterationGlyphs = #alteration-vaticana-glyph-name-alist
>       }
>     }

>     { ces' c' cis' }

On peut également donner à cette propriété une valeur personnalisée sous la forme d’une liste associative affectant une altération à un nom de glyphe. Les altérations sont exprimées comme fractions d’un ton entier. Les différents glyphes sont répertoriés à l’annexe Glyphes d’altération.

>     \layout {
>       \context {
>         \Staff
>         alterationGlyphs =
>           #'((-1/2 . "accidentals.flat.arrowdown")
>              (0 . "accidentals.natural.arrowup")
>              (1/2 . "accidentals.sharp.arrowup"))
>       }
>     }

>     { ces' c' cis' }

La propriété `padding-pairs` des objets `KeySignature` et `KeyCancellation` est une liste associative affectant à une paire de glyphes le décalage qui doit s’appliquer à ces glyphes lorsqu’ils apparaissent consécutivement dans l’armure.

    \layout {
      \context {
        \Staff
        alterationGlyphs =
          #'((-1/2 . "accidentals.flat.arrowdown")
             (0 . "accidentals.natural.arrowup")
             (1/2 . "accidentals.sharp.arrowup"))
        \override KeySignature.padding-pairs =
          #'((("accidentals.sharp.arrowup" . "accidentals.sharp.arrowup")
                . 0.25)
             (("accidentals.flat.arrowdown" . "accidentals.flat.arrowdown")
                . 0.3))
        \override KeyCancellation.padding-pairs =
          #'((("accidentals.natural.arrowup" . "accidentals.natural.arrowup")
                . 0.7))
      }
    }

    {
      \key cis \major
      ces' c'
      \key ces \major
      cis'
    }

#### Voir aussi

Manuel de notation : Glyphes d’altération, Jeux de glyphes d’altération.

Référence des propriétés internes : accidental-switch-interface, Alteration_glyph_engraver, key-signature-interface.

#### Ambitus

L’ambitus est l’amplitude des hauteurs d’une voix donnée dans une partition. Ce terme peut aussi désigner la tessiture qu’un instrument est capable d’atteindre. Souvent, cet ambitus est imprimé au début des partitions vocales, afin que les exécutants puissent voir au premier coup d’œil s’ils sont en mesure de tenir la partie en question.

Pour exprimer l’ambitus d’une pièce, on indique avant la clef deux têtes de note représentant la hauteur la plus basse et la plus haute. Les éventuelles altérations accidentelles seront automatiquement ajoutées.

>     \layout {
>       \context {
>         \Voice
>         \consists Ambitus_engraver
>       }
>     }

>     \relative {
>       aes' c e2
>       cis,1
>     }

#### Morceaux choisis

#### Un ambitus par voix

L’`ambitus` peut être individualisé par voix. Il faut en pareil cas éviter qu’ils se chevauchent.

>     \new Staff <<
>       \new Voice \with {
>         \consists "Ambitus_engraver"
>       } \relative c'' {
>         \override Ambitus.X-offset = #2.0
>         \voiceOne
>         c4 a d e
>         f1
>       }
>       \new Voice \with {
>         \consists "Ambitus_engraver"
>       } \relative c' {
>         \voiceTwo
>         es4 f g as
>         b1
>       }
>     >>

#### Ambitus sur plusieurs voix

Si plusieurs voix se trouvent sur une même portée, on peut attribuer le graveur `Ambitus_engraver` au contexte `Staff` afin d’obtenir l’ambitus sur toutes les voix cumulées, non d’une seule des voix actives.

>     \new Staff \with {
>       \consists "Ambitus_engraver"
>       }
>     <<
>       \new Voice \relative c'' {
>         \voiceOne
>         c4 a d e
>         f1
>       }
>       \new Voice \relative c' {
>         \voiceTwo
>         es4 f g as
>         b1
>       }
>     >>

#### Réglage de l’affichage d’un ambitus

L’affichage d’un ambitus peut s’affiner pour répondre à vos préférences en matière d’esthétique.

>     \layout {
>       \context {
>         \Voice
>         \consists "Ambitus_engraver"
>       }
>     }

>     \new Staff {
>       \time 2/4
>       % Default setting
>       c'4 g''
>     }

>     \new Staff {
>       \time 2/4
>       \override AmbitusLine.gap = #0
>       c'4 g''
>     }

>     \new Staff {
>       \time 2/4
>       \override AmbitusLine.gap = #1
>       c'4 g''
>     }

>     \new Staff {
>       \time 2/4
>       \override AmbitusLine.gap = #1.5
>       c'4 g''
>     }

#### Ambitus après l’armure

L’ambitus se place par défaut à gauche de la clef. La fonction `\ambitusAfter` permet cependant de modifier ce positionnement ; sa syntaxe est `\ambitusAfter grob-interface` – voir Graphical Object Interfaces pour une liste des valeurs de `grob-interface` possibles.

L’un des cas d’usage est d’insérer l’ambitus entre l’armure et la métrique.

>     \new Staff \with {
>       \consists Ambitus_engraver
>     } \relative {
>       \ambitusAfter key-signature
>       \key d \major
>       es'8 g bes cis d2
>     }

#### Voir aussi

Glossaire musicologique : ambitus.

Morceaux choisis : Hauteurs.

Référence des propriétés internes : Ambitus_engraver, Voice, Staff, Ambitus, AmbitusAccidental, AmbitusLine, AmbitusNoteHead, ambitus-interface.

#### Problèmes connus et avertissements

LilyPond ne gère pas les collisions entre plusieurs ambitus présents sur une même portée.

#### LilyPond — Manuel de notation v2.24.4 (branche stable).