@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of ../user/lilypond.tely
@ignore
    Translation of GIT committish: a4cf6aed7bf79f3cc1892dbc92b642b2514c1674

    When revising a translation, copy the HEAD committish of the
    version that you are working on.  See TRANSLATION for details.
@end ignore


@node Instrument-specific notation
@chapter Instrument-specific notation

Ce chapitre traite de la notation spécifique à certains instruments.

@menu 
* Piano music::
* Chord names::
* Vocal music::
* Rhythmic music::
* Guitar::
* Bagpipe::
* Ancient notation::
* Other instrument specific notation::
@end menu 


@node Piano music
@section Piano music

Les systèmes de piano comprennent deux portées réunies par une accolade.
Les portées sont largement autonomes, mais il arrive que des voix passent
de l'une à l'autre.  Cette notation sert également à la harpe ou à d'autres
instruments à clavier.  Le contexte @internalsref{PianoStaff} est précisément
conçu pour gérer la notation spécifique au piano, notamment ces croisements.

@menu
* Automatic staff changes::
* Manual staff switches::
* Pedals::
* Staff switch lines::
* Cross staff stems::
@end menu

@refbugs

Les nuances ne sont pas centrées verticalement, mais il existe
des astuces.  Voir à ce sujet le modèle @q{alignement des nuances au
piano} au chapitre @ref{Piano templates}.

@cindex hampe, enjambement portées
@cindex distance entre deux portées de piano


@node Automatic staff changes
@subsection Automatic staff changes
@cindex Changements de portées automatiques

Les voix peuvent passer automatiquement d'une portée à l'autre, au moyen
de la syntaxe suivante :

@quotation
@example
\autochange @dots{}@var{musique}@dots{}
@end example
@end quotation

@noindent
Deux portées seront alors créées au sein du contexte @code{PianoStaff},
nommées respectivement @code{up} et @code{down}.  La portée du bas, par
défaut, sera en clé de fa.

Une section en mode @code{\relative} se situant en dehors de la commande
@code{\autochange} n'aura pas d'effet sur les hauteurs de l'expression
@var{musique} ; si on utilise @code{\relative}, il est donc préférable
de mettre @code{\relative} @emph{après} @code{\autochange} et non avant :

@quotation
@example
\autochange \relative @dots{} @dots{}
@end example
@end quotation

La commande @code{\autochange} bascule les notes d'une portée à l'autre
en fonction de leur hauteur (le do du milieu servant de charnière), et
place les silences en fonction des notes qui les suivront. Ainsi :

@lilypond[quote,verbatim,ragged-right]
\new PianoStaff
  \autochange \relative c'
  {
    g4 a b c d r4 a g
  }
@end lilypond


@seealso

Dans ce même manuel : @ref{Manual staff switches}.

Référence du programme : @internalsref{AutoChangeMusic}.



@refbugs

Les changements de portée automatiques n'interviennent pas toujours à
l'endroit le plus opportun.  Pour un résultat de meilleure qualité, il
vaut mieux indiquer soi-même ces changements.


@code{\autochange} ne peut intervenir à l'intérieur d'une commande
@code{\times}.


@node Manual staff switches
@subsection Manual staff switches

@cindex changements de portées manuels
@cindex changement de portée, manuel

Il est possible de passer d'une portée à l'autre de façon manuelle, au
moyen de la commande

@example
\change Staff = @var{nomDeLaPortee} @var{musique}
@end example

@noindent
La valeur @var{nomDeLaPortee} est le nom de la portée sur laquelle va se
déplacer la voix courante.  Pour des raisons pratiques, on nomme la portée
supérieure @code{"haut"} et la portée inférieure @code{"bas"}, donc
@var{nomDeLaPortee} désigne habituellement @code{"haut"} ou
@code{"bas"}.  Dans tous les cas, le contexte de portée ainsi utilisé
doit exister au préalable.  C'est pourquoi il est d'usage de commencer
par définir les portées

@example
<<
  \new Staff = "haut" @{
    \skip 1 * 10  % @emph{de façon à prolonger la portée}
    @}
  \new Staff = "bas" @{
    \skip 1 * 10  % @emph{idem}
    @}
>>
@end example


avant d'insérer une mélodie au moyen d'un contexte @context{Voice} :

@example
\context Staff = bas
  \new Voice @{ @dots{} \change Staff = haut @dots{} @}
@end example


@node Pedals
@subsection Pedals
@cindex Pédales

Le piano possède deux pédales, parfois trois, permettant de modifier
l'émission du son.  Il est possible d'indiquer précisément chacune
d'entre elles, en ajoutant à une note ou un accord les commandes
suivantes :
@multitable {enfoncerr} {pédale de tenuee} {pédale una cordaa} {\sostenutoDownnnn}
@item       @tab pédale de tenue @tab pédale @emph{una corda} @tab pédale tonale
@item enfoncer @tab @code{\sustainDown} @tab @code{\unaCorda} @tab @code{\sostenutoDown}
@item relâcher @tab @code{\sustainUp}   @tab @code{\treCorde} @tab @code{\sostenutoUp}
@end multitable

@lilypond[quote,ragged-right,fragment,verbatim]
c'4\sustainDown c'4\sustainUp
@end lilypond

Les modalités d'impression de ces indications sont définies par la
propriété @code{pedal@var{X}Strings}, @var{X} étant l'une des trois
pédales @code{Sustain}, @code{Sostenuto} ou @code{UnaCorda}.  Voyez
la référence du programme, section @internalsref{SustainPedal}, pour en
savoir plus.

La propriété @code{pedalSustainStyle} permet différentes notations de
pédale, en utilisant des crochets

@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\set Staff.pedalSustainStyle = #'bracket
c\sustainDown d e
b\sustainUp\sustainDown
b g \sustainUp a \sustainDown \bar "|."
@end lilypond

@noindent
ou en mélangeant indications textuelles et crochets

@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\set Staff.pedalSustainStyle = #'mixed
c\sustainDown d e
b\sustainUp\sustainDown
b g \sustainUp a \sustainDown \bar "|."
@end lilypond

@code{text} est le style de notation par défaut pour la pédale de
tenue --- le traditionnel @q{*Ped.}.  La pédale tonale, en revanche,
utilise @code{mixed} par défaut.

@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
c\sostenutoDown d e c, f g a\sostenutoUp
@end lilypond

Il est possible de d'affiner l'apparence d'un crochet de pédale, au
moyen des propriétés @code{edge-width}, @code{edge-height}, et
@code{shorten-pair}, appliquées aux objets @code{PianoPedalBracket} ---
voir la référence du programme, section
@internalsref{PianoPedalBracket}. Par exemple, on peut étirer le crochet
jusqu'à l'extrémité droite de la dernière note :

@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\override Staff.PianoPedalBracket #'shorten-pair = #'(0 . -1.0)
c\sostenutoDown d e c, f g a\sostenutoUp
@end lilypond

@seealso

Dans ce manuel : @ref{Laissez vibrer ties}.

@node Staff switch lines
@subsection Staff switch lines


@cindex voix entre deux portées
@cindex changements de portée
@cindex mélodie d'une portée à une autre

@funindex followVoice

Lorsqu'une voix change de portée, il est possible d'imprimer
automatiquement une ligne reliant les notes, en attribuant à la variable
@code{followVoice} la valeur @emph{vrai} :

@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
\new PianoStaff <<
  \new Staff="one" {
    \set followVoice = ##t
    c1
    \change Staff=two
    b2 a
  }
  \new Staff="two" { \clef bass \skip 1*2 }
>>
@end lilypond

@seealso

Référence du programme : @internalsref{VoiceFollower}.

@refcommands

@funindex \showStaffSwitch
@code{\showStaffSwitch},
@funindex \hideStaffSwitch
@code{\hideStaffSwitch}.


@node Cross staff stems
@subsection Cross staff stems

Pour écrire des accords qui enjambent deux portées, on allonge la hampe
de l'accord de l'une des deux portées de façon à ce qu'elle rejoigne celle de
l'autre portée.

@lilypond[ragged-right,verbatim,quote]
stemExtend = {
  \once \override Stem #'length = #10
  \once \override Stem #'cross-staff = ##t
}
noFlag = \once \override Stem #'flag-style = #'no-flag
\new PianoStaff <<
  \new Staff {
    \stemDown \stemExtend
    f'4
    \stemExtend \noFlag
    f'8
  }
  \new Staff {
    \clef bass
    a4 a8
  }
>>
@end lilypond



@node Chord names
@section Chord names

@menu
* Introducing chord names::     
* Chords mode::                 
* Printing chord names::        
@end menu


@c  awkward name; awkward section name.
@c  still, the Basic "chords" seems like a good name...  :(
@node Introducing chord names
@subsection Introducing chord names
@cindex accords, chiffrage jazz

LilyPond permet de désigner les accords par leur chiffrage jazz.
S'il est possible d'entrer un accord sous sa forme musicale, avec
@code{<.. >}, on peut aussi le saisir par son nom.  Le logiciel traite
les accords comme des ensembles de hauteurs, donc les accords peuvent
être transposés.

@lilypond[quote,ragged-right,verbatim,ragged-right]
twoWays = \transpose c c' {
  \chordmode {
    c1 f:sus4 bes/f
  }
  <c e g>
  <f bes c'>
  <f bes d'>
}

<< \new ChordNames \twoWays
   \new Voice \twoWays >>
@end lilypond

Cet exemple montre également que les jeux d'instructions qui permettent
à LilyPond d'imprimer des accords ne cherchent pas à se montrer
intelligents.  Ici, le dernier accord n'est pas interprété comme étant
renversé.

Notez bien que la valeur rythmique des accords doit être indiquée
@emph{à l'extérieur} des symboles @code{<>}.

@example
<c e g>2
@end example


@node Chords mode
@subsection Chords mode

Dans le mode accords, introduit par la commande @code{\chordmode}, les
accords ne sont indiqués que par leur note fondamentale.

@lilypond[quote,ragged-right,fragment,verbatim]
\chordmode { es4. d8 c2 }
@end lilypond

@cindex saisir des accords
@cindex mode accords

On peut cependant obtenir des accords différents, en utilisant le
caractère deux points (@code{:}).

@lilypond[quote,fragment,verbatim]
\chordmode { e1:m e1:7 e1:m7 }
@end lilypond

Le nombre accolé à la note fondamentale est considéré comme chiffrage
jazz de l'accord, qui est de ce fait construit par un empilement de
tierces. Notez l'exception que constitue @code{c:13} dans lequel la
onzième est délibérément omise.

@lilypond[quote,fragment,verbatim]
\chordmode { c:3 c:5 c:6 c:7 c:8 c:9 c:10 c:11 c:13 }
@end lilypond

@cindex note fondamentale
@cindex notes ajoutées
@cindex accords incomplets

Des accords encore plus complexes peuvent être élaborés en plusieurs
étapes séparées.  Ainsi, on peut enrichir l'accord par des notes
ajoutées, que l'on indique après le chiffrage principal et que l'on
sépare par des points :

@lilypond[quote,verbatim,fragment]
\chordmode { c:5.6 c:3.7.8 c:3.6.13 }
@end lilypond

On peut augmenter ou diminuer certains intervalles au moyen des
signes @code{-} ou @code{+} :

@lilypond[quote,verbatim,fragment]
\chordmode { c:7+ c:5+.3- c:3-.5-.7- }
@end lilypond

On peut aussi enlever certaines notes de l'accord, en les spécifiant
après un signe @code{^} --- les notes ajoutées doivent être indiquées
@emph{avant} les notes à enlever.

@lilypond[quote,verbatim,fragment]
\chordmode { c^3 c:7^5 c:9^3.5 }
@end lilypond

Voici les différents chiffrages disponibles, en plus des nombres que
nous venons de voir :

@table @code
@item m
Accord mineur.  Ce chiffrage minorise la tierce, et la septième s'il y
en a une.

@item dim
Accord diminué.  Ce chiffrage minorise la tierce, diminue la quinte et
la septième s'il y en a.

@item aug
Accord augmenté.  Ce chiffrage augmente la quinte.

@item maj
Accord de septième majeure. Ce chiffrage majorise la septième s'il y
en a une (dans le cas d'un accord parfait, ce chiffrage est facultatif).

@item sus
Accord de suspension. Ce chiffrage supprime la tierce, et y ajoute,
suivant que vous spécifiez @code{2} ou @code{4}, la seconde ou la
quarte.
@end table

Il est bien sûr possible de mélanger ces chiffrages avec des notes ajoutées.
@lilypond[quote,verbatim,fragment]
  \chordmode { c:sus4 c:7sus4 c:dim7 c:m6 }
@end lilypond

@cindex chiffrages des accords
@funindex aug
@funindex dim
@funindex maj
@funindex sus
@funindex m

Dans la mesure où un accord de treizième majeure ne sonne pas très bien
avec la onzième, la onzième est enlevée automatiquement, à moins que
vous ne le spécifiez explicitement.

@lilypond[quote,ragged-right,fragment,verbatim]
\chordmode { c:13 c:13.11 c:m13 }
@end lilypond

@funindex /

Les accords peuvent être renversés ou combinés avec une note étrangère à
la basse, au moyen de @code{@var{accord}/}@var{note}
@lilypond[quote,ragged-right,fragment,verbatim]
\chordmode { c1 c/g c/f }
@end lilypond
@funindex /+

Si la note de basse précisée appartient à l'accord, la doublure
supérieure sera supprimée.  Pour l'éviter, utilisez la syntaxe
@code{/+}@var{note}.

@lilypond[quote,ragged-right,fragment,verbatim]
\chordmode { c1 c/+g c/+f }
@end lilypond

Le mode accords est semblable à @code{\lyricmode} ou autre, c'est-à-dire que
la plupart des commandes sont encore disponibles ; ainsi, @code{r} ou
@code{\skip} peuvent servir à insérer des silences ou des silences
invisibles.  De plus, les propriétés des objets peuvent être ajustées
ou modifiées.



@refbugs

Aucun nom de note ne peut être indiqué deux fois dans un accord.  Ainsi, 
dans l'accord suivant, seule la quinte augmentée est prise en compte,
car elle est indiquée en dernier :

@cindex agrégats
@lilypond[quote,ragged-right,verbatim,fragment]
\chordmode { c:5.5-.5+ }
@end lilypond


@node Printing chord names
@subsection Printing chord names

@cindex chiffrages d'accords
@cindex accords

Les chiffrages d'accords sont liés au contexte
@internalsref{ChordNames}.  Les accords peuvent être saisis soit au
moyen de la notation indiquée ci-dessus, soit directement avec les
symboles @code{<} et @code{>}.

@lilypond[quote,verbatim,ragged-right]
harmonies = {
  \chordmode {a1 b c} <d' f' a'> <e' g' b'>
}
<<
  \new ChordNames \harmonies
  \new Staff \harmonies
>>
@end lilypond

Vous pouvez faire ressortir les chiffrages d'accords en assignant la
valeur vrai à la propriété @code{chordChanges} dans le contexte
@internalsref{ChordNames}.  De cette façon, les chiffrages ne sont
imprimés qu'aux changements d'accord ou en début de ligne.

@lilypond[quote,verbatim,ragged-right]
harmonies = \chordmode {
  c1:m c:m \break c:m c:m d
}
<<
  \new ChordNames {
    \set chordChanges = ##t
    \harmonies }
  \new Staff \transpose c c' \harmonies
>>
@end lilypond

Les exemples précédents montrent des chiffrages placés au-dessus de la
portée, mais ce n'est pas obligatoire : les accords peuvent également
être imprimés séparément -- auquel cas vous aurez peut-être besoin
d'ajouter le @internalsref{Volta_engraver} et le
@internalsref{Bar_engraver} afin que les éventuelles barres de reprises
s'affichent correctement.

@lilypond[ragged-right,verbatim]
\new ChordNames \with {
  \override BarLine #'bar-size = #4
  \consists Bar_engraver
  \consists "Volta_engraver"
}
\chordmode { \repeat volta 2 {
  f1:maj7 f:7 bes:7
  c:maj7
} \alternative {
  es e
}
}
@end lilypond

Le modèle par défaut des chiffrages d'accord est celui de
Klaus Ignatzek pour le jazz (cf. @ref{Literature list}).  Il s'agit
d'une notation anglo-saxonne ; cependant vous pouvez 
indiquer vos chiffrages en notation française au moyen de
la commande \frenchChords (voir plus bas).

Il est possible de créer votre propre modèle de chiffrages en
réglant les propriétés suivantes :

@table @code
@funindex chordNameExceptions
@item chordNameExceptions
C'est la liste des accords mis en forme de manière particulière.

Cette liste d'exceptions s'indique de la façon suivante.
On commence par créer une expression musicale telle que
@example
@code{chExceptionMusic} = @{ <c f g bes>1 \markup @{ \super "7" "wahh" @} @}
@end example
puis on la transforme en liste d'exceptions au moyen du code
@example
(sequential-music-to-chord-exceptions chExceptionMusic #t)
@end example
Pour qu'elles soient effectives, on ajoute ces exceptions aux exceptions
par défaut définies dans @file{ly/@/chord@/-modifier@/-init@/.ly} :
@example
(append
 (sequential-music-to-chord-exceptions chExceptionMusic #t)
 ignatzekExceptions)
@end example

Exemple de manipulation de cette propriété :
@lsr{chords/,chord@/-name@/-exceptions@/.ly}
@cindex exceptions, chiffrages d'accords.


@funindex majorSevenSymbol
@item majorSevenSymbol
Cette propriété définit l'objet employé pour indiquer une septième
majeure.  Les options prédéfinies sont @code{whiteTriangleMarkup}
(triangle blanc) et @code{blackTriangleMarkup} (triangle noir).  Voir aussi
l'exemple @lsr{chords,chord@/-name@/-major7@/.ly}.

@funindex chordNameSeparator
@item chordNameSeparator
Les différents termes d'un chiffrage jazz (par exemple les notes de
l'accord et la basse) sont habituellement séparés par une barre oblique.
La propriété @code{chordNameSeparator} permet d'indiquer un autre
séparateur, par exemple
@lilypond[quote,ragged-right,fragment,verbatim]
\new ChordNames \chordmode {
  c:7sus4
  \set chordNameSeparator
    = \markup { \typewriter "|" }
  c:7sus4
}
@end lilypond

@funindex chordRootNamer
@item chordRootNamer
Dans les chiffrages d'accord jazz, la note fondamentale de chaque accord
est exprimée par une lettre capitale, parfois suivie d'une altération,
correspondant à la notation anglo-saxonne de la musique.  Cette
propriété a pour valeur la fonction qui transforme la hauteur de la note
foncdamentale en nom de note ; c'est donc en assignant une nouvelle
fonction à cette propriété que l'on peut produire des noms de note
spéciaux, adaptés par exemple aux systèmes de notation d'autres pays.

@funindex chordNoteNamer
@item chordNoteNamer
Lorsqu'un chiffrage mentionne une note ajoutée (par exemple la basse),
les règles utilisées sont par défaut celles définies par la propriété
@code{chordRootNamer} ci-dessus.  Cependant, la propriété @code{chordNoteNamer}
permet de régler cet élément indépendamment, par exemple pour imprimer la basse
en caractères minuscules.

@funindex chordPrefixSpacer
@item chordPrefixSpacer
Le petit @q{m} qui indique un accord mineur est, dans la notation anglo-saxonne,
attaché à la lettre de l'accord. Cependant il est possible d'ajouter un espace
en assignant la valeur vrai à la propriété @code{chordPrefixSpacer}.  Cet
espace sera omis si une altération est présente.

@end table

Les propriétés ci-dessus font l'objet de commandes prédéfinies
adaptées aux notations de différents pays : @code{\germanChords} et
@code{\semiGermanChords} pour la notation allemande,
@code{\italianChords} pour la notation italienne et enfin
@code{\frenchChords} pour la notation française.

@lilypondfile[ragged-right]{chord-names-languages.ly}

LilyPond intègre également deux autres modèles de chiffrages : une
notation Jazz alternative, et un modèle systématique appelé système
Banter.  Voir @ref{Chord name chart} et @lsr{chords,chord-names-jazz.ly}
pour la mise en œuvre de ces modèles.

@cindex Banter
@cindex jazz, chiffrages d'accords
@cindex accords jazz, chiffrage


@refcommands

@funindex \germanChords
@code{\germanChords},
@funindex \semiGermanChords
@code{\semiGermanChords}.
@funindex \italianChords
@code{\italianChords}.
@funindex \frenchChords
@code{\frenchChords}.


@seealso

Exemples :
@lsrdir{chords}

Fichiers internes : @file{scm/@/chords@/-ignatzek@/.scm}, et
@file{scm/@/chord@/-entry@/.scm}.


@refbugs

Les chiffrages d'accords ne sont déterminés que par la succession des
hauteurs de notes.  En d'autres termes, les accords inversés ne sont pas
reconnus, ni les notes ajoutées à la basse.  C'est pourquoi les accords
saisis au moyen de la syntaxe @code{<.. >} peuvent produire des
chiffrages étranges.



@node Vocal music
@section Vocal music

Dans la mesure où les fichiers LilyPond sont constitués de texte,
traiter de la musique vocale demande de prendre en compte deux spécificités :

@itemize @bullet
@item
Les paroles sont saisies comme étant du texte, non des notes.
Ainsi, le code@tie{}@code{d} sera interprété comme une syllabe, et non
comme la note@tie{}ré (D pour les non latinistes).

@item
Les paroles doivent s'aligner avec les notes de la mélodie correspondante.
@end itemize

Plusieurs solutions existent pour ajouter des paroles ; nous les
examinerons par degré croissant de complexité.

@menu
* Setting simple songs::        
* Entering lyrics::             
* Aligning lyrics to a melody::  
* Working with lyrics and identifiers::  
* Flexibility in placement::    
* Spacing lyrics::              
* More about stanzas::          
* Ambitus::                     
* Other vocal issues::          
@end menu


@commonprop

S'assurer que tous les éléments textuels et les paroles respectent
les marges du document requiert des calculs relativement lourds ; c'est
la raison pour laquelle LilyPond, par défaut, ne s'en préoccupe pas.
Vous pouvez cependant l'y forcer en ajoutant le code

@example
\override Score.PaperColumn #'keep-inside-line = ##t
@end example

Pour que les paroles évitent également les barres de mesure, ajoutez
@example
\layout @{
  \context @{
    \Lyrics
      \consists "Bar_engraver"
      \consists "Separating_line_group_engraver"
      \override BarLine #'transparent = ##t
  @}
@}
@end example


@node Setting simple songs
@subsection Setting simple songs

@cindex \addlyrics

Le plus simple pour ajouter des paroles à une mélodie est d'adjoindre 

@example
\addlyrics @{ @var{les paroles} @}
@end example

@noindent
à la mélodie.  En voici un exemple :

@lilypond[ragged-right,verbatim,fragment,quote]
\time 3/4
\relative { c2 e4 g2. }
\addlyrics { play the game }
@end lilypond

On peut ajouter davantage de couplets en multipliant le nombre de
sections @code{\addlyrics}.

@lilypond[ragged-right,verbatim,fragment,quote]
\time 3/4
\relative { c2 e4 g2. }
\addlyrics { play the game }
\addlyrics { speel het spel }
\addlyrics { joue le jeu }
@end lilypond

Cependant, la commande @code{\addlyrics} ne peut gérer les
constructions polyphoniques.  Dans ce cas, mieux vaut employer
@code{\lyricsto} et @code{\lyricmode}, comme nous le verrons dans
@ref{Entering lyrics}. 



@node Entering lyrics
@subsection Entering lyrics

@cindex paroles
@funindex \lyricmode
@cindex ponctuation
@cindex espaces, dans les paroles
@cindex guillemets, dans les paroles

Il existe un mode de saisie spécialement adapté aux paroles.  On
l'introduit avec le mot-clé @code{\lyricmode}, ou en utilisant 
@code{\addlyrics} ou @code{\lyricsto}.  Ce mode vous permet de saisir
des paroles, ainsi que leur ponctuation, et le caractère @code{d} ne
sera plus interprété comme une note, mais comme une syllabe.  Les
syllabes sont saisies comme des notes, mais les hauteurs sont alors
remplacées par du texte.  Exemple avec une comptine anglaise :

@example
\lyricmode @{ Twin-4 kle4 twin- kle litt- le star2 @}
@end example

Ici on a choisi de saisir explicitement la durée de chaque syllabe. Cependant,
il est aussi possible d'attribuer automatiquement chaque syllabe à une
note d'une mélodie ou d'une voix existante, avec @code{\addlyrics} ou
@code{\lyricsto}.  
@c  TODO: broken but exists Aligning lyrics
@c For more details see @ref{The Lyrics context}.

Dans les paroles, un mot ou une syllabe commence par une lettre de
l'alphabet, et se termine par un espace (éventuellement précédé d'un
chiffre).  Toute syllabe doit donc être séparée d'une autre par un
espace, tout autre caractère étant considéré comme partie intégrante
de cette même syllabe.  L'exemple suivant comporte une faute de frappe
évidente :

@example
\lyricmode @{ lah- lah@}
@end example

la dernière syllabe contient une @code{@}}, il y a de fait un défaut de
parité avec l'accolade ouvrante, et la compilation échouera fort
probablement. 


@funindex \property dans \lyricmode

@noindent
De la même manière, un point concluant une suite de lettres sera
partie intégrante de la chaîne résultante. Par conséquent, il est
impératif d'insérer des espaces lorsque vous modifiez les propriétés
d'une commande.  En d'autres termes, ne saisissez pas

@example
\override Score.LyricText #'font-shape = #'italic
@end example

@noindent
mais plutôt

@example
\override Score . LyricText #'font-shape = #'italic
@end example

@funindex _
@cindex espaces, dans les paroles
@cindex guillemets, dans les paroles
@cindex liaisons, dans les paroles

Pour attribuer plus d'une syllabe à une même note, vous pouvez mettre
ces syllabes entre guillemets, ou bien remplacer l'espace par un
caractère souligné (@code{_}), ou encore utiliser un tilde (@code{~})
pour obtenir une liaison entre les syllabes.

@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
\time 3/4
\relative { c2 e4 g2 e4 }
\addlyrics { gran- de_a- mi- go }
\addlyrics { pu- "ro y ho-" nes- to }
\addlyrics { pu- ro~y~ho- nes- to }
@end lilypond

Cette liaison adaptée aux paroles correspond au caractère Unicode
U+203F, et n'apparaîtra dans la partition que s'il existe une police
incluant ce symbole (par exemple DejaVuLGC) installée sur le système.


Pour utiliser des lettres accentuées ou des caractères spéciaux 
--- cœurs ou guillemets inversés par exemple --- il suffit de les insérer
dans le fichier et de veiller à sauvegarder ce dernier avec le codage
utf-8.  Voir à ce sujet @ref{Text encoding} pour plus de détails.

@lilypond[quote,ragged-right,fragment,verbatim]
\relative { e4 f e d e f e2 }
\addlyrics { He said: “Let my peo ple go”. }
@end lilypond

Pour utiliser des guillemets informatiques standard, faites-les
précéder d'une barre oblique inverse :

@lilypond[quote,ragged-right,fragment,verbatim]
\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. }
\addlyrics { "\"I" am so lone- "ly\"" said she }
@end lilypond

Expliquer exactement comment LilyPond repère le début d'un mot en mode
paroles (Lyrics) est quelque peu compliqué.

En mode Lyrics, un mot peut commencer par : tout caractère alphabétique,
@code{_}, @code{?}, @code{!}, @code{:}, @code{'}, un des codes de
contrôle @code{^A} à @code{^F} et @code{^Q} à @code{^W}, @code{^Y},
@code{^^}, tout caractère ASCII de code strictement supérieur à 127, ou
enfin un des symboles @code{`}, @code{'}, @code{"}, ou @code{^}, s'il
est précédé d'une barre oblique inverse.

Pour définir un identificateur contenant des paroles, il faut utiliser
la fonction @code{lyricmode}.

@example
verseOne = \lyricmode @{ Joy to the world the Lord is come @}
\score @{
  <<
    \new Voice = "one" \relative c'' @{
      \autoBeamOff
      \time 2/4
      c4 b8. a16 g4. f8 e4 d c2
    @}
    \addlyrics @{ \verseOne @}
  >>
@}
@end example


@seealso

Référence du programme : @internalsref{LyricText}, @internalsref{LyricSpace}.



@node Aligning lyrics to a melody
@subsection Aligning lyrics to a melody

@funindex \lyricmode
@funindex \addlyrics
@funindex \lyricsto


Avant d'être imprimées, les paroles sont interprétées par le programme
dans le contexte @internalsref{Lyrics}.

@example
\new Lyrics \lyricmode @dots{}
@end example

Il y a deux grandes méthodes pour gérer le placement horizontal des
syllabes :

@itemize @bullet
@item
en alignant automatiquement les paroles sur une mélodie ou une autre
voix, en ayant recours à @code{\addlyrics} ou @code{\lyricsto} ;

@item
en affectant explicitement à chaque syllabe une durée, au sein du
contexte @code{\lyricmode}
@end itemize

@menu
* Automatic syllable durations::  
* Another way of entering lyrics::  
* Assigning more than one syllable to a single note::  
* More than one note on a single syllable::  
* Extenders and hyphens::       
@end menu

@node Automatic syllable durations
@subsubsection Automatic syllable durations

@cindex durée automatique des syllabes
@cindex paroles et mélodies

Les paroles peuvent être automatiquement alignées sous
une mélodie.  Il suffit pour cela de combiner la mélodie et les
paroles avec la commande @code{\lyricsto}.

@example
\new Lyrics \lyricsto @var{nom} @dots{}
@end example

Cette commande adapte les paroles aux notes de la voix (contexte
@internalsref{Voice} dans le jargon LilyPond) @var{nom}.  Ce contexte
@code{Voice} doit exister avant l'indication des paroles avec
@code{\lyricsto}.  La commande @code{\lyricsto} introduit
automatiquement le mode @code{\lyricmode}, donc dans ce cas vous n'avez
pas à ajouter vous-même @code{\lyricmode}.

L'exemple suivant récapitule les différentes manières de saisir des paroles.

@lilypond[quote,fragment,ragged-right,verbatim]
<<
  \new Voice = "one" \relative c'' {
    \autoBeamOff
    \time 2/4
    c4 b8. a16 g4. f8 e4 d c2
  }
  \new Lyrics \lyricmode { Joy4 to8. the16 world!4. the8 Lord4 is come.2 }
  \new Lyrics \lyricmode { Joy to the earth! the Sa -- viour reigns. }
  \new Lyrics \lyricsto "one" { No more let sins and sor -- rows grow. }
>>
@end lilypond

Le deuxième couplet n'est pas correctement disposé, aucune durée
n'ayant été spécifiée. Dans un tel cas, il aurait mieux valu utiliser
@code{\lyricsto}, comme dans le troisième couplet.

La commande @code{\addlyrics} n'est en fait qu'une simplification de
la structure employée par LilyPond pour définir les paroles.

@example
@{ MUSIQUE @}
\addlyrics @{ PAROLES @}
@end example

@noindent
est exactement la même chose que

@example
\new Voice = "blah" @{ musique @}
\new Lyrics \lyricsto "blah" @{ PAROLES @}
@end example

@node Another way of entering lyrics
@subsubsection Another way of entering lyrics

On peut aussi se passer de @code{\addlyrics} et de @code{\lyricsto} pour
saisir des paroles.  Dans ce cas, les syllabes sont entrées comme des
notes --- du texte remplaçant les hauteurs --- ce qui veut dire que vous
devez définir leur durée explicitement :
 
@example
play2 the4 game2.
sink2 or4 swim2.
@end example
 
La mélodie associée à ces paroles peut être spécifiée par la propriété
@code{associatedVoice} :
 
@example
\set associatedVoice = #"lala"
@end example
 
@noindent
La valeur que vous attribuez à cette propriété (ici @code{"lala"})
doit désigner un contexte @internalsref{Voice}, sans quoi les mélismes
ne seront pas imprimés correctement.
 
Voici un exemple de cette manière de procéder :
 
@lilypond[relative=1,ragged-right,verbatim,fragment,quote]
<< \new Voice = "melody" {
    \time 3/4
    c2 e4 g2.
 }
 \new Lyrics \lyricmode {
   \set associatedVoice = #"melody"
   play2 the4 game2.
 } >>
@end lilypond

@seealso
 
Référence du programme : @internalsref{Lyrics}.


@node Assigning more than one syllable to a single note
@subsubsection Assigning more than one syllable to a single note


@funindex _
@cindex liaisons, dans les paroles

Pour attribuer plus d'une syllabe à une même note, vous pouvez les
mettre entre guillemets, remplacer une espace par un caractère souligné
(@code{_}) pour obtenir une espace, ou bien encore utiliser un tilde
(@code{~}) pour obtenir une liaison entre les syllabes@footnote{Une
liaison adaptée aux paroles correspond au caractère Unicode U+203F, et
n'apparaîtra dans la partition que si le système dispose d'une police
installée qui contient ce symbole(par exemple DejaVuLGC).}.

@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
\time 3/4
\relative { c2 e4 g2 e4 }
\addlyrics { gran- de_a- mi- go }
\addlyrics { pu- "ro y ho-" nes- to }
\addlyrics { pu- ro~y~ho- nes- to }
@end lilypond

@seealso

Référence du programme : @internalsref{LyricCombineMusic}.

@c Here come the section which used to be "Melismata"
@c the new title might be more self-explanatory


@node More than one note on a single syllable
@subsubsection More than one note on a single syllable

@cindex mélisme
@cindex vocalise
@c better here
@cindex phrasé, pour des paroles


Parfois, tout particulièrement dans la musique médiévale, plusieurs
notes correspondent à une même syllabe. Ces vocalises sont appelées mélismes.

@c this method seems to be the simplest; therefore
@c it might be better to present it first - vv

Il est possible d'indiquer tous les mélismes lors de la saisie des
paroles. Il suffit pour cela d'utiliser le caractère @code{_} pour
chaque note du mélisme.

@lilypond[relative=1,verbatim,fragment,quote]
{ \set melismaBusyProperties = #'()
 c d( e) f f( e) e e  }
\addlyrics
 { Ky -- _ _ ri __ _ _ _  e }
@end lilypond

En définissant, comme dans l'exemple ci-dessus, la propriété
@code{melismaBusyProperties}, vous obtiendrez automatiquement toutes
les liaisons de tenue et de phrasé requises.

D'autre part, la commande @code{\lyricsto} arrive aussi à détecter
automatiquement les mélismes : une seule syllabe sera placée sous un
groupe de notes comprenant des liaisons de tenue ou de phrasé.  Au cas
où un mélisme doit s'appliquer à des notes non liées, il suffit
d'adjoindre @code{\melisma} à la première note du groupe, et 
@code{\melismaEnd} à la dernière :

@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
<<
  \new Voice = "lala" {
    \time 3/4
    f4 g8
    \melisma
    f e f
    \melismaEnd
    e2
  }
  \new Lyrics \lyricsto "lala" {
    la di __ daah
  }
>>
@end lilypond

Enfin, lorsque la fonction de ligature automatique (cf.
@ref{Setting automatic beam behavior}) est désactivée, le fait de les
connecter manuellement créera un mélisme.

@c TODO: there might be some more relevant place for 
@c the following link (?)

@cindex SATB
@cindex choral score

Vous trouverez un exemple complet de partition pour chœur dans la
section @ref{Vocal ensembles}.


@refcommands

@code{\melisma}, @code{\melismaEnd}
@funindex \melismaEnd
@funindex \melisma

@seealso

Référence du programme : @internalsref{Melisma_translator}.

@lsr{vocal,lyric@/-combine.ly}.

@refbugs

Certains mélismes ne sont pas détectés automatiquement ; vous devrez
alors prolonger vous-même les syllabes concernées.

@node Extenders and hyphens
@subsubsection Extenders and hyphens

@cindex mélisme
@cindex extenseur
@cindex prolongateur

Un mélisme est indiqué par une ligne horizontale basse centrée
entre une syllabe et la suivante.  Une telle ligne, que nous
appellerons prolongateur ou extenseur, s'obtient en saisissant 
@samp{ __ } (notez les espaces entourant le souligné double).

@cindex trait d'union

Un trait d'union séparant deux syllabes d'un même mot s'obtient en
saisissant @samp{ -- } (notez les espaces entourant le tiret double).
Ce trait d'union sera centré entre les deux syllabes et sa longueur
sera proportionnelle à l'espace les séparant.

Dans les partitions très serrées, les traits d'union peuvent ne pas être
imprimés.  Cet inconvénient peut être contrôlé par
@code{minimum-distance} pour gérer l'espace minimum entre deux syllabes,
et @code{minimum-length}, seuil en deçà duquel il n'y a pas de trait
d'union.

@seealso

Référence du programme : @internalsref{LyricExtender},
@internalsref{LyricHyphen}


@node Working with lyrics and identifiers
@subsection Working with lyrics and identifiers
@cindex paroles, identificateurs

La fonction @code{\lyricmode} permet de définir un identificateur pour
les paroles.  Point n'est besoin de spécifier les durées si vous
utilisez @code{\addlyrics} ou @code{\lyricsto} lorsque vous y faites référence.
 
@example
verseOne = \lyricmode @{ Joy to the world the Lord is come @}
\score @{
 <<
   \new Voice = "one" \relative c'' @{
     \autoBeamOff
     \time 2/4
     c4 b8. a16 g4. f8 e4 d c2
   @}
   \addlyrics @{ \verseOne @}
 >>
@}
@end example
 
Pour une organisation différente ou plus complexe, mieux vaut
commencer par définir la hiérarchie des portées et des paroles,
@example
\new ChoirStaff <<
  \new Voice = "soprano" @{ @emph{musique} @}
  \new Lyrics = "sopranoParoles" @{ s1 @}
  \new Lyrics = "tenorParoles" @{ s1 @}
  \new Voice = "tenor" @{ @emph{musique} @}
>>
@end example
 
puis combiner correctement les mélodies et les paroles :
 
@example
\context Lyrics = sopranoParoles \lyricsto "soprano"
@emph{les paroles}
@end example
 
@noindent

Le résultat donnera ainsi quelque chose comme
 
@example
<<\new ChoirStaff << @emph{définition de la musique} >>
 \lyricsto "soprano" @emph{etc}
 \lyricsto "alto" @emph{etc}
@emph{etc}
>>
@end example
 
@seealso
 
@c TODO: document \new Staff << Voice \lyricsto >> bug

Référence du programme : @internalsref{LyricCombineMusic},
@internalsref{Lyrics}.  


@node Flexibility in placement
@subsection Flexibility in placement

Une même mélodie peut se voir traitée différemment suivant les couplets.
La commande @code{\lyricsto} permet de prendre en compte ces variantes.

@menu
* Lyrics to multiple notes of a melisma::  
* Divisi lyrics::               
* Switching the melody associated with a lyrics line::  
* Lyrics independent of notes::  
@end menu


@node Lyrics to multiple notes of a melisma
@subsubsection Lyrics to multiple notes of a melisma

Il peut survenir que les paroles comportent un mélisme pour l'un des
couplets, mais plusieurs syllabes pour d'autres. Une solution consiste à
temporairement ignorer les mélismes dans le couplet ayant plus de
syllabes.  Il suffit pour cela de définir la propriété
@code{ignoreMelismata} à l'intérieur du contexte Lyrics.

Petit détail qui a son importance : la définition de
@code{ignoreMelismata} doit intervenir une syllabe @emph{avant} les
syllabes auxquelles elle s'appliquera :

@c  FIXME: breaks compile
@lilypond[verbatim,ragged-right,quote]
%{
<<
  \relative \new Voice = "lahlah" {
    \set Staff.autoBeaming = ##f
    c4
    \slurDotted
    f8.[( g16])
    a4
  }
  \new Lyrics \lyricsto "lahlah" {
    more slow -- ly
  }
  \new Lyrics \lyricsto "lahlah" {
    \set ignoreMelismata = ##t % applies to "fas"
    go fas -- ter
    \unset ignoreMelismata
    still
  }
>>
%}
@end lilypond


Ici la fonction @code{ignoreMelismata} concerne la syllabe @q{fas},
bien qu'elle ait été définie avant la syllabe @q{go}.

L'inverse est aussi possible : prendre une mélodie syllabique pour en
faire un mélisme.  Il faudra alors insérer des sauts invisibles
@code{\skip} dans vos paroles. Chaque @code{\skip} décale le texte
suivant d'une note :

@lilypond[verbatim,ragged-right,quote]
\relative { c c g' }
\addlyrics {
  twin -- \skip 4
  kle
}
@end lilypond


@node Divisi lyrics
@subsubsection Divisi lyrics

En donnant un nom à chaque voix et en leur attribuant spécifiquement
des paroles, on peut créer des paroles alternatives --- également
qualifiées de @q{divisi}.

@lilypond[verbatim,ragged-right,quote]
\score{ <<
  \new Voice = "melody" {
    \relative c' {
      c4
      <<
        { \voiceOne c8 e }
        \new Voice = "splitpart" { \voiceTwo c4 }
      >>
      \oneVoice c4 c | c
    }
  }
  \new Lyrics \lyricsto "melody" { we shall not o- ver- come }
  \new Lyrics \lyricsto "splitpart" { will }
>> }
@end lilypond


Cette astuce permet de faire varier les paroles lorsqu'une section est reprise.

@lilypond[verbatim,ragged-right,quote]
\score{ <<
  \new Voice = "melody" \relative c' {
    c2 e | g e | c1 |
    \new Voice = "verse" \repeat volta 2 {c4 d e f | g1 | }
    a2 b | c1}
  \new Lyrics = "mainlyrics" \lyricsto melody \lyricmode {
    do mi sol mi do
    la si do }
  \context Lyrics = "mainlyrics" \lyricsto verse \lyricmode {
   do re mi fa sol }
  \new Lyrics = "repeatlyrics" \lyricsto verse \lyricmode {
   dodo rere mimi fafa solsol }
>>
}
@end lilypond



@node Switching the melody associated with a lyrics line
@subsubsection Switching the melody associated with a lyrics line

On peut créer des variations plus complexes à partir d'une mélodie à
plusieurs voix.  Les paroles peuvent suivre l'une ou l'autre des
lignes mélodiques, et même basculer de l'une à l'autre si l'on
modifie la propriété @code{associatedVoice}.  Dans cet exemple,

@lilypond[ragged-right,quote]
<<
  \relative \new Voice = "lahlah" {
    \set Staff.autoBeaming = ##f
    c4
    <<
      \new Voice = "alternative" {
        \voiceOne
        \times 2/3 {
          % show associations clearly.
          \override NoteColumn #'force-hshift = #-3
          f8 f g
        }
      }
      {
        \voiceTwo
        f8.[ g16]
        \oneVoice
      } >>
    a8( b) c
  }
  \new Lyrics \lyricsto "lahlah" {
    Ju -- ras -- sic Park
  }
  \new Lyrics \lyricsto "lahlah" {
    % Tricky: need to set associatedVoice
    % one syllable too soon!
    \set associatedVoice = alternative % applies to "ran"
    Ty --
    ran --
    no --
    \set associatedVoice = lahlah % applies to "rus"
    sau -- rus Rex
  } >>
@end lilypond

@noindent
le texte du premier couplet s'aligne sur la mélodie nommée
@q{lahlah},

@example
\new Lyrics \lyricsto "lahlah" @{
  Ju -- ras -- sic Park
@}
@end example


Le second couplet est tout d'abord rattaché au contexte @code{lahlah},
mais bascule sur une autre mélodie sur la syllabe @q{ran}.  Pour cela,
nous utilisons
@example
\set associatedVoice = alternative
@end example

@noindent
où @code{alternative} désigne le nom du contexte @code{Voice} qui contient
le triolet.

Encore une fois, cette commande doit être spécifiée une syllabe en
avance, c'est-à-dire ici avant la syllabe @q{Ty}.

@example
\new Lyrics \lyricsto "lahlah" @{
  \set associatedVoice = alternative % applies to "ran"
  Ty --
  ran --
  no --
  \set associatedVoice = lahlah % applies to "rus"
  sau -- rus Rex
@}
@end example

@noindent
Comme vous pouvez le voir, nous revenons ensuite à l'alignement sur la
mélodie d'origine, en assignant à la propriété @code{associatedVoice}
la valeur @code{lahlah}.


@node Lyrics independent of notes
@subsubsection Lyrics independent of notes

Dans certaines musiques vocales assez complexes, on peut avoir intérêt à
imprimer les paroles indépendamment des notes.  La mélodie sur laquelle
s'aligne les paroles --- marquée par le tag @code{lyricrhythm} dans
l'exemple suivant --- peut être insérée dans un contexte @code{Devnull},
ce qui indique à LilyPond de na pas imprimer cette mélodie dans la
partition.  Seules subsistent alors de cette mélodie les valeurs
rythmiques, sur lesquelles s'alignent les paroles.

@lilypond[quote,verbatim,ragged-right]
voice = {
  c''2
  \tag #'music { c''2 }
  \tag #'lyricrhythm { c''4. c''8 }
  d''1
}

lyr = \lyricmode { I like my cat! }

<<
  \new Staff \keepWithTag #'music \voice
  \new Devnull="nowhere" \keepWithTag #'lyricrhythm \voice
  \new Lyrics \lyricsto "nowhere" \lyr
  \new Staff { c'8 c' c' c' c' c' c' c'
  c' c' c' c' c' c' c' c' }
>>
@end lilypond


@node Spacing lyrics
@subsection Spacing lyrics

@cindex espacer des paroles
@cindex paroles, accroître l'espacement

La propriété @code{#'minimum-distance} de l'objet LyricSpace permet
d'accroître l'espacement des paroles.

@lilypond[relative,verbatim,fragment,quote,ragged-right]
{
  c c c c
  \override Lyrics.LyricSpace #'minimum-distance = #1.0
  c c c c
}
\addlyrics {
  longtext longtext longtext longtext
  longtext longtext longtext longtext
}
@end lilypond

Pour que ce réglage s'applique à toute la partition, définissez-le
dans le bloc @code{\layout}.

@lilypond[relative,verbatim,quote,ragged-right]
\score {
  \relative c' {
  c c c c
  c c c c
  }
  \addlyrics {
  longtext longtext longtext longtext
  longtext longtext longtext longtext
  }
  \layout {
    \context {
      \Lyrics
      \override LyricSpace #'minimum-distance = #1.0
    }
  }
}
@end lilypond


@node More about stanzas
@subsection More about stanzas

@cindex numéro de couplet
@subsubsection Adding stanza numbers 

On peut ajouter un numéro aux couplets en définissant la variable
@code{stanza} :

@lilypond[quote,ragged-right,verbatim,relative=2,fragment]
\new Voice {
  \time 3/4 g2 e4 a2 f4 g2.
} \addlyrics {
  \set stanza = "1. "
  Hi, my name is Bert.
} \addlyrics {
  \set stanza = "2. "
  Oh, ché -- ri, je t'aime
}
@end lilypond

@noindent
Ces numéros se placeront juste avant le début de la première syllabe.

@subsubsection Adding dynamics marks

Lorsque des couplets ont des nuances différentes, vous pouvez ajouter
une nuance devant chaque numéro.  L'objet @code{StanzaNumber} contient
tout ce qui se place au début du couplet.  Pour des raisons techniques,
vous devrez définir la variable @code{stanza} en dehors du mode
@code{\lyricmode}.

@lilypond[quote,ragged-right,verbatim]
text = {
  \set stanza = \markup { \dynamic "ff" "1. " }
  \lyricmode {
    Big bang
  }
}

<<
  \new Voice = "tune" {
    \time 3/4
    g'4 c'2
  }
\new Lyrics \lyricsto "tune" \text
>>
@end lilypond

@cindex nom de personnage
@cindex nom du chanteur
@subsubsection Adding singer names

On peut également ajouter le nom de chaque rôle ; ils s'imprimeront au
début de chaque ligne comme les noms d'instruments.  Il faut pour cela
définir @code{vocalName}, et @code{shortVocalName} pour une version
abrégée.

@lilypond[fragment,ragged-right,quote,verbatim,relative=2]
\new Voice {
  \time 3/4 g2 e4 a2 f4 g2.
} \addlyrics {
  \set vocalName = "Bert "
  Hi, my name is Bert.
} \addlyrics {
  \set vocalName = "Ernie "
  Oh, che -- ri, je t'aime
}
@end lilypond


@subsubsection Printing stanzas at the end 

Il peut parfois s'avérer opportun d'aligner un seul couplet sur la
mélodie, et de présenter tous les autres en bloc à la fin du morceau.
Ces couplets additionnels peuvent être inclus dans une section
@code{\markup} en dehors du bloc @code{\score} principal.
Vous en trouverez un exemple ci-dessous ; notez également les deux
méthodes différentes employées pour indiquer les sauts de ligne,
entre les couplets (@q{verses} en anglais) 2 et 3.

@c keeply?
@lilypond[ragged-right,verbatim,quote]
melody = \relative c' {
e d c d | e e e e |
d d e d | c1 |
}

text = \lyricmode {
\set stanza = "1." Ma- ry had a lit- tle lamb,
its fleece was white as snow.
}

\score{ <<
  \new Voice = "one" { \melody }
  \new Lyrics \lyricsto "one" \text
>>
  \layout { }
}
\markup { \column{
  \line{ Verse 2. }
  \line{ All the children laughed and played }
  \line{ To see a lamb at school. }
  }
}
\markup{
  \wordwrap-string #"
  Verse 3.

  Mary took it home again,

  It was against the rule."
}
@end lilypond


@subsubsection Printing stanzas at the end in multiple columns 

Si les couplets sont vraiment nombreux, il est possible de les imprimer
sur plusieurs colonnes.  De plus, l'exemple suivant vous montrera
comment faire en sorte que le numéro du couplet soit en retrait à
gauche, comme c'est traditionnellement le cas.

@c keeply?
@lilypond[ragged-right,quote,verbatim]
melody = \relative c' {
  c c c c | d d d d
}
 
text = \lyricmode {
  \set stanza = "1." This is verse one.
  It has two lines.
}

\score{ <<
    \new Voice = "one" { \melody }
    \new Lyrics \lyricsto "one" \text
   >>
  \layout { }
}

\markup {
  \fill-line {
    \hspace #0.1 % moves the column off the left margin; can be removed if
        % space on the page is tight
     \column {
      \line { \bold "2."
        \column {
          "This is verse two."
          "It has two lines."
        }
      }
      \hspace #0.1 % adds vertical spacing between verses
      \line { \bold "3."
        \column {
          "This is verse three."
          "It has two lines."
        }
      }
    }
    \hspace #0.1  % adds horizontal spacing between columns; if they are
        % still too close, add more " " pairs until the result 
        % looks good
     \column {
      \line { \bold "4."
        \column {
          "This is verse four."
          "It has two lines."
        }
      }
      \hspace #0.1 % adds vertical spacing between verses
      \line { \bold "5."
        \column {
          "This is verse five."
          "It has two lines."
        }
      }
    }
  \hspace #0.1 % gives some extra space on the right margin; can
      % be removed if page space is tight
  }
}
@end lilypond


@seealso

Référence du programme : @internalsref{LyricText},
@internalsref{StanzaNumber}, @internalsref{VocalName}.



@node Ambitus
@subsection Ambitus
@cindex ambitus

L'@emph{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'oeil s'ils sont en mesure de tenir la partie en question.

Pour exprimer l'ambitus d'une pièce, on indique avant la clé deux notes
représentant la hauteur la plus basse et la plus haute.  Pour imprimer
cet ambitus, il faut ajouter le graveur @internalsref{Ambitus_engraver}
au contexte @internalsref{Voice}.  Ainsi,

@example
\layout @{
  \context @{
    \Voice
    \consists Ambitus_engraver
  @}
@}
@end example

@noindent
donne pour résultat

@lilypond[quote,ragged-right]
\layout {
  \context {
    \Staff
    \consists Ambitus_engraver
  }
}

\relative \new Staff {
  as'' c e2 cis,2
}
@end lilypond

Si plusieurs voix se trouvent sur une même portée, on peut attribuer le
graveur @internalsref{Ambitus_engraver} au contexte @internalsref{Staff}
plutôt qu'au contexte @internalsref{Voice} ; l'ambitus affiché sera
alors celui de toutes les voix cumulées, non d'une seule des voix
actives.

@lilypond[verbatim,ragged-right,quote]
\new Staff \with {
  \consists "Ambitus_engraver"
}
<<
  \new Voice \with {
    \remove "Ambitus_engraver"
  } \relative c'' {
    \override Ambitus #'X-offset = #-1.0
    \voiceOne
    c4 a d e f2
  }
  \new Voice \with {
    \remove "Ambitus_engraver"
  } \relative c' {
    \voiceTwo
    es4 f g as b2
  }
>>
@end lilypond

@noindent
Cet exemple met en œuvre une fonctionnalité avancée :

@example
\override Ambitus #'X-offset = #-1.0
@end example

@noindent
Ce réglage déplace l'ambitus vers la gauche.  Le même résultat aurait pu
être obtenu avec @code{extra-offset}, mais alors le système de mise en
forme n'aurait pas attribué d'espace supplémentaire pour l'objet
déplacé.

@seealso

Référence du programme : @internalsref{Ambitus},
@internalsref{AmbitusLine}, @internalsref{AmbitusNoteHead},
@internalsref{AmbitusAccidental}.

Exemples :
@lsr{vocal,ambitus@/.ly}.

@refbugs

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


@node Other vocal issues
@subsection Other vocal issues

@ignore
yeah, I'm giving up somewhat by stuffing a bunch of things in
here.  But at least they're in the manual now; it's easier to
move them around in the manual once they're already here.

Besides, if users complain about everything stuffed in here, I
can ask them for specific instructions about where to move these
examples, and that might get them more involved in the docs.  -gp
@end ignore

Le @emph{parlato} est du texte scandé en rythme, mais sans hauteurs
définies ; il est indiqué par des notes en croix, à l'instar des
percussions --- voir @ref{Special noteheads}.


@node Rhythmic music
@section Rhythmic music

La notation rythmique sert avant tout aux parties de percussions ou de
batterie, mais on peut aussi s'en servir à des fins pédagogiques, pour
montrer le rythme d'une mélodie.

@menu
* Showing melody rhythms::      
* Entering percussion::         
* Percussion staves::           
* Ghost notes::                 
@end menu


@node Showing melody rhythms
@subsection Showing melody rhythms

Au moyen d'une portée rythmique -- @q{rhythmic staff} en anglais -- on
peut montrer seulement le rythme d'une mélodie : toutes les notes sont
ramenées à la même hauteur, sur une portée d'une seule ligne.

@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
\new RhythmicStaff {
  \time 4/4
  c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
}
@end lilypond

@seealso

Référence du programme : @internalsref{RhythmicStaff}.


@node Entering percussion
@subsection Entering percussion

@cindex percussions
@cindex batterie

Les parties de percussions peuvent être saisies avec le mode @code{\drummode},
qui est l'équivalent du mode standard utilisé pour les notes à hauteur
déterminée.  Chaque instrument de percussion peut avoir, dans le
fichier LilyPond, un nom complet et un nom raccourci.


@lilypond[quote,ragged-right,verbatim]
\drums {
  hihat hh bassdrum bd
}
@end lilypond

Ces noms sont inventoriés dans le fichier d'initialisation 
@file{ly/@/drumpitch@/-init@/.ly}.
@c TODO: properly document this.

@seealso

Référence du Programme : @internalsref{note-event}.

@node Percussion staves
@subsection Percussion staves
@cindex percussions
@cindex batterie

Une partie de percussions utilisant plusieurs instruments requiert en
général une portée de plusieurs lignes, où chaque hauteur sur la
portée représente un instrument à percussion.

Pour saisir cette musique, il faut que les notes soient situées dans
des contextes @internalsref{DrumStaff} et @internalsref{DrumVoice}.

@lilypond[quote,ragged-right,verbatim]
up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat }
down = \drummode { bassdrum4 snare8 bd r bd sn4 }
  \new DrumStaff <<
    \new DrumVoice { \voiceOne \up }
    \new DrumVoice { \voiceTwo \down }
  >>
@end lilypond

L'exemple ci-dessus montre une notation polyphonique détaillée.  La
notation polyphonique abrégée peut être employée lorsque le contexte
@internalsref{DrumVoice} est spécifié explicitement :

@lilypond[quote,ragged-right,fragment,verbatim]
\new DrumStaff <<
  \new DrumVoice = "1" { s1 *2 }
  \new DrumVoice = "2" { s1 *2 }
  \drummode {
    bd4 sn4 bd4 sn4
    <<
      { \repeat unfold 16 hh16 }
      \\
      { bd4 sn4 bd4 sn4 }
    >>
  }
>>
@end lilypond

On peut choisir d'autres mises en forme si l'on définit la propriété
@code{drumStyleTable} dans le contexte @internalsref{DrumVoice}.  
Quelques variables prédéfinies sont disponibles :

@table @code
@item drums-style
La notation par défaut : une batterie standard, sur une portée de cinq lignes.


@lilypond[quote,line-width=10.0\cm]
nam = \lyricmode {
  cymc cyms cymr hh hhc hho hhho hhp
  cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
mus = \drummode {
  cymc cyms cymr hh hhc hho hhho hhp \break
  cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
\score {
  << \new DrumStaff \with {
       \remove Bar_engraver
       \remove Time_signature_engraver
       \override Stem #'transparent = ##t
       \override Stem #'Y-extent-callback = ##f
       \override VerticalAxisGroup #'minimum-Y-extent = #'(-4.0 . 5.0)
     } \mus
     \new Lyrics \nam
  >>
  \layout {
    \context {
      \Score
      \override LyricText #'font-family = #'typewriter
      \override BarNumber #'transparent =##T
    }
  }
}
@end lilypond

Le plan de la batterie peut inclure jusqu'à six toms différents.  Bien
sûr, vous n'êtes pas obligé de tous les utiliser si la musique en
prévoit moins ; par exemple, les trois toms des lignes du milieu sont
@code{tommh}, @code{tomml}, et @code{tomfh}.

@item timbales-style
Ce style permet de saisir une partie de timbales, sur une portée à deux
lignes.

@lilypond[quote,ragged-right]
nam = \lyricmode { timh ssh timl ssl cb }
mus = \drummode { timh ssh timl ssl cb s16 }

<<
  \new DrumStaff \with {
    \remove Bar_engraver
    \remove Time_signature_engraver
    \override Stem #'transparent = ##t
    \override Stem #'Y-extent-callback = ##f
    \override StaffSymbol #'line-count = #2
    \override StaffSymbol #'staff-space = #2
    \override VerticalAxisGroup #'minimum-Y-extent = #'(-3.0 . 4.0)
    drumStyleTable = #timbales-style
  } \mus
  \new Lyrics {
    \override LyricText #'font-family = #'typewriter
    \nam
  }
>>
@end lilypond

@item congas-style
Ce style produit une portée à deux lignes pour une partie de congas.

@lilypond[quote,ragged-right]
nam = \lyricmode { cgh cgho cghm ssh cgl cglo cglm ssl }
mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }

<<
  \new DrumStaff \with {
    \remove Bar_engraver
    \remove Time_signature_engraver
    drumStyleTable = #congas-style
    \override StaffSymbol #'line-count = #2

    %% this sucks; it will lengthen stems.
    \override StaffSymbol #'staff-space = #2
    \override Stem #'transparent = ##t
    \override Stem #'Y-extent-callback = ##f
  } \mus
  \new Lyrics {
    \override LyricText #'font-family = #'typewriter
    \nam
  }
>>
@end lilypond

@item bongos-style
Ce style produit une portée à deux lignes pour une partie de bongos.


@lilypond[quote,ragged-right]
nam = \lyricmode { boh boho bohm ssh bol bolo bolm ssl }
mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }

<<
  \new DrumStaff \with {
    \remove Bar_engraver
    \remove Time_signature_engraver
    \override StaffSymbol #'line-count = #2
    drumStyleTable = #bongos-style

    %% this sucks; it will lengthen stems.
    \override StaffSymbol #'staff-space = #2
    \override Stem #'transparent = ##t
    \override Stem #'Y-extent-callback = ##f
  } \mus
  \new Lyrics {
    \override LyricText #'font-family = #'typewriter
    \nam
  }
>>
@end lilypond

@item percussion-style
Ce style permet de saisir toute sorte de percussions sur des portées
d'une ligne.

@lilypond[quote,ragged-right]
nam = \lyricmode { tri trio trim gui guis guil cb cl tamb cab mar hc }
mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }

<<
  \new DrumStaff \with{
    \remove Bar_engraver
    drumStyleTable = #percussion-style
    \override StaffSymbol #'line-count = #1
    \remove Time_signature_engraver
    \override Stem #'transparent = ##t
    \override Stem #'Y-extent-callback = ##f
  } \mus
  \new Lyrics {
    \override LyricText #'font-family = #'typewriter
    \nam
  }
>>
@end lilypond
@end table

Cependant, si aucun des styles prédéfinis ne vous convient, il est aisé
de définir le vôtre en début de fichier.

@lilypond[quote,ragged-right,verbatim]
#(define mydrums '(
         (bassdrum     default   #f         -1)
         (snare        default   #f         0)
         (hihat        cross     #f         1)
         (pedalhihat   xcircle   "stopped"  2)
         (lowtom       diamond   #f         3)))
up = \drummode { hh8 hh hh hh hhp4 hhp }
down = \drummode { bd4 sn bd toml8 toml }

\new DrumStaff <<
  \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
  \new DrumVoice { \voiceOne \up }
  \new DrumVoice { \voiceTwo \down }
>>
@end lilypond


@seealso

Fichier d'initialisation : @file{ly/@/drumpitch@/-init@/.ly}.

Référence du programme : @internalsref{DrumStaff}, @internalsref{DrumVoice}.

@refbugs

La bibliothèque MIDI générale ne contient pas les @emph{rimshots} --- coups
sur le bord de la caisse claire --- donc ils sont remplacés par des
@emph{sidesticks,} largement équivalents.



@c FIXME: check name -gp
@node Ghost notes
@subsection Ghost notes

Des notes fantômes peuvent être créées pour les parties de percussion,
grâce à la commande @code{\parenthesize} décrite dans
@ref{Parentheses}. Cependant, le mode @code{\drummode} n'inclut pas par
défaut le graveur @code{Parenthesis_engraver} qui permet d'imprimer ces
signes.  Il faut donc l'ajouter explicitement dans la définition du
contexte, suivant la manœuvre indiquée dans @ref{Changing context
properties on the fly}.

@lilypond[quote,ragged-right,verbatim,fragment]
\new DrumStaff \with {
  \consists "Parenthesis_engraver"
} <<
  \context DrumVoice  = "1"  { s1 *2 }
  \context DrumVoice  = "2" { s1 *2 }
  \drummode {
    <<
      {
        hh8[ hh] <hh sn> hh16
        < \parenthesize sn > hh < \parenthesize
        sn > hh8 <hh sn> hh
      } \\ {
        bd4 r4 bd8 bd r8 bd
      }
    >>
  }
>>
@end lilypond

@noindent
Notez que les commandes @code{\parenthesize} obligent à ajouter des
accords --- sous la forme @code{< >} --- autour de chaque élément.

@node Guitar
@section Guitar

@cindex tablature
@cindex tablature de guitare

@menu
* String number indications::   
* Tablatures basic::            
* Non-guitar tablatures::       
* Banjo tablatures::            
* Fret diagrams::               
* Right hand fingerings::       
* Other guitar issues::         
@end menu

@node String number indications
@subsection String number indications

@cindex cordes numérotées
@cindex numéro de corde

On peut ajouter aux accords les numéros de cordes, en les indiquant avec
@code{\}@var{number} :

@lilypond[relative,relative=1,ragged-right,fragment]
<c\1 e\2 g\3>
@end lilypond


@seealso

Référence du programme : @internalsref{StringNumber},
@lsr{guitar/,string-number.ly}.


@node Tablatures basic
@subsection Tablatures basic
@cindex tablatures de base

La notation en tablature est utilisée pour certains instruments à cordes
pincées.  Les hauteurs n'y sont pas indisuées par des têtes de note,
mais par des chiffres qui indiquent sur quelle corde, et à quelle case
chaque note doit être jouée.  Dans certaines limites, LilyPond vous
permet d'écrire des tablatures.

Chaque numéro de corde associé à une note doit être précédé d'une barre
oblique inverse (ou @qq{antislash}). Ainsi, @code{c4\3} donnera un do
noire à jouer sur la troisième corde.  Par défaut, la première corde est
la plus aigüe, et les cordes suivent l'accord traditionnel d'une guitare
à six cordes.  Les notes sont imprimées sous forme de tablature, dans
les contextes @internalsref{TabStaff} et @internalsref{TabVoice}.

@lilypond[quote,ragged-right,fragment,verbatim]
\new TabStaff {
  a,4\5 c'\2 a\3 e'\1
  e\4 c'\2 a\3 e'\1
}
@end lilypond

@funindex minimumFret
@cindex cases

Quand aucune corde n'est précisée, LilyPond choisit automatiquement la
corde où la position est la moins élevée et qui donne un numéro de case
supérieur à la valeur de la propriété @code{minimumFret}.  On peut
régler cette propriété, selon qu'on désire une position plus ou moins
haute.  La valeur par défaut de cette propriété est fixée à 0, ce qui
correspond à la position la plus basse.


@example
e16 fis gis a b4
\set TabStaff.minimumFret = #8
e16 fis gis a b4
@end example
@lilypond[quote,ragged-right]
frag = {
  \key e \major
  e16 fis gis a b4
  \set TabStaff.minimumFret = #8
  e16 fis gis a b4
}
  \new StaffGroup <<
    \new Staff { \clef "G_8" \frag }
    \new TabStaff { \frag }
  >>
@end lilypond


@commonprop

Pour obtenir des tablatures où les hampes seront dirigées vers le bas et 
les ligatures horizontales, réglez le contexte @code{TabStaff}
comme suit :

@example
\stemDown
\override Beam #'damping = #100000
@end example

@seealso

Référence du programme : @internalsref{TabStaff}, @internalsref{TabVoice}.

@refbugs

Les accords ne subsissent ausun traitement particulier ; de ce fait, la
sélection automatique des cordes peut attribuer une même corde pour deux
notes différentes de l'accord.

Afin que @code{\partcombine} fonctionne avec des tablatures, on doit
ajouter au contexte @code{TabStaff} des voix fantômes :

@lilypond[quote,ragged-right,verbatim]
melodia = \partcombine { e4 g g g }{ e4 e e e }
<<
  \new TabStaff <<
    \new TabVoice = "one" s1
    \new TabVoice = "two" s1
    \new TabVoice = "shared" s1
    \new TabVoice = "solo" s1
    { \melodia }
  >>
>>
@end lilypond


@node Non-guitar tablatures
@subsection Non-guitar tablatures
@cindex tablatures, autres

Vous pouvez bien sûr accorder vos cordes différemment.  Cet accord est
enregistré dans la propriété @code{stringTunings}.  La valeur de cette
propriété doit être indiquée sous forme d'une liste en langage Scheme,
où chaque corde est représentée par un nombre entier qui indique sa
hauteur à vide, comptée en demi-tons à partir du do central.  Cette
propriété permet aussi à LilyPond de déterminer le nombre de cordes.

Dans l'exemple suivant, on a réglé @code{stringTunings} pour l'accord de
la guitare basse, c'est-à-dire mi la ré sol.

@lilypond[quote,ragged-right,fragment,verbatim]
\new TabStaff <<
  \set TabStaff.stringTunings = #'(-5 -10 -15 -20)
  {
    a,4 c' a e' e c' a e'
  }
>>
@end lilypond

Toutefois, LilyPond possède des jeux de cordes prédéfinis pour le banjo,
la mandoline, la guitare et la guitare basse ; ainsi, l'accord précédent
peut également s'indiquer par

@example
\set TabStaff.stringTunings = #bass-tuning
@end example

Le jeu par défaut est celui de la guitare : @code{guitar-tuning},
c'est-à-dire le célèbre mi la ré sol si mi. D'autres jeux prédéfinis
sont @code{guitar-open-g-tuning}, @code{mandolin-tuning} et
@code{banjo-open-g-tuning}.

@seealso

Vous trouverez une liste complète des jeux prédéfinis dans le fichier
@file{scm/@/output@/-lib@/.scm}.

Référence du programme : @internalsref{Tab_note_heads_engraver}.

@refbugs

Aucun effet spécial de guitare n'a été implémenté à ce jour.



@node Banjo tablatures
@subsection Banjo tablatures
@cindex Tablatures de banjo

LilyPond permet d'écrire des tablatures de base pour le banjo à cinq
cordes.  Pour ce faire, pensez à utiliser le format de tablature pour
banjo, afin d'avoir le bon nombre de cordes et le bon accord :

@lilypond[quote,ragged-right,fragment,verbatim]
\new TabStaff <<
  \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo
  \set TabStaff.stringTunings = #banjo-open-g-tuning
  {
    \stemDown
    g8 d' g'\5 a b g e d' |
    g4 d''8\5 b' a'\2 g'\5 e'\2 d' |
    g4
  }
>>
@end lilypond

LilyPond connaît un certain nombre de manières d'accorder un banjo :
@code{banjo-c-tuning} (sol do sol si ré),
@code{banjo-modal-tuning} (sol ré sol do ré),
@code{banjo-open-d-tuning} (la ré fa-dièse la ré)
et @code{banjo-open-dm-tuning} (la ré fa la ré).

Tous ces accords peuvent être convertis en accords pour banjo à quatre
cordes, si l'on utilise la fonction @code{four-string-banjo} :

@example
\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
@end example

@seealso

Vous trouverez une liste complète des jeux de cordes prédéfinis pour le banjo
dans le fichier @file{scm/@/output@/-lib@/.scm}.


@node Fret diagrams
@subsection Fret diagrams
@cindex schémas d'accords
@cindex schémas de barrés

On peut ajouter des diagrammes d'accords au-dessus de n'importe quelle
note, en tant qu'objets @code{\markup}. Ces objets donnent toutes
les informations sur le doigté et les éventuels barrés :

@lilypond[verbatim, ragged-right, quote]
\new Voice {
  d'^\markup \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-2;"
  d' d' d'
  fis'^\markup \override #'(size . 0.75) {
    \override #'(finger-code . below-string) {
      \fret-diagram-verbose #'((place-fret 6 2 1) (barre 6 1 2)
                               (place-fret 5 4 3) (place-fret 4 4 4)
                               (place-fret 3 3 2) (place-fret 2 2 1)
                               (place-fret 1 2 1))
    }
  }
  fis' fis' fis'
  c'^\markup \override #'(dot-radius . 0.35) {
    \override #'(finger-code . in-dot) {
      \override #'(dot-color . white) {
        \fret-diagram-terse #"x;3-1-(;5-2;5-3;5-4;3-1-);"
      }
    }
  }
  c' c' c'
}
@end lilypond


Vous pouvez indiquer vos diagrammes de trois manières différentes :
@qq{standard}, @qq{terse} ou @qq{verbeux}. Ces trois interfaces
produisent des schémas similaires, mais demandent d'entrer plus ou moins
d'informations.  Vous trouverez tout les détails dans
@ref{Overview of text markup commands}.

Par ailleurs, plusieurs propriétés permettent d'ajuster le graphisme
à votre convenance. Vous en trouverez les détails dans
@internalsref{fret-diagram-interface}. 


@seealso

Exemples : @lsrdir{guitar}


@node Right hand fingerings
@subsection Right hand fingerings

Les doigtés de la main droite, dans les accords, peuvent être ajoutés au moyen
de @code{@var{note}-\rightHandFinger @var{doigté}}

@lilypond[verbatim,fragment,relative=2]
  <c-\rightHandFinger #1 e-\rightHandFinger #2 >
@end lilypond

Pour plus de clarté, vous pouvez traduire ou abréger la commande 
@code{\rightHandFinger}, par exemple en @code{\doigtMainDroite} ou
même @code{\MD} :

@example
#(define MD rightHandFinger)
@end example

@cindex doigtés, main droite, guitare
@cindex mains droite, doigtés guitare
 
@commonprop

Pour contrôler plus précisément les doigtés de main droite, réglez la
propriété @code{strokeFingerOrientations} :

@lilypond[quote,verbatim,ragged-right,fragment,relative=1]
#(define RH rightHandFinger)
{
  \set strokeFingerOrientations = #'(up down)
  <c-\RH #1 es-\RH #2 g-\RH #4 > 4
  \set strokeFingerOrientations = #'(up right down)
  <c-\RH #1 es-\RH #2 g-\RH #4 > 4
}
@end lilypond

Les lettres utilisées dans ces doigtés sont définies par la propriété
@code{digit-names}, mais on peut bien sûr les changer en utilisant une
chaîne de caractères comme argument de @code{\rightHandFinger}.

@lilypond[quote,verbatim,ragged-right,fragment,relative=1]
#(define RH rightHandFinger)
{
  \set strokeFingerOrientations = #'(right)
  \override StrokeFinger #'digit-names = ##("x" "y" "z" "!" "@") 
  <c-\RH #5 >4
  <c-\RH "@">4  
}
@end lilypond

@seealso

Référence du programme : @internalsref{StrokeFinger}



@node Other guitar issues
@subsection Other guitar issues


Voici comment insérer des indications de position.

@lilypond[quote,ragged-right,fragment,verbatim,relative=0]
\clef "G_8"
b16 d16 g16 b16 e16
\textSpannerDown
\override TextSpanner #'bound-details #'left #'text = #"XII "
  g16\startTextSpan
  b16 e16 g16 e16 b16 g16\stopTextSpan
e16 b16 g16 d16
@end lilypond


Lorsque des notes doivent être jouées détimbrées --- le doigt effleurant
la corde sans la presser, en un effet presque percussif, mais où la
hauteur est encore perceptible ---, on peut employer des têtes de notes
spéciales en forme de croix.
Vous trouverez plus de détails dans @ref{Special noteheads}.


@node Bagpipe
@section Bagpipe

@cindex cornemuse

@menu
* Bagpipe definitions::         
* Bagpipe example::             
@end menu


@node Bagpipe definitions
@subsection Bagpipe definitions

LilyPond inclut des définitions spécifiques destinées à la notation pour
cornemuse écossaise ; pour les utiliser, il suffit d'ajouter

@example
\include "bagpipe.ly"
@end example

@noindent
en début de fichier.  Ainsi, vous bénéficierez de commandes courtes pour
les appogiatures spéciales et idiomatiques de la cornemuse.  Par
exemple, @code{\taor} est un raccourci pour

@example
\grace @{ \small G32[ d G e] @}
@end example

@code{bagpipe.ly} prend également en charge les définitions de hauteurs
pour la cornemuse ; vous n'avez donc pas à vous soucier d'employer
@code{\relative} ou @code{\transpose}.

@lilypond[ragged-right,verbatim,quote,notime]
\include "bagpipe.ly"
{ \grg G4 \grg a \grg b \grg c \grg d \grg e \grg f \grA g A }
@end lilypond

La musique pour cornemuse est traditionnellement écrite en ré majeur.
Dans la mesure où c'est la seule tonalité possible, l'usage est de ne
pas indiquer l'armure explicitement. À cet effet, pensez à commencer
votre partition par @code{\hideKeySignature} -- ou bien
@code{\showKeySignature} si, pour une raison ou pour une autre, vous
tenez à afficher l'armure.

Des compositions actuelles peuvent ne pas respecter cette tonalité
traditionnelle, auquel cas les do et fa devraient être abaissés en
utilisant @code{cflat} ou @code{fflat} ; ils seront représenté par une
note en forme de croix.

Lorsqu'on joue des œuvres moins cérémonieuses que pour une parade
ou un défilé, peut survenir un sol aigu, au doux nom de
@qq{piobaireachd}, et que l'on indiquera par @code{gflat}.


@node Bagpipe example
@subsection Bagpipe example

Et voici en guise d'exemple, à quoi ressemble le chant populaire
@emph{Amazing Grace}, noté dans l'idiome de la cornemuse.

@lilypond[verbatim,quote]
\include "bagpipe.ly"
\layout {
  indent = 0.0\cm
  \context { \Score \remove "Bar_number_engraver" }
}

\header {
  title = "Amazing Grace"
  meter = "Hymn"
  arranger = "Trad. arr."
}

{
  \hideKeySignature
  \time 3/4
  \grg \partial 4 a8. d16
  \slurd d2 \grg f8[ e32 d16.]
  \grg f2 \grg f8 e
  \thrwd d2 \grg b4
  \grG a2 \grg a8. d16
  \slurd d2 \grg f8[ e32 d16.]
  \grg f2 \grg e8. f16
  \dblA A2 \grg A4
  \grg A2 f8. A16
  \grg A2 \hdblf f8[ e32 d16.]
  \grg f2 \grg f8 e
  \thrwd d2 \grg b4
  \grG a2 \grg a8. d16
  \slurd d2 \grg f8[ e32 d16.]
  \grg f2 e4
  \thrwd d2.
  \slurd d2
  \bar "|."
}
@end lilypond


@node Ancient notation
@section Ancient notation

@cindex Vaticana, Editio
@cindex Medicaea, Editio
@cindex hufnagel
@cindex Petrucci
@cindex mensural

La gestion par LilyPond des formes de notation ancienne inclut des
fonctionnalités spécifiques à la notation mensurale et au chant
grégorien.  La basse chiffrée est également partiellement prise en
charge.

De nombreux objets graphiques --- @qq{grobs} dans le jargon de LilyPond
--- disposent d'une propriété @code{style}, comme nous le verrons dans
@itemize @bullet
@item
@ref{Ancient note heads},
@item
@ref{Ancient accidentals},
@item
@ref{Ancient rests},
@item
@ref{Ancient clefs},
@item
@ref{Ancient flags},
@item
@ref{Ancient time signatures}.
@end itemize

Manipuler cette propriété permet d'adapter l'aspect typographique des
grobs à une forme de notation particulière, ce qui évite la création de
nouveaux concepts de notation.

En plus des signes d'articulation standards décrits à la section
@ref{Articulations}, la notation ancienne dispose de signes particuliers.

@itemize @bullet
@item
@ref{Ancient articulations}
@end itemize

D'autres aspects de la notation ancienne ne peuvent pas être gérés
aussi simplement qu'en jouant sur les propriétés d'un style appliqué à
un objet graphique ou en lui ajoutant des articulations.  Certains
concepts sont spécifiques à la notation ancienne.

@itemize @bullet
@item
@ref{Custodes},
@item
@ref{Divisiones},
@item
@ref{Ligatures}.
@end itemize

Si tout cela vous dépasse et que vous désirez plonger dans le vif du
sujet sans trop vous préoccuper d'ajuster des contextes, consultez les
pages dédiées aux contextes prédéfinis.  Ils vous permettront d'adapter
vos contextes de voix et de portée, et vous n'aurez plus qu'à saisir les
notes.

@itemize @bullet
@item
@ref{Gregorian Chant contexts},
@item
@ref{Mensural contexts}.
@end itemize

LiliyPond gère partiellement la représentation de basses chiffrées,
typiques de l'époque baroque, mais également employées de nos jours en
harmonie et en analyse.

@itemize @bullet
@item
@ref{Figured bass}
@end itemize

Voici les points que nous allons aborder :

@menu
* Ancient note heads::          
* Ancient accidentals::         
* Ancient rests::               
* Ancient clefs::               
* Ancient flags::               
* Ancient time signatures::     
* Ancient articulations::       
* Custodes::                    
* Divisiones::                  
* Ligatures::                   
* Gregorian Chant contexts::    
* Mensural contexts::           
* Musica ficta accidentals::    
* Figured bass::                
@end menu



@node Ancient note heads
@subsection Ancient note heads

@cindex têtes de note, musique ancienne

Pour de la musique ancienne, vous disposez de plusieurs styles de tête
de note, en plus du style par défaut @code{default}.  Vous pouvez
affecter à la propriété @code{style} de l'objet @internalsref{NoteHead}
les valeurs @code{baroque}, @code{neomensural}, @code{mensural} ou
@code{petrucci}.  En style @code{baroque}, la seule différence par
rapport au style @code{default} concerne la @code{\breve} qui sera
carrée et non pas ovoïde.  Le style @code{neomensural} ajoute au
@code{baroque} le fait que les notes de durée inférieure ou égale à une
ronde sont en forme de losange, et les hampes centrées sur la tête.  Ce
style est particulièrement adapté à la transcription de la musique
mesurée dans les incipits.  Le style @code{mensural} permet de
reproduire les têtes de note telles qu'imprimées au XVIe siècle.  Enfin,
le style @code{petrucci} imite des partitions historiques, bien
qu'il utilise de plus grosses têtes de note.

L'exemple suivant illustre le style @code{neomensural}.


@lilypond[quote,fragment,ragged-right,verbatim]
\set Score.skipBars = ##t
\override NoteHead #'style = #'neomensural
a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
@end lilypond

Si vous écrivez en notation grégorienne, le
@internalsref{Gregorian_ligature_engraver} se chargera de sélectionner
les têtes de note appropriées ; il est donc inutile de spécifier le
style à utiliser.  Vous pouvez cependant spécifier par exemple le style
@code{vaticana_punctum} pour obtenir des neumes punctums.  De même,
c'est le @internalsref{Mensural_ligature_engraver} qui se chargera des
ligatures mensurales.  Consultez la section @ref{Ligatures} pour savoir
comment fonctionnent les graveurs de ligature.

@seealso

Pour un aperçu de toutes les possibilités,
consultez @ref{Note head styles}.


@node Ancient accidentals
@subsection Ancient accidentals

@cindex altérations


Pour utiliser les formes anciennes d'altération, utilisez la propriété
@code{glyph-name-alist} des objets graphiques @internalsref{Accidental}
et @internalsref{KeySignature}.

@lilypond[quote,ragged-right,staffsize=26]
\score {
{
  \fatText
  s^\markup {
    \column {
      "vaticana"
      \line { " " \musicglyph #"accidentals.vaticana-1"
        " " \musicglyph #"accidentals.vaticana0" }
    }
    \column {
      "medicaea"
      \line { " " \musicglyph #"accidentals.medicaea-1" }
    }
    \column {
      "hufnagel"
      \line { " " \musicglyph #"accidentals.hufnagel-1" }
    }
    \column {
      "mensural"
      \line { " " \musicglyph #"accidentals.mensural-1"
        " " \musicglyph #"accidentals.mensural1" }
    }
  }
}
\layout {
  interscoreline = 1
  \context { \Score \remove "Bar_number_engraver" }
  \context { \Staff
      \remove "Clef_engraver"
      \remove "Key_engraver"
      \remove "Time_signature_engraver"
      \remove "Staff_symbol_engraver"
      \override VerticalAxisGroup #'minimum-Y-extent = ##f
    }
  }
}
@end lilypond

Vous noterez que chacun de ces styles ne comporte pas toutes les
altérations.  LilyPond changera de style s'il y a besoin d'une
altération indisponible dans le style utilisé, comme vous pouvez le
constater dans @lsr{ancient,ancient-accidentals.ly}.

À l'instar des altérations accidentelles, le style d'armure est géré
par la propriété @code{glyph-name-alist} de l'objet
@internalsref{KeySignature}. 

@seealso

Dans ce manuel : @ref{Pitches}, @ref{Cautionary accidentals}, et
@ref{Automatic accidentals}, pour les principes généraux d'utilisation
des altérations ; @ref{Key signature} pour les armures.

Référence du programme : @internalsref{KeySignature}.

Exemples : @lsrdir{ancient}


@node Ancient rests
@subsection Ancient rests

@cindex silences, musique ancienne

La propriété @code{style} de l'objet @internalsref{Rest} permet
d'obtenir des silences de type ancien.  Vous disposez des styles
@code{classical}, @code{neomensural} et @code{mensural}.  Le style
@code{classical} ne se distingue du style @code{default} que par le
soupir (demi-soupir en miroir). Le style @code{neomensural} convient
tout à fait à l'incipit lors de la transcription de musique mensurale.
Le style @code{mensural}, enfin, imite la gravure des silences dans
certaines éditions du XVIe siècle.

L'exemple suivant illustre le style @code{neomensural}.

@lilypond[quote,fragment,ragged-right,verbatim]
\set Score.skipBars = ##t
\override Rest #'style = #'neomensural
r\longa r\breve r1 r2 r4 r8 r16
@end lilypond

Les styles @code{mensural} et @code{neomensural} ne disposent pas des 8e
et 16e de soupir ; LilyPond utilise dans de tels cas le style par
défaut.  @lsr{pitches,rests} donne une liste exhaustive des silences.

Les silences sont absents de la notation grégorienne ; par contre, cette
notation utilise des @ref{Divisiones}.

@seealso

Dans ce manuel : @ref{Rests} expose les principes généraux sur
l'utilisation des silences.


@node Ancient clefs
@subsection Ancient clefs

@cindex clefs
@cindex clés

Avec LilyPond, de nombreuses clés sont disponibles, dont certaines sont
dédiées à la musique ancienne.

Le tableau suivant présente les différentes clés anciennes que vous
pouvez sélectionner avec la commande @code{\clef}.  Certaines de ces
clés utilisent le même glyphe, attaché à l'une ou l'autre des lignes
de la portée.  Le chiffre porté en suffixe permet alors de les
différencier.  Vous pouvez néanmoins forcer le positionnement du
glyphe sur une ligne, comme expliqué à la section @ref{Clef}.  Dans la
colonne exemple, la note suivant la clé montre le do médium.

@multitable @columnfractions .4 .4 .2
@item
@b{Description}
@tab
@b{Clé disponible}
@tab
@b{Exemple}

@item
Clé d'ut, style mensural moderne
@tab
@code{neomensural-c1}, @code{neomensural-c2},@*
@code{neomensural-c3}, @code{neomensural-c4}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "neomensural-c2" c
@end lilypond

@item
Clé d'ut, style mensural Petrucci, positionnable sur différentes
lignes (clé d'ut seconde pour l'exemple)
@tab
@code{petrucci-c1}, @code{petrucci-c2},@*
@code{petrucci-c3}, @code{petrucci-c4},@*
@code{petrucci-c5}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "petrucci-c2"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé de fa, style mensural Petrucci
@tab
@code{petrucci-f}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "petrucci-f"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé de sol, style mensural Petrucci
@tab
@code{petrucci-g}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "petrucci-g"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé d'ut, style mensural historique
@tab
@code{mensural-c1}, @code{mensural-c2},@*
@code{mensural-c3}, @code{mensural-c4}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "mensural-c2"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé de fa, style mensural historique
@tab
@code{mensural-f}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "mensural-f"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé de sol, style mensural historique
@tab
@code{mensural-g}
@tab
@lilypond[fragment,relative=1,notime]
  \clef "mensural-g"
  \override NoteHead #'style = #'mensural
  c
@end lilypond

@item
Clé d'ut, style Editio Vaticana
@tab
@code{vaticana-do1}, @code{vaticana-do2},@*
@code{vaticana-do3}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'vaticana.punctum
  \clef "vaticana-do2"
  c
@end lilypond

@item
Clé de fa, style Editio Vaticana
@tab
@code{vaticana-fa1}, @code{vaticana-fa2}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'vaticana.punctum
  \clef "vaticana-fa2"
  c
@end lilypond

@item
Clé d'ut, style Editio Medicaea
@tab
@code{medicaea-do1}, @code{medicaea-do2},@*
@code{medicaea-do3}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'medicaea.punctum
  \clef "medicaea-do2"
  c
@end lilypond

@item
Clé de fa, style Editio Medicaea
@tab
@code{medicaea-fa1}, @code{medicaea-fa2}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'medicaea.punctum
  \clef "medicaea-fa2"
  c
@end lilypond

@item
Clé d'ut, style historique Hufnagel
@tab
@code{hufnagel-do1}, @code{hufnagel-do2},@*
@code{hufnagel-do3}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'hufnagel.punctum
  \clef "hufnagel-do2"
  c
@end lilypond

@item
Clé de fa, style historique Hufnagel
@tab
@code{hufnagel-fa1}, @code{hufnagel-fa2}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'line-count = #4
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'hufnagel.punctum
  \clef "hufnagel-fa2"
  c
@end lilypond

@item
Clé combinée ut/fa, style historique Hufnagel
@tab
@code{hufnagel-do-fa}
@tab
@lilypond[fragment,relative=1,notime]
  \override Staff.StaffSymbol #'color = #red
  \override Staff.LedgerLineSpanner #'color = #red
  \override Voice.Stem #'transparent = ##t
  \override NoteHead #'style = #'hufnagel.punctum
  \clef "hufnagel-do-fa"
  c
@end lilypond
@end multitable



@emph{Moderne} signifie @qq{gravé comme dans les transcriptions
contemporaines de musique mesurée.}

@emph{Petrucci} signifie @qq{inspiré des éditions réalisées par le
maître graveur Petrucci (1466-1539).}

@emph{Historique} signifie @qq{gravé comme dans les éditions
historiques, manuscrites ou non, autres que celles de Petrucci.}

@emph{Editio XXX} signifie @qq{gravé comme dans les ouvrages estampillés
Editio XXX.}

Les clés d'ut de Petrucci avaient une hampe gauche différente selon
leur ligne de rattachement.

@seealso

Dans ce manuel : voir @ref{Clef}.

@refbugs

La clé de sol mensurale est calquée sur celle de Petrucci.



@node Ancient flags
@subsection Ancient flags

@cindex crochets

Le réglage de la propriété @code{flag-style} de l'objet hampe
(@internalsref{Stem}) donne accès aux crochets de style ancien.  Les
seuls styles actuellement pris en charge sont @code{default} et
@code{mensural}.

@lilypond[quote,fragment,ragged-right,verbatim]
\override Stem #'flag-style = #'mensural
\override Stem #'thickness = #1.0
\override NoteHead #'style = #'mensural
\autoBeamOff
c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8
c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
@end lilypond

Notez que pour chaque crochet mensural, l'extrémité la plus proche de
la tête de note sera toujours attachée à une ligne de la portée.

Il n'existe pas de crochet spécifique au style néo-mensural.  Nous vous
conseillons donc, lorsque vous réalisez l'incipit d'une transcription,
d'utiliser le style par défaut.  Les crochets n'existent pas en notation
grégorienne.

@refbugs

Les crochets anciens s'attachent aux hampes avec un léger décalage,
suite à des modifications intervenues au début de la série 2.3.

L'alignement vertical des crochets par rapport aux lignes de la portée
sous-entend que les hampes se terminent toujours soit sur une ligne,
soit à l'exact milieu d'un interligne.  Ceci n'est pas toujours
réalisable, surtout si vous faites appel à des fonctionnalités avancées
de présentation de la notation classique, qui, par définition, ne sont
pas prévues pour être appliquées à la notation mensurale.


@node Ancient time signatures
@subsection Ancient time signatures

@cindex métrique

Les chiffrages de métrique mensurale sont partiellement pris en charge.
Les glyphes ne font que représenter des métriques particulières.  En
d'autres termes, pour obtenir le glyphe correspondant à une métrique
mensurale particulière à l'aide de la commande @code{\time n/m}, vous
devez choisir la paire @code{(n,m)} parmi les valeurs suivantes :

@lilypond[quote,ragged-right]
\layout {
  indent = 0.0
  \context {
    \Staff
    \remove Staff_symbol_engraver
    \remove Clef_engraver
    \remove Time_signature_engraver
  }
}
{
  \set Score.timing = ##f
  \set Score.barAlways = ##t
  s_\markup { "\\time 4/4" }^\markup { "       " \musicglyph
#"timesig.neomensural44" }
  s
  s_\markup { "\\time 2/2" }^\markup { "       " \musicglyph
#"timesig.neomensural22" }
  s
  s_\markup { "\\time 6/4" }^\markup { "       " \musicglyph
#"timesig.neomensural64" }
  s
  s_\markup { "\\time 6/8" }^\markup { "       " \musicglyph
#"timesig.neomensural68" }
  \break
  s_\markup { "\\time 3/2" }^\markup { "       " \musicglyph
#"timesig.neomensural32" }
  s
  s_\markup { "\\time 3/4" }^\markup { "       " \musicglyph
#"timesig.neomensural34" }
  s
  s_\markup { "\\time 9/4" }^\markup { "       " \musicglyph
#"timesig.neomensural94" }
  s
  s_\markup { "\\time 9/8" }^\markup { "       " \musicglyph
#"timesig.neomensural98" }
  \break
  s_\markup { "\\time 4/8" }^\markup { "       " \musicglyph
#"timesig.neomensural48" }
  s
  s_\markup { "\\time 2/4" }^\markup { "       " \musicglyph
#"timesig.neomensural24" }
}
@end lilypond

La propriété @code{style} de l'objet @internalsref{TimeSignature} permet
d'accéder aux indicateurs de métrique anciens.  Les styles
@code{neomensural} et @code{mensural} sont disponibles.  Vous avez vu
ci-dessus le style @code{neomensural}, particulièrement utilisé pour
l'incipit des transcriptions.  Le style @code{mensural} imite l'aspect
de certaines éditions du XVIe siècle.

Voici les différences entre les styles :

@lilypond[ragged-right,fragment,relative=1,quote]
{
  \fatText

  \time 2/2
  c1^\markup { \hspace #-2.0 \typewriter default }

  \override Staff.TimeSignature #'style = #'numbered
  \time 2/2
  c1^\markup { \hspace #-2.0 \typewriter numbered }

  \override Staff.TimeSignature #'style = #'mensural
  \time 2/2
  c1^\markup { \hspace #-2.0 \typewriter mensural }

  \override Staff.TimeSignature #'style = #'neomensural
  \time 2/2
  c1^\markup { \hspace #-2.0 \typewriter neomensural }
  \override Staff.TimeSignature #'style = #'single-digit
  \time 2/2
  c1^\markup { \hspace #-2.0 \typewriter single-digit }
}
@end lilypond

@seealso

Dans ce manuel : @ref{Time signature} expose les principes généraux sur
l'utilisation des indications de métrique.

@refbugs

Les équivalences de durées de note ne sont pas modifiées par un
changement de métrique.  Par exemple, l'équivalence 1 brève pour 3
semi-brèves (tempus perfectum) doit s'effectuer à la main en entrant :

@example
breveTP = #(ly:make-duration -1 0 3 2)
@dots{}
@{ c\breveTP f1 @}
@end example

@noindent
Ce qui définira @code{breveTP} à 3/2 fois 2 = 3 fois une ronde.

Le symbole @code{old6/8alt} --- symbole alternatif pour la métrique 6/8
--- ne peut être utilisé grâce à une commande @code{\time}.  Utilisez
plutôt un @code{\markup}.


@node Ancient articulations
@subsection Ancient articulations

@cindex articulations

En plus des signes d'articulation standards décrits à la section
@ref{Articulations}, LilyPond fournit des articulations pour la musique
ancienne.  Elles sont spécifiquement destinées au style Editio Vaticana.

@lilypond[quote,ragged-right,verbatim]
\include "gregorian-init.ly"
\score {
  \new VaticanaVoice {
    \override TextScript #'font-family = #'typewriter
    \override TextScript #'font-shape = #'upright
    \override Script #'padding = #-0.1
    a\ictus_"ictus" \break
    a\circulus_"circulus" \break
    a\semicirculus_"semicirculus" \break
    a\accentus_"accentus" \break
    \[ a_"episem" \episemInitium \pes b \flexa a b \episemFinis \flexa a \]
  }
}
@end lilypond

@refbugs

Certaines articulations sont verticalement trop proches de leurs têtes
de note.

Le trait d'un episem n'est bien souvent pas apparent et, lorsqu'il
l'est, son extension à droite est trop longue.

@node Custodes
@subsection Custodes

@cindex custos
@cindex custodes
@cindex guidon

Un guidon --- @emph{custos}, pluriel @emph{custodes} en latin --- est un
symbole qui apparaît à la fin d'une portée.  Il montre la hauteur de la
ou des premières notes de la portée suivante, donnant une indication
judicieuse à l'exécutant.

Les guidons étaient couramment utilisés jusqu'au XVIIe siècle.  De nos
jours, on les retrouve uniquement dans quelques formes particulières de
notation telles que les éditions contemporaines de chant grégorien comme
les @emph{editio vaticana}.  Différents glyphes existent selon le style
de notation.

L'impression de guidons s'obtient en affectant, dans un bloc
@code{\layout}, le @internalsref{Custos_engraver} au contexte
@code{Staff}, comme le montre l'exemple suivant.

@example
\layout @{
  \context @{
    \Staff
    \consists Custos_engraver
    Custos \override #'style = #'mensural
  @}
@}
@end example

Le résultat ressemblera à

@lilypond[quote,ragged-right]
\score {
{
  a'1
  \override Staff.Custos #'style = #'mensural
  \break
  g'
}
\layout {
  \context { \Staff \consists Custos_engraver }
  }
}
@end lilypond

Le glyphe du guidon est déterminé par la propriété @code{style}.  Les
styles disponibles sont @code{vaticana}, @code{medicaea},
@code{hufnagel} et @code{mensural}.  En voici un aperçu :

@lilypond[quote,ragged-right,fragment]
\new Lyrics \lyricmode {
  \markup { \column {
    \typewriter "vaticana"
    \line { " " \musicglyph #"custodes.vaticana.u0" }
  } }
  \markup { \column {
    \typewriter "medicaea"
    \line { " " \musicglyph #"custodes.medicaea.u0" }
  }}
  \markup { \column {
    \typewriter "hufnagel"
    \line { " " \musicglyph #"custodes.hufnagel.u0" }
  }}
  \markup { \column {
    \typewriter "mensural"
    \line { " " \musicglyph #"custodes.mensural.u0" }
  }}
}
@end lilypond

@seealso

Référence du programme : @internalsref{Custos}.

Exemples : @lsr{ancient,custodes@/.ly}.


@node Divisiones
@subsection Divisiones

@cindex divisio
@cindex divisiones
@cindex finalis

Une division --- @emph{divisio}, pluriel @emph{divisiones} en latin ---
est un symbole ajouté à la portée et utilisé en chant grégorien pour
séparer les phrases ou parties.  @emph{Divisio minima}, @emph{divisio
maior} et @emph{divisio maxima} peuvent respectivement s'interpréter
comme une pauses courte, moyenne ou longue, à l'image des marques de
respiration --- cf. @ref{Breath marks}.  Le signe @emph{finalis} n'est
pas uniquement une marque de fin de chant ; il sert aussi à indiquer la
fin de chaque partie dans une structure verset/répons.

Les divisions sont disponibles après inclusion du fichier
@file{gregorian@/-init@/.ly}.  Ce fichier définit les commandes
@code{\divisioMinima}, @code{\divisioMaior}, @code{\divisioMaxima} et
@code{\finalis}.  Certaines éditions utilisent @emph{virgula} ou
@emph{caesura} en lieu et place de @emph{divisio minima} ; c'est
pourquoi @file{gregorian@/-init@/.ly} définit aussi @code{\virgula} et
@code{\caesura}.

@lilypondfile[quote,ragged-right]{divisiones.ly}

@refcommands

@funindex \virgula
@code{\virgula},
@funindex \caesura
@code{\caesura},
@funindex \divisioMinima
@code{\divisioMinima},
@funindex \divisioMaior
@code{\divisioMaior},
@funindex \divisioMaxima
@code{\divisioMaxima},
@funindex \finalis
@code{\finalis}.

@seealso

Dans ce manuel : @ref{Breath marks}.

Référence du programme : @internalsref{BreathingSign}.

Exemples : @lsr{expressive,breathing-sign.ly}.


@node Ligatures
@subsection Ligatures

@cindex Ligatures

@c TODO: Should double check if I recalled things correctly when I wrote
@c down the following paragraph by heart.

Une ligature est un symbole graphique qui représente un groupe d'au
moins deux notes.  Les ligatures ont commencé à apparaître dans les
manuscrits de chant grégorien, pour indiquer des suites ascendantes ou
descendantes de notes.

Les ligatures s'indiquent par une inclusion entre @code{\[} et 
@code{\]}.  Certains styles de ligature peuvent demander un complément
de syntaxe spécifique.  Par défaut, le graveur
@internalsref{LigatureBracket} place un simple crochet au dessus de
la ligature :

@lilypond[quote,ragged-right,verbatim]
\transpose c c' {
  \[ g c a f d' \]
  a g f
  \[ e f a g \]
}
@end lilypond

Selon le style de ligature désiré, il faut ajouter au contexte
@internalsref{Voice} le graveur de ligature approprié, comme nous le
verrons plus loin.  Seules sont disponibles les ligatures mensurales
blanches, avec quelques limitations.


@refbugs

La gestion de l'espacement spécifique aux ligatures n'est à ce jour
pas implémentée.  En conséquence, les ligatures sont trop espacées les
unes des autres et les sauts de ligne mal ajustés. De plus, les
paroles ne s'alignent pas de manière satisfaisante en présence de ligatures.

Les altérations ne pouvant être imprimées à l'intérieur d'une
ligature, il faut les rassembler et les imprimer juste avant.

La syntaxe utilisée correspond à l'ancienne convention de préfixage
@code{\[ expr. musicale\]}.  Pour des raisons d'uniformité, nous
opterons probablement pour le style en suffixe (postfix)  @code{note\[
... note\]}. 
En attendant, vous pouvez inclure le fichier
@file{gregorian@/-init@/.ly}, qui fournit une fonction Scheme 
@example
\ligature @var{expr. musicale}
@end example
qui produit le même résultat, et dont la pérennité est assurée.

@menu
* White mensural ligatures::    
* Gregorian square neumes ligatures::  
@end menu

@node White mensural ligatures
@subsubsection White mensural ligatures

@cindex Ligatures mensurales
@cindex Ligatures mensurales blanches

Les ligatures mensurales blanches sont prises en charge, avec des
limitations.

La gravure des ligatures mensurales blanches s'obtient après avoir
ajouté le @internalsref{Mensural_ligature_engraver} et enlevé le
@internalsref{Ligature_bracket_engraver} dans le contexte
@internalsref{Voice}, comme ici :

@example
\layout @{
  \context @{
    \Voice
    \remove Ligature_bracket_engraver
    \consists Mensural_ligature_engraver
  @}
@}
@end example

Lorsque le code ci-dessus est employé, l'aspect d'une ligature mensurale
blanche est déterminé à partir des hauteurs et durées des notes qui la
composent.  Bien que cela demande un temps d'adaptation au nouvel
utilisateur, cette méthode offre l'avantage que toute l'information
musicale incluse dans la ligature est connue en interne.  Ceci est non
seulement important pour le rendu MIDI, mais aussi pour des questions de
transcription automatisée d'une ligature.

Par exemple,

@example
\set Score.timing = ##f
\set Score.defaultBarType = "empty"
\override NoteHead #'style = #'neomensural
\override Staff.TimeSignature #'style = #'neomensural
\clef "petrucci-g"
\[ c'\maxima g \]
\[ d\longa c\breve f e d \]
\[ c'\maxima d'\longa \]
\[ e'1 a g\breve \]
@end example
@lilypond[quote,ragged-right]
\score {
  \transpose c c' {
    \set Score.timing = ##f
    \set Score.defaultBarType = "empty"
    \override NoteHead #'style = #'neomensural
    \override Staff.TimeSignature #'style = #'neomensural
    \clef "petrucci-g"
    \[ c'\maxima g \]
    \[ d\longa c\breve f e d \]
    \[ c'\maxima d'\longa \]
    \[ e'1 a g\breve \]
  }
  \layout {
    \context {
      \Voice
      \remove Ligature_bracket_engraver
      \consists Mensural_ligature_engraver
    }
  }
}
@end lilypond

Si on ne remplace pas le @internalsref{Ligature_bracket_engraver}
par le @internalsref{Mensural_ligature_engraver}, on obtient

@lilypond[quote,ragged-right]
\transpose c c' {
  \set Score.timing = ##f
  \set Score.defaultBarType = "empty"
  \override NoteHead #'style = #'neomensural
  \override Staff.TimeSignature #'style = #'neomensural
  \clef "petrucci-g"
  \[ c'\maxima g \]
  \[ d\longa c\breve f e d \]
  \[ c'\maxima d'\longa \]
  \[ e'1 a g\breve \]
}
@end lilypond

@refbugs

L'espacement horizontal n'est pas des meilleurs.


@node Gregorian square neumes ligatures
@subsubsection Gregorian square neumes ligatures

@cindex neumes carrés et ligatures
@cindex grégorien, ligatures de neumes carrés

Les neumes grégoriens conformément au style des Editio Vaticana sont
pris en charge de façon assez limitée.  Les ligatures élémentaires sont
déjà disponibles, mais beaucoup de règles typographiques ne sont pas
encore implémentées, notamment l'espacement horizontal des enchaînements
de ligatures, l'alignement des paroles ou une gestion convenable des
altérations.

Le tableau ci-dessous inventorie les différents neumes contenus dans
le second tome de l'Antiphonale Romanum (@emph{Liber Hymnarius}) publié
par l'abbaye de Solesmes en 1983.

@multitable @columnfractions .4 .2 .2 .2

@item
@b{Neuma aut@*
Neumarum Elementa}
@tab
@b{Figurae@*
Rectae}
@tab
@b{Figurae@*
Liquescentes@*
Auctae}
@tab
@b{Figurae@*
Liquescentes@*
Deminutae}

@c TODO: \layout block is identical in all of the below examples.
@c Therefore, it should somehow be included rather than duplicated all
@c the time. --jr

@c why not make identifiers in ly/engraver-init.ly? --hwn

@c Because it's just used to typeset plain notes without
@c a staff for demonstration purposes rather than something
@c special of Gregorian chant notation. --jr

@item
@code{1. Punctum}
@tab
@lilypond[staffsize=26,line-width=1.5\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Punctum
    \[ b \]
    \noBreak s^\markup {"a"} \noBreak

    % Punctum Inclinatum
    \[ \inclinatum b \]
    \noBreak s^\markup {"b"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=2.5\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Punctum Auctum Ascendens
    \[ \auctum \ascendens b \]
    \noBreak s^\markup {"c"} \noBreak

    % Punctum Auctum Descendens
    \[ \auctum \descendens b \]
    \noBreak s^\markup {"d"} \noBreak

    % Punctum Inclinatum Auctum
    \[ \inclinatum \auctum b \]
    \noBreak s^\markup {"e"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Punctum Inclinatum Parvum
    \[ \inclinatum \deminutum b \]
    \noBreak s^\markup {"f"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{2. Virga}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Virga
    \[ \virga b \]
    \noBreak s^\markup {"g"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@tab

@item
@code{3. Apostropha vel Stropha}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Stropha
    \[ \stropha b \]
    \noBreak s^\markup {"h"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Stropha Aucta
    \[ \stropha \auctum b \]
    \noBreak s^\markup {"i"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab

@item
@code{4. Oriscus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Oriscus
    \[ \oriscus b \]
    \noBreak s^\markup {"j"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@tab

@item
@code{5. Clivis vel Flexa}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Clivis vel Flexa
    \[ b \flexa g \]
    s^\markup {"k"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=2.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Clivis Aucta Descendens
    \[ b \flexa \auctum \descendens g \]
    \noBreak s^\markup {"l"} \noBreak

    % Clivis Aucta Ascendens
    \[ b \flexa \auctum \ascendens g \]
    \noBreak s^\markup {"m"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Cephalicus
    \[ b \flexa \deminutum g \]
    s^\markup {"n"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{6. Podatus vel Pes}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Podatus vel Pes
    \[ g \pes b \]
    s^\markup {"o"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=2.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Pes Auctus Descendens
    \[ g \pes \auctum \descendens b \]
    \noBreak s^\markup {"p"} \noBreak

    % Pes Auctus Ascendens
    \[ g \pes \auctum \ascendens b \]
    \noBreak s^\markup {"q"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Epiphonus
    \[ g \pes \deminutum b \]
    s^\markup {"r"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{7. Pes Quassus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Pes Quassus
    \[ \oriscus g \pes \virga b \]
    s^\markup {"s"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Pes Quassus Auctus Descendens
    \[ \oriscus g \pes \auctum \descendens b \]
    s^\markup {"t"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab

@item
@code{8. Quilisma Pes}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Quilisma Pes
    \[ \quilisma g \pes b \]
    s^\markup {"u"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Quilisma Pes Auctus Descendens
    \[ \quilisma g \pes \auctum \descendens b \]
    s^\markup {"v"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab

@item
@code{9. Podatus Initio Debilis}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Pes Initio Debilis
    \[ \deminutum g \pes b \]
    s^\markup {"w"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Pes Auctus Descendens Initio Debilis
    \[ \deminutum g \pes \auctum \descendens b \]
    s^\markup {"x"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab

@item
@code{10. Torculus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus
    \[ a \pes b \flexa g \]
    s^\markup {"y"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus Auctus Descendens
    \[ a \pes b \flexa \auctum \descendens g \]
    s^\markup {"z"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus Deminutus
    \[ a \pes b \flexa \deminutum g \]
    s^\markup {"A"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{11. Torculus Initio Debilis}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus Initio Debilis
    \[ \deminutum a \pes b \flexa g \]
    s^\markup {"B"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus Auctus Descendens Initio Debilis
    \[ \deminutum a \pes b \flexa \auctum \descendens g \]
    s^\markup {"C"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Torculus Deminutus Initio Debilis
    \[ \deminutum a \pes b \flexa \deminutum g \]
    s^\markup {"D"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{12. Porrectus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Porrectus
    \[ a \flexa g \pes b \]
    s^\markup {"E"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Porrectus Auctus Descendens
    \[ a \flexa g \pes \auctum \descendens b \]
    s^\markup {"F"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Porrectus Deminutus
    \[ a \flexa g \pes \deminutum b \]
    s^\markup {"G"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{13. Climacus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Climacus
    \[ \virga b \inclinatum a \inclinatum g \]
    s^\markup {"H"}
  }
  \layout { \neumeDemoLayout }
}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Climacus Auctus
    \[ \virga b \inclinatum a \inclinatum \auctum g \]
    s^\markup {"I"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Climacus Deminutus
    \[ \virga b \inclinatum a \inclinatum \deminutum g \]
    s^\markup {"J"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{14. Scandicus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Scandicus
    \[ g \pes a \virga b \]
    s^\markup {"K"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Scandicus Auctus Descendens
    \[ g \pes a \pes \auctum \descendens b \]
    s^\markup {"L"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Scandicus Deminutus
    \[ g \pes a \pes \deminutum b \]
    s^\markup {"M"}
  }
\layout { \neumeDemoLayout }}
@end lilypond

@item
@code{15. Salicus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Salicus
    \[ g \oriscus a \pes \virga b \]
    s^\markup {"N"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Salicus Auctus Descendens
    \[ g \oriscus a \pes \auctum \descendens b \]
    s^\markup {"O"}
  }
\layout { \neumeDemoLayout }}
@end lilypond
@tab

@item
@code{16. Trigonus}
@tab
@lilypond[staffsize=26,line-width=1.0\cm]
\include "gregorian-init.ly"
\score {
  \transpose c c' {
    % Trigonus
    \[ \stropha b \stropha b \stropha a \]
    s^\markup {"P"}
  }
  \layout { \neumeDemoLayout }
}
@end lilypond
@tab
@tab

@end multitable


Contrairement à la majorité des autres systèmes de notation neumatique,
la manière de saisir les neumes n'a rien à voir avec leur apparence
typographique ; elle se concentre plutôt sur le sens musical.  Ainsi,
@code{\[ a \pes b \flexa g \]} produit un @emph{torculus} constitué de
trois @emph{punctums}, alors que @code{\[ a \flexa g \pes b \]} produit
un @emph{porrectus} avec une flexe incurvée et un seul @emph{punctum}.
Il n'existe pas de commande à proprement parler qui permette de
spécifier la courbe d'une flexe ; c'est la source musicale qui va le
déterminer.  Le fondement d'une telle approche réside dans la
distinction que nous faisons entre les aspects musicaux de la source et
le style de notation que nous voulons obtenir.  De ce fait, la même
source pourra être utilisée pour imprimer dans un autre style de
notation grégorienne.

Le tableau suivant présente les fragments de code qui ont permis de
générer les neumes ligaturés du tableau précédent.  Les lettres de la
première colonne renvoient aux ligatures ci-dessus.  La seconde
colonne énumère le nom des ligatures, et la troisième le code ayant
permis de les générer, se basant ici sur sol, la, si.

@multitable @columnfractions .02 .31 .67
@item
@b{#}
@tab
@b{Nom}
@tab
@b{Code source}

@item
a
@tab
Punctum
@tab
@code{\[ b \]}

@item
b
@tab
Punctum Inclinatum
@tab
@code{\[ \inclinatum b \]}

@item
c
@tab
Punctum Auctum@*
Ascendens
@tab
@code{\[ \auctum \ascendens b \]}

@item
d
@tab
Punctum Auctum@*
Descendens
@tab
@code{\[ \auctum \descendens b \]}

@item
e
@tab
Punctum Inclinatum@*
Auctum
@tab
@code{\[ \inclinatum \auctum b \]}

@item
f
@tab
Punctum Inclinatum@*
Parvum @tab
@code{\[ \inclinatum \deminutum b \]}

@item
g
@tab
Virga
@tab
@code{\[ \virga b \]}

@item
h
@tab
Stropha
@tab
@code{\[ \stropha b \]}

@item
i
@tab
Stropha Aucta
@tab
@code{\[ \stropha \auctum b \]}

@item
j
@tab
Oriscus
@tab
@code{\[ \oriscus b \]}

@item
k
@tab
Clivis vel Flexa
@tab
@code{\[ b \flexa g \]}

@item
l
@tab
Clivis Aucta@*
Descendens
@tab
@code{\[ b \flexa \auctum \descendens g \]}

@item
m
@tab
Clivis Aucta@*
Ascendens
@tab
@code{\[ b \flexa \auctum \ascendens g \]}

@item
n
@tab
Cephalicus
@tab
@code{\[ b \flexa \deminutum g \]}

@item
o
@tab
Podatus vel Pes
@tab
@code{\[ g \pes b \]}

@item
p
@tab
Pes Auctus@*
Descendens
@tab
@code{\[ g \pes \auctum \descendens b \]}

@item
q
@tab
Pes Auctus@*
Ascendens
@tab
@code{\[ g \pes \auctum \ascendens b \]}

@item
r
@tab
Epiphonus
@tab
@code{\[ g \pes \deminutum b \]}

@item
s
@tab
Pes Quassus
@tab
@code{\[ \oriscus g \pes \virga b \]}

@item
t
@tab
Pes Quassus@*
Auctus Descendens @tab
@code{\[ \oriscus g \pes \auctum \descendens b \]}

@item
u
@tab
Quilisma Pes
@tab
@code{\[ \quilisma g \pes b \]}

@item
v
@tab
Quilisma Pes@*
Auctus Descendens
@tab
@code{\[ \quilisma g \pes \auctum \descendens b \]}

@item
w
@tab
Pes Initio Debilis
@tab
@code{\[ \deminutum g \pes b \]}

@item
x
@tab
Pes Auctus Descendens@*
Initio Debilis
@tab
@code{\[ \deminutum g \pes \auctum \descendens b \]}

@item
y
@tab
Torculus
@tab
@code{\[ a \pes b \flexa g \]}

@item
z
@tab
Torculus Auctus@*
Descendens
@tab
@code{\[ a \pes b \flexa \auctum \descendens g \]}

@item
A
@tab
Torculus Deminutus
@tab
@code{\[ a \pes b \flexa \deminutum g \]}

@item
B
@tab
Torculus Initio Debilis
@tab
@code{\[ \deminutum a \pes b \flexa g \]}

@item
C
@tab
Torculus Auctus@*
Descendens Initio Debilis
@tab
@code{\[ \deminutum a \pes b \flexa \auctum \descendens g \]}

@item
D
@tab
Torculus Deminutus@*
Initio Debilis
@tab
@code{\[ \deminutum a \pes b \flexa \deminutum g \]}

@item
E
@tab
Porrectus
@tab
@code{\[ a \flexa g \pes b \]}

@item
F
@tab
Porrectus Auctus@*
Descendens
@tab
@code{\[ a \flexa g \pes \auctum \descendens b \]}

@item
G
@tab
Porrectus Deminutus
@tab
@code{\[ a \flexa g \pes \deminutum b \]}

@item
H
@tab
Climacus
@tab
@code{\[ \virga b \inclinatum a \inclinatum g \]}

@item
I
@tab
Climacus Auctus
@tab
@code{\[ \virga b \inclinatum a \inclinatum \auctum g \]}

@item
J
@tab
Climacus Deminutus
@tab
@code{\[ \virga b \inclinatum a \inclinatum \deminutum g \]}

@item
K
@tab
Scandicus
@tab
@code{\[ g \pes a \virga b \]}

@item
L
@tab
Scandicus Auctus@*
Descendens
@tab
@code{\[ g \pes a \pes \auctum \descendens b \]}

@item
M
@tab
Scandicus Deminutus
@tab
@code{\[ g \pes a \pes \deminutum b \]}

@item
N
@tab
Salicus
@tab
@code{\[ g \oriscus a \pes \virga b \]}

@item
O
@tab
Salicus Auctus Descendens
@tab
@code{\[ g \oriscus a \pes \auctum \descendens b \]}

@item
P
@tab
Trigonus
@tab
@code{\[ \stropha b \stropha b \stropha a \]}
@end multitable

Les ligatures que nous venons de voir, bien que rudimentaires, donnent
un aperçu des possibilités de former des ligatures grégoriennes.  En
théorie, vous pouvez inclure entre les délimiteurs @code{\[} et
@code{\]}, autant de sons que nécessaires à la ligature, ainsi que de
préfixes tels que @code{\pes}, @code{\flexa}, @code{\virga},
@code{\inclinatum}, @dots{} Bien sûr, les règles de construction
présentées ci-dessus peuvent se combiner, ce qui permet la création
d'une infinité de ligatures.

Les points d'@emph{augmentum}, ou @emph{morae}, s'obtiennent avec la
fonction @code{\augmentum}.  Notez que cette fonction @code{\augmentum}
est implémentée en tant que fonction unaire plutôt que comme un préfixe
de note.  Par conséquent, @code{\augmentum \virga c} ne donnera rien de
particulier.  Il faut l'utiliser avec la syntaxe @code{\virga \augmentum
c} ou @code{\augmentum @{\virga c@}}.  Par ailleurs, l'expression
@code{\augmentum @{a g@}} constitue une forme abrégée de
@code{\augmentum a \augmentum g}.

@lilypond[quote,ragged-right,verbatim]
\include "gregorian-init.ly"
\score {
  \new VaticanaVoice {
    \[ \augmentum a \flexa \augmentum g \]
    \augmentum g
  }
}
@end lilypond

@refcommands

LilyPond dispose des préfixes suivants :

@funindex \virga
@code{\virga},
@funindex \stropha
@code{\stropha},
@funindex \inclinatum
@code{\inclinatum},
@funindex \auctum
@code{\auctum},
@funindex \descendens
@code{\descendens},
@funindex \ascendens
@code{\ascendens},
@funindex \oriscus
@code{\oriscus},
@funindex \quilisma
@code{\quilisma},
@funindex \deminutum
@code{\deminutum},
@funindex \cavum
@code{\cavum},
@funindex \linea
@code{\linea}.

Les préfixes de note peuvent s'agglutiner, modulo quelques restrictions.
Par exemple, on peut appliquer un @code{\descendens} ou un
@code{\ascendens} à une note, mais pas les deux simultanément à une même
note.

@funindex \pes
@funindex \flexa
Deux notes adjacentes peuvent être reliées grâce aux commandes
@code{\pes} ou @code{\flexa} pour marquer une ligne mélodique
respectivement ascendante ou descendante.

@funindex \augmentum
Utilisez la fonction musicale unaire @code{\augmentum} pour ajouter
des points d'augmentum.

@refbugs

Lorsqu'un @code{\augmentum} apparaît dans une ligature en fin de
portée, son placement vertical peut être erroné.  Pour y remédier,
ajoutez un silence invisible, @code{s8} par exemple, comme dernière note de
cette portée.

L'@code{\augmentum} devrait être implémenté en tant que préfixe plutôt
qu'en tant que fonction unaire, afin qu'@code{\augmentum} puisse
s'intégrer avec d'autres préfixes dans n'importe quel ordre.


@node Gregorian Chant contexts
@subsection Gregorian Chant contexts

@cindex VaticanaVoiceContext
@cindex VaticanaStaffContext

Les contextes @code{VaticanaVoiceContext} et
@code{VaticanaStaffContext} permettent de graver le chant grégorien
dans le style des éditions vaticanes.  Ces contextes initialisent
les propriétés de tous les autres contextes et objets graphiques à des
valeurs adéquates, de telle sorte que vous pouvez tout de suite vous
lancer dans la saisie de votre chant, comme ci-dessous :

@lilypond[quote,ragged-right,packed,verbatim]
\include "gregorian-init.ly"
\score {
  <<
    \new VaticanaVoice = "cantus" {
      \[ c'\melisma c' \flexa a \]
      \[ a \flexa \deminutum g\melismaEnd \]
      f \divisioMinima
      \[ f\melisma \pes a c' c' \pes d'\melismaEnd \]
      c' \divisioMinima \break
      \[ c'\melisma c' \flexa a \]
      \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima
    }
    \new Lyrics \lyricsto "cantus" {
      San- ctus, San- ctus, San- ctus
    }
  >>
}
@end lilypond


@node Mensural contexts
@subsection Mensural contexts

@cindex MensuralVoiceContext
@cindex MensuralStaffContext

Les contextes @code{MensuralVoiceContext} et
@code{MensuralStaffContext} permettent de graver des chants
dans le style mesuré.  Ces contextes initialisent
les propriétés de tous les autres contextes et objets graphiques à des
valeurs adéquates, de telle sorte que vous pouvez tout de suite vous
lancer dans la saisie de votre chant comme ci-après :

@lilypond[quote,ragged-right,verbatim]
\score {
  <<
    \new MensuralVoice = "discantus" \transpose c c' {
      \override Score.BarNumber #'transparent = ##t {
        c'1\melisma bes a g\melismaEnd
        f\breve
        \[ f1\melisma a c'\breve d'\melismaEnd \]
        c'\longa
        c'\breve\melisma a1 g1\melismaEnd
        fis\longa^\signumcongruentiae
      }
    }
    \new Lyrics \lyricsto "discantus" {
      San -- ctus, San -- ctus, San -- ctus
    }
  >>
}
@end lilypond


@node Musica ficta accidentals
@subsection Musica ficta accidentals

Dans la musique européenne antérieure au XVIIe siècle, les chanteurs
étaient censés altérer les notes de leur propre initiative.  On appelait
cela @emph{musica ficta}.  Dans les transcriptions modernes, on a
l'habitude de placer ces altérations au-dessus de la note concernée.

@cindex altérations, musica ficta
@cindex musica ficta

De telles altérations suggérées sont disponibles et peuvent être
activées en assignant à la propriété @code{suggestAccidentals} la valeur
vrai (@code{#t} pour @q{true}).

@funindex suggestAccidentals

@lilypond[verbatim,fragment,relative=1]
fis gis
\set suggestAccidentals = ##t
ais bis
@end lilypond

@seealso

Référence du programme : le graveur @internalsref{Accidental_engraver}
et l'objet @internalsref{AccidentalSuggestion}.


@node Figured bass
@subsection Figured bass

@cindex basse continue
@cindex basse chiffrée

@c TODO: musicological blurb about FB
@c librement adapté de
@c http://en.wikipedia.org/wiki/Basso_continuo#Basso_continuo
Les parties de basse continue étaient très répandues dans la musique
baroque et jusqu'à la fin du XVIIIe siècle.  Comme son nom
l'indique, le @emph{continuo} constitue une partie à lui seul, qui
se déroule tout au long de l'œuvre pour en donner la structure harmonique. 

Les musiciens du @emph{continuo} jouent des claviers (clavecin,
orgue) ou de tout autre instrument pouvant réaliser des accords.  Leur
partie est constituée d'une portée de basse aux notes agrémentées de
combinaisons de chiffres et signes indiquant le développement des
accords à jouer, ainsi que leur éventuel renversement.  Cette notation
était avant tout un guide, invitant le musicien à improviser de
lui-même l'accompagnement.

LilyPond gère la basse chiffrée. 

@lilypond[quote,ragged-right,verbatim,fragment]
<<
  \new Voice { \clef bass dis4 c d ais g fis}
  \new FiguredBass \figuremode {
    < 6 >4 < 7\+ >8 < 6+ [_!] >
    < 6 >4 <6 5 [3+] >
    < _ >4 < 6 5/>4
  }
>>
@end lilypond

La gestion de la basse chiffrée se décompose en deux parties.  Dans un
premier temps, le mode @code{\figuremode} permet de saisir les accords
sous forme chiffrée.  Le contexte @internalsref{FiguredBass} s'occupera
ensuite de gérer les objets @internalsref{BassFigure}.

En mode de saisie, un chiffrage est délimité par @code{<} et
@code{>}.  La  durée est indiquée après le @code{>} :

@example
<4 6>
@end example
@lilypond[quote,ragged-right,fragment]
\new FiguredBass
\figuremode { <4 6> }
@end lilypond

Les altérations s'obtiennent en ajoutant aux chiffres les caractères
@code{-}, @code{!} ou @code{+}. Un signe plus s'obtient grâce à
@code{\+}, et une quinte ou septième diminuée par @code{5/} ou
@code{7/} respectivement.

@example
<4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/>
@end example
@lilypond[quote,ragged-right,fragment]
\figures { <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/> }
@end lilypond

Le caractère @code{_} insère un espace, et l'on peut imprimer des
crochets avec @code{[} et @code{]}.  Vous pouvez aussi ajouter des
chaînes de caractères ou des étiquettes --- cf. @ref{Overview of text
markup commands}.

@example
<[4 6] 8 [_! 12] > <5 \markup @{ \number 6 \super (1) @} >
@end example
@lilypond[quote,ragged-right,fragment]
\new FiguredBass
\figuremode { < [4 6] 8 [_! 12] > < 5 \markup{ \tiny \number 6 \super (1)} > }
@end lilypond


Lorsque des chiffrages se répètent, vous pouvez utiliser des lignes de
prolongation. 

@lilypond[verbatim,relative=1]
<<
  \new Staff {
    \clef bass
    c4 c c
  }
  \figures {
    \set useBassFigureExtenders = ##t
    <4 6> <3 6> <3 7>
  }
>>
@end lilypond

@noindent
En pareil cas, la ligne de prolongation masquera toujours le chiffre
qu'elle rappelle dans le chiffrage suivant.

Le contexte @code{FiguredBass} ne tient aucun compte de la ligne de
basse.  Par conséquent, il vous faudra peut être insérer des chiffrages
supplémentaires pour imprimer les prolongations, ou utiliser des
@code{\!} pour les éviter, comme dans l'exemple suivant :

@lilypond[relative=1]
<<
  \new Voice
  \figures {
    \set useBassFigureExtenders = ##t
    <6 4->4. <6 4->16. <6 4->32 <5>8. r16 <6>8 <6\! 5->
  }
  {
    \clef bass
    f16. g32 f16. g32 f16. g32 f16. g32 f8. es16 d8 es
  }
>>
@end lilypond

Lorsque vous utilisez des lignes de prolongation, les chiffres communs
seront verticalement alignés.  Pour l'éviter, insérez un silence avec
@code{r} afin de réinitialiser l'alignement.  Par exemple, saisissez

@example
  <4 6>8 r8
@end example

@noindent
au lieu de
@example
  <4 6>4
@end example

On peut choisir d'impriemr les altérations et signes plus aussi bien
avant qu'après les chiffres, en réglant les propriétés
@code{figuredBassAlterationDirection} et
@code{figuredBassPlusDirection}.

@lilypond
  \figures {
    <6\+> <5+> <6 4-> r
    \set figuredBassAlterationDirection = #1
    <6\+> <5+> <6 4-> r
    \set figuredBassPlusDirection = #1
    <6\+> <5+> <6 4-> r
    \set figuredBassAlterationDirection = #-1
    <6\+> <5+> <6 4-> r
  }
@end lilypond


Bien que la gestion de la basse chiffrée ressemble beaucoup à celle
des accords, elle est beaucoup plus simpliste.  Le mode
@code{\figuremode} ne fait que stocker des chiffres que le contexte
@internalsref{FiguredBass} se chargera d'imprimer tels quels.  En
aucune manière ils ne sont transformés en son, et ils ne sont pas
rendus dans un fichier MIDI.

En interne, ce code produit des étiquettes de texte que vous
pouvez formater à votre convenance grâce aux propriétés des
étiquettes.  Par exemple, l'espacement vertical des chiffrages est
déterminé par la propriété @code{baseline-skip}.


On peut également ajouter une basse chiffrée directement à un contexte
@code{Staff}.  L'alignement vertical est alors automatiquement ajusté.

@lilypond[ragged-right,fragment,quote]
<<
  \new Staff = someUniqueName
  \relative c'' {
    c4 c'8 r8 c,4 c'
  }

  %% send to existing Staff.
  \context Staff = someUniqueName 
  \figuremode {
    <4>4 <6 10>8 s8
    
    \set Staff.useBassFigureExtenders = ##t
    <4 6>4 <4 6>
  }
>>
@end lilypond


@commonprop

Par défaut, les chiffres sont imprimés au-dessus de la portée.  Pour les
imprimer dessous, ajoutez

@example
\override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
@end example


@refbugs

Si vous positionnez la basse chiffrée au dessus de la portée en ayant
recours aux lignes d'extension et @code{implicitBassFigures}, les lignes
peuvent se mélanger.  Préserver l'ordre des prolongateurs peut s'avérer
impossible lorsque plusieurs chiffrages qui se chevauchent en possèdent.
Ce problème peut être contourné en jouant sur l'empilement, avec la
propriété @code{stacking-dir} de l'objet @code{BassFigureAlignment}.


@seealso

Référence du programme : les objets @internalsref{NewBassFigure},
@internalsref{BassFigureAlignment}, @internalsref{BassFigureLine},
@internalsref{BassFigureBracket} et
@internalsref{BassFigureContinuation}, ainsi que le contexte
@internalsref{FiguredBass}.


@node Other instrument specific notation
@section Other instrument specific notation

Cette section dispense des informations supplémentaires et utiles à
l'écriture pour certains instruments.

@menu
* Artificial harmonics (strings)::  
@end menu

@node Artificial harmonics (strings)
@subsection Artificial harmonics (strings)

@cindex harmoniques

La plupart des instruments à cordes peuvent produire des harmoniques
artificiels, lorsque l'instrumentiste effleure simplement la corde pour
une note donnée.  Le son émis sera un harmonique, que l'on peut indiquer
par @code{\harmonic}.

@lilypond[ragged-right,verbatim,quote,fragment,relative=1]
<c g'\harmonic>4
@end lilypond

