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