1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: 33ba8d40c3493011a4b39ab8b1369701f8013bd6
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. See TRANSLATION for details.
11 @c Translators: Frédéric Chiasson
12 @c Translation checkers: Valentin Villenave, Jean-Charles Malahieude
17 @lilypondfile[quote]{rhythms-headword.ly}
19 Cette section traite du rythme : durées, silences, barres de ligature
25 * Displaying rhythms::
28 * Special rhythmic concerns::
33 @subsection Writing rhythms
43 @subsubsection Durations
50 Dans les modes de notes, d'accords et de paroles, les durées sont
51 écrites avec des chiffres et des points : les durées sont indiquées par
52 leur valeur fractionnaire par rapport à la durée d'une ronde. Une
53 noire, par exemple, qui équivaut à un 1/4 de ronde --- @qq{quarter note}
54 en anglais --- s'écrit @code{4}, alors qu'une blanche ---
55 @qq{half-note}, 1/2 ronde --- s'écrit @code{2}. Pour des notes plus
56 longues qu'une ronde, vous devrez utiliser les commandes @code{\longa}
57 pour une longue, et @code{\breve} pour une brève, aussi appelée carrée.
61 c'1 c'2 c'4 c'8 c'16 c'32 c'64 c'64
63 r1 r2 r4 r8 r16 r32 r64 r64
69 a\breve*1/2 \autoBeamOff
70 a1 a2 a4 a8 a16 a32 a64 a64
73 r\longa*1/4 r\breve *1/2
74 r1 r2 r4 r8 r16 r32 r64 r64
81 \remove "Bar_number_engraver"
85 \remove "Clef_engraver"
86 \override StaffSymbol #'transparent = ##t
87 \override TimeSignature #'transparent = ##t
88 \override BarLine #'transparent = ##t
89 \consists "Pitch_squash_engraver"
95 Si la durée n'est pas précisée, elle est alors assimilée à la durée
96 précédente. La valeur par défaut pour la première note est une noire
99 @lilypond[quote,ragged-right,verbatim,fragment]
100 { a a a2 a a4 a a1 a }
106 Pour obtenir des notes pointées, ajoutez simplement un point
107 (@samp{.}) au chiffre. Les notes doublement pointées sont créées de
110 @lilypond[quote,ragged-right,fragment,verbatim]
111 a'4 b' c''4. b'8 a'4. b'4.. c''8.
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
125 @funindex \dotsNeutral
130 Référence du programme : @rinternals{Dots}, @rinternals{DotColumn}.
134 @subsubsection Tuplets
140 Les nolets --- triolets, quintolets, etc. --- sont obtenus en
141 multipliant toutes les durées d'une expression musicale par une
145 \times @var{fraction} @var{expr_musique}
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
155 @lilypond[quote,ragged-right,fragment,verbatim]
156 g'4 \times 2/3 {c'4 c' c'} d'4 d'4
159 Les nolets peuvent être imbriqués ; par exemple,
161 @lilypond[fragment,ragged-right,verbatim,relative=2]
162 \override TupletNumber #'text = #tuplet-number::calc-fraction-text
165 \times 3/5 { a a a a a }
173 @funindex \tupletDown
175 @funindex \tupletNeutral
176 @code{\tupletNeutral}.
181 @funindex tupletNumberFormatFunction
182 @cindex nolets, formatage
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
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 }
196 Pour plus d'information sur @code{make-moment}, voir
197 @ref{Time administration}.
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.
205 Pour éviter d'imprimer les chiffres des nolets, utilisez
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 }
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
219 @lilypond[quote,ragged-right,verbatim]
221 \tweak #'text #tuplet-number::calc-fraction-text
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] }
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.
243 @lilypond[quote,ragged-right,verbatim]
245 \tweak #'text #tuplet-number::calc-fraction-text
246 \tweak #'direction #up
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] }
257 Les crochets de nolets peuvent aller jusqu'aux prémisses de la mesure
258 suivante, ou à la prochaine note.
260 @lilypond[ragged-right]
262 \set tupletFullLength = ##t
267 \set tupletFullLengthNote = ##t
280 Référence du programme : @rinternals{TupletBracket},
281 @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}.
285 @node Scaling durations
286 @subsubsection Scaling durations
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
293 Dans l'exemple suivant, les trois premières notes prennent exactement
294 deux temps, mais aucun triolet n'est imprimé.
296 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
298 a4*2/3 gis4*2/3 a4*2/3
306 Dans ce manuel : @ref{Tuplets}.
312 @cindex liaison de prolongation
315 Une liaison de tenue (ou de prolongation) relie deux notes adjacentes de
316 même hauteur. Dans les faits, elle prolonge la durée d'une note, et ne
317 doit donc pas être confondue avec les liaisons d'articulation ou de
318 phrasé. Une liaison de tenue est indiquée au moyen d'un tilde @samp{~}.
320 @lilypond[quote,ragged-right,fragment,verbatim]
321 e' ~ e' <c' e' g'> ~ <c' e' g'>
325 Quand une liaison de tenue se trouve entre deux accords, toutes les
326 notes de même hauteur entre ces deux accords sont reliées. S'il n'y en
327 a aucune, aucune liaison n'est créée. Il est également possible de lier
328 partiellement deux accords, en mettant les liaisons à l'intérieur des
331 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
332 <c~ e g~ b> <c e g b>
336 Une liaison de tenue est un moyen parmi d'autres pour prolonger la durée
337 d'une note, tout comme les points. L'exemple suivant montre deux
338 manières de matérialiser exactement la même idée :
341 @lilypond[quote,fragment,ragged-right]
342 \time 3/4 c'2. c'2 ~ c'4
346 Les liaisons de tenues sont utilisées soit lorsque la note dépasse de la
347 mesure, soit quand les points ne suffisent pas à donner la bonne durée.
348 Lorsque l'on utilise ces liaisons, les valeurs rythmiques les plus
349 longues doivent s'aligner sur les subidivisions de la mesure, comme ici :
352 @lilypond[fragment,quote,ragged-right]
354 r8^"oui" c8 ~ c2 r4 | r8^"non" c2 ~ c8 r4
359 Lorsque l'on doit lier de nombreuses notes sur plusieurs mesures, il
360 devient plus facile d'avoir recours à la division automatique des notes
361 --- voir @ref{Automatic note splitting}. Ce procédé divise
362 automatiquement les notes trop longues, et les lie par-delà les barres
366 @cindex liaison de prolongation, répétition
367 @cindex reprises avec alternatives et liaisons de prolongation
369 Lorsqu'une mesure de seconde fois après une reprise commence sur une
370 note liée, la liaison doit être répétée. C'est à cela que sert la
371 commande @code{\repeatTie} :
373 @lilypond[fragment,quote,ragged-right,relative=2]
377 @cindex laissez vibrer
378 @cindex liaison, laissez vibrer
379 @funindex \laissezVibrer
381 Les liaisons @qq{Laissez vibrer} (L.V.) sont utilisées pour le piano, la
382 harpe, et certains instruments de percussion. Elles indiquent à
383 l'instrumentiste de laisser sonner la note ou l'accord au lieu de
384 l'étouffer. Cet effet s'obtient avec la commande @code{\laissezVibrer}.
386 @lilypond[fragment,ragged-right,verbatim,relative=1]
387 <c f g>\laissezVibrer
392 Les liaisons de tenue servent parfois à rendre un accord arpégé. Dans ce
393 cas, les notes liées ne sont pas toutes consécutives. Il faut alors
394 assigner à la propriété @code{tieWaitForNote} la valeur @emph{vrai}
395 (@q{t} pour @q{true}). Cette même méthode peut servir, par exemple, à
396 lier un trémolo à un accord.
398 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
399 \set tieWaitForNote = ##t
400 \grace { c16[~ e~ g]~ } <c, e g>2
401 \repeat tremolo 8 { c32~ c'~ } <c c,>1
402 e8~ c~ a~ f~ <e' c a f>2
405 Il est possible de graver manuellement les liaisons de tenue, en
406 modifiant la propriété @code{tie-configuration}. Pour chaque paire, le
407 premier nombre indique la distance à la portée, en espaces de portée, et
408 le second la direction (1 pour haut, @minus{}1 pour bas).
410 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
412 \override TieColumn #'tie-configuration =
413 #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
424 @funindex \tieNeutral
438 @rglos{laissez vibrer}.
440 Dans ce manuel : @ref{Automatic note splitting}.
442 Référence du programme :
444 @rinternals{TieColumn},
445 @rinternals{LaissezVibrerTie},
446 @rinternals{LaissezVibrerTieColumn}.
451 Un changement de portée, lorsqu'une liaison de tenue est active, ne
452 peut produire une liaison oblique.
454 Le changement de clé ou d'octave pendant une liaison de tenue produit un
455 résultat indéfini. Dans ces cas-là, il est préférable d'utiliser un
460 @subsection Writing rests
465 * Full measure rests::
475 Les silences sont écrits comme des notes avec le nom de note @code{r}.
477 @lilypond[fragment,quote,ragged-right,verbatim]
481 Les pauses d'une mesure complète, qui sont placées au centre de la
482 mesure, doivent être entrées comme des mesures de silence. Elles
483 peuvent être utilisées pour une seule mesure comme pour plusieurs, et
484 leur utilisation est expliquée dans la section
485 @ref{Full measure rests}.
487 Pour spécifier explicitement la position verticale d'un silence, écrivez
488 une note suivie de @code{\rest}. Un silence sera placé à la position où
489 serait imprimée la note.
491 @lilypond[fragment,quote,ragged-right,verbatim]
496 Cela rend plus facile la mise en place de la musique polyphonique,
497 puisque le formateur automatique de collision des silences laissera ces
498 silences tranquilles.
502 Référence du programme : @rinternals{Rest}.
505 @node Invisible rests
506 @subsubsection Invisible rests
508 @cindex sauts de durée
509 @cindex silences invisibles
510 @cindex silences d'espacement
514 Un silence invisible --- que l'on pourrait appeler un @qq{saut} ---
515 peut être entré comme une note avec le nom de note `@samp{s}' ou avec
516 @code{\skip @var{durée}}
518 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
519 a4 a4 s4 a4 \skip 1 a4
522 La syntaxe @code{s} est seulement disponible pour les modes d'entrée
523 de notes et d'accords. Dans d'autres situations, pour l'entrée de
524 paroles par exemple, vous devrez utiliser la commande @code{\skip}.
526 @lilypond[quote,ragged-right,verbatim]
529 \new Lyrics \lyricmode { \skip 2 bla2 }
533 La commande de saut génère simplement une case musicale vide. Elle ne
534 produit rien sur la partition, pas même un symbole transparent. Le code
535 de saut @code{s} crée tout de même une @rinternals{Staff} et une
536 @rinternals{Voice} lorsque nécessaire, tout comme les commandes de
537 note et de silence. Ainsi, le code suivant aboutit à une portée vide.
539 @lilypond[quote,ragged-right,verbatim]
543 Le fragment @code{@{ \skip 4 @} } produirait une page vide.
547 Référence du programme : @rinternals{SkipMusic}.
550 @node Full measure rests
551 @subsubsection Full measure rests
553 @cindex mesures à compter
554 @cindex mesure entière de silence
555 @cindex Silences, multi-mesures
556 @cindex Silences, mesure entière
557 @cindex une pause par mesure
560 Un silence valant une ou plusieurs mesures entières s'entre avec un
561 @samp{R} majuscule. Ceci ne peut être utile que pour une mesure complètement
562 vide, et pour générer des parties séparées : ce silence sera alors
563 répété sur autant de mesures que nécessaire, ou bien imprimé une seule
564 fois. La répétition est contrôlée par la propriété
565 @code{Score.skipBars}. Au cas où ce commutateur est défini comme
566 vrai (lettre @code{##t} pour @q{true}), les mesures vides ne seront pas répétées, et le nombre exact de
569 @lilypond[quote,ragged-right,fragment,verbatim]
570 \time 4/4 r1 | R1 | R1*2 \time 3/4 R2. \time 2/4 R2 \time 4/4
571 \set Score.skipBars = ##t R1*17 R1*4
574 Le @code{1} de @code{R1} est le même que celui utilisé pour la durée
575 des notes. Vous devrez donc, si le morceau n'est pas à 4/4, stipuler
576 un autre durée, qui pourra contenir des points d'augmentation ou être
577 libellé sous forme de fraction :
579 @lilypond[quote,ragged-right,fragment,verbatim]
580 \set Score.skipBars = ##t
589 Un @code{R} qui s'étend sur une seule mesure s'imprime tantôt comme
590 une pause, tantôt comme une brève, et sera centré sur la mesure
591 quelle que soit la métrique.
593 Dans le cas où ce silence ne dure que quelques mesures, LilyPond
594 imprime sur la portée des @qq{ silences d'église }, simple suite de
595 rectangles. La propriété @code{MultiMeasureRest.expand-limit} permet
596 d'obtenir un silence unique.
598 @lilypond[quote,ragged-right,fragment,verbatim]
599 \set Score.skipBars = ##t
601 \override MultiMeasureRest #'expand-limit = 1
605 @cindex texte et silence multi-mesures
606 @cindex script et silence multi-mesures
607 @cindex point d'orgue et silence multi-measures
609 Vous pouvez aussi ajouter du texte à un silence multi-mesures en utilisant
610 la syntaxe @var{note}-@code{markup} (cf. @ref{Formatting text}). La
611 variable @code{\fermataMarkup} permet d'ajouter un point d'orgue.
613 @lilypond[quote,ragged-right,verbatim,fragment]
614 \set Score.skipBars = ##t
616 R2.*10^\markup { \italic "ad lib." }
620 Attention ! c'est @code{MultiMeasureRestText} qui créera le texte, et
621 non @code{TextScript}.
623 @lilypond[quote,ragged-right,verbatim,fragment]
624 \override TextScript #'padding = #5
626 \override MultiMeasureRestText #'padding = #5
630 Pour aligner votre texte sur le début de la mesure, rattachez-le à un
631 silence invisible de longueur zéro comme ceci :
641 Référence du programme : @rinternals{MultiMeasureRestMusic},
642 @rinternals{MultiMeasureRest}.
644 L'objet de rendu @rinternals{MultiMeasureRestNumber} traite les
645 nombres, et @rinternals{MultiMeasureRestText} le texte ajouté par
651 Vous ne pouvez pas utiliser de doigtés (p.ex. @code{R1-4}) pour
652 positionner des nombres au dessus d'un silence multi-mesures, ni
655 @cindex condenser les silences
657 Condenser plusieurs silences en un unique silence multi-mesures ne peut
658 être automatisé. Les silences multi-mesures peuvent générer des
659 collisions avec d'autres silences.
661 Pensez à indiquer explicitement la durée de la note qui suit un
662 silence multi-mesures, car elle sera par défaut égale à la durée totale
663 des mesures à compter. Ainsi, dans l'exemple ci-après, les deux do
664 dièses vaudront chacun quatre mesures à 4/4.
668 Lorsque @code{skipBars} est activé, le résultat semblera correct, mais
669 la numérotation des mesures sera suspendue.
672 @node Displaying rhythms
673 @subsection Displaying rhythms
679 * Polymetric notation::
680 * Automatic note splitting::
681 * Showing melody rhythms::
685 @subsubsection Time signature
687 @cindex chiffrage de mesure
688 @cindex chiffre indicateur de mesure
692 Le chiffre de mesure indique le mètre d'une pièce : une alternance
693 régulière de temps forts et de temps faibles. Il est indiqué par une
694 fraction au début de la portée.
696 Le chiffre de mesure est réglé par la commande @code{\time}.
698 @lilypond[quote,ragged-right,fragment,verbatim]
699 \time 2/4 c'2 \time 3/4 c'2.
704 Le symbole imprimé peut être modifié avec la propriété @code{style}.
705 En la réglant sur @code{#'()}, une fraction sera utilisée pour les
706 chiffres de mesure 4/4 et 2/2.
708 @lilypond[fragment,quote,ragged-right,verbatim]
711 \override Staff.TimeSignature #'style = #'()
716 Il y a bien d'autres options pour sa mise en place. Voir @ref{Ancient time
717 signatures} pour plus d'exemples.
719 @code{\time} définit les propriétés @code{timeSignatureFraction},
720 @code{beatLength} et @code{measureLength} dans le contexte
721 @code{Timing}, qui en principe est assimilé à @rinternals{Score}. La
722 propriété @code{measureLength} détermine où des barres de mesure doivent
723 être insérées, et comment les groupements de notes doivent être gérés.
724 La modification de la valeur de @code{timeSignatureFraction} donne
725 également lieu à l'impression d'un symbole.
727 Plus d'options sont accessibles au moyen de la fonction Scheme
728 @code{set-time-signature}. De concert avec le
729 @rinternals{Measure_grouping_engraver}, elle crée les signes de
730 @rinternals{MeasureGrouping}, qui facilitent la lecture de musiques
731 modernes, complexes rythmiquement. Dans l'exemple suivant, les mesures
732 à 9/8 sont subdivisées en @code{(2 2 2 3)}, ce qui est donné comme
733 argument à la commande @code{set-time-signature}, en troisième position.
735 @lilypond[quote,ragged-right,verbatim]
738 #(set-time-signature 9 8 '(2 2 2 3))
739 g8[ g] d[ d] g[ g] a8[( bes g]) |
740 #(set-time-signature 5 8 '(3 2))
746 \consists "Measure_grouping_engraver"
755 Référence du programme : @rinternals{TimeSignature} et
756 @rinternals{Timing_translator}.
758 Exemples : @rlsr{Rhythms}.
763 Le groupement automatique des ligatures n'utilise pas les groupements
764 spécifiés par @code{set-time-signature}.
768 @subsubsection Upbeats
772 @cindex mesure incomplète
776 Les mesures incomplètes, telles que les anacrouses ou levées, doivent
777 être entrées avec la commande
779 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
780 \partial 16*5 c16 cis d dis e | a2. c,4 | b2
784 La syntaxe de cette commande est
790 @code{durée} étant la valeur rythmique devant être ajoutée avant la
793 Le programme traduit cette commande en
796 \set Timing.measurePosition = -@var{durée}
800 La propriété @code{measurePosition} contient un nombre rationnel qui
801 indique, à ce point précis, où l'on en est de la mesure. Notez qu'il
802 peut s'agir d'un nombre négatif ; @code{\partial 4} signifie, pour le
803 programme : @qq{Dans cette mesure, il reste juste une noire}.
808 Cette commande ne prend pas en compte les notes d'ornement ou
809 appoggiatures au début de la musique. Lorsqu'un morceau commence par une
810 levée et avec des petites notes, la commande @code{\partial} devrait être
811 placée après celles-ci.
813 @lilypond[verbatim,quote,ragged-right,relative,fragment]
820 @code{\partial} n'est destiné à être utilisé qu'en début de pièce.
821 Si on l'utilise ailleurs qu'au début, des messages d'erreurs peuvent
825 @node Unmetered music
826 @subsubsection Unmetered music
830 @funindex \cadenzaOff
833 Les barres de mesure et les numéros de mesure sont calculés
834 automatiquement, ce qui n'est pas souhaitable dans le cas d'une musique
835 non mesurée --- les cadences, par exemple. Les commandes
836 @code{\cadenzaOn} et @code{\cadenzaOff} permettent de désactiver et de
837 rétablir la métrique automatique.
839 @lilypond[verbatim,quote,ragged-right,relative=2,fragment]
851 LilyPond ne change de ligne ou de page qu'au niveau des barres de
852 mesure. Si votre musique non mesurée dure plus d'une ligne, il vous
853 faudra insérer des barres de mesure invisibles, pour indiquer à quels
854 endroit un saut de ligne peut intervenir.
861 @node Polymetric notation
862 @subsubsection Polymetric notation
864 @cindex métrique composite
865 @cindex composite, métrique
866 @cindex métrique polymétrique
869 LilyPond ne gère pas les métriques composites de manière explicite,
870 mais on peut contourner ce problème. Dans l'exemple suivant,
871 l'indicateur de métrique est obtenu grâce à une étiquette textuelle.
872 Cette étiquette vient s'insérer dans l'objet graphique (@emph{grob})
873 @rinternals{TimeSignature}.
875 @lilypond[verbatim,ragged-right]
876 % Create 9/8 split into 2/4 + 5/8
878 \override #'(baseline-skip . 2) \number {
881 \bracket \column { "5" "8" }
886 \override Staff.TimeSignature #'stencil =
887 #ly:text-interface::print
888 \override Staff.TimeSignature #'text = #tsMarkup
890 c'2 \bar ":" c'4 c'4.
891 c'2 \bar ":" c'4 c'4.
895 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
896 {compound-time-signatures.ly}
898 Il arrive aussi que chaque portée ait sa propre métrique. Vous y
899 parviendrez en déplaçant le @rinternals{Timing_translator} dans le
900 contexte @rinternals{Staff}.
905 \remove "Timing_translator"
906 \remove "Default_bar_line_engraver"
910 \consists "Timing_translator"
911 \consists "Default_bar_line_engraver"
918 Maintenant, chacune des portées dispose de sa propre métrique.
931 c4. c8 c c c4. c8 c c
936 @lilypond[quote,ragged-right]
940 \remove "Timing_translator"
941 \remove "Default_bar_line_engraver"
944 \consists "Timing_translator"
945 \consists "Default_bar_line_engraver"
960 c4. c8 c c c4. c8 c c
966 Une autre forme de notation polymétrique consiste dans le fait que des
967 notes aient une durée relative différente selon la portée.
969 Vous pouvez créer une telle notation en définissant une métrique
970 commune à toutes les portées, que vous proratiserez manuellement
971 selon le cas en utilisant @code{timeSignatureFraction} pour obtenir la
972 division adéquate pour chaque portée. Les durées, dans chacune des
973 portées, seront alors échelonnées par rapport à la métrique commune.
974 L'échelle de représentation se règle avec @code{\scaleDurations} ---
975 qui fonctionne comme @code{\times}, sans toutefois créer de crochet.
976 La syntaxe appropriée est :
978 \scaleDurations #'(@var{numérateur} . @var{dénominateur}) @var{exprmusicale}
982 L'exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et
983 10/8. Pour la deuxième portée, les durées sont multipliées par 2/3,
984 de telle sorte que @w{2/3 * 9/8 = 3/4} ; pour la troisième, elles sont
985 multipliées par 3/5, de telle sorte que @w{3/5 * 10/8 = 3/4}.
987 @lilypond[quote,ragged-right,verbatim,fragment]
995 \set Staff.timeSignatureFraction = #'(9 . 8)
996 \scaleDurations #'(2 . 3)
997 \repeat unfold 6 { c8[ c c] }
1001 \set Staff.timeSignatureFraction = #'(10 . 8)
1002 \scaleDurations #'(3 . 5) {
1003 \repeat unfold 2 { c8[ c c] }
1004 \repeat unfold 2 { c8[ c] }
1005 | c4. c4. \times 2/3 { c8 c c } c4
1013 Exemples : @rlsr{Rhythms}.
1017 L'utilisation de métriques différentes en parallèle entraine un
1018 alignement vertical. De ce fait, les barres de mesure ont tendance à
1019 fausser l'espacement régulier.
1022 @node Automatic note splitting
1023 @subsubsection Automatic note splitting
1025 On peut convertir automatiquement les notes longues en notes liées. Il
1026 faut pour cela remplacer le graveur @rinternals{Note_heads_engraver}
1027 par le graveur @rinternals{Completion_heads_engraver}. Dans les
1028 exemples suivants, les notes dépassant de la mesure sont divisées et
1031 @lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm]
1033 \remove "Note_heads_engraver"
1034 \consists "Completion_heads_engraver"
1036 c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2
1040 Ce graveur divise toutes les notes qui sortent de la mesure, et insère
1041 des liaisons de prolongation. Une utilisation posible consiste à
1042 déboguer des partitions complexes : si les mesures ne sont pas
1043 entièrement remplies, alors les liaisons de prolongation montrent
1044 exactement la durée des décalages de mesure.
1046 Si vous voulez permettre un saut de ligne aux barres de mesure où
1047 @rinternals{Completion_heads_engraver} divise les notes, vous devez
1048 aussi enlever @rinternals{Forbid_line_break_engraver}.
1053 Bien que toutes les durées --- particulièrement celles contenant des
1054 nolets --- ne puissent pas être représentées exactement avec des notes
1055 normales et des points, le graveur n'insèrera pas de nolets.
1057 @code{Completion_heads_engraver} affecte seulement les notes, il ne
1058 divise pas les silences.
1062 Référence du programme : @rinternals{Completion_heads_engraver}.
1064 @node Showing melody rhythms
1065 @subsubsection Showing melody rhythms
1067 Au moyen d'une portée rythmique -- @q{rhythmic staff} en anglais -- on
1068 peut montrer seulement le rythme d'une mélodie : toutes les notes sont
1069 ramenées à la même hauteur, sur une portée d'une seule ligne.
1071 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1072 \new RhythmicStaff {
1074 c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
1080 Référence du programme : @rinternals{RhythmicStaff}.
1087 * Setting automatic beam behavior::
1092 @node Automatic beams
1093 @subsubsection Automatic beams
1095 LilyPond décide automatiquement de la manière de grouper les notes et
1096 d'imprimer les ligatures.
1098 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1099 \time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
1102 Lorsque ce comportement automatisé n'est pas satisfaisant, on peut
1103 définir des groupements manuellement --- voir section suivante --- ou
1104 personnaliser les groupements automatiques --- voir @ref{Setting
1105 automatic beam behavior}.
1107 La commande @code{\noBeam} peut servir à empêcher des notes
1108 individuelles d'être rattachées aux autres.
1110 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1111 \time 2/4 c8 c\noBeam c c
1117 Référence du programme : @rinternals{Beam}.
1120 @node Setting automatic beam behavior
1121 @subsubsection Setting automatic beam behavior
1123 @funindex autoBeamSettings
1124 @funindex (end * * * *)
1125 @funindex (begin * * * *)
1126 @cindex ligatures automatiques, réglage
1127 @cindex réglage des ligatures automatiques
1129 @c [TODO: use \applyContext]
1131 Dans les métriques courantes, les ligatures automatiques peuvent commencer
1132 sur n'importe quelle note, mais ne peuvent se terminer qu'à certains points précis
1133 dans la mesure : sur une pulsation, ou après toute durée spécifiée par les propriétés
1134 nommées @code{autoBeamSettings}. Ces propriétés consistent en une liste de règles
1135 relatives au début ou à la fin des ligatures. Par défaut, elles sont définies dans
1137 @file{scm/@/auto@/-beam@/.scm}.
1139 On peut ajouter à cette liste une nouvelle règle, au moyen de la commande
1141 #(override-auto-beam-setting '(extrémité p q n m) a b [contexte])
1146 @item @code{extrémité} désigne le début (@code{begin}) ou la fin (@code{end}) de la ligature.
1148 @item @code{p/q} désigne la valeur rythmique de la note que l'on veut affecter, ou de la
1149 plus brève des notes concernées. Si cette règle doit s'appliquer à toutes les ligatures,
1150 remplacez @code{p} et @code{q} par des étoiles @qq{@code{*}}.
1153 @item @code{n/m} est le chiffre de mesure dans lequel la règle doit
1154 s'appliquer. Si celle-ci doit s'appliquer dans toutes les métriques,
1155 remplacez @code{n} et @code{m} par des étoiles @qq{@code{*}}.
1157 @item @code{a/b} est l'emplacement, dans la mesure, auquel les ligatures doivent
1158 débuter ou s'achever (suivant la valeur @q{extrémité} que nous venons de voir).
1161 @item @code{contexte} est un argument facultatif, qui détermine le contexte dans lequel
1162 la règle doit s'appliquer. Par défaut, il s'agit de @code{'Voice}.
1163 @code{#(score-override-auto-beam-setting '(A B C D) E F)} équivaut à
1164 @code{#(override-auto-beam-setting '(A B C D) E F 'Score)}.
1168 Par exemple, si l'on veut que les ligatures s'achèvent toujours après la première noire :
1172 #(override-auto-beam-setting '(end * * * *) 1 4)
1175 On peut obliger une règle de ligatures à ne s'appliquer qu'à des groupes dont la note
1176 la plus brève est d'une valeur précise :
1178 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1180 #(override-auto-beam-setting '(end 1 16 * *) 1 16)
1182 a32 a a a a16 a a a a a |
1183 #(override-auto-beam-setting '(end 1 32 * *) 1 16)
1184 a32 a a a a16 a a a a a |
1187 On peut obliger une règle de ligatures à ne s'appliquer que pour un chiffre de mesure
1190 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1192 #(override-auto-beam-setting '(end * * 5 8) 2 8)
1200 Enfin, on peut désactiver une règle de ligatures au moyen du réglage suivant :
1203 #(revert-auto-beam-setting '(extrémité p q n m) a b [contexte])
1207 @code{extrémité}, @code{p}, @code{q}, @code{n}, @code{m}, @code{a}, @code{b} et @code{contexte}
1208 étant les mêmes que plus haut. Il est même possible de désactiver des règles que l'on n'a pas
1209 explicitement créées : les règles par défaut, qui se trouvent dans le fichier @file{scm/@/auto@/-beam@/.scm}.
1213 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1215 a16 a a a a a a a a a a a a a a a
1216 #(revert-auto-beam-setting '(end 1 16 4 4) 1 4)
1217 a16 a a a a a a a a a a a a a a a
1220 La commande @code{revert-auto-beam-setting} requiert exactement les mêmes arguments
1221 que la règle d'origine. En d'autres termes, les étoiles ne seront pas prises en compte ici.
1223 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1225 #(override-auto-beam-setting '(end 1 16 1 4) 1 8)
1227 #(revert-auto-beam-setting '(end 1 16 * *) 1 8) % ceci ne désactive pas la règle !
1229 #(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % ceci marche
1235 @c TODO: old material -- not covered by above stuff, I think.
1236 Si, dans une mesure à 5/4, l'on veut que les ligatures soient regroupées temps par temps,
1237 il est nécessaire d'indiquer toutes les terminaisons de ligatures.
1239 #(override-auto-beam-setting '(end * * * *) 1 4 'Staff)
1240 #(override-auto-beam-setting '(end * * * *) 1 2 'Staff)
1241 #(override-auto-beam-setting '(end * * * *) 3 4 'Staff)
1242 #(override-auto-beam-setting '(end * * * *) 5 4 'Staff)
1246 La même syntaxe peut servir à définir les points de départ des ligatures.
1247 Dans l'exemple suivant, les ligatures automatiques ne peuvent se terminer
1248 que sur une noire pointée.
1250 #(override-auto-beam-setting '(end * * * *) 3 8)
1251 #(override-auto-beam-setting '(end * * * *) 1 2)
1252 #(override-auto-beam-setting '(end * * * *) 7 8)
1254 @c ???? Je n'y comprends rien --vv
1255 Dans une mesure à 4/4, cela implique que les ligatures ne peuvent se terminer que sur
1256 la troisième croche, ou sur le quatrième temps (après la valeur de deux fois trois croches).
1258 Si une ligature se fait de manière inattendue, pensez à vérifer les règles automatiques
1259 dans le fichier @file{scm/@/auto@/-beam@/.scm} pour rechercher d'éventuels conflits, dans
1260 la mesure ou les règles par défaut s'ajoutent à vos propres règles. Il est alors nécessaire
1261 de désactiver toute règle par défaut conduisant à des ligatures indésirables.
1263 Ainsi, pour obtenir des ligatures en groupes de @code{(3 4 3 2)} croches, dans une mesure à 12/8,
1264 il faudra préalablement utiliser :
1267 %%% annulons les réglages par défaut relatifs à 12/8, dans scm/auto-beam.scm
1268 #(revert-auto-beam-setting '(end * * 12 8) 3 8)
1269 #(revert-auto-beam-setting '(end * * 12 8) 3 4)
1270 #(revert-auto-beam-setting '(end * * 12 8) 9 8)
1272 %%% puis ajoutons nos propres règles
1273 #(override-auto-beam-setting '(end 1 8 12 8) 3 8)
1274 #(override-auto-beam-setting '(end 1 8 12 8) 7 8)
1275 #(override-auto-beam-setting '(end 1 8 12 8) 10 8)
1278 @cindex ligatures automatiques
1279 @cindex groupes de notes
1280 @funindex autoBeaming
1283 Si des ligatures sont utilisées dans les paroles d'une chanson (pour indiquer des mélismes),
1284 les ligatures automatiques doivent être désactivées, avec @code{\autoBeamOff}.
1289 @funindex \autoBeamOff
1290 @code{\autoBeamOff},
1291 @funindex \autoBeamOn
1296 Les groupes de notes reliées par les ligatures peuvent être spécifiés au moyen
1297 de la propriété @code{beatGrouping}.
1299 @lilypond[quote,verbatim,relative=2,fragment,ragged-right]
1301 \set beatGrouping = #'(2 3)
1303 \set beatGrouping = #'(3 2)
1310 Si une partition se termine alors qu'une ligature automatique est restée inachevée,
1311 cette dernière ligature ne sera pas imprimée du tout. C'est également valable dans
1312 le cas d'une musique polyphonique, saisie avec la syntaxe @code{<< @dots{} \\ @dots{}
1313 >>}, où une voix se terminerait sans que la dernière ligature
1318 @subsubsection Manual beams
1320 @cindex groupements de note manuels
1321 @cindex ligatures manuelles
1325 Dans certaines situations, il peut s'avérer nécessaire de
1326 supplanter l'algorithme de groupement automatique des notes, par
1327 exemple pour prolonger une ligature par-dessus un silence ou une barre
1328 de mesure. Le début et la fin de la ligature sont alors indiqués par
1329 @code{[} et @code{]}.
1331 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1333 r4 r8[ g' a r8] r8 g[ | a] r8
1340 @funindex stemLeftBeamCount
1341 @funindex stemRightBeamCount
1343 LilyPond peut déterminer automatiquement les sous-groupes à
1344 l'intérieur d'un groupement de notes, bien que le résultat ne soit pas
1345 toujours optimal. Les propriétés @code{stemLeftBeamCount} et
1346 @code{stemRightBeamCount} permettent alors
1347 d'ajuster ce comportement. Lorsque l'une ou l'autre de ces propriétés
1348 est définie, elle ne s'applique qu'une seule fois, après quoi sa
1349 définition est effacée.
1351 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1356 \set stemLeftBeamCount = #1
1361 La propriété @code{subdivideBeams} sert à grouper les double-croches
1362 ou les valeurs plus brèves pulsation par pulsation, la pulsation
1363 étant définie par la propriété @code{beatLength}.
1365 @lilypond[fragment,quote,relative=2,verbatim]
1367 \set subdivideBeams = ##t
1369 \set Score.beatLength = #(ly:make-moment 1 8)
1372 @funindex subdivideBeams
1375 Pour plus d'information sur @code{make-moment}, voir
1376 @ref{Time administration}.
1378 Lorsqu'une ligature franchit une barre de mesure, le saut
1379 de ligne est en principe interdit à cet endroit. Ce comportement peut
1380 être outrepassé en définissant @code{breakable}.
1384 @cindex ligatures et sauts de ligne
1385 @cindex ligatures coudées
1386 @cindex auto-knee-gap
1388 LilyPond insère automatiquement des ligatures coudées --- certaines
1389 notes vers le haut, d'autres vers le bas --- lorsqu'il détecte un espace
1390 important entre des têtes de notes. Ce comportement peut être changé par
1391 l'intermédiaire de l'objet @code{auto-knee-gap}
1396 Les ligatures coudées à cheval sur deux portées ne peuvent être
1397 employées en même temps que des portées invisibles. Voir
1398 @ref{Hiding staves}.
1400 @c Is this still true with skyline spacing stuff? -J.Mandereau
1401 Les ligatures peuvent entrer en collision avec des symboles entourant
1402 les notes, contrairement aux textes ou aux altérations.
1405 @node Feathered beams
1406 @subsubsection Feathered beams
1408 Les ligatures en soufflet s'obtiennent en définissant la propriété
1409 @code{grow-direction} d'une barre de ligature. La fonction
1410 @code{\featherDurations} sert à ajuster la durée des notes.
1412 @lilypond[ragged-right,relative=1,fragment,verbatim,quote]
1413 \override Beam #'grow-direction = #LEFT
1414 \featherDurations #(ly:make-moment 5 4)
1422 La commande @code{\featherDurations} ne permet de traiter que de très
1433 * Bar and bar number checks::
1438 @subsubsection Bar lines
1440 @cindex barres de mesure
1442 @cindex barres de reprise
1445 Les barres de mesures délimitent les mesures, mais peuvent aussi
1446 indiquer une reprise. En principe, elles sont insérées automatiquement,
1447 et les sauts de ligne ne peuvent avoir lieu qu'au niveau de ces barres.
1449 Il est possible de forcer l'impression d'une barre de mesure spéciale,
1450 avec la commande @code{\bar} :
1452 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1457 Les styles de barres de mesure disponibles sont
1459 @c @lilypondfile[ragged-right,quote]{bar-lines.ly}
1462 En plus de cela, on peut demander @code{"||:"}, qui équivaut à
1463 @code{"|:"}, mais qui donnera, en cas de saut de ligne, une double barre
1464 en fin de ligne, et une barre de reprise au début de la ligne suivante.
1466 Il est possible d'autoriser un saut de ligne même s'il n'y a pas
1467 de barre de mesure visible, en utilisant :
1476 Ceci insérera une barre de mesure invisible, et permettra de sauter de
1477 ligne à cet endroit, sans incrémenter le numéro de mesure.
1480 Dans une partition comprenant plusieurs portées, la commande @code{\bar}
1481 placée sur une portée s'applique automatiquement à toutes les
1482 portées. Les barres de mesure que l'on obtient alors sont d'un seul
1483 tenant sur les portées d'un @code{StaffGroup}, d'un @code{PianoStaff} ou
1484 d'un @code{GrandStaff}.
1486 @lilypond[quote,ragged-right,fragment,verbatim]
1494 \new Staff { \clef bass c4 g e g }
1496 \new Staff { \clef bass c2 c2 }
1504 @funindex repeatCommands
1505 @funindex defaultBarType
1508 La commande @code{\bar }@var{bartype} sert de raccourci pour @code{\set
1509 Timing.whichBar = }@var{bartype}. Dès que l'on définit @code{whichBar},
1510 une barre de mesure est créée selon le style défini.
1513 Dès que la propriété @code{whichBar} est définie, une barre de mesure
1514 est créée. À chaque début de mesure, elle prend la valeur de
1515 @code{Timing.defaultBarType}. La valeur de @code{repeatCommands} sert à
1516 remplacer les barres de mesure par défaut.
1518 Nous vous invitons à utiliser @code{\repeat} pour indiquer les
1519 reprises. Voyez à ce sujet @ref{Repeats}.
1524 Dans ce manuel : @ref{Repeats}, @ref{Grouping staves}.
1526 Référence du programme : @rinternals{BarLine} (faisant partie du
1527 contexte @rinternals{Staff}), @rinternals{SpanBar} (sur plusieurs
1532 @subsubsection Bar numbers
1534 @cindex Mesure, numéro de
1535 @cindex numéros de mesure
1536 @funindex currentBarNumber
1538 Les numéros de mesure sont imprimés par défaut à chaque début de
1539 ligne. Ce nombre est stocké par la propriété @code{currentBarNumber}
1540 qui sera mis à jour à chaque mesure.
1542 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1543 \repeat unfold 4 {c4 c c c} \break
1544 \set Score.currentBarNumber = #50
1545 \repeat unfold 4 {c4 c c c}
1548 L'impression d'un numéro de mesure ne peut intervenir que s'il y a une
1549 barre. Aussi, pour pouvoir le faire au début d'un morceau,
1550 devrez-vous ajouter une barre vide :
1552 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1553 \set Score.currentBarNumber = #50
1555 \repeat unfold 4 {c4 c c c} \break
1556 \repeat unfold 4 {c4 c c c}
1559 Vous pouvez imprimer un numéro de mesure à intervalles réguliers plutôt
1560 qu'en tête de chaque ligne. C'est ce qu'illustre l'exemple suivant.
1562 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1563 \override Score.BarNumber #'break-visibility = #'#(#f #t #t)
1564 \set Score.currentBarNumber = #11
1565 \bar "" % Permit first bar number to be printed
1566 % Print a bar number every second measure
1567 \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2)
1574 Désactiver le graveur concerné --- @code{Bar_number_engraver} ---
1575 donnera une partition sans numéros de mesure.
1577 @lilypond[verbatim,ragged-right,quote]
1581 \remove "Bar_number_engraver"
1593 Référence du programme : @rinternals{BarNumber}.
1595 Exemples : @rlsr{Staff notation}.
1600 Les numéros de mesure peuvent entrer en collision avec les crochets de
1601 @rinternals{StaffGroup}. La propriété @code{padding} --- décalage
1602 --- de l'objet @rinternals{BarNumber} permet alors d'ajuster leur
1606 @node Bar and bar number checks
1607 @subsubsection Bar and bar number checks
1609 @cindex vérification des limites de mesure
1610 @cindex mesures, vérification des limites
1611 @funindex barCheckSynchronize
1614 Les tests de limites de mesure (ou tests de mesure) aident à détecter
1615 les erreurs dans les durées. Un test de mesure s'écrit avec une barre
1616 verticale, @samp{|}. Lors du traitement, elle doit correspondre à une
1617 barre de mesure. Sinon, un avertissement est émis. Dans l'exemple
1618 suivant, le deuxième test de mesure signale une erreur.
1620 \time 3/4 c2 e4 | g2 |
1623 Le test de mesure peut être aussi utilisé dans les paroles, par exemple :
1627 Twin -- kle | Twin -- kle
1631 Des durées incorrectes font échouer les tests de mesure, et peuvent
1632 souvent mettre la partition sens dessus dessous, particulièrement s'il
1633 s'agit de musique polyphonique. Vérifier les tests de mesure qui ont
1634 échoué et les durées incorrectes est un bon moyen de commencer à
1635 corriger sa partition.
1638 @funindex pipeSymbol
1640 Il est aussi possible d'attribuer une autre valeur au symbole
1641 @code{|}, en assignant une expression musicale à @code{pipeSymbol},
1643 @lilypond[quote,ragged-right,verbatim]
1644 pipeSymbol = \bar "||"
1650 Lorsque l'on recopie de longues pièces, il peut être utile de vérifier
1651 que les numéros de mesures de LilyPond correspondent à l'original que
1652 l'on recopie. Cela se fait avec @code{\barNumberCheck}. Par exemple,
1655 \barNumberCheck #123
1659 affiche un avertissement lors du traitement si le numéro de mesure à ce
1660 point (variable @code{currentBarNumber}) n'est pas 123.
1663 @node Rehearsal marks
1664 @subsubsection Rehearsal marks
1666 @cindex Repères, indication de
1669 Indiquer un repère s'obtient grâce à la commande @code{\mark}.
1671 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1680 La lettre@tie{}@q{I} n'est pas utilisée, conformément aux usages de la
1681 gravure. Cependant, vous pourrez intégrer la lettre @q{I} en utilisant
1684 \set Score.markFormatter = #format-mark-alphabet
1687 Lorsque vous utilisez @code{\mark \default}, le repère s'incrémente
1688 automatiquement ; toutefois donner un nombre en argument permet de
1689 spécifier manuellement le repère en question. La valeur à utiliser
1690 est enregistrée dans la propriété @code{rehearsalMark}.
1692 Le style du repère est déterminé par la propriété
1693 @code{markFormatter}. Il s'agit d'une fonction qui prend en arguments
1694 le repère en cours (un entier) ainsi que le contexte en cours, et
1695 retournera un objet de type étiquette. Dans l'exemple qui suit,
1696 @code{markFormatter} est réglé pour une procédure type. Quelques
1697 mesure plus loin, son comportement est modifié pour imprimer un
1700 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
1701 \set Score.markFormatter = #format-mark-numbers
1704 \set Score.markFormatter = #format-mark-box-numbers
1710 Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les
1711 définitions de @code{format-mark-numbers} (comportement par défaut),
1712 @code{format-mark-box-numbers},
1713 @code{format-mark-letters} et @code{format-mark-box-letters}. Vous
1714 pouvez vous en inspirer pour d'autres fonctions de formatage.
1716 @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} et
1717 @code{format-mark-circle-barnumbers} permettent d'imprimer le numéro
1718 de mesure au lieu des compteurs alphabétique ou numérique.
1720 On peut aussi spécifier manuellement une marque de repère :
1727 @code{Score.markFormatter} sera sans effet sur des repères ainsi
1728 définis. Un @code{\markup} peut néanmoins s'utiliser en argument.
1731 \mark \markup@{ \box A1 @}
1738 Un @code{\mark} peut contenir un glype musical tel que le signe
1741 @lilypond[fragment,quote,ragged-right,verbatim,relative]
1742 c1 \mark \markup { \musicglyph #"scripts.segno" }
1743 c1 \mark \markup { \musicglyph #"scripts.coda" }
1744 c1 \mark \markup { \musicglyph #"scripts.ufermata" }
1749 Pour connaître les différents symboles accessibles par
1750 @code{\musicglyph}, consultez @ref{The Feta font}.
1752 Pour affiner le positionnement des repères, veuillez vous référer à
1757 Dans ce manuel : @ref{Text marks}.
1759 Référence du programme : @rinternals{RehearsalMark}.
1761 Fichiers d'initialisation : @file{scm/@/translation@/-functions@/.scm}
1762 contient les définitions de @code{format-mark-numbers} et
1763 @code{format-mark-letters}. Elles seront source d'inspiration pour
1764 d'autres fonctions de formatage.
1766 Exemples : @rlsr{Rhythms}, @rlsr{Expressive marks}.
1769 @node Special rhythmic concerns
1770 @subsection Special rhythmic concerns
1775 * Aligning to cadenzas::
1776 * Time administration::
1780 @subsubsection Grace notes
1784 @cindex notes d'ornement
1785 @cindex appoggiature
1786 @cindex accacciature
1790 Les petites notes sont des ornements entièrement écrits. Les plus
1791 courantes sont les accacciatures, qui doivent se jouer très vite,
1792 et qui s'écrivent sous forme d'une petite note barrée (sur la hampe)
1793 et liée. L'appoggiature est une petite note non barrée, qui vole
1794 une fraction à la durée de la note réelle qui la suit.
1796 Ces petites notes sont entrées avec les commandes @code{\acciaccatura}
1797 et @code{\appoggiatura}, comme le montre l'exemple suivant :
1799 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1800 b4 \acciaccatura d8 c4 \appoggiatura e8 d4
1801 \acciaccatura { g16[ f] } e4
1805 Ce sont là deux formes spéciales de la commande @code{\grace}, qui prend
1806 en charge toutes les petites notes. Si on la fait suivre d'une
1807 expression musicale, un groupe de petites notes sera créé, sans impact
1810 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1812 \grace { c16[ d16] } c2 c4
1816 Contrairement à @code{\acciaccatura} ou @code{\appoggiatura}, la
1817 commande @code{\grace} ne provoque pas de liaison.
1819 La durée des petites notes est interprétée par le programme en fonction
1820 d'un deuxième compteur de temps, le chronomètre @code{grace}. Chaque
1821 instant est défini par deux nombres rationnels : le premier compte les
1822 durées réelles, le second compte la durée des petites notes. Reprenons
1823 l'exemple ci-dessus en y ajoutant ces couples de nombres :
1825 @lilypond[quote,ragged-right]
1828 c4 \grace c16 c4 \grace {
1831 \new Lyrics \lyricmode {
1832 \override LyricText #'font-family = #'typewriter
1836 ( \fraction 1 4 , \fraction -1 16 ) } 16 }
1837 \markup { (\fraction 1 4 , 0 ) } 4
1839 \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16
1840 \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16
1842 \markup { ( \fraction 2 4 , 0 ) }
1847 Les petites notes se placent de façon synchrone entre les différentes
1848 portées. Dans l'exemple suivant, il y a deux petites double-croches
1849 pour chaque petite croche.
1851 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1852 << \new Staff { e4 \grace { c16[ d e f] } e4 }
1853 \new Staff { c4 \grace { g8[ b] } c4 } >>
1856 @funindex \afterGrace
1858 La commande @code{\afterGrace} sert à placer une petite note après une
1859 note réelle --- et non @emph{avant} comme d'ordinaire. Cette commande
1860 requiert deux arguments : la note réelle, et la ou les petites notes qui
1863 @lilypond[ragged-right, verbatim,relative=2,fragment]
1864 c1 \afterGrace d1 { c16[ d] } c4
1867 Les petites notes se placent alors aux 3/4 de la durée de la note
1868 réelle. Cette fraction peut être changée en définissant
1869 @code{afterGraceFraction} ; ainsi,
1872 #(define afterGraceFraction (cons 7 8))
1876 placera la petite note à 7/8 de la note réelle.
1878 On peut obtenir le même effet manuellement, de la façon suivante :
1880 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1883 { s2 \grace { c16[ d] } } >>
1889 Le silence invisible peut être plus ou moins long --- ici c'est une
1890 demi-pause --- afin d'ajuster l'espace entre la note réelle et les
1893 Les expressions @code{\grace} obéissent à des règles typographiques
1894 particulières, notamment pour régler l'orientation et la taille des
1895 objets. De ce fait, toute subtilité de mise en forme devra être
1896 indiquée @emph{à l'intérieur} de l'expression introduite par
1899 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1911 Tous les réglages ajoutés doivent également être désactivés dans cette
1914 Il est possible de changer globalement la mise en forme des petites
1915 notes dans un morceau, au moyen de la fonction
1916 @code{add-grace-property}. Ici, par exemple, on ôte la définition de
1917 l'orientation des objets @code{Stem} pour toutes les petites notes, afin
1918 que les hampes ne soient pas toujours orientées vers le haut.
1922 #(add-grace-property 'Voice 'Stem 'direction '())
1928 Il est par ailleurs possible de modifier les variables
1929 @code{startGraceMusic}, @code{stopGraceMusic},
1930 @code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic},
1931 @code{startAppoggiaturaMusic}, et @code{stopAppoggiaturaMusic}.
1932 Pour plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}.
1935 Le trait que l'on trouve sur les hampes des accacciatures peut
1936 être appliqué dans d'autres situations en définissant @*
1937 @code{\override Stem #'stroke-style = #"grace"}.
1942 Il est possible de forcer l'élasticité de l'espacement des notes d'agrément.
1944 @lilypond[verbatim,quote,relative=2]
1946 \override Score.SpacingSpanner #'strict-grace-spacing = ##t
1949 \afterGrace c4 { c16[ c8 c16] }
1953 c16 c c c c c c c c4 r
1961 Référence du programme : @rinternals{GraceMusic}.
1966 Une partition commençant par une expression @code{\grace} doit faire
1967 intervenir la commande @code{\new Voice}, sans quoi la note réelle et
1968 la petite note se retrouveront sur des portées différentes.
1970 La synchronisation des petites notes se fait de façon parfois
1971 surprenante, car les autres objets de la portée --- barres de mesure,
1972 armures, etc. --- sont eux aussi synchrones. Pensez-y lorsque vous
1973 mélez des portées comprenant des petites notes et d'autres sans :
1975 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1976 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1977 \new Staff { c4 \bar "|:" d4 } >>
1981 Il est possible de remédier à cela en insérant sur les autres portées
1982 des silences invisibles dans une expression précédée de @code{\grace},
1983 correspondant à la durée des petites notes.
1985 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1986 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1987 \new Staff { c4 \bar "|:" \grace s16 d4 } >>
1990 Seules des expressions musicales séquentielles peuvent être utilisées
1991 pour des petites notes ; il n'est pas possible d'imbriquer ni de
1992 juxtaposer des sections de petites notes, faute de quoi le traitement du
1993 code peut échouer ou produire des erreurs.
1996 @node Aligning to cadenzas
1997 @subsubsection Aligning to cadenzas
1999 Dans un contexte orchestral, une cadence constitue un problème
2000 spécifique. Lors du montage d'une partition contenant une cadence,
2001 tous les autres instruments doivent sauter autant de notes que ce
2002 qu'en comporte la cadence, faute de quoi il démarreraient trop tôt ou
2005 Les fonctions @code{mmrest-of-length} ou @code{skip-of-length}
2006 permettent de résoudre ce problème. Ces fonctions Scheme prennent en
2007 argument un fragment de musique, et génèrent un @code{\skip} ou un
2008 silence multi-mesures d'une durée correspondant à ce fragment.
2009 L'exemple qui suit illustre l'utilisation de @code{mmrest-of-length}.
2011 @lilypond[verbatim,ragged-right,quote]
2012 cadenza = \relative c' {
2013 c4 d8 << { e f g } \\ { d4. } >>
2018 \new Staff { \cadenza c'4 }
2020 #(ly:export (mmrest-of-length cadenza))
2027 @node Time administration
2028 @subsubsection Time administration
2030 @cindex temps, gestion du
2032 Le temps est administré par le @rinternals{Time_signature_engraver},
2033 qui réside en principe dans le contexte @rinternals{Score}. Sa
2034 gestion traite les variables suivantes :
2037 @item currentBarNumber
2038 Le numéro de mesure.
2041 La longueur de la mesure, dans la métrique en cours. Pour une mesure
2042 à 4/4, elle est de@tie{}1, et de 3/4 pour une mesure à 6/8.
2044 @item measurePosition
2045 Le moment où l'on en est dans la mesure en cours. Cette quantité est
2046 remise à@tie{}0 dès lors qu'on dépasse @code{measureLength} ; la variable
2047 @code{currentBarNumber} est alors incrémentée.
2050 Lorsqu'on lui assigne la valeur @emph{vrai}, les valeurs ci-dessus
2051 mentionnées sont mises à jour à chaque pas. Fixée à @emph{faux}, le
2052 graveur restera indéfiniment dans la mesure en cours.
2055 Le calage peut être modifié en réglant explicitement l'une de ces
2056 variables. Dans l'exemple qui suit, nous réglons la métrique à 4/4,
2057 tout en fixant @code{measureLength} à 5/4. Un peu plus loin, nous
2058 raccourcissons la mesure de 1/8, en assignant 7/8 à
2059 @code{measurePosition}, alors que nous en sommes à 2/4 dans la
2060 mesure ; la barre de mesure tombera donc à @w{2/4 + 3/8}. Les 3/8
2061 résultent du fait que 5/4 équivaut à 10/8, mais nous nous sommes recalés
2062 à 7/8 de la mesure ; donc @w{10/8 @minus{} 7/8 = 3/8}.
2064 @lilypond[quote,ragged-right,verbatim,relative,fragment]
2065 \set Score.measureLength = #(ly:make-moment 5 4)
2069 \set Score.measurePosition = #(ly:make-moment 7 8)
2075 Comme le montre cet exemple, @code{ly:make-moment n m} construit une
2076 durée de n/m fois une ronde.
2077 Par conséquent, @code{ly:make-moment 1 8} correspond à une croche, et
2078 @code{ly:make-moment 7 16} à la durée de sept doubles croches.