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 @unnumberedsubsubsec 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
131 Référence du programme : @rinternals{Dots}, @rinternals{DotColumn}.
135 @unnumberedsubsubsec Tuplets
141 Les nolets --- triolets, quintolets, etc. --- sont obtenus en
142 multipliant toutes les durées d'une expression musicale par une
146 \times @var{fraction} @var{expr_musique}
150 La durée de @var{expr_musique} sera multipliée par la fraction. Le
151 dénominateur de la fraction sera imprimé au-dessus des notes, parfois
152 avec un crochet. Le nolet le plus courant est le triolet, dans lequel 3
153 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur
156 @lilypond[quote,ragged-right,fragment,verbatim]
157 g'4 \times 2/3 {c'4 c' c'} d'4 d'4
160 Les nolets peuvent être imbriqués ; par exemple,
162 @lilypond[fragment,ragged-right,verbatim,relative=2]
163 \override TupletNumber #'text = #tuplet-number::calc-fraction-text
166 \times 3/5 { a a a a a }
174 @funindex \tupletDown
176 @funindex \tupletNeutral
177 @code{\tupletNeutral}.
183 @funindex tupletNumberFormatFunction
184 @cindex nolets, formatage
186 La propriété @code{tupletSpannerDuration} spécifie la longueur voulue de
187 chaque crochet. Avec elle, vous pouvez faire plusieurs nolets en ne
188 tapant @code{\times} qu'une fois, ce qui évite une longue saisie. Dans
189 le prochain exemple, deux triolets sont imprimés avec une seule fonction
192 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
193 \set tupletSpannerDuration = #(ly:make-moment 1 4)
194 \times 2/3 { c8 c c c c c }
198 Pour plus d'information sur @code{make-moment}, voir
199 @ref{Time administration}.
201 L'apparence du chiffre est déterminée par la propriété @code{text} dans
202 @code{TupletNumber}. La valeur par défaut imprime seulement le
203 dénominateur, mais si elle est définie par la fonction
204 @code{tuplet-number::calc-fraction-text}, la fraction entière
205 @var{num}:@var{den} sera imprimée à la place.
207 Pour éviter d'imprimer les chiffres des nolets, utilisez
209 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
210 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
211 \override TupletNumber #'transparent = ##t
212 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
215 Utilisez la fonction @code{\tweak} pour définir une priorité dans le cas
216 de nolets imbriqués débutant au même moment. Dans cet exemple,
217 @code{\tweak} spécifie un texte sous forme de fraction pour le
218 @code{TupletNumber} externe et de dénominateur pour les trois triolets
221 @lilypond[quote,ragged-right,verbatim]
223 \tweak #'text #tuplet-number::calc-fraction-text
225 \tweak #'text #tuplet-number::calc-denominator-text
226 \times 2/3 { c'8[ c'8 c'8] }
227 \times 2/3 { c'8[ c'8 c'8] }
228 \times 2/3 { c'8[ c'8 c'8] }
233 Ici, @code{\tweak} et @code{\override} agissent de concert pour
234 spécifier le positionnement du @code{TupletBracket}. Le premier
235 @code{\tweak} positionne le @code{TupletBracket} du nolet externe au
236 dessus de la portée. Le second @code{\tweak} positionne le
237 @code{TupletBracket} du premier triolet interne au dessous de la
238 portée. Notez que cette paire de fonctions @code{\tweak} n'affecte
239 que le triolet extérieur et le premier des trois triolets imbriqués
240 parce qu'ils commencent au même instant musical. Nous utilisons
241 @code{\override} de manière tout à fait normale, pour forcer le
242 positionnement du @code{TupletBracket} des deuxième et troisième
243 triolets en dessous de la portée.
245 @lilypond[quote,ragged-right,verbatim]
247 \tweak #'text #tuplet-number::calc-fraction-text
248 \tweak #'direction #up
250 \tweak #'direction #down
251 \times 2/3 { c'8[ c'8 c'8] }
252 \override TupletBracket #'direction = #down
253 \times 2/3 { c'8[ c'8 c'8] }
254 \times 2/3 { c'8[ c'8 c'8] }
259 Les crochets de nolets peuvent aller jusqu'aux prémisses de la mesure
260 suivante, ou à la prochaine note.
262 @lilypond[ragged-right]
264 \set tupletFullLength = ##t
269 \set tupletFullLengthNote = ##t
281 Référence du programme : @rinternals{TupletBracket},
282 @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}.
285 @node Scaling durations
286 @unnumberedsubsubsec 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
305 Dans ce manuel : @ref{Tuplets}.
309 @unnumberedsubsubsec Ties
311 @cindex liaison de prolongation
314 Une liaison de tenue (ou de prolongation) relie deux notes adjacentes de
315 même hauteur. Dans les faits, elle prolonge la durée d'une note, et ne
316 doit donc pas être confondue avec les liaisons d'articulation ou de
317 phrasé. Une liaison de tenue est indiquée au moyen d'un tilde @samp{~}.
319 @lilypond[quote,ragged-right,fragment,verbatim]
320 e' ~ e' <c' e' g'> ~ <c' e' g'>
324 Quand une liaison de tenue se trouve entre deux accords, toutes les
325 notes de même hauteur entre ces deux accords sont reliées. S'il n'y en
326 a aucune, aucune liaison n'est créée. Il est également possible de lier
327 partiellement deux accords, en mettant les liaisons à l'intérieur des
330 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
331 <c~ e g~ b> <c e g b>
335 Une liaison de tenue est un moyen parmi d'autres pour prolonger la durée
336 d'une note, tout comme les points. L'exemple suivant montre deux
337 manières de matérialiser exactement la même idée :
340 @lilypond[quote,fragment,ragged-right]
341 \time 3/4 c'2. c'2 ~ c'4
345 Les liaisons de tenues sont utilisées soit lorsque la note dépasse de la
346 mesure, soit quand les points ne suffisent pas à donner la bonne durée.
347 Lorsque l'on utilise ces liaisons, les valeurs rythmiques les plus
348 longues doivent s'aligner sur les subidivisions de la mesure, comme ici :
351 @lilypond[fragment,quote,ragged-right]
353 r8^"oui" c8 ~ c2 r4 | r8^"non" c2 ~ c8 r4
358 Lorsque l'on doit lier de nombreuses notes sur plusieurs mesures, il
359 devient plus facile d'avoir recours à la division automatique des notes
360 --- voir @ref{Automatic note splitting}. Ce procédé divise
361 automatiquement les notes trop longues, et les lie par-delà les barres
365 @cindex liaison de prolongation, répétition
366 @cindex reprises avec alternatives et liaisons de prolongation
368 Lorsqu'une mesure de seconde fois après une reprise commence sur une
369 note liée, la liaison doit être répétée. C'est à cela que sert la
370 commande @code{\repeatTie} :
372 @lilypond[fragment,quote,ragged-right,relative=2]
376 @cindex laissez vibrer
377 @cindex liaison, laissez vibrer
378 @funindex \laissezVibrer
380 Les liaisons @qq{Laissez vibrer} (L.V.) sont utilisées pour le piano, la
381 harpe, et certains instruments de percussion. Elles indiquent à
382 l'instrumentiste de laisser sonner la note ou l'accord au lieu de
383 l'étouffer. Cet effet s'obtient avec la commande @code{\laissezVibrer}.
385 @lilypond[fragment,ragged-right,verbatim,relative=1]
386 <c f g>\laissezVibrer
391 Les liaisons de tenue servent parfois à rendre un accord arpégé. Dans ce
392 cas, les notes liées ne sont pas toutes consécutives. Il faut alors
393 assigner à la propriété @code{tieWaitForNote} la valeur @emph{vrai}
394 (@q{t} pour @q{true}). Cette même méthode peut servir, par exemple, à
395 lier un trémolo à un accord.
397 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
398 \set tieWaitForNote = ##t
399 \grace { c16[~ e~ g]~ } <c, e g>2
400 \repeat tremolo 8 { c32~ c'~ } <c c,>1
401 e8~ c~ a~ f~ <e' c a f>2
404 Il est possible de graver manuellement les liaisons de tenue, en
405 modifiant la propriété @code{tie-configuration}. Pour chaque paire, le
406 premier nombre indique la distance à la portée, en espaces de portée, et
407 le second la direction (1 pour haut, @minus{}1 pour bas).
409 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
411 \override TieColumn #'tie-configuration =
412 #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
422 @funindex \tieNeutral
436 @rglos{laissez vibrer}.
438 Dans ce manuel : @ref{Automatic note splitting}.
440 Référence du programme :
442 @rinternals{TieColumn},
443 @rinternals{LaissezVibrerTie},
444 @rinternals{LaissezVibrerTieColumn}.
449 Un changement de portée, lorsqu'une liaison de tenue est active, ne
450 peut produire une liaison oblique.
452 Le changement de clé ou d'octave pendant une liaison de tenue produit un
453 résultat indéfini. Dans ces cas-là, il est préférable d'utiliser un
458 @subsection Writing rests
463 * Full measure rests::
467 @unnumberedsubsubsec Rests
473 Les silences sont écrits comme des notes avec le nom de note @code{r}.
475 @lilypond[fragment,quote,ragged-right,verbatim]
479 Les pauses d'une mesure complète, qui sont placées au centre de la
480 mesure, doivent être entrées comme des mesures de silence. Elles
481 peuvent être utilisées pour une seule mesure comme pour plusieurs, et
482 leur utilisation est expliquée dans la section
483 @ref{Full measure rests}.
485 Pour spécifier explicitement la position verticale d'un silence, écrivez
486 une note suivie de @code{\rest}. Un silence sera placé à la position où
487 serait imprimée la note.
489 @lilypond[fragment,quote,ragged-right,verbatim]
494 Cela rend plus facile la mise en place de la musique polyphonique,
495 puisque le formateur automatique de collision des silences laissera ces
496 silences tranquilles.
500 Référence du programme : @rinternals{Rest}.
503 @node Invisible rests
504 @unnumberedsubsubsec Invisible rests
506 @cindex sauts de durée
507 @cindex silences invisibles
508 @cindex silences d'espacement
512 Un silence invisible --- que l'on pourrait appeler un @qq{saut} ---
513 peut être entré comme une note avec le nom de note `@samp{s}' ou avec
514 @code{\skip @var{durée}}
516 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
517 a4 a4 s4 a4 \skip 1 a4
520 La syntaxe @code{s} est seulement disponible pour les modes d'entrée
521 de notes et d'accords. Dans d'autres situations, pour l'entrée de
522 paroles par exemple, vous devrez utiliser la commande @code{\skip}.
524 @lilypond[quote,ragged-right,verbatim]
527 \new Lyrics \lyricmode { \skip 2 bla2 }
531 La commande de saut génère simplement une case musicale vide. Elle ne
532 produit rien sur la partition, pas même un symbole transparent. Le code
533 de saut @code{s} crée tout de même une @rinternals{Staff} et une
534 @rinternals{Voice} lorsque nécessaire, tout comme les commandes de
535 note et de silence. Ainsi, le code suivant aboutit à une portée vide.
537 @lilypond[quote,ragged-right,verbatim]
541 Le fragment @code{@{ \skip 4 @} } produirait une page vide.
545 Référence du programme : @rinternals{SkipMusic}.
548 @node Full measure rests
549 @unnumberedsubsubsec Full measure rests
551 @cindex mesures à compter
552 @cindex mesure entière de silence
553 @cindex Silences, multi-mesures
554 @cindex Silences, mesure entière
555 @cindex une pause par mesure
558 Un silence valant une ou plusieurs mesures entières s'entre avec un
559 @samp{R} majuscule. Ceci ne peut être utile que pour une mesure complètement
560 vide, et pour générer des parties séparées : ce silence sera alors
561 répété sur autant de mesures que nécessaire, ou bien imprimé une seule
562 fois. La répétition est contrôlée par la propriété
563 @code{Score.skipBars}. Au cas où ce commutateur est défini comme
564 vrai (lettre @code{##t} pour @q{true}), les mesures vides ne seront pas répétées, et le nombre exact de
567 @lilypond[quote,ragged-right,fragment,verbatim]
568 \time 4/4 r1 | R1 | R1*2 \time 3/4 R2. \time 2/4 R2 \time 4/4
569 \set Score.skipBars = ##t R1*17 R1*4
572 Le @code{1} de @code{R1} est le même que celui utilisé pour la durée
573 des notes. Vous devrez donc, si le morceau n'est pas à 4/4, stipuler
574 un autre durée, qui pourra contenir des points d'augmentation ou être
575 libellé sous forme de fraction :
577 @lilypond[quote,ragged-right,fragment,verbatim]
578 \set Score.skipBars = ##t
587 Un @code{R} qui s'étend sur une seule mesure s'imprime tantôt comme
588 une pause, tantôt comme une brève, et sera centré sur la mesure
589 quelle que soit la métrique.
591 Dans le cas où ce silence ne dure que quelques mesures, LilyPond
592 imprime sur la portée des @qq{ silences d'église }, simple suite de
593 rectangles. La propriété @code{MultiMeasureRest.expand-limit} permet
594 d'obtenir un silence unique.
596 @lilypond[quote,ragged-right,fragment,verbatim]
597 \set Score.skipBars = ##t
599 \override MultiMeasureRest #'expand-limit = 1
603 @cindex texte et silence multi-mesures
604 @cindex script et silence multi-mesures
605 @cindex point d'orgue et silence multi-measures
607 Vous pouvez aussi ajouter du texte à un silence multi-mesures en utilisant
608 la syntaxe @var{note}-@code{markup} (cf. @ref{Formatting text}). La
609 variable @code{\fermataMarkup} permet d'ajouter un point d'orgue.
611 @lilypond[quote,ragged-right,verbatim,fragment]
612 \set Score.skipBars = ##t
614 R2.*10^\markup { \italic "ad lib." }
618 Attention ! c'est @code{MultiMeasureRestText} qui créera le texte, et
619 non @code{TextScript}.
621 @lilypond[quote,ragged-right,verbatim,fragment]
622 \override TextScript #'padding = #5
624 \override MultiMeasureRestText #'padding = #5
628 Pour aligner votre texte sur le début de la mesure, rattachez-le à un
629 silence invisible de longueur zéro comme ceci :
638 Référence du programme : @rinternals{MultiMeasureRestMusic},
639 @rinternals{MultiMeasureRest}.
641 L'objet de rendu @rinternals{MultiMeasureRestNumber} traite les
642 nombres, et @rinternals{MultiMeasureRestText} le texte ajouté par
648 Vous ne pouvez pas utiliser de doigtés (p.ex. @code{R1-4}) pour
649 positionner des nombres au dessus d'un silence multi-mesures, ni
652 @cindex condenser les silences
654 Condenser plusieurs silences en un unique silence multi-mesures ne peut
655 être automatisé. Les silences multi-mesures peuvent générer des
656 collisions avec d'autres silences.
658 Pensez à indiquer explicitement la durée de la note qui suit un
659 silence multi-mesures, car elle sera par défaut égale à la durée totale
660 des mesures à compter. Ainsi, dans l'exemple ci-après, les deux do
661 dièses vaudront chacun quatre mesures à 4/4.
665 Lorsque @code{skipBars} est activé, le résultat semblera correct, mais
666 la numérotation des mesures sera suspendue.
669 @node Displaying rhythms
670 @subsection Displaying rhythms
676 * Polymetric notation::
677 * Automatic note splitting::
678 * Showing melody rhythms::
682 @unnumberedsubsubsec Time signature
684 @cindex chiffrage de mesure
685 @cindex chiffre indicateur de mesure
689 Le chiffre de mesure indique le mètre d'une pièce : une alternance
690 régulière de temps forts et de temps faibles. Il est indiqué par une
691 fraction au début de la portée.
693 Le chiffre de mesure est réglé par la commande @code{\time}.
695 @lilypond[quote,ragged-right,fragment,verbatim]
696 \time 2/4 c'2 \time 3/4 c'2.
701 Le symbole imprimé peut être modifié avec la propriété @code{style}.
702 En la réglant sur @code{#'()}, une fraction sera utilisée pour les
703 chiffres de mesure 4/4 et 2/2.
705 @lilypond[fragment,quote,ragged-right,verbatim]
708 \override Staff.TimeSignature #'style = #'()
713 Il y a bien d'autres options pour sa mise en place. Voir @ref{Ancient time
714 signatures} pour plus d'exemples.
716 @code{\time} définit les propriétés @code{timeSignatureFraction},
717 @code{beatLength} et @code{measureLength} dans le contexte
718 @code{Timing}, qui en principe est assimilé à @rinternals{Score}. La
719 propriété @code{measureLength} détermine où des barres de mesure doivent
720 être insérées, et comment les groupements de notes doivent être gérés.
721 La modification de la valeur de @code{timeSignatureFraction} donne
722 également lieu à l'impression d'un symbole.
724 Plus d'options sont accessibles au moyen de la fonction Scheme
725 @code{set-time-signature}. De concert avec le
726 @rinternals{Measure_grouping_engraver}, elle crée les signes de
727 @rinternals{MeasureGrouping}, qui facilitent la lecture de musiques
728 modernes, complexes rythmiquement. Dans l'exemple suivant, les mesures
729 à 9/8 sont subdivisées en @code{(2 2 2 3)}, ce qui est donné comme
730 argument à la commande @code{set-time-signature}, en troisième position.
732 @lilypond[quote,ragged-right,verbatim]
735 #(set-time-signature 9 8 '(2 2 2 3))
736 g8[ g] d[ d] g[ g] a8[( bes g]) |
737 #(set-time-signature 5 8 '(3 2))
743 \consists "Measure_grouping_engraver"
751 Référence du programme : @rinternals{TimeSignature} et
752 @rinternals{Timing_translator}.
754 Exemples : @rlsr{Rhythms}.
759 Le groupement automatique des ligatures n'utilise pas les groupements
760 spécifiés par @code{set-time-signature}.
764 @unnumberedsubsubsec Upbeats
768 @cindex mesure incomplète
772 Les mesures incomplètes, telles que les anacrouses ou levées, doivent
773 être entrées avec la commande
775 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
776 \partial 16*5 c16 cis d dis e | a2. c,4 | b2
780 La syntaxe de cette commande est
786 @code{durée} étant la valeur rythmique devant être ajoutée avant la
789 Le programme traduit cette commande en
792 \set Timing.measurePosition = -@var{durée}
796 La propriété @code{measurePosition} contient un nombre rationnel qui
797 indique, à ce point précis, où l'on en est de la mesure. Notez qu'il
798 peut s'agir d'un nombre négatif ; @code{\partial 4} signifie, pour le
799 programme : @qq{Dans cette mesure, il reste juste une noire}.
804 Cette commande ne prend pas en compte les notes d'ornement ou
805 appoggiatures au début de la musique. Lorsqu'un morceau commence par une
806 levée et avec des petites notes, la commande @code{\partial} devrait être
807 placée après celles-ci.
809 @lilypond[verbatim,quote,ragged-right,relative,fragment]
816 @code{\partial} n'est destiné à être utilisé qu'en début de pièce.
817 Si on l'utilise ailleurs qu'au début, des messages d'erreurs peuvent
821 @node Unmetered music
822 @unnumberedsubsubsec Unmetered music
826 @funindex \cadenzaOff
829 Les barres de mesure et les numéros de mesure sont calculés
830 automatiquement, ce qui n'est pas souhaitable dans le cas d'une musique
831 non mesurée --- les cadences, par exemple. Les commandes
832 @code{\cadenzaOn} et @code{\cadenzaOff} permettent de désactiver et de
833 rétablir la métrique automatique.
835 @lilypond[verbatim,quote,ragged-right,relative=2,fragment]
847 LilyPond ne change de ligne ou de page qu'au niveau des barres de
848 mesure. Si votre musique non mesurée dure plus d'une ligne, il vous
849 faudra insérer des barres de mesure invisibles, pour indiquer à quels
850 endroit un saut de ligne peut intervenir.
857 @node Polymetric notation
858 @unnumberedsubsubsec Polymetric notation
860 @cindex métrique composite
861 @cindex composite, métrique
862 @cindex métrique polymétrique
865 LilyPond ne gère pas les métriques composites de manière explicite,
866 mais on peut contourner ce problème. Dans l'exemple suivant,
867 l'indicateur de métrique est obtenu grâce à une étiquette textuelle.
868 Cette étiquette vient s'insérer dans l'objet graphique (@emph{grob})
869 @rinternals{TimeSignature}.
871 @lilypond[verbatim,ragged-right]
872 % Create 9/8 split into 2/4 + 5/8
874 \override #'(baseline-skip . 2) \number {
877 \bracket \column { "5" "8" }
882 \override Staff.TimeSignature #'stencil =
883 #ly:text-interface::print
884 \override Staff.TimeSignature #'text = #tsMarkup
886 c'2 \bar ":" c'4 c'4.
887 c'2 \bar ":" c'4 c'4.
891 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
892 {compound-time-signatures.ly}
894 Il arrive aussi que chaque portée ait sa propre métrique. Vous y
895 parviendrez en déplaçant le @rinternals{Timing_translator} dans le
896 contexte @rinternals{Staff}.
901 \remove "Timing_translator"
902 \remove "Default_bar_line_engraver"
906 \consists "Timing_translator"
907 \consists "Default_bar_line_engraver"
914 Maintenant, chacune des portées dispose de sa propre métrique.
927 c4. c8 c c c4. c8 c c
932 @lilypond[quote,ragged-right]
936 \remove "Timing_translator"
937 \remove "Default_bar_line_engraver"
940 \consists "Timing_translator"
941 \consists "Default_bar_line_engraver"
956 c4. c8 c c c4. c8 c c
962 Une autre forme de notation polymétrique consiste dans le fait que des
963 notes aient une durée relative différente selon la portée.
965 Vous pouvez créer une telle notation en définissant une métrique
966 commune à toutes les portées, que vous proratiserez manuellement
967 selon le cas en utilisant @code{timeSignatureFraction} pour obtenir la
968 division adéquate pour chaque portée. Les durées, dans chacune des
969 portées, seront alors échelonnées par rapport à la métrique commune.
970 L'échelle de représentation se règle avec @code{\scaleDurations} ---
971 qui fonctionne comme @code{\times}, sans toutefois créer de crochet.
972 La syntaxe appropriée est :
974 \scaleDurations #'(@var{numérateur} . @var{dénominateur}) @var{exprmusicale}
978 L'exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et
979 10/8. Pour la deuxième portée, les durées sont multipliées par 2/3,
980 de telle sorte que @w{2/3 * 9/8 = 3/4} ; pour la troisième, elles sont
981 multipliées par 3/5, de telle sorte que @w{3/5 * 10/8 = 3/4}.
983 @lilypond[quote,ragged-right,verbatim,fragment]
991 \set Staff.timeSignatureFraction = #'(9 . 8)
992 \scaleDurations #'(2 . 3)
993 \repeat unfold 6 { c8[ c c] }
997 \set Staff.timeSignatureFraction = #'(10 . 8)
998 \scaleDurations #'(3 . 5) {
999 \repeat unfold 2 { c8[ c c] }
1000 \repeat unfold 2 { c8[ c] }
1001 | c4. c4. \times 2/3 { c8 c c } c4
1009 Exemples : @rlsr{Rhythms}.
1014 L'utilisation de métriques différentes en parallèle entraine un
1015 alignement vertical. De ce fait, les barres de mesure ont tendance à
1016 fausser l'espacement régulier.
1019 @node Automatic note splitting
1020 @unnumberedsubsubsec Automatic note splitting
1022 On peut convertir automatiquement les notes longues en notes liées. Il
1023 faut pour cela remplacer le graveur @rinternals{Note_heads_engraver}
1024 par le graveur @rinternals{Completion_heads_engraver}. Dans les
1025 exemples suivants, les notes dépassant de la mesure sont divisées et
1028 @lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm]
1030 \remove "Note_heads_engraver"
1031 \consists "Completion_heads_engraver"
1033 c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2
1037 Ce graveur divise toutes les notes qui sortent de la mesure, et insère
1038 des liaisons de prolongation. Une utilisation posible consiste à
1039 déboguer des partitions complexes : si les mesures ne sont pas
1040 entièrement remplies, alors les liaisons de prolongation montrent
1041 exactement la durée des décalages de mesure.
1043 Si vous voulez permettre un saut de ligne aux barres de mesure où
1044 @rinternals{Completion_heads_engraver} divise les notes, vous devez
1045 aussi enlever @rinternals{Forbid_line_break_engraver}.
1050 Bien que toutes les durées --- particulièrement celles contenant des
1051 nolets --- ne puissent pas être représentées exactement avec des notes
1052 normales et des points, le graveur n'insèrera pas de nolets.
1054 @code{Completion_heads_engraver} affecte seulement les notes, il ne
1055 divise pas les silences.
1058 Référence du programme : @rinternals{Completion_heads_engraver}.
1061 @node Showing melody rhythms
1062 @unnumberedsubsubsec Showing melody rhythms
1064 Au moyen d'une portée rythmique -- @q{rhythmic staff} en anglais -- on
1065 peut montrer seulement le rythme d'une mélodie : toutes les notes sont
1066 ramenées à la même hauteur, sur une portée d'une seule ligne.
1068 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1069 \new RhythmicStaff {
1071 c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
1077 Référence du programme : @rinternals{RhythmicStaff}.
1085 * Setting automatic beam behavior::
1090 @node Automatic beams
1091 @unnumberedsubsubsec Automatic beams
1093 LilyPond décide automatiquement de la manière de grouper les notes et
1094 d'imprimer les ligatures.
1096 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1097 \time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
1100 Lorsque ce comportement automatisé n'est pas satisfaisant, on peut
1101 définir des groupements manuellement --- voir section suivante --- ou
1102 personnaliser les groupements automatiques --- voir @ref{Setting
1103 automatic beam behavior}.
1105 La commande @code{\noBeam} peut servir à empêcher des notes
1106 individuelles d'être rattachées aux autres.
1108 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1109 \time 2/4 c8 c\noBeam c c
1114 Référence du programme : @rinternals{Beam}.
1117 @node Setting automatic beam behavior
1118 @unnumberedsubsubsec Setting automatic beam behavior
1120 @funindex autoBeamSettings
1121 @funindex (end * * * *)
1122 @funindex (begin * * * *)
1123 @cindex ligatures automatiques, réglage
1124 @cindex réglage des ligatures automatiques
1126 @c [TODO: use \applyContext]
1128 Dans les métriques courantes, les ligatures automatiques peuvent commencer
1129 sur n'importe quelle note, mais ne peuvent se terminer qu'à certains points précis
1130 dans la mesure : sur une pulsation, ou après toute durée spécifiée par les propriétés
1131 nommées @code{autoBeamSettings}. Ces propriétés consistent en une liste de règles
1132 relatives au début ou à la fin des ligatures. Par défaut, elles sont définies dans
1134 @file{scm/@/auto@/-beam@/.scm}.
1136 On peut ajouter à cette liste une nouvelle règle, au moyen de la commande
1138 #(override-auto-beam-setting '(extrémité p q n m) a b [contexte])
1143 @item @code{extrémité} désigne le début (@code{begin}) ou la fin (@code{end}) de la ligature.
1145 @item @code{p/q} désigne la valeur rythmique de la note que l'on veut affecter, ou de la
1146 plus brève des notes concernées. Si cette règle doit s'appliquer à toutes les ligatures,
1147 remplacez @code{p} et @code{q} par des étoiles @qq{@code{*}}.
1150 @item @code{n/m} est le chiffre de mesure dans lequel la règle doit
1151 s'appliquer. Si celle-ci doit s'appliquer dans toutes les métriques,
1152 remplacez @code{n} et @code{m} par des étoiles @qq{@code{*}}.
1154 @item @code{a/b} est l'emplacement, dans la mesure, auquel les ligatures doivent
1155 débuter ou s'achever (suivant la valeur @q{extrémité} que nous venons de voir).
1158 @item @code{contexte} est un argument facultatif, qui détermine le contexte dans lequel
1159 la règle doit s'appliquer. Par défaut, il s'agit de @code{'Voice}.
1160 @code{#(score-override-auto-beam-setting '(A B C D) E F)} équivaut à
1161 @code{#(override-auto-beam-setting '(A B C D) E F 'Score)}.
1165 Par exemple, si l'on veut que les ligatures s'achèvent toujours après la première noire :
1169 #(override-auto-beam-setting '(end * * * *) 1 4)
1172 On peut obliger une règle de ligatures à ne s'appliquer qu'à des groupes dont la note
1173 la plus brève est d'une valeur précise :
1175 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1177 #(override-auto-beam-setting '(end 1 16 * *) 1 16)
1179 a32 a a a a16 a a a a a |
1180 #(override-auto-beam-setting '(end 1 32 * *) 1 16)
1181 a32 a a a a16 a a a a a |
1184 On peut obliger une règle de ligatures à ne s'appliquer que pour un chiffre de mesure
1187 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1189 #(override-auto-beam-setting '(end * * 5 8) 2 8)
1197 Enfin, on peut désactiver une règle de ligatures au moyen du réglage suivant :
1200 #(revert-auto-beam-setting '(extrémité p q n m) a b [contexte])
1204 @code{extrémité}, @code{p}, @code{q}, @code{n}, @code{m}, @code{a}, @code{b} et @code{contexte}
1205 étant les mêmes que plus haut. Il est même possible de désactiver des règles que l'on n'a pas
1206 explicitement créées : les règles par défaut, qui se trouvent dans le fichier @file{scm/@/auto@/-beam@/.scm}.
1210 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1212 a16 a a a a a a a a a a a a a a a
1213 #(revert-auto-beam-setting '(end 1 16 4 4) 1 4)
1214 a16 a a a a a a a a a a a a a a a
1217 La commande @code{revert-auto-beam-setting} requiert exactement les mêmes arguments
1218 que la règle d'origine. En d'autres termes, les étoiles ne seront pas prises en compte ici.
1220 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1222 #(override-auto-beam-setting '(end 1 16 1 4) 1 8)
1224 #(revert-auto-beam-setting '(end 1 16 * *) 1 8) % ceci ne désactive pas la règle !
1226 #(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % ceci marche
1232 @c TODO: old material -- not covered by above stuff, I think.
1233 Si, dans une mesure à 5/4, l'on veut que les ligatures soient regroupées temps par temps,
1234 il est nécessaire d'indiquer toutes les terminaisons de ligatures.
1236 #(override-auto-beam-setting '(end * * * *) 1 4 'Staff)
1237 #(override-auto-beam-setting '(end * * * *) 1 2 'Staff)
1238 #(override-auto-beam-setting '(end * * * *) 3 4 'Staff)
1239 #(override-auto-beam-setting '(end * * * *) 5 4 'Staff)
1243 La même syntaxe peut servir à définir les points de départ des ligatures.
1244 Dans l'exemple suivant, les ligatures automatiques ne peuvent se terminer
1245 que sur une noire pointée.
1247 #(override-auto-beam-setting '(end * * * *) 3 8)
1248 #(override-auto-beam-setting '(end * * * *) 1 2)
1249 #(override-auto-beam-setting '(end * * * *) 7 8)
1251 @c ???? Je n'y comprends rien --vv
1252 Dans une mesure à 4/4, cela implique que les ligatures ne peuvent se terminer que sur
1253 la troisième croche, ou sur le quatrième temps (après la valeur de deux fois trois croches).
1255 Si une ligature se fait de manière inattendue, pensez à vérifer les règles automatiques
1256 dans le fichier @file{scm/@/auto@/-beam@/.scm} pour rechercher d'éventuels conflits, dans
1257 la mesure ou les règles par défaut s'ajoutent à vos propres règles. Il est alors nécessaire
1258 de désactiver toute règle par défaut conduisant à des ligatures indésirables.
1260 Ainsi, pour obtenir des ligatures en groupes de @code{(3 4 3 2)} croches, dans une mesure à 12/8,
1261 il faudra préalablement utiliser :
1264 %%% annulons les réglages par défaut relatifs à 12/8, dans scm/auto-beam.scm
1265 #(revert-auto-beam-setting '(end * * 12 8) 3 8)
1266 #(revert-auto-beam-setting '(end * * 12 8) 3 4)
1267 #(revert-auto-beam-setting '(end * * 12 8) 9 8)
1269 %%% puis ajoutons nos propres règles
1270 #(override-auto-beam-setting '(end 1 8 12 8) 3 8)
1271 #(override-auto-beam-setting '(end 1 8 12 8) 7 8)
1272 #(override-auto-beam-setting '(end 1 8 12 8) 10 8)
1275 @cindex ligatures automatiques
1276 @cindex groupes de notes
1277 @funindex autoBeaming
1280 Si des ligatures sont utilisées dans les paroles d'une chanson (pour indiquer des mélismes),
1281 les ligatures automatiques doivent être désactivées, avec @code{\autoBeamOff}.
1285 @funindex \autoBeamOff
1286 @code{\autoBeamOff},
1287 @funindex \autoBeamOn
1294 Les groupes de notes reliées par les ligatures peuvent être spécifiés au moyen
1295 de la propriété @code{beatGrouping}.
1297 @lilypond[quote,verbatim,relative=2,fragment,ragged-right]
1299 \set beatGrouping = #'(2 3)
1301 \set beatGrouping = #'(3 2)
1308 Si une partition se termine alors qu'une ligature automatique est restée inachevée,
1309 cette dernière ligature ne sera pas imprimée du tout. C'est également valable dans
1310 le cas d'une musique polyphonique, saisie avec la syntaxe @code{<< @dots{} \\ @dots{}
1311 >>}, où une voix se terminerait sans que la dernière ligature
1316 @unnumberedsubsubsec Manual beams
1318 @cindex groupements de note manuels
1319 @cindex ligatures manuelles
1323 Dans certaines situations, il peut s'avérer nécessaire de
1324 supplanter l'algorithme de groupement automatique des notes, par
1325 exemple pour prolonger une ligature par-dessus un silence ou une barre
1326 de mesure. Le début et la fin de la ligature sont alors indiqués par
1327 @code{[} et @code{]}.
1329 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1331 r4 r8[ g' a r8] r8 g[ | a] r8
1338 @funindex stemLeftBeamCount
1339 @funindex stemRightBeamCount
1341 LilyPond peut déterminer automatiquement les sous-groupes à
1342 l'intérieur d'un groupement de notes, bien que le résultat ne soit pas
1343 toujours optimal. Les propriétés @code{stemLeftBeamCount} et
1344 @code{stemRightBeamCount} permettent alors
1345 d'ajuster ce comportement. Lorsque l'une ou l'autre de ces propriétés
1346 est définie, elle ne s'applique qu'une seule fois, après quoi sa
1347 définition est effacée.
1349 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1354 \set stemLeftBeamCount = #1
1359 La propriété @code{subdivideBeams} sert à grouper les double-croches
1360 ou les valeurs plus brèves pulsation par pulsation, la pulsation
1361 étant définie par la propriété @code{beatLength}.
1363 @lilypond[fragment,quote,relative=2,verbatim]
1365 \set subdivideBeams = ##t
1367 \set Score.beatLength = #(ly:make-moment 1 8)
1370 @funindex subdivideBeams
1373 Pour plus d'information sur @code{make-moment}, voir
1374 @ref{Time administration}.
1376 Lorsqu'une ligature franchit une barre de mesure, le saut
1377 de ligne est en principe interdit à cet endroit. Ce comportement peut
1378 être outrepassé en définissant @code{breakable}.
1382 @cindex ligatures et sauts de ligne
1383 @cindex ligatures coudées
1384 @cindex auto-knee-gap
1386 LilyPond insère automatiquement des ligatures coudées --- certaines
1387 notes vers le haut, d'autres vers le bas --- lorsqu'il détecte un espace
1388 important entre des têtes de notes. Ce comportement peut être changé par
1389 l'intermédiaire de l'objet @code{auto-knee-gap}
1394 Les ligatures coudées à cheval sur deux portées ne peuvent être
1395 employées en même temps que des portées invisibles. Voir
1396 @ref{Hiding staves}.
1398 @c Is this still true with skyline spacing stuff? -J.Mandereau
1399 Les ligatures peuvent entrer en collision avec des symboles entourant
1400 les notes, contrairement aux textes ou aux altérations.
1403 @node Feathered beams
1404 @unnumberedsubsubsec Feathered beams
1406 Les ligatures en soufflet s'obtiennent en définissant la propriété
1407 @code{grow-direction} d'une barre de ligature. La fonction
1408 @code{\featherDurations} sert à ajuster la durée des notes.
1410 @lilypond[ragged-right,relative=1,fragment,verbatim,quote]
1411 \override Beam #'grow-direction = #LEFT
1412 \featherDurations #(ly:make-moment 5 4)
1420 La commande @code{\featherDurations} ne permet de traiter que de très
1431 * Bar and bar number checks::
1436 @unnumberedsubsubsec Bar lines
1438 @cindex barres de mesure
1440 @cindex barres de reprise
1443 Les barres de mesures délimitent les mesures, mais peuvent aussi
1444 indiquer une reprise. En principe, elles sont insérées automatiquement,
1445 et les sauts de ligne ne peuvent avoir lieu qu'au niveau de ces barres.
1447 Il est possible de forcer l'impression d'une barre de mesure spéciale,
1448 avec la commande @code{\bar} :
1450 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1455 Les styles de barres de mesure disponibles sont
1457 @c @lilypondfile[ragged-right,quote]{bar-lines.ly}
1460 En plus de cela, on peut demander @code{"||:"}, qui équivaut à
1461 @code{"|:"}, mais qui donnera, en cas de saut de ligne, une double barre
1462 en fin de ligne, et une barre de reprise au début de la ligne suivante.
1464 Il est possible d'autoriser un saut de ligne même s'il n'y a pas
1465 de barre de mesure visible, en utilisant :
1474 Ceci insérera une barre de mesure invisible, et permettra de sauter de
1475 ligne à cet endroit, sans incrémenter le numéro de mesure.
1478 Dans une partition comprenant plusieurs portées, la commande @code{\bar}
1479 placée sur une portée s'applique automatiquement à toutes les
1480 portées. Les barres de mesure que l'on obtient alors sont d'un seul
1481 tenant sur les portées d'un @code{StaffGroup}, d'un @code{PianoStaff} ou
1482 d'un @code{GrandStaff}.
1484 @lilypond[quote,ragged-right,fragment,verbatim]
1492 \new Staff { \clef bass c4 g e g }
1494 \new Staff { \clef bass c2 c2 }
1502 @funindex repeatCommands
1503 @funindex defaultBarType
1506 La commande @code{\bar }@var{bartype} sert de raccourci pour @code{\set
1507 Timing.whichBar = }@var{bartype}. Dès que l'on définit @code{whichBar},
1508 une barre de mesure est créée selon le style défini.
1511 Dès que la propriété @code{whichBar} est définie, une barre de mesure
1512 est créée. À chaque début de mesure, elle prend la valeur de
1513 @code{Timing.defaultBarType}. La valeur de @code{repeatCommands} sert à
1514 remplacer les barres de mesure par défaut.
1516 Nous vous invitons à utiliser @code{\repeat} pour indiquer les
1517 reprises. Voyez à ce sujet @ref{Repeats}.
1521 Dans ce manuel : @ref{Repeats}, @ref{Grouping staves}.
1523 Référence du programme : @rinternals{BarLine} (faisant partie du
1524 contexte @rinternals{Staff}), @rinternals{SpanBar} (sur plusieurs
1529 @unnumberedsubsubsec Bar numbers
1531 @cindex Mesure, numéro de
1532 @cindex numéros de mesure
1533 @funindex currentBarNumber
1535 Les numéros de mesure sont imprimés par défaut à chaque début de
1536 ligne. Ce nombre est stocké par la propriété @code{currentBarNumber}
1537 qui sera mis à jour à chaque mesure.
1539 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1540 \repeat unfold 4 {c4 c c c} \break
1541 \set Score.currentBarNumber = #50
1542 \repeat unfold 4 {c4 c c c}
1545 L'impression d'un numéro de mesure ne peut intervenir que s'il y a une
1546 barre. Aussi, pour pouvoir le faire au début d'un morceau,
1547 devrez-vous ajouter une barre vide :
1549 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1550 \set Score.currentBarNumber = #50
1552 \repeat unfold 4 {c4 c c c} \break
1553 \repeat unfold 4 {c4 c c c}
1556 Vous pouvez imprimer un numéro de mesure à intervalles réguliers plutôt
1557 qu'en tête de chaque ligne. C'est ce qu'illustre l'exemple suivant.
1559 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1560 \override Score.BarNumber #'break-visibility = #'#(#f #t #t)
1561 \set Score.currentBarNumber = #11
1562 \bar "" % Permit first bar number to be printed
1563 % Print a bar number every second measure
1564 \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2)
1571 Désactiver le graveur concerné --- @code{Bar_number_engraver} ---
1572 donnera une partition sans numéros de mesure.
1574 @lilypond[verbatim,ragged-right,quote]
1578 \remove "Bar_number_engraver"
1589 Référence du programme : @rinternals{BarNumber}.
1591 Exemples : @rlsr{Staff notation}.
1596 Les numéros de mesure peuvent entrer en collision avec les crochets de
1597 @rinternals{StaffGroup}. La propriété @code{padding} --- décalage
1598 --- de l'objet @rinternals{BarNumber} permet alors d'ajuster leur
1602 @node Bar and bar number checks
1603 @unnumberedsubsubsec Bar and bar number checks
1605 @cindex vérification des limites de mesure
1606 @cindex mesures, vérification des limites
1607 @funindex barCheckSynchronize
1610 Les tests de limites de mesure (ou tests de mesure) aident à détecter
1611 les erreurs dans les durées. Un test de mesure s'écrit avec une barre
1612 verticale, @samp{|}. Lors du traitement, elle doit correspondre à une
1613 barre de mesure. Sinon, un avertissement est émis. Dans l'exemple
1614 suivant, le deuxième test de mesure signale une erreur.
1616 \time 3/4 c2 e4 | g2 |
1619 Le test de mesure peut être aussi utilisé dans les paroles, par exemple :
1623 Twin -- kle | Twin -- kle
1627 Des durées incorrectes font échouer les tests de mesure, et peuvent
1628 souvent mettre la partition sens dessus dessous, particulièrement s'il
1629 s'agit de musique polyphonique. Vérifier les tests de mesure qui ont
1630 échoué et les durées incorrectes est un bon moyen de commencer à
1631 corriger sa partition.
1634 @funindex pipeSymbol
1636 Il est aussi possible d'attribuer une autre valeur au symbole
1637 @code{|}, en assignant une expression musicale à @code{pipeSymbol},
1639 @lilypond[quote,ragged-right,verbatim]
1640 pipeSymbol = \bar "||"
1646 Lorsque l'on recopie de longues pièces, il peut être utile de vérifier
1647 que les numéros de mesures de LilyPond correspondent à l'original que
1648 l'on recopie. Cela se fait avec @code{\barNumberCheck}. Par exemple,
1651 \barNumberCheck #123
1655 affiche un avertissement lors du traitement si le numéro de mesure à ce
1656 point (variable @code{currentBarNumber}) n'est pas 123.
1659 @node Rehearsal marks
1660 @unnumberedsubsubsec Rehearsal marks
1662 @cindex Repères, indication de
1665 Indiquer un repère s'obtient grâce à la commande @code{\mark}.
1667 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1676 La lettre@tie{}@q{I} n'est pas utilisée, conformément aux usages de la
1677 gravure. Cependant, vous pourrez intégrer la lettre @q{I} en utilisant
1680 \set Score.markFormatter = #format-mark-alphabet
1683 Lorsque vous utilisez @code{\mark \default}, le repère s'incrémente
1684 automatiquement ; toutefois donner un nombre en argument permet de
1685 spécifier manuellement le repère en question. La valeur à utiliser
1686 est enregistrée dans la propriété @code{rehearsalMark}.
1688 Le style du repère est déterminé par la propriété
1689 @code{markFormatter}. Il s'agit d'une fonction qui prend en arguments
1690 le repère en cours (un entier) ainsi que le contexte en cours, et
1691 retournera un objet de type étiquette. Dans l'exemple qui suit,
1692 @code{markFormatter} est réglé pour une procédure type. Quelques
1693 mesure plus loin, son comportement est modifié pour imprimer un
1696 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
1697 \set Score.markFormatter = #format-mark-numbers
1700 \set Score.markFormatter = #format-mark-box-numbers
1706 Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les
1707 définitions de @code{format-mark-numbers} (comportement par défaut),
1708 @code{format-mark-box-numbers},
1709 @code{format-mark-letters} et @code{format-mark-box-letters}. Vous
1710 pouvez vous en inspirer pour d'autres fonctions de formatage.
1712 @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} et
1713 @code{format-mark-circle-barnumbers} permettent d'imprimer le numéro
1714 de mesure au lieu des compteurs alphabétique ou numérique.
1716 On peut aussi spécifier manuellement une marque de repère :
1723 @code{Score.markFormatter} sera sans effet sur des repères ainsi
1724 définis. Un @code{\markup} peut néanmoins s'utiliser en argument.
1727 \mark \markup@{ \box A1 @}
1734 Un @code{\mark} peut contenir un glype musical tel que le signe
1737 @lilypond[fragment,quote,ragged-right,verbatim,relative]
1738 c1 \mark \markup { \musicglyph #"scripts.segno" }
1739 c1 \mark \markup { \musicglyph #"scripts.coda" }
1740 c1 \mark \markup { \musicglyph #"scripts.ufermata" }
1745 Pour connaître les différents symboles accessibles par
1746 @code{\musicglyph}, consultez @ref{The Feta font}.
1748 Pour affiner le positionnement des repères, veuillez vous référer à
1753 Dans ce manuel : @ref{Text marks}.
1755 Référence du programme : @rinternals{RehearsalMark}.
1757 Fichiers d'initialisation : @file{scm/@/translation@/-functions@/.scm}
1758 contient les définitions de @code{format-mark-numbers} et
1759 @code{format-mark-letters}. Elles seront source d'inspiration pour
1760 d'autres fonctions de formatage.
1762 Exemples : @rlsr{Rhythms}, @rlsr{Expressive marks}.
1765 @node Special rhythmic concerns
1766 @subsection Special rhythmic concerns
1771 * Aligning to cadenzas::
1772 * Time administration::
1776 @unnumberedsubsubsec Grace notes
1780 @cindex notes d'ornement
1781 @cindex appoggiature
1782 @cindex accacciature
1786 Les petites notes sont des ornements entièrement écrits. Les plus
1787 courantes sont les accacciatures, qui doivent se jouer très vite,
1788 et qui s'écrivent sous forme d'une petite note barrée (sur la hampe)
1789 et liée. L'appoggiature est une petite note non barrée, qui vole
1790 une fraction à la durée de la note réelle qui la suit.
1792 Ces petites notes sont entrées avec les commandes @code{\acciaccatura}
1793 et @code{\appoggiatura}, comme le montre l'exemple suivant :
1795 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1796 b4 \acciaccatura d8 c4 \appoggiatura e8 d4
1797 \acciaccatura { g16[ f] } e4
1801 Ce sont là deux formes spéciales de la commande @code{\grace}, qui prend
1802 en charge toutes les petites notes. Si on la fait suivre d'une
1803 expression musicale, un groupe de petites notes sera créé, sans impact
1806 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1808 \grace { c16[ d16] } c2 c4
1812 Contrairement à @code{\acciaccatura} ou @code{\appoggiatura}, la
1813 commande @code{\grace} ne provoque pas de liaison.
1815 La durée des petites notes est interprétée par le programme en fonction
1816 d'un deuxième compteur de temps, le chronomètre @code{grace}. Chaque
1817 instant est défini par deux nombres rationnels : le premier compte les
1818 durées réelles, le second compte la durée des petites notes. Reprenons
1819 l'exemple ci-dessus en y ajoutant ces couples de nombres :
1821 @lilypond[quote,ragged-right]
1824 c4 \grace c16 c4 \grace {
1827 \new Lyrics \lyricmode {
1828 \override LyricText #'font-family = #'typewriter
1832 ( \fraction 1 4 , \fraction -1 16 ) } 16 }
1833 \markup { (\fraction 1 4 , 0 ) } 4
1835 \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16
1836 \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16
1838 \markup { ( \fraction 2 4 , 0 ) }
1843 Les petites notes se placent de façon synchrone entre les différentes
1844 portées. Dans l'exemple suivant, il y a deux petites double-croches
1845 pour chaque petite croche.
1847 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1848 << \new Staff { e4 \grace { c16[ d e f] } e4 }
1849 \new Staff { c4 \grace { g8[ b] } c4 } >>
1852 @funindex \afterGrace
1854 La commande @code{\afterGrace} sert à placer une petite note après une
1855 note réelle --- et non @emph{avant} comme d'ordinaire. Cette commande
1856 requiert deux arguments : la note réelle, et la ou les petites notes qui
1859 @lilypond[ragged-right, verbatim,relative=2,fragment]
1860 c1 \afterGrace d1 { c16[ d] } c4
1863 Les petites notes se placent alors aux 3/4 de la durée de la note
1864 réelle. Cette fraction peut être changée en définissant
1865 @code{afterGraceFraction} ; ainsi,
1868 #(define afterGraceFraction (cons 7 8))
1872 placera la petite note à 7/8 de la note réelle.
1874 On peut obtenir le même effet manuellement, de la façon suivante :
1876 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1879 { s2 \grace { c16[ d] } } >>
1885 Le silence invisible peut être plus ou moins long --- ici c'est une
1886 demi-pause --- afin d'ajuster l'espace entre la note réelle et les
1889 Les expressions @code{\grace} obéissent à des règles typographiques
1890 particulières, notamment pour régler l'orientation et la taille des
1891 objets. De ce fait, toute subtilité de mise en forme devra être
1892 indiquée @emph{à l'intérieur} de l'expression introduite par
1895 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1907 Tous les réglages ajoutés doivent également être désactivés dans cette
1910 Il est possible de changer globalement la mise en forme des petites
1911 notes dans un morceau, au moyen de la fonction
1912 @code{add-grace-property}. Ici, par exemple, on ôte la définition de
1913 l'orientation des objets @code{Stem} pour toutes les petites notes, afin
1914 que les hampes ne soient pas toujours orientées vers le haut.
1918 #(add-grace-property 'Voice 'Stem 'direction '())
1924 Il est par ailleurs possible de modifier les variables
1925 @code{startGraceMusic}, @code{stopGraceMusic},
1926 @code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic},
1927 @code{startAppoggiaturaMusic}, et @code{stopAppoggiaturaMusic}.
1928 Pour plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}.
1931 Le trait que l'on trouve sur les hampes des accacciatures peut
1932 être appliqué dans d'autres situations en définissant @*
1933 @code{\override Stem #'stroke-style = #"grace"}.
1938 Il est possible de forcer l'élasticité de l'espacement des notes d'agrément.
1940 @lilypond[verbatim,quote,relative=2]
1942 \override Score.SpacingSpanner #'strict-grace-spacing = ##t
1945 \afterGrace c4 { c16[ c8 c16] }
1949 c16 c c c c c c c c4 r
1956 Référence du programme : @rinternals{GraceMusic}.
1961 Une partition commençant par une expression @code{\grace} doit faire
1962 intervenir la commande @code{\new Voice}, sans quoi la note réelle et
1963 la petite note se retrouveront sur des portées différentes.
1965 La synchronisation des petites notes se fait de façon parfois
1966 surprenante, car les autres objets de la portée --- barres de mesure,
1967 armures, etc. --- sont eux aussi synchrones. Pensez-y lorsque vous
1968 mélez des portées comprenant des petites notes et d'autres sans :
1970 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1971 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1972 \new Staff { c4 \bar "|:" d4 } >>
1976 Il est possible de remédier à cela en insérant sur les autres portées
1977 des silences invisibles dans une expression précédée de @code{\grace},
1978 correspondant à la durée des petites notes.
1980 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1981 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1982 \new Staff { c4 \bar "|:" \grace s16 d4 } >>
1985 Seules des expressions musicales séquentielles peuvent être utilisées
1986 pour des petites notes ; il n'est pas possible d'imbriquer ni de
1987 juxtaposer des sections de petites notes, faute de quoi le traitement du
1988 code peut échouer ou produire des erreurs.
1991 @node Aligning to cadenzas
1992 @unnumberedsubsubsec Aligning to cadenzas
1994 Dans un contexte orchestral, une cadence constitue un problème
1995 spécifique. Lors du montage d'une partition contenant une cadence,
1996 tous les autres instruments doivent sauter autant de notes que ce
1997 qu'en comporte la cadence, faute de quoi il démarreraient trop tôt ou
2000 Les fonctions @code{mmrest-of-length} ou @code{skip-of-length}
2001 permettent de résoudre ce problème. Ces fonctions Scheme prennent en
2002 argument un fragment de musique, et génèrent un @code{\skip} ou un
2003 silence multi-mesures d'une durée correspondant à ce fragment.
2004 L'exemple qui suit illustre l'utilisation de @code{mmrest-of-length}.
2006 @lilypond[verbatim,ragged-right,quote]
2007 cadenza = \relative c' {
2008 c4 d8 << { e f g } \\ { d4. } >>
2013 \new Staff { \cadenza c'4 }
2015 #(ly:export (mmrest-of-length cadenza))
2022 @node Time administration
2023 @unnumberedsubsubsec Time administration
2025 @cindex temps, gestion du
2027 Le temps est administré par le @rinternals{Time_signature_engraver},
2028 qui réside en principe dans le contexte @rinternals{Score}. Sa
2029 gestion traite les variables suivantes :
2032 @item currentBarNumber
2033 Le numéro de mesure.
2036 La longueur de la mesure, dans la métrique en cours. Pour une mesure
2037 à 4/4, elle est de@tie{}1, et de 3/4 pour une mesure à 6/8.
2039 @item measurePosition
2040 Le moment où l'on en est dans la mesure en cours. Cette quantité est
2041 remise à@tie{}0 dès lors qu'on dépasse @code{measureLength} ; la variable
2042 @code{currentBarNumber} est alors incrémentée.
2045 Lorsqu'on lui assigne la valeur @emph{vrai}, les valeurs ci-dessus
2046 mentionnées sont mises à jour à chaque pas. Fixée à @emph{faux}, le
2047 graveur restera indéfiniment dans la mesure en cours.
2050 Le calage peut être modifié en réglant explicitement l'une de ces
2051 variables. Dans l'exemple qui suit, nous réglons la métrique à 4/4,
2052 tout en fixant @code{measureLength} à 5/4. Un peu plus loin, nous
2053 raccourcissons la mesure de 1/8, en assignant 7/8 à
2054 @code{measurePosition}, alors que nous en sommes à 2/4 dans la
2055 mesure ; la barre de mesure tombera donc à @w{2/4 + 3/8}. Les 3/8
2056 résultent du fait que 5/4 équivaut à 10/8, mais nous nous sommes recalés
2057 à 7/8 de la mesure ; donc @w{10/8 @minus{} 7/8 = 3/8}.
2059 @lilypond[quote,ragged-right,verbatim,relative,fragment]
2060 \set Score.measureLength = #(ly:make-moment 5 4)
2064 \set Score.measurePosition = #(ly:make-moment 7 8)
2070 Comme le montre cet exemple, @code{ly:make-moment n m} construit une
2071 durée de n/m fois une ronde.
2072 Par conséquent, @code{ly:make-moment 1 8} correspond à une croche, et
2073 @code{ly:make-moment 7 16} à la durée de sept doubles croches.