]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/user/text.itely
Merge master into nested-bookparts
[lilypond.git] / Documentation / fr / user / text.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2 @ignore
3     Translation of GIT committish: bdf8540b74167817eab96ed3d13b35477217f9fe
4
5     When revising a translation, copy the HEAD committish of the
6     version that you are working on.  See TRANSLATION for details.
7 @end ignore
8
9 @c \version "2.11.61"
10
11 @c Translators: Jean-Charles Malahieude
12 @c Translation checkers: Valentin Villenave, John Mandereau
13
14 @node Text
15 @section Text
16
17 @lilypondfile[quote]{text-headword.ly}
18
19 Nous allons voir ici comment insérer dans une partition du texte, avec
20 différentes possibilité de formatage.
21
22 @cindex Texte, autres langues
23 Pour écrire des accents et autres caractères spéciaux, il suffit de
24 les insérer directement dans votre fichier LilyPond.  Ce fichier devra
25 être sauvegardé avec l'encodage UTF-8.  Pour plus d'informations, voir
26 @ref{Text encoding}.
27
28 @menu
29 * Writing text::                
30 * Formatting text::             
31 * Fonts::                       
32 @end menu
33
34
35 @node Writing text
36 @subsection Writing text
37
38 @menu
39 * Text scripts::                
40 * Text and line spanners::      
41 * Text spanners::               
42 * Text marks::                  
43 @end menu
44
45 @node Text scripts
46 @unnumberedsubsubsec Text scripts
47
48 @c I'm not fond of this "étiquette" wording of yours Jean-Charles;
49 @c j'utiliserais simplement l'expression "bloc \markup" afin
50 @c d'éviter toute confusion avec les \tags (qui méritent davantage
51 @c le titre d'étiquette, stricto sensu) -vv
52
53 @cindex Étiquette de texte
54 @cindex blocs de texte
55 @cindex ajout de texte
56
57 Vous pouvez placer arbitrairement des chaînes de caractères, ou
58 @ref{Formatting text} en langage LilyPond, au dessus ou au dessous des
59 notes en employant la syntaxe @code{c^"text"}.  Par défaut, ces
60 indications n'affecteront en rien l'espacement des notes, sauf à
61 utiliser la commande @code{\textLengthOn}.
62
63 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
64 c4^"longtext" \textLengthOn c4_"longlongtext" c4
65 @end lilypond
66
67 @noindent
68 Pour revenir à l'espacement par défaut, utilisez @code{\textLengthOff}.
69
70 Des constructions plus élaborées d'étiquette peuvent être obtenues en
71 ayant recours à la commande @emph{markup} :
72
73 @lilypond[fragment,ragged-right,verbatim,quote]
74 c'4^\markup { bla \bold bla }
75 @end lilypond
76
77 La commande @code{\markup} est décrite plus en détails dans la section
78 @ref{Formatting text}.
79
80
81 @predefined
82
83 @funindex \textLengthOn
84 @code{\textLengthOn},
85 @funindex \textLengthOff
86 @code{\textLengthOff}.
87
88
89 @commonprop
90
91 S'assurer que tous les éléments textuels et les paroles respectent
92 les marges du document requiert des calculs relativement lourds ; c'est
93 la raison pour laquelle LilyPond, par défaut, ne s'en préoccupe pas.
94 Vous pouvez cependant l'y forcer en définissant
95
96 @example
97 \override Score.PaperColumn #'keep-inside-line = ##t
98 @end example
99
100
101 @seealso
102
103 Dans ce manuel : @ref{Formatting text}.
104
105 Référence du programme : @rinternals{TextScript}.
106
107
108 @node Text and line spanners
109 @unnumberedsubsubsec Text and line spanners
110
111 Certaines indications d'interprétation comme @i{rallentando}, 
112 @i{accelerando} ou @i{trilles}, s'incrivent textuellement et se
113 prolongent sur plusieurs mesures à l'aide d'une ligne pleine, pointillée
114 ou ondulée.
115
116 Les routines chargées de matérialiser un @emph{glissando} sont tout à
117 fait adaptées à une gestion précise, à la fois du placement du texte, et
118 du calcul de l'envergure de sa ligne d'extension.  La routine
119 @code{ly:line-interface::print} est plus particulièrement en charge de
120 déterminer les points d'ancrage de la ligne et de la dessiner selon le
121 style requis.
122   
123 Voici un exemple qui illustre les différents styles de ligne
124 disponibles, ainsi que la manière de les personnaliser.
125
126 @lilypond[relative=2,ragged-right,verbatim,fragment]
127 d2 \glissando d'2
128 \once \override Glissando #'style = #'dashed-line
129 d,2 \glissando d'2
130 \override Glissando #'style = #'dotted-line
131 d,2 \glissando d'2
132 \override Glissando #'style = #'zigzag
133 d,2 \glissando d'2
134 \override Glissando #'style = #'trill
135 d,2 \glissando d'2
136 @end lilypond
137
138 L'information qui va déterminer les extrémités est calculée à la
139 volée pour chaque objet graphique.  Il est tout à fait possible de les
140 régler vous-même :
141
142 @lilypond[relative=2,ragged-right,verbatim,fragment]
143 e2 \glissando f
144 \once \override Glissando #'bound-details #'right #'Y = #-2
145 e2 \glissando f
146 @end lilypond
147
148 L'objet @code{Glissando}, comme tous ceux qui utilisent la routine
149 @code{ly:line-interface::print}, comporte une liste 
150 d'associations.  Dans le code ci-dessus, la valeur de @code{Y} est
151 fixée, dans la liste d'associations, à @code{-2} pour l'ancrage à
152 droite.  Vous pouvez naturellement ajuster l'extrémité gauche en
153 remplaçant @code{right} (pour @code{droite}) par @code{left}.
154
155 Si @code{Y} n'est pas fixé, sa valeur sera calculée en fonction de la
156 hauteur du point de référence droite de la ligne.
157
158 Lorsque survient un saut de ligne, la liste des ancrages est
159 augmentée d'une liste complémentaire contenant @code{left-broken}
160 (brisure à gauche) et @code{right-broken} (brisure à droite), comme
161 dans l'exemple suivant :
162
163 @lilypond[relative=2,ragged-right,verbatim,fragment]
164 \override Glissando #'breakable = ##T 
165 \override Glissando #'bound-details #'right-broken #'Y = #-3
166 c1 \glissando \break
167 f1
168 @end lilypond
169
170 Vous disposez des propriétés suivantes :
171
172 @table @code
173 @item Y
174 Fixe l'ordonnée (coordonnée-Y) de l'extrémité, mesurée en taille de
175 portée.  Il s'agit par défaut du centre de l'objet de rattachement ;
176 pour un glissando, ce sera le milieu de la tête de note.
177
178 Pour des marques horizontales, telles du texte ou le trait d'un
179 trille, cette valeur est figée à 0.
180
181 @item attach-dir
182 Détermine l'endroit où la ligne commence et finit, relativement à
183 l'objet de rattachement. Autrement dit, une valeur de @code{-1} (ou
184 @code{LEFT} pour gauche) fera commencer ou finir la ligne du côté
185 gauche de la tête de note de référence.
186
187 @item X
188 Coordonnée absolue du point final. Dans la mesure où elle est calculée
189 à la volée, il n'y a pas vraiment de raison de l'outrepasser.
190
191 @item stencil
192 Sous-propriété contenant les éventuels symboles présents avant ou
193 après la ligne. Destinée à un usage interne, nous vous recommendons
194 d'utiliser plutôt @code{text}.
195
196 @item text
197 Marqueur qui sera analysé pour alimenter @code{stencil}.  On y trouve
198 habituellement les @i{cresc.} ou @i{tr} des extenseurs horizontaux.
199
200 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
201 \override TextSpanner #'bound-details #'left #'text
202    = \markup { \small \bold Slower }
203 c2\startTextSpan b c a\stopTextSpan
204 @end lilypond
205
206 @item stencil-align-dir-y
207 @item stencil-offset
208 Lorsqu'ils ne sont pas définis, le tracé est tout simplement
209 positionné conformément aux sous-propriétés @code{X} et @code{Y}.  En
210 fixant soit @code{stencil-align-dir-y}, soit @code{stencil-offset},
211 vous pouvez décaler le coin du marqueur par rapport à l'extrémité de
212 la ligne.
213
214 @lilypond[relative=1,fragment,verbatim]
215 \override TextSpanner #'bound-details #'left #'stencil-align-dir-y = #DOWN
216 \override TextSpanner #'bound-details #'right #'stencil-align-dir-y = #UP
217
218 \override TextSpanner #'bound-details #'left #'text = #"gggg"
219 \override TextSpanner #'bound-details #'right #'text = #"hhhh"
220 c4^\startTextSpan c c c \stopTextSpan
221 @end lilypond
222
223 @item arrow
224 Assigner à cette sous-propriété la valeur @code{vrai} (@code{#t})
225 produira une terminaison en pointe de flèche.
226
227 @item padding
228 Cette sous-propriété contrôle l'espace entre les extrémités de la
229 ligne, telles que définies, et la réalité.  Sans ce léger décalage, le
230 début et la fin d'un glissando seraient en plein milieu des têtes de note.
231
232 @end table
233
234 @seealso
235
236 Référence du programme : @rinternals{TextSpanner},
237 @rinternals{Glissando}, @rinternals{VoiceFollower},
238 @rinternals{TrillSpanner}, @rinternals{line-spanner-interface}.
239
240 Exemples : @rlsr{Expressive marks}.
241
242
243 @node Text spanners
244 @unnumberedsubsubsec Text spanners
245
246 @cindex Prolongateurs de texte
247
248 Certaines indications d'interprétation comme @i{rallentando} ou 
249 @i{accelerando} s'incrivent en toutes lettres et se prolongent sur
250 plusieurs mesures grâce à une ligne pointillée.  Les commandes
251 @code{\startTextSpan} et @code{\stopTextSpan}, respectivement
252 attachées à la première et à la dernière note qu'elles concernent,
253 déterminent l'envergure de ces prolongateurs, ou extenseurs.
254
255 La chaîne à imprimer, ainsi que son style, sont définis par des
256 propriétés, comme ici :
257
258 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
259 c1
260 \textSpannerDown
261 \override TextSpanner #'bound-details #'left #'text =
262   \markup { \upright "rall" } 
263 c2\startTextSpan b c\stopTextSpan a
264 \break
265 \textSpannerUp
266 \override TextSpanner #'bound-details #'left #'text =
267   \markup { \italic "rit" } 
268 c2\startTextSpan b c\stopTextSpan a
269 @end lilypond
270
271 @predefined
272
273 @funindex textSpannerUp
274 @code{\textSpannerUp},
275 @funindex textSpannerDown
276 @code{\textSpannerDown},
277 @funindex textSpannerNeutral
278 @code{\textSpannerNeutral}.
279
280
281 @commonprop
282
283 Pour obtenir une ligne pleine, utilisez
284
285 @example
286 \override TextSpanner #'style = #'line
287 @end example
288
289
290 @seealso
291
292 Référence du programme : @rinternals{TextSpanner}.
293
294
295 @node Text marks
296 @unnumberedsubsubsec Text marks
297
298 @cindex coda sur une barre de mesure
299 @cindex segno sur une barre de mesure
300 @cindex point d'orgue sur une barre de mesure
301 @cindex barres de mesure, symboles au dessus de
302 @funindex \mark
303
304 La commande @code{\mark} est tout d'abord conçue pour les
305 @ref{Rehearsal marks}.  Elle peut néanmoins servir à insérer des
306 signes de coda ou de segno, ou bien un point d'orgue, au dessus d'une
307 barre de mesure.  Couplez-la alors à la commande @code{\markup} pour
308 avoir accès au symbole approprié (ils sont répertoriés dans 
309 @ref{The Feta font}).
310
311
312 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
313 c1 \mark \markup { \musicglyph #"scripts.ufermata" }
314 c1
315 @end lilypond
316
317 @noindent
318 Le résultat de @code{\mark} n'apparaîtra que sur la portée supérieure
319 d'un système.  Si vous introduisez la commande @code{\mark} au moment
320 d'une barre de mesure, la marque se placera au dessus de la barre.  Si
321 vous y faites appel au milieu d'une mesure, cette marque sera
322 positionnée entre les notes.  Si elle intervient en début de ligne,
323 elle sera placée juste avant la première note de cette portée.  Enfin,
324 une marque qui tomberait sur un saut de ligne sera imprimée au début
325 de la ligne suivante.
326 @c  IMO this is a bug; hopefully it'll be fixed soon, so I can
327 @c  delete this sentence.   -gp
328 Au cas où il n'y aurait pas de ligne à suivre, la marque ne sera pas imprimée.
329
330
331 @commonprop
332
333 Pour imprimer une marque à la fin de la portée en cours, procédez
334 ainsi :
335
336 @example
337 \override Score.RehearsalMark
338   #'break-visibility = #begin-of-line-invisible
339 @end example
340
341 @code{\mark} est souvent bien utile pour porter une indication à la
342 fin d'une mesure.  Pensez alors à modifier la propriété
343 @code{#'self-alignment}.  
344
345 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
346 \override Score.RehearsalMark
347   #'break-visibility = #begin-of-line-invisible
348 c1 c c c4 c c c
349 \once \override Score.RehearsalMark #'self-alignment-X = #right
350 \mark "D.S. al Fine "
351 @end lilypond
352
353 Les indications textuelles peuvent s'aligner par rapport à d'autres
354 objets que des barres de mesure, tels que l'armure, la clé ou le chiffre de
355 mesure : 
356
357 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
358 \relative {
359   c1
360   \key cis \major
361   \clef alto
362   \override Score.RehearsalMark #'break-align-symbols = #'(key-signature)
363   \mark "on key"
364   cis
365   \key ces \major
366   \override Score.RehearsalMark #'break-align-symbols = #'(clef)
367   \clef treble
368   \mark "on clef"
369   ces
370   \override Score.RehearsalMark #'break-align-symbols = #'(time-signature)
371   \key d \minor
372   \clef tenor
373   \time 3/4
374   \mark "on time"
375   c
376 }
377 @end lilypond
378
379 Les symboles pris en charge par @code{break-align-symbols} sont :
380 @code{ambitus}, @code{breathing-sign}, @code{clef}, @code{custos},
381 @code{staff-bar}, @code{left-edge}, @code{key-cancellation},
382 @code{key-signature}, et @code{time-signature}.
383
384 Par défaut, les indications textuelles sont alignées avec le milieu
385 des objets de notation. Bien entendu, vous pouvez modifier les
386 propriétés @code{break-align-anchor-alignment} ou
387 @code{break-align-anchor} des objets en question pour obtenir un autre
388 résultat.
389
390 @c KEEP LY
391 @lilypond[fragment,quote,ragged-right,verbatim]
392 {
393   \override Score.RehearsalMark #'break-align-symbols = #'(key-signature)
394   c1
395   \key cis \major
396
397   % La marque sera alignée sur le côté gauche de l'armure
398   \once \override Staff.KeySignature #'break-align-anchor-alignment = #LEFT
399   \mark \default
400   cis1
401   \key ces \major
402
403   % La marque sera alignée sur le côté droit de l'armure
404   \once \override Staff.KeySignature #'break-align-anchor-alignment = #RIGHT
405   \mark \default
406   ces1
407   \key cis \major
408
409   %  La marque sera alignée sur le côté gauche de l'armure,
410   % puis décalée vers la droite de 2 unités.
411   \once \override Staff.KeySignature #'break-align-anchor = #2
412   \mark \default
413   ces1
414 }
415 @end lilypond
416
417 Bien que ces indications textuelles ne soient habituellement imprimées
418 qu'au niveau de la portée supérieure, vous pouvez forcer leur
419 affectation à chacune des portées :
420
421 @lilypond[quote,ragged-right,verbatim,relative=2]
422 {
423   \new Score \with {
424     \remove "Mark_engraver"
425   }
426   <<
427     \new Staff \with {
428       \consists "Mark_engraver"
429     }
430     { c''1 \mark "foo" c'' }
431     \new Staff \with {
432       \consists "Mark_engraver"
433     }
434     { c'1 \mark "foo" c' }
435   >>
436 }
437 @end lilypond
438
439
440 @seealso
441
442 Référence du programme : @rinternals{RehearsalMark}.
443
444
445 @node Formatting text
446 @subsection Formatting text
447
448 @menu
449 * Text markup introduction::    
450 * Nested scores::               
451 * Page wrapping text::          
452 @end menu
453
454 @node Text markup introduction
455 @unnumberedsubsubsec Text markup introduction
456
457 @cindex étiquette
458 @cindex commentaire textuel
459 @cindex étiquette textuelle
460 @cindex texte ajouté
461
462 La commande @code{\markup} permet d'ajouter du texte.  Vous pouvez y
463 inclure des commandes, précédées d'un antislash @code{\} ; les
464 caractères @code{\} et @code{#} doivent être encadrés de guillemets
465 informatiques @code{"}.
466
467 @lilypond[quote,verbatim,fragment,relative=1]
468 c1^\markup { hello }
469 c1_\markup { hi there }
470 c1^\markup { hi \bold there, is \italic {anyone home?} }
471 c1_\markup { "\special {weird} #characters" }
472 @end lilypond
473
474 @noindent
475 Pour une liste des différentes commandes disponibles, consultez
476 @ref{Text markup commands}. 
477
478
479 @code{\markup} est avant tout conçu pour gérer les
480 @rinternals{TextScript}s, mais rien ne s'oppose à son utilisation
481 pour traiter du texte avec LilyPond.
482
483 @lilypond[quote,verbatim]
484 \header{ title = \markup{ \bold { foo \italic { bar! } } } }
485 \score{
486   \relative c'' {
487     \override Score.RehearsalMark
488       #'break-visibility = #begin-of-line-invisible
489     \override Score.RehearsalMark #'self-alignment-X = #right
490
491     \set Staff.instrumentName = \markup{ \column{ Alto solo } }
492     c2^\markup{ don't be \flat }
493     \override TextSpanner #'bound-details #'left #'text = \markup{\italic rit }
494     b2\startTextSpan
495     a2\mark \markup{ \large \bold Fine }
496     r2\stopTextSpan
497     \bar "||"
498   }
499   \addlyrics { bar, foo \markup{ \italic bar! } }
500 }
501 @end lilypond
502
503 La commande @code{\markup} peut intervenir à tout moment, y compris en
504 dehors d'un bloc @code{\score}. Voir à ce sujet 
505 @ref{Multiple scores in a book}. 
506
507 @lilypond[quote,ragged-right,verbatim]
508 \markup{ Here is some text. }
509 @end lilypond
510
511 @cindex changer de police
512
513 Le @emph{markup} de l'exemple précédent montre comment utiliser les
514 commandes de changement de police. Les commandes @code{\bold} et
515 @code{\italic} n'affectent que le premier mot qui les suit ; encadrez
516 les par des accolades si vous désirez que ces commandent s'appliquent
517 à plusieurs mots.
518
519 @example
520 \markup @{ \bold @{ c'est moi @} @}
521 @end example
522
523 @noindent
524 Une bonne habitude à prendre consiste à utiliser des accolades même
525 pour un seul mot, comme ici :
526 @example
527 \markup @{ qui \italic @{ est @} là ? @}
528 @end example
529
530 En mode @emph{markup}, vous pouvez composer des expressions comme
531 en mathématiques, des documents XML ou bien les expressions musicales.
532 Vous pouvez empiler ces expressions grâce à la commande
533 @code{\column}, ou les centrer par rapport à leur milieu avec
534 @code{\center-column}. 
535
536 @lilypond[quote,verbatim,fragment,relative=1]
537 c1^\markup { \column { a bbbb \line { c d } } }
538 c1^\markup { \center-column { a bbbb c } }
539 c1^\markup { \line { a b c } }
540 @end lilypond
541
542 Des listes non précédées de commande ne sont pas isolées. Ainsi, 
543 @example
544 \center-column @{ @{ a b @} @{ c d @} @}
545 @end example
546
547 @noindent
548
549 est la même expression que
550
551 @example
552 \center-column @{ a b c d @}
553 @end example
554
555 @noindent
556
557 L'utilisation des @code{"} ou de la commande @code{\line} permet de
558 différencier les listes de mots.
559
560 @lilypond[quote,verbatim,fragment,relative=1]
561 \textLengthOn
562 c4^\markup{ \center-column { on three lines } }
563 c4^\markup{ \center-column { "all one line" } }
564 c4^\markup{ \center-column { { on three lines } } }
565 c4^\markup{ \center-column { \line { on one line } } }
566 @end lilypond
567
568 Vous pouvez stocker les étiquettes textuelles en tant que variables,
569 et attacher ces identificateurs à des notes, comme
570 @example
571 allegro = \markup @{ \bold \large @{ Allegro @} @}
572  @{ a^\allegro b c d @}
573 @end example
574
575 Certains objets possèdent leurs propres procédures d'alignement, qui
576 annuleront toute spécification d'alignement que vous pourriez affecter
577 à un argument de type @emph{markup} que vous leur auriez fourni.  Par
578 exemple, les @rinternals{RehearsalMark} sont centrées
579 horizontalement ; de fait, utiliser 
580 @code{\mark \markup @{ \left-align .. @}} sera sans effet.
581
582 Par ailleurs, le placement vertical n'est effectué qu'après la
583 création de l'objet @emph{étiquette textuelle}. Si donc vous souhaitez
584 déplacer une étiquette, il vous faudra utiliser la propriété
585 @code{#'padding} ou créer un @qq{point d'ancrage} à l'intérieur même
586 de l'étiquette (généralement avec @code{\hspace #0}).
587
588 @lilypond[quote,verbatim,fragment,relative=1]
589 \textLengthOn
590 c'4^\markup{ \raise #5 "not raised" }
591 \once \override TextScript #'padding = #3
592 c'4^\markup{ raised }
593 c'4^\markup{ \hspace #0 \raise #1.5 raised }
594 @end lilypond
595
596 Certaines situations particulières, telles que les indications de
597 nuance, possèdent des propriétés prédéfinies quant à leur police.
598 Nous vous conseillons, en pareil cas, de réinitialiser ces propriétés
599 en utilisant @code{normal-text}.  Pour plus d'informations, consultez
600 @ref{Text markup commands}. 
601
602
603 @seealso
604
605 Dans ce manuel : @ref{Text markup commands}.
606
607 Référence du programme : @rinternals{TextScript}.
608
609 Fichiers d'initialisation : @file{scm/@/new@/-markup@/.scm}.
610
611
612 @knownissues
613
614 Le crénage ou la génération de ligatures ne sont accessibles que lors
615 d'un retraitement par @TeX{}.  Dans ce cas, LilyPond n'en tient pas
616 compte, et l'espacement de tels textes sera trop large.
617
618 Les erreurs de syntaxe sont peu loquaces.
619
620
621 @node Nested scores
622 @unnumberedsubsubsec Nested scores
623
624 Rien ne s'oppose à ce qu'une étiquette ne comporte de la musique.  Il
625 suffit que l'expression en question contienne un bloc @code{\score} et
626 un bloc @code{\layout}.
627
628 @lilypond[quote,verbatim,ragged-right]
629 \relative {
630   c4 d^\markup {
631     \score {
632       \relative { c4 d e f }
633       \layout { }
634     }
635   }
636   e f
637 }
638 @end lilypond
639
640 @node Page wrapping text
641 @unnumberedsubsubsec Page wrapping text
642 Alors que @code{\markup} s'utilise pour traiter un bloc de texte
643 insécable, @code{\markuplines} permet, employé en tête de partition,
644 d'obtenir un bloc de lignes réparties différemment et au cas où sur
645 plusieurs pages.
646
647 @verbatim
648 \markuplines {
649   \justified-lines {
650     Un long texte constitué de lignes justifiées.
651     ...
652   }
653   \justified-lines {
654     Un autre grand paragraphe justifié.
655     ...
656   }
657   ...
658 }
659 @end verbatim
660
661 @code{\markuplines} prend en argument une liste de lignes de texte,
662 qui peut elle-même consister en une suite de commandes générant à leur
663 tour des lignes de texte, comme ici :
664
665 @verbatim
666 \markuplines {
667   \line { ... }    % une ligne alignée à gauche
668   \fill-line { \line { ... } } % une ligne centrée
669   \wordwrap-lines { ... } % une liste de lignes alignées à gauche
670   \justified-lines { ... } % une liste de lignes justifiées
671 }
672 @end verbatim
673
674 Les différentes commandes permettant de générer des listes de lignes
675 se trouve dans @ref{Text markup list commands}.
676
677 @seealso
678
679 Dans ce manuel : @ref{Text markup list commands}, 
680 @ref{New markup list command definition}.
681
682 @predefined
683
684 @funindex \markuplines
685 @code{\markuplines}
686
687
688 @node Fonts
689 @subsection Fonts
690
691 @cindex sélection de polices
692 @cindex grossissement des polices
693 @funindex font-interface
694
695 C'est en jouant sur les propriétés des objets décrites ci-après que
696 vous pourrez sélectionner une police parmi les familles de fontes
697 préconfigurées.  LilyPond utilise par défaut la police musicale feta.
698 Pour le texte, les polices sont sélectionnées par Pango/Fontconfig.
699 C'est New Century Schoolbook qui sert de police sérif par défaut, et
700 celles définies lors de l'installation de Pango pour ce qui est du
701 sans-serif et du @q{typewriter}.
702
703
704 @itemize @bullet
705 @item @code{font-encoding}
706 symbolise le tracé des glyphes. N'utilisez cette propriété que pour
707 traiter des éléments non textuels, comme :
708
709
710 @code{fetaBraces} pour les accolades de partition pianistique,
711 @code{fetaMusic} pour de la musique (y compris musique ancienne),
712 @code{fetaDynamic} pour les nuances et @code{fetaNumber} pour les
713 chiffres. 
714
715 @item @code{font-family}
716 symbolise les différentes familles de police : @code{roman} (Computer
717 Modern), @code{sans}-serif et @code{typewriter} (espacement fixe).
718
719 @item @code{font-shape}
720 symbolise le style des caractères. En pratique, chaque famille de
721 police dispose de @code{italic}, @code{caps} (petites capitales) ou
722 @code{upright} (droit).
723
724 @item @code{font-series}
725 symbolise le niveau de gras des caractères. Chaque style dispose, pour
726 chaque famille, de @code{medium} et @code{bold} (gras).
727
728 @end itemize
729
730 Les variantes ci-dessus mentionnées font référence à une feuille de
731 style prédéfinie.  Vous pouvez cependant faire appel à une autre
732 police, en utilisant la propriété @code{font-name} :
733
734 @lilypond[fragment,verbatim]
735 {
736   \override Staff.TimeSignature #'font-name = #"Charter"
737   \override Staff.TimeSignature #'font-size = #2
738   \time 3/4
739   c'1_\markup {
740     \override #'(font-name . "Vera Bold")
741       { This text is in Vera Bold }
742   }
743 }
744 @end lilypond
745
746 @noindent
747 Vous pouvez utiliser n'importe quelle police, du moment qu'elle est
748 accessible par Pango/Fontconfig.  Pour obtenir la liste de toutes
749 les polices disponibles sur votre machine, lancez
750 @example
751 lilypond -dshow-available-fonts blabla
752 @end example
753 (quel qu'il soit, le dernier argument est obligatoire).
754
755
756 La propriété @code{font-size} permet de régler la taille de la police.
757 La taille effective que vous obtiendrez dépend de
758 @code{text-font-size} tel que défini dans le bloc @code{\paper}.
759
760 @cindex taille de police
761 @cindex police, augmenter la taille
762
763
764 Vous pouvez aussi changer la police par défaut au niveau du document.
765 Il suffit alors de faire appel à @code{make-pango-font-tree} au sein
766 du bloc @code{paper}.  Vous définirez alors la police à utiliser pour
767 du texte respectivement en roman, sans serif et monospace, comme ici : 
768
769 @cindex polices, définir 
770 @cindex Pango
771
772
773 @lilypond[verbatim]
774 \paper  {
775   myStaffSize = #20
776
777   #(define fonts
778     (make-pango-font-tree "Times New Roman"
779                           "Nimbus Sans"
780                           "Luxi Mono"
781                            (/ myStaffSize 20)))
782 }
783
784 {
785   c'^\markup { roman: foo \sans bla \typewriter bar }
786 }
787 @end lilypond
788
789 @c we don't do Helvetica / Courier, since GS incorrectly loads
790 @c Apple TTF fonts
791
792
793
794 @seealso
795
796 Exemples : @rlsr{Text}.
797