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