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