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
132 Référence du programme : @rinternals{Dots}, @rinternals{DotColumn}.
136 @unnumberedsubsubsec Tuplets
142 Les nolets --- triolets, quintolets, etc. --- sont obtenus en
143 multipliant toutes les durées d'une expression musicale par une
147 \times @var{fraction} @var{expr_musique}
151 La durée de @var{expr_musique} sera multipliée par la fraction. Le
152 dénominateur de la fraction sera imprimé au-dessus des notes, parfois
153 avec un crochet. Le nolet le plus courant est le triolet, dans lequel 3
154 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur
157 @lilypond[quote,ragged-right,fragment,verbatim]
158 g'4 \times 2/3 {c'4 c' c'} d'4 d'4
161 Les nolets peuvent être imbriqués ; par exemple,
163 @lilypond[fragment,ragged-right,verbatim,relative=2]
164 \override TupletNumber #'text = #tuplet-number::calc-fraction-text
167 \times 3/5 { a a a a a }
175 @funindex \tupletDown
177 @funindex \tupletNeutral
178 @code{\tupletNeutral}.
184 @funindex tupletNumberFormatFunction
185 @cindex nolets, formatage
187 La propriété @code{tupletSpannerDuration} spécifie la longueur voulue de
188 chaque crochet. Avec elle, vous pouvez faire plusieurs nolets en ne
189 tapant @code{\times} qu'une fois, ce qui évite une longue saisie. Dans
190 le prochain exemple, deux triolets sont imprimés avec une seule fonction
193 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
194 \set tupletSpannerDuration = #(ly:make-moment 1 4)
195 \times 2/3 { c8 c c c c c }
199 Pour plus d'information sur @code{make-moment}, voir
200 @ref{Time administration}.
202 L'apparence du chiffre est déterminée par la propriété @code{text} dans
203 @code{TupletNumber}. La valeur par défaut imprime seulement le
204 dénominateur, mais si elle est définie par la fonction
205 @code{tuplet-number::calc-fraction-text}, la fraction entière
206 @var{num}:@var{den} sera imprimée à la place.
208 Pour éviter d'imprimer les chiffres des nolets, utilisez
210 @lilypond[quote,fragment,relative=2,ragged-right,verbatim]
211 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
212 \override TupletNumber #'transparent = ##t
213 \times 2/3 { c8 c c } \times 2/3 { c8 c c }
216 Utilisez la fonction @code{\tweak} pour définir une priorité dans le cas
217 de nolets imbriqués débutant au même moment. Dans cet exemple,
218 @code{\tweak} spécifie un texte sous forme de fraction pour le
219 @code{TupletNumber} externe et de dénominateur pour les trois triolets
222 @lilypond[quote,ragged-right,verbatim]
224 \tweak #'text #tuplet-number::calc-fraction-text
226 \tweak #'text #tuplet-number::calc-denominator-text
227 \times 2/3 { c'8[ c'8 c'8] }
228 \times 2/3 { c'8[ c'8 c'8] }
229 \times 2/3 { c'8[ c'8 c'8] }
234 Ici, @code{\tweak} et @code{\override} agissent de concert pour
235 spécifier le positionnement du @code{TupletBracket}. Le premier
236 @code{\tweak} positionne le @code{TupletBracket} du nolet externe au
237 dessus de la portée. Le second @code{\tweak} positionne le
238 @code{TupletBracket} du premier triolet interne au dessous de la
239 portée. Notez que cette paire de fonctions @code{\tweak} n'affecte
240 que le triolet extérieur et le premier des trois triolets imbriqués
241 parce qu'ils commencent au même instant musical. Nous utilisons
242 @code{\override} de manière tout à fait normale, pour forcer le
243 positionnement du @code{TupletBracket} des deuxième et troisième
244 triolets en dessous de la portée.
246 @lilypond[quote,ragged-right,verbatim]
248 \tweak #'text #tuplet-number::calc-fraction-text
249 \tweak #'direction #up
251 \tweak #'direction #down
252 \times 2/3 { c'8[ c'8 c'8] }
253 \override TupletBracket #'direction = #down
254 \times 2/3 { c'8[ c'8 c'8] }
255 \times 2/3 { c'8[ c'8 c'8] }
260 Les crochets de nolets peuvent aller jusqu'aux prémisses de la mesure
261 suivante, ou à la prochaine note.
263 @lilypond[ragged-right]
265 \set tupletFullLength = ##t
270 \set tupletFullLengthNote = ##t
283 Référence du programme : @rinternals{TupletBracket},
284 @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}.
288 @node Scaling durations
289 @unnumberedsubsubsec Scaling durations
291 Vous pouvez altérer la durée des notes en leur joignant une fraction
292 @var{N/M}, donnant @q{@code{*}@var{N/M}} --- ou @q{@code{*}@var{N}} si
293 @var{M=1}. Ceci n'affectera pas l'apparence des notes ou silences
296 Dans l'exemple suivant, les trois premières notes prennent exactement
297 deux temps, mais aucun triolet n'est imprimé.
299 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
301 a4*2/3 gis4*2/3 a4*2/3
309 Dans ce manuel : @ref{Tuplets}.
313 @unnumberedsubsubsec Ties
315 @cindex liaison de prolongation
318 Une liaison de tenue (ou de prolongation) relie deux notes adjacentes de
319 même hauteur. Dans les faits, elle prolonge la durée d'une note, et ne
320 doit donc pas être confondue avec les liaisons d'articulation ou de
321 phrasé. Une liaison de tenue est indiquée au moyen d'un tilde @samp{~}.
323 @lilypond[quote,ragged-right,fragment,verbatim]
324 e' ~ e' <c' e' g'> ~ <c' e' g'>
328 Quand une liaison de tenue se trouve entre deux accords, toutes les
329 notes de même hauteur entre ces deux accords sont reliées. S'il n'y en
330 a aucune, aucune liaison n'est créée. Il est également possible de lier
331 partiellement deux accords, en mettant les liaisons à l'intérieur des
334 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
335 <c~ e g~ b> <c e g b>
339 Une liaison de tenue est un moyen parmi d'autres pour prolonger la durée
340 d'une note, tout comme les points. L'exemple suivant montre deux
341 manières de matérialiser exactement la même idée :
344 @lilypond[quote,fragment,ragged-right]
345 \time 3/4 c'2. c'2 ~ c'4
349 Les liaisons de tenues sont utilisées soit lorsque la note dépasse de la
350 mesure, soit quand les points ne suffisent pas à donner la bonne durée.
351 Lorsque l'on utilise ces liaisons, les valeurs rythmiques les plus
352 longues doivent s'aligner sur les subidivisions de la mesure, comme ici :
355 @lilypond[fragment,quote,ragged-right]
357 r8^"oui" c8 ~ c2 r4 | r8^"non" c2 ~ c8 r4
362 Lorsque l'on doit lier de nombreuses notes sur plusieurs mesures, il
363 devient plus facile d'avoir recours à la division automatique des notes
364 --- voir @ref{Automatic note splitting}. Ce procédé divise
365 automatiquement les notes trop longues, et les lie par-delà les barres
369 @cindex liaison de prolongation, répétition
370 @cindex reprises avec alternatives et liaisons de prolongation
372 Lorsqu'une mesure de seconde fois après une reprise commence sur une
373 note liée, la liaison doit être répétée. C'est à cela que sert la
374 commande @code{\repeatTie} :
376 @lilypond[fragment,quote,ragged-right,relative=2]
380 @cindex laissez vibrer
381 @cindex liaison, laissez vibrer
382 @funindex \laissezVibrer
384 Les liaisons @qq{Laissez vibrer} (L.V.) sont utilisées pour le piano, la
385 harpe, et certains instruments de percussion. Elles indiquent à
386 l'instrumentiste de laisser sonner la note ou l'accord au lieu de
387 l'étouffer. Cet effet s'obtient avec la commande @code{\laissezVibrer}.
389 @lilypond[fragment,ragged-right,verbatim,relative=1]
390 <c f g>\laissezVibrer
395 Les liaisons de tenue servent parfois à rendre un accord arpégé. Dans ce
396 cas, les notes liées ne sont pas toutes consécutives. Il faut alors
397 assigner à la propriété @code{tieWaitForNote} la valeur @emph{vrai}
398 (@q{t} pour @q{true}). Cette même méthode peut servir, par exemple, à
399 lier un trémolo à un accord.
401 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
402 \set tieWaitForNote = ##t
403 \grace { c16[~ e~ g]~ } <c, e g>2
404 \repeat tremolo 8 { c32~ c'~ } <c c,>1
405 e8~ c~ a~ f~ <e' c a f>2
408 Il est possible de graver manuellement les liaisons de tenue, en
409 modifiant la propriété @code{tie-configuration}. Pour chaque paire, le
410 premier nombre indique la distance à la portée, en espaces de portée, et
411 le second la direction (1 pour haut, @minus{}1 pour bas).
413 @lilypond[fragment,verbatim,relative=1,ragged-right,quote]
415 \override TieColumn #'tie-configuration =
416 #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
426 @funindex \tieNeutral
441 @rglos{laissez vibrer}.
443 Dans ce manuel : @ref{Automatic note splitting}.
445 Référence du programme :
447 @rinternals{TieColumn},
448 @rinternals{LaissezVibrerTie},
449 @rinternals{LaissezVibrerTieColumn}.
454 Un changement de portée, lorsqu'une liaison de tenue est active, ne
455 peut produire une liaison oblique.
457 Le changement de clé ou d'octave pendant une liaison de tenue produit un
458 résultat indéfini. Dans ces cas-là, il est préférable d'utiliser un
463 @subsection Writing rests
468 * Full measure rests::
472 @unnumberedsubsubsec Rests
478 Les silences sont écrits comme des notes avec le nom de note @code{r}.
480 @lilypond[fragment,quote,ragged-right,verbatim]
484 Les pauses d'une mesure complète, qui sont placées au centre de la
485 mesure, doivent être entrées comme des mesures de silence. Elles
486 peuvent être utilisées pour une seule mesure comme pour plusieurs, et
487 leur utilisation est expliquée dans la section
488 @ref{Full measure rests}.
490 Pour spécifier explicitement la position verticale d'un silence, écrivez
491 une note suivie de @code{\rest}. Un silence sera placé à la position où
492 serait imprimée la note.
494 @lilypond[fragment,quote,ragged-right,verbatim]
499 Cela rend plus facile la mise en place de la musique polyphonique,
500 puisque le formateur automatique de collision des silences laissera ces
501 silences tranquilles.
505 Référence du programme : @rinternals{Rest}.
508 @node Invisible rests
509 @unnumberedsubsubsec Invisible rests
511 @cindex sauts de durée
512 @cindex silences invisibles
513 @cindex silences d'espacement
517 Un silence invisible --- que l'on pourrait appeler un @qq{saut} ---
518 peut être entré comme une note avec le nom de note `@samp{s}' ou avec
519 @code{\skip @var{durée}}
521 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
522 a4 a4 s4 a4 \skip 1 a4
525 La syntaxe @code{s} est seulement disponible pour les modes d'entrée
526 de notes et d'accords. Dans d'autres situations, pour l'entrée de
527 paroles par exemple, vous devrez utiliser la commande @code{\skip}.
529 @lilypond[quote,ragged-right,verbatim]
532 \new Lyrics \lyricmode { \skip 2 bla2 }
536 La commande de saut génère simplement une case musicale vide. Elle ne
537 produit rien sur la partition, pas même un symbole transparent. Le code
538 de saut @code{s} crée tout de même une @rinternals{Staff} et une
539 @rinternals{Voice} lorsque nécessaire, tout comme les commandes de
540 note et de silence. Ainsi, le code suivant aboutit à une portée vide.
542 @lilypond[quote,ragged-right,verbatim]
546 Le fragment @code{@{ \skip 4 @} } produirait une page vide.
550 Référence du programme : @rinternals{SkipMusic}.
553 @node Full measure rests
554 @unnumberedsubsubsec Full measure rests
556 @cindex mesures à compter
557 @cindex mesure entière de silence
558 @cindex Silences, multi-mesures
559 @cindex Silences, mesure entière
560 @cindex une pause par mesure
563 Un silence valant une ou plusieurs mesures entières s'entre avec un
564 @samp{R} majuscule. Ceci ne peut être utile que pour une mesure complètement
565 vide, et pour générer des parties séparées : ce silence sera alors
566 répété sur autant de mesures que nécessaire, ou bien imprimé une seule
567 fois. La répétition est contrôlée par la propriété
568 @code{Score.skipBars}. Au cas où ce commutateur est défini comme
569 vrai (lettre @code{##t} pour @q{true}), les mesures vides ne seront pas répétées, et le nombre exact de
572 @lilypond[quote,ragged-right,fragment,verbatim]
573 \time 4/4 r1 | R1 | R1*2 \time 3/4 R2. \time 2/4 R2 \time 4/4
574 \set Score.skipBars = ##t R1*17 R1*4
577 Le @code{1} de @code{R1} est le même que celui utilisé pour la durée
578 des notes. Vous devrez donc, si le morceau n'est pas à 4/4, stipuler
579 un autre durée, qui pourra contenir des points d'augmentation ou être
580 libellé sous forme de fraction :
582 @lilypond[quote,ragged-right,fragment,verbatim]
583 \set Score.skipBars = ##t
592 Un @code{R} qui s'étend sur une seule mesure s'imprime tantôt comme
593 une pause, tantôt comme une brève, et sera centré sur la mesure
594 quelle que soit la métrique.
596 Dans le cas où ce silence ne dure que quelques mesures, LilyPond
597 imprime sur la portée des @qq{ silences d'église }, simple suite de
598 rectangles. La propriété @code{MultiMeasureRest.expand-limit} permet
599 d'obtenir un silence unique.
601 @lilypond[quote,ragged-right,fragment,verbatim]
602 \set Score.skipBars = ##t
604 \override MultiMeasureRest #'expand-limit = 1
608 @cindex texte et silence multi-mesures
609 @cindex script et silence multi-mesures
610 @cindex point d'orgue et silence multi-measures
612 Vous pouvez aussi ajouter du texte à un silence multi-mesures en utilisant
613 la syntaxe @var{note}-@code{markup} (cf. @ref{Formatting text}). La
614 variable @code{\fermataMarkup} permet d'ajouter un point d'orgue.
616 @lilypond[quote,ragged-right,verbatim,fragment]
617 \set Score.skipBars = ##t
619 R2.*10^\markup { \italic "ad lib." }
623 Attention ! c'est @code{MultiMeasureRestText} qui créera le texte, et
624 non @code{TextScript}.
626 @lilypond[quote,ragged-right,verbatim,fragment]
627 \override TextScript #'padding = #5
629 \override MultiMeasureRestText #'padding = #5
633 Pour aligner votre texte sur le début de la mesure, rattachez-le à un
634 silence invisible de longueur zéro comme ceci :
644 Référence du programme : @rinternals{MultiMeasureRestMusic},
645 @rinternals{MultiMeasureRest}.
647 L'objet de rendu @rinternals{MultiMeasureRestNumber} traite les
648 nombres, et @rinternals{MultiMeasureRestText} le texte ajouté par
654 Vous ne pouvez pas utiliser de doigtés (p.ex. @code{R1-4}) pour
655 positionner des nombres au dessus d'un silence multi-mesures, ni
658 @cindex condenser les silences
660 Condenser plusieurs silences en un unique silence multi-mesures ne peut
661 être automatisé. Les silences multi-mesures peuvent générer des
662 collisions avec d'autres silences.
664 Pensez à indiquer explicitement la durée de la note qui suit un
665 silence multi-mesures, car elle sera par défaut égale à la durée totale
666 des mesures à compter. Ainsi, dans l'exemple ci-après, les deux do
667 dièses vaudront chacun quatre mesures à 4/4.
671 Lorsque @code{skipBars} est activé, le résultat semblera correct, mais
672 la numérotation des mesures sera suspendue.
675 @node Displaying rhythms
676 @subsection Displaying rhythms
682 * Polymetric notation::
683 * Automatic note splitting::
684 * Showing melody rhythms::
688 @unnumberedsubsubsec Time signature
690 @cindex chiffrage de mesure
691 @cindex chiffre indicateur de mesure
695 Le chiffre de mesure indique le mètre d'une pièce : une alternance
696 régulière de temps forts et de temps faibles. Il est indiqué par une
697 fraction au début de la portée.
699 Le chiffre de mesure est réglé par la commande @code{\time}.
701 @lilypond[quote,ragged-right,fragment,verbatim]
702 \time 2/4 c'2 \time 3/4 c'2.
707 Le symbole imprimé peut être modifié avec la propriété @code{style}.
708 En la réglant sur @code{#'()}, une fraction sera utilisée pour les
709 chiffres de mesure 4/4 et 2/2.
711 @lilypond[fragment,quote,ragged-right,verbatim]
714 \override Staff.TimeSignature #'style = #'()
719 Il y a bien d'autres options pour sa mise en place. Voir @ref{Ancient time
720 signatures} pour plus d'exemples.
722 @code{\time} définit les propriétés @code{timeSignatureFraction},
723 @code{beatLength} et @code{measureLength} dans le contexte
724 @code{Timing}, qui en principe est assimilé à @rinternals{Score}. La
725 propriété @code{measureLength} détermine où des barres de mesure doivent
726 être insérées, et comment les groupements de notes doivent être gérés.
727 La modification de la valeur de @code{timeSignatureFraction} donne
728 également lieu à l'impression d'un symbole.
730 Plus d'options sont accessibles au moyen de la fonction Scheme
731 @code{set-time-signature}. De concert avec le
732 @rinternals{Measure_grouping_engraver}, elle crée les signes de
733 @rinternals{MeasureGrouping}, qui facilitent la lecture de musiques
734 modernes, complexes rythmiquement. Dans l'exemple suivant, les mesures
735 à 9/8 sont subdivisées en @code{(2 2 2 3)}, ce qui est donné comme
736 argument à la commande @code{set-time-signature}, en troisième position.
738 @lilypond[quote,ragged-right,verbatim]
741 #(set-time-signature 9 8 '(2 2 2 3))
742 g8[ g] d[ d] g[ g] a8[( bes g]) |
743 #(set-time-signature 5 8 '(3 2))
749 \consists "Measure_grouping_engraver"
758 Référence du programme : @rinternals{TimeSignature} et
759 @rinternals{Timing_translator}.
761 Exemples : @rlsr{Rhythms}.
766 Le groupement automatique des ligatures n'utilise pas les groupements
767 spécifiés par @code{set-time-signature}.
771 @unnumberedsubsubsec Upbeats
775 @cindex mesure incomplète
779 Les mesures incomplètes, telles que les anacrouses ou levées, doivent
780 être entrées avec la commande
782 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
783 \partial 16*5 c16 cis d dis e | a2. c,4 | b2
787 La syntaxe de cette commande est
793 @code{durée} étant la valeur rythmique devant être ajoutée avant la
796 Le programme traduit cette commande en
799 \set Timing.measurePosition = -@var{durée}
803 La propriété @code{measurePosition} contient un nombre rationnel qui
804 indique, à ce point précis, où l'on en est de la mesure. Notez qu'il
805 peut s'agir d'un nombre négatif ; @code{\partial 4} signifie, pour le
806 programme : @qq{Dans cette mesure, il reste juste une noire}.
811 Cette commande ne prend pas en compte les notes d'ornement ou
812 appoggiatures au début de la musique. Lorsqu'un morceau commence par une
813 levée et avec des petites notes, la commande @code{\partial} devrait être
814 placée après celles-ci.
816 @lilypond[verbatim,quote,ragged-right,relative,fragment]
823 @code{\partial} n'est destiné à être utilisé qu'en début de pièce.
824 Si on l'utilise ailleurs qu'au début, des messages d'erreurs peuvent
828 @node Unmetered music
829 @unnumberedsubsubsec Unmetered music
833 @funindex \cadenzaOff
836 Les barres de mesure et les numéros de mesure sont calculés
837 automatiquement, ce qui n'est pas souhaitable dans le cas d'une musique
838 non mesurée --- les cadences, par exemple. Les commandes
839 @code{\cadenzaOn} et @code{\cadenzaOff} permettent de désactiver et de
840 rétablir la métrique automatique.
842 @lilypond[verbatim,quote,ragged-right,relative=2,fragment]
854 LilyPond ne change de ligne ou de page qu'au niveau des barres de
855 mesure. Si votre musique non mesurée dure plus d'une ligne, il vous
856 faudra insérer des barres de mesure invisibles, pour indiquer à quels
857 endroit un saut de ligne peut intervenir.
864 @node Polymetric notation
865 @unnumberedsubsubsec Polymetric notation
867 @cindex métrique composite
868 @cindex composite, métrique
869 @cindex métrique polymétrique
872 LilyPond ne gère pas les métriques composites de manière explicite,
873 mais on peut contourner ce problème. Dans l'exemple suivant,
874 l'indicateur de métrique est obtenu grâce à une étiquette textuelle.
875 Cette étiquette vient s'insérer dans l'objet graphique (@emph{grob})
876 @rinternals{TimeSignature}.
878 @lilypond[verbatim,ragged-right]
879 % Create 9/8 split into 2/4 + 5/8
881 \override #'(baseline-skip . 2) \number {
884 \bracket \column { "5" "8" }
889 \override Staff.TimeSignature #'stencil =
890 #ly:text-interface::print
891 \override Staff.TimeSignature #'text = #tsMarkup
893 c'2 \bar ":" c'4 c'4.
894 c'2 \bar ":" c'4 c'4.
898 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
899 {compound-time-signatures.ly}
901 Il arrive aussi que chaque portée ait sa propre métrique. Vous y
902 parviendrez en déplaçant le @rinternals{Timing_translator} dans le
903 contexte @rinternals{Staff}.
908 \remove "Timing_translator"
909 \remove "Default_bar_line_engraver"
913 \consists "Timing_translator"
914 \consists "Default_bar_line_engraver"
921 Maintenant, chacune des portées dispose de sa propre métrique.
934 c4. c8 c c c4. c8 c c
939 @lilypond[quote,ragged-right]
943 \remove "Timing_translator"
944 \remove "Default_bar_line_engraver"
947 \consists "Timing_translator"
948 \consists "Default_bar_line_engraver"
963 c4. c8 c c c4. c8 c c
969 Une autre forme de notation polymétrique consiste dans le fait que des
970 notes aient une durée relative différente selon la portée.
972 Vous pouvez créer une telle notation en définissant une métrique
973 commune à toutes les portées, que vous proratiserez manuellement
974 selon le cas en utilisant @code{timeSignatureFraction} pour obtenir la
975 division adéquate pour chaque portée. Les durées, dans chacune des
976 portées, seront alors échelonnées par rapport à la métrique commune.
977 L'échelle de représentation se règle avec @code{\scaleDurations} ---
978 qui fonctionne comme @code{\times}, sans toutefois créer de crochet.
979 La syntaxe appropriée est :
981 \scaleDurations #'(@var{numérateur} . @var{dénominateur}) @var{exprmusicale}
985 L'exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et
986 10/8. Pour la deuxième portée, les durées sont multipliées par 2/3,
987 de telle sorte que @w{2/3 * 9/8 = 3/4} ; pour la troisième, elles sont
988 multipliées par 3/5, de telle sorte que @w{3/5 * 10/8 = 3/4}.
990 @lilypond[quote,ragged-right,verbatim,fragment]
998 \set Staff.timeSignatureFraction = #'(9 . 8)
999 \scaleDurations #'(2 . 3)
1000 \repeat unfold 6 { c8[ c c] }
1004 \set Staff.timeSignatureFraction = #'(10 . 8)
1005 \scaleDurations #'(3 . 5) {
1006 \repeat unfold 2 { c8[ c c] }
1007 \repeat unfold 2 { c8[ c] }
1008 | c4. c4. \times 2/3 { c8 c c } c4
1016 Exemples : @rlsr{Rhythms}.
1020 L'utilisation de métriques différentes en parallèle entraine un
1021 alignement vertical. De ce fait, les barres de mesure ont tendance à
1022 fausser l'espacement régulier.
1025 @node Automatic note splitting
1026 @unnumberedsubsubsec Automatic note splitting
1028 On peut convertir automatiquement les notes longues en notes liées. Il
1029 faut pour cela remplacer le graveur @rinternals{Note_heads_engraver}
1030 par le graveur @rinternals{Completion_heads_engraver}. Dans les
1031 exemples suivants, les notes dépassant de la mesure sont divisées et
1034 @lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm]
1036 \remove "Note_heads_engraver"
1037 \consists "Completion_heads_engraver"
1039 c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2
1043 Ce graveur divise toutes les notes qui sortent de la mesure, et insère
1044 des liaisons de prolongation. Une utilisation posible consiste à
1045 déboguer des partitions complexes : si les mesures ne sont pas
1046 entièrement remplies, alors les liaisons de prolongation montrent
1047 exactement la durée des décalages de mesure.
1049 Si vous voulez permettre un saut de ligne aux barres de mesure où
1050 @rinternals{Completion_heads_engraver} divise les notes, vous devez
1051 aussi enlever @rinternals{Forbid_line_break_engraver}.
1056 Bien que toutes les durées --- particulièrement celles contenant des
1057 nolets --- ne puissent pas être représentées exactement avec des notes
1058 normales et des points, le graveur n'insèrera pas de nolets.
1060 @code{Completion_heads_engraver} affecte seulement les notes, il ne
1061 divise pas les silences.
1065 Référence du programme : @rinternals{Completion_heads_engraver}.
1067 @node Showing melody rhythms
1068 @unnumberedsubsubsec Showing melody rhythms
1070 Au moyen d'une portée rythmique -- @q{rhythmic staff} en anglais -- on
1071 peut montrer seulement le rythme d'une mélodie : toutes les notes sont
1072 ramenées à la même hauteur, sur une portée d'une seule ligne.
1074 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1075 \new RhythmicStaff {
1077 c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
1083 Référence du programme : @rinternals{RhythmicStaff}.
1090 * Setting automatic beam behavior::
1095 @node Automatic beams
1096 @unnumberedsubsubsec Automatic beams
1098 LilyPond décide automatiquement de la manière de grouper les notes et
1099 d'imprimer les ligatures.
1101 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1102 \time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
1105 Lorsque ce comportement automatisé n'est pas satisfaisant, on peut
1106 définir des groupements manuellement --- voir section suivante --- ou
1107 personnaliser les groupements automatiques --- voir @ref{Setting
1108 automatic beam behavior}.
1110 La commande @code{\noBeam} peut servir à empêcher des notes
1111 individuelles d'être rattachées aux autres.
1113 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1114 \time 2/4 c8 c\noBeam c c
1120 Référence du programme : @rinternals{Beam}.
1123 @node Setting automatic beam behavior
1124 @unnumberedsubsubsec Setting automatic beam behavior
1126 @funindex autoBeamSettings
1127 @funindex (end * * * *)
1128 @funindex (begin * * * *)
1129 @cindex ligatures automatiques, réglage
1130 @cindex réglage des ligatures automatiques
1132 @c [TODO: use \applyContext]
1134 Dans les métriques courantes, les ligatures automatiques peuvent commencer
1135 sur n'importe quelle note, mais ne peuvent se terminer qu'à certains points précis
1136 dans la mesure : sur une pulsation, ou après toute durée spécifiée par les propriétés
1137 nommées @code{autoBeamSettings}. Ces propriétés consistent en une liste de règles
1138 relatives au début ou à la fin des ligatures. Par défaut, elles sont définies dans
1140 @file{scm/@/auto@/-beam@/.scm}.
1142 On peut ajouter à cette liste une nouvelle règle, au moyen de la commande
1144 #(override-auto-beam-setting '(extrémité p q n m) a b [contexte])
1149 @item @code{extrémité} désigne le début (@code{begin}) ou la fin (@code{end}) de la ligature.
1151 @item @code{p/q} désigne la valeur rythmique de la note que l'on veut affecter, ou de la
1152 plus brève des notes concernées. Si cette règle doit s'appliquer à toutes les ligatures,
1153 remplacez @code{p} et @code{q} par des étoiles @qq{@code{*}}.
1156 @item @code{n/m} est le chiffre de mesure dans lequel la règle doit
1157 s'appliquer. Si celle-ci doit s'appliquer dans toutes les métriques,
1158 remplacez @code{n} et @code{m} par des étoiles @qq{@code{*}}.
1160 @item @code{a/b} est l'emplacement, dans la mesure, auquel les ligatures doivent
1161 débuter ou s'achever (suivant la valeur @q{extrémité} que nous venons de voir).
1164 @item @code{contexte} est un argument facultatif, qui détermine le contexte dans lequel
1165 la règle doit s'appliquer. Par défaut, il s'agit de @code{'Voice}.
1166 @code{#(score-override-auto-beam-setting '(A B C D) E F)} équivaut à
1167 @code{#(override-auto-beam-setting '(A B C D) E F 'Score)}.
1171 Par exemple, si l'on veut que les ligatures s'achèvent toujours après la première noire :
1175 #(override-auto-beam-setting '(end * * * *) 1 4)
1178 On peut obliger une règle de ligatures à ne s'appliquer qu'à des groupes dont la note
1179 la plus brève est d'une valeur précise :
1181 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1183 #(override-auto-beam-setting '(end 1 16 * *) 1 16)
1185 a32 a a a a16 a a a a a |
1186 #(override-auto-beam-setting '(end 1 32 * *) 1 16)
1187 a32 a a a a16 a a a a a |
1190 On peut obliger une règle de ligatures à ne s'appliquer que pour un chiffre de mesure
1193 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1195 #(override-auto-beam-setting '(end * * 5 8) 2 8)
1203 Enfin, on peut désactiver une règle de ligatures au moyen du réglage suivant :
1206 #(revert-auto-beam-setting '(extrémité p q n m) a b [contexte])
1210 @code{extrémité}, @code{p}, @code{q}, @code{n}, @code{m}, @code{a}, @code{b} et @code{contexte}
1211 étant les mêmes que plus haut. Il est même possible de désactiver des règles que l'on n'a pas
1212 explicitement créées : les règles par défaut, qui se trouvent dans le fichier @file{scm/@/auto@/-beam@/.scm}.
1216 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1218 a16 a a a a a a a a a a a a a a a
1219 #(revert-auto-beam-setting '(end 1 16 4 4) 1 4)
1220 a16 a a a a a a a a a a a a a a a
1223 La commande @code{revert-auto-beam-setting} requiert exactement les mêmes arguments
1224 que la règle d'origine. En d'autres termes, les étoiles ne seront pas prises en compte ici.
1226 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
1228 #(override-auto-beam-setting '(end 1 16 1 4) 1 8)
1230 #(revert-auto-beam-setting '(end 1 16 * *) 1 8) % ceci ne désactive pas la règle !
1232 #(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % ceci marche
1238 @c TODO: old material -- not covered by above stuff, I think.
1239 Si, dans une mesure à 5/4, l'on veut que les ligatures soient regroupées temps par temps,
1240 il est nécessaire d'indiquer toutes les terminaisons de ligatures.
1242 #(override-auto-beam-setting '(end * * * *) 1 4 'Staff)
1243 #(override-auto-beam-setting '(end * * * *) 1 2 'Staff)
1244 #(override-auto-beam-setting '(end * * * *) 3 4 'Staff)
1245 #(override-auto-beam-setting '(end * * * *) 5 4 'Staff)
1249 La même syntaxe peut servir à définir les points de départ des ligatures.
1250 Dans l'exemple suivant, les ligatures automatiques ne peuvent se terminer
1251 que sur une noire pointée.
1253 #(override-auto-beam-setting '(end * * * *) 3 8)
1254 #(override-auto-beam-setting '(end * * * *) 1 2)
1255 #(override-auto-beam-setting '(end * * * *) 7 8)
1257 @c ???? Je n'y comprends rien --vv
1258 Dans une mesure à 4/4, cela implique que les ligatures ne peuvent se terminer que sur
1259 la troisième croche, ou sur le quatrième temps (après la valeur de deux fois trois croches).
1261 Si une ligature se fait de manière inattendue, pensez à vérifer les règles automatiques
1262 dans le fichier @file{scm/@/auto@/-beam@/.scm} pour rechercher d'éventuels conflits, dans
1263 la mesure ou les règles par défaut s'ajoutent à vos propres règles. Il est alors nécessaire
1264 de désactiver toute règle par défaut conduisant à des ligatures indésirables.
1266 Ainsi, pour obtenir des ligatures en groupes de @code{(3 4 3 2)} croches, dans une mesure à 12/8,
1267 il faudra préalablement utiliser :
1270 %%% annulons les réglages par défaut relatifs à 12/8, dans scm/auto-beam.scm
1271 #(revert-auto-beam-setting '(end * * 12 8) 3 8)
1272 #(revert-auto-beam-setting '(end * * 12 8) 3 4)
1273 #(revert-auto-beam-setting '(end * * 12 8) 9 8)
1275 %%% puis ajoutons nos propres règles
1276 #(override-auto-beam-setting '(end 1 8 12 8) 3 8)
1277 #(override-auto-beam-setting '(end 1 8 12 8) 7 8)
1278 #(override-auto-beam-setting '(end 1 8 12 8) 10 8)
1281 @cindex ligatures automatiques
1282 @cindex groupes de notes
1283 @funindex autoBeaming
1286 Si des ligatures sont utilisées dans les paroles d'une chanson (pour indiquer des mélismes),
1287 les ligatures automatiques doivent être désactivées, avec @code{\autoBeamOff}.
1291 @funindex \autoBeamOff
1292 @code{\autoBeamOff},
1293 @funindex \autoBeamOn
1300 Les groupes de notes reliées par les ligatures peuvent être spécifiés au moyen
1301 de la propriété @code{beatGrouping}.
1303 @lilypond[quote,verbatim,relative=2,fragment,ragged-right]
1305 \set beatGrouping = #'(2 3)
1307 \set beatGrouping = #'(3 2)
1314 Si une partition se termine alors qu'une ligature automatique est restée inachevée,
1315 cette dernière ligature ne sera pas imprimée du tout. C'est également valable dans
1316 le cas d'une musique polyphonique, saisie avec la syntaxe @code{<< @dots{} \\ @dots{}
1317 >>}, où une voix se terminerait sans que la dernière ligature
1322 @unnumberedsubsubsec Manual beams
1324 @cindex groupements de note manuels
1325 @cindex ligatures manuelles
1329 Dans certaines situations, il peut s'avérer nécessaire de
1330 supplanter l'algorithme de groupement automatique des notes, par
1331 exemple pour prolonger une ligature par-dessus un silence ou une barre
1332 de mesure. Le début et la fin de la ligature sont alors indiqués par
1333 @code{[} et @code{]}.
1335 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1337 r4 r8[ g' a r8] r8 g[ | a] r8
1344 @funindex stemLeftBeamCount
1345 @funindex stemRightBeamCount
1347 LilyPond peut déterminer automatiquement les sous-groupes à
1348 l'intérieur d'un groupement de notes, bien que le résultat ne soit pas
1349 toujours optimal. Les propriétés @code{stemLeftBeamCount} et
1350 @code{stemRightBeamCount} permettent alors
1351 d'ajuster ce comportement. Lorsque l'une ou l'autre de ces propriétés
1352 est définie, elle ne s'applique qu'une seule fois, après quoi sa
1353 définition est effacée.
1355 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
1360 \set stemLeftBeamCount = #1
1365 La propriété @code{subdivideBeams} sert à grouper les double-croches
1366 ou les valeurs plus brèves pulsation par pulsation, la pulsation
1367 étant définie par la propriété @code{beatLength}.
1369 @lilypond[fragment,quote,relative=2,verbatim]
1371 \set subdivideBeams = ##t
1373 \set Score.beatLength = #(ly:make-moment 1 8)
1376 @funindex subdivideBeams
1379 Pour plus d'information sur @code{make-moment}, voir
1380 @ref{Time administration}.
1382 Lorsqu'une ligature franchit une barre de mesure, le saut
1383 de ligne est en principe interdit à cet endroit. Ce comportement peut
1384 être outrepassé en définissant @code{breakable}.
1388 @cindex ligatures et sauts de ligne
1389 @cindex ligatures coudées
1390 @cindex auto-knee-gap
1392 LilyPond insère automatiquement des ligatures coudées --- certaines
1393 notes vers le haut, d'autres vers le bas --- lorsqu'il détecte un espace
1394 important entre des têtes de notes. Ce comportement peut être changé par
1395 l'intermédiaire de l'objet @code{auto-knee-gap}
1400 Les ligatures coudées à cheval sur deux portées ne peuvent être
1401 employées en même temps que des portées invisibles. Voir
1402 @ref{Hiding staves}.
1404 @c Is this still true with skyline spacing stuff? -J.Mandereau
1405 Les ligatures peuvent entrer en collision avec des symboles entourant
1406 les notes, contrairement aux textes ou aux altérations.
1409 @node Feathered beams
1410 @unnumberedsubsubsec Feathered beams
1412 Les ligatures en soufflet s'obtiennent en définissant la propriété
1413 @code{grow-direction} d'une barre de ligature. La fonction
1414 @code{\featherDurations} sert à ajuster la durée des notes.
1416 @lilypond[ragged-right,relative=1,fragment,verbatim,quote]
1417 \override Beam #'grow-direction = #LEFT
1418 \featherDurations #(ly:make-moment 5 4)
1426 La commande @code{\featherDurations} ne permet de traiter que de très
1437 * Bar and bar number checks::
1442 @unnumberedsubsubsec Bar lines
1444 @cindex barres de mesure
1446 @cindex barres de reprise
1449 Les barres de mesures délimitent les mesures, mais peuvent aussi
1450 indiquer une reprise. En principe, elles sont insérées automatiquement,
1451 et les sauts de ligne ne peuvent avoir lieu qu'au niveau de ces barres.
1453 Il est possible de forcer l'impression d'une barre de mesure spéciale,
1454 avec la commande @code{\bar} :
1456 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1461 Les styles de barres de mesure disponibles sont
1463 @c @lilypondfile[ragged-right,quote]{bar-lines.ly}
1466 En plus de cela, on peut demander @code{"||:"}, qui équivaut à
1467 @code{"|:"}, mais qui donnera, en cas de saut de ligne, une double barre
1468 en fin de ligne, et une barre de reprise au début de la ligne suivante.
1470 Il est possible d'autoriser un saut de ligne même s'il n'y a pas
1471 de barre de mesure visible, en utilisant :
1480 Ceci insérera une barre de mesure invisible, et permettra de sauter de
1481 ligne à cet endroit, sans incrémenter le numéro de mesure.
1484 Dans une partition comprenant plusieurs portées, la commande @code{\bar}
1485 placée sur une portée s'applique automatiquement à toutes les
1486 portées. Les barres de mesure que l'on obtient alors sont d'un seul
1487 tenant sur les portées d'un @code{StaffGroup}, d'un @code{PianoStaff} ou
1488 d'un @code{GrandStaff}.
1490 @lilypond[quote,ragged-right,fragment,verbatim]
1498 \new Staff { \clef bass c4 g e g }
1500 \new Staff { \clef bass c2 c2 }
1508 @funindex repeatCommands
1509 @funindex defaultBarType
1512 La commande @code{\bar }@var{bartype} sert de raccourci pour @code{\set
1513 Timing.whichBar = }@var{bartype}. Dès que l'on définit @code{whichBar},
1514 une barre de mesure est créée selon le style défini.
1517 Dès que la propriété @code{whichBar} est définie, une barre de mesure
1518 est créée. À chaque début de mesure, elle prend la valeur de
1519 @code{Timing.defaultBarType}. La valeur de @code{repeatCommands} sert à
1520 remplacer les barres de mesure par défaut.
1522 Nous vous invitons à utiliser @code{\repeat} pour indiquer les
1523 reprises. Voyez à ce sujet @ref{Repeats}.
1528 Dans ce manuel : @ref{Repeats}, @ref{Grouping staves}.
1530 Référence du programme : @rinternals{BarLine} (faisant partie du
1531 contexte @rinternals{Staff}), @rinternals{SpanBar} (sur plusieurs
1536 @unnumberedsubsubsec Bar numbers
1538 @cindex Mesure, numéro de
1539 @cindex numéros de mesure
1540 @funindex currentBarNumber
1542 Les numéros de mesure sont imprimés par défaut à chaque début de
1543 ligne. Ce nombre est stocké par la propriété @code{currentBarNumber}
1544 qui sera mis à jour à chaque mesure.
1546 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1547 \repeat unfold 4 {c4 c c c} \break
1548 \set Score.currentBarNumber = #50
1549 \repeat unfold 4 {c4 c c c}
1552 L'impression d'un numéro de mesure ne peut intervenir que s'il y a une
1553 barre. Aussi, pour pouvoir le faire au début d'un morceau,
1554 devrez-vous ajouter une barre vide :
1556 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1557 \set Score.currentBarNumber = #50
1559 \repeat unfold 4 {c4 c c c} \break
1560 \repeat unfold 4 {c4 c c c}
1563 Vous pouvez imprimer un numéro de mesure à intervalles réguliers plutôt
1564 qu'en tête de chaque ligne. C'est ce qu'illustre l'exemple suivant.
1566 @lilypond[verbatim,ragged-right,quote,fragment,relative]
1567 \override Score.BarNumber #'break-visibility = #'#(#f #t #t)
1568 \set Score.currentBarNumber = #11
1569 \bar "" % Permit first bar number to be printed
1570 % Print a bar number every second measure
1571 \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2)
1578 Désactiver le graveur concerné --- @code{Bar_number_engraver} ---
1579 donnera une partition sans numéros de mesure.
1581 @lilypond[verbatim,ragged-right,quote]
1585 \remove "Bar_number_engraver"
1597 Référence du programme : @rinternals{BarNumber}.
1599 Exemples : @rlsr{Staff notation}.
1604 Les numéros de mesure peuvent entrer en collision avec les crochets de
1605 @rinternals{StaffGroup}. La propriété @code{padding} --- décalage
1606 --- de l'objet @rinternals{BarNumber} permet alors d'ajuster leur
1610 @node Bar and bar number checks
1611 @unnumberedsubsubsec Bar and bar number checks
1613 @cindex vérification des limites de mesure
1614 @cindex mesures, vérification des limites
1615 @funindex barCheckSynchronize
1618 Les tests de limites de mesure (ou tests de mesure) aident à détecter
1619 les erreurs dans les durées. Un test de mesure s'écrit avec une barre
1620 verticale, @samp{|}. Lors du traitement, elle doit correspondre à une
1621 barre de mesure. Sinon, un avertissement est émis. Dans l'exemple
1622 suivant, le deuxième test de mesure signale une erreur.
1624 \time 3/4 c2 e4 | g2 |
1627 Le test de mesure peut être aussi utilisé dans les paroles, par exemple :
1631 Twin -- kle | Twin -- kle
1635 Des durées incorrectes font échouer les tests de mesure, et peuvent
1636 souvent mettre la partition sens dessus dessous, particulièrement s'il
1637 s'agit de musique polyphonique. Vérifier les tests de mesure qui ont
1638 échoué et les durées incorrectes est un bon moyen de commencer à
1639 corriger sa partition.
1642 @funindex pipeSymbol
1644 Il est aussi possible d'attribuer une autre valeur au symbole
1645 @code{|}, en assignant une expression musicale à @code{pipeSymbol},
1647 @lilypond[quote,ragged-right,verbatim]
1648 pipeSymbol = \bar "||"
1654 Lorsque l'on recopie de longues pièces, il peut être utile de vérifier
1655 que les numéros de mesures de LilyPond correspondent à l'original que
1656 l'on recopie. Cela se fait avec @code{\barNumberCheck}. Par exemple,
1659 \barNumberCheck #123
1663 affiche un avertissement lors du traitement si le numéro de mesure à ce
1664 point (variable @code{currentBarNumber}) n'est pas 123.
1667 @node Rehearsal marks
1668 @unnumberedsubsubsec Rehearsal marks
1670 @cindex Repères, indication de
1673 Indiquer un repère s'obtient grâce à la commande @code{\mark}.
1675 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1684 La lettre@tie{}@q{I} n'est pas utilisée, conformément aux usages de la
1685 gravure. Cependant, vous pourrez intégrer la lettre @q{I} en utilisant
1688 \set Score.markFormatter = #format-mark-alphabet
1691 Lorsque vous utilisez @code{\mark \default}, le repère s'incrémente
1692 automatiquement ; toutefois donner un nombre en argument permet de
1693 spécifier manuellement le repère en question. La valeur à utiliser
1694 est enregistrée dans la propriété @code{rehearsalMark}.
1696 Le style du repère est déterminé par la propriété
1697 @code{markFormatter}. Il s'agit d'une fonction qui prend en arguments
1698 le repère en cours (un entier) ainsi que le contexte en cours, et
1699 retournera un objet de type étiquette. Dans l'exemple qui suit,
1700 @code{markFormatter} est réglé pour une procédure type. Quelques
1701 mesure plus loin, son comportement est modifié pour imprimer un
1704 @lilypond[fragment,quote,ragged-right,verbatim,relative=2]
1705 \set Score.markFormatter = #format-mark-numbers
1708 \set Score.markFormatter = #format-mark-box-numbers
1714 Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les
1715 définitions de @code{format-mark-numbers} (comportement par défaut),
1716 @code{format-mark-box-numbers},
1717 @code{format-mark-letters} et @code{format-mark-box-letters}. Vous
1718 pouvez vous en inspirer pour d'autres fonctions de formatage.
1720 @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} et
1721 @code{format-mark-circle-barnumbers} permettent d'imprimer le numéro
1722 de mesure au lieu des compteurs alphabétique ou numérique.
1724 On peut aussi spécifier manuellement une marque de repère :
1731 @code{Score.markFormatter} sera sans effet sur des repères ainsi
1732 définis. Un @code{\markup} peut néanmoins s'utiliser en argument.
1735 \mark \markup@{ \box A1 @}
1742 Un @code{\mark} peut contenir un glype musical tel que le signe
1745 @lilypond[fragment,quote,ragged-right,verbatim,relative]
1746 c1 \mark \markup { \musicglyph #"scripts.segno" }
1747 c1 \mark \markup { \musicglyph #"scripts.coda" }
1748 c1 \mark \markup { \musicglyph #"scripts.ufermata" }
1753 Pour connaître les différents symboles accessibles par
1754 @code{\musicglyph}, consultez @ref{The Feta font}.
1756 Pour affiner le positionnement des repères, veuillez vous référer à
1761 Dans ce manuel : @ref{Text marks}.
1763 Référence du programme : @rinternals{RehearsalMark}.
1765 Fichiers d'initialisation : @file{scm/@/translation@/-functions@/.scm}
1766 contient les définitions de @code{format-mark-numbers} et
1767 @code{format-mark-letters}. Elles seront source d'inspiration pour
1768 d'autres fonctions de formatage.
1770 Exemples : @rlsr{Rhythms}, @rlsr{Expressive marks}.
1773 @node Special rhythmic concerns
1774 @subsection Special rhythmic concerns
1779 * Aligning to cadenzas::
1780 * Time administration::
1784 @unnumberedsubsubsec Grace notes
1788 @cindex notes d'ornement
1789 @cindex appoggiature
1790 @cindex accacciature
1794 Les petites notes sont des ornements entièrement écrits. Les plus
1795 courantes sont les accacciatures, qui doivent se jouer très vite,
1796 et qui s'écrivent sous forme d'une petite note barrée (sur la hampe)
1797 et liée. L'appoggiature est une petite note non barrée, qui vole
1798 une fraction à la durée de la note réelle qui la suit.
1800 Ces petites notes sont entrées avec les commandes @code{\acciaccatura}
1801 et @code{\appoggiatura}, comme le montre l'exemple suivant :
1803 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1804 b4 \acciaccatura d8 c4 \appoggiatura e8 d4
1805 \acciaccatura { g16[ f] } e4
1809 Ce sont là deux formes spéciales de la commande @code{\grace}, qui prend
1810 en charge toutes les petites notes. Si on la fait suivre d'une
1811 expression musicale, un groupe de petites notes sera créé, sans impact
1814 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1816 \grace { c16[ d16] } c2 c4
1820 Contrairement à @code{\acciaccatura} ou @code{\appoggiatura}, la
1821 commande @code{\grace} ne provoque pas de liaison.
1823 La durée des petites notes est interprétée par le programme en fonction
1824 d'un deuxième compteur de temps, le chronomètre @code{grace}. Chaque
1825 instant est défini par deux nombres rationnels : le premier compte les
1826 durées réelles, le second compte la durée des petites notes. Reprenons
1827 l'exemple ci-dessus en y ajoutant ces couples de nombres :
1829 @lilypond[quote,ragged-right]
1832 c4 \grace c16 c4 \grace {
1835 \new Lyrics \lyricmode {
1836 \override LyricText #'font-family = #'typewriter
1840 ( \fraction 1 4 , \fraction -1 16 ) } 16 }
1841 \markup { (\fraction 1 4 , 0 ) } 4
1843 \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16
1844 \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16
1846 \markup { ( \fraction 2 4 , 0 ) }
1851 Les petites notes se placent de façon synchrone entre les différentes
1852 portées. Dans l'exemple suivant, il y a deux petites double-croches
1853 pour chaque petite croche.
1855 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1856 << \new Staff { e4 \grace { c16[ d e f] } e4 }
1857 \new Staff { c4 \grace { g8[ b] } c4 } >>
1860 @funindex \afterGrace
1862 La commande @code{\afterGrace} sert à placer une petite note après une
1863 note réelle --- et non @emph{avant} comme d'ordinaire. Cette commande
1864 requiert deux arguments : la note réelle, et la ou les petites notes qui
1867 @lilypond[ragged-right, verbatim,relative=2,fragment]
1868 c1 \afterGrace d1 { c16[ d] } c4
1871 Les petites notes se placent alors aux 3/4 de la durée de la note
1872 réelle. Cette fraction peut être changée en définissant
1873 @code{afterGraceFraction} ; ainsi,
1876 #(define afterGraceFraction (cons 7 8))
1880 placera la petite note à 7/8 de la note réelle.
1882 On peut obtenir le même effet manuellement, de la façon suivante :
1884 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1887 { s2 \grace { c16[ d] } } >>
1893 Le silence invisible peut être plus ou moins long --- ici c'est une
1894 demi-pause --- afin d'ajuster l'espace entre la note réelle et les
1897 Les expressions @code{\grace} obéissent à des règles typographiques
1898 particulières, notamment pour régler l'orientation et la taille des
1899 objets. De ce fait, toute subtilité de mise en forme devra être
1900 indiquée @emph{à l'intérieur} de l'expression introduite par
1903 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
1915 Tous les réglages ajoutés doivent également être désactivés dans cette
1918 Il est possible de changer globalement la mise en forme des petites
1919 notes dans un morceau, au moyen de la fonction
1920 @code{add-grace-property}. Ici, par exemple, on ôte la définition de
1921 l'orientation des objets @code{Stem} pour toutes les petites notes, afin
1922 que les hampes ne soient pas toujours orientées vers le haut.
1926 #(add-grace-property 'Voice 'Stem 'direction '())
1932 Il est par ailleurs possible de modifier les variables
1933 @code{startGraceMusic}, @code{stopGraceMusic},
1934 @code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic},
1935 @code{startAppoggiaturaMusic}, et @code{stopAppoggiaturaMusic}.
1936 Pour plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}.
1939 Le trait que l'on trouve sur les hampes des accacciatures peut
1940 être appliqué dans d'autres situations en définissant @*
1941 @code{\override Stem #'stroke-style = #"grace"}.
1946 Il est possible de forcer l'élasticité de l'espacement des notes d'agrément.
1948 @lilypond[verbatim,quote,relative=2]
1950 \override Score.SpacingSpanner #'strict-grace-spacing = ##t
1953 \afterGrace c4 { c16[ c8 c16] }
1957 c16 c c c c c c c c4 r
1965 Référence du programme : @rinternals{GraceMusic}.
1970 Une partition commençant par une expression @code{\grace} doit faire
1971 intervenir la commande @code{\new Voice}, sans quoi la note réelle et
1972 la petite note se retrouveront sur des portées différentes.
1974 La synchronisation des petites notes se fait de façon parfois
1975 surprenante, car les autres objets de la portée --- barres de mesure,
1976 armures, etc. --- sont eux aussi synchrones. Pensez-y lorsque vous
1977 mélez des portées comprenant des petites notes et d'autres sans :
1979 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1980 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1981 \new Staff { c4 \bar "|:" d4 } >>
1985 Il est possible de remédier à cela en insérant sur les autres portées
1986 des silences invisibles dans une expression précédée de @code{\grace},
1987 correspondant à la durée des petites notes.
1989 @lilypond[quote,ragged-right,relative=2,verbatim,fragment]
1990 << \new Staff { e4 \bar "|:" \grace c16 d4 }
1991 \new Staff { c4 \bar "|:" \grace s16 d4 } >>
1994 Seules des expressions musicales séquentielles peuvent être utilisées
1995 pour des petites notes ; il n'est pas possible d'imbriquer ni de
1996 juxtaposer des sections de petites notes, faute de quoi le traitement du
1997 code peut échouer ou produire des erreurs.
2000 @node Aligning to cadenzas
2001 @unnumberedsubsubsec Aligning to cadenzas
2003 Dans un contexte orchestral, une cadence constitue un problème
2004 spécifique. Lors du montage d'une partition contenant une cadence,
2005 tous les autres instruments doivent sauter autant de notes que ce
2006 qu'en comporte la cadence, faute de quoi il démarreraient trop tôt ou
2009 Les fonctions @code{mmrest-of-length} ou @code{skip-of-length}
2010 permettent de résoudre ce problème. Ces fonctions Scheme prennent en
2011 argument un fragment de musique, et génèrent un @code{\skip} ou un
2012 silence multi-mesures d'une durée correspondant à ce fragment.
2013 L'exemple qui suit illustre l'utilisation de @code{mmrest-of-length}.
2015 @lilypond[verbatim,ragged-right,quote]
2016 cadenza = \relative c' {
2017 c4 d8 << { e f g } \\ { d4. } >>
2022 \new Staff { \cadenza c'4 }
2024 #(ly:export (mmrest-of-length cadenza))
2031 @node Time administration
2032 @unnumberedsubsubsec Time administration
2034 @cindex temps, gestion du
2036 Le temps est administré par le @rinternals{Time_signature_engraver},
2037 qui réside en principe dans le contexte @rinternals{Score}. Sa
2038 gestion traite les variables suivantes :
2041 @item currentBarNumber
2042 Le numéro de mesure.
2045 La longueur de la mesure, dans la métrique en cours. Pour une mesure
2046 à 4/4, elle est de@tie{}1, et de 3/4 pour une mesure à 6/8.
2048 @item measurePosition
2049 Le moment où l'on en est dans la mesure en cours. Cette quantité est
2050 remise à@tie{}0 dès lors qu'on dépasse @code{measureLength} ; la variable
2051 @code{currentBarNumber} est alors incrémentée.
2054 Lorsqu'on lui assigne la valeur @emph{vrai}, les valeurs ci-dessus
2055 mentionnées sont mises à jour à chaque pas. Fixée à @emph{faux}, le
2056 graveur restera indéfiniment dans la mesure en cours.
2059 Le calage peut être modifié en réglant explicitement l'une de ces
2060 variables. Dans l'exemple qui suit, nous réglons la métrique à 4/4,
2061 tout en fixant @code{measureLength} à 5/4. Un peu plus loin, nous
2062 raccourcissons la mesure de 1/8, en assignant 7/8 à
2063 @code{measurePosition}, alors que nous en sommes à 2/4 dans la
2064 mesure ; la barre de mesure tombera donc à @w{2/4 + 3/8}. Les 3/8
2065 résultent du fait que 5/4 équivaut à 10/8, mais nous nous sommes recalés
2066 à 7/8 de la mesure ; donc @w{10/8 @minus{} 7/8 = 3/8}.
2068 @lilypond[quote,ragged-right,verbatim,relative,fragment]
2069 \set Score.measureLength = #(ly:make-moment 5 4)
2073 \set Score.measurePosition = #(ly:make-moment 7 8)
2079 Comme le montre cet exemple, @code{ly:make-moment n m} construit une
2080 durée de n/m fois une ronde.
2081 Par conséquent, @code{ly:make-moment 1 8} correspond à une croche, et
2082 @code{ly:make-moment 7 16} à la durée de sept doubles croches.