]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/usage/lilypond-book.itely
Merge branch 'master' into lilypond/translation
[lilypond.git] / Documentation / fr / usage / lilypond-book.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
2
3 @ignore
4     Translation of GIT committish: 3f4496001441e0b1b27d7bc5395c4520f4f2088c
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes..
9 @end ignore
10
11
12 @c \version "2.12.0"
13
14 @c Translators: Jean-Charles Malahieude
15 @c Translation checkers:
16
17 @c Note: keep this node named so that `info lilypond-book' brings you here.
18 @node lilypond-book
19 @chapter Association musique-texte avec @command{lilypond-book}
20 @translationof lilypond-book
21
22 Vous pouvez inclure des partitions dans un document tout comme vous
23 feriez pour n'importe quelle image.  Ces images sont générées séparément
24 -- que ce soit sous forme de description PostScript ou au format PNG --
25 puis incluses dans votre document @LaTeX{} ou HTML.
26
27 @command{lilypond-book} permet d'automatiser ces opérations@tie{}: le
28 programme extrait de votre document les fragments de musique, les
29 traite grâce à @command{lilypond} puis en restitue la partition dans
30 votre document.  Largeur de ligne et taille de la fonte sont adaptées
31 pour correspondre à la mise en forme de votre document.
32
33 @command{lilypond-book} est un script indépendant de @command{lilypond}
34 et se lance en ligne de commande -- pour plus de précisions, consultez
35 @ref{Utilisation en ligne de commande}.  Si vous utilisez MacOS 10.3 ou
36 10.4 et rencontrez quelque difficulté avec @code{lilypond-book},
37 référez-vous à @rweb{MacOS X}.
38
39 @command{lilypond-book} s'applique aux documents @LaTeX{}, HTML, Texinfo
40 et DocBook.
41
42 @cindex texinfo
43 @cindex latex
44 @cindex texinfo
45 @cindex texi
46 @cindex html
47 @cindex docbook
48 @cindex documents, ajout de musique
49 @cindex HTML, musique et
50 @cindex Texinfo, musique et
51 @cindex DocBook, musique et
52 @cindex @LaTeX{}, musique et
53
54
55 @menu
56 * Exemple de document musicologique::
57 * Association musique-texte::
58 * Options applicables aux fragments de musique::
59 * Utilisation de lilypond-book::
60 * Extensions de nom de fichier::
61 * Modèles pour lilypond-book::
62 * Autres méthodes d'association texte-musique::
63 @end menu
64
65
66 @node Exemple de document musicologique
67 @section Exemple de document musicologique
68 @translationof An example of a musicological document
69
70 @cindex musicologie
71
72 Un certain nombre d'ouvrages peuvent être illustrés par des extraits
73 musicaux, qu'il s'agisse d'un taité de musicologie, d'un carnet de chant
74 ou d'un manuel à l'exemple de celui que vous consultez actuellement.
75 Cet agencement peut se faire @qq{à la main} par importation d'un
76 graphique PostScript dans le traitement de texte.  Les développeurs de
77 LilyPond ont cependant créé un outil permettant d'automatiser ces
78 opérations pour ce qui concerne les documents HTML, @LaTeX{}, Texinfo et
79 DocBook.
80
81 Un script -- @code{lilypond-book} -- se charge d'extraire les fragments
82 de musique, puis de les mettre en forme avant de renvoyer la
83 @qq{partition} correspondante.  Voici un court exemple utilisable avec
84 @LaTeX{}.  Dans la mesure où il est suffisamment parlant, nous nous
85 abstiendrons de le commenter.
86
87 @subheading Fichier d'entrée
88
89 @quotation
90 @verbatim
91 \documentclass[a4paper]{article}
92
93 \begin{document}
94
95 Un document destiné à être traité par \verb+lilypond-book+ peut tout à
96 fait mélanger de la musique et du texte.
97 Par exemple,
98
99 \begin{lilypond}
100 \relative c' {
101   c2 e2 \times 2/3 { f8 a b } a2 e4
102 }
103 \end{lilypond}
104
105 Les options sont indiquées entre crochets.
106
107 \begin{lilypond}[fragment,quote,staffsize=26,verbatim]
108   c'4 f16
109 \end{lilypond}
110
111 Des extraits plus conséquents peuvent faire l'objet d'un fichier
112 indépendant, alors inclus avec \verb+\lilypondfile+.
113
114 \lilypondfile[quote,noindent]{screech-boink.ly}
115
116 (Si besoin, remplacez screech-boink.ly par n'importe quel fichier .ly
117 qui se trouve dans le même répertoire que le présent fichier.)
118
119 \end{document}
120 @end verbatim
121 @end quotation
122
123 @subheading Traitement
124
125 Enregistrez ces lignes dans un fichier nommé @file{lilybook.lytex} puis,
126 dans un terminal, lancez
127
128 @c keep space after @version{} so TeX doesn't choke
129 @example
130 lilypond-book --output=out --pdf lilybook.lytex
131 @emph{lilypond-book (GNU LilyPond) @version{} }
132 @emph{Lecture de lilybook.lytex...}
133 @emph{..nous vous épargnons le verbiage de la console..}
134 @emph{Compilation de lilybook.tex...}
135 cd out
136 pdflatex lilybook
137 @emph{..nous vous épargnons le verbiage de la console..}
138 xpdf lilybook
139 @emph{(remplacez @command{xpdf} par votre lecteur de PDF habituel)}
140 @end example
141
142 Le traitement par @command{lilypond-book} puis @command{latex} va
143 générer un certain nombre de fichiers temporaires susceptibles
144 d'encombrer inutilement votre répertoire de travail, aussi nous vous
145 recommandons d'utiliser l'option @code{--output=@var{répertoire}} afin
146 que les fichiers créés soient isolés dans le sous-répertoire
147 @file{répertoire}.
148
149 Pour terminer, voici le résultat de cet exemple pour
150 @LaTeX{}.@footnote{Ce manuel étant réalisé avec Texinfo, il se peut que
151 la mise en forme diverge quelque peu.}
152
153 @page
154
155 @subheading Résultat
156
157 Un document destiné à être traité par @command{lilypond-book} peut tout à
158 fait mélanger de la musique et du texte.
159 Par exemple,
160
161 @lilypond
162 \relative c' {
163   c2 e2 \times 2/3 { f8 a b } a2 e4
164 }
165 @end lilypond
166
167 Les options sont indiquées entre crochets.
168
169 @lilypond[fragment,quote,staffsize=26,verbatim]
170 c'4 f16
171 @end lilypond
172
173 Des extraits plus conséquents peuvent faire l'objet d'un fichier
174 indépendant, alors inclus avec @code{\lilypondfile}.
175
176 @lilypondfile[quote,noindent]{screech-boink.ly}
177
178
179 @page
180
181 @node Association musique-texte
182 @section Association musique-texte
183 @translationof Integrating music and text
184
185 Nous allons nous intéresser, dans les lignes qui suivent, à la manière
186 d'intégrer LilyPond selon différents types de format.
187
188 @menu
189 * LaTeX::
190 * Texinfo::
191 * HTML::
192 * DocBook::
193 @end menu
194
195 @node LaTeX
196 @subsection @LaTeX{}
197 @translationof LaTeX
198
199 @LaTeX{} peut être considéré comme le standard de publication dans le
200 domaine des sciences exactes.  Il repose sur le moteur typographique
201 @TeX{}, le @emph{nec plus ultra} en la matière.
202
203 Consultez
204 @uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/french/,
205 @emph{The Not So Short Introduction to @LaTeX{}} en français} pour un
206 aperçu des possibilités de @LaTeX{}.
207
208 Il suffit, pour inclure de la musique, d'utiliser
209
210 @example
211 \begin@{lilypond@}[liste,des,options]
212   VOTRE CODE LILYPOND
213 \end@{lilypond@}
214 @end example
215
216 @noindent
217 ou
218
219 @example
220 \lilypondfile[liste,des,options]@{@var{fichier}@}
221 @end example
222
223 @noindent
224 ou encore
225
226 @example
227 \lilypond[liste,des,options]@{ VOTRE CODE LILYPOND @}
228 @end example
229
230 Par ailleurs, la commande @code{\lilypondversion} vous permet d'afficher
231 le numéro de version de LilyPond.
232 Lancer @command{lilypond-book} produira un fichier qui sera ensuite
233 traité par @LaTeX{}.
234
235 Voici quelques exemples.  L'environnement @code{lilypond}
236
237 @example
238 \begin@{lilypond@}[quote,fragment,staffsize=26]
239   c' d' e' f' g'2 g'2
240 \end@{lilypond@}
241 @end example
242
243 @noindent
244 produit
245
246 @lilypond[quote,fragment,staffsize=26]
247 c' d' e' f' g'2 g'2
248 @end lilypond
249
250 La version abrégée
251
252 @example
253 \lilypond[quote,fragment,staffsize=11]@{<c' e' g'>@}
254 @end example
255
256 @noindent
257 produit
258
259 @lilypond[quote,fragment,staffsize=11]{<c' e' g'>}
260
261 @noindent
262 Dans l'état actuel des choses, il n'est pas possible d'inclure des
263 accolades -- @code{@{} ou @code{@}} -- dans un
264 @code{\lilypond@{@}}@tie{}; cette commande n'est donc pertinente que
265 lorsque conjuguée à l'option @code{fragment}.
266
267 La longueur par défaut des portées sera ajustée en fonction des
268 commandes contenues dans le préambule du document -- ce qui précède la
269 ligne @code{\begin@{document@}}.  La commande @code{lilypond-book} les
270 transmet à @LaTeX{} afin de connaître la largeur du texte, et par voie
271 de conséquence déterminer la longueur des portées.  Notez bien que cet
272 algorithme heuristique n'est pas infaillible@tie{}; vous devrez alors
273 recourir à l'option @code{line-width}.
274
275 @cindex titrage et lilypond-book
276 @cindex \header et documents @LaTeX{}
277
278 Dès lors qu'elles auront été définies dans votre document, les macros
279 suivantes seront appelées avant chaque extrait musical@tie{}:
280
281 @itemize @bullet
282 @item @code{\preLilyPondExample} avant la musique,
283
284 @item @code{\postLilyPondExample} après la musique,
285
286 @item @code{\betweenLilyPondSystem[1]} entre les systèmes, si tant est
287 que @code{lilypond-book} a découpé la partition en plusieurs fichiers
288 PostScript.  Elle requiert un paramètre et reçoit le nombre de fichiers
289 inclus dans l'extrait.  Par défaut, elle insert simplement un
290 @code{\linebreak}.
291 @end itemize
292
293 @ignore
294 Broken stuff.  :(
295
296 @cindex Latex, feta symbols
297 @cindex fetachar
298
299 To include feta symbols (such as flat, segno, etc) in a LaTeX
300 document, use @code{\input@{titledefs@}}
301
302 @example
303 \documentclass[a4paper]@{article@}
304
305 \input@{titledefs@}
306
307 \begin@{document@}
308
309 \fetachar\fetasharp
310
311 \end@{document@}
312 @end example
313
314 The font symbol names are defined in the file feta20.tex; to find
315 the location of this file, use the command
316
317 @example
318 kpsewhich feta20.tex
319 @end example
320
321 @end ignore
322
323 @snippets
324
325 Lorsque, pour les besoins de la démonstration, certains éléments
326 musicaux tels que des liaisons -- de phrasé ou de prolongation --
327 continuent après le fragment qui vous intéresse, il suffit d'insérer un
328 saut de ligne et de limiter le nombre de systèmes à inclure.
329
330 En ce qui concerne @LaTeX{}, vous devrez définir
331 @code{\betweenLilyPondSystem} de telle sorte que l'inclusion cesse dès
332 que le nombre de systèmes requis est atteint.  Dans la mesure où
333 @code{\betweenLilyPondSystem} n'est appelé qu'@strong{après} le premier
334 système, inclure un seul système est un jeu d'enfant@tie{}:
335
336 @example
337 \def\betweenLilyPondSystem#1@{\endinput@}
338
339 \begin@{lilypond@}[fragment]
340   c'1\( e'( c'~ \break c' d) e f\)
341 \end@{lilypond@}
342 @end example
343
344 Pour un plus grand nombre de systèmes, il suffit d'insérer un test
345 conditionnel @TeX{} avant le @code{\endinput}.  À partir de l'exemple
346 qui suit, remplacez le @qq{2} par le nombre de systèmes dont vous aurez
347 besoin@tie{}:
348
349 @example
350 \def\betweenLilyPondSystem#1@{
351     \ifnum##1<2\else\expandafter\endinput\fi
352 @}
353 @end example
354
355 @noindent
356 Étant donné que @code{\endinput} arrête immédiatement le traitement du
357 fichier source en cours, l'insertion du @code{\expandafter} permet de
358 repousser ce @code{\endinput} après le @code{\fi}@tie{}; la clause
359 @w{@code{\if-\fi}} sera alors respectée.
360
361 Gardez à l'esprit que @code{\betweenLilyPondSystem} est effectif tant
362 que @TeX{} n'est pas sorti du groupe en cours -- tel que
363 l'environnement @LaTeX{} -- ou écrasé par une nouvelle définition pour
364 la suite du document la plupart du temps.  Pour réinitialiser cette
365 définition, insérez
366
367 @example
368 \let\betweenLilyPondSystem\undefined
369 @end example
370
371 @noindent
372 dans votre document @LaTeX{}.
373
374 La création d'une macro @TeX{} permet de se simplifier la vie@tie{}:
375
376 @example
377 \def\onlyFirstNSystems#1@{
378     \def\betweenLilyPondSystem##1@{%
379       \ifnum##1<#1\else\expandafter\endinput\fi@}
380 @}
381 @end example
382
383 @noindent
384 Il suffit alors, avant chacun des fragments à inclure, de spécifier le
385 nombre de système requis@tie{}:
386
387 @example
388 \onlyFirstNSystems@{3@}
389 \begin@{lilypond@}...\end@{lilypond@}
390 \onlyFirstNSystems@{1@}
391 \begin@{lilypond@}...\end@{lilypond@}
392 @end example
393
394
395 @seealso
396 @command{lilypond-book} dispose d'options en ligne de commande
397 particulières.  Elles sont consultables, ainsi que d'autres détails
398 spécifiques au traitement de documents @LaTeX{}, au chapitre
399 @ref{Utilisation de lilypond-book}.
400
401
402 @node Texinfo
403 @subsection Texinfo
404 @translationof Texinfo
405
406 Texinfo est le format standard pour toute la documentation du projet
407 GNU.  À titre d'exemple, toute la documentation de LilyPond -- qu'il
408 s'agisse des versions HTML, PDF ou info -- est générée à partir de
409 documents Texinfo.
410
411 Dans le fichier source, on spécifie qu'il s'agit de musique avec
412
413 @example
414 @@lilypond[liste,des,options]
415   VOTRE CODE LILYPOND
416 @@end lilypond
417 @end example
418
419 @noindent
420 ou
421
422 @example
423 @@lilypond[liste,des,options]@{ VOTRE CODE LILYPOND @}
424 @end example
425
426 @noindent
427 ou bien encore
428
429 @example
430 @@lilypondfile[liste,des,options]@{@var{fichier}@}
431 @end example
432
433 Par ailleurs, l'utilisation d'un @code{@@lilypondversion} permet
434 d'afficher la version de LilyPond utilisée.
435
436 Le traitement du fichier source par @command{lilypond-book} génère un
437 fichier Texinfo (extension @file{.itexi}) qui contiendra les balises
438 @code{@@image} pour les formats HTML, Info ou imprimable.  Les images
439 générées par @command{lilypond-book} sont au format EPS et PDF en vue
440 d'une impression, et au format PNG pour leur utilisation en HTML ou
441 Info.
442
443 En voici deux exemples.  Un environnement @code{lilypond}
444
445 @example
446 @@lilypond[fragment]
447 c' d' e' f' g'2 g'
448 @@end lilypond
449 @end example
450
451 @noindent
452 produit
453
454 @lilypond[fragment]
455 c' d' e' f' g'2 g'
456 @end lilypond
457
458 La version abrégée
459
460 @example
461 @@lilypond[fragment,staffsize=11]@{<c' e' g'>@}
462 @end example
463
464 @noindent
465 produit
466
467 @lilypond[fragment,staffsize=11]{<c' e' g'>}
468
469 Contrairement à @LaTeX{}, @code{@@lilypond@{@dots{}@}} ne va pas
470 intégrer d'image dans le document, mais générer un paragraphe.
471
472
473 @node HTML
474 @subsection HTML
475 @translationof HTML
476
477
478 Il suffit, pour inclure de la musique, d'utiliser
479
480 @example
481 <lilypond fragment relative=2>
482 \key c \minor c4 es g2
483 </lilypond>
484 @end example
485 @noindent
486 @command{lilypond-book} produira alors un fichier HTML contenant les
487 balises d'image pour les fragments de musique@tie{}:
488
489 @lilypond[fragment,relative=2]
490 \key c \minor c4 es g2
491 @end lilypond
492
493 Pour insérer l'image au fil du texte, il suffit d'utiliser
494 @code{<lilypond @dots{} />}, tout en séparant options et musique par un
495 caractère deux points, comme ici@tie{}:
496
497 @example
498 De la musique <lilypond relative=2: a b c/> au milieu d'une ligne de texte.
499 @end example
500
501
502 Lorsque l'inclusion  concerne des fichiers indépendants, utilsez
503
504 @example
505 <lilypondfile @var{option1} @var{option2} ...>@var{fichier}</lilypondfile>
506 @end example
507
508
509 Par ailleurs, la commande @code{\lilypondversion} vous permet d'afficher
510 le numéro de version de LilyPond.
511
512
513 @cindex titrage et HTML
514 @cindex prévisualisation d'image
515 @cindex thumbnail
516
517
518 @node DocBook
519 @subsection DocBook
520 @translationof DocBook
521
522 L'inclusion de documents LilyPond ne doit nuire en rien à la conformité
523 du document DocBooK@tie{}; l'utilisation d'éditeurs spécialisés ainsi
524 que d'outils de validation en sera ainsi préservée.  C'est la raison
525 pour laquelle nous ne définirons pas de balise spécifique@tie{}; nous
526 respecterons plutôt les conventions des éléments standards de DocBook.
527
528 @subheading Conventions communes
529
530 Quel que soit le type d'extrait à inclure, nous utiliserons les
531 éléments @code{mediaobject} et @code{inlinemediaobject}, de telle sorte
532 que ces inclusions soient incorporées directement ou non dans le
533 document final.  Les options de formatage des extraits en question sont
534 fournies par la propriété @code{role} de l'élément central -- voir les
535 paragraphes suivants.  Les balises sont déterminées de manière à ce que
536 les éditeurs DocBook prennent en charge du mieux possible leur contenu.
537 Les fichiers DocBook destinés à un traitement par
538 @command{lilypond-book} doivent avoir une extension @file{.lyxml}.
539
540 @subheading Inclusion d'un fichier LilyPond
541
542 Il s'agit en fait du cas le plus simple.  Le fichier à inclure doit
543 avoir une extension @file{.ly} et sera inséré comme n'importe quel
544 @code{imageobject}, en respectant la structure suivante@tie{}:
545
546 @example
547 <mediaobject>
548   <imageobject>
549     <imagedata fileref="music1.ly" role="printfilename" />
550   </imageobject>
551 </mediaobject>
552 @end example
553
554 Vous pouvez utiliser, en tant que balise externe, aussi bien
555 @code{mediaobject} que @code{inlinemediaobject}.
556
557 @subheading Inclusion de code LilyPond
558
559 L'inclusion de code LilyPond se réalise à l'aide d'un
560 @code{programlisting} auquel on associe le langage @code{lilypond}.  En
561 voici la syntaxe@tie{}:
562
563 @example
564 <inlinemediaobject>
565   <textobject>
566     <programlisting language="lilypond" role="fragment verbatim staffsize=16 ragged-right relative=2">
567 \context Staff \with @{
568   \remove Time_signature_engraver
569   \remove Clef_engraver@}
570   @{ c4( fis) @}
571     </programlisting>
572   </textobject>
573 </inlinemediaobject>
574 @end example
575
576 Comme vous le remarquez, la balise externe -- qu'il s'agisse d'un
577 @code{mediaobject} ou d'un @code{inlinemediaobject} -- comporte un bloc
578 @code{textobject} qui contiendra le @code{programlisting}.
579
580 @subheading Génération du document DocBook
581
582
583 @command{lilypond-book} génère, à partir d'un fichier @file{.lyxml}, un
584 document DocBook tout à fait valide -- extension @file{.xml} -- que vous
585 pourrez ensuite traiter avec votre application habituelle.  Dans le cas de
586 @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, vous obtiendrez
587 alors automatiquement un fichier PDF.  Les feuilles de style
588 XSL@tie{}DocBook officielles permettent de générer du HTML (HTML Help,
589 JavaHelp etc.)@tie{}; vous pourriez néanmoins devoir y apporter quelques
590 adaptations.
591
592
593 @node Options applicables aux fragments de musique
594 @section Options applicables aux fragments de musique
595 @translationof Music fragment options
596
597
598 Dans les lignes qui suivent, l'appellation @qq{commande LilyPond} fait
599 référence à toutes celles vues plus haut et qui font appel à
600 @command{lilypond-book} pour produire un extrait musical.  Pour plus de
601 simplicité, nous ne parlerons que de la syntaxe applicable à @LaTeX{}.
602
603 Nous attirons votre attention sur le fait que les différentes options
604 sont lues de la gauche vers la droite.  Si une option est transmise
605 plusieurs fois, seule la dernière sera prise en compte.
606
607 Les commandes LilyPond acceptent les options suivantes@tie{}:
608
609 @table @code
610 @item staffsize=@var{hauteur}
611 Définit la taille de portée à @var{hauteur} exprimée en points.
612
613 @item ragged-right
614 Produit des lignes en pleine largeur avec un espacement naturel.  En
615 d'autres termes, sera ajoutée la commande de mise en forme
616 @w{@code{ragged-right = ##t}}.  Il s'agit de l'otion par défaut de la
617 commande @code{\lilypond@{@}} en l'absence d'option @code{line-width}.
618 C'est aussi l'option par défaut pour l'environnement @code{lilypond}
619 lorsque l'option @code{fragment} est activée sans avoir défini
620 explicitement de longueur de ligne.
621
622 @item noragged-right
623 Dans le cas où l'extrait tient sur une seule ligne, la portée sera
624 étirée pour correspondre à la longueur de ligne du texte.  Autrement
625 dit, la commande de mise en forme @code{ragged-right = ##f} s'ajoute à
626 l'extrait LilyPond.
627
628 @item line-width
629 @itemx line-width=@var{taille}\@var{unité}
630 Détermine la longueur de ligne à @var{taille}, exprimée en @var{unité}.
631 @var{unité} peut prendre les valeurs @code{cm}, @code{mm}, @code{in} ou
632 @code{pt}.  Cette option n'affectera que le résultat de LilyPond -- la
633 longueur de la portée -- et en aucun cas la mise en forme du texte.
634
635 En l'absence d'argument, la longueur de ligne sera définie à une valeur
636 par défaut telle que calculée par un algoritme heuristique.
637
638 Lorsque l'option @code{line-width} n'est pas utilisée,
639 @command{lilypond-book} tentera de déterminer des valeurs par défaut
640 pour les cas où les environnements @code{lilypond} ne font pas appel à
641 @code{ragged-right}.
642
643 @item notime
644 Désactive l'impression des métriques et barres de mesure pour
645 l'intégralité de la partition.
646
647 @item fragment
648 Laisse à @command{lilypond-book} le soin d'ajouter ce qui est
649 indispensable, de telle sorte que vous pouvez vous contenter d'un
650
651 @example
652 c'4
653 @end example
654
655 @noindent
656 sans @code{\layout}, @code{\score}, etc.
657
658 @item nofragment
659 N'ajoute rien à ce qui se trouve dans l'environnement LilyPond.  À noter
660 qu'il s'agit de l'option par défaut.
661
662 @item indent=@var{taille}\@var{unité}
663 Définit l'indentation du premier système à @var{taille}, exprimée en
664 @var{unité} -- @code{cm}, @code{mm}, @code{in}, ou @code{pt}.  Cette
665 option n'affecte que LilyPond, et en aucun cas la mise en forme du
666 texte.
667
668 @item noindent
669 Ramène l'indentation du premier système à zéro.  Cette option n'affecte
670 que LilyPond, et en aucun cas la mise en forme du texte.  Dans la mesure
671 où il s'agit du comportement par défaut, point n'est besoin de spécifier
672 @code{noindent}.
673
674 @item quote
675 Réduit la longueur des lignes musicales de @math{2*0.4}@dmn{in} (soit
676 @math{2 * 10,16}@tie{}@dmn{mm}) pour renvoyer l'extrait dans un bloc de
677 citation.  La valeur @qq{0,4@tie{}pouce} est contrôlée par l'option
678 @code{exampleindent}.
679
680 @item exampleindent
681 Détermine la valeur de l'indentation qui sera utilisée par l'option
682 @code{quote}.
683
684 @item relative
685 @itemx relative=@var{n}
686 Utilise le mode d'octave relative.  Les notes sont donc par défaut
687 positionnées relativement au do central.  L'argument -- un nombre entier
688 -- fourni à l'option @code{relative} spécifie l'octave de départ de
689 l'extrait@tie{}; @code{1} correspond au do central.  Cette option
690 @code{relative} n'a d'effet que si elle est utilisée en combinaison avec
691 l'option @code{fragment}@tie{}; autrement dit, l'option @code{fragment}
692 est implicite dès lors que @code{relative} est explicité.
693 @end table
694
695
696 La documentation de LilyPond, comme nous l'avons déjà vu, use
697 abondamment de @command{lilypond-book}.  Elle utilise à cet effet
698 quelques options particulières.
699
700 @table @code
701 @item verbatim
702 L'argument de la commande LilyPond est recopié textuellement dans le
703 fichier généré avant l'image de la partition.  Cependant, cette option
704 n'est pas pleinement opérationnelle lorsqu'un @code{\lilypond@{@}} se
705 trouve au milieu d'un paragraphe.
706
707 L'utilisation conjointe d'un @code{verbatim} et de la commande
708 @code{lilypondfile} permet de n'inclure textuellement qu'une seule
709 partie du fichier source.  @code{lilypond-book} reproduira alors
710 textuellement la partie du fichier source comprise entre les commentaires
711 @code{begin@tie{}verbatim} et éventuellement @code{end@tie{}verbatim}.
712 Si l'on considère le fichier source suivant, la musique sera interprétée
713 en mode relatif, mais la recopie du code ne comportera pas l'assertion
714 du bloc @code{relative}@tie{}:
715
716 @example
717 \relative c' @{ % begin verbatim
718   c4 e2 g4
719   f2 e % end verbatim
720 @}
721 @end example
722
723 @noindent
724 donnera dans un bloc @emph{verbatim} précédant la partition@tie{}:
725
726 @example
727   c4 e2 g4
728   f2 e
729 @end example
730
731 @noindent
732 Si d'aventure vous désirez traduire les commentaires et noms de
733 variable dans le rendu textuel plutôt que dans le fichier source, vous
734 devrez définir la variable d'environnement @code{LYDOC_LOCALEDIR} qui
735 pointera vers un répertoire contenant l'arborescence des catalogues de
736 messages -- fichiers d'extension @code{.mo} -- du domaine
737 @code{lilypond-doc}.
738
739 @item addversion
740 Cette option, effective uniquement pour Texinfo, permet d'ajouter une
741 ligne @code{\version @@w@{"@@version@{@}"@}} au @code{verbatim}.
742
743 @item texidoc
744 Option disponible uniquement pour Texinfo.@*
745 Dès lors qu'un fichier @code{toto@/.ly} contient dans sa section
746 @code{\header} la variable @code{texidoc}, l'appel de @command{lilypond}
747 avec l'option @option{--header=@/texidoc} créera le fichier
748 @code{toto@/.texidoc}.  Par ailleurs, c'est le contenu de ce
749 @code{toto@/.texidoc} qui sera ensuite recopié par
750 @command{lilypond-book} en préambule de l'extrait de partition.
751
752 Prenons par exemple le fichier @file{toto@/.ly} dont le contenu est
753
754 @example
755 \header @{
756   texidoc = "This file demonstrates a single note."
757 @}
758 @{ c'4 @}
759 @end example
760
761 @noindent
762 et quelque part dans notre document Texinfo @file{test.texinfo}
763
764 @example
765 @@lilypondfile[texidoc]@{toto.ly@}
766 @end example
767
768 @noindent
769 La ligne de commande suivante produira le résultat escompté.
770
771 @example
772 lilypond-book --pdf --process="lilypond \
773   -dbackend=eps --header=texidoc" test.texinfo
774 @end example
775
776 La plupart des fichiers de test contenus dans le répertoire @file{input}
777 de la distribution est constituée de la sorte.
778
779 Cette option est fort utile dans le cadre de l'adaptation en langue
780 étrangère.  En effet, s'il est spécifié dans le document Texinfo une
781 clause @code{@@documentlanguage@tie{}@var{LANGUE}}, la présence d'une
782 variable @code{texidoc@var{LANGUE}} dans l'entête du fichier
783 @file{foo@/.ly} entraînera la reproduction -- par l'appel
784 @code{lilypond}@tie{}@option{--header=@/texidoc@var{LANGUE}} -- du
785 contenu de @file{toto@/.texidoc@var{LANGUE}} en lieu et place de celui de
786 @file{toto@/.texidoc}.
787
788 @item lilyquote
789 Option disponible uniquement pour Texinfo.@*
790 Cette option est équivalente à l'option @code{quote} à ceci près que
791 seule l'image de la partition -- ainsi que les éventuels blocs
792 @emph{verbatim} si vous la couplez à l'option @code{verbatim} -- fera
793 l'objet d'une citation.  Cette option permet l'inclusion de la partition
794 en omettant les commentaires contenus dans le bloc @code{texidoc} du
795 fichier source.
796
797 @item doctitle
798 Option disponible uniquement pour Texinfo.@*
799 Cette option fonctionne selon le même principe que l'option
800 @code{texidoc}@tie{}: lorsqu'un fichier @file{toto@/.ly} contient dans
801 son @code{\header} une variable @code{doctitle} et que @code{lilypond}
802 est appelé avec l'option @code{doctitle}, le contenu de cette variable
803 -- une simple ligne de @var{texte} -- sera recopié dans un fichier
804 @file{toto@/.doctitle} puis inséré dans le document Texinfo sous la
805 forme @code{@@lydoctitle@tie{}@var{texte}}.  @code{@@lydoctitle} doît
806 faire l'objet d'une macro, définie dans le document Texinfo.
807
808 Il en va de l'option @code{doctitle} comme de l'option @code{texidoc} en
809 matière d'adaptation en langue étrangère.
810
811 @item nogettext
812 Option disponible uniquement pour Texinfo.@*
813 Commentaires et noms de variable ne seront pas traduits dans la recopie
814 textuelle du code.
815
816 @item printfilename
817 Lorsqu'un fichier source LilyPond est inclus à l'aide de
818 @code{\lilypondfile}, le nom du fichier sera reproduit juste au dessus
819 de l'extrait.  Si le résultat est un fichier HTML, il s'agira alors d'un
820 lien.  Seul le nom du fichier est imprimé@tie{}; autrement dit, le
821 chemin d'accès au fichier est tronqué.
822
823 @end table
824
825
826 @node Utilisation de lilypond-book
827 @section Utilisation de @command{lilypond-book}
828 @translationof Invoking lilypond-book
829
830 @command{lilypond-book} produit un fichier qui aura, selon le format de
831 sortie spécifié, l'extension @file{.tex}, @file{.texi}, @file{.html} ou
832 @file{.xml}.  Les fichiers @file{.tex}, @file{.texi} et @file{.xml}
833 nécessitent un traitement complémentaire.
834
835 @subheading Instructions spécifiques à certains formats
836
837 @subsubheading @LaTeX{}
838
839 Un document @LaTeX{} destiné à l'impression ou à la publication peut se
840 traiter de deux manières différentes@tie{}:  générer directement un PDF
841 à l'aide de PDF@LaTeX{}, ou bien générer un fichier avec @LaTeX{}
842 qui sera ensuite passé à un traducteur DVI-PostScript comme
843 @command{dvips}.  La première façon est de loin la plus simple et c'est
844 celle que nous vous recommandons@footnote{Sachant que vous ne disposez
845 pas forcément de PDF@LaTeX{} et @LaTeX{} pour compiler un document
846 @LaTeX{}, nous vous présentons les deux méthodes.}@tie{}; quelque soit
847 votre préférence, sachez que vous pouvez aller du PostScript eu PDF avec
848 des outils tels que @command{ps2pdf} et @command{pdf2ps} -- tous deux
849 inclus dans la distribution de Ghostscript.
850
851 La production d'un PDF avec PDF@LaTeX{} se fait en lançant les commandes
852
853 @example
854 lilypond-book --pdf monfichier.lytex
855 pdflatex monfichier.tex
856 @end example
857
858 @cindex type1, polices
859 @cindex dvips
860 @cindex utilisation de dvips
861
862 La séquence @LaTeX{}/@command{dvips}/@command{ps2pdf} suivante permet de
863 produire un PDF@tie{}:
864
865 @example
866 lilypond-book monfichier.lytex
867 latex monfichier.tex
868 dvips -Ppdf monfichier.dvi
869 ps2pdf monfichier.ps
870 @end example
871
872 @noindent
873 Le fichier @file{.dvi} généré lors de ce traitement ne contient aucune
874 tête de note, ce qui est tout à fait normal@tie{}; elles seront incluses
875 lors de la génération du @file{.ps} puis dans le @file{.pdf}.
876
877 La commande @command{dvips} peut déclencher certains messages concernant
878 des fontes, que vous pouvez ignorer sans scrupule.@*
879 Si vous utilisez @command{latex} en mode colonnage, n'oubliez pas
880 d'ajouter @option{-t landscape} aux options de @command{dvips}.
881
882 @subsubheading Texinfo
883
884 La génération d'un document Texinfo -- quel que soit le format final --
885 s'obtient grâce aux commandes Texinfo habituelles, c'est à dire
886 @command{texi2pdf}, @command{texi2dvi} ou @command{makeinfo} selon le
887 résultat que vous désirez obtenir.
888 @ifinfo
889 @xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, et @ref{Creating
890 an Info File, , , texinfo, GNU Texinfo}.
891 @end ifinfo
892 @ifnotinfo
893 Pour plus de détails, consultez la documentation de Texinfo.
894 @end ifnotinfo
895
896 @subheading Options en ligne de commande
897
898 @command{lilypond-book} accepte les options suivantes@tie{}:
899
900 @table @code
901 @item -f @var{format}
902 @itemx --format=@var{format}
903 Spécifie le type de document à traiter@tie{}: @code{html}, @code{latex},
904 @code{texi} (valeur par défaut) ou @code{docbook}.  Lorsqueu cette
905 option n'est pas mentionnée, @command{lilypond-book} tente de déterminer
906 automatiquement le format -- voir @ref{Extensions de nom de fichier}.  À
907 l'heure actuelle, @code{texi} est équivalant à @code{texi-html}.
908
909 @c This complicated detail is not implemented, comment it out -jm
910 @ignore
911 The @code{texi} document type produces a Texinfo file with music
912 fragments in the printed output only.  For getting images in the HTML
913 version, the format @code{texi-html} must be used instead.
914 @end ignore
915
916 @item -F @var{filtre}
917 @itemx --filter=@var{filtre}
918 Passe les extrait au travers de @var{filtre} avant de traiter le
919 fichier.  Cette option permet de, par exemple, appliquer les mises à
920 jour de LilyPond aux extraits avant de traiter le fichier@tie{}:
921
922 @example
923 lilypond-book --filter='convert-ly --from=2.0.0 -' mon-book.tely
924 @end example
925
926 @item -h
927 @itemx --help
928 Affiche un bref résumé des options.
929
930 @item -I @var{dir}
931 @itemx --include=@var{répertoire}
932 Ajoute @var{répertoire} au chemin des inclusions.  Si des extraits ont
933 déjà été compilés dans l'un des répertoires inclus,
934 @command{lilypond-book}  ne les rééecria pas dans le répertoire de
935 sortie@tie{}; il sera donc nécessaire, dans la suite du traitement par
936 @command{makeinfo} ou @command{latex}, de penser à utiliser cette même
937 option @code{-I @var{répertoire}}.
938
939 @item -o @var{dir}
940 @itemx --output=@var{répertoire}
941 Regroupe les fichiers générés dans @var{répetoire}.
942 @command{lilypond-book} crée un certain nombre de fichiers à l'usage de
943 LilyPond.  Afin d'éviter de polluer votre répertoire source, nous vous
944 conseillons d'utiliser l'option @option{--output}, puis de vous rendre
945 dans ce répertoire pour y lancer les commandes @command{latex} ou
946 @command{makeinfo}.
947
948 @example
949 lilypond-book --output=out monfichier.lytex
950 cd out
951 @dots{}
952 @end example
953
954 @itemx --skip-lily-check
955 Désactive la mise en échec en l'absence de sortie de lilypond.@*
956 Option utilisée pour la documentation au format Info sans images.
957
958 @itemx --skip-png-check
959 Désactive la mise en échec en l'absence d'images PNG correspondant aux
960 fichiers EPS.@*
961 Option utilisée pour la documentation au format Info sans images.
962
963 @itemx --lily-output-dir=@var{rép}
964 Écrit les fichiers lily-XXX dans @var{rép} et crée un lien vers le
965 répertoire spécifié par @code{--output}.  Cette option permet
966 d'économiser du temps lors de la génération de documents qui se trouvent
967 dans différents répertoires et partagent un certain nombre d'extraits
968 identiques.
969
970 @itemx --info-images-dir=@var{répertoire}
971 Formate la sortie Texinfo de telle sorte que Info cherche les images
972 de musique dans @var{répertoire}.
973
974 @itemx --latex-program=@var{programme}
975 Utilise l'exécutable @command{programme} en lieu et place de
976 @command{latex}.  C'est l'option que vous utiliserez si vous préférez
977 @command{xelatex} par exemple.
978
979 @itemx --left-padding=@var{distance}
980 Décale les figures EPS de @var{distance} -- exprimée en milimètres (3
981 par défaut).  Cette option est utile lorsque les lignes de musique
982 débordent sur la marge droite.
983
984 Rappelez-vous que la largeur d'un système dépend des élément contenus
985 dans sa marge gauche, tels que numéro de mesure et nom d'instrument.
986 Cette option permet de @qq{raccourcir} les lignes et de les décaler vers
987 la droite, de la distance donnée en argument.
988
989 @item -P @var{commande}
990 @itemx --process=@var{commande}
991 Traite les extraits LilyPond avec @var{commande}.  Par défaut, il s'agit
992 de @code{lilypond}.@*
993 Rappelez-vous que @code{lilypond-book} ne peut en même temps traiter
994 l'option @code{--filter} et l'option @code{--process}.
995
996 @item --pdf
997 Crée des fichiers PDF pour les retraiter avec PDF@LaTeX{}.
998
999 @itemx --use-source-file-names
1000 Cette option permet d'affecter aux fichiers correspondant aux extraits
1001 de musique le même nom que leur source.  Elle n'est fonctionnelle que
1002 dans le cas où la partition est incluse à l'aide de @code{lilypondfile},
1003 et que les répertoires mentionnés par les options @code{--output-dir} et
1004 @code{--lily-output-dir} diffèrent.
1005
1006 @item -V
1007 @itemx --verbose
1008 @command{lilypond-book} sait être volubile@tie{}!
1009
1010 @item -v
1011 @itemx --version
1012 Affiche le numéro de version.
1013 @end table
1014
1015 @knownissues
1016
1017 @code{lilypond-book} ne siat pas interpréter la commande Texinfo
1018 @code{@@pagesize}.  Dans le même ordre d'idée, des commandes @LaTeX{}
1019 modifiant les marges et longueur de ligne mentionnées après le préambule
1020 seront ignorées.
1021
1022 Lorsqu'une section LilyPond contient plusieurs @code{\score}, seul le
1023 premier sera traité.
1024
1025
1026 @node Extensions de nom de fichier
1027 @section Extensions de nom de fichier
1028 @translationof Filename extensions
1029
1030 Vous pouvez affecter à votre fichier source n'importe quelle extension.
1031 Nous vous recommandons cependant un certain nombre d'extensions selon le
1032 format de sortie désiré.  Une extension hors du commun vous obligera à
1033 spécifier le format de sortie, alors que @code{lilpond-book} est en
1034 mesure de déterminer le format de sortie en fonction de l'extension du
1035 fichier source.
1036
1037 @quotation
1038 @multitable @columnfractions .2 .5
1039 @item @strong{extension} @tab @strong{format résultant}
1040 @item
1041 @item @file{.html} @tab HTML
1042 @item @file{.htmly} @tab HTML
1043 @item @file{.itely} @tab Texinfo
1044 @item @file{.latex} @tab @LaTeX{}
1045 @item @file{.lytex} @tab @LaTeX{}
1046 @item @file{.lyxml} @tab DocBook
1047 @item @file{.tely} @tab Texinfo
1048 @item @file{.tex} @tab @LaTeX{}
1049 @item @file{.texi} @tab Texinfo
1050 @item @file{.texinfo} @tab Texinfo
1051 @item @file{.xml} @tab HTML
1052 @end multitable
1053 @end quotation
1054
1055 Lorsque le fichier source a la même extension que celle que
1056 @code{lilypond-book} affectera au fichier résultant et que vous
1057 lancez @code{lilypond-book} à partir du répertoire le contenant, vous
1058 verrez assurément un message du type @qq{La sortie va écraser le fichier
1059 d'entrée}.  Aussi ne saurions-nous trop vous conseiller d'utiliser
1060 l'option @code{--output}.
1061
1062
1063 @node  Modèles pour lilypond-book
1064 @section Modèles pour lilypond-book
1065 @translationof lilypond-book templates
1066
1067 Voici quelques canevas dédiés à @code{lilypond-book}.  Si vous ne savez
1068 pas de quoi il retourne, lisez le chapitre @ref{lilypond-book}.
1069
1070 @subsection LaTeX
1071
1072 Vous pouvez inclure des partitions LilyPond dans un document LaTeX.
1073
1074 @example
1075 \documentclass[]@{article@}
1076
1077 \begin@{document@}
1078
1079 Des bananes alitées sur du LaTeX.
1080
1081 \begin@{lilypond@}
1082 \relative c'' @{
1083   a4 b c d
1084 @}
1085 \end@{lilypond@}
1086
1087 Encore des banalités LaTeX, puis quelques options entre crochets.
1088
1089 \begin@{lilypond@}[fragment,relative=2,quote,staffsize=26,verbatim]
1090 d4 c b a
1091 \end@{lilypond@}
1092 \end@{document@}
1093 @end example
1094
1095 @subsection Texinfo
1096
1097 Un document Texinfo est tout à fait capable de comporter des fragments
1098 de partition LilyPond.  Si vous ne le savez pas encore, sachez que
1099 l'intégralité de ce manuel est rédigée en Texinfo.
1100
1101 @example
1102 \input texinfo @c -*-texinfo-*-
1103 @@node Top
1104 @@top
1105
1106 Du verbiage en mode Texinfo
1107
1108 @@lilypond
1109 \relative c' @{
1110   a4 b c d
1111 @}
1112 @@end lilypond
1113
1114 Toujours plus de texte Texinfo, puis des options entre crochets.
1115
1116 @@lilypond[verbatim,fragment,ragged-right]
1117 d4 c b a
1118 @@end lilypond
1119
1120 @@bye
1121 @end example
1122
1123
1124 @subsection html
1125
1126 @example
1127 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1128 <!-- header_tag -->
1129 <HTML>
1130 <body>
1131
1132 <p>
1133 Un document pour lilypond-book peut absolument mélanger musique et
1134 texte.  Par exemple,
1135 <lilypond>
1136 \relative c'' @{
1137   a4 b c d
1138 @}
1139 </lilypond>
1140 </p>
1141
1142 <p>
1143 Pourquoi pas un peu plus de lilypond, avec des options pour changer :
1144
1145 <lilypond fragment quote staffsize=26 verbatim>
1146 a4 b c d
1147 </lilypond>
1148 </p>
1149
1150 </body>
1151 </html>
1152
1153
1154 @end example
1155
1156 @subsection xelatex
1157
1158 @verbatim
1159 \documentclass{article}
1160 \usepackage{ifxetex}
1161 \ifxetex
1162 %pour ce qui est de xetex
1163 \usepackage{xunicode,fontspec,xltxtra}
1164 \setmainfont[Numbers=OldStyle]{Times New Roman}
1165 \setsansfont{Arial}
1166 \else
1167 %inutile en l'absence de pdftex
1168 \usepackage[T1]{fontenc}
1169 \usepackage[utf8]{inputenc}
1170 \usepackage{mathptmx}%Times
1171 \usepackage{helvet}%Helvetica
1172 \fi
1173 %ici les paquetages que pdftex sait interpréter
1174 \usepackage[ngerman,finnish,english]{babel}
1175 \usepackage{graphicx}
1176
1177 \begin{document}
1178 \title{Un petit document avec LilyPond et xelatex}
1179 \maketitle
1180
1181 Les commandes habituelles de \textbf{fontes} sont fonctionnelles y
1182 compris au fil du texte, étant donné qu'\textsf{elles sont prises en
1183 charge par \LaTeX{} and XeteX.} Lorsque vous avez besoin de commandes
1184 particulières du style \verb+\XeTeX+, pensez à les inclure dans un
1185 environnement \verb+\ifxetex+. Vous pourrez ainsi utiliser la \ifxetex
1186 commande \XeTeX{} \else commande XeTeX \fi qui, elle, n'est pas reconnue
1187 par le \LaTeX traditionnel.
1188
1189 Vous pouvez inclure des commandes LilyPond directement dans votre texte,
1190 comme ici~:
1191
1192 \begin{lilypond}
1193 {a2 b c'8 c' c' c'}
1194 \end{lilypond}
1195
1196 \noindent
1197 puis reprendre le fil de votre discours.
1198
1199 Les fontes utilisées dans les extraits LilyPond  devront être définies
1200 au sein de l'extrait. Lisez le manuel d'ustilisation si vous ne
1201 maîtrisez pas lilypond-book.
1202
1203 \selectlanguage{ngerman}
1204 Auch Umlaute funktionieren ohne die \LaTeX -Befehle, wie auch alle anderen
1205 seltsamen Zeichen: ß, æ, ł, ã, č, wenn sie von der Schriftart unterstützt
1206 werden.
1207
1208 \end{document}
1209 @end verbatim
1210
1211
1212 @node Autres méthodes d'association texte-musique
1213 @section Autres méthodes d'association texte-musique
1214 @translationof Alternative methods of mixing text and music
1215
1216 D'autres moyens de mélanger musique et texte sans recourrir à
1217 @command{lilypond-book} sont abordés au chapitre
1218 @ref{Inclusion de partition LilyPond dans d'autres programmes}.
1219