]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/fr/user/fundamental.itely
resolve merge
[lilypond.git] / Documentation / fr / user / fundamental.itely
diff --git a/Documentation/fr/user/fundamental.itely b/Documentation/fr/user/fundamental.itely
deleted file mode 100644 (file)
index 47eca98..0000000
+++ /dev/null
@@ -1,2919 +0,0 @@
-@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
-@c This file is part of lilypond-learning.tely
-@ignore
-    Translation of GIT committish: db53c05f11bea8831733b1fdf7ebe32cb1f491f4
-
-    When revising a translation, copy the HEAD committish of the
-    version that you are working on.  See TRANSLATION for details.
-@end ignore
-
-@c \version "2.12.0"
-
-@c Translators: Valentin Villenave, Jean-Charles Malahieude
-@c Translation checkers: John Mandereau
-@c Translation status: post-GDP
-
-@node Fundamental concepts
-@chapter Fundamental concepts
-
-Le tutoriel nous a montré comment obtenir une édition de toute beauté à
-partir d'un simple fichier texte.  Nous nous intéresserons dans cette
-partie aux concepts et techniques qui permettent d'obtenir des
-partitions complexes de même qualité.
-
-@menu
-* How LilyPond input files work::  
-* Voices contain music::        
-* Contexts and engravers::      
-* Extending the templates::     
-@end menu
-
-@node How LilyPond input files work
-@section How LilyPond input files work
-
-La mise en forme des fichiers d'entrée de LilyPond est vraiment
-peu astreignante, afin d'offrir assez de souplesse aux utilisateurs
-expérimentés pour qu'ils puissent organiser leurs fichiers comme
-ils l'entendent.  Cependant, les nouveaux utilisateurs peuvent parfois
-se perdre en raison de cette souplesse.  Cette section présente
-sommairement l'organisation du code LilyPond, en privilégiant
-la simplicité au détriment de certains détails.  Vous trouverez une
-description plus complète dans @ruser{File structure}.
-
-@menu
-* Introduction to the LilyPond file structure::  
-* Score is a (single) compound musical expression::  
-* Nesting music expressions::   
-* On the un-nestedness of brackets and ties::  
-@end menu
-
-@node Introduction to the LilyPond file structure
-@subsection Introduction to the LilyPond file structure
-
-@cindex format d'entrée
-@cindex structure de ficher
-
-Un fichier d'entrée LilyPond ressemble à :
-
-@example
-\version @w{"@version{}"}
-\header @{ @}
-\score @{
-  @var{...expression musicale composite...}  % c'est là qu'est la musique !
-  \layout @{ @}
-  \midi @{ @}
-@}
-@end example
-
-@noindent
-Il existe de nombreuses variantes à ce schéma simpliste, mais cet
-exemple est un préambule à notre propos.
-
-@funindex \book
-@funindex \score
-@cindex book, livre, ouvrage
-@cindex livre
-@cindex score, partition
-@cindex partition
-
-Jusqu'à présent, les exemples que nous avons pu voir ne faisaient pas
-appel à la commande @code{\score@{@}}.  En fait, LilyPond ajoute
-automatiquement les commandes nécessaires au traitement d'un code
-simpliste.  LilyPond considère
-
-@example
-\relative c'' @{
-  c4 a d c
-@}
-@end example
-
-@noindent
-comme un raccourci de
-
-@example
-\book @{
-  \score @{
-    \new Staff @{
-      \new Voice @{
-        \relative c'' @{
-          c4 a b c
-        @}
-      @}
-    @}
-    \layout @{ @}
-  @}
-@}
-@end example
-
-En d'autres termes, si le code n'est constitué que d'une expression
-musicale simple, LilyPond interprètera le fichier tout comme si cette
-expression était incluse dans les commandes de notre premier exemple.
-
-@cindex contextes implicites
-@cindex implicites, contextes
-
-@strong{Attention :}  de nombreux exemples, dans la documentation de
-LilyPond, ne font pas apparaître les commandes @code{\new Staff} ou
-@code{\new Voice}, qui sont créées implicitement.  Ce qui
-n'est pas primordial pour des exemples simples le devient dès que la
-situation devient un peu plus complexe.  Le fait de ne pas déclarer
-explicitement un contexte peut alors amener à des résultats quelque peu
-surprenants, comme la création d'une portée supplémentaire et
-indésirable.  La manière de créer explicitement des contextes est
-traitée plus en détails au chapitre @ref{Contexts and engravers}.
-
-@warning{Dès lors que votre musique dépasse quelques lignes, nous vous
-engageons fortement à créer explicitement les voix et portées.}
-
-Mais revenons à notre premier exemple, et penchons-nous tout d'abord sur
-la commande @code{\score}.
-
-Un bloc @code{\score} doit contenir une et une seule expression
-musicale, exprimée immédiatement à la suite de la commande
-@code{\score}.  Rappelez-vous que cette expression peut être n'importe
-quoi, d'une note isolée à un gigantesque
-
-@example
-@{
-  \new StaffGroup <<
-    @var{...collez ici la partition complète d'un opéra de Wagner...}
-  >>
-@}
-@end example
-
-@noindent
-Dès lors que tout cela est entre accolades : @code{@{ ... @}}, LilyPond
-le considère comme une et une seule expression musicale.
-
-Comme nous l'avons vu précédemment, un bloc @code{\score} peut contenir
-d'autres informations :
-
-@example
-\score @{
-  @{ c'4 a b c' @}
-  \header @{ @}
-  \layout @{ @}
-  \midi @{ @}
-@}
-@end example
-
-@funindex \header
-@funindex \layout
-@funindex \midi
-@funindex midi
-@cindex header
-@cindex en-tête
-@cindex layout
-@cindex mise en forme
-@cindex midi
-
-@noindent
-Gardez à l'esprit que ces trois commandes -- @code{\header},
-@code{\layout} et @code{\midi} -- sont spécifiques : à l'inverse de
-toutes les commandes débutant par une oblique inversée @code{\}
-(@emph{backslash} en anglais), @strong{elles ne constituent pas} des
-expressions musicales et ne peuvent pas faire partie d'expressions
-musicales.  Elles peuvent de ce fait être placées à l'intérieur du
-bloc @code{\score}, ou bien à l'extérieur.  En réalité, ces commandes
-sont la plupart du temps indépendantes du bloc @code{\score} -- par
-exemple, la commande @code{\header} intervient souvent avant le bloc
-@code{\score}, comme le montre l'exemple ci-dessus.
-
-Les deux autres commandes -- @code{\layout @{ @}} et @code{\midi @{@}}
--- que nous n'avons pas détaillées pour l'instant, auront respectivement
-pour effet, lorsqu'elles interviennent, de produire une sortie
-imprimable et un fichier MIDI.  Nous nous y intéressons plus
-particulièrement dans le manuel de notation, aux chapitres 
-@ruser{Score layout} et @ruser{Creating MIDI files}.
-
-@cindex partitions multiples
-@cindex book,  bloc implicite
-@cindex implicite, bloc book
-@funindex \book
-@funindex book
-
-Vous pouvez tout à fait mentionner plusieurs blocs @code{\score}.  Ils
-seront traités comme autant de partitions indépendantes qui seront
-regroupées dans un seul fichier résultant.  La commande @code{\book} 
-(@emph{recueil} ou @emph{ouvrage}) n'est pas obligatoire -- elle sera
-créée implicitement.  Néanmoins, le recours à la commande @code{\book}
-vous permettra d'obtenir des fichiers résultants distincts à partir
-d'un même fichier source @code{.ly} -- par exemple un fichier par pupitre.
-
-En résumé :
-
-Dès que LilyPond rencontre un bloc @code{\book}, il crée un
-fichier distinct (.pdf par exemple).  Dans le cas où il n'est pas
-mentionné explicitement, LilyPond regroupera l'intégralité du code dans
-un bloc @code{\book}.
-
-Tout bloc @code{\score} inclus dans un bloc @code{\book} constitue un
-fragment de musique.
-
-Tout bloc @code{\layout} affecte le bloc @code{\score} ou @code{\book}
-au sein duquel il intervient : si c'est à l'intérieur d'un bloc
-@code{\score}, seul celui-ci en sera affecté.  Dans le cas où le bloc
-@code{\layout} se trouve à l'extérieur du bloc @code{\score}, que le
-bloc @code{\book} soit explicite ou non, il affectera chacun des
-@code{\score} compris dans ce @code{\book}.
-
-Pour plus de détail à ce sujet, consultez 
-@ruser{Multiple scores in a book}.
-
-@cindex variables
-@cindex identificateurs
-
-Un autre raccourci pratique est la possibilité de définir
-des variables --- également appelées @qq{identificateurs}. Dans tous
-les modèles, vous trouverez :
-
-@example
-melodie = \relative c' @{
-  c4 a b c
-@}
-
-\score @{
-  @{ \melodie @}
-@}
-@end example
-
-Lorsque LilyPond examinera ce fichier, il va prendre la valeur de la
-variable @code{melodie}, c'est-à-dire tout ce qui suit le signe @code{=},
-et l'insérer partout où il rencontrera @code{\melodie}.  Vous êtes
-libre de choisir comment dénommer vos variables@footnote{Les noms de
-variables sont sensibles à la casse, et ne peuvent contenir ni
-chiffre, ni ponctuation, ni caractère accentué, ni espace.} ; ce peut être
-@code{melodie}, @code{global}, @code{maindroitepiano}, ou
-@code{laTeteAToto}, tant qu'il ne s'agit pas de @qq{mot réservé}.  Pour
-plus de détails, voir @ref{Saving typing with variables and functions}. 
-
-
-@seealso
-Pour une description complète du format des fichiers d'entrée, voir 
-@ruser{File structure}.
-
-
-@node Score is a (single) compound musical expression
-@subsection Score is a (single) compound musical expression
-
-@funindex \score
-@funindex score
-@cindex partition
-@cindex bloc score, contenu
-@cindex Expression musicale composite
-
-Dans la section précédente, 
-@ref{Introduction to the LilyPond file structure},  nous
-avons vu l'organisation générale des fichiers d'entrée de LilyPond.
-Mais c'est comme si nous avions éludé la question essentielle : comment
-diable peut-on savoir quoi mettre après @code{\score} ?
-
-En fait, nous ne l'avons pas éludée du tout : le grand mystère est
-tout simplement qu'@strong{il n'y a pas} de mystère.  Allez,
-expliquons-le en une ligne :
-
-@quotation
-@emph{Un bloc @code{\score} doit commencer par une et une seule
-expression musicale.}
-@end quotation
-
-@noindent
-Peut-être serait-il judicieux de relire la section
-@ref{Music expressions explained}, dans laquelle vous avez
-appris à construire de grandes expressions musicales petit bout
-par petit bout --- nous avons vu les notes, puis les accords, etc.
-Maintenant, nous allons partir d'une grande expression musicale,
-et remonter la pente.
-
-@example
-\score @{
-  @{   % cette accolade marque le début de l'expression musicale
-    \new StaffGroup <<
-    @var{...insérez ici l'intégralité d'un opéra de Wagner...}
-    >>
-  @}   % cette accolade marque la fin de l'expression musicale
-  \layout @{ @}
-@}
-@end example
-
-Un opéra de Wagner multiplierait facilement la longueur de ce manuel
-par deux ou trois, alors contentons-nous d'une voix et d'un piano.  On
-n'a plus besoin d'une partition d'orchestre --- @emph{i.e.} des
-portées regroupées en @code{StaffGroup} --- donc laissons cela de
-côté.  Par contre, nous voulons bien une voix et un piano.
-
-@example
-\score @{
-  @{
-    <<
-      \new Staff = "chanteur" <<
-      >>
-      \new PianoStaff = piano <<
-      >>
-    >>
-  @}
-  \layout @{ @}
-@}
-@end example
-
-Vous vous souvenez que nous avons recours à @code{<<} et @code{>>} 
-en lieu et place de @code{@{ ... @}} pour gérer des musiques
-simultanées.  Et,  pour le coup, on aimerait @emph{vraiment} que la
-partie vocale et l'accompagnement soient imprimés ensemble...  Bien que
-faire appel à @code{<< ... >>} ne soit pas réellement nécessaire pour la
-portée du chanteur, dans la mesure où elle ne contient qu'une seule
-expression musicale, nous vous recommandons de prendre l'habitude de
-l'encadrer ainsi plutôt que par de simples accolades --- une portée peut
-en effet contenir plusieurs voix. 
-
-@lilypond[verbatim,quote,ragged-right]
-\score {
-  <<
-    \new Staff = "singer" <<
-      \new Voice = "vocal" { c'1 }
-      \addlyrics { And }
-    >>
-    \new PianoStaff = "piano" <<
-      \new Staff = "upper" { c'1 }
-      \new Staff = "lower" { c'1 }
-    >>
-  >>
-  \layout { }
-}
-@end lilypond
-
-On y voit nettement plus clair maintenant.  Nous voici donc avec la
-partie du chanteur, qui contient un ensemble @code{Voice}, ce qui dans
-LilyPond correspond à une voix, au sens de voix d'une polyphonie plutôt que
-de voix chantée --- ce pourrait être une partie de violon par
-exemple ---, et des paroles.
-
-Nous avons également une partie de piano, qui contient deux portées :
-une pour la main droite, une autre pour la main gauche.
-
-
-À ce point, on pourrait commencer à ajouter les notes. Dans les
-accolades qui suivent @code{\new Voice = chant}, on pourrait commencer
-à écrire
-
-@example
-\relative c'' @{
-  r4 d8\noBeam g, c4 r
-@}
-@end example
-
-Mais si l'on procédait ainsi, la section @code{\score} deviendrait
-vite assez touffue, et très rapidement on ne s'y retrouverait plus.
-C'est pourquoi on utilisera plutôt des variables, ou identificateurs.
-Avec quelques notes de plus, nous pourrions avoir :
-
-@lilypond[verbatim,quote,ragged-right]
-melody = \relative c'' { r4 d8\noBeam g, c4 r }
-text   = \lyricmode { And God said, }
-upper  = \relative c'' { <g d g,>2~ <g d g,> }
-lower  = \relative c { b2 e2 }
-
-\score {
-  <<
-    \new Staff = "singer" <<
-      \new Voice = "vocal" { \melody }
-      \addlyrics { \text }
-    >>
-    \new PianoStaff = "piano" <<
-      \new Staff = "upper" { \upper }
-      \new Staff = "lower" {
-        \clef "bass"
-        \lower
-      }
-    >>
-  >>
-  \layout { }
-}
-@end lilypond
-
-Respectez bien la différence entre les notes -- introduites par
-@code{\relative} --,  et les paroles -- introduites par
-@code{\lyricmode}.  Cette distinction est primordiale afin que LilyPond
-puisse interpréter ce qui les suit comme étant respectivement de la
-musique ou du texte.
-
-Quand on écrit, ou que l'on lit, une section @code{\score}, mieux vaut
-y aller lentement et soigneusement. Commencez par le niveau le plus
-large, puis travaillez sur chaque niveau plus détaillé.  À ce propos,
-une indentation stricte et propre est vraiment d'une aide précieuse :
-assurez-vous que chaque élément d'un même niveau a le même décalage
-horizontal dans votre éditeur de texte !
-
-
-@seealso
-Manuel de notation : @ruser{Structure of a score}.
-
-
-@node Nesting music expressions
-@subsection Nesting music expressions
-
-@cindex portées, temporaires
-@cindex ossias
-
-Déclarer toutes les portées dès le départ n'est pas une obligation ;
-elles peuvent intervenir temporairement n'importe où dans la partition.
-Ceci est tout à fait indiqué pour créer des sections @rglos{ossia}.
-L'exemple suivant illustre la manière de créer temporairement une
-nouvelle portée, l'espace de trois notes :
-
-@lilypond[verbatim,quote,ragged-right]
-\new Staff {
-  \relative g' {
-    r4 g8 g c4 c8 d |
-    e4 r8
-    <<
-      { f c c }
-      \new Staff {
-        f8 f c
-      }
-    >>
-    r4 |
-  }
-}
-@end lilypond
-
-@noindent
-Vous noterez la taille de la clef, identique à celle que l'on trouve
-lors d'un changement en cours de ligne --- légèrement plus petite que
-celle imprimée en tête de ligne.
-
-@cindex portée, positionnement
-
-Une section ossia se placera au dessus de la portée en procédant ainsi :
-
-@lilypond[verbatim,quote,ragged-right]
-\new Staff = "main" {
-  \relative g' {
-    r4 g8 g c4 c8 d |
-    e4 r8
-    <<
-      { f c c }
-      \new Staff \with {
-        alignAboveContext = #"main" }
-      { f8 f c }
-    >>
-    r4 |
-  }
-}
-@end lilypond
-
-Cet exemple recourt à @code{\with}, que nous verrons en détail plus
-avant.  C'est un moyen de modifier le comportement par défaut d'une
-portée individuelle.  Nous indiquons ici que la nouvelle portée doit se
-placer au dessus de la portée @qq{principal} plutôt qu'en dessous, ce
-qui est le comportement par défaut.
-
-Les ossia apparaissent souvent sans clef ni métrique, et dans une police
-plus petite.  Ceci requiert des commandes dont nous n'avons pas encore
-parlé.  Voir @ref{Size of objects} et @ruser{Ossia staves}.
-
-
-@node On the un-nestedness of brackets and ties
-@subsection On the un-nestedness of brackets and ties
-
-@cindex crochets, imbrication
-@cindex crochets, types de
-
-Nous avons déjà rencontré plusieurs types de crochets au fil de nos
-fichiers LilyPond.  Ils obéissent à des règles différentes qui peuvent
-paraître déroutantes.  Avant d'examiner ces règles, voici une liste des 
-différents types de crochet :
-
-@c attempt to force this onto a new page
-@need 50
-@multitable @columnfractions .3 .7
-@headitem Type de crochet
-  @tab Fonction
-@item @code{@{ .. @}}
-  @tab Délimite un segment de musique séquentielle
-@item @code{< .. >}
-  @tab Délimite les notes d'un accord
-@item @code{<< .. >>}
-  @tab Délimitent des sections simultanées
-@item @code{( .. )}
-  @tab Marque le début et la fin d'une liaison
-@item @code{\( .. \)}
-  @tab Marque le début et la fin d'une liaison de phrasé
-@item @code{[ .. ]}
-  @tab Marque le début et la fin d'une ligature manuelle
-@end multitable
-
-D'autres constructions permettent d'obtenir des lignes regroupant ou en
-travers des notes :  les liaisons de prolongation indiquées par un
-tilde (@code{~}), les marques de nolet avec 
-@code{\times@tie{}x/y@tie{}@{..@}}, ou
-encore les notes d'ornement avec @code{\grace@{..@}}.
-
-En dehors de LilyPond, l'imbrication correcte de différents types de
-crochets exige un strict respect des conventions, telles que 
-@code{<<@tie{}[@tie{}@{@tie{}(@tie{}..@tie{})@tie{}@}@tie{}]@tie{}>>},
-où les marques de fermeture interviennent 
-obligatoirement dans l'ordre exactement inverse à celles d'ouverture.
-Ceci @strong{doit} être rigoureusement respecté pour les trois
-types de crochets utilisés pour @strong{délimiter} comme l'indique le
-tableau ci-dessus.  
-Une telle rigueur dans l'imbrication n'est @strong{pas} requise pour les
-types de crochets dont la fonction est de @strong{marquer}, selon le
-tableau ci-dessus, lorsqu'il sont utilisés en combinaison avec des
-liaisons de prolongation ou des nolets.  En effet, il ne s'agit pas
-de crochets ayant pour fonction de borner quelque chose ; ils agissent
-plutôt comme marquant le début de quelque chose et sa fin.
-
-Ainsi, et bien que ce ne soit pas très musical, une liaison de phrasé
-peut débuter avant l'insertion d'une ligature manuelle et s'arrêter
-avant la fin de la ligature :
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
- { g8\( a b[ c b\) a] }
-@end lilypond
-
-De manière générale, différents types de crochets, notamment s'ils
-indiquent des nolets, liaisons de prolongation ou notes d'ornements,
-peuvent se mélanger entre eux.  L'exemple suivant montre une ligature
-qui se prolonge sur un triolet (ligne 1), puis une liaison qui se
-prolonge sur un triolet (ligne 2) et enfin une ligature et une liaison
-qui s'étendent sur un triolet, lui-même lié à un quintolet agrémenté
-d'une liaison de phrasé se poursuivant (lignes 3 et 4).
-
-@lilypond[quote,verbatim,fragment,ragged-right]
-{
-  r16[ g16 \times 2/3 {r16 e'8] }
-  g16( a \times 2/3 {b d) e' }
-  g8[( a \times 2/3 {b d') e'~]}
-  \times 4/5 {e'32\( a b d' e'} a'4.\)
-}
-@end lilypond
-
-
-@node Voices contain music
-@section Voices contain music
-
-Les chanteurs utilisent leur voix pour chanter ; il en va de même pour 
-LilyPond.  En fait, la musique de chacun des instruments d'une partition
-est contenue dans des voix (@emph{Voices} en anglais) et qui se trouve
-être le concept fondamental de LilyPond.
-
-@menu
-* I'm hearing Voices::          
-* Explicitly instantiating voices::  
-* Voices and vocals::           
-@end menu
-
-@node I'm hearing Voices
-@subsection I'm hearing Voices
-
-@cindex polyphonie
-@cindex calques (layers)
-@cindex voix multiples
-@cindex Voice, contexte
-@cindex contexte de voix
-@cindex musique simultanée
-@cindex musique concurrente
-@cindex voix ou accords
-@cindex accords ou voix
-
-Dans une partition gérée par LilyPond, le niveau le plus bas, ou bien
-élémentaire ou fondamental, est le @qq{contexte de voix} -- @emph{Voice
-context} en anglais --.  Pour d'autres logiciels, on fait tantôt
-référence à la notion de @qq{couche} ou de @qq{calque}.
-
-En réalité, le contexte de voix est le seul à pouvoir contenir de la
-musique.  S'il n'est pas déclaré explicitement, il sera créé
-automatiquement comme nous l'avons vu au début de ce chapitre.  Certains
-instruments, le hautbois par exemple, ne peuvent jouer qu'une seule note
-à la fois.  On dit en pareil cas qu'il s'agit de musique monophonique,
-et nous n'aurons alors besoin que d'une seule voix.  Les intruments qui,
-comme le piano, peuvent émettre plusieurs sons en même temps, nécessitent
-de recourir à plusieurs voix pour gérer efficacement l'alignement des
-notes et rythmes différents.
-
-Si une voix unique peut tout à fait contenir plusieurs notes dans un
-accord, à partir de quand aurons-nous vraiment besoin de plusieurs 
-voix ?  Considérons déjà ces quatre accords :
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
-\key g \major
-<d g>4 <d fis> <d a'> <d g>
-@end lilypond
-
-Nous exprimons ici chacun des accords par l'utilisation de 
-chevrons gauche et droite simples, @code{< ... >}, puisque nous
-n'avons besoin que d'une seule voix.  Supposons maintenant que le fa
-dièse soit une croche, suivie d'un sol croche -- une note de passage
-vers le la ?  Nous avons alors deux notes qui débutent au même moment,
-mais dont la durée est différente : un ré noire et un fa dièse croche.
-Comment coder cela ?  Dans la mesure où toutes les notes d'un accord
-doivent avoir la même durée, nous ne pouvons pas écrire un accord.  Nous
-ne pouvons pas non plus écrire deux notes séparées, puisqu'elles
-débutent en même temps.  Nous avons alors besoin de deux voix.
-
-Voyons comment cela se pratique selon la grammaire de LilyPond.
-
-@funindex << \\ >>
-@funindex \\
-
-Le plus sûr moyen de saisir un fragment où plusieurs voix cohabitent
-sur la même portée, consiste à saisir chacune des voix séquentiellement
-(avec @code{@{...@}}), puis à les combiner en simultané à l'aide de
-doubles chevrons gauche/droite, @code{<<...>>}.  Les fragments
-devront être séparés par une double oblique inversée, @code{\\}, pour
-les affecter à des voix séparées.  Dans le cas contraire, les notes
-seraient toutes affectées à une même voix, ce qui pourait générer des
-erreurs.  Cette manière de procéder est tout à fait indiquée dans le cas
-d'une pièce ne comportant que quelques courts passages de polyphonie.
-
-Voici comment éclater les accords en deux voix, avec la note de passage
-et la liaison :
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
-\key g \major
-%    Voice "1"                  Voice "2"
-<< { g4 fis8( g) a4 g }    \\ { d4 d d d }  >> |
-@end lilypond
-
-Notez que les hampes de la seconde voix sont dirigées vers le bas.
-
-Autre exemple :
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
-\key d \minor
-%    Voice "1"             Voice "2"
-<< { r4 g g4. a8 }    \\ { d,2 d4 g }       >> |
-<< { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
-<< { a2. r4 }         \\ { fis2. s4 }       >> |
-@end lilypond
-
-Le recours à une construction @code{<< \\ >>} particulière à chaque
-mesure n'est pas nécessaire.  Bien qu'on y gagne en lisibilité si chaque
-mesure ne contient que quelques notes, il est plus judicieux de
-carrément séparer chaque voix :
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
-\key d \minor
-<< {
-  % Voice "1"
-  r4 g g4. a8 |
-  bes4 bes c bes |
-  a2. r4 |
-} \\ {
-  % Voice "2"
-  d,2 d4 g |
-  g4 g g8( a) g4 |
-  fis2. s4 |
-} >>
-@end lilypond
-
-
-@cindex voix, nomage
-@cindex voix et constructions simultanées
-@cindex liaisons et constructions simultanées
-
-Cet exemple ne comporte que deux voix, mais il peut être étendu pour
-traiter trois voix ou plus en ajoutant autant de séparateurs @code{\\}
-que de besoin.
-
-Les contextes @code{Voice} portent les noms @code{"1"}, @code{"2"}, etc.
-Pour chacun de ces contextes, la direction et l'orientation des
-liaisons, hampes, nuances, etc. est définie automatiquement.
-
-@lilypond[quote,verbatim,fragment]
-\new Staff \relative c' {
-  % Main voice
-  c16 d e f
-  %    Voice "1"     Voice "2"                 Voice "3"
-  << { g4 f e } \\ { r8 e4 d c8 ~ } >> |
-  << { d2 e2 }  \\ { c8 b16 a b8 g ~ g2 } \\ { s4 b4 c2 } >> |
-}
-@end lilypond
-
-Ces voix sont séparées de la voix principale, laquelle contient les notes en 
-dehors de la construction @code{<< .. >>} -- que nous appellerons
-@emph{construction simultanée}.  Les liaisons, de prolongation ou non,
-ne peuvent relier des notes que si elles appartiennent à la même voix ;
-elles ne peuvent ni pénétrer une contruction simultanée, ni en sortir.  
-Inversement, les voix parallèles issues de constructions
-simultanées apparaissant sur une même portée appartiennent à la même
-voix.  Les autres propriétés liées au contexte de voix  s'appliquent
-tout au long des constructions simultanées.  Reprenons notre exemple, en
-affectant une couleur et une allure différentes aux notes de chacune des
-voix.  Vous noterez qu'un changement apporté à une voix ne se propage
-pas aux autres, et qu'il se reporte jusqu'au bout, et que la voix aux
-triangles bleus comporte une liaison de prolongation entre deux
-constructions.
-
-@lilypond[quote,verbatim]
-\new Staff \relative c' {
-  % Main voice
-  c16 d e f
-  << % Bar 1
-    {
-      \voiceOneStyle
-      g4 f e
-    }
-  \\
-    {
-      \voiceTwoStyle
-      r8 e4 d c8 ~
-    }
-  >>
-  << % Bar 2
-     % Voice 1 continues
-    { d2 e2 }
-  \\
-     % Voice 2 continues
-    { c8 b16 a b8 g ~ g2 }
-  \\
-    {
-      \voiceThreeStyle
-      s4 b4 c2
-    }
-  >>
-}
-@end lilypond
-
-@funindex \voiceOneStyle
-@funindex \voiceTwoStyle
-@funindex \voiceThreeStyle
-@funindex \voiceFourStyle
-@funindex \voiceNeutralStyle
-
-Les commandes @code{\voiceXXXStyle} sont principalement dédiées à une
-utilisation pédagogique, comme l'est ce document.  Elles modifient la
-couleur des hampes et ligatures et le style de tête des notes, pour
-permettre une meilleure distinction entre les différentes voix.   La
-première voix comporte des têtes en losange rouge, la deuxième en
-triangle bleu, la troisième en cercle barré vert, la quatrième (non
-utilisée ici) en croix magenta ;  @code{\voiceNeutralStyle} (non utilisé
-ici) revient au style par défaut.  Nous verrons plus tard comment créer
-de telles commandes.
-Voir @ref{Visibility and color of objects} et
-@ref{Using variables for tweaks}.
-
-La polyphonie ne modifie en rien la relation entre les notes au sein
-d'un bloc @code{\relative @{ @}}.  Chaque note est calculée par rapport
-à celle qui la précède, ou bien par rapport à la première note de
-l'accord qui précède.  Ainsi, dans
-
-@example
-\relative c' @{ noteA << < noteB noteC > \\ noteD >> noteE @}
-@end example
-
-@noindent
-@code{noteB} est relative à @code{noteA}                        @*
-@code{noteC} est relative à @code{noteB}, pas à @code{noteA}    @*
-@code{noteD} est relative à @code{noteB}, pas à @code{noteA} ni
-@code{noteC}                                                    @*
-@code{noteE} est relative à @code{noteD}, pas à @code{noteA}
-
-Une méthode alternative, et qui peut simplifier les choses si les notes 
-des différentes voix sont espacées, consiste à placer une commande
-@code{\relative} au début de chacune des voix :
-
-@example
-\relative c' @{ noteA ... @}
-<<
-  \relative c'' @{ < noteB noteC > ... @}
-\\
-  \relative g' @{ noteD ... @}
->>
-\relative c' @{ noteE ... @}
-@end example
-
-Pour finir, analysons le principe d'utilisation des voix dans une pièce
-complexe.  Nous allons nous concentrer sur les deux premières mesures du
-second des Deux nocturnes, opus 32 de Chopin.  Cet exemple nous servira
-à plusieurs reprises, y compris dans le chapitre suivant, pour illustrer
-certaines techniques de notation.  Aussi, ne prétez pas trop d'attention
-à ce qui pour l'instant pourrait vous paraître vraiment mystérieux dans
-le code, et intéressons-nous uniquement à ce qui concerne la musique et
-les voix -- ce qui est plus compliqué sera décortiqué plus tard.
-
-@c The following should appear as music without code
-@lilypond[quote,ragged-right]
-\new Staff \relative c'' {
-  \key aes \major
-  << % Voice one
-    { c2 aes4. bes8 }
-  \\ % Voice two
-    { aes2 f4 fes }
-  \\ % No voice three
-  \\ % Voice four
-    {
-      % Ignore these for now - they are explained in Ch 4
-      \once \override NoteColumn #'force-hshift = #0
-      <ees c>2
-      \once \override NoteColumn #'force-hshift = #0.5
-      des2
-    }
-  >> |
-  <c ees aes c>1 |
-}
-@end lilypond
-
-La direction des hampes sert souvent à indiquer dans la continuité deux
-lignes mélodiques simultanées.  Ici, les hampes des notes les plus
-hautes vont vers le haut, et celles des notes plus basses vers le
-bas.  C'est une première indication que nous avons eu recours à plus
-d'une voix.
-
-Mais le réel besoin de multiples voix se fait sentir dès lors que
-plusieurs notes qui débutent en même temps ont des durées différentes.
-C'est évident au troisième temps de la première mesure : le la bémol est
-une noire pointée, le fa une noire, et le ré bémol une blanche.  On ne
-peut les grouper dans un accord, puisque toutes les notes composant un
-accord doivent être de même durée.  On ne peut non plus les écrire
-séquentiellement, puisqu'elles débutent toutes au même instant.  Ce
-fragment de mesure nécessite trois voix, et une bonne pratique voudrait
-que l'intégralité de la mesure soit sur trois voix, comme ci-dessous où
-nous avons une allure et une couleur différentes aux notes de chacune
-d'entre elles.  Une fois de plus, nous reviendrons plus tard sur le code
-que vous ne comprendriez pas.
-
-@c The following should appear as music without code
-@c The three voice styles should be defined in -init
-@lilypond[quote,ragged-right]
-\new Staff \relative c'' {
-  \key aes \major
-  <<
-    { % Voice one
-      \voiceOneStyle
-      c2 aes4. bes8
-    }
-  \\  % Voice two
-    { \voiceTwoStyle
-      aes2 f4 fes
-    }
-  \\  % No Voice three (we want stems down)
-  \\  % Voice four
-    { \voiceThreeStyle
-      % Ignore these for now - they are explained in Ch 4
-      \once \override NoteColumn #'force-hshift = #0
-      <ees c>2
-      \once \override NoteColumn #'force-hshift = #0.5
-      des2
-    }
-  >> |
-  <c ees aes c>1 |
-}
-@end lilypond
-
-Essayons à présent de coder cette musique en partant de zéro.  Comme
-nous le verrons, certaines difficultés vont se présenter.  Partons de ce
-que nous avons appris : utilisons la construction @code{<< \\  >>} pour
-saisir la première mesure dans trois voix :
-
-@lilypond[quote,verbatim,fragment,ragged-right]
-\new Staff \relative c'' {
-  \key aes \major
-  <<
-    { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
-  >>
-  <c ees aes c>1
-}
-@end lilypond
-
-@cindex stem down
-@cindex hampes en bas
-@cindex stem up
-@cindex hampes en haut
-
-La direction des hampes est attribuée automatiquement : les voix
-impaires portent des hampes vers le haut, les voix paires des hampes
-vers le bas.  Les hampes des voix 1 et 2 sont orientées comme il faut
-mais celles de la voix 3 devraient, dans le cas qui nous occupe, aller
-vers le bas.  Nous pouvons corriger cela en sautant la voix 3 et en
-plaçant la musique dans la voix 4 :
-
-@lilypond[quote,verbatim,fragment,ragged-right]
-\new Staff \relative c'' {
-  \key aes \major
-  << % Voice one
-    { c2 aes4. bes8 }
-  \\ % Voice two
-    { aes2 f4 fes   }
-  \\ % Omit Voice three
-  \\ % Voice four
-    { <ees c>2 des2 }
-  >> |
-  <c ees aes c>1 |
-}
-@end lilypond
-
-@noindent
-Cette manipulation nous permet de régler la direction des hampes, mais
-elle engendre un problème que l'on rencontre parfois avec de multiples
-voix, à savoir que les hampes d'une voix peuvent chevaucher les têtes de
-note des autres voix.  En matière de mise en forme des notes, LilyPond
-tolère que des notes ou accords appartenant à deux voix se retrouvent
-dans le même empilement de notes (@emph{note column} en anglais) si tant
-est que ces hampes vont dans des directions opposées ; néanmoins les
-notes des troisième et quatrième voix seront décalées si nécessaire pour
-éviter que les têtes ne se chevauchent.  Cela marche plutôt bien, mais
-dans notre exemple, les notes de la voix la plus basse ne sont vraiment
-pas correctement placées.  LilyPond met à notre disposition plusieurs
-moyens d'ajuster le positionnement horizontal des notes.  Nous ne sommes
-pas encore tout à fait prêts pour voir comment corriger cela, aussi nous
-examinerons ce problème dans un autre chapitre (voir la propriété
-@code{force-hshift} dans @ref{Fixing overlapping notation}).
-
-
-@seealso
-Manuel de notation : @ruser{Multiple voices}.
-
-
-@node Explicitly instantiating voices
-@subsection Explicitly instantiating voices
-
-@funindex \voiceOne
-@funindex voiceOne
-@funindex \voiceTwo
-@funindex voiceTwo
-@funindex \voiceThree
-@funindex voiceThree
-@funindex \voiceFour
-@funindex voiceFour
-@funindex \oneVoice
-@funindex oneVoice
-@funindex \new Voice
-@cindex Voice, création de contextes
-
-Les contextes @rinternals{Voice} peuvent être déclarés manuellement
-dans un bloc @code{<< >>} pour créer de la musique polyphonique, en
-utilisant @code{\voiceOne}, @dots{} jusqu'à @code{\voiceFour} pour
-assigner des directions de hampes et un déplacement horizontal pour
-chaque partie.  Cette méthode apporte de la clarté pour des partitions
-plus importantes puisqu'elle permet de bien séparer les voix et de leur
-affecter un nom plus parlant.
-
-En particulier, la construction @code{<< \\ >>} que nous avons vue
-précédemment :
-
-@example
-\new Staff @{
-  \relative c' @{
-    << @{ e4 f g a @} \\ @{ c,4 d e f @} >>
-  @}
-@}
-@end example
-
-@noindent
-équivaut à
-
-@example
-\new Staff <<
-  \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
-  \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
->>
-@end example
-
-Toutes deux produiront
-
-@c The following example should not display the code
-@lilypond[ragged-right,quote]
-\new Staff <<
-  \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
-  \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
->>
-@end lilypond
-
-@cindex Voice, retour à un seul contexte
-@cindex retour à un contexte Voice unique
-
-Les commandes @code{\voiceXXX} fixent la direction des hampes, des
-liaisons de prolongation et de phrasé, des articulations, des
-annotations, des points d'augmentation des notes pointées et des
-doigtés.  @code{\voiceOne} et @code{\voiceThree} font pointer ces objets
-vers le haut, alors que @code{\voiceTwo} et @code{\voiceFour} les font
-pointer vers le bas.  Ces commandes génèrent par ailleurs un décalage
-horizontal de chacune des voix pour éviter tout risque de chevauchement
-entre plusieurs notes.  La commande @code{\oneVoice} les ramène aux
-critères normaux.
-
-Voyons, à l'aide de ces exemples simples, les effets respectifs de
-@code{\oneVoice}, @code{\voiceOne} et @code{\voiceTwo} sur les
-annotations, liaisons de prolongation ou de phrasé, et sur les nuances.
-
-@lilypond[quote,ragged-right,verbatim]
-\relative c'{
-  % Default behavior or behavior after \oneVoice
-  c d8 ~ d e4 ( f g a ) b-> c
-}
-@end lilypond
-
-@lilypond[quote,ragged-right,verbatim]
-\relative c'{
-  \voiceOne
-  c d8 ~ d e4 ( f g a ) b-> c
-  \oneVoice
-  c, d8 ~ d e4 ( f g a ) b-> c
-}
-@end lilypond
-
-@lilypond[quote,ragged-right,verbatim]
-\relative c'{
-  \voiceTwo
-  c d8 ~ d e4 ( f g a ) b-> c
-  \oneVoice
-  c, d8 ~ d e4 ( f g a ) b-> c
-}
-@end lilypond
-
-Voyons à présent trois différentes façons d'exprimer un passage
-polyhonique, à partir d'un exemple de la section précédente.  Chacune
-d'elles aura ses avantages selon les circonstances.
-
-Une expression séquentielle qui apparaît en premier dans un @code{<< >>}
--- attention, @strong{pas} dans une construction @code{<< \\ >>} --
-appartient à la voix principale.  Ceci est utile lorsque des voix
-supplémentaires apparaissent pendant que la voix principale est jouée.
-Voici une meilleure réalisation de notre exemple.
-Les notes colorées et en croix mettent en évidence le fait que la
-mélodie principale est maintenant dans un seul contexte de voix, ce qui
-permet d'ajouter une liaison de phrasé à l'ensemble.
-
-@lilypond[quote,ragged-right,verbatim]
-\new Staff \relative c' {
-  \voiceOneStyle
-  % The following notes are monophonic
-  c16^( d e f
-  % Start simultaneous section of three voices
-  <<
-    % Continue the main voice in parallel
-    { g4 f e | d2 e2) }
-    % Initiate second voice
-    \new Voice {
-      % Set stems, etc, down
-      \voiceTwo
-      r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
-    }
-    % Initiate third voice
-    \new Voice {
-      % Set stems, etc, up
-      \voiceThree
-      s2. | s4 b4 c2
-    }
-  >>
-}
-@end lilypond
-
-@cindex imbrication d'expressions musicales
-@cindex imbrication de constructions simultanées
-
-@cindex voix temporaires
-@cindex voix, imbrication
-
-
-Dans certaines circonstances de polyphonie complexe, vous pourrez être
-amené à recourir à une voix temporaire, ce qui peut être une manière
-plus naturelle de saisir la musique :
-
-@lilypond[quote,ragged-right,verbatim]
-\new Staff \relative c' {
-  c16^( d e f
-  <<
-    { g4 f e | d2 e2) }
-    \new Voice {
-      \voiceTwo
-      r8 e4 d c8 ~ |
-      <<
-        {c8 b16 a b8 g ~ g2}
-        \new Voice {
-          \voiceThree
-          s4 b4 c2
-        }
-      >>
-    }
-  >>
-}
-@end lilypond
-
-@cindex espacement des notes
-
-Cette manière de brièvement imbriquer des voix est bien utile pour de
-courts fragments de musique polyphonique.  Mais lorsqu'une portée est
-très souvent polyphonique, on peut y gagner en clarté si l'on utilise
-plusieurs voix sur l'ensemble de cette portée et que l'on positionne des 
-silences invisibles pour sauter les moments où il n'y a rien dans cette
-voix. 
-
-@lilypond[quote,ragged-right,verbatim]
-\new Staff \relative c' <<
-  % Initiate first voice
-  \new Voice {
-    \voiceOne
-    c16^( d e f g4 f e | d2 e2) |
-  }
-  % Initiate second voice
-  \new Voice {
-    % Set stems, etc, down
-    \voiceTwo
-    s4 r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 |
-  }
-  % Initiate third voice
-  \new Voice {
-    % Set stems, etc, up
-    \voiceThree
-    s1 | s4 b4 c2 |
-  }
->>
-@end lilypond
-
-@subsubheading Note columns
-
-@cindex note column
-@cindex empilement de notes
-@cindex collisions de notes
-@cindex shift, commandes
-@cindex décalage, commandes
-@funindex \shiftOff
-@funindex shiftOff
-@funindex \shiftOn
-@funindex shiftOn
-@funindex \shiftOnn
-@funindex shiftOnn
-@funindex \shiftOnnn
-@funindex shiftOnnn
-
-Les notes rapprochées d'un accord, ou des notes de différentes voix qui
-tombent ensemble, seront rangées sur deux colonnes, voire plus, pour
-palier d'éventuels chevauchements des têtes.  On appelle cela des
-empilements de notes.  Chaque voix dispose de plusieurs empilements, et 
-l'attribution d'un décalage à une voix en particulier s'appliquera à
-l'empilement en question s'il y avait risque de collision.
-Nous en avons une illustration à la deuxième mesure de l'exemple
-ci-dessus : le do de la deuxième voix est décalé à droite du ré de la
-première voix et, dans l'accord final, le do de la troisième voix est
-lui aussi décalé à droite des autres notes.
-
-Les commandes @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn}, et 
-@code{\shiftOff} spécifient le degré nécessaire de décalage qui sera
-appliqué aux notes ou accords de la voix en question afin d'éviter une
-collision.  Par défaut, les voix extérieures -- normalement les
-première et deuxième -- se verront attribuer @code{\shiftOff}, alors que
-les voix intérieures -- trois et quatre -- se verront attribuer
-@code{\shiftOn}.  Lorsqu'un décalage s'applique, les voix un et trois
-iront vers la droite, et les voix deux et quatre vers la gauche.
-
-@code{\shiftOnn} et @code{\shiftOnnn} définissent des degrés augmentés
-de décalage auquel on peut devoir temporairement recourir dans des
-situations complexes -- voir @ref{Real music example}.
-
-Un empilement peut ne contenir qu'une note ou un accord dans une voix
-aux hampes vers le haut, et une note ou un accord dans une voix
-aux hampes vers le bas.  Dans le cas où des notes, issues de deux voix
-ayant toutes deux des hampes dans la même direction, se retrouvent au
-même moment et qu'aucun décalage n'a été spécifié ou qu'ils sont
-identiques, LilyPond vous le signalera par le message @qq{Trop
-d'empilements en conflit}.
-
-
-@seealso
-Manuel de notation : @ruser{Multiple voices}.
-
-
-@node Voices and vocals
-@subsection Voices and vocals
-
-La musique vocale est une gageure en soi : il nous faut combiner deux
-expressions différentes -- des notes et des paroles.
-
-@funindex \new Lyrics
-@funindex \lyricsto
-@funindex lyricsto
-@funindex Lyrics
-@cindex Lyrics, création d'un contexte
-@cindex paroles, affectation à une voix
-
-Nous avons déjà abordé la commande @code{\addlyrics}, qui permet de
-gérer des partitions simples.  Cette technique est cependant
-relativement limitée.  Pour de la musique un peu plus compliquée, il
-vous faudra contenir les paroles dans un contexte @code{Lyrics}, créé
-par la commande @code{\new Lyrics} ; vous relierez ensuite ces paroles
-aux notes grâce à la commande @code{\lyricsto@{@}} et au nom assigné à
-la voix en question.
-
-@lilypond[quote,verbatim,fragment]
-<<
-  \new Voice = "one" \relative c'' {
-    \autoBeamOff
-    \time 2/4
-    c4 b8. a16 g4. f8 e4 d c2
-  }
-  \new Lyrics \lyricsto "one" {
-    No more let sins and sor -- rows grow.
-  }
->>
-@end lilypond
-
-Notez bien que les paroles sont liées à un contexte de voix
-(@code{Voice}), @strong{non} à un contexte de portée (@code{Staff}).  Il
-est donc nécessaire de créer explicitement les contextes @code{Staff}
-et @code{Voice}.
-
-@cindex paroles et ligatures
-@cindex ligatures et paroles
-@funindex \autoBeamOff
-@funindex autoBeamOff
-
-Si la ligature automatique que LilyPond applique par défaut
-est pleinement adaptée en matière de musique instrumentale, il
-n'en va pas de même dans le cas d'une musique associée à des paroles,
-et pour laquelle soit les ligatures sont carrément absentes, soit elles
-servent à indiquer un mélisme -- plusieurs notes pour une même syllabe.  
-Dans l'exemple qui suit, nous utilisons la commande @code{\autoBeamOff}
-afin de désactiver les ligatures automatiques.
-
-@funindex \new ChoirStaff
-@funindex ChoirStaff
-@funindex \lyricmode
-@funindex lyricmode
-@cindex structure d'une partition vocale
-@cindex chœur, partie de
-
-Nous allons reprendre un extrait de Judas Maccabæus pour illustrer ce
-que cette technique apporte en flexibilité.  Nous commençons par
-utiliser des variables afin de séparer de la structure de la portée 
-aussi bien la musique que les paroles.  Nous ajoutons par la même
-occasion un crochet spécifique aux portées pour chœur
-(@code{ChoirStaff}).  Quant aux blocs de paroles, nous les faisons
-précéder de la commande @code{\lyricmode} pour nous assurer qu'elles
-seront interprétées comme telles, et non comme de la musique.
-
-@lilypond[quote,verbatim]
-global = { \time 6/8 \partial 8 \key f \major}
-SopOneMusic = \relative c'' {
-  c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 }
-SopTwoMusic = \relative c' {
-  r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' }
-SopOneLyrics = \lyricmode {
-  Let | flee -- cy flocks the | hills a -- dorn, __ }
-SopTwoLyrics = \lyricmode {
-  Let | flee -- cy flocks the | hills a -- dorn, }
-
-\score {
-  \new ChoirStaff <<
-    \new Staff <<
-      \new Voice = "SopOne" {
-        \global
-        \SopOneMusic
-      }
-      \new Lyrics \lyricsto "SopOne" {
-        \SopOneLyrics
-      }
-    >>
-    \new Staff <<
-      \new Voice = "SopTwo" {
-        \global
-        \SopTwoMusic
-      }
-      \new Lyrics \lyricsto "SopTwo" {
-        \SopTwoLyrics
-      }
-    >>
-  >>
-}
-@end lilypond
-
-Voici donc la structure de base valable pour toute partition vocale.  On
-peut y ajouter d'autres portées si besoin est, d'autres voix à
-chaque portée, plusieurs couplets aux paroles, et les variables
-contenant la musique peuvent même être stockées dans des fichiers
-indépendants dès lors que leur longueur devient conséquente. 
-
-@cindex structure d'hymne
-@cindex SATB, structure
-@cindex partition vocale avec plusieurs couplets
-@cindex couplets multiples et musique vocale
-
-Voici maintenant la première ligne d'une hymne pour chœur à quatre voix
-mixtes, comportant quatre couplets.  Les paroles sont ici identiques
-pour les quatre voix.  Vous remarquerez le recours aux variables afin de
-séparer de la structure de portée les notes et les paroles.  Vous
-noterez aussi une variable particulière, que nous avons appelée
-@qq{MetriqueArmure}, et qui contient plusieurs commandes que nous
-utiliserons dans les deux portées.  Dans de nombreux autres exemples,
-elle s'appelle @qq{global}.
-
-@lilypond[quote,verbatim]
-TimeKey = { \time 4/4 \partial 4 \key c \major}
-SopMusic   = \relative c' { c4 | e4. e8 g4  g  | a a g }
-AltoMusic  = \relative c' { c4 | c4. c8 e4  e  | f f e }
-TenorMusic = \relative c  { e4 | g4. g8 c4. b8 | a8 b c d e4 }
-BassMusic  = \relative c  { c4 | c4. c8 c4  c  | f8 g a b c4 }
-VerseOne   = \lyricmode {
-  E -- | ter -- nal fa -- ther, | strong to save, }
-VerseTwo   = \lyricmode {
-  O | Christ, whose voice the | wa -- ters heard, }
-VerseThree = \lyricmode {
-  O | Ho -- ly Spi -- rit, | who didst brood }
-VerseFour  = \lyricmode {
-  O | Tri -- ni -- ty of | love and pow'r }
-
-\score {
-  \new ChoirStaff <<
-    \new Staff <<
-      \clef "treble"
-      \new Voice = "Sop"  { \voiceOne \TimeKey \SopMusic }
-      \new Voice = "Alto" { \voiceTwo \AltoMusic }
-      \new Lyrics \lyricsto "Sop" { \VerseOne   }
-      \new Lyrics \lyricsto "Sop" { \VerseTwo   }
-      \new Lyrics \lyricsto "Sop" { \VerseThree }
-      \new Lyrics \lyricsto "Sop" { \VerseFour  }
-    >>
-    \new Staff <<
-      \clef "bass"
-      \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
-      \new Voice = "Bass"  { \voiceTwo \BassMusic  }
-    >>
-  >>
-}
-@end lilypond
-
-@cindex couplet et refrain
-
-Nous allons terminer en voyant comment coder un couplet pour soliste
-suivi d'un refrain à deux voix sur deux portées.  Les explications sont
-importantes, dans la mesure où les moyens mis en œuvre pour arriver à
-enchaîner le solo et la polyphonie dans une seule et même partition sont
-quelque peu tirés par les cheveux.
-
-Commençons par ouvrir un bloc @code{score} qui contiendra un
-@code{ChoirStaff}, puisque nous aimerions voir un crochet au début du
-système choral.  Nous devrions avoir, après @code{\new ChoirStaff}, un
-double chevron gauche pour synchroniser les portées ; mais comme nous
-reportons le parallélisme après le solo, nous utilisons des accolades --
-un double chevron ne serait cependant pas génant.  À l'intérieur du
-@code{ChoirStaff}, nous voulons en premier la portée avec le couplet.
-Puisqu'elle englobe parallèlement des notes et des paroles, nous devons
-encadrer les @code{\new Voice} et @code{\new Lyrics} de doubles
-chevrons gauche/droite pour les faire démarrer de concert : 
-
-@lilypond[quote,verbatim,ragged-right]
-versenotes = \relative c'' {
-  \clef "treble"
-  \key g \major
-  \time 3/4 g g g b b b
-}
-versewords = \lyricmode {
-  One two three four five six
-}
-\score {
-  \new ChoirStaff {
-    \new Staff <<
-      \new Voice = "verse" {
-        \versenotes \break
-      }
-      \new Lyrics \lyricsto verse {
-        \versewords
-      }
-    >>
-  }
-}
-@end lilypond
-
-Voici la ligne du couplet réalisée.
-
-Nous poursuivons avec refrainA, sur la même portée, alors même qu'une 
-deuxième portée s'amorce en parallèle pour contenir refrainB.  Cette
-section parallèle doit s'enchaîner directement à la suite du
-@code{\break} de la voix contenant le couplet -- il s'agit bien de la
-@emph{même} voix.  Voici cette section parallèle.  On pourrait tout à
-fait ajouter encore d'autres portées ici, toujours de la même manière.
-
-@example
-<<
-  \refrainnotesA
-  \new Lyrics \lyricsto verse @{
-    \refrainparolesA
-  @}
-  \new Staff <<
-    \new Voice = "refrainB" @{
-      \refrainnotesB
-    @}
-    \new Lyrics \lyricsto "refrainB" @{
-      \refrainparolesB
-    @}
-  >>
->>
-@end example
-
-Et voici le résultat final, avec ses deux portées pour la partie
-chorale, et qui montre comment la section en parallèle s'enchaîne avec
-la voix du couplet :
-
-@lilypond[quote,verbatim, ragged-right]
-versenotes = \relative c'' {
-  \clef "treble"
-  \key g \major
-  \time 3/4 g g g b b b
-}
-refrainnotesA = \relative c'' {
-  \time 2/4
-  c c g g \bar "|."
-}
-refrainnotesB = \relative c {
-  \clef "bass"
-  \key g \major
-  c e d d
-}
-versewords = \lyricmode {
-  One two three four five six
-}
-refrainwordsA = \lyricmode {
-  la la la la
-}
-refrainwordsB = \lyricmode {
-  dum dum dum dum
-}
-\score {
-  \new ChoirStaff {
-    \new Staff <<
-      \new Voice = "verse" {
-        \versenotes \break
-        <<
-          \refrainnotesA
-          \new Lyrics \lyricsto "verse" {
-            \refrainwordsA
-          }
-          \new Staff <<
-            \new Voice = "refrainB" {
-              \refrainnotesB
-            }
-            \new Lyrics \lyricsto "refrainB" {
-              \refrainwordsB
-            }
-          >>
-        >>
-      }
-      \new Lyrics \lyricsto "verse" {
-        \versewords
-      }
-    >>
-  }
-}
-@end lilypond
-
-@cindex book, exemple d'utilisation
-@cindex recueil, exemple d'utilisation
-@funindex \book
-@funindex book
-
-Bien que ce que nous venons de voir constitue un exercice intéressant et
-fort utile pour comprendre comment s'articulent des blocs séquentiels et
-simultanés, nous aurions aussi pu coder notre exemple sous la forme de
-deux blocs @code{\score} au sein d'un bloc @code{\book} implicite :
-
-@lilypond[quote,verbatim,ragged-right]
-versenotes = \relative c'' {
-  \clef "treble"
-  \key g \major
-  \time 3/4 g g g b b b
-}
-refrainnotesA = \relative c'' {
-  \time 2/4
-  c c g g \bar "|."
-}
-refrainnotesB = \relative c {
-  \clef "bass"
-  \key g \major
-  c e d d
-}
-versewords = \lyricmode {
-  One two three four five six
-}
-refrainwordsA = \lyricmode {
-  la la la la
-}
-refrainwordsB = \lyricmode {
-  dum dum dum dum
-}
-\score {
-  \new Staff <<
-    \new Voice = "verse" {
-      \versenotes
-    }
-    \new Lyrics \lyricsto "verse" {
-      \versewords
-    }
-  >>
-}
-
-\score {
-  \new ChoirStaff <<
-    \new Staff <<
-      \new Voice = "refrainA" {
-        \refrainnotesA
-      }
-      \new Lyrics \lyricsto "refrainA" {
-        \refrainwordsA
-      }
-    >>
-    \new Staff <<
-      \new Voice = "refrainB" {
-        \refrainnotesB
-      }
-      \new Lyrics \lyricsto "refrainB" {
-        \refrainwordsB
-      }
-    >>
-  >>
-}
-@end lilypond
-
-
-@seealso
-Manuel de notation : @ruser{Vocal music}.
-
-
-@node Contexts and engravers
-@section Contexts and engravers
-
-Nous avons évoqué rapidement les contextes et graveurs dans les chapitres
-précédents ; examinons en détail ces concepts essentiels à la
-maîtrise de LilyPond.
-
-@menu
-* Contexts explained::          
-* Creating contexts::           
-* Engravers explained::         
-* Modifying context properties::  
-* Adding and removing engravers::  
-@end menu
-
-@node Contexts explained
-@subsection Contexts explained
-
-@cindex contextes, les différents
-
-Imprimer de la musique impose d'ajouter un certain nombre d'éléments de
-notation.  Par exemple, voici un fragment de partition, précédé du code
-qui l'engendre :
-
-@lilypond[quote,verbatim,relative=2,fragment]
-cis4 cis2. g4
-@end lilypond
-
-Si le code est assez austère, dans la partition ont été ajoutés un
-chiffre de mesure, des barres de mesure, des altérations et une clé.
-Pour une bonne raison : LilyPond @emph{interprète} le code.  Il le
-compulse dans l'ordre chronologique, de même qu'on lit une partition de
-gauche à droite ; et pendant ce traitement, le logiciel garde en
-mémoire les limites des mesures, ou encore quelles hauteurs de note
-demandent des altérations accidentelles.  Ces informations se présentent
-à plusieurs niveaux : ainsi, une altération n'a d'effet que sur une
-seule portée, tandis qu'une barre de mesure doit être synchronisée sur
-toute l'étendue verticale de la partition.
-
-LilyPond regroupe ces règles et ces fragments d'information dans des
-@emph{Contextes}.  Certains contextes sont les voix (contexte @code{Voice}),
-les portées (contexte @code{Staff}), ou la partition dans son ensemble
-(contexte @code{Score}).  Ils sont ordonnés hiérarchiquement : ainsi un
-contexte @code{Staff} peut contenir plusieurs contextes
-@code{Voice}, et un contexte @code{Score} peut contenir plusieurs
-contextes @code{Staff}.
-
-@quotation
-@image{context-example,5cm,,}
-@end quotation
-
-Chaque contexte est chargé de faire appliquer certaines règles de gravure,
-de créer certains objets, et de prendre en compte les propriétés qui leur
-sont associées.  Ainsi, le contexte @code{Voice} peut faire intervenir une
-altération accidentelle, puis le contexte @code{Staff} devra déterminer s'il
-faudra imprimer ou non cette dernière dans la suite de la mesure.
-
-Les barres de mesure, quant à elles, sont alignées verticalement grâce au
-contexte @code{Score} par défaut. 
-En revanche, dans une musique polymétrique, par exemple mêlant une
-portée à 3/4 et une autre à 4/4, les barres de mesures n'ont plus à être
-alignées : il faut alors modifier les comportement par défaut des
-contextes @code{Score} et @code{Staff}.
-
-Dans une partition très simple, les contextes sont créés implicitement
-et peuvent être ignorés.  Mais lorsqu'il s'agit de morceaux plus amples
--- entendons par là tout ce qui s'écrit sur plus d'une portée -- il faut
-les créer explicitement pour être sûr d'obtenir toutes les portées
-nécessaires, et dans le bon ordre.  Enfin, pour des morceaux impliquant
-une notation spéciale, modifier les contextes ou en créer de nouveaux
-devient extrêment utile.
-
-En plus des contextes @code{Score,} @code{Staff} et @code{Voice} sont
-disponibles d'autres contextes intermédiaires entre les niveaux 
-partition et portée, chargés de gérer certains regroupement, tels que
-@code{PianoStaff} ou @code{ChoirStaff}.  Vous disposez aussi d'autres
-contextes de portée ou de voix alternatifs, ainsi que des contextes
-spécifiques pour les paroles, les percussions, les tablatures
-d'instruments frettés, la basse chiffrée, etc.
-
-Le nom de chacun des contextes est formé d'un ou plusieurs mots aux
-initiales en majuscule et directement accolés les uns aux autres sans
-ponctuation, comme par exemple @code{GregorianTranscriptionStaff}.
-
-
-@seealso
-Manuel de notation : @ruser{Contexts explained}.
-
-
-@node Creating contexts
-@subsection Creating contexts
-
-@funindex \new
-@funindex new
-@cindex nouveaux contextes
-@cindex Contextes, création de
-
-Il en va des contextes comme de toute hiérarchie : il faut un sommet -- 
-le contexte @code{Score} en l'occurence.  La commande @code{\score} est
-chargée de le créer, mais pour des partitions simples, il le sera
-automatiquement. 
-
-Lorsqu'une partition ne comporte qu'une voix et une seule portée, vous
-pouvez laisser LilyPond créer automatiquement les contextes @code{Voice} 
-et @code{Staff} ; mais leur présence explicite devient indispenssable dès
-que la situation se complique.  
-Le moyen le plus simple est d'utiliser la commande @code{\new}.  Elle
-doit intervenir avant une expression musicale, ainsi :
-
-@example
-\new @var{type} @var{expression-musicale}
-@end example
-
-@noindent
-où @var{type} correspond au nom du contexte (tels @code{Staff} ou
-@code{Voice}).  Cette commande crée un nouveau contexte, puis 
-interprète l'@var{expression-musicale} contenue dans ledit
-contexte.  
-
-Notez bien qu'il n'existe pas de commande @code{\new Score}, puisque le
-contexte premier que constitue @code{Score} est créé par @code{\score}. 
-
-Nous avons déjà vu au cours des chapitres précédents de nombreux
-exemples où des contextes @code{Staff} ou @code{Voice} étaient créés au
-besoin.  Dans un but didactique, voici maintenant une application
-complète et largement commentée : 
-
-@lilypond[quote,verbatim,ragged-right]
-\score {  % start of single compound music expression
-  <<  % start of simultaneous staves section
-    \time 2/4
-    \new Staff {  % create RH staff
-      \key g \minor
-      \clef "treble"
-      \new Voice {  % create voice for RH notes
-        \relative c'' {  % start of RH notes
-          d4 ees16 c8. |
-          d4 ees16 c8. |
-        }  % end of RH notes
-      }  % end of RH voice
-    }  % end of RH staff
-    \new Staff <<  % create LH staff; needs two simultaneous voices
-      \key g \minor
-      \clef "bass"
-      \new Voice {  % create LH voice one
-        \voiceOne
-        \relative g {  % start of LH voice one notes
-          g8 <bes d> ees, <g c> |
-          g8 <bes d> ees, <g c> |
-        }  % end of LH voice one notes
-      }  % end of LH voice one
-      \new Voice {  % create LH voice two
-        \voiceTwo
-        \relative g {  % start of LH voice two notes
-          g4 ees |
-          g4 ees |
-        }  % end of LH voice two notes
-      }  % end of LH voice two
-    >>  % end of LH staff
-  >>  % end of simultaneous staves section
-}  % end of single compound music expression
-@end lilypond
-
-Notez que toute déclaration qui ouvre un bloc par une
-accolade, @code{@{}, ou un double chevron gauche, @code{<<}, est
-indentée de deux espaces supplémentaires, et de deux autres pour sa
-marque de fermeture.  Bien que ceci ne soit pas obligatoire, nous vous
-invitons à adopter cette pratique qui vous évitera nombre d'erreurs
-@qq{accolades non appariées}.  La structure de la musique apparaît ainsi
-au premier coup d'œil, et les défauts de parité plus facilement
-repérables.  Vous remarquerez que la portée MG est créée à l'aide d'un
-double chevron gauche -- nécessaire pour gérer ses deux voix -- alors que la
-portée MD ne contient qu'une seule expression musicale -- il n'y a
-qu'une voix -- bornée par des accolades simples.
-
-@cindex contexte, noms de
-@cindex nommage des contextes
-
-La commande @code{\new} peut aussi permettre de nommer le contexte créé,
-et ainsi le distinguer des autres contextes déjà existants :
-
-@example
-\new @var{type} = @var{"UnNom"} @var{expression-musicale}
-@end example
-
-Vous noterez la distinction entre le nom du type de contexte,
-@code{Staff}, @code{Voice}, etc, et le nom -- une simple suite de
-lettres au bon gré de l'utilisateur -- permettant d'identifier une
-instance particulière du type en question.  Vous pouvez utiliser des
-chiffres et espaces, à la stricte condition d'englober le tout dans des
-guillemets ; l'identificateur suivant est tout à fait valide :
-@code{\new Staff = "MaPortee 1" @var{expression-musicale}}.  
-Comme nous l'avons déjà vu dans le chapitre consacré aux paroles 
-(@ref{Voices and vocals}), cet identifiant permettra ensuite de se
-référer à ce contexte particulier. 
-
-
-@seealso
-Manuel de notation : @ruser{Creating contexts}.
-
-
-@node Engravers explained
-@subsection Engravers explained
-
-@cindex engravers
-@cindex graveurs
-
-Tout point qui compose une partition générée par LilyPond est
-produit par un graveur (@emph{Engraver} en anglais).   Ainsi, il y en a
-un qui imprime les portées, un autre les têtes de note, un autre les
-hampes, un autre encore pour les ligatures, etc.  LilyPond dispose de
-plus de 120 graveurs ! La plupart des partitions ne requièrent de
-s'intéresser qu'à quelques-uns seulement, et pour des partitions
-simples, vous n'aurez même pas à vous en préoccuper.
-
-Les graveurs résident et opèrent au sein des contextes.
-Les graveurs tels que le @code{Metronome_mark_engraver}, dont les effets 
-s'appliquent à la partition dans son intégralité, opèrent au sein du
-contexte de plus haut niveau -- le contexte @code{Score}. 
-
-Les graveurs @code{Clef_engraver} et @code{Key_engraver} seront logés
-dans chacun des contextes @code{Staff} ; deux portées peuvent requérir
-des clefs et des armures différentes.
-
-Les graveurs @code{Note_heads_engraver} et @code{Stem_engraver} résident
-dans chacun des contextes @code{Voice}, contexte du plus bas niveau.
-
-Chaque graveur confectionne les objets spécifiquement associés à sa
-fonction et traite les propriétés attachées à cette fonction.  Ces
-propriétés, tout comme celles relatives aux contextes, peuvent être
-modifiées afin d'influencer le comportement du graveur et par voie de
-conséquence le rendu des éléments dont il a la charge.
-
-Les graveurs ont tous un nom composé, formé des différents mots
-décrivant leur fonction. Seule l'initiale du premier mot est en
-majuscule, et les mots qui le composent sont joints par un caractère
-souligné.  Ainsi, le @code{Staff_symbol_engraver} est chargé de créer
-les lignes de la portée, et le @code{Clef_engraver} détermine la hauteur
-de référence de la portée en dessinant le symbole de la clef.
-
-Voici quelques-uns des graveurs les plus courants, ainsi que leur
-fonction.  Vous noterez qu'il est facile d'en connaître la fonction à
-partir du nom, et vice versa.
-
-@multitable @columnfractions .3 .7
-@headitem Graveur
-  @tab Fonction
-@item Accidental_engraver
-  @tab Crée les altérations, y compris de précaution, accidentelles ou suggérées
-@item Beam_engraver
-  @tab Grave les ligatures
-@item Clef_engraver
-  @tab Grave les clefs
-@item Completion_heads_engraver
-  @tab Divise les notes qui dépassent de la mesure
-@item Dynamic_engraver
-  @tab Crée les soufflets et textes de nuance
-@item Forbid_line_break_engraver
-  @tab Empêche un saut de ligne si un élément musical est toujours actif
-@item Key_engraver
-  @tab Crée l'armure
-@item Metronome_mark_engraver
-  @tab Grave les indications métronomiques
-@item Note_heads_engraver
-  @tab Grave les têtes de note
-@item Rest_engraver
-  @tab Grave les silences
-@item Staff_symbol_engraver
-  @tab Grave les cinq lignes (par défaut) de la portée
-@item Stem_engraver
-  @tab Crée les hampes et les trémolos sur une hampe unique
-@item Time_signature_engraver
-  @tab Crée les métriques
-@end multitable
-
-@smallspace
-
-Nous verrons plus avant comment le résultat de LilyPond peut changer
-lorsqu'on modifie l'action des graveurs.
-
-
-@seealso
-Références internes : @rinternals{Engravers and Performers}.
-
-
-@node Modifying context properties
-@subsection Modifying context properties
-
-@cindex contexte, propriétés
-@cindex propriétés d'un contexte, modification
-@cindex modification des propriétés d'un contexte
-@funindex \set
-@funindex set
-@funindex \unset
-@funindex unset
-
-Les contextes gèrent les différentes valeurs des nombreuses
-@emph{propriétés} qui leur sont attachées.  Beaucoup d'entre elles
-sont susceptibles d'être modifiées afin d'influer sur l'interprétation
-de l'input et ainsi changer l'apparence du résultat.  On les modifie 
-grâce à la commande @code{\set}, qui s'utilise ainsi :
-
-@example
-\set @emph{ContexteNommé}.@emph{propriétéNommée} = #@emph{valeur}
-@end example
-
-où @emph{ContexteNommé} est habituellement @code{Score},
-@code{Staff} ou @code{Voice}.  S'il n'est pas mentionné, il sera
-considéré comme étant @code{Voice}.
-
-Les noms des propriétés de contexte sont composés de mots accolés sans
-trait d'union ni caractère souligné, et dont seul le premier n'aura pas
-d'initiale en majuscule.  Voici quelques exemples de celles les plus
-communément utilisées.
-
-@c attempt to force this onto a new page
-@need 50
-@multitable @columnfractions .25 .15 .45 .15
-@headitem propriétéNommée
-  @tab Type
-  @tab Fonction
-  @tab Exemple de valeur
-@item extraNatural
-  @tab Booléen
-  @tab Si vrai, ajoute un bécarre avant une altération accidentelle
-  @tab @code{#t}, @code{#f}
-@item currentBarNumber
-  @tab Entier
-  @tab Détermine le numéro de la mesure en cours
-  @tab @code{50}
-@item doubleSlurs
-  @tab Booléen
-  @tab Si vrai, imprime les liaisons au-dessous @strong{et} au-dessus des notes
-  @tab @code{#t}, @code{#f}
-@item instrumentName
-  @tab Texte
-  @tab Détermine le nom à afficher en début de portée
-  @tab @code{"Cello I"}
-@item fontSize
-  @tab Réel
-  @tab Augmente ou diminue la taille de la fonte
-  @tab @code{2.4}
-@item stanza
-  @tab Texte
-  @tab Détermine le texte à imprimer avant le début d'un couplet
-  @tab @code{"2"}
-@end multitable
-
-@noindent
-où un boléen correspond soit à vrai (@code{#t} pour @emph{True} en
-anglais) ou faux (@code{#f} pour @emph{False} en anglais), un entier est
-un nombre entier positif, un réel est en nombre décimal positif ou
-négatif, et texte correspond à une suite de caractères encadrée par des
-apostrophes doubles.  Attention à la présence des signes dièse
-(@code{#}) dans deux cas particuliers : ils sont partie intégrante des
-valeurs boléennes et précèdent les @code{t} ou @code{f}, mais doivent
-aussi précéder @emph{valeur} dans le libellé de la commande @code{\set}.
-Il faudra donc, dans le cas d'une valeur boléenne, ne pas oublier de
-saisir deux signes dièse -- par exemple @code{##t}.
-
-@cindex propriétés et contextes
-@cindex réglage de propriétés au sein des contextes
-
-Avant de déterminer l'une de ces propriétés, nous devons savoir dans
-quel contexte elle intervient.  Si cela est bien souvent évident, il
-peut arriver que cela tourne au cauchemar.  Lorsque vous ne spécifiez
-pas le bon contexte, aucun message d'erreur ne s'affiche et l'effet
-attendu n'est pas au rendez-vous.  Par exemple, le @code{instrumentName}
-est de manière incontestable membre du contexte @code{Staff}, puisque
-c'est bien la portée que l'on va nommer.
-Dans l'exemple suivant, la première portée affiche effectivement un nom,
-alors que ce n'est pas le cas pour la deuxième dans la mesure où le
-contexte n'a pas été spécifié.
-
-@lilypond[quote,verbatim,ragged-right]
-<<
-  \new Staff \relative c'' {
-    \set Staff.instrumentName = #"Soprano"
-    c4 c
- }
-  \new Staff \relative c' {
-  \set instrumentName = #"Alto"  % Wrong!
-  d4 d
- }
->>
-@end lilypond
-
-Dans la mesure où le nom de contexte par défaut est @code{Voice}, la
-deuxième commande @code{\set} a défini @qq{Alto} comme propriété
-@code{instrumentName} du contexte de voix.  Puisque LilyPond n'ira pas
-chercher une telle propriété dans la contexte @code{Voice}, celle-ci ne
-sera pas interprétée.  Il ne s'agit pas d'une erreur, aucun message
-d'erreur ne sera ni émis ni enregistré. 
-
-De la même manière, une faute d'orthographe dans le nom de la propriété
-ne génèrera aucun message d'erreur et l'action escomptée ne se produira
-pas.  Vous pourriez déterminer par la commande @code{\set} n'importe
-quelle @q{propriété}, même fictive, à partir de n'importe quel nom et
-dans n'importe lequel des contextes disponibles.  Mais tant que ce nom
-est inconnu de LilyPond, rien ne se passera.  Certains éditeurs de texte
-disposent d'une prise en charge spécifique aux fichiers source LilyPond,
-à l'instar de LilyPondTool couplé à JEdit et qui documente les noms des
-propriétés dans une infobulle lorsque vous les survolez à la souris, ou 
-les souligne différemment s'ils sont inconnus, comme ConTEXT.  Dans le
-cas où votre éditeur ne dispose pas de ces fonctionnalités, nous vous
-recommandons de vérifier le nom des propriétés que vous manipulez dans
-le Manuel de références internes -- voir 
-@rinternals{Tunable context properties}, ou @rinternals{Contexts}.
-
-La propriété @code{instrumentName} ne sera prise en compte que si elle
-est définie dans un contexte @code{Staff} ; d'autres propriétés peuvent
-par contre être définies dans plusieurs contextes différents.  C'est le
-cas de la propriété @code{extraNatural} qui est définie par défaut à ##t 
-(vrai) pour toutes les portées.  Si vous lui attribuez la valeur ##f
-(faux) dans un contexte @code{Staff} particulier, elle ne s'appliquera
-qu'aux altérations de la portée en question ; si vous lui attribuez la
-valeur @q{faux} au niveau du contexte @code{Score}, cela s'appliquera
-alors à toutes les portées.
-
-Voici comment supprimer les bécarres supplémentaires pour une portée :
-
-@lilypond[quote,verbatim,ragged-right]
-<<
-  \new Staff \relative c'' {
-    ais4 aes
- }
-  \new Staff \relative c'' {
-    \set Staff.extraNatural = ##f
-    ais4 aes
- }
->>
-@end lilypond
-
-@noindent
-et pour toutes les portées :
-
-@lilypond[quote,verbatim,ragged-right]
-<<
-  \new Staff \relative c'' {
-    ais4 aes
- }
-  \new Staff \relative c'' {
-    \set Score.extraNatural = ##f
-    ais4 aes
- }
->>
-@end lilypond
-
-Autre exemple, si la propriété @code{clefOctavation} est déterminée au
-niveau du contexte @code{Score}, elle modifiera la valeur de l'octave en
-cours pour toutes les portées actives ; cette valeur sera considérée
-comme étant la nouvelle valeur par défaut pour toutes les portées à
-venir.
-
-La commande opposée, @code{\unset}, efface la propriété du contexte ; la
-plupart des propriétés reviennent de ce fait à leur valeur par défaut.
-En règle générale, la commande @code{\unset} n'est pas nécessaire dès
-lors que vous faites appel à une nouvelle commande @code{\set} pour
-modifier le réglage.
-
-Les commandes @code{\set} et @code{\unset} peuvent intervenir n'importe
-où dans votre fichier source.  Elles seront effectives dès leur
-apparition et jusqu'à la fin de la partition, à moins d'être affectées
-par un @code{\unset} ou un nouveau @code{\set}.  À titre d'exemple, nous
-allons jouer avec la taille des fontes, ce qui affecte entre
-autres la grosseur des têtes de note.  Les modifications s'appliquent
-toujours par rapport à la valeur par défaut, non par rapport à la
-dernière valeur.
-
-@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
-c4
-% make note heads smaller
-\set fontSize = #-4
-d e
-% make note heads larger
-\set fontSize = #2.5
-f g
-% return to default size
-\unset fontSize
-a b
-@end lilypond
-
-Nous venons de voir comment déterminer la valeur de différents types de
-propriété.  N'oubliez pas que les nombres, entiers ou réels, doivent
-être précédés d'un signe dièse (@code{#}) et les valeurs vrai ou faux de
-deux signes dièse -- respectivement ##t et ##f --. Une valeur textuelle
-doit être encadrée de guillemets anglais, @code{``@dots{ }''}, bien que,
-comme nous le constaterons plus tard, la commande @code{\markup} permet
-aussi de spécifier du texte.
-
-@unnumberedsubsubsec Setting context properties with @code{\with}
-
-@funindex \with
-@funindex with
-@cindex propriétés d'un contexte, définition avec \with
-
-Les propriétés d'un contexte peuvent aussi être réglées lors de la
-création de ce contexte.  Ceci constitue parfois une façon plus claire
-de spécifier les valeurs d'une propriété pour la durée de vie du
-contexte.  Lorsque vous créez un contexte à l'aide de la commande
-@code{\new}, vous pouvez la faire suivre immédiatement d'un bloc
-@code{\with @{ .. @}} qui contiendra les réglages des différentes
-propriétés.  Ainsi, si nous voulions par exemple annuler l'impression des
-bécarres supplémentaires sur la durée d'une portée, nous écririons :
-
-@example
-\new Staff \with @{ extraNatural = ##f @}
-@end example
-
-@noindent
-ce qui donnerait :
-
-@lilypond[quote,verbatim,ragged-right]
-<<
-  \new Staff
-  \relative c'' {
-    gis ges aes ais
-  }
-  \new Staff \with { extraNatural = ##f }
-  \relative c'' {
-    gis ges aes ais
-  }
->>
-@end lilypond
-
-Les propriétés réglées de cette manière peuvent néanmoins être modifiées
-de façon dynamique grâce à @code{\set} ; un @code{\unset} les ramènera à
-leur valeur par défaut.
-
-@cindex fontSize, valeur par défaut et réglage
-
-La propriété @code{fontSize} constitue une exception : lorsqu'elle est
-déterminée au sein d'un bloc @code{\with}, cela redéfinit la valeur par
-défaut de la taille de fonte.  Une modification est possible par la
-commande @code{\set}, mais la commande @code{\unset fontSize} fera
-revenir à la nouvelle valeur par défaut.
-
-@unnumberedsubsubsec Setting context properties with @code{\context}
-
-@cindex propriétés d'un contexte, définition avec \context
-@funindex \context
-@funindex context
-
-Vous pouvez régler les valeurs des propriétés de contexte en une seule
-fois pour tous les contextes d'un même type, par exemple tous les
-contextes @code{Staff}.  Le type du contexte doit être donné
-explicitement d'après son nom, par exemple @code{Staff}, précédé d'une
-oblique inverse, donc nous saisirons @code{\Staff}.  La manière de
-régler la valeur des propriétés est la même que ce que nous avons vu
-avec la commande @code{\with}, puisqu'on se place dans un bloc
-@code{\context} inclus dans un bloc @code{\layout}.  Chaque bloc
-@code{\context} affectera tous les contextes concernés par le bloc
-@code{\score} ou @code{\book} au sein duquel apparaît ce bloc
-@code{\layout}.  Voici comment le mettre en place :
-
-@lilypond[verbatim,quote]
-\score {
-  \new Staff {
-    \relative c'' {
-      cis4 e d ces
-    }
-  }
-  \layout {
-    \context {
-      \Staff
-      extraNatural = ##t
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Les propriétés de contexte ainsi définies peuvent être adaptées pour
-chacun des contextes en particulier grâce à un bloc @code{\with} ou bien
-une commande @code{\set} au fil des notes.
-
-
-@seealso
-Manuel de notation : 
-@ruser{Changing context default settings},
-@c uncomment when backslash-node-name issue is resolved -pm
-@c @ruser{The set command}.
-
-Références internes : 
-@rinternals{Contexts},
-@rinternals{Tunable context properties}.
-
-
-@node Adding and removing engravers
-@subsection Adding and removing engravers
-
-@cindex graveurs, ajout
-@cindex graveurs, suppression
-
-@funindex \consists
-@funindex consists
-@funindex \remove
-@funindex remove
-
-Nous avons vu que chaque contexte met en œuvre plusieurs graveurs, et
-que chacun de ces graveurs est chargé de générer une composante
-particulière du fichier de sortie, qui les barres de mesure, qui la
-portée, qui les têtes de note, les hampes, etc.  Le fait de supprimer un
-graveur d'un contexte éliminera sa contribution au fichier de sortie.
-Bien que ce soit là un moyen radical de modifier le résultat, cette
-pratique est dans quelques cas fort utile.
-
-@subsubheading Changing a single context
-
-Nous utilisons, pour supprimer un graveur d'un contexte, la commande
-@code{\with} dès la création dudit contexte, comme nous l'avons vu dans
-la section précédente.
-
-Illustrons notre propos en reprenant un exemple du chapitre précédent,
-duquel nous supprimerons les lignes de la portée.  Pour mémoire, les
-lignes d'une portée sont générées par le @code{Staff_symbol_engraver}.
-
-@lilypond[quote,verbatim,ragged-right]
-\new Staff \with {
-  \remove Staff_symbol_engraver
-}
-\relative c' {
-  c4
-  \set fontSize = #-4  % make note heads smaller
-  d e
-  \set fontSize = #2.5  % make note heads larger
-  f g
-  \unset fontSize  % return to default size
-  a b
-}
-@end lilypond
-
-@cindex ambitus, graveur
-
-Vous pouvez aussi ajouter individuellement un graveur à un contexte. La
-commande se formule ainsi :
-
-@code{\consists @var{Nom_du_graveur}}
-
-et se place dans un bloc @code{\with}.  Certaines partitions vocales
-font apparaître un @rglos{ambitus} au début de la portée, afin
-d'indiquer ses notes extrêmes.  L'ambitus est généré par
-l'@code{Ambitus_engraver}, que l'on peut adjoindre à n'importe quel
-contexte.  Si nous l'ajoutons au contexte @code{Voice}, seule la
-tessiture de cette voix sera calculée :
-
-@lilypond[quote,verbatim,ragged-right]
-\new Staff <<
-  \new Voice \with {
-    \consists Ambitus_engraver
-  }
-  \relative c'' {
-    \voiceOne
-    c a b g
-  }
-  \new Voice
-  \relative c' {
-    \voiceTwo
-    c e d f
-  }
->>
-@end lilypond
-
-@noindent
-alors que si nous l'ajoutons au contexte @code{Staff},
-l'@code{Ambitus_engraver} calculera l'écart maximal à partir de toutes
-les notes de toutes les voix de la portée :
-
-@lilypond[quote,verbatim,ragged-right]
-\new Staff \with {
-    \consists Ambitus_engraver
-  }
-  <<
-  \new Voice
-  \relative c'' {
-    \voiceOne
-    c a b g
-  }
-  \new Voice
-  \relative c' {
-    \voiceTwo
-    c e d f
-  }
->>
-@end lilypond
-
-@subsubheading Changing all contexts of the same type
-
-@funindex \layout
-@funindex layout
-
-Les exemples ci-dessus nous ont montré comment ajouter ou retirer des
-graveurs à des contextes individuels.  Nous pourrions aussi ajouter ou
-supprimer des graveurs à tous les contextes d'un même type en insérant
-les commandes pour le contexte approprié au sein d'un bloc
-@code{\layout}.  Si nous voulions afficher un ambitus pour chacune des
-portées d'un système à quatre portées, il nous suffirait d'écrire :
-
-@lilypond[quote,verbatim,ragged-right]
-\score {
-  <<
-    \new Staff <<
-      \relative c'' { c a b g }
-    >>
-    \new Staff <<
-      \relative c' { c a b g }
-    >>
-    \new Staff <<
-      \clef "G_8"
-      \relative c' { c a b g }
-    >>
-    \new Staff <<
-      \clef "bass"
-      \relative c { c a b g }
-    >>
-  >>
-  \layout {
-    \context {
-      \Staff
-      \consists Ambitus_engraver
-    }
-  }
-}
-@end lilypond
-
-@noindent
-Vous réglerez de la même manière les propriétés de tous les contextes
-d'un type particulier si vous insérez les commandes @code{\set} dans un
-bloc @code{\context}.
-
-
-@seealso
-Manuel de notation : @ruser{Modifying context plug-ins}, 
-@ruser{Changing context default settings}.
-
-
-@node Extending the templates
-@section Extending the templates
-
-Bon, vous avez lu le tutoriel, vous savez écrire de la musique.  Mais
-comment obtenir les portées que vous voulez ?  Les @ref{Templates},
-c'est bien beau, mais que faire quand ils ne traitent pas ce que l'on
-veut précisément ?
-
-Les exemples qui suivent vous donneront des méthodes générales pour
-adapter des modèles.
-
-@menu
-* Soprano and cello::           
-* Four-part SATB vocal score::  
-* Building a score from scratch::  
-@end menu
-
-@node Soprano and cello
-@subsection Soprano and cello
-
-@cindex modèles, modification des
-
-Commencez par le modèle qui vous semblera le plus proche de ce à quoi
-vous voulez aboutir.  Disons par exemple que vous voulez écrire une pièce
-pour soprano et violoncelle : dans ce cas, on pourrait commencer par les
-@qq{notes et paroles}, pour la partie de soprano.
-
-@example
-\version @w{"@version{}"}
-melodie = \relative c' @{
-  \clef treble
-  \key c \major
-  \time 4/4
-
-  a4 b c d
-@}
-
-texte = \lyricmode @{
-  Aaa Bee Cee Dee
-@}
-
-\score@{
-  <<
-    \new Voice = "un" @{
-      \autoBeamOff
-      \melodie
-    @}
-    \new Lyrics \lyricsto "un" \texte
-  >>
-  \layout @{ @}
-  \midi @{ @}
-@}
-@end example
-
-Maintenant, on veut ajouter une partie de violoncelle.
-Jetons un coup d'œil sur l'exemple avec les notes seules :
-
-@example
-\version @w{"@version{}"}
-melodie = \relative c' @{
-  \clef treble
-  \key c \major
-  \time 4/4
-
-  a4 b c d
-@}
-
-\score @{
-\new Staff \melodie
-\layout @{ @}
-\midi @{ @}
-@}
-@end example
-
-On n'a pas besoin de deux commandes @code{\version}.  Ce dont on a besoin,
-c'est de la section @code{melodie}. De même, on n'a pas besoin de deux sections
-@code{\score} --- si nous les gardions toutes les deux, on obtiendrait deux
-parties séparées ; mais nous voulons un vrai duo, avec les deux
-parties ensemble.  Dans la section @code{\score}, on n'a pas besoin
-non plus de deux @code{\layout} ni de deux @code{\midi}.
-
-Si on se contente de couper et coller les sections @code{melodie}, on se
-retrouvera avec deux sections de ce nom ; il nous faut donc les renommer.
-Appelons la section pour la soprano @code{sopranoMusique} et celle pour le
-violoncelle @code{violoncelleMusique}.  Tant qu'on y est, renommons 
-@code{texte} en @code{sopranoParoles}.  Attention à bien renommer les
-deux occurrences de chacune de ces dénominations : c'est-à-dire la
-définition de départ, où l'on trouve @code{melodie = relative c' @{ },
-et l'endroit où cette dénomination est utilisée, dans la section 
-@code{\score}.
-
-Et puis, toujours tant qu'on y est, mettons le violoncelle en clé de Fa, comme
-le veut l'usage, et donnons-lui d'autres notes.
-
-@example
-\version @w{"@version{}"}
-sopranoMusique = \relative c' @{
-  \clef treble
-  \key c \major
-  \time 4/4
-
-  a4 b c d
-@}
-
-sopranoParoles = \lyricmode @{
-  Laaa Siii Dooo Rééé
-@}
-
-violoncelleMusique = \relative c @{
-  \clef bass
-  \key c \major
-  \time 4/4
-
-  d4 g fis8 e d4
-@}
-
-\score@{
-  <<
-    \new Voice = "un" @{
-      \autoBeamOff
-      \sopranoMusique
-    @}
-    \new Lyrics \lyricsto "un" \sopranoParoles
-  >>
-  \layout @{ @}
-  \midi @{ @}
-@}
-@end example
-
-Voilà qui est mieux, mais la partie de violoncelle n'apparaît pas sur
-la partition --- en effet, nous n'y avons pas fait appel dans la section
-@code{\score}.  Si l'on veut que la partie de violoncelle s'imprime sous
-la partie de soprano, on va devoir ajouter :
-
-@example
-\new Staff \musiqueVioloncelle
-@end example
-
-@noindent
-en dessous de tout ce qui concerne la soprano.  Il nous faut également
-encadrer la musique par des @code{<<} et @code{>>}, qui feront comprendre
-à LilyPond que plusieurs événements --- ici, des objets @code{Staff} ---
-se déroulent en même temps.  Le bloc @code{\score} ressemble maintenant à
-
-@c Indentation in this example is deliberately poor
-@example
-\score @{
-  <<
-  <<
-    \new Voice = "un" @{
-      \autoBeamOff
-      \sopranoMusique
-    @}
-    \new Lyrics \lyricsto "un" \sopranoParoles
-  >>
-  \new Staff \violoncelleMusique
-  >>
-  \layout @{ @}
-  \midi @{ @}
-@}
-@end example
-
-@noindent
-C'est un peu le bazar dans tout ça ; mais il vous sera facile de
-mettre un peu d'ordre dans l'indentation.  Voici le modèle pour
-soprano et violoncelle au complet :
-
-@lilypond[quote,verbatim,ragged-right,addversion]
-sopranoMusic = \relative c' {
-  \clef treble
-  \key c \major
-  \time 4/4
-  a4 b c d
-}
-
-sopranoLyrics = \lyricmode {
-  Aaa Bee Cee Dee
-}
-
-celloMusic = \relative c {
-  \clef bass
-  \key c \major
-  \time 4/4
-  d4 g fis8 e d4
-}
-
-\score {
-  <<
-    <<
-      \new Voice = "one" {
-        \autoBeamOff
-        \sopranoMusic
-      }
-      \new Lyrics \lyricsto "one" \sopranoLyrics
-    >>
-    \new Staff \celloMusic
-  >>
-  \layout { }
-  \midi { }
-}
-@end lilypond
-
-
-@seealso
-Les patrons originaux sont disponibles à l'annexe @qq{Modèles}, voir
-@ref{Single staff}. 
-
-
-@node Four-part SATB vocal score
-@subsection Four-part SATB vocal score
-
-@cindex exemple, SATB
-@cindex SATB, squelette
-
-La plupart des œuvres écrites pour chœur à quatre voix mixtes et
-orchestre, comme Elias de Mendelssohn ou le Messie de Haendel, disposent
-la musique et les paroles du chœur sur quatre portées -- soprano, alto,
-ténor et basse -- surmontant une réduction pour piano de
-l'accompagnement orchestral.  En voici un exemple, tiré du Messie de
-Haendel :
-
-@c The following should appear as music without code
-@lilypond[quote,ragged-right]
-global = { \key d \major \time 4/4 }
-sopranoMusic = \relative c'' {
-  \clef "treble"
-  r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
-}
-sopranoWords = \lyricmode {
-  Wor -- thy is the lamb that was slain
-}
-altoMusic = \relative a' {
-  \clef "treble"
-  r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
-}
-altoWords = \sopranoWords
-tenorMusic = \relative c' {
-  \clef "G_8"
-  r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
-}
-tenorWords = \sopranoWords
-bassMusic = \relative c' {
-  \clef "bass"
-  r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
-}
-bassWords = \sopranoWords
-upper = \relative a' {
-  \clef "treble"
-  \global
-  r4 <a d fis>2 <a e' a>4 |
-  <d fis d'>4. <d fis d'>8 <a d a'>2 |
-  <g cis g'>4 <a d fis> <a cis e>2 |
-}
-lower = \relative c, {
-  \clef "bass"
-  \global
-  <d d'>4 <d d'>2 <cis cis'>4 |
-  <b b'>4. <b' b'>8 <fis fis'>2 |
-  <e e'>4 <d d'> <a' a'>2 |
-}
-
-\score {
-  <<  % combine ChoirStaff and PianoStaff in parallel
-    \new ChoirStaff <<
-      \new Staff = "sopranos" <<
-        \set Staff.instrumentName = #"Soprano"
-        \new Voice = "sopranos" { \global \sopranoMusic }
-      >>
-      \new Lyrics \lyricsto "sopranos" { \sopranoWords }
-      \new Staff = "altos" <<
-        \set Staff.instrumentName = #"Alto"
-        \new Voice = "altos" { \global \altoMusic }
-      >>
-      \new Lyrics \lyricsto "altos" { \altoWords }
-      \new Staff = "tenors" <<
-        \set Staff.instrumentName = #"Tenor"
-        \new Voice = "tenors" { \global \tenorMusic }
-      >>
-      \new Lyrics \lyricsto "tenors" { \tenorWords }
-      \new Staff = "basses" <<
-        \set Staff.instrumentName = #"Bass"
-        \new Voice = "basses" { \global \bassMusic }
-      >>
-      \new Lyrics \lyricsto "basses" { \bassWords }
-    >>  % end ChoirStaff
-
-    \new PianoStaff <<
-      \set PianoStaff.instrumentName = #"Piano"
-      \new Staff = "upper" \upper
-      \new Staff = "lower" \lower
-    >>
-  >>
-}
-@end lilypond
-
-Aucun des modèles ne permet d'arriver exactement à cette mise en forme.
-Celui qui s'en rapprocherait le plus est @qq{SATB vocal score and
-automatic piano reduction} -- voir @ref{Vocal ensembles} -- mais encore
-faudrait-il en modifier la mise en forme et refaire la partie de
-piano qui n'est plus une simple reprise des parties vocales.  Les
-variables qui gèrent la musique et les paroles du chœur ne nécessitent
-pas de modification, mais il nous faut d'autres variables pour la
-réduction de piano.
-
-L'ordre dans lequel apparaissent les contextes dans le @code{ChoirStaff}
-du modèle ne correspond pas à ce que nous voyons ci-dessus.  Il nous
-faudra y revenir pour obtenir quatre portées avec des paroles en dessous
-de chacune d'elles.  Toutes les voix devraient être @code{\voiceOne},
-ce qui est la position par défaut ; il nous faudra donc éliminer toutes
-les commandes @code{\voiceXXX}.  Les ténors auront besoin d'une clé
-spécifique.  Enfin, nous n'avons pas encore abordé la façon dont les
-paroles sont présentées dans le modèle ; nous procèderons donc comme
-nous en avons l'habitude.  Il faudra aussi ajouter un nom à chaque portée.
-
-Une fois tout ceci accompli, voici notre @code{ChoirStaff} :
-
-@example
-    \new ChoirStaff <<
-      \new Staff = "sopranos" <<
-        \set Staff.instrumentName = #"Soprano"
-        \new Voice = "sopranos" @{ \global \sopranoMusique @}
-      >>
-      \new Lyrics \lyricsto "sopranos" @{ \sopranoParoles @}
-      \new Staff = "altos" <<
-        \set Staff.instrumentName = #"Alto"
-        \new Voice = "altos" @{ \global \altoMusique @}
-      >>
-      \new Lyrics \lyricsto "altos" @{ \altoParoles @}
-      \new Staff = "tenors" <<
-        \set Staff.instrumentName = #"Tenor"
-        \new Voice = "tenors" @{ \global \tenorMusique @}
-      >>
-      \new Lyrics \lyricsto "tenors" @{ \tenorParoless @}
-      \new Staff = "basses" <<
-        \set Staff.instrumentName = #"Bass"
-        \new Voice = "basses" @{ \global \basseMusique @}
-      >>
-      \new Lyrics \lyricsto "basses" @{ \basseParoles @}
-    >>  % fin du ChoirStaff
-@end example
-
-Il nous faut maintenant nous occuper de la partie de piano.  Nous allons
-nous contenter de récupérer la partie de piano du modèle
-@q{Solo piano} :
-
-@example
-\new PianoStaff <<
-  \set PianoStaff.instrumentName = #"Piano  "
-  \new Staff = "upper" \superieur
-  \new Staff = "lower" \inferieur
->>
-@end example
-
-puis d'ajouter les définitions de variable pour @code{superieur} et
-@code{inferieur}. 
-
-Les systèmes pour chœur et pour piano doivent être combinés à l'aide de
-doubles chevrons gauche/droite puisqu'ils doivent s'empiler :
-
-@example
-<<  % combine ChoirStaff and PianoStaff one above the other
-  \new ChoirStaff <<
-    \new Staff = "sopranos" <<
-      \new Voice = "sopranos" @{ \global \sopranoMusique @}
-    >>
-    \new Lyrics \lyricsto "sopranos" @{ \sopranoParoless @}
-    \new Staff = "altos" <<
-      \new Voice = "altos" @{ \global \altoMusique @}
-    >>
-    \new Lyrics \lyricsto "altos" @{ \altoParoles @}
-    \new Staff = "tenors" <<
-      \clef "G_8"  % tenor clef
-      \new Voice = "tenors" @{ \global \tenorMusique @}
-    >>
-    \new Lyrics \lyricsto "tenors" @{ \tenorParoles @}
-    \new Staff = "basses" <<
-      \clef "bass"
-      \new Voice = "basses" @{ \global \bassesMusique @}
-    >>
-    \new Lyrics \lyricsto "basses" @{ \bassesParoles @}
-  >>  % end ChoirStaff
-
-  \new PianoStaff <<
-    \set PianoStaff.instrumentName = #"Piano"
-    \new Staff = "upper" \superieur
-    \new Staff = "lower" \inferieur
-  >>
->>
-@end example
-
-Une fois tout cela mis en place, et après avoir ajouté les notes et les
-paroles de ces trois mesures du Messie, nous obtenons :
-
-@lilypond[quote,verbatim,ragged-right,addversion]
-global = { \key d \major \time 4/4 }
-sopranoMusic = \relative c'' {
-  \clef "treble"
-  r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
-}
-sopranoWords = \lyricmode {
-  Wor -- thy is the lamb that was slain
-}
-altoMusic = \relative a' {
-  \clef "treble"
-  r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
-}
-altoWords = \sopranoWords
-tenorMusic = \relative c' {
-  \clef "G_8"
-  r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
-}
-tenorWords = \sopranoWords
-bassMusic = \relative c' {
-  \clef "bass"
-  r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
-}
-bassWords = \sopranoWords
-upper = \relative a' {
-  \clef "treble"
-  \global
-  r4 <a d fis>2 <a e' a>4 |
-  <d fis d'>4. <d fis d'>8 <a d a'>2 |
-  <g cis g'>4 <a d fis> <a cis e>2 |
-}
-lower = \relative c, {
-  \clef "bass"
-  \global
-  <d d'>4 <d d'>2 <cis cis'>4 |
-  <b b'>4. <b' b'>8 <fis fis'>2 |
-  <e e'>4 <d d'> <a' a'>2 |
-}
-
-\score {
-  <<  % combine ChoirStaff and PianoStaff in parallel
-    \new ChoirStaff <<
-      \new Staff = "sopranos" <<
-        \set Staff.instrumentName = #"Soprano"
-        \new Voice = "sopranos" { \global \sopranoMusic }
-      >>
-      \new Lyrics \lyricsto "sopranos" { \sopranoWords }
-      \new Staff = "altos" <<
-        \set Staff.instrumentName = #"Alto"
-        \new Voice = "altos" { \global \altoMusic }
-      >>
-      \new Lyrics \lyricsto "altos" { \altoWords }
-      \new Staff = "tenors" <<
-        \set Staff.instrumentName = #"Tenor"
-        \new Voice = "tenors" { \global \tenorMusic }
-      >>
-      \new Lyrics \lyricsto "tenors" { \tenorWords }
-      \new Staff = "basses" <<
-        \set Staff.instrumentName = #"Bass"
-        \new Voice = "basses" { \global \bassMusic }
-      >>
-      \new Lyrics \lyricsto "basses" { \bassWords }
-    >>  % end ChoirStaff
-
-    \new PianoStaff <<
-      \set PianoStaff.instrumentName = #"Piano  "
-      \new Staff = "upper" \upper
-      \new Staff = "lower" \lower
-    >>
-  >>
-}
-@end lilypond
-
-
-@node Building a score from scratch
-@subsection Building a score from scratch
-
-@cindex modèles, création
-@cindex squelettes, création
-
-Après avoir acquis une certaine dextérité dans l'écriture de code
-LilyPond, vous devez vous sentir suffisament prêt à vous lancer dans
-la création d'une partition à partir de zéro, autrement dit en ne
-partant pas d'un exemple.  Vous pourrez ainsi vous construire vos
-propres patrons selon le type de musique que vous affectionnez plus
-particulièrement.  Pour voir comment procéder, nous allons monter la
-partition d'un prélude pour orgue.
-
-Nous débutons par une section d'en-tête ; nous y mettrons entre autres
-le titre et le nom du compositeur.  Puis viennent toutes les définitions
-de toutes les variables. Nous terminons par le bloc @code{\score}.
-Attelons-nous pour cette aventure, en gardant bien à l'esprit ce que
-nous venons de dire ; nous nous occuperons des détails en temps voulu.
-
-Nous nous appuyons sur les deux premières mesures du prélude sur
-@emph{Jesu, meine Freude}, écrit pour orgue avec pédalier.  Vous pouvez
-voir ces deux mesures au bas de cette page.  La main droite comporte
-deux voix, la main gauche et le pédalier une seule.  Il nous faut donc
-quatre définitions de musique, plus une qui contiendra la métrique et
-l'armure :
-
-@example
-\version @w{"@version{}"}
-\header @{
-  title = "Jesu, meine Freude"
-  composer = "J S Bach"
-@}
-MetriqueArmure = @{ \time 4/4 \key c \minor @}
-ManuelUnVoixUnMusique = @{s1@}
-ManuelUnVoixDeuxMusique = @{s1@}
-ManuelDeuxMusique = @{s1@}
-PedalierOrgueMusique = @{s1@}
-
-\score @{
-@}
-@end example
-
-Pour l'instant, nous utilisons des silences invisibles, @code{s1}, en
-lieu et place des notes réelles.  On verra plus tard.
-
-Passons maintenant au bloc @code{\score} et à ce qu'il devrait contenir.
-Nous y recopions simplement la structure des portées que nous voulons.
-La musique pour orgue se présente généralement sous la forme de trois
-portées, une pour chaque main et une pour le pédalier.  Les portées du
-manuel sont regroupées, nous utiliserons donc un @code{PianoStaff}.  La
-première partie du manuel requiert deux voix et la seconde une seule.
-
-@example
-  \new PianoStaff <<
-    \new Staff = "ManuelUn" <<
-      \new Voice @{ \ManuelUnVoixUnMusique @}
-      \new Voice @{ \ManuelUnVoixDeuxMusique @}
-    >>  % fin du contexte de portée ManuelUn
-    \new Staff = "ManuelDeux" <<
-      \new Voice @{ \ManuelDeuxMusique @}
-    >>  % fin du contexte de portée ManuelDeux 
-  >>  % fin du contexte PianoStaff 
-@end example
-
-Il nous faut ajouter à cela une portée pour le pédalier.  Elle se place
-sous le système de piano, mais puisqu'elle doit rester synchrone avec
-lui, nous utilisons des doubles chevrons pour les regrouper.
-Négliger ceci nous renverrait une erreur, et personne n'est à l'abri de
-cette faute ! Pour preuve, il vous suffit de copier l'exemple complet en
-fin de chapitre, de supprimer ces @code{<<} et @code{>>}, et de le
-compiler, pour voir de quoi il retourne.
-
-@example
-<<  % Système pianistique et portée de pédalier sont synchrones 
-  \new PianoStaff <<
-    \new Staff = "ManuelUn" <<
-      \new Voice @{ \ManuelUnVoixUnMusique @}
-      \new Voice @{ \ManuelUnVoixDeuxMusique @}
-    >>  % fin du contexte de portée ManuelUn
-    \new Staff = "ManualDeux" <<
-      \new Voice @{ \ManuelDeuxMusique @}
-    >>  % fin du contexte de portée ManuelDeux 
-  >>  % fin du contexte PianoStaff 
-  \new Staff = "PedalierOrgue" <<
-    \new Voice @{ \PedalierOrgueMusique @}
-  >>
->>
-@end example
-
-La construction en simultané -- @code{<< .. >>} -- n'est pas strictement
-obligatoire pour les portées manuel deux et pédalier, qui ne contiennent
-chacune qu'une seule expression musicale ; mais cela ne mange pas de
-pain, et c'est une bonne habitude que de toujours encadrer par des
-doubles chevrons gauche/droite ce qui suit une commande @code{\new
-Staff} au cas où il y aurait plusieurs voix.  Il en va autrement pour
-les contextes @code{Voice} : ils doivent être toujours suivis
-d'accolades --  @code{@{ .. @}} --  au cas où vous auriez employé
-plusieurs variables qui doivent intervenir consécutivement.
-
-Ajoutons donc cette structure au bloc @code{\score}, tout en fignolant
-l'indentation.  Nous en profitons pour ajouter les clés appropriées,
-effectuer les réglages concernant les hampes et liaisons de la portée
-supérieure grâce à @code{\voiceOne} et @code{\voiceTwo}, et mettre en
-place la métrique et l'armure de chaque portée grâce à notre variable
-@code{\MetriqueArmure}. 
-
-@example
-\score @{
-  <<  % Système pianistique et portée de pédalier sont synchrones 
-    \new PianoStaff <<
-      \new Staff = "ManuelUn" <<
-        \TimeKey  % définition de la métrique et de l'armure
-        \clef "treble"
-        \new Voice @{ \voiceOne \ManuelUnVoixUnMusique @}
-        \new Voice @{ \voiceTwo \ManuelUnVoixDeuxMusique @}
-      >>  % fin du contexte de la portée ManuelUn
-      \new Staff = "ManuelDeux" <<
-        \TimeKey
-        \clef "bass"
-        \new Voice @{ \ManuelDeuxMusique @}
-      >>  % fin du contexte de la portée ManuelDeux
-    >>  % fin du contexte PianoStaff
-    \new Staff = "PedalierOrgue" <<
-      \TimeKey
-      \clef "bass"
-      \new Voice @{ \PedalierOrgueMusique @}
-    >>  % fin du contexte de la portée PedalOrgan
-  >>
-@}  % fin du contexte Score
-@end example
-
-Nous en avons fini avec la structure.  Toutes les partitions pour orgue
-auront cette structure, même si le nombre de voix peut changer.  Tout ce
-qui nous reste à faire maintenant consiste à saisir la musique et à
-regrouper toutes les parties.
-
-@lilypond[quote,verbatim,ragged-right,addversion]
-\header {
-  title = "Jesu, meine Freude"
-  composer = "J S Bach"
-}
-TimeKey = { \time 4/4 \key c \minor }
-ManualOneVoiceOneMusic = \relative g' {
-  g4 g f ees | d2 c2 |
-}
-ManualOneVoiceTwoMusic = \relative c' {
-  ees16 d ees8~ ees16 f ees d c8 d~ d c~ |
-  c c4 b8 c8. g16 c b c d |
-}
-ManualTwoMusic = \relative c' {
-  c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
-  f ees f d g aes g f ees d e8~ ees16 f ees d |
-}
-PedalOrganMusic = \relative c {
-  r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
-  r16 g ees f g f g8 c,2 |
-  }
-
-\score {
-  <<  % PianoStaff and Pedal Staff must be simultaneous
-    \new PianoStaff <<
-      \new Staff = "ManualOne" <<
-        \TimeKey  % set time signature and key
-        \clef "treble"
-        \new Voice { \voiceOne \ManualOneVoiceOneMusic }
-        \new Voice { \voiceTwo \ManualOneVoiceTwoMusic }
-      >>  % end ManualOne Staff context
-      \new Staff = "ManualTwo" <<
-        \TimeKey
-        \clef "bass"
-        \new Voice { \ManualTwoMusic }
-      >>  % end ManualTwo Staff context
-    >>  % end PianoStaff context
-    \new Staff = "PedalOrgan" <<
-      \TimeKey
-      \clef "bass"
-      \new Voice { \PedalOrganMusic }
-    >>  % end PedalOrgan Staff context
-  >>
-}  % end Score context
-@end lilypond
-
-