]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/user/fundamental.itely
If page-count is set, don't try spacing on fewer pages than specified.
[lilypond.git] / Documentation / fr / user / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
2 @c This file is part of lilypond-learning.tely
3 @ignore
4     Translation of GIT committish: 007d0b5b94c36f9d9e228309d5b0e6a67ae27ebc
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10 @c Translators: Valentin Villenave
11 @c Translation checkers: Jean-Charles Malahieude, John Mandereau
12
13 @node Fundamental concepts
14 @chapter Fundamental concepts
15
16
17 @menu
18 * How LilyPond files work::
19 * Voices contain music::
20 * Contexts and engravers::
21 * Extending the templates::
22 @end menu
23
24 @node How LilyPond files work
25 @section How LilyPond files work
26
27 La mise en forme des fichiers d'entrée de LilyPond est vraiment
28 peu astreignante, afin d'offrir assez de souplesse aux utilisateurs
29 expérimentés pour qu'ils puissent organiser leurs fichiers comme
30 ils l'entendent.  Cependant, les nouveaux utilisateurs peuvent parfois
31 se perdre en raison de cette souplesse.  Cette section présente
32 sommairement l'organisation du code LilyPond, en privilégiant
33 la simplicité au détriment de certains détails.  Vous trouverez une
34 description plus complète dans @ruser{File structure}.
35
36 @menu 
37 * Introduction to the LilyPond file structure::
38 * Score is a (single) compound musical expression::
39 * Nesting music expressions::
40 * On the un-nestedness of brackets and ties::
41 @end menu
42
43 @node Introduction to the LilyPond file structure
44 @subsection Introduction to the LilyPond file structure
45
46 @c FIXME this subsection translation is very outdated
47 @c but wait until it is in a stable state in English
48
49 La plupart des exemples de ce manuel sont de courts fragments, par exemple
50
51 @example
52 c4 a b c
53 @end example
54
55 Comme vous le savez maintenant (du moins nous l'espèrons), ceci ne
56 peut pas être traité en tant que tel. Il s'agit de formes abrégées des
57 exemples complets ; pour pouvoir être traitées, ces formeulations
58 doivent au moins être encadrées par des accolades :
59
60 @example
61 @{
62   c4 a b c
63 @}
64 @end example
65
66 La plupart des exemples font aussi intervenir la commande
67 @code{\relative}, suivie de @code{c'} ou @code{c''}.  Elle n'est pas à
68 proprement parler nécessaire pour le traitement des exemples, mais
69 dans la plupart des cas le résultat sera vraiment déplorable si vous
70 l'oubliez.
71
72 @lilypond[quote,fragment,ragged-right,verbatim]
73 \relative c'' {
74   c4 a b c
75 }
76 @end lilypond
77
78 C'est ici que nous passons aux choses sérieuses : le code LilyPond,
79 sous cette forme, est en réalité un @emph{autre} raccourci. Même s'il
80 est traité sans problème, et aboutit au bon résultat, c'est une forme
81 abrégée de :
82
83 @example
84 \score @{
85   \relative c'' @{
86     c4 a b c
87   @}
88 @}
89 @end example
90
91 Un bloc @code{\score} doit commencer par une et une seule expression
92 musicale. Rappelez-vous que cette expression peut être ce que vous
93 voulez, d'une note toute seule à un gigantesque
94
95 @example
96 @{
97   \new GrandStaff <<
98     collez ici la partition complète de votre opéra de Wagner préféré
99   >>
100 @}
101 @end example
102
103 @noindent
104 Dès lors que tout cela est entre accolades : @code{@{ ... @}}, c'est
105 une et une seule expression musicale.
106
107 Le bloc @code{\score} peut contenir d'autres éléments, tels que
108
109 @example
110 \score @{
111   @{ c'4 a b c' @}
112   \layout @{ @}
113   \midi @{ @}
114   \header @{ @}
115 @}
116 @end example
117
118 @noindent
119 Certains préfèrent mettre ces commandes en dehors du bloc 
120 @code{\score} --- par exemple, on met souvent le @code{\header}
121 au-dessus. C'est juste là une autre forme abrégée que LilyPond
122 accepte.
123
124 @cindex variables
125 @cindex identificateurs
126
127 Un autre raccourci pratique est la possibilité de définir
128 des variables --- également appelées @qq{identificateurs}. Dans tous
129 les modèles, vous trouverez :
130
131 @example
132 melodie = \relative c' @{
133   c4 a b c
134 @}
135
136 \score @{
137   @{ \melodie @}
138 @}
139 @end example
140
141 Lorsque LilyPond examinera ce fichier, il va prendre la valeur de la
142 variable @code{melodie}, c'est-à-dire tout ce qui suit le signe @code{=},
143 et l'insérer partout où il rencontrera @code{\melodie}.  Vous êtes
144 libre de choisir comment dénommer vos variables@footnote{Les noms de
145 variables sont sensibles à la casse, et ne peuvent contenir ni
146 chiffre, ni tiret, ni caractère accentué.} ; ce peut être
147 @code{melodie}, @code{global}, @code{maindroitepiano}, ou
148 @code{laTeteAToto}.  Pour plus de détails, voir @ruser{Saving typing
149 with identifiers and functions}.
150
151 Pour une description complète du format des fichiers d'entrée, voir 
152 @ruser{File structure}.
153
154
155 @node Score is a (single) compound musical expression
156 @subsection Score is a (single) compound musical expression
157
158 Dans la section précédente, nous avons vu l'organisation générale des
159 fichiers d'entrée de LilyPond.  Mais c'est comme si nous avions éludé la
160 question essentielle : comment diable peut-on savoir quoi mettre après
161 @code{\score} ?
162
163 En fait, nous ne l'avons pas éludée du tout : le grand mystère est
164 tout simplement qu'il n'y a @emph{pas} de mystère.  Allez,
165 expliquons-le en une ligne :
166
167 @quotation
168 @emph{Un bloc @code{\score} doit commencer par une et une seule
169 expression musicale.}
170 @end quotation
171
172 @noindent
173 Peut-être serait-il judicieux de relire la section
174 @ruser{Music expressions explained}, dans laquelle vous avez
175 appris à construire de grandes expressions musicales petit bout
176 par petit bout --- nous avons vu les notes, puis les accords, etc.
177 Maintenant, nous allons partir d'une grande expression musicale,
178 et remonter la pente.
179
180 @example
181 \score @{
182   @{   % cette accolade marque le début de l'expression musicale
183     \new GrandStaff <<
184     insérez ici votre opéra de Wagner préféré
185     >>
186   @}   % cette accolade marque la fin de l'expression musicale
187   \layout @{ @}
188 @}
189 @end example
190
191 Un opéra de Wagner multiplierait facilement la longueur de ce manuel
192 par deux ou trois, alors faisons-le en version chant/piano.  On n'a
193 plus besoin d'une partition d'orchestre --- @code{GrandStaff} --- donc
194 laissons cela de côté.  Par contre, un chanteur et un piano
195 @emph{pourraient} nous être utiles.
196
197 @example
198 \score @{
199   @{
200     <<
201       \new Staff = "chanteur" <<
202       >>
203       \new PianoStaff = piano <<
204       >>
205     >>
206   @}
207   \layout @{ @}
208 @}
209 @end example
210
211 Vous vous souvenez que nous avons recours à @code{<<} et @code{>>}
212 pour mettre en place des musiques simultanées.  Et, pour le
213 coup, on aimerait @emph{vraiment} que la partie vocale et l'accompagnement
214 soient imprimés ensemble...
215
216 @example
217 \score @{
218   @{
219     <<
220       \new Staff = "chanteur" <<
221         \new Voice = "chant" @{ @}
222       >>
223       \new Lyrics \lyricsto chant \new Lyrics @{ @}
224       \new PianoStaff = "piano" <<
225         \new Staff = "mainDroite" @{ @}
226         \new Staff = "mainGauche" @{ @}
227       >>
228     >>
229   @}
230   \layout @{ @}
231 @}
232 @end example
233
234 On y voit nettement plus clair maintenant.  Nous voici donc avec la
235 partie du chanteur, qui contient un ensemble @code{Voice}, ce qui dans
236 LilyPond correspond à une voix, au sens de voix d'une polyphonie plutôt que
237 de voix chantée --- ce pourrait être une partie de violon par
238 exemple.
239
240 Nous avons également une partie de piano, qui contient deux portées :
241 une pour la main droite, une autre pour la main gauche.
242
243
244 À ce point, on pourrait commencer à ajouter les notes. Dans les
245 accolades qui suivent @code{\new Voice = chant}, on pourrait commencer
246 à écrire
247
248 @example
249 \relative c'' @{
250   a4 b c d
251 @}
252 @end example
253
254 Mais si l'on procédait ainsi, la section @code{\score} deviendrait
255 vite assez touffue, et très rapidement on ne s'y retrouverait plus.
256 C'est pourquoi on utilisera plutôt des variables, ou identificateurs :
257
258 @example
259 melodie = @{ @}
260 texte = @{ @}
261 mainDroite = @{ @}
262 mainGauche = @{ @}
263 \score @{
264   @{
265     <<
266       \new Staff = "chanteur" <<
267         \new Voice = "chant" @{ \melodie @}
268       >>
269       \new Lyrics \lyricsto chant \new Lyrics @{ \texte @}
270       \new PianoStaff = "piano" <<
271         \new Staff = "mainDroite" @{ \mainDroite @}
272         \new Staff = "mainGauche" @{ \mainGauche @}
273       >>
274     >>
275   @}
276   \layout @{ @}
277 @}
278 @end example
279
280 @noindent
281 Souvenez-vous que vous pouvez donner aux variables le nom que vous
282 voulez, à condition de respecter les caractères autorisés. Ces
283 limitations sont décrites dans @ruser{File structure}.
284
285 Quand on écrit, ou que l'on lit, une section @code{\score}, mieux vaut
286 y aller lentement et soigneusement. Commencez par le niveau le plus
287 large, puis travaillez sur chaque niveau plus détaillé.  À ce propos,
288 une indentation stricte et propre est vraiment d'une aide précieuse :
289 assurez-vous que chaque élément d'un même niveau a le même décalage
290 horizontal dans votre éditeur de texte !
291
292
293
294 @node Nesting music expressions
295 @subsection Nesting music expressions
296
297 UNTRANSLATED NODE: IGNORE ME
298
299 @node On the un-nestedness of brackets and ties
300 @subsection On the un-nestedness of brackets and ties
301
302 UNTRANSLATED NODE: IGNORE ME
303
304 @node Voices contain music
305 @section Voices contain music
306
307 UNTRANSLATED NODE: IGNORE ME
308
309 @menu
310 * I'm hearing Voices::
311 * Explicitly instantiating voices::
312 * Voices and vocals::
313 @end menu
314
315 @node I'm hearing Voices
316 @subsection I'm hearing Voices
317
318 UNTRANSLATED NODE: IGNORE ME
319
320 @node Explicitly instantiating voices
321 @subsection Explicitly instantiating voices
322
323 Les contextes @internalsref{Voice} peuvent être déclarés manuellement
324 dans un bloc @code{<< >>} pour créer de la musique polyphonique, en
325 utilisant @code{\voiceOne}, @dots{} jusqu'à @code{\voiceFour} pour
326 assigner des directions de hampes et un déplacement horizontal pour
327 chaque partie.
328
329 En particulier,
330 @example
331 << \upper \\ \lower >>
332 @end example
333
334 @noindent
335 équivaut à
336
337 @example
338 <<
339  \new Voice = "1" @{ \voiceOne \upper @}
340  \new Voice = "2" @{ \voiceTwo \lower @}
341 >>
342 @end example
343
344 Les commandes @code{\voiceXXX} fixent la direction des hampes, des
345 liaisons de prolongations et de phrasé, des articulations, des
346 annotations, des points d'augmentation des notes pointées et des
347 doigtés.  @code{\voiceOne} et @code{\voiceThree} font pointer ces objets
348 vers le haut, alors que @code{\voiceTwo} et @code{\voiceFour} les font
349 pointer vers le bas.  La commande @code{\oneVoice} les ramène aux
350 critères normaux.
351
352 Une expression séquentielle qui apparaît en premier dans un @code{<< >>}
353 appartient à la voix principale.  Ceci est utile lorsque des voix
354 supplémentaires apparaissent pendant que la voix principale est jouée.
355 Voici une meilleure réalisation de l'exemple de la section précédente.
356 Les notes colorées et en croix mettent en évidence le fait que la mélodie principale
357 est maintenant dans un seul contexte de voix.
358
359 @lilypond[quote,ragged-right,verbatim]
360 \new Staff \relative c' {
361   \override NoteHead #'style = #'cross
362   \override NoteHead #'color = #red
363   c16 d e f
364   \voiceOne
365   <<
366     { g4 f e | d2 e2 }
367     \new Voice="1" { \voiceTwo
368       r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
369       \oneVoice
370     }
371     \new Voice { \voiceThree
372       s2. | s4 b4 c2
373       \oneVoice
374     }
375   >>
376   \oneVoice
377 }
378 @end lilypond
379
380 La définition correcte des voix permet à la mélodie d'être liée.
381 @lilypond[quote,ragged-right,verbatim]
382 \new Staff \relative c' {
383   c16^( d e f
384   \voiceOne
385   <<
386     { g4 f e | d2 e2) }
387     \context Voice="1" { \voiceTwo
388       r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
389       \oneVoice
390     }
391     \new Voice { \voiceThree
392       s2. s4 b4 c2
393       \oneVoice
394     }
395   >>
396   \oneVoice
397 }
398 @end lilypond
399
400 Le fait d'éviter le séparateur @code{\\} permet aussi d'imbriquer des
401 constructions polyphoniques, ce qui peut être une manière plus naturelle
402 de saisir la musique.
403
404 @lilypond[quote,ragged-right,verbatim]
405 \new Staff \relative c' {
406   c16^( d e f
407   \voiceOne
408   <<
409     { g4 f e | d2 e2) }
410     \context Voice="1" { \voiceTwo
411       r8 e4 d c8 ~ |
412       <<
413         {c8 b16 a b8 g ~ g2}
414         \new Voice { \voiceThree
415           s4 b4 c2
416           \oneVoice
417         }
418       >>
419     \oneVoice
420     }
421   >>
422   \oneVoice
423 }
424 @end lilypond
425
426 Dans certaines circonstances de polyphonie complexe, vous pourrez être
427 amené à recourir à des voix supplémentaires afin d'éviter des collisions
428 de notes.  Ces voix additionnelles s'ajoutent en définissant un
429 identificateur, comme le montre l'exemple suivant :
430
431 @lilypond[quote,verbatim,ragged-right,relative=2]
432 voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
433
434 \relative c''' <<
435   { \voiceOne g4 ~  \stemDown g32[ f( es d c b a b64 )g] } \\
436   { \voiceThree  b4} \\
437   { \voiceFive d,} \\
438   { \voiceTwo g,}
439 >>
440 @end lilypond
441
442
443 @node Voices and vocals
444 @subsection Voices and vocals
445
446 UNTRANSLATED NODE: IGNORE ME
447
448 @node Contexts and engravers
449 @section Contexts and engravers
450
451 Nous avons évoqué rapidement les contextes et graveurs dans les sections
452 précédentes ; examinons en détail ces concepts essentiels dans la
453 maîtrise de LilyPond.
454
455 @menu
456 * Contexts explained::
457 * Creating contexts::
458 * Engravers explained::
459 * Modifying context properties::
460 * Adding and removing engravers::
461 @end menu
462
463 @node Contexts explained
464 @subsection Contexts explained
465
466 Imprimer de la musique impose d'ajouter un certain nombre d'éléments de notation.
467 Par exemple, voici un fragment de partition, précédé du code qui l'engendre :
468
469 @lilypond[quote,verbatim,relative=2,fragment]
470 cis4 cis2. g4
471 @end lilypond
472
473 Si le code est assez austère, dans la parition ont été ajoutés un chiffre de mesure,
474 des barres de mesure, des altérations et une clé.  Pour une bonne raison : LilyPond
475 @emph{interprète} le code.  Il le compulse dans l'ordre chronologique, de même qu'on
476 lit une partition de gauche à droite ; et pendant ce traitement, le logiciel garde en
477 mémoire les limites des mesures, ou encore quelles hauteurs de notes demandent des
478 altérations accidentelles.  Ces informations se présentent à plusieurs niveaux : ainsi,
479 une altération n'a d'effet que sur une seule portée, tandis qu'une barre de mesure doit
480 être synchronisée sur toute l'étendue verticale de la partition.
481
482 LilyPond regroupe ces règles et ces fragments d'information dans des
483 @emph{Contextes}.  Certains contextes sont les voix (contexte @context{Voice}),
484 les portées (contexte @context{Staff}), ou la partition dans son ensemble
485 (contexte @context{Score}).  Ils sont ordonnés hiérarchiquement : ainsi un
486 contexte @context{Staff} peut contenir plusieurs contextes @context{Voice}, et un
487 contexte @context{Score} peut contenir plusieurs contextes @context{Staff}.
488
489 @quotation
490 @image{context-example,5cm,,}
491 @end quotation
492
493 Chaque contexte est chargé de faire appliquer certaines règles de gravure,
494 de créer certains objets, et de prendre en compte les propriétés qui leur
495 sont associées.  Ainsi, le contexte @context{Voice} peut faire intervenir une
496 altération accidentelle, puis le contexte @context{Staff} devra déterminer si
497 cette dernière devra être imprimée ou non dans la suite de la mesure.  Les barres
498 de mesure, enfin, sont alignées verticalement grâce au contexte @context{Score}.
499
500 En revanche, dans une musique polymétrique, par exemple mélant une portée à 3/4
501 et une autre à 4/4, les barres de mesures n'ont plus à être alignées : il faut alors 
502 modifier les comportement par défaut des contextes @context{Score} et @context{Staff}.
503
504 Dans une partition très simple, les contextes sont créés implicitement, et peuvent
505 être ignorés.  Mais lorsqu'il s'agit de morceaux plus amples -- entendons par là tout
506 ce qui s'écrit sur plus d'une portée -- il faut les créer explicitement pour être sûr
507 d'obtenir toutes les portées nécessaires, et dans le bon ordre.  Enfin pour des
508 morceaux impliquant une notation spéciale, modifier les contextes ou en créer de nouveaux
509 devient extrêment utile.
510
511 Une description exhaustive de tous les contextes disponibles peut être trouvée dans la
512 référence du programme : voir
513 @ifhtml
514 @internalsref{Contexts}.
515 @end ifhtml
516 @ifnothtml
517 Translation @expansion{} Context.
518 @end ifnothtml
519
520 @c [TODO: describe propagation]
521
522
523 @node Creating contexts
524 @subsection Creating contexts
525
526 Dans une partition contenant une seule voix sur une seule portée,
527 les contextes sont automatiquement créés.  Dans une partition plus complexe,
528 il faut les crééer à la main.  Trois commandes le permettent :
529
530 @itemize @bullet
531
532 @item
533 La plus facile, et la plus rapide à saisir, est @code{\new} -- @qq{nouveau} en français.
534 Elle introduit une expression musicale, comme suit :
535
536 @funindex \new
537 @cindex nouveaux contextes
538 @cindex Contextes, création de
539
540 @example
541 \new @var{Contexte} @var{expression musicale}
542 @end example
543
544 @noindent
545 le choix du @var{Contexte} pouvant être, par exemple, @code{Staff} ou
546 @code{Voice}.  Cette commande crée un contexte, puis interprète 
547 l'@var{expression musicale} dans ledit contexte.
548
549 En pratique, la commande @code{\new} peut servir dans une partition
550 comprenant plusieurs portées.  Comme chaque partie doit se trouver sur sa propre
551 portée, il faut la faire précéder de @code{\new Staff}.
552
553 @lilypond[quote,verbatim,relative=2,ragged-right,fragment]
554 <<
555   \new Staff { c4 c }
556   \new Staff { d4 d }
557 >>
558 @end lilypond
559
560 La commande @code{\new} peut aussi permettre de nommer le contexte créé :
561
562 @example
563 \new @var{Contexte} = @var{"inventezUnNom"} @var{musique}
564 @end example
565 Le nom que vous choisirez ne pourra être attribué que si aucun autre contexte
566 n'a été créé précédemment avec le même nom.
567
568
569 @funindex \context
570
571 @item
572 Tout comme @code{\new}, la commande @code{\context} envoie une expression musicale
573 vers un contexte donné, mais attribue nécessairement un nom à ce contexte.  La
574 syntaxe est la suivante :
575
576 @example
577 \context @var{Contexte} = @var{unNom} @var{musique}
578 @end example
579
580 Cette commande va partir à la recherche d'un contexte déjà existant, de type
581 @var{Contexte}, et portant le nom @var{unNom}.  Ce qui peut être fort utile 
582 pour se référer à un contexte existant.  S'il s'avère que le contexte en question
583 n'existe pas encore, il est créé.  Dans le cas de musique vocale avec des paroles,
584 cela donne :
585
586 @example
587 \context Voice = "@b{tenor}" @var{musique}
588 @end example
589
590 @noindent
591 et (pour que le texte soit aligné correctement avec les notes) :
592
593 @example
594 \new Lyrics \lyricsto "@b{tenor}" @var{paroles}
595 @end example
596
597 @noindent
598
599 Une autre utilité de dénommer les contextes est de superposer en un même
600 contexte différentes expressions musicales.  Dans l'exemple suivant, les
601 notes et les ponctuations ont été saisies séparément :
602
603 @example
604 musique = @{ c4 c4 @}
605 ponctuation = @{ s4-. s4-> @}
606 @end example
607
608 En les envoyant toutes deux dans le même contexte @context{Voice}, on les combine :
609
610 @example
611 <<
612   \new Staff \context Voice = "A" \musique
613   \context Voice = "A" \ponctuation
614 >>
615 @end example
616 @lilypond[quote,ragged-right]
617 music = { c4 c4 }
618 arts = { s4-. s4-> }
619 \relative c'' <<
620   \new Staff \context Voice = "A" \music
621   \context Voice = "A" \arts
622 >>
623 @end lilypond
624
625 De cette façon, il est possible d'élaborer une édition Urtext (c'est-à-dire originale,
626 la plupart du temps sans ponctuations), en laissant la possibilité d'ajouter différentes
627 ponctuations sur les mêmes notes.
628
629 @cindex crééer des contextes
630
631 @item
632 La dernière commande pour créer des contextes est
633 @example
634 \context @var{Contexte} @var{musique}
635 @end example
636
637
638 @noindent
639 Elle ressemble à l'emploi de @code{\context} avec @code{= @var{unNom}}, mais
640 cette fois elle se considèrera chez elle partout où elle trouvera un contexte
641 de type @var{Contexte}, quel que puisse être son nom.
642
643 @c Au secours ! --vv
644
645 Cette variante sert à des expressions musicales qui peuvent être interprétées à
646 plusieurs niveaux.  Par exemple, une commande telle que @code{\applyOutput} (voir
647 @c FIXME: broken link
648 @c @ref{Running a function on all layout objects}) : si elle n'est pas associée avec
649 @code{\context}, elle s'applique par défaut dans le contexte @context{Voice}.
650
651 @example
652 \applyOutput #'@var{Contexte} #@var{fonction}   % s'applique dans le contexte Voice
653 @end example
654
655 Pour l'appliquer au contexte @context{Score} ou @context{Staff}, il faut utiliser :
656
657 @example
658 \applyOutput #'Score #@var{fonction}
659 \applyOutput #'Staff #@var{fonction}
660 @end example
661
662 @end itemize
663
664
665 @node Engravers explained
666 @subsection Engravers explained
667
668 UNTRANSLATED NODE: IGNORE ME
669
670 @node Modifying context properties
671 @subsection Modifying context properties
672
673 UNTRANSLATED NODE: IGNORE ME
674
675 @node Adding and removing engravers
676 @subsection Adding and removing engravers
677
678 UNTRANSLATED NODE: IGNORE ME
679
680
681 @node Extending the templates
682 @section Extending the templates
683
684 Bon, vous avez lu le tutoriel, vous savez écrire de la musique.  Mais
685 comment obtenir les portées que vous voulez ?  Les @ref{Templates},
686 c'est bien beau, mais que faire quand ils ne traitent pas ce que l'on
687 veut précisément ?
688
689 Les exemples qui suivent vous donneront des méthodes générales pour
690 adapter des modèles.
691
692 @menu
693 * Soprano and cello::
694 * Four-part SATB vocal score::
695 * Building a score from scratch::
696 @end menu
697
698 @node Soprano and cello
699 @subsection Soprano and cello
700
701 Commencez par le modèle qui vous semblera le plus proche de ce à quoi
702 vous voulez aboutir.  Disons par exemple que vous voulez écrire une pièce
703 pour soprano et violoncelle : dans ce cas l'on pourrait commencer par les
704 @qq{notes et paroles}, pour la partie de soprano.
705
706 @example
707 \version "2.11.38"
708 melodie = \relative c' @{
709   \clef treble
710   \key c \major
711   \time 4/4
712
713   a4 b c d
714 @}
715
716 texte = \lyricmode @{
717   Laaa Siii Dooo Rééé
718 @}
719
720 \score@{
721   <<
722     \new Voice = "voixUn" @{
723       \autoBeamOff
724       \melodie
725     @}
726     \new Lyrics \lyricsto "voixUn" \texte
727   >>
728   \layout @{ @}
729   \midi @{ @}
730 @}
731 @end example
732
733 Maintenant, on veut ajouter une partie de violoncelle.
734 Jetons un coup d'oeil sur l'exemple avec les notes seules :
735
736 @example
737 \version "2.11.38"
738 melodie = \relative c' @{
739   \clef treble
740   \key c \major
741   \time 4/4
742
743   a4 b c d
744 @}
745
746 \score @{
747 \new Staff \melodie
748 \layout @{ @}
749 \midi @{ @}
750 @}
751 @end example
752
753
754 On n'a pas besoin de deux commandes @code{\version}.  Ce dont on a besoin,
755 c'est la section @code{melodie}. De même, on n'a pas besoin de deux sections
756 @code{\score} --- si nous les gardions toutes les deux, on obtiendrait deux
757 parties séparées ; mais nous voulons un vrai duo, avec les deux
758 parties ensemble.  Dans la section @code{\score}, on n'a pas besoin
759 non plus de deux @code{\layout} ni de deux @code{\midi}.
760
761 Si on se contente de couper et coller les sections @code{melodie}, on se
762 retrouvera avec deux sections de ce nom ; il nous faut donc les renommer.
763 Appelons la section pour la soprano @code{musiqueSoprano} et celle pour le
764 violoncelle @code{musiqueVioloncelle}.  Tant qu'on y est, renommons 
765 @code{texte} en @code{parolesSoprano}.  Attention à bien renommer les
766 deux occurrences de chacune de ces dénominations : c'est-à-dire la
767 définition de départ, où l'on trouve @code{mélodie = relative c' @{ },
768 et l'endroit où cette dénomination est utilisée, dans la section 
769 @code{\score}.
770
771 Et puis, toujours tant qu'on y est, mettons le violoncelle en clé de Fa, comme
772 le veut l'usage, et donnons-lui d'autres notes.
773
774 @example
775 \version "2.11.38"
776 musiqueSoprano = \relative c' @{
777   \clef treble
778   \key c \major
779   \time 4/4
780
781   a4 b c d
782 @}
783
784 parolesSoprano = \lyricmode @{
785   Laaa Siii Dooo Rééé
786 @}
787
788 musiqueVioloncelle = \relative c @{
789   \clef bass
790   \key c \major
791   \time 4/4
792
793   d4 g fis8 e d4
794 @}
795
796 \score@{
797   <<
798     \new Voice = "voixUn" @{
799       \autoBeamOff
800       \musiqueSoprano
801     @}
802     \new Lyrics \lyricsto "voixUn" \parolesSoprano
803   >>
804   \layout @{ @}
805   \midi @{ @}
806 @}
807 @end example
808
809 Voilà qui est mieux, mais la partie de violoncelle n'apparaît pas sur
810 la partition --- en effet, nous n'y avons pas fait appel dans la section
811 @code{\score}.  Si l'on veut que la partie de violoncelle s'imprime sous
812 la partie de soprano, on va devoir ajouter :
813
814 @example
815 \new Staff \musiqueVioloncelle
816 @end example
817
818 @noindent
819 en dessous de tout ce qui concerne la soprano.  Il nous faut également
820 encadrer la musique par des @code{<<} et @code{>>}, qui feront comprendre
821 à LilyPond que plusieurs évènements --- ici, des objets @code{Staff} ---
822 se déroulent en même temps.  Le bloc @code{\score} ressemble maintenant à
823
824 @example
825 \score@{
826   <<
827     <<
828       \new Voice = "voixUn" @{
829         \autoBeamOff
830         \musiqueSoprano
831       @}
832       \new Lyrics \lyricsto "voixUn" \parolesSoprano
833     >>
834     \new Staff \musiqueVioloncelle
835   >>
836   \layout @{ @}
837   \midi @{ @}
838 @}
839 @end example
840
841 @noindent
842 C'est un peu le bazar dans tout ça ; mais il vous sera facile de
843 mettre un peu d'ordre dans l'indentation.  Voici le modèle pour
844 soprano et violoncelle au complet :
845
846 @lilypond[quote,verbatim,ragged-right]
847 \version "2.11.38"
848 sopranoMusic = \relative c' {
849   \clef treble
850   \key c \major
851   \time 4/4
852
853   a4 b c d
854 }
855
856 sopranoLyrics = \lyricmode {
857   Aaa Bee Cee Dee
858 }
859
860 celloMusic = \relative c {
861   \clef bass
862   \key c \major
863   \time 4/4
864
865   d4 g fis8 e d4
866 }
867
868 \score{
869   <<
870     <<
871       \new Voice = "one" {
872         \autoBeamOff
873         \sopranoMusic
874       }
875       \new Lyrics \lyricsto "one" \sopranoLyrics
876     >>
877     \new Staff \celloMusic
878   >>
879   \layout { }
880   \midi { }
881 }
882 @end lilypond
883
884
885 @node Four-part SATB vocal score
886 @subsection Four-part SATB vocal score
887
888 UNTRANSLATED NODE: IGNORE ME
889
890 @node Building a score from scratch
891 @subsection Building a score from scratch
892
893 UNTRANSLATED NODE: IGNORE ME
894