]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/fr/user/rhythms.itely
Split WWW target in two stages WWW-1 and WWW-2
[lilypond.git] / Documentation / fr / user / rhythms.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2 @ignore
3     Translation of GIT committish: f7420240e4ce1fe2217646482a47d00f566af52c
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.38"
10
11 @c Translators: Frédéric Chiasson
12 @c Translation checkers: Valentin Villenave, Jean-Charles Malahieude
13
14 @node Rhythms
15 @section Rhythms
16
17 This section discusses rhythms, durations, and bars.
18
19 @menu
20 * Writing rhythms::             
21 * Writing rests::               
22 * Displaying rhythms::          
23 * Beams::                       
24 * Bars::                        
25 * Special rhythmic concerns::   
26 @end menu
27
28
29 @node Writing rhythms
30 @subsection Writing rhythms
31
32 @menu
33 * Durations::                   
34 * Augmentation dots::           
35 * Tuplets::                     
36 * Scaling durations::           
37 @end menu
38
39 @node Durations
40 @unnumberedsubsubsec Durations
41
42 @cindex durées
43 @funindex \longa
44 @funindex \breve
45 @funindex \maxima
46
47 Dans les modes de notes, d'accords et de paroles, les durées sont
48 écrites avec des chiffres et des points : les durées sont indiquées par
49 leur valeur fractionnaire par rapport à la durée d'une ronde.  Une
50 noire, par exemple, qui équivaut à un 1/4 de ronde --- @qq{quarter note}
51 en anglais --- s'écrit @code{4}, alors qu'une blanche ---
52 @qq{half-note}, 1/2 ronde --- s'écrit @code{2}.  Pour des notes plus
53 longues qu'une ronde, vous devrez utiliser les commandes @code{\longa}
54 pour une longue, et @code{\breve} pour une brève, aussi appelée carrée.
55
56 @example
57 c'\breve
58 c'1 c'2 c'4 c'8 c'16 c'32 c'64 c'64
59 r\longa r\breve
60 r1 r2 r4 r8 r16 r32 r64 r64
61 @end example
62
63 @lilypond[quote]
64 \score {
65 \relative c'' {
66     a\breve*1/2 \autoBeamOff
67     a1 a2 a4 a8 a16 a32 a64 a64
68    \bar "empty"
69    \break
70     r\longa*1/4 r\breve *1/2
71     r1 r2 r4 r8 r16 r32 r64 r64
72   }
73   \layout {
74     ragged-right = ##t
75     indent=0\mm
76     \context {
77       \Score
78         \remove "Bar_number_engraver"
79     }
80     \context {
81       \Staff
82         \remove "Clef_engraver"
83         \override StaffSymbol #'transparent = ##t
84         \override TimeSignature #'transparent = ##t
85         \override BarLine #'transparent = ##t
86         \consists "Pitch_squash_engraver"
87     }
88   }
89 }
90 @end lilypond
91
92 Si la durée n'est pas précisée, elle est alors assimilée à la durée
93 précédente.  La valeur par défaut pour la première note est une noire
94 (4).
95
96 @lilypond[quote,ragged-right,verbatim,fragment]
97 { a a a2 a a4 a a1 a }
98 @end lilypond
99
100
101 @node Augmentation dots
102 @unnumberedsubsubsec Augmentation dots
103
104 @funindex .
105
106 Pour obtenir des notes pointées, ajoutez simplement un point
107 (@samp{.}) au chiffre.  Les notes doublement pointées sont créées de
108 la même façon.
109
110 @lilypond[quote,ragged-right,fragment,verbatim]
111 a'4 b' c''4. b'8 a'4. b'4.. c''8.
112 @end lilypond
113
114 @predefined
115
116 Les points sont normalement haussés pour éviter les lignes de portées,
117 sauf dans certaines polyphonies.  Les commandes suivantes peuvent être
118 utilisées pour demander manuellement une orientation particulière des
119 points.
120
121 @funindex \dotsUp
122 @code{\dotsUp},
123 @funindex \dotsDown
124 @code{\dotsDown},
125 @funindex \dotsNeutral
126 @code{\dotsNeutral}.
127
128 @seealso
129
130 Référence du programme : @rinternals{Dots}, @rinternals{DotColumn}.
131
132
133 @node Tuplets
134 @unnumberedsubsubsec Tuplets
135
136 @cindex nolets
137 @cindex triolets
138 @funindex \times
139
140 Les nolets --- triolets, quintolets, etc. --- sont obtenus en
141 multipliant toutes les durées d'une expression musicale par une
142 fraction.
143
144 @example
145 \times @var{fraction} @var{expr_musique}
146 @end example
147
148 @noindent
149 La durée de @var{expr_musique} sera multipliée par la fraction.  Le
150 dénominateur de la fraction sera imprimé au-dessus des notes, parfois
151 avec un crochet.  Le nolet le plus courant est le triolet, dans lequel 3
152 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur
153 écrite.
154
155 @lilypond[quote,ragged-right,fragment,verbatim]
156 g'4 \times 2/3 {c'4 c' c'} d'4 d'4
157 @end lilypond
158
159 Les nolets peuvent être imbriqués ; par exemple,
160
161 @lilypond[fragment,ragged-right,verbatim,relative=2]
162 \override TupletNumber #'text = #tuplet-number::calc-fraction-text
163 \times 4/6 {
164   a4 a
165   \times 3/5 { a a a a a }
166 }
167 @end lilypond
168
169 @predefined
170
171 @funindex \tupletUp
172 @code{\tupletUp},
173 @funindex \tupletDown
174 @code{\tupletDown},
175 @funindex \tupletNeutral
176 @code{\tupletNeutral}.
177
178
179 @commonprop
180
181 @funindex tupletNumberFormatFunction
182 @cindex nolets, formatage
183
184 La propriété @code{tupletSpannerDuration} spécifie la longueur voulue de
185 chaque crochet.  Avec elle, vous pouvez faire plusieurs nolets en ne
186 tapant @code{\times} qu'une fois, ce qui évite une longue saisie.  Dans
187 le prochain exemple, deux triolets sont imprimés avec une seule fonction
188 @code{\times}.
189
190 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
191 \set tupletSpannerDuration = #(ly:make-moment 1 4)
192 \times 2/3 { c8 c c c c c }
193 @end lilypond
194
195 @noindent
196 Pour plus d'information sur @code{make-moment}, voir
197 @ref{Time administration}.
198
199 L'apparence du chiffre est déterminée par la propriété @code{text} dans
200 @code{TupletNumber}.  La valeur par défaut imprime seulement le
201 dénominateur, mais si elle est définie par la fonction
202 @code{tuplet-number::calc-fraction-text}, la fraction entière
203 @var{num}:@var{den} sera imprimée à la place.
204
205 Pour éviter d'imprimer les chiffres des nolets, utilisez
206
207 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
208 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
209 \override TupletNumber #'transparent = ##t
210 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
211 @end lilypond
212
213 Utilisez la fonction @code{\tweak} pour définir une priorité dans le cas
214 de nolets imbriqués débutant au même moment.  Dans cet exemple,
215 @code{\tweak} spécifie un texte sous forme de fraction pour le
216 @code{TupletNumber} externe et de dénominateur pour les trois triolets
217 internes.
218
219 @lilypond[quote,ragged-right,verbatim]
220 \new Staff {
221   \tweak #'text #tuplet-number::calc-fraction-text
222   \times 4/3 {
223      \tweak #'text #tuplet-number::calc-denominator-text
224      \times 2/3 { c'8[ c'8 c'8] }
225      \times 2/3 { c'8[ c'8 c'8] }
226      \times 2/3 { c'8[ c'8 c'8] }
227   }
228 }
229 @end lilypond
230
231 Ici, @code{\tweak} et @code{\override} agissent de concert pour
232 spécifier le positionnement du @code{TupletBracket}.  Le premier
233 @code{\tweak} positionne le @code{TupletBracket} du nolet externe au
234 dessus de la portée. Le second @code{\tweak} positionne le
235 @code{TupletBracket} du premier triolet interne au dessous de la
236 portée.  Notez que cette paire de fonctions @code{\tweak} n'affecte
237 que le triolet extérieur et le premier des trois triolets imbriqués
238 parce qu'ils commencent au même instant musical.  Nous utilisons
239 @code{\override} de manière tout à fait normale, pour forcer le
240 positionnement du @code{TupletBracket} des deuxième et troisième
241 triolets en dessous de la portée.
242
243 @lilypond[quote,ragged-right,verbatim]
244 \new Staff {
245   \tweak #'text #tuplet-number::calc-fraction-text
246   \tweak #'direction #up
247   \times 4/3 {
248      \tweak #'direction #down
249      \times 2/3 { c'8[ c'8 c'8] }
250      \override TupletBracket #'direction = #down
251      \times 2/3 { c'8[ c'8 c'8] }
252      \times 2/3 { c'8[ c'8 c'8] }
253   }
254 }
255 @end lilypond
256
257 Les crochets de nolets peuvent aller jusqu'aux prémisses de la mesure
258 suivante, ou à la prochaine note.
259
260 @lilypond[ragged-right]
261 \new RhythmicStaff {
262   \set tupletFullLength = ##t
263   \time 4/4
264   \times 4/5 {
265     c4 c1
266   }
267   \set tupletFullLengthNote = ##t
268   \time 2/4
269   \times 2/3 {
270     c4 c c 
271   }
272   \time 3/4
273   c4 
274 }
275 @end lilypond
276
277
278 @seealso
279
280 Référence du programme : @rinternals{TupletBracket},
281 @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}.
282
283
284
285 @node Scaling durations
286 @unnumberedsubsubsec Scaling durations
287
288 Vous pouvez altérer la durée des notes en leur joignant une fraction
289 @var{N/M}, donnant @q{@code{*}@var{N/M}} --- ou @q{@code{*}@var{N}} si
290 @var{M=1}.  Ceci n'affectera pas l'apparence des notes ou silences
291 produits.
292
293 Dans l'exemple suivant, les trois premières notes prennent exactement
294 deux temps, mais aucun triolet n'est imprimé.
295
296 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
297 \time 2/4
298 a4*2/3 gis4*2/3 a4*2/3
299 a4 a4 a4*2
300 b16*4 c4
301 @end lilypond
302
303
304 @seealso
305
306 Dans ce manuel : @ref{Tuplets}.
307
308
309 @node Writing rests
310 @subsection Writing rests
311
312 @menu
313 * Rests::                       
314 * Skips::                       
315 * Multi measure rests::         
316 @end menu
317
318 @node Rests
319 @unnumberedsubsubsec Rests
320 @cindex silences
321
322 @funindex \rest
323 @funindex r
324
325 Les silences sont écrits comme des notes avec le nom de note @code{r}.
326
327 @lilypond[fragment,quote,ragged-right,verbatim]
328 r1 r2 r4 r8
329 @end lilypond
330
331 Les pauses d'une mesure complète, qui sont placées au centre de la
332 mesure, doivent être entrées comme des mesures de silence.  Elles
333 peuvent être utilisées pour une seule mesure comme pour plusieurs, et
334 leur utilisation est expliquée dans la section
335 @ref{Multi measure rests}.
336
337 Pour spécifier explicitement la position verticale d'un silence, écrivez
338 une note suivie de @code{\rest}.  Un silence sera placé à la position où
339 serait imprimée la note.
340
341 @lilypond[fragment,quote,ragged-right,verbatim]
342 a'4\rest d'4\rest
343 @end lilypond
344
345 @noindent
346 Cela rend plus facile la mise en place de la musique polyphonique,
347 puisque le formateur automatique de collision des silences laissera ces
348 silences tranquilles.
349
350 @seealso
351
352 Référence du programme : @rinternals{Rest}.
353
354
355 @node Skips
356 @unnumberedsubsubsec Skips
357
358 @cindex sauts de durée
359 @cindex silences invisibles
360 @cindex silences d'espacement
361 @funindex \skip
362 @funindex s
363
364 Un silence invisible --- que l'on pourrait appeler un @qq{saut} ---
365 peut être entré comme une note avec le nom de note `@samp{s}' ou avec
366 @code{\skip @var{durée}}
367
368 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
369 a4 a4 s4 a4 \skip 1 a4
370 @end lilypond
371
372 La syntaxe @code{s} est seulement disponible pour les modes d'entrée
373 de notes et d'accords.  Dans d'autres situations, pour l'entrée de
374 paroles par exemple, vous devrez utiliser la commande @code{\skip}.
375
376 @lilypond[quote,ragged-right,verbatim]
377 <<
378   \relative { a'2 a2 }
379   \new Lyrics \lyricmode { \skip 2 bla2 }
380 >>
381 @end lilypond
382
383 La commande de saut génère simplement une case musicale vide.  Elle ne
384 produit rien sur la partition, pas même un symbole transparent.  Le code
385 de saut @code{s} crée tout de même une @rinternals{Staff} et une
386 @rinternals{Voice} lorsque nécessaire, tout comme les commandes de
387 note et de silence.  Ainsi, le code suivant aboutit à une portée vide.
388
389 @lilypond[quote,ragged-right,verbatim]
390 { s4 }
391 @end lilypond
392
393 Le fragment @code{@{ \skip 4 @} } produirait une page vide.
394
395 @seealso
396
397 Référence du programme : @rinternals{SkipMusic}.
398
399
400 @node Multi measure rests
401 @unnumberedsubsubsec Multi measure rests
402
403 @cindex mesures à compter
404 @cindex mesure entière de silence
405 @cindex Silences, multi-mesures
406 @cindex Silences, mesure entère
407 @cindex une pause par mesure
408 @funindex R
409
410 Un silence valant une ou plusieurs mesures entières s'entre avec un
411 @samp{R} majuscule.  Ceci ne peut être utile que pour une mesure complètement
412 vide, et pour générer des parties séparées : ce silence sera alors
413 répété sur autant de mesures que nécessaire, ou bien imprimé une seule
414 fois.  La répétition est contrôlée par la propriété
415 @code{Score.skipBars}.  Au cas où ce commutateur est défini comme
416 vrai (lettre @code{##t} pour @q{true}), les mesures vides ne seront pas répétées, et le nombre exact de
417 mesures sera ajouté.
418
419 @lilypond[quote,ragged-right,fragment,verbatim]
420 \time 4/4 r1 | R1 | R1*2 \time 3/4 R2. \time 2/4 R2 \time 4/4
421 \set Score.skipBars = ##t R1*17 R1*4
422 @end lilypond
423
424 Le @code{1} de @code{R1} est le même que celui utilisé pour la durée
425 des notes.  Vous devrez donc, si le morceau n'est pas à 4/4, stipuler
426 un autre durée, qui pourra contenir des points d'augmentation ou être
427 libellé sous forme de fraction :
428
429 @lilypond[quote,ragged-right,fragment,verbatim]
430 \set Score.skipBars = ##t
431 \time 3/4
432 R2. | R2.*2
433 \time 13/8
434 R1*13/8
435 R1*13/8*12 |
436 \time 10/8 R4*5*4 |
437 @end lilypond
438
439 Un @code{R} qui s'étend sur une seule mesure s'imprime tantôt comme
440 une pause, tantôt comme une brève, et sera centré sur la mesure
441 quelle que soit la métrique.
442
443 Dans le cas où ce silence ne dure que quelques mesures, LilyPond
444 imprime sur la portée des @qq{ silences d'église }, simple suite de
445 rectangles.  La propriété @code{MultiMeasureRest.expand-limit} permet
446 d'obtenir un silence unique.
447
448 @lilypond[quote,ragged-right,fragment,verbatim]
449 \set Score.skipBars = ##t
450 R1*2 | R1*5 | R1*9
451 \override MultiMeasureRest #'expand-limit = 1
452 R1*2 | R1*5 | R1*9
453 @end lilypond
454
455 @cindex texte et silence multi-mesures
456 @cindex script et silence multi-mesures
457 @cindex point d'orgue et silence multi-measures
458
459 Vous pouvez aussi ajouter du texte à un silence multi-mesures en utilisant
460 la syntaxe @var{note}-@code{markup} (cf. @ref{Text markup}).  La
461 variable @code{\fermataMarkup} permet d'ajouter un point d'orgue.
462
463 @lilypond[quote,ragged-right,verbatim,fragment]
464 \set Score.skipBars = ##t
465 \time 3/4
466 R2.*10^\markup { \italic "ad lib." }
467 R2.^\fermataMarkup
468 @end lilypond
469
470 Attention !  c'est @code{MultiMeasureRestText} qui créera le texte, et
471 non @code{TextScript}.
472
473 @lilypond[quote,ragged-right,verbatim,fragment]
474 \override TextScript #'padding = #5
475 R1^"low"
476 \override MultiMeasureRestText #'padding = #5
477 R1^"high"
478 @end lilypond
479
480 Pour aligner votre texte sur le début de la mesure, rattachez-le à un
481 silence invisible de longueur zéro comme ceci :
482
483 @example
484 s1*0^"Allegro"
485 R1*4
486 @end example
487
488
489 @seealso
490
491 Référence du programme : @rinternals{MultiMeasureRestMusic},
492 @rinternals{MultiMeasureRest}.
493
494 L'objet de rendu @rinternals{MultiMeasureRestNumber} traite les
495 nombres, et @rinternals{MultiMeasureRestText} le texte ajouté par
496 l'utilisateur. 
497
498
499 @knownissues
500
501 Vous ne pouvez pas utiliser de doigtés (p.ex. @code{R1-4}) pour
502 positionner des nombres au dessus d'un silence multi-mesures, ni
503 modifier la hauteur.
504
505 @cindex condenser les silences
506
507 Condenser plusieurs silences en un unique silence multi-mesures ne peut 
508 être automatisé.  Les silences multi-mesures peuvent générer des
509 collisions avec d'autres silences.
510
511 Pensez à indiquer explicitement la durée de la note qui suit un
512 silence multi-mesures, car elle sera par défaut égale à la durée totale
513 des mesures à compter. Ainsi, dans l'exemple ci-après, les deux do
514 dièses vaudront chacun quatre mesures à 4/4.
515 @example
516 R1*4 cis cis
517 @end example
518 Lorsque @code{skipBars} est activé, le résultat semblera correct, mais
519 la numérotation des mesures sera suspendue. 
520
521
522 @node Displaying rhythms
523 @subsection Displaying rhythms
524
525 @menu
526 * Time signature::              
527 * Upbeats::                     
528 * Unmetered music::             
529 * Polymetric notation::         
530 * Automatic note splitting::    
531 @end menu
532
533 @node Time signature
534 @unnumberedsubsubsec Time signature
535
536 @cindex chiffrage de mesure
537 @cindex chiffre indicateur de mesure
538 @cindex métrique
539 @funindex \time
540
541 Le chiffre de mesure indique le mètre d'une pièce : une alternance
542 régulière de temps forts et de temps faibles.  Il est indiqué par une
543 fraction au début de la portée.
544
545 Le chiffre de mesure est réglé par la commande @code{\time}.
546
547 @lilypond[quote,ragged-right,fragment,verbatim]
548 \time 2/4 c'2 \time 3/4 c'2.
549 @end lilypond
550
551 @commonprop
552
553 Le symbole imprimé peut être modifié avec la propriété @code{style}.
554 En la réglant sur @code{#'()}, une fraction sera utilisée pour les
555 chiffres de mesure 4/4 et 2/2.
556
557 @lilypond[fragment,quote,ragged-right,verbatim]
558 \time 4/4 c'1
559 \time 2/2 c'1
560 \override Staff.TimeSignature #'style = #'()
561 \time 4/4 c'1
562 \time 2/2 c'1
563 @end lilypond
564
565 Il y a bien d'autres options pour sa mise en place.  Voir @ref{Ancient time
566 signatures} pour plus d'exemples.
567
568 @code{\time} définit les propriétés @code{timeSignatureFraction},
569 @code{beatLength} et @code{measureLength} dans le contexte
570 @code{Timing}, qui en principe est assimilé à @rinternals{Score}.  La
571 propriété @code{measureLength} détermine où des barres de mesure doivent
572 être insérées, et comment les groupements de notes doivent être gérés.
573 La modification de la valeur de @code{timeSignatureFraction} donne
574 également lieu à l'impression d'un symbole.
575
576 Plus d'options sont accessibles au moyen de la fonction Scheme
577 @code{set-time-signature}.  De concert avec le
578 @rinternals{Measure_grouping_engraver}, elle crée les signes de
579 @rinternals{MeasureGrouping}, qui facilitent la lecture de musiques
580 modernes, complexes rythmiquement.  Dans l'exemple suivant, les mesures
581 à 9/8 sont subdivisées en @code{(2 2 2 3)}, ce qui est donné comme
582 argument à la commande @code{set-time-signature}, en troisième position.
583
584 @lilypond[quote,ragged-right,verbatim]
585 \score {
586   \relative c'' {
587     #(set-time-signature 9 8 '(2 2 2 3))
588     g8[ g] d[ d] g[ g] a8[( bes g]) |
589     #(set-time-signature 5 8 '(3 2))
590     a4. g4
591   }
592   \layout {
593     \context {
594       \Staff
595       \consists "Measure_grouping_engraver"
596     }
597   }
598 }
599 @end lilypond
600
601
602 @seealso
603
604 Référence du programme : @rinternals{TimeSignature} et
605 @rinternals{Timing_translator}.
606
607 Exemples : @lsr{contemporary,compound-time-signature.ly}.
608
609
610 @knownissues
611
612 Le groupement automatique des ligatures n'utilise pas les groupements
613 spécifiés par @code{set-time-signature}.
614
615
616 @node Upbeats
617 @unnumberedsubsubsec Upbeats
618
619 @cindex anacrouse
620 @cindex levée
621 @cindex mesure incomplète
622 @funindex \partial
623
624
625 Les mesures incomplètes, telles que les anacrouses ou levées, doivent
626 être entrées avec la commande
627
628 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
629 \partial 16*5 c16 cis d dis e | a2. c,4 | b2
630 @end lilypond
631
632
633 La syntaxe de cette commande est
634
635 @example
636 \partial @var{durée}
637 @end example
638
639 @code{durée} étant la valeur rythmique devant être ajoutée avant la
640 mesure suivante.
641
642 Le programme traduit cette commande en
643
644 @example
645 \set Timing.measurePosition = -@var{durée}
646 @end example
647
648
649 La propriété @code{measurePosition} contient un nombre rationnel qui
650 indique, à ce point précis, où l'on en est de la mesure. Notez qu'il
651 peut s'agir d'un nombre négatif ; @code{\partial 4} signifie, pour le
652 programme : @qq{Dans cette mesure, il reste juste une noire}.
653
654
655 @knownissues
656
657 Cette commande ne prend pas en compte les notes d'ornement ou
658 appoggiatures au début de la musique. Lorsqu'un morceau commence par une
659 levée et avec des petites notes, la commande @code{\partial} devrait être
660 placée après celles-ci.
661
662 @lilypond[verbatim,quote,ragged-right,relative,fragment]
663 \grace f16
664 \partial 4
665 g4
666 a2 g2
667 @end lilypond
668
669 @code{\partial} n'est destiné à être utilisé qu'en début de pièce.
670 Si on l'utilise ailleurs qu'au début, des messages d'erreurs peuvent
671 s'afficher.
672
673
674 @node Unmetered music
675 @unnumberedsubsubsec Unmetered music
676
677 @cindex cadence
678 @funindex \cadenzaOn
679 @funindex \cadenzaOff
680
681
682 Les barres de mesure et les numéros de mesure sont calculés
683 automatiquement, ce qui n'est pas souhaitable dans le cas d'une musique
684 non mesurée --- les cadences, par exemple. Les commandes
685 @code{\cadenzaOn} et @code{\cadenzaOff} permettent de désactiver et de
686 rétablir la métrique automatique.
687
688 @lilypond[verbatim,quote,ragged-right,relative=2,fragment]
689 c4 d e d
690 \cadenzaOn
691 c4 c d8 d d f4 g4.
692 \cadenzaOff
693 \bar "|"
694 d4 e d c
695 @end lilypond
696
697
698 @knownissues
699
700 LilyPond ne change de ligne ou de page qu'au niveau des barres de
701 mesure.  Si votre musique non mesurée dure plus d'une ligne, il vous
702 faudra insérer des barres de mesure invisibles, pour indiquer à quels
703 endroit un saut de ligne peut intervenir.
704
705 @example
706 \bar ""
707 @end example
708
709
710 @node Polymetric notation
711 @unnumberedsubsubsec Polymetric notation
712
713 @cindex métrique composite
714 @cindex composite, métrique
715 @cindex métrique polymétrique
716 @cindex polymétrie
717
718 LilyPond ne gère pas les métriques composites de manière explicite,
719 mais on peut contourner ce problème.  Dans l'exemple suivant,
720 l'indicateur de métrique est obtenu grâce à une étiquette textuelle.
721 Cette étiquette vient s'insérer dans l'objet graphique (@emph{grob})
722 @rinternals{TimeSignature}.  Voir aussi
723 @lsr{contemporary,compound-time-signature}. 
724
725
726 @lilypond[verbatim,ragged-right]
727 % Create 9/8 split into 2/4 + 5/8
728 tsMarkup = \markup {
729   \override #'(baseline-skip . 2) \number {
730     \column { "2" "4" }
731     \vcenter "+"
732     \bracket \column { "5" "8" }
733   }
734 }
735
736 {
737   \override Staff.TimeSignature #'stencil =
738     #ly:text-interface::print
739   \override Staff.TimeSignature #'text = #tsMarkup
740   \time 9/8
741   c'2 \bar ":" c'4 c'4.
742   c'2 \bar ":" c'4 c'4.
743 }
744 @end lilypond
745
746 Il arrive aussi que chaque portée ait sa propre métrique.  Vous y
747 parviendrez en déplaçant le @rinternals{Timing_translator} dans le
748 contexte @rinternals{Staff}.
749
750 @example
751 \layout @{
752   \context @{ \Score
753      \remove "Timing_translator"
754      \remove "Default_bar_line_engraver"
755   @}
756   \context @{
757     \Staff
758     \consists "Timing_translator"
759     \consists "Default_bar_line_engraver"
760   @}
761
762 @}
763 @end example
764
765
766 Maintenant, chacune des portées dispose de sa propre métrique.
767 @example
768 <<
769   \new Staff @{
770     \time 3/4
771     c4 c c | c c c |
772   @}
773   \new Staff @{
774     \time 2/4
775     c4 c | c c | c c
776   @}
777   \new Staff @{
778     \time 3/8
779     c4. c8 c c c4. c8 c c
780   @}
781 >>
782 @end example
783
784 @lilypond[quote,ragged-right]
785 \layout{
786   \context{
787      \Score
788      \remove "Timing_translator"
789      \remove "Default_bar_line_engraver"
790     }
791   \context{ \Staff
792     \consists "Timing_translator"
793     \consists "Default_bar_line_engraver"
794   }
795 }
796
797 \relative c' <<
798   \new Staff {
799     \time 3/4
800     c4 c c | c c c |
801   }
802   \new Staff {
803     \time 2/4
804     c4 c | c c | c c
805   }
806   \new Staff {
807     \time 3/8
808     c4. c8 c c c4. c8 c c
809   }
810 >>
811 @end lilypond
812
813
814 Une autre forme de notation polymétrique consiste dans le fait que des
815 notes aient une durée relative différente selon la portée.  
816
817 Vous pouvez créer une telle notation en définissant une métrique
818 commune à toutes les portées,  que vous proratiserez manuellement
819 selon le cas en utilisant @code{timeSignatureFraction} pour obtenir la
820 division adéquate pour chaque portée.  Les durées, dans chacune des
821 portées, seront alors échelonnées par rapport à la métrique commune.
822 L'échelle de représentation se règle avec @code{\scaleDurations} ---
823 qui fonctionne comme @code{\times}, sans toutefois créer de crochet.
824 La syntaxe appropriée est :
825 @example
826 \scaleDurations #'(@var{numérateur} . @var{dénominateur}) @var{exprmusicale}
827 @end example
828
829
830 L'exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et
831 10/8.  Pour la deuxième portée, les durées sont multipliées par 2/3,
832 de telle sorte que @w{2/3 * 9/8 = 3/4} ; pour la troisième, elles sont
833 multipliées par 3/5, de telle sorte que @w{3/5 * 10/8 = 3/4}.
834
835 @lilypond[quote,ragged-right,verbatim,fragment]
836 \relative c' { <<
837   \new Staff {
838     \time 3/4
839     c4 c c | c c c |
840   }
841   \new Staff {
842     \time 3/4
843     \set Staff.timeSignatureFraction = #'(9 . 8)
844     \scaleDurations #'(2 . 3)
845       \repeat unfold 6 { c8[ c c] }
846   }
847   \new Staff {
848     \time 3/4
849     \set Staff.timeSignatureFraction = #'(10 . 8)
850     \scaleDurations #'(3 . 5) {
851       \repeat unfold 2 { c8[ c c] }
852       \repeat unfold 2 { c8[ c] }
853       | c4. c4. \times 2/3 { c8 c c } c4
854     }
855   }
856 >> }
857 @end lilypond
858
859
860
861
862 @knownissues
863
864 L'utilisation de métriques différentes en parallèle entraine un
865 alignement vertical.  De ce fait, les barres de mesure ont tendance à
866 fausser l'espacement régulier.
867
868
869 @node Automatic note splitting
870 @unnumberedsubsubsec Automatic note splitting
871
872 On peut convertir automatiquement les notes longues en notes liées.  Il
873 faut pour cela remplacer le graveur @rinternals{Note_heads_engraver}
874 par le graveur @rinternals{Completion_heads_engraver}.  Dans les
875 exemples suivants, les notes dépassant de la mesure sont divisées et
876 liées.
877
878 @lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm]
879 \new Voice \with {
880   \remove "Note_heads_engraver"
881   \consists "Completion_heads_engraver"
882 } {
883   c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2
884 }
885 @end lilypond
886
887 Ce graveur divise toutes les notes qui sortent de la mesure, et insère
888 des liaisons de prolongation.  Une utilisation posible consiste à
889 déboguer des partitions complexes : si les mesures ne sont pas
890 entièrement remplies, alors les liaisons de prolongation montrent
891 exactement la durée des décalages de mesure.
892
893 Si vous voulez permettre un saut de ligne aux barres de mesure où
894 @rinternals{Completion_heads_engraver} divise les notes, vous devez
895 aussi enlever @rinternals{Forbid_line_break_engraver}.
896
897
898 @knownissues
899
900 Bien que toutes les durées --- particulièrement celles contenant des
901 nolets --- ne puissent pas être représentées exactement avec des notes
902 normales et des points, le graveur n'insèrera pas de nolets.
903
904 @code{Completion_heads_engraver} affecte seulement les notes, il ne
905 divise pas les silences.
906
907 @seealso
908
909 Référence du programme : @rinternals{Completion_heads_engraver}.
910
911
912 @node Beams
913 @subsection Beams
914
915 @menu
916 * Automatic beams::             
917 * Manual beams::                
918 * Feathered beams::             
919 @end menu
920
921 @node Automatic beams
922 @unnumberedsubsubsec Automatic beams
923
924 LilyPond décide automatiquement de la manière de grouper les notes et
925 d'imprimer les ligatures.
926
927 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
928 \time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
929 @end lilypond
930
931 Lorsque ce comportement automatisé n'est pas satisfaisant, on peut
932 définir des groupements manuellement --- voir section suivante --- ou
933 personnaliser les groupements automatiques --- voir @ref{Setting
934 automatic beam behavior}.
935
936 La commande @code{\noBeam} peut servir à empêcher des notes
937 individuelles d'être rattachées aux autres.
938
939 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
940 \time 2/4 c8 c\noBeam c c
941 @end lilypond
942
943
944 @seealso
945
946 Référence du programme : @rinternals{Beam}.
947
948
949 @node Manual beams
950 @unnumberedsubsubsec Manual beams
951
952 @cindex groupements de note manuels
953 @cindex ligatures manuelles
954 @funindex ]
955 @funindex [
956
957 Dans certaines situations, il peut s'avérer nécessaire de
958 supplanter l'algorithme de groupement automatique des notes, par
959 exemple pour prolonger une ligature par-dessus un silence ou une barre
960 de mesure.  Le début et la fin de la ligature sont alors indiqués par
961 @code{[} et @code{]}.
962
963 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
964 {
965   r4 r8[ g' a r8] r8 g[ | a] r8
966 }
967 @end lilypond
968
969
970 @commonprop
971
972 @funindex stemLeftBeamCount
973 @funindex stemRightBeamCount
974
975 LilyPond peut déterminer automatiquement les sous-groupes à
976 l'intérieur d'un groupement de notes, bien que le résultat ne soit pas 
977 toujours optimal.  Les propriétés @code{stemLeftBeamCount} et
978 @code{stemRightBeamCount} permettent alors
979 d'ajuster ce comportement.  Lorsque l'une ou l'autre de ces propriétés
980 est définie, elle ne s'applique qu'une seule fois, après quoi sa
981 définition est effacée.
982
983 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
984 {
985    f8[ r16
986       f g a]
987    f8[ r16
988    \set stemLeftBeamCount = #1
989       f g a]
990 }
991 @end lilypond
992
993 La propriété @code{subdivideBeams} sert à grouper les double-croches
994 ou les valeurs plus brèves pulsation par pulsation, la pulsation
995 étant définie par la propriété @code{beatLength}.
996
997 @lilypond[fragment,quote,relative=2,verbatim]
998 c16[ c c c c c c c]
999 \set subdivideBeams = ##t
1000 c16[ c c c c c c c]
1001 \set Score.beatLength = #(ly:make-moment 1 8)
1002 c16[ c c c c c c c]
1003 @end lilypond
1004 @funindex subdivideBeams
1005
1006 @noindent
1007 Pour plus d'information sur @code{make-moment}, voir
1008 @ref{Time administration}.
1009
1010 Lorsqu'une ligature franchit une barre de mesure, le saut
1011 de ligne est en principe interdit à cet endroit.  Ce comportement peut
1012 être outrepassé en définissant @code{breakable}.
1013
1014 @funindex breakable
1015
1016 @cindex ligatures et sauts de ligne
1017 @cindex ligatures coudées
1018 @cindex auto-knee-gap
1019
1020 LilyPond insère automatiquement des ligatures coudées --- certaines
1021 notes vers le haut, d'autres vers le bas --- lorsqu'il détecte un espace
1022 important entre des têtes de notes. Ce comportement peut être changé par
1023 l'intermédiaire de l'objet @code{auto-knee-gap}
1024
1025
1026 @knownissues
1027
1028 Les ligatures coudées à cheval sur deux portées ne peuvent être
1029 employées en même temps que des portées invisibles.  Voir
1030 @ref{Hiding staves}.
1031
1032 @c Is this still true with skyline spacing stuff? -J.Mandereau
1033 Les ligatures peuvent entrer en collision avec des symboles entourant
1034 les notes, contrairement aux textes ou aux altérations.
1035
1036
1037 @node Feathered beams
1038 @unnumberedsubsubsec Feathered beams
1039
1040 Les ligatures en soufflet s'obtiennent en définissant la propriété
1041 @code{grow-direction} d'une barre de ligature.  La fonction
1042 @code{\featherDurations} sert à ajuster la durée des notes.
1043
1044 @lilypond[ragged-right,relative=1,fragment,verbatim,quote]
1045 \override Beam #'grow-direction = #LEFT
1046 \featherDurations #(ly:make-moment 5 4) 
1047 {
1048   c16[ c c c c c c]
1049 }
1050 @end lilypond
1051
1052 @knownissues
1053
1054 La commande @code{\featherDurations} ne permet de traiter que de très
1055 courts extraits.
1056
1057
1058 @node Bars
1059 @subsection Bars
1060
1061
1062 @menu
1063 * Bar check::                   
1064 * Bar lines::                   
1065 * Bar numbers::                 
1066 * Barnumber check::             
1067 * Rehearsal marks::             
1068 @end menu
1069
1070 @node Bar check
1071 @unnumberedsubsubsec Bar check
1072
1073 @cindex vérification des limites de mesure
1074 @cindex mesures, vérification des limites
1075 @funindex barCheckSynchronize
1076 @funindex |
1077
1078 Les tests de limites de mesure (ou tests de mesure) aident à détecter
1079 les erreurs dans les durées.  Un test de mesure s'écrit avec une barre
1080 verticale, @samp{|}.  Lors du traitement, elle doit correspondre à une
1081 barre de mesure.  Sinon, un avertissement est émis.  Dans l'exemple
1082 suivant, le deuxième test de mesure signale une erreur.
1083 @example
1084 \time 3/4 c2 e4 | g2 |
1085 @end example
1086
1087 Le test de mesure peut être aussi utilisé dans les paroles, par exemple :
1088 @example
1089 \lyricmode @{
1090  \time 2/4
1091  Twin -- kle | Twin -- kle
1092 @}
1093 @end example
1094
1095 Des durées incorrectes font échouer les tests de mesure, et peuvent
1096 souvent mettre la partition sens dessus dessous, particulièrement s'il
1097 s'agit de musique polyphonique.  Vérifier les tests de mesure qui ont
1098 échoué et les durées incorrectes est un bon moyen de commencer à
1099 corriger sa partition.
1100
1101 @funindex |
1102 @funindex pipeSymbol
1103
1104 Il est aussi possible d'attribuer une autre valeur au symbole
1105 @code{|}, en assignant une expression musicale à @code{pipeSymbol},
1106
1107 @lilypond[quote,ragged-right,verbatim]
1108 pipeSymbol = \bar "||"
1109
1110 { c'2 c' | c'2 c' }
1111 @end lilypond
1112
1113
1114 @node Bar lines
1115 @unnumberedsubsubsec Bar lines
1116
1117 @cindex barres de mesure
1118 @funindex \bar
1119 @cindex barres de reprise
1120
1121
1122 Les barres de mesures délimitent les mesures, mais peuvent aussi
1123 indiquer une reprise. En principe, elles sont insérées automatiquement,
1124 et les sauts de ligne ne peuvent avoir lieu qu'au niveau de ces barres.
1125
1126 Il est possible de forcer l'impression d'une barre de mesure spéciale,
1127 avec la commande @code{\bar} :
1128
1129 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1130 c4 \bar "|:" c4
1131 @end lilypond
1132
1133
1134 Les styles de barres de mesure disponibles sont
1135
1136 @c @lilypondfile[ragged-right,quote]{bar-lines.ly}
1137
1138
1139 En plus de cela, on peut demander @code{"||:"}, qui équivaut à
1140 @code{"|:"}, mais qui donnera, en cas de saut de ligne, une double barre
1141 en fin de ligne, et une barre de reprise au début de la ligne suivante.
1142
1143 Il est possible d'autoriser un saut de ligne même s'il n'y a pas
1144 de barre de mesure visible, en utilisant :
1145
1146 @example
1147 \bar ""
1148 @end example
1149
1150 @noindent
1151
1152
1153 Ceci insérera une barre de mesure invisible, et permettra de sauter de
1154 ligne à cet endroit, sans incrémenter le numéro de mesure.
1155
1156
1157 Dans une partition comprenant plusieurs portées, la commande @code{\bar}
1158 placée sur une portée s'applique automatiquement à toutes les
1159 portées. Les barres de mesure que l'on obtient alors sont d'un seul
1160 tenant sur les portées d'un @code{StaffGroup}, d'un @code{PianoStaff} ou
1161 d'un @code{GrandStaff}.
1162
1163 @lilypond[quote,ragged-right,fragment,verbatim]
1164 <<
1165   \new StaffGroup <<
1166     \new Staff {
1167       e'4 d'
1168       \bar "||"
1169       f' e'
1170     }
1171     \new Staff { \clef bass c4 g e g }
1172   >>
1173   \new Staff { \clef bass c2 c2 }
1174 >>
1175 @end lilypond
1176
1177
1178 @commonprop
1179
1180 @funindex whichBar
1181 @funindex repeatCommands
1182 @funindex defaultBarType
1183
1184
1185 La commande @code{\bar }@var{bartype} sert de raccourci pour @code{\set
1186 Timing.whichBar = }@var{bartype}.  Dès que l'on définit @code{whichBar},
1187 une barre de mesure est créée selon le style défini.
1188
1189
1190 Dès que la propriété @code{whichBar} est définie, une barre de mesure
1191 est créée.  À chaque début de mesure, elle prend la valeur de
1192 @code{Timing.defaultBarType}.  La valeur de @code{repeatCommands} sert à
1193 remplacer les barres de mesure par défaut.
1194
1195 Nous vous invitons à utiliser @code{\repeat} pour indiquer les
1196 reprises. Voyez à ce sujet @ref{Repeats}.
1197
1198
1199 @seealso
1200
1201 Dans ce manuel : @ref{Repeats}, @ref{System start delimiters}.
1202
1203 Référence du programme : @rinternals{BarLine} (faisant partie du
1204 contexte @rinternals{Staff}), @rinternals{SpanBar} (sur plusieurs
1205 portées).
1206
1207
1208 @node Bar numbers
1209 @unnumberedsubsubsec Bar numbers
1210
1211 @cindex Mesure, numéro de
1212 @cindex numéros de mesure
1213 @funindex currentBarNumber
1214
1215 Les numéros de mesure sont imprimés par défaut à chaque début de
1216 ligne.  Ce nombre est stocké par la propriété @code{currentBarNumber}
1217 qui sera mis à jour à chaque mesure.
1218
1219 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1220 \repeat unfold 4 {c4 c c c} \break
1221 \set Score.currentBarNumber = #50
1222 \repeat unfold 4 {c4 c c c}
1223 @end lilypond
1224
1225 L'impression d'un numéro de mesure ne peut intervenir que s'il y a une
1226 barre.  Aussi, pour pouvoir le faire au début d'un morceau,
1227 devrez-vous ajouter une barre vide :
1228
1229 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1230 \set Score.currentBarNumber = #50
1231 \bar ""
1232 \repeat unfold 4 {c4 c c c} \break
1233 \repeat unfold 4 {c4 c c c}
1234 @end lilypond
1235
1236 Vous pouvez imprimer un numéro de mesure à intervalles réguliers plutôt
1237 qu'en tête de chaque ligne.  C'est ce qu'illustre l'exemple suivant,
1238 dont la source complète est 
1239 @lsr{staff,making-bar-numbers-appear-at-regular-intervals.ly}.
1240
1241 @c @lilypondfile[ragged-right,quote]{bar-number-regular-interval.ly}
1242
1243 Désactiver le graveur concerné --- @code{Bar_number_engraver} ---
1244 donnera une partition sans numéros de mesure.
1245
1246 @lilypond[verbatim,ragged-right,quote]
1247 \layout {
1248   \context {
1249     \Score
1250     \remove "Bar_number_engraver"
1251   }
1252 }
1253 \relative c''{
1254 c4 c c c \break
1255 c4 c c c
1256 }
1257 @end lilypond
1258
1259
1260 @seealso
1261
1262 Référence du programme : @rinternals{BarNumber}.
1263
1264 Exemples : @lsrdir{staff}
1265
1266
1267 @knownissues
1268
1269 Les numéros de mesure peuvent entrer en collision avec les crochets de
1270 @rinternals{StaffGroup}. La propriété @code{padding} --- décalage
1271 --- de l'objet @rinternals{BarNumber} permet alors d'ajuster leur
1272 positionnement. 
1273
1274
1275 @node Barnumber check
1276 @unnumberedsubsubsec Barnumber check
1277
1278 Lorsque l'on recopie de longues pièces, il peut être utile de vérifier
1279 que les numéros de mesures de LilyPond correspondent à l'original que
1280 l'on recopie.  Cela se fait avec @code{\barNumberCheck}.  Par exemple,
1281
1282 @verbatim
1283 \barNumberCheck #123
1284 @end verbatim
1285
1286 @noindent
1287 affiche un avertissement lors du traitement si le numéro de mesure à ce
1288 point (variable @code{currentBarNumber}) n'est pas 123.
1289
1290
1291 @node Rehearsal marks
1292 @unnumberedsubsubsec Rehearsal marks
1293
1294 @cindex Repères, indication de
1295 @funindex \mark
1296
1297 Indiquer un repère s'obtient grâce à la commande @code{\mark}.
1298
1299 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1300 c1 \mark \default
1301 c1 \mark \default
1302 c1 \mark #8
1303 c1 \mark \default
1304 c1 \mark \default
1305 @end lilypond
1306
1307 @noindent
1308 La lettre@tie{}@q{I} n'est pas utilisée, conformément aux usages de la
1309 gravure.  Cependant, vous pourrez intégrer la lettre @q{I} en utilisant
1310
1311 @example
1312 \set Score.markFormatter = #format-mark-alphabet
1313 @end example
1314
1315 Lorsque vous utilisez @code{\mark \default}, le repère s'incrémente
1316 automatiquement ; toutefois donner un nombre en argument permet de
1317 spécifier manuellement le repère en question.  La valeur à utiliser
1318 est enregistrée dans la propriété @code{rehearsalMark}.
1319
1320 Le style du repère est déterminé par la propriété
1321 @code{markFormatter}.  Il s'agit d'une fonction qui prend en arguments
1322 le repère en cours (un entier) ainsi que le contexte en cours, et
1323 retournera un objet de type étiquette.  Dans l'exemple qui suit,
1324 @code{markFormatter} est réglé pour une procédure type. Quelques
1325 mesure plus loin, son comportement est modifié pour imprimer un
1326 repère encadré.
1327
1328 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
1329 \set Score.markFormatter = #format-mark-numbers
1330 c1 \mark \default
1331 c1 \mark \default
1332 \set Score.markFormatter = #format-mark-box-numbers
1333 c1 \mark \default
1334 c1 \mark \default
1335 c1
1336 @end lilypond
1337
1338 Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les
1339 définitions de @code{format-mark-numbers} (comportement par défaut), 
1340 @code{format-mark-box-numbers},
1341 @code{format-mark-letters} et @code{format-mark-box-letters}.  Vous
1342 pouvez vous en inspirer pour d'autres fonctions de formatage.
1343
1344 @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} et 
1345 @code{format-mark-circle-barnumbers}  permettent d'imprimer le numéro
1346 de mesure au lieu des compteurs alphabétique ou numérique.
1347
1348 On peut aussi spécifier manuellement une marque de repère :
1349
1350 @example
1351 \mark "A1"
1352 @end example
1353
1354 @noindent
1355 @code{Score.markFormatter} sera sans effet sur des repères ainsi
1356 définis.  Un @code{\markup} peut néanmoins s'utiliser en argument.
1357
1358 @example
1359 \mark \markup@{ \box A1 @}
1360 @end example
1361
1362 @cindex segno
1363 @cindex coda
1364 @cindex D.S al Fine
1365
1366 Un @code{\mark} peut contenir un glype musical tel que le signe
1367 @emph{segno}.  
1368
1369 @lilypond[fragment,quote,ragged-right,verbatim,relative]
1370 c1 \mark \markup { \musicglyph #"scripts.segno" }
1371 c1 \mark \markup { \musicglyph #"scripts.coda" }
1372 c1 \mark \markup { \musicglyph #"scripts.ufermata" }
1373 c1
1374 @end lilypond
1375
1376 @noindent
1377 Pour connaître les différents symboles accessibles par
1378 @code{\musicglyph}, consultez @ref{The Feta font}.
1379
1380 Pour affiner le positionnement des repères, veuillez vous référer à
1381 @ref{Text marks}.
1382
1383 @seealso
1384
1385 Dans ce manuel : @ref{Text marks}.
1386
1387 Référence du programme : @rinternals{RehearsalMark}.
1388
1389 Fichiers d'initialisation : @file{scm/@/translation@/-functions@/.scm}
1390 contient les définitions de @code{format-mark-numbers} et
1391 @code{format-mark-letters}.  Elles seront source d'inspiration pour
1392 d'autres fonctions de formatage.
1393
1394 Exemples : @lsr{parts,rehearsal-mark-numbers.ly}
1395
1396
1397 @node Special rhythmic concerns
1398 @subsection Special rhythmic concerns
1399
1400
1401 @menu
1402 * Grace notes::                 
1403 * Aligning to cadenzas::        
1404 * Time administration::         
1405 * Proportional notation (introduction)::  
1406 @end menu
1407
1408 @node Grace notes
1409 @unnumberedsubsubsec Grace notes
1410
1411 @funindex \grace
1412 @cindex ornements
1413 @cindex notes d'ornement
1414 @cindex appoggiature
1415 @cindex accacciature
1416 @cindex petite note
1417
1418
1419 Les petites notes sont des ornements entièrement écrits.  Les plus
1420 courantes sont les accacciatures, qui doivent se jouer très vite,
1421 et qui s'écrivent sous forme d'une petite note barrée (sur la hampe)
1422 et liée.  L'appoggiature est une petite note non barrée, qui vole
1423 une fraction à la durée de la note réelle qui la suit.
1424
1425 Ces petites notes sont entrées avec les commandes @code{\acciaccatura}
1426 et @code{\appoggiatura}, comme le montre l'exemple suivant :
1427
1428 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1429 b4 \acciaccatura d8 c4 \appoggiatura e8 d4
1430 \acciaccatura { g16[ f] } e4
1431 @end lilypond
1432
1433
1434 Ce sont là deux formes spéciales de la commande @code{\grace}, qui prend
1435 en charge toutes les petites notes. Si on la fait suivre d'une
1436 expression musicale, un groupe de petites notes sera créé, sans impact
1437 sur la métrique.
1438
1439 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1440 c4 \grace c16 c4
1441 \grace { c16[ d16] } c2 c4
1442 @end lilypond
1443
1444 @noindent
1445 Contrairement à @code{\acciaccatura} ou @code{\appoggiatura}, la 
1446 commande @code{\grace} ne provoque pas de liaison.
1447
1448 La durée des petites notes est interprétée par le programme en fonction
1449 d'un deuxième compteur de temps, le chronomètre @code{grace}.  Chaque
1450 instant est défini par deux nombres rationnels : le premier compte les
1451 durées réelles, le second compte la durée des petites notes.  Reprenons
1452 l'exemple ci-dessus en y ajoutant ces couples de nombres :
1453
1454 @lilypond[quote,ragged-right]
1455 <<
1456   \relative c''{
1457     c4 \grace c16 c4 \grace {
1458     c16[ d16] } c2 c4
1459   }
1460   \new Lyrics \lyricmode {
1461     \override LyricText #'font-family = #'typewriter
1462
1463     \markup { (0,0) } 4
1464     \grace { \markup {
1465       ( \fraction 1 4 , \fraction -1 16 ) } 16 }
1466     \markup { (\fraction 1 4 , 0 ) } 4
1467     \grace {
1468       \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16
1469       \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16
1470     }
1471     \markup { ( \fraction 2 4 , 0 ) }
1472   }
1473 >>
1474 @end lilypond
1475
1476 Les petites notes se placent de façon synchrone entre les différentes
1477 portées.  Dans l'exemple suivant, il y a deux petites double-croches
1478 pour chaque petite croche.
1479
1480 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1481 << \new Staff { e4 \grace { c16[ d e f] } e4 }
1482    \new Staff { c4 \grace { g8[ b] } c4 } >>
1483 @end lilypond
1484
1485 @funindex \afterGrace
1486
1487 La commande @code{\afterGrace} sert à placer une petite note après une
1488 note réelle --- et non @emph{avant} comme d'ordinaire.  Cette commande
1489 requiert deux arguments : la note réelle, et la ou les petites notes qui
1490 suivent.
1491
1492 @lilypond[ragged-right, verbatim,relative=2,fragment]
1493 c1 \afterGrace d1 { c16[ d] } c4
1494 @end lilypond
1495
1496 Les petites notes se placent alors aux 3/4 de la durée de la note
1497 réelle.  Cette fraction peut être changée en définissant
1498 @code{afterGraceFraction} ; ainsi,
1499
1500 @example
1501 #(define afterGraceFraction (cons 7 8))
1502 @end example
1503
1504 @noindent
1505 placera la petite note à 7/8 de la note réelle.
1506
1507 On peut obtenir le même effet manuellement, de la façon suivante :
1508
1509 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1510 \new Voice {
1511   << { d1^\trill_( }
1512      { s2 \grace { c16[ d] } } >>
1513   c4)
1514 }
1515 @end lilypond
1516
1517 @noindent
1518 Le silence invisible peut être plus ou moins long --- ici c'est une
1519 demi-pause --- afin d'ajuster l'espace entre la note réelle et les
1520 petites notes.
1521
1522 Les expressions @code{\grace} obéissent à des règles typographiques
1523 particulières, notamment pour régler l'orientation et la taille des
1524 objets.  De ce fait, toute subtilité de mise en forme devra être
1525 indiquée @emph{à l'intérieur} de l'expression introduite par
1526 @code{\grace} :
1527
1528 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1529 \new Voice {
1530   \acciaccatura {
1531     \stemDown
1532     f16->
1533     \stemNeutral
1534   }
1535   g4
1536 }
1537 @end lilypond
1538
1539 @noindent
1540 Tous les réglages ajoutés doivent également être désactivés dans cette
1541 même expression.
1542
1543 Il est possible de changer globalement la mise en forme des petites
1544 notes dans un morceau, au moyen de la fonction
1545 @code{add-grace-property}.  Ici, par exemple, on ôte la définition de
1546 l'orientation des objets @code{Stem} pour toutes les petites notes, afin
1547 que les hampes ne soient pas toujours orientées vers le haut.
1548
1549 @example
1550 \new Staff @{
1551  #(add-grace-property 'Voice 'Stem 'direction '())
1552  @dots{}
1553 @}
1554 @end example
1555
1556 @noindent
1557 Il est par ailleurs possible de modifier les variables
1558 @code{startGraceMusic}, @code{stopGraceMusic},
1559 @code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic},
1560 @code{startAppoggiaturaMusic}, et @code{stopAppoggiaturaMusic}.
1561 Pour plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}.
1562
1563 @noindent
1564 Le trait que l'on trouve sur les hampes des accacciatures peut
1565 être appliqué dans d'autres situations en définissant @*
1566 @code{\override Stem  #'stroke-style = #"grace"}.
1567
1568
1569 @commonprop
1570
1571 Il est possible de forcer l'élasticité de l'espacement des notes d'agrément.
1572
1573 @lilypond[relative=2,ragged-right]
1574 <<
1575   \override Score.SpacingSpanner #'strict-grace-spacing = ##t
1576   \new Staff {
1577      c'4
1578      \afterGrace
1579      c'4
1580      { c'16[ c'8 c'16] }
1581      c'4
1582   }  
1583   \new Staff {
1584      c'16[ c'16 c'16 c'16]
1585      c'16[ c'16 c'16 c'16]
1586      c'4
1587   }
1588 >>
1589 @end lilypond
1590
1591
1592 @seealso
1593
1594 Référence du programme : @rinternals{GraceMusic}.
1595
1596
1597 @knownissues
1598
1599 Une partition commençant par une expression @code{\grace} doit faire
1600 intervenir la commande @code{\new Voice}, sans quoi la note réelle et
1601 la petite note se retrouveront sur des portées différentes.
1602
1603 La synchronisation des petites notes se fait de façon parfois
1604 surprenante, car les autres objets de la portée --- barres de mesure,
1605 armures, etc. --- sont eux aussi synchrones. Pensez-y lorsque vous
1606 mélez des portées comprenant des petites notes et d'autres sans :
1607
1608 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1609 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1610    \new Staff { c4 \bar "|:" d4 } >>
1611 @end lilypond
1612
1613 @noindent
1614 Il est possible de remédier à cela en insérant sur les autres portées
1615 des silences invisibles dans une expression précédée de @code{\grace},
1616 correspondant à la durée des petites notes.
1617
1618 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1619 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1620    \new Staff { c4 \bar "|:" \grace s16 d4 } >>
1621 @end lilypond
1622  
1623 Seules des expressions musicales séquentielles peuvent être utilisées
1624 pour des petites notes ; il n'est pas possible d'imbriquer ni de
1625 juxtaposer des sections de petites notes, faute de quoi le traitement du
1626 code peut échouer ou produire des erreurs.
1627
1628
1629 @node Aligning to cadenzas
1630 @unnumberedsubsubsec Aligning to cadenzas
1631
1632 Dans un contexte orchestral, une cadence constitue un problème
1633 spécifique.  Lors du montage d'une partition contenant une cadence,
1634 tous les autres instruments doivent sauter autant de notes que ce
1635 qu'en comporte la cadence, faute de quoi il démarreraient trop tôt ou
1636 trop tard. 
1637
1638 Les fonctions @code{mmrest-of-length} ou @code{skip-of-length}
1639 permettent de résoudre ce problème.  Ces fonctions Scheme prennent en
1640 argument un fragment de musique, et génèrent un @code{\skip} ou un
1641 silence multi-mesures d'une durée correspondant à ce fragment.
1642 L'exemple qui suit illustre l'utilisation de @code{mmrest-of-length}. 
1643
1644 @lilypond[verbatim,ragged-right,quote]
1645 cadenza = \relative c' {
1646   c4 d8 << { e f g } \\ { d4. } >>
1647   g4 f2 g4 g
1648 }
1649
1650 \new GrandStaff <<
1651   \new Staff { \cadenza c'4 }
1652   \new Staff {
1653     #(ly:export (mmrest-of-length cadenza))
1654     c'4
1655   }
1656 >>
1657 @end lilypond
1658
1659
1660 @node Time administration
1661 @unnumberedsubsubsec Time administration
1662
1663 @cindex temps, gestion du
1664
1665 Le temps est administré par le @rinternals{Time_signature_engraver},
1666 qui réside en principe dans le contexte @rinternals{Score}.  Sa
1667 gestion traite les variables suivantes :
1668
1669 @table @code
1670 @item currentBarNumber
1671 Le numéro de mesure.
1672
1673 @item measureLength
1674 La longueur de la mesure, dans la métrique en cours.  Pour une mesure
1675 à 4/4, elle est de@tie{}1, et de 3/4 pour une mesure à 6/8.
1676
1677 @item measurePosition
1678 Le moment où l'on en est dans la mesure en cours.  Cette quantité est
1679 remise à@tie{}0 dès lors qu'on dépasse @code{measureLength} ; la variable
1680 @code{currentBarNumber} est alors incrémentée.  
1681
1682 @item timing
1683 Lorsqu'on lui assigne la valeur @emph{vrai}, les valeurs ci-dessus
1684 mentionnées sont mises à jour à chaque pas.  Fixée à @emph{faux}, le
1685 graveur restera indéfiniment dans la mesure en cours.
1686 @end table
1687
1688 Le calage peut être modifié en réglant explicitement l'une de ces
1689 variables.  Dans l'exemple qui suit, nous réglons la métrique à 4/4,
1690 tout en fixant @code{measureLength} à 5/4.  Un peu plus loin, nous
1691 raccourcissons la mesure de 1/8, en assignant 7/8 à
1692 @code{measurePosition}, alors que nous en sommes à 2/4 dans la
1693 mesure ; la barre de mesure tombera donc à @w{2/4 + 3/8}.  Les 3/8
1694 résultent du fait que 5/4 équivaut à 10/8, mais nous nous sommes recalés
1695 à 7/8 de la mesure ;  donc @w{10/8 @minus{} 7/8 = 3/8}.
1696
1697 @lilypond[quote,ragged-right,verbatim,relative,fragment]
1698 \set Score.measureLength = #(ly:make-moment 5 4)
1699 c1 c4
1700 c1 c4
1701 c4 c4
1702 \set Score.measurePosition = #(ly:make-moment 7 8)
1703 b8 b b
1704 c4 c1
1705 @end lilypond
1706
1707 @noindent
1708 Comme le montre cet exemple, @code{ly:make-moment n m} construit une
1709 durée de n/m fois une ronde.  
1710 Par conséquent, @code{ly:make-moment 1 8} correspond à une croche, et
1711 @code{ly:make-moment 7 16} à la durée de sept doubles croches.
1712
1713
1714 @node Proportional notation (introduction)
1715 @unnumberedsubsubsec Proportional notation (introduction)
1716 @cindex Notation proportionnelle
1717
1718 Voir @ref{Proportional notation}.
1719
1720
1721 @c À faire : supprimer tout ça ?
1722
1723 Les notes peuvent s'espacer proportionnellement en assignant une durée
1724 à @code{proportionalNotationDuration}
1725
1726 @lilypond[quote,ragged-right,verbatim,relative=2,fragment]
1727 <<
1728   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
1729   \new Staff { c8[ c c c c c]  c4 c2 r2 }
1730   \new Staff { c2  \times 2/3 { c8 c c } c4 c1 }
1731 >>
1732 @end lilypond
1733
1734 Manipuler cette propriété affectera l'espacement idéal uniquement pour
1735 des notes consécutives.  Pour obtenir une véritable notation
1736 proportionnelle, vous devrez tenir compte des réglages suivants :
1737
1738 @itemize @bullet
1739
1740 @item La véritable notation proportionnelle exige que des symboles
1741 puissent en écraser d'autres.  Pour y parvenir, il faut retirer le
1742 @rinternals{Separating_line_group_engraver} du contexte
1743 @rinternals{Staff}. 
1744
1745 @item L'influence en matière d'espacement induite par le formatage
1746 (clés, barres de mesure, etc) s'annule en assignant
1747 @emph{vrai}@tie{}(#t) à la propriété @code{strict-note-spacing} de
1748 l'objet @rinternals{SpacingSpanner}.
1749
1750 @item Les affinages optiques se règlent en assignant @emph{vrai} à la
1751 propriété @code{uniform-stretching} du @rinternals{SpacingSpanner}. 
1752
1753
1754 @end itemize
1755
1756 @seealso
1757
1758 Exemples : @lsr{spacing,proportional@/-spacing@/.ly}, 
1759 @lsr{spacing,proportional@/-strict@/-grace@/-notes@/.ly}, et
1760 @lsr{spacing,proportional@/-strict@/-notespacing@/.ly}
1761
1762 Le fichier @file{input/proportional.ly} illustre la notation
1763 proportionnelle stricte.
1764
1765