]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/user/introduction.itely
Merge master into nested-bookparts
[lilypond.git] / Documentation / fr / user / introduction.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
2 @c This file is part of lilypond-kearning.tely
3 @ignore
4     Translation of GIT committish: 1e3ef555477a299a695c35ccc0aaabe855bdd541
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 \version "2.11.61"
11
12 @c Translators: Ludovic Sardain, John Mandereau
13 @c Translation checkers: Jean-Charles Malahieude, Jean-Yves Baudais
14 @c Translation status: post-GDP
15
16
17 @node Introduction
18 @chapter Introduction
19
20 Ce chapitre constitue une première présentation de LilyPond et de sa 
21 documentation.
22
23 @menu
24 * Background::                  
25 * About the documentation::     
26 @end menu
27
28
29 @node Background
30 @section Background
31
32 Cette partie présente les objectifs de LilyPond ainsi que son 
33 architecture.
34
35 @menu
36 * Engraving::                   
37 * Automated engraving::         
38 * What symbols to engrave?::    
39 * Music representation::        
40 * Example applications::        
41 @end menu
42
43
44 @node Engraving
45 @unnumberedsubsec Engraving
46
47 L'art de la typographie musicale se nomme la @emph{gravure}.  Ce terme
48 est issu du processus traditionnel d'impression musicale.  Il y a
49 seulement quelques dizaines d'années, on faisait les partitions en
50 coupant et en embossant une plaque de zinc ou d'étain en image miroir.
51 Cette plaque était ensuite encrée, les dépressions créées par les
52 creux et les bosses retenant l'encre.  Une image était formée en
53 pressant du papier sur la plaque.  La découpe et l'embossage étaient
54 entièrement faits à la main.  Il était pénible d'appliquer une
55 correction, quand celle-ci n'était pas impossible, la gravure devait
56 donc être parfaite du premier coup.  La gravure demandait une
57 qualification hautement spécialisée : un artisan devait accomplir
58 environ cinq ans de formation avant de mériter le titre de maître
59 graveur, et il lui fallait cinq années d'expérience supplémentaires
60 pour devenir vraiment habile.
61
62 De nos jours, toutes les partitions récentes sont produites avec des
63 ordinateurs.  Ceci a des avantages évidents : le coût des impressions
64 a diminué, et le travail d'éditeur peut être envoyé par courriel.
65 Malheureusement, l'utilisation dominante des ordinateurs a également
66 diminué la qualité graphique des partitions.  L'impression
67 informatisée leur donne un aspect fade et mécanique qui les rend
68 désagréables à jouer.
69
70 @c introduce illustrating aspects of engraving, font...
71 Les images ci-dessous illustrent la différence entre la gravure
72 traditionelle et l'impression typique par ordinateur, et la troisième
73 image montre comment LilyPond mime l'aspect traditionnel.  L'image de
74 gauche est une numérisation d'un symbole bémol d'une édition publiée
75 en 2000.  Celle du centre montre un bémol d'une gravure à la main de
76 l'édition Bärenreiter de la même musique.  L'image de gauche illustre
77 des défauts typiques de l'impression informatique : les lignes de
78 portée sont minces, l'épaisseur de trait du bémol est la même que les
79 lignes fines, et il y a un aspect rigide avec des angles pointus.  Par
80 contraste, le bémol Bärenreiter possède un aspect gras et arrondi,
81 presque voluptueux.  Notre symbole bémol est créé, entre autres, à
82 partir de celui-là.  Il est arrondi, et son épaisseur de trait
83 s'harmonise avec nos lignes de portée, lesquelles sont également plus
84 épaisses que celles de l'édition informatique.
85
86 @multitable @columnfractions .125 .25 .25 .25 .125
87 @item @tab
88 @ifnotinfo
89 @iftex
90 @image{henle-flat-gray,,4cm}
91 @end iftex
92 @ifnottex
93 @image{henle-flat-gray,,,png}
94 @end ifnottex
95
96 @tab
97 @iftex
98 @image{baer-flat-gray,,4cm}
99 @end iftex
100 @ifnottex
101 @image{baer-flat-gray,,,png}
102 @end ifnottex
103
104 @tab
105 @iftex
106 @image{lily-flat-bw,,4cm}
107 @end iftex
108 @ifnottex
109 @image{lily-flat-bw,,,png}
110 @end ifnottex
111 @end ifnotinfo
112 @ifinfo
113 @image{lilypond/henle-flat-bw,,,png} @image{lilypond/baer-flat-bw,,,png}
114 @image{lilypond/lily-flat-bw,,,png}
115 @end ifinfo
116
117 @item @tab
118 Henle (2000)
119 @tab
120 Bärenreiter (1950)
121 @tab
122 Fonte Feta de LilyPond (2003)
123
124 @end multitable
125
126
127 @cindex symboles musicaux
128 @cindex fonte
129 @cindex police
130 @cindex épaisseur des caractères
131 @cindex équilibre
132
133 @c introduce illustrating aspects of engraving, spacing...
134 En matière d'espacement, la répartition de l'espace devrait refléter
135 les durées entre les notes.  Cependant, beaucoup de partitions
136 modernes se contentent des durées avec une précision mathématique, ce
137 qui mène à de mauvais résultats.  Dans l'exemple suivant, un motif est
138 imprimé deux fois : une fois en utilisant un espacement mathématique
139 exact, et une autre fois avec des corrections.  Pouvez-vous les
140 repérer ?
141
142 @cindex espacement optique
143 @c file spacing-optical.
144 @c need to include it here,  because we want two images.
145 @lilypond
146 \paper {
147   ragged-right = ##t
148   indent = #0.0
149 }
150
151 music = {
152    c'4 e''4 e'4 b'4 |
153    \stemDown
154    b'8[ e'' a' e'']
155    \stemNeutral
156    e'8[ e'8 e'8 e'8]
157 }
158
159 \score
160 {
161   \music
162   \layout {
163     \context {
164       \Staff
165       \override NoteSpacing #'stem-spacing-correction = #0.6
166     }
167   }
168 }
169 @end lilypond
170
171 @lilypond
172 \paper {
173   ragged-right = ##t
174   indent = #0.0
175 }
176
177 music = {
178    c'4 e''4 e'4 b'4 |
179    \stemDown
180    b'8[ e'' a' e'']
181    \stemNeutral
182    e'8[ e'8 e'8 e'8]
183 }
184 \score
185 {
186   \music
187   \layout {
188     \context {
189       \Staff
190       \override NoteSpacing #'stem-spacing-correction = #0.0
191       \override NoteSpacing #'same-direction-correction = #0.0
192       \override StaffSpacing #'stem-spacing-correction = #0.0
193     }
194   }
195 }
196 @end lilypond
197
198 @cindex régulier, rythme
199 @cindex régulier, espacement
200 @cindex espacement régulier
201
202 L'extrait n'utilise que des notes de même durée ; l'espacement devrait
203 le refléter.  Malheureusement, notre oeil nous trompe quelque peu ; il
204 ne se contente pas de remarquer la distance entre les têtes de notes,
205 il prend en compte également la distance entre les hampes
206 consécutives.  Ainsi, par compensation, les notes avec une combinaison
207 @qq{hampe vers le haut}/@/@qq{hampe vers le bas} doivent être éloignées
208 l'une de l'autre, et les notes avec une combinaison @qq{hampe vers le
209 bas}/@/@qq{hampe vers le haut} rapprochées, le tout dépendant de la
210 position verticale des notes.  Les deux premières mesures sont
211 imprimées avec cette correction, les deux suivantes sans.  Les notes
212 dans les deux dernières mesures forment des blocs de notes @qq{hampe
213 vers le bas}/@/@qq{hampe vers le haut}.
214
215 @cindex typographie
216
217 Les musiciens sont généralement plus absorbés par l'exécution que par
218 l'étude de l'aspect graphique d'une partition, donc discutailler sur
219 les détails typographiques peut paraître peu important.  Il n'en est
220 rien.  Dans de longues pièces avec des rythmes monotones, les
221 corrections d'espacement engendrent de subtiles variations dans la
222 mise en forme de chaque ligne, donnant à chacune une signature
223 visuelle distincte.  Sans cette signature, toutes les lignes auraient
224 le même aspect, et ressembleraient à un labyrinthe.  Si un musicien
225 regarde ailleurs un instant ou se déconcentre momentanement, il peut
226 avoir du mal à se retrouver sur la page.
227
228 De même, l'aspect robuste des symboles sur d'épaisses lignes de
229 portée ressort mieux quand la partition est éloignée du lecteur,
230 comme sur un pupitre par exemple.  Une organisation minutieuse des
231 espaces vides permet de minimiser l'espace qu'occupe la musique, tout
232 en évitant que les symboles s'amassent les uns contre les autres.  Le
233 résultat permet de réduire le nombre de pages à tourner, ce qui est un
234 grand avantage.
235
236 Ceci est une caractéristique commune à toute typographie.  La
237 disposition doit être belle, non seulement pour des raisons
238 esthétiques, mais également pour l'aide apportée au lecteur dans la
239 tâche qu'il doit accomplir.  Pour du matériel d'exécution comme les
240 partitions de musique, cela prend une double importance : les
241 musiciens ont une quantité limitée d'attention.  Moins ils en ont
242 besoin pour lire, plus ils peuvent se concentrer sur la musique
243 elle-même.  Autrement dit, une meilleure typographie permet une
244 meilleure interprétation.
245
246 Ces exemples démontrent que la typographie musicale est un art subtil
247 et complexe, et que la produire demande une expertise considérable,
248 que les musiciens n'ont généralement pas.  LilyPond représente notre
249 effort pour apporter l'excellence graphique de la gravure à la main à
250 l'ère de l'ordinateur, et la rendre accessible à tous les musiciens.
251 Nous avons conçu nos algorithmes, fontes et paramètres de programme
252 pour retrouver la qualité d'édition des anciennes partitions que nous
253 aimons tant lire et jouer.
254
255
256
257 @node Automated engraving
258 @unnumberedsubsec Automated engraving
259
260 Comment pouvons-nous implémenter la typographie ? Si les artisans ont
261 besoin de plus de dix ans pour devenir de vrais maîtres, comment nous,
262 simples programmeurs, pourrions-nous jamais écrire un programme pour
263 faire leur travail ?
264
265 La réponse est : nous ne le pouvons pas.  La typographie se base sur
266 le jugement visuel humain, donc les humains ne peuvent pas être
267 complètement remplacés.  Si LilyPond arrive à résoudre la plupart des
268 situations correctement, ce sera déjà une grande avancée sur les
269 logiciels existants.  Les autres situations peuvent être résolues à la
270 main.  Au fil des ans, le logiciel peut être affiné pour faire de plus
271 en plus de choses automatiquement, pour que les ajustements manuels
272 soient de moins en moins nécessaires.
273
274 Quand nous avons commencé, nous avons écrit le programme Lilypond
275 entièrement dans le language de programmation C++ ; les fonctions du
276 programme étaient figées par les développeurs.  Ceci s'est avéré
277 insatisfaisant pour plusieurs raisons :
278
279 @itemize 
280 @item Quand Lilypond fait des erreurs,
281 les utilisateurs ont besoin de contredire les décisions de formatage.
282 Les utilisateurs doivent donc avoir accès au moteur de formatage.  Par
283 conséquent, les règles et les propriétés ne peuvent pas être fixées
284 par nous au moment de la compilation, mais doivent être accessibles
285 aux utilisateurs au moment de l'exécution.
286
287 @item La gravure est une question de jugement visuel, et donc de goût.
288 Aussi bien informés que nous le sommes, les utilisateurs peuvent être
289 en désaccord avec nos décisions personnelles.  Par conséquent, les
290 définitions du modèle typographique doivent également être accessibles
291 à l'utilisateur.
292
293 @item Enfin, nous affinons continuellement les algorithmes de formatage,
294 donc nous avons besoin d'une approche souple des règles.  Le language
295 C++ oblige à une certaine méthode de groupage des règles qui ne
296 convient pas bien au fonctionnement de la notation musicale.
297 @end itemize
298
299 Ces problèmes ont été résolus en intégrant un interpréteur pour le
300 language de programmation Scheme, et en réécrivant des parties de
301 LilyPond en Scheme.  L'architecture actuelle de formatage est
302 construite autour de la notion d'objets graphiques, décrits par des
303 fonctions et des variables Scheme.  Cette architecture comprend les
304 règles de formatage, le style typographique, et des décisions
305 individuelles de formatage.  L'utilisateur a un accès direct à la
306 plupart de ces contrôles.
307
308 Les variables Scheme contrôlent les décisions de mise en page.  Par
309 exemple, beaucoup d'objets graphiques ont une variable de direction
310 qui encode le choix entre haut et bas (ou gauche et droite).  Vous
311 pouvez voir ici deux accords, avec des accents, et des arpèges.  Dans
312 le premier accord, les objets graphiques sont tous dirigés vers le bas
313 (ou la gauche).  Dans le second accord ils sont tous dirigés vers le
314 haut (droite).
315
316 @lilypond[quote,ragged-right]
317 \new Score \with {
318    \override SpacingSpanner #'spacing-increment = #3
319    \override TimeSignature #'transparent = ##t
320 } \relative c' {
321    \stemDown <e g b>4_>-\arpeggio
322    \override Arpeggio #'direction = #RIGHT
323    \stemUp <e g b>4^>-\arpeggio
324 }
325 @end lilypond
326
327 @noindent
328 Le processus de formatage d'une partition consiste à lire et écrire
329 les variables d'objets graphiques.  Certaines variables ont une valeur
330 prédéfinie.  Par exemple, l'épaisseur d'un grand nombre de lignes --
331 une caractéristique du style typographique -- est une variable avec
332 une valeur prédéfinie.  Vous êtes libres d'altérer cette valeur, ce
333 qui vous donne une partition avec une impression typographique
334 différente.
335
336 @lilypond[quote,ragged-right]
337 fragment = {
338    \clef bass f8 as8
339    c'4-~ c'16 as g f e16 g bes c' des'4
340 }
341 <<
342    \new Staff \fragment
343    \new Staff \with {
344       \override Beam #'thickness = #0.3
345       \override Stem #'thickness = #0.5
346       \override Bar #'thickness = #3.6
347       \override Tie #'thickness = #2.2
348       \override StaffSymbol #'thickness = #3.0
349       \override Tie #'extra-offset = #'(0 .  0.3)
350       }
351       \fragment
352 >>
353 @end lilypond
354
355 Les règles de formatage ont aussi des variables prédéfinies : chaque
356 objet possède des variables contenant des procédures.  Ces procédures
357 exécutent le formatage, et en les substituant par d'autres, nous
358 pouvons changer l'apparence des objets.  Dans l'exemple suivant, la
359 règle du choix de têtes de notes est changée au cours de l'extrait de
360 musique.
361
362 @lilypond[quote,ragged-right]
363 #(set-global-staff-size 30)
364
365 #(define (mc-squared grob orig current)
366   (let* ((interfaces (ly:grob-interfaces grob))
367          (pos (ly:grob-property grob 'staff-position)))
368     (if (memq 'note-head-interface interfaces)
369         (begin
370           (ly:grob-set-property! grob 'stencil ly:text-interface::print)
371           (ly:grob-set-property! grob 'font-family 'roman)
372           (ly:grob-set-property! grob 'text
373             (make-raise-markup -0.5
374               (case pos
375                 ((-5) (make-simple-markup "m"))
376                 ((-3) (make-simple-markup "c "))
377                 ((-2) (make-smaller-markup (make-bold-markup "2")))
378                 (else (make-simple-markup "bla")))))))))
379
380 \new Voice \relative c' {
381    \stemUp
382    \set autoBeaming = ##f
383    \time 2/4
384    <d f g>4
385    \once \override NoteHead #'stencil = #ly:note-head::brew-ez-stencil
386    \once \override NoteHead #'font-size = #-7
387    \once \override NoteHead #'font-family = #'sans
388    \once \override NoteHead #'font-series = #'bold
389    <d f g>
390    \once \override NoteHead #'style = #'cross
391    <d f g>
392    \applyOutput #'Voice #mc-squared
393    <d f g>
394    <<
395       { d8[ es-( fis^^ g] fis2-) }
396       \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
397    >>
398 }
399 @end lilypond
400
401
402
403 @node What symbols to engrave?
404 @unnumberedsubsec What symbols to engrave?
405
406 @cindex gravure
407 @cindex typographie
408
409 Le processus de formatage décide où placer les symboles.  Cependant,
410 cela ne peut être fait qu'à partir du moment où il a été décidé
411 @emph{quels} symboles doivent être imprimés, c'est-à-dire quelle
412 notation utiliser.
413
414 La notation musicale usuelle est un système d'écriture qui a évolué à
415 travers les dix derniers siècles.  La forme qui est aujourd'hui
416 communément utilisée date du début de la Renaissance.  Bien que la forme
417 basique --- les têtes de notes sur une portée de cinq lignes --- n'a pas
418 changé, les détails continuent d'évoluer pour exprimer les innovations
419 de la notation contemporaine.  Par conséquent, elle comprend quelque 500
420 ans de musique, avec des applications allant des mélodies monodiques à
421 de monstrueux contrepoints pour grand orchestre.
422
423 Comment pouvons nous appréhender un tel monstre à plusieurs têtes, et le
424 confiner dans l'espace réduit d'un programme informatique ?  Notre
425 solution consiste à diviser le problème de la notation --- par
426 opposition à la gravure, ou typographie --- en morceaux digestes et
427 programmables : chaque type de symbole est géré par un module séparé,
428 couramment appelé greffon@footnote{traduction de l'anglais
429 @emph{plug-in}.}.  Chaque greffon est entièrement modulaire et
430 indépendant, et donc peut être développé et amélioré séparément.  De
431 tels greffons sont nommés @code{graveur}s@footnote{@code{engraver}s en
432 anglais.}, par analogie avec les artisans qui traduisent les idées
433 musicales en symboles graphiques.
434
435 Dans l'exemple suivant, voyons comment nous commençons avec un greffon
436 pour les têtes de notes, le graveur de têtes de note
437 (@code{Note_heads_engraver}) :
438
439 @lilypond[quote,ragged-right]
440 \include "engraver-example.ily"
441
442 \score {
443   \topVoice
444   \layout {
445     \context {
446       \Voice
447       \remove "Stem_engraver"
448       \remove "Phrasing_slur_engraver"
449       \remove "Slur_engraver"
450       \remove "Script_engraver"
451       \remove "Beam_engraver"
452       \remove "Auto_beam_engraver"
453     }
454     \context {
455       \Staff
456       \remove "Accidental_engraver"
457       \remove "Key_engraver"
458       \remove "Clef_engraver"
459       \remove "Bar_engraver"
460       \remove "Time_signature_engraver"
461       \remove "Staff_symbol_engraver"
462       \consists "Pitch_squash_engraver"
463     }
464   }
465 }
466 @end lilypond
467
468 @noindent
469 Ensuite, le graveur du symbole de portée
470 (@code{Staff_symbol_engraver}) ajoute la portée
471
472 @lilypond[quote,ragged-right]
473 \include "engraver-example.ily"
474
475 \score {
476   \topVoice
477   \layout {
478     \context {
479       \Voice
480       \remove "Stem_engraver"
481       \remove "Phrasing_slur_engraver"
482       \remove "Slur_engraver"
483       \remove "Script_engraver"
484       \remove "Beam_engraver"
485       \remove "Auto_beam_engraver"
486     }
487     \context {
488       \Staff
489       \remove "Accidental_engraver"
490       \remove "Key_engraver"
491       \remove "Clef_engraver"
492       \remove "Bar_engraver"
493       \consists "Pitch_squash_engraver"
494       \remove "Time_signature_engraver"
495     }
496   }
497 }
498 @end lilypond
499
500 @noindent
501 le graveur de clef (@code{Clef_engraver}) définit un point de
502 référence pour la portée
503
504 @lilypond[quote,ragged-right]
505 \include "engraver-example.ily"
506
507 \score {
508   \topVoice
509   \layout {
510     \context {
511       \Voice
512       \remove "Stem_engraver"
513       \remove "Phrasing_slur_engraver"
514       \remove "Slur_engraver"
515       \remove "Script_engraver"
516       \remove "Beam_engraver"
517       \remove "Auto_beam_engraver"
518     }
519     \context {
520       \Staff
521       \remove "Accidental_engraver"
522       \remove "Key_engraver"
523       \remove "Bar_engraver"
524       \remove "Time_signature_engraver"
525     }
526   }
527 }
528 @end lilypond
529
530 @noindent
531 et le graveur de hampes (@code{Stem_engraver}) ajoute les hampes :
532
533 @lilypond[quote,ragged-right]
534 \include "engraver-example.ily"
535
536 \score {
537   \topVoice
538   \layout {
539     \context {
540       \Voice
541       \remove "Phrasing_slur_engraver"
542       \remove "Slur_engraver"
543       \remove "Script_engraver"
544       \remove "Beam_engraver"
545       \remove "Auto_beam_engraver"
546     }
547     \context {
548       \Staff
549       \remove "Accidental_engraver"
550       \remove "Key_engraver"
551       \remove "Bar_engraver"
552       \remove "Time_signature_engraver"
553     }
554   }
555 }
556 @end lilypond
557
558 @noindent
559 Le graveur de hampe est notifié de chaque tête de note qui survient.
560 Chaque fois qu'une tête de note --- plusieurs pour un accord --- est
561 rencontrée, un objet hampe est créé et connecté à la tête de note.  En
562 ajoutant des graveurs pour les barres de ligature, les liaisons, les
563 accents, les altérations accidentelles, les barres de mesure, la
564 métrique, et les armures, nous obtenons un jeu de notation complet.
565
566 @lilypond[quote,ragged-right]
567 \include "engraver-example.ily"
568 \score { \topVoice }
569 @end lilypond
570
571 Ce système fonctionne bien pour de la musique monodique, mais qu'en
572 est-il de la polyphonie ? En notation polyphonique, plusieurs voix
573 peuvent partager une portée.
574
575 @lilypond[quote,ragged-right]
576 \include "engraver-example.ily"
577 \new Staff << \topVoice \\ \botVoice >>
578 @end lilypond
579
580 Dans cette situation, la portée et les altérations accidentelles sont
581 partagées, mais les hampes, liaisons etc., sont spécifiques à chaque
582 voix.  Par conséquent, les graveurs doivent être groupés.  Les
583 graveurs des têtes de notes, hampes, liaisons etc., vont dans un
584 groupe appelé @qq{contexte de Voix} @footnote{@q{Voice context} en
585 anglais, @q{Voice} commence par une majuscule comme tous les noms de
586 contexte dans le programme LilyPond.}, alors que les graveurs des clés,
587 altérations accidentelles, barres de mesure etc., vont dans un groupe
588 appelé @qq{contexte de Portée}. Dans le cas de la polyphonie, un seul
589 contexte de Portée contient plusieurs contextes de Voix.  De même,
590 plusieurs contextes de Portée peuvent être inclus dans un seul
591 contexte de Partition.  Le contexte de Partition est le contexte de
592 notation de plus haut niveau.
593
594 @seealso
595
596 Référence du programme: @rinternals{Contexts}.
597
598 @lilypond[quote,ragged-right]
599 \include "engraver-example.ily"
600 \score {
601    <<
602       \new Staff << \topVoice \\ \botVoice >>
603       \new Staff << \pah \\ \hoom >>
604    >>
605 }
606 @end lilypond
607
608 @node Music representation
609 @unnumberedsubsec Music representation
610
611 Idéalement, le format d'entrée pour n'importe quel système de
612 formatage est une description abstraite du contenu.  Dans ce cas-ci,
613 ce serait la musique elle-même.  Cela pose un formidable problème :
614 comment pouvons-nous définir ce que la musique est réellement ? Plutôt
615 que d'essayer de trouver une réponse, nous avons renversé la question.
616 Nous écrivons un logiciel capable de produire de la musique écrite, et
617 adaptons le format pour atteindre la plus grande concision possible.
618 Quand le format ne peut plus être simplifé, il nous reste par
619 définition le contenu lui-même.  Notre logiciel sert de définition
620 formelle d'un document de musique.
621
622 La syntaxe est également l'interface utilisateur pour LilyPond, par
623 conséquent il est facile de saisir
624
625 @example
626 @{
627 c'4 d'8
628 @}
629 @end example
630
631 @noindent
632 c'est-à-dire un do central noire et, juste au-dessus un ré croche
633
634 @lilypond[quote]
635 {
636   c'4 d'8
637 }
638 @end lilypond
639
640 Sur une échelle microscopique, une telle syntaxe est facile à
641 utiliser.  A plus grande échelle, la syntaxe a besoin aussi de
642 structure.  Comment serait-il possible autrement de rentrer des
643 pièces complexes comme des symphonies ou des opéras ? La structure
644 est formée par le concept d'expression musicale : en combinant
645 de petits fragments de musique pour en former de plus grands, on peut
646 exprimer de la musique plus complexe.  Par exemple
647
648 @lilypond[quote,verbatim,fragment,relative=1]
649 f4
650 @end lilypond
651
652 @noindent
653 Des accord peuvent être construits avec @code{<<} et @code{>>} autour
654 des notes.
655
656 @c < > is not a music expression,
657 @c so we use <<>> iso. <> to drive home the point of
658 @c expressions.  Don't change this back --hwn.
659
660 @c FIXME: change this.  I can explain it better.  -gp
661 @example
662 <<c4 d4 e4>>
663 @end example
664
665 @lilypond[quote,fragment,relative=1]
666 \new Voice { <<c4 d4 e>> }
667 @end lilypond
668
669 @noindent
670 Cette expression est mise dans une séquence grace à l'encadrement par
671 des accolades @code{@{@tie{}@dots{}@tie{}@}}
672
673 @example
674 @{ f4 <<c4 d4 e4>> @}
675 @end example
676
677 @lilypond[quote,relative=1,fragment]
678 { f4 <<c d e4>> }
679 @end lilypond
680
681 @noindent
682 Ceci est également une expression, et peut donc encore une fois
683 être combinée avec d'autres expressions simultanées (une blanche)
684 en utilisant <<, @code{\\}, et >>
685
686 @example
687 << g2 \\ @{ f4 <<c4 d4 e4>> @} >>
688 @end example
689
690 @lilypond[quote,fragment,relative=2]
691 \new Voice { << g2 \\ { f4 <<c d e>> } >> }
692 @end lilypond
693
694 De telles strucutres récursives peuvent être spécifiées formellement
695 et de manière ordonnée dans une grammaire indépendante de tout
696 contexte.  Le code d'analyse est aussi générée à partir de cette
697 grammaire.  Autrement dit, la syntaxe de LilyPond est définie
698 clairement et sans ambiguité.
699
700 L'interface utilisateur et la syntaxe sont ce que les gens voient et
701 manipulent le plus.  Elles sont en partie une affaire de goût, et
702 aussi sujettes à beaucoup de discussions.  Même si ces discussions sur
703 les goûts ont leur mérite, elles ne sont pas très productives.  D'un
704 point de vue plus large sur LilyPond, l'importance de la syntaxe est
705 minime : il est facile d'inventer une syntaxe concise, alors qu'écrire
706 un code de formatage décent est beaucoup plus difficile.  Ceci est
707 également illustré par le nombre de lignes de codes pour les
708 composants respectifs : l'analyse et la représentation constituent
709 moins de 10% du code source.
710
711 @node Example applications
712 @unnumberedsubsec Example applications
713
714 Nous avons conçu LilyPond comme une expérimentation visant à
715 concentrer l'art de la gravure musicale dans un logiciel.  Grâce à
716 tout ce dur labeur, le programme peut maintenant être utilisé pour
717 accomplir des travaux utiles.  L'application la plus simple est
718 d'imprimer des notes :
719
720 @lilypond[quote,relative=1]
721 {
722   \time 2/4
723   c4 c g'4 g a4 a g2
724 }
725 @end lilypond
726
727 @noindent
728 En ajoutant des noms d'accords et des paroles, nous obtenons
729 une partition de chanson :
730
731 @lilypond[quote,ragged-right]
732 <<
733    \chords { c2 c f2 c }
734    \new Staff \relative c' { \time 2/4 c4 c g'4 g a4 a g2 }
735    \new Lyrics \lyricmode { twin4 kle twin kle lit tle star2 }
736 >>
737 @end lilypond
738
739 La notation polyphonique et la musique pour piano peuvent également
740 être générées.  L'exemple suivant associe quelques constructions
741 plus exotiques :
742
743 @lilypond[quote]
744 \header {
745   title = "Screech and boink"
746   subtitle = "Random complex notation"
747   composer = "Han-Wen Nienhuys"
748 }
749
750 \score {
751   \context PianoStaff <<
752     \new Staff = "up" {
753       \time 4/8
754       \key c \minor
755       << {
756         \revert Stem #'direction
757         \change Staff = down
758         \set subdivideBeams = ##t            
759         g16.[
760           \change Staff = up
761           c'''32
762           \change Staff = down
763           g32
764           \change Staff = up
765           c'''32
766           \change Staff = down
767           g16]
768         \change Staff = up
769         \stemUp
770         \set followVoice = ##t
771         c'''32([ b''16 a''16 gis''16 g''32)]
772       } \\ {
773         s4 \times 2/3 { d'16[ f' g'] } as'32[ b''32 e'' d'']
774       } \\ {
775         s4 \autoBeamOff d''8.. f''32
776       } \\ {
777         s4 es''4
778       } >>
779     }
780
781     \new Staff = "down" {
782       \clef bass
783       \key c \minor
784       \set subdivideBeams = ##f
785       \override Stem  #'french-beaming = ##t
786       \override Beam  #'thickness = #0.3
787       \override Stem  #'thickness = #4.0
788       g'16[ b16 fis16 g16]
789       << \makeClusters { 
790         as16 <as b>
791         <g b>
792         <g cis>
793       } \\ {
794         \override Staff.Arpeggio  #'arpeggio-direction =#down
795         <cis, e, gis, b, cis>4\arpeggio
796       }
797     >> }
798   >>
799   \midi {
800     \context {
801       \Score
802       tempoWholesPerMinute = #(ly:make-moment 60 8)
803     }
804   }
805   \layout {
806     \context {
807       \Staff
808       \consists Horizontal_bracket_engraver
809     }
810   }
811 }
812 @end lilypond
813
814 Les extraits exposés ici ont tous été écrits à la main, mais ce n'est
815 pas une obligation.  Puisque le moteur de formatage est en grande
816 partie automatique, il peut servir de sortie pour d'autres programmes
817 qui manipulent la musique.  Par exemple, il peut être utilisé pour
818 convertir des bases de données d'extraits musicaux en images pour des
819 sites Internet et des présentations multimédias.
820
821 Ce manuel montre également une application : le format d'entrée est du
822 texte, et peut donc facilement être intégré dans d'autres formats
823 basés sur le texte comme @LaTeX{}, HTML, ou dans le cas de ce manuel,
824 Texinfo.  À l'aide d'un programme spécial, les extraits de code
825 peuvent être remplacés par des images de musiques dans les fichiers de
826 sortie PDF ou HTML.  Cela donne la possibilité de mélanger de la
827 musique et du texte dans les documents.
828
829
830
831 @node About the documentation
832 @section About the documentation
833
834 Cette partie présente les différents volumes de la documentation.
835
836 @c leave these lines wrapping around.  It's some texinfo 4.12 thing. -gp
837 @c This is actually a limitation of texi2html. -jm
838 @menu
839 * About the Learning Manual::   introduction à LilyPond, ce manuel explique aux débutants la création de partitions.
840 * About the Music Glossary::    ce document explique de nombreux termes musicaux et en donne la traduction dans d'autres langues.
841 * About the Notation Reference::  ce manuel représente la partie la plus volumineuse de la documentation.  Il fournit tous les détails sur la création de notation musicale.  La lecture de cet ouvrage requiert une bonne compréhension des concepts exposés dans le manuel d'initiation.
842 * About the Application Usage:: ce manuel aborde l'exécution des programmes LilyPond et les particularités dépendant du système d'exploitation.
843 * About the Snippet List::      ce document rassemble une collection d'extraits de code LilyPond.
844 * About the Internals Reference:: ce manuel constitue une source d'information sur le fonctionnement interne de LilyPond.  C'est une référence complète pour l'élaboration de retouches.
845 * Other documentation::         d'autres sources de documentation sont disponibles, telles que les notes de nouveautés et les archives des listes de diffusion.
846 @end menu
847
848
849 @node About the Learning Manual
850 @unnumberedsubsec About the Learning Manual
851
852 Ce manuel explique comment débuter avec LilyPond, et expose de manière
853 simple quelques concepts clés.  Il est conseillé de lire ces chapitres
854 de manière linéaire.
855
856 Dans ce manuel se trouve à chaque section un paragraphe @strong{Voir
857 aussi} contenant des références vers d'autres sections : il est
858 conseillé de ne pas les suivre en première lecture ; lorsque vous
859 aurez lu l'ensemble du manuel d'initiation, vous pourrez en relisant
860 certaines sections suivre ces références pour approfondir certains
861 aspects.
862
863 @itemize
864
865 @item
866 @ref{Introduction} : le pourquoi du comment de LilyPond.
867
868 @item
869 @ref{Tutorial} : introduction en douceur à la typographie musicale.
870 Les utilisateurs débutants sont invités à commencer par ce chapitre.
871
872 @item
873 @ref{Fundamental concepts} : concepts généraux du format de fichier
874 @code{ly} spécifique à LilyPond.  Si vous n'êtes pas certain de
875 l'endroit où placer une commande, lisez ce chapitre !
876
877 @item
878 @ref{Tweaking output} : introduction aux retouches de gravure avec
879 LilyPond.
880
881 @item
882 @ref{Working on LilyPond projects} : utilisation pratique de LilyPond,
883 conseils généraux, prévention et résolution des problèmes les plus
884 courants.  À lire avant de se lancer dans des travaux d'envergure !
885
886 @end itemize
887
888 Ce volume contient aussi des annexes que vous pouvez consulter au gré de
889 vos besoins :
890
891 @itemize
892
893 @item
894 @ref{Templates} de pièces LilyPond.  Copiez et collez un modèle dans
895 un fichier, ajoutez les notes, et c'est prêt !
896
897 @item
898 @ref{Scheme tutorial} : courte introduction à Scheme, le langage de
899 programmation utilisé dans les fonctions de musique.  Ces quelques
900 lignes vous aideront à construire des retouches avancées ; nombre
901 d'utilisateurs n'ont jamais touché à Scheme.
902
903 @end itemize
904
905
906 @node About the Music Glossary
907 @unnumberedsubsec About the Music Glossary
908
909 @cindex jargon
910 @cindex terminologie
911 @cindex langues étrangères
912 @cindex langue
913 @cindex langage
914  
915 @rglosnamed{Top,Glossaire musical} : ce document explique en anglais
916 des termes musicaux, et donne leur traduction dans diverses langues.
917 Si vous n'êtes pas familier avec la notation et la terminologie
918 musicales, il est conseillé de consulter le glossaire, notamment pour
919 les parties non encore traduites de la documentation.
920
921
922 @node About the Notation Reference
923 @unnumberedsubsec About the Notation Reference
924
925 Ce manuel détaille toutes les commandes LilyPond produisant une notation
926 musicale.  La lecture de cet ouvrage requiert une bonne compréhension des
927 concepts exposés dans le manuel d'initiation.
928
929 @itemize
930
931 @c Normalement, il est impossible d'utiliser deux points en français,
932 @c car une référence externe doit se terminer par un signe de
933 @c ponctuation dans la format Info.  Cependant, Info
934 @c n'internationalise pas encore des documents Info, donc nous n'en
935 @c avons rien à faire pour l'instant. -jm
936 @item
937 @ruser{Musical notation} : cette partie décrit la notation de base,
938 qui sera utile dans la plupart des projets de partition.  Les sujets
939 sont groupés par type de notation.
940
941 @item
942 @ruser{Specialist notation} : cette partie détaille des éléments de
943 notation spécifiques à certains instruments ou styles.  Les sujets
944 sont groupés par type de notation.
945
946 @item
947 @ruser{General input and output} : informations générales sur les
948 fichiers source LilyPond et le contrôle des sorties.
949
950 @item
951 @ruser{Spacing issues} : différents aspects de l'espacement selon les
952 axes et échelles, par exemple la sélection de la taille de papier, ou
953 la gestion des sauts de page.
954
955 @item
956 @ruser{Changing defaults} : ce chapitre est une référence des
957 différentes formes de retouches, qui permettent d'obtenir de Lilypond
958 (presque) tout ce que vous désirez.
959
960 @item
961 @ruser{Interfaces for programmers} :.création de fonctions de musique
962 à l'aide de Scheme.
963
964 @end itemize
965
966 Les annexes de ce manuel contiennent entre autres des tableaux de
967 référence pratiques.
968
969 @itemize
970
971 @item
972 @ruser{Literature list} : choix de livres de référence, pour en savoir
973 plus sur la notation et la gravure.
974
975 @item
976 @ruser{Notation manual tables} : tableaux montrant les noms d'accord,
977 les instruments MIDI, les noms de couleur, et la police Feta.
978
979 @item
980 @ruser{Cheat sheet} : référence pratique des commandes LilyPond les
981 plus courantes.
982
983 @item
984 @ruser{LilyPond command index} : index de toutes les @code{\commandes}
985 LilyPond.
986
987 @item
988 @ruser{LilyPond index} : un index complet.
989
990 @end itemize
991
992
993 @node About the Application Usage
994 @unnumberedsubsec About the Application Usage
995
996 Ce manuel explique l'exécution des programmes et l'intégration de
997 partitions LilyPond dans d'autres programmes.
998
999 @itemize
1000
1001 @item
1002 @rprogram{Install} : installation --- et éventuellement compilation ---
1003 de LilyPond.
1004
1005 @item
1006 @rprogram{Setup} : configuration de votre système pour une utilisation
1007 optimale de LilyPond, comprenant l'utilisation d'environnements
1008 adaptés pour certains éditeurs de tecte.
1009
1010 @item
1011 @rprogram{Running LilyPond} : exécution de LilyPond et de ses
1012 programmes auxiliaires.  De plus, cette partie explique comment
1013 effectuer la mise à jour de fichiers source écrits avec d'anciennes
1014 versions de LilyPond.
1015
1016 @item
1017 @rprogram{LilyPond-book} : création de documents intégrant des
1018 extraits musicaux, comme ce manuel.
1019
1020 @item
1021 @rprogram{Converting from other formats} : utilisation des programmes
1022 de conversion.  Ces programmes sont livrés avec le paquetage LilyPond,
1023 et convertissent divers formats de musique vers le format @code{.ly}.
1024
1025 @end itemize
1026
1027
1028 @node About the Snippet List
1029 @unnumberedsubsec About the Snippet List
1030
1031 @cindex snippets
1032 @cindex LSR
1033
1034 @rlsrnamed{Top,Exemples de code} :
1035 il s'agit d'une sélection de petits exemples montrant des trucs,
1036 astuces et fonctionnalités particulières de LilyPond, issus de
1037 @uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}
1038 (LSR).  Tous ces exemples sont dans le domaine public.
1039
1040 Notez bien que cette annexe n'est en aucune manière un miroir ou même
1041 une partie du LSR.  Dans la mesure où le LSR repose sur une version
1042 stable de LilyPond, les exemples illustrant des fonctionnalités
1043 introduites dans la dernière version de développement ne peuvent y
1044 figurer ; c'est pourquoi vous les trouverez dans le répertoire
1045 @file{input/new/} des sources de LilyPond.
1046
1047 La liste des exemples correspondant à chacun des sous-chapitres du
1048 manuel de notation est accessible par des liens dans le paragraphe
1049 @strong{Voir aussi}.
1050
1051
1052 @node About the Internals Reference
1053 @unnumberedsubsec About the Internals Reference
1054
1055 @cindex retoucher
1056 @cindex variables
1057 @cindex propriétés
1058 @cindex lilypond-internals
1059 @cindex documentation du fonctionnement interne
1060 @cindex Scheme
1061 @cindex étendre lilypond
1062 @cindex index
1063
1064 @rinternalsnamed{Top,Référence des propriétés internes} : c'est un
1065 ensemble de pages HTML étroitement liées entre elles, qui documente
1066 les moindres petits détails de chaque classe, objet et fonction de
1067 LilyPond.  Cette documentation est produite directement à partir des
1068 définitions de formatage utilisées.
1069
1070 Presque toutes les fonctions de formatage utilisées en interne sont
1071 directement disponibles pour l'utilisateur.  Par exemple, toutes les
1072 variables qui contrôlent les épaisseurs, les distances etc., peuvent
1073 être modifiées dans les fichiers d'entrée.  Il y a un grand nombre
1074 d'options de formatage, et elles sont toutes décrites dans ce
1075 document.  Chaque section du manuel de notation a un paragraphe @b{Voir
1076 aussi}, qui renvoie à la documentation générée automatiquement.  Dans la
1077 documentation au format HTML, ces paragraphes disposent de liens
1078 cliquables.
1079
1080
1081 @node Other documentation
1082 @unnumberedsubsec Other documentation
1083
1084 Pour finir, présentons d'autres précieuses sources de documentation.
1085
1086 @itemize
1087
1088 @item
1089 @ifhtml
1090 @ifset bigpage
1091 @uref{../topdocs/NEWS.html,Nouveautés} :
1092 @end ifset
1093 @ifclear bigpage
1094 @uref{../../topdocs/NEWS.html,Nouveautés} :
1095 @end ifclear
1096 @end ifhtml
1097 @ifnothtml
1098 Nouveautés :
1099 @end ifnothtml
1100 ce document résume les changements importants et les nouvelles
1101 fonctionalités de LilyPond depuis la dernière version stable.
1102
1103 @item @uref{http://lists.gnu.org/archive/html/lilypond-user/, Les
1104 archives de la liste lilypond-user} : c'est un dépôt archivant les
1105 courriels qui ont été envoyés à la liste anglophone des utilisateurs.
1106 Beaucoup de questions sont apparues plusieurs fois sur la liste, il y
1107 a donc des chances que si vous avez une question, la réponse puisse
1108 être dans ces archives.
1109 @c DIV specific
1110 @uref{http://lists.gnu.org/archive/html/lilypond-user-fr/,Les archives
1111 de la liste francophone} ne sont pas aussi bien fournies, mais vous
1112 pouvez toujours y chercher des conversations passées sur les
1113 traductions, et si vous avez de la chance une réponse à une question.
1114 @c END DIV
1115
1116 @item @uref{http://lists.gnu.org/archive/html/lilypond-devel/, Les
1117 archives de la liste lilypond-devel} : les courriels envoyés à la
1118 liste des développeurs y sont archivés.  Les sujets de discussion sont
1119 plus techniques ; si vous voulez vous renseigner sur l'histoire du
1120 développement ou si vous avez une question très technique, tentez
1121 votre chance en cherchant dans ces archives.
1122
1123 @item Fragments de musique au cours du texte : dans tous les documents
1124 HTML qui incluent des fragments musicaux, le code LilyPond utilisé
1125 pour produire l'image est accessible par un clic sur l'image.
1126
1127 @item L'emplacement des fichiers de documentation mentionnés ici peut varier
1128 d'un système à l'autre.  De temps en temps, ce manuel fait référence
1129 aux fichiers d'exemple et d'initialisation.  Tout au long de ce
1130 manuel, nous donnons les emplacements des fichiers d'entrée
1131 relativement au répértoire racine de l'archive source.  Par exemple,
1132 @file{input/@/test/@/bla@/.ly} peut référer au fichier
1133 @file{lilypond@/2.x.y/@/input/@/test/@/bla@/.ly}.  Dans les paquets
1134 binaires pour les plateformes Unix, la documentation et les exemples
1135 se trouvent généralement sous @file{/usr/@/share/@/doc/@/lilypond/}.
1136 Les fichiers d'initialisation, par exemple @file{scm/@/lily@/.scm}, ou
1137 @file{ly/@/engraver@/-init@/.ly}, se trouvent généralement dans le
1138 répertoire @file{/usr/@/share/@/lilypond/}. @c pas encore en français -jm.
1139 @c Pour plus de détails, consultez @ref{Other sources of information}.
1140
1141 @end itemize