@c -*- coding: utf-8; mode: texinfo; -*- @ignore Translation of GIT committish: 33ba8d40c3493011a4b39ab8b1369701f8013bd6 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore @c \version "2.12.0" @c Translators: Frédéric Chiasson, Jean-Charles Malahieude @c Translation checkers: Valentin Villenave, Jean-Charles Malahieude @node Rhythms @section Rhythms @lilypondfile[quote]{rhythms-headword.ly} Cette section traite du rythme : durées, silences, barres de ligature et de mesure. @menu * Writing rhythms:: * Writing rests:: * Displaying rhythms:: * Beams:: * Bars:: * Special rhythmic concerns:: @end menu @node Writing rhythms @subsection Writing rhythms @menu * Durations:: * Tuplets:: * Scaling durations:: * Ties:: @end menu @node Durations @unnumberedsubsubsec Durations @cindex durées @cindex notes, longueur @cindex longueur de note @funindex \longa @funindex longa @funindex \breve @funindex breve @funindex \maxima @funindex maxima Dans les modes de notes, d'accords et de paroles, les durées sont écrites avec des chiffres et des points : les durées sont indiquées par leur valeur fractionnaire par rapport à la durée d'une ronde. Une noire, par exemple, qui équivaut à un 1/4 de ronde --- @emph{quarter note} en anglais --- s'écrit @code{4}, alors qu'une blanche --- @emph{half-note}, 1/2 ronde --- s'écrit @code{2}. Pour des notes plus longues qu'une ronde, vous devrez utiliser les commandes @code{\longa} pour une longue, et @code{\breve} pour une brève, aussi appelée carrée. Des durées plus courtes que la quintuple-croche --- 1/128 de ronde --- sont possibles, à condition de les ligaturer. @c Two 64th notes are needed to obtain beams @lilypond[quote,verbatim,relative=2] \time 8/1 c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64 @end lilypond @noindent Voici ces mêmes durées sans la fonction de ligature automatique. @c not strictly "writing rhythms"; more of a "displaying" thing, @c but it's ok here. -gp @lilypond[quote,verbatim,relative=2] \time 8/1 \autoBeamOff c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64 @end lilypond Une note dont la durée est de quatre brèves s'obtient par la commande @code{\maxima}. Celle-ci n'est toutefois disponble que dans le cadre de la notation ancienne. Pour plus de détails, voir @ref{Ancient notation}. @cindex durée par défaut @cindex défaut, durée Si la durée n'est pas précisée, elle est alors assimilée à la durée précédente. La valeur par défaut pour la première note est une noire (4). @lilypond[quote,verbatim,relative=2] a a a2 a a4 a a1 a @end lilypond @cindex notes pointées @cindex pointée, note @cindex doublement pointée, note @cindex point @cindex double point @funindex . Pour obtenir des notes pointées, ajoutez simplement un point (@code{.}) au chiffre. Les notes doublement pointées sont créées de la même façon. @lilypond[quote,verbatim,relative=2] a4 b c4. b8 a4. b4.. c8. @end lilypond Certaines durées ne peuvent s'obtenir à partir de chiffres et de points, mais uniquement en @qq{liant} deux ou plusieurs notes entre elles. Voir @ref{Ties} à ce sujet. Quant à la manière de spécifier la durée des syllabes ou bien d'aligner des paroles par rapport aux notes, reportez-vous au chapitre @ref{Vocal music}. Espacer les notes selon leur durée relative est tout à fait possible. Pour plus de détails à ce sujet et sur les autres réglages propres à cette forme de notation, reportez-vous à @ref{Proportional notation}. @funindex \dotsUp @funindex dotsUp, @funindex \dotsDown @funindex dotsDown, @funindex \dotsNeutral @funindex dotsNeutral. Les points sont normalement haussés pour éviter les lignes de portées, sauf dans certaines polyphonies. Des commandes prédéfinies permettent de manuellement forcer une orientation particulière, comme indiqué au chapitre @ref{Direction and placement}. @predefined @code{\autoBeamOff}, @code{\dotsUp}, @code{\dotsDown}, @endpredefined @seealso Glossaire musicologique : @rglos{breve}, @rglos{longa}, @rglos{maxima}, @rglos{note value}, @rglos{Duration names notes and rests}. Manuel de notation : @ref{Automatic beams}, @ref{Ties}, @ref{Stems}, @ref{Writing rhythms}, @ref{Writing rests}, @ref{Vocal music}, @ref{Ancient notation}, @ref{Proportional notation}. Morceaux choisis : @rlsr{Rhythms}. Manuel des eéférences internes : @rinternals{Dots}, @rinternals{DotColumn}. @knownissues @c Deliberately duplicated in Durations and Rests. -gp Il n'existe pas à proprement parler de limite (inférieure ou supérieure) en terme de durée d'un silence. Cependant, le nombre de glyphes disponibles ne couvre que les silences allant du quintuple soupir à la maxime (équivalant huit pauses). @node Tuplets @unnumberedsubsubsec Tuplets @cindex nolets @cindex triolets @funindex \times @funindex times Les nolets --- triolets, quintolets, etc. --- sont obtenus en multipliant toutes les durées d'une expression musicale par une fraction. @example \times @var{fraction} @{ @var{expr_musique} @} @end example @noindent La durée de @var{expr_musique} sera multipliée par la fraction. Le dénominateur de la fraction sera imprimé au-dessus ou au-dessous des notes, parfois avec un crochet. Le nolet le plus courant est le triolet, dans lequel 3 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur écrite. @lilypond[quote,verbatim,relative=2] a2 \times 2/3 { b4 b b } c4 c \times 2/3 { b4 a g } @end lilypond @cindex crochet de nolet, positionnement @funindex \tupletUp @funindex tupletUp @funindex \tupletDown @funindex tupletDown @funindex \tupletNeutral @funindex tupletNeutral Le positionnement automatique du crochet en surplomb ou au-dessous des notes peut être contourné manuellement à l'aide de commandes prédéfinies, comme indiqué au chapitre @ref{Direction and placement}. Les nolets peuvent être imbriqués ; par exemple, @lilypond[quote,verbatim,relative=2] \autoBeamOff c4 \times 4/5 { f8 e f \times 2/3 { e[ f g] } } f4 | @end lilypond Lorsqu'une imbrication de nolets débute au même instant, il vous faudra recourir à la commande @code{\tweak}. Vous pouvez interférer sur la durée des notes sans imprimer un crochet, comme l'indique @ref{Scaling durations}. @predefined @code{\tupletUp}, @code{\tupletDown}, @code{\tupletNeutral}. @endpredefined @snippets @cindex nolets, formatage @cindex triolets, formatage @funindex tupletNumberFormatFunction @funindex tupletSpannerDuration @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {entering-several-tuplets-using-only-one--times-command.ly} @cindex nolet, modification du chiffre @funindex TupletNumber @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {changing-the-tuplet-number.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {non-default-tuplet-numbers.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {permitting-line-breaks-within-beamed-tuplets.ly} @seealso Music Glossary: @rglos{triplet}, @rglos{tuplet}, @rglos{polymetric}. Manuel d'apprentissage : @rlearning{Tweaking methods}. Manuel de notation : @ref{Time administration}, @ref{Scaling durations}, @ref{The tweak command}, @ref{Polymetric notation}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{TupletBracket}, @rinternals{TupletNumber}, @rinternals{TimeScaledMusic}. @cindex notes d'ornement et crochet de nolet @knownissues Lorsqu'un nolet en début de portée est précédé d'une note d'ornement, celle-ci doit se placer avant la commande @code{\times} pour éviter toute erreur. Ailleurs dans la partition, les notes d'ornement peuvent se placer au sein de l'expression du nolet. @node Scaling durations @unnumberedsubsubsec Scaling durations @cindex échelonnement des durées @cindex durées, échekonnement Vous pouvez altérer la durée des notes, silences ou accords en leur joignant une fraction @var{N/M}, donnant @qq{@code{*}@var{N/M}} --- ou @qq{@code{*}@var{N}} si @var{M=1}. Ceci ne modifiera en rien l'apparence des notes ou silences produits, mais affectera le rendu MIDI. Dans l'exemple suivant, les trois premières notes prennent exactement deux temps, mais aucun triolet n'est imprimé. @lilypond[quote,relative=2,verbatim] \time 2/4 % Alter durations to triplets a4*2/3 gis4*2/3 a4*2/3 % Normal durations a4 a4 % Double the duration of chord 4*2 % Duration of quarter, appears like sixteenth b16*4 c4 @end lilypond La durée d'un silence invisible ou saut de notes (@emph{skip}) peut elle aussi être affectée d'un multiplicateur. Cette technique permet tout simplement de sauter plusieurs mesures, comme par exemple un @code{s1*23}. @cindex échelonnement de musique @cindex musique échelonnée @funindex \scaleDurations @funindex scaleDurations Il est tout à fait possible d'échelonner des fragments musicaux plus ou moins longs à l'aide d'une simple fraction, comme si chaque note, accord ou silence était affecté de ce même quotient. L'apparence de cette musique ne sera en rien modifiée ; seule la durée des notes est multipliée en interne par la fraction @emph{numérateur}/@emph{dénominateur}. N'oubliez pas de préserver les espaces de part et d'autre du point. Voici un exemple illustrant la manière de comprimer ou étirer de la musique : @lilypond[quote,relative=2,verbatim] \time 2/4 % Normal durations 4 c8 a % Scale music by *2/3 \scaleDurations #'(2 . 3) { 4. c8 a f } % Scale music by *2 \scaleDurations #'(2 . 1) { 4 c8 b } @end lilypond @noindent Cette technique est tout à fait appropriée à la notation polymétrique --- voir @ref{Polymetric notation}. @seealso Manuel de notation : @ref{Tuplets}, @ref{Invisible rests}, @ref{Polymetric notation}. Morceaux choisis : @rlsr{Rhythms}. @node Ties @unnumberedsubsubsec Ties @cindex liaison de prolongation @funindex ~ Une liaison de tenue (ou de prolongation) relie deux notes adjacentes de même hauteur. Dans les faits, elle prolonge la durée d'une note. @warning{Une liaison de tenue ne doit pas être confondue avec une liaison d'@strong{articulation} ou de @strong{phrasé}. Une liaison de tenue est un moyen parmi d'autres pour prolonger la durée d'une note, tout comme les points.} Une liaison de tenue s'indique au moyen d'un tilde @code{~}. @lilypond[quote,verbatim,relative=2] a2 ~ a @end lilypond @noindent Les liaisons de tenue sont utilisées soit lorsque la note dépasse de la mesure, soit quand les points ne suffisent pas à donner la bonne durée. Lorsque l'on utilise ces liaisons, les valeurs rythmiques les plus longues doivent s'aligner sur les subidivisions de la mesure, comme ici : @c KEEP LY @lilypond[verbatim,quote] \relative { r8^"oui" c8 ~ c2 r4 | r8^"non" c2 ~ c8 r4 } @end lilypond Lorsque l'on doit lier de nombreuses notes sur plusieurs mesures, il devient plus facile d'avoir recours à la division automatique des notes --- voir @ref{Automatic note splitting}. Ce procédé divise automatiquement les notes trop longues, et les lie par-delà les barres de mesure. @cindex liaison de tenue et accords @cindex accords et liaisons de tenue Quand une liaison de tenue se trouve entre deux accords, toutes les notes de même hauteur entre ces deux accords sont reliées. S'il n'y en a aucune, aucune liaison n'est créée. Il est également possible de lier partiellement deux accords, en mettant les liaisons à l'intérieur des accords. @lilypond[quote,verbatim,relative=1] ~ @end lilypond @cindex liaison de tenue et répétition @cindex répétition et liaison de tenue @cindex reprises avec alternatives et liaisons de prolongation @cindex liaison de prolongation et reprise avec alternative @funindex \repeatTie @funindex repeatTie Lorsqu'une mesure de seconde fois après une reprise commence sur une note liée, la liaison doit être répétée, comme ici : @lilypond[quote,relative=2,verbatim] \repeat volta 2 { c g 2 ~ } \alternative { % First alternative: following note is tied normally { 2. r4 } % Second alternative: following note has a repeated tie { 2\repeatTie d4 c } } @end lilypond @cindex laissez vibrer @cindex liaison, laissez vibrer @funindex \laissezVibrer @funindex laissezVibrer Les liaisons @qq{Laissez vibrer} (@notation{L.v.}) sont utilisées pour le piano, la harpe, et certains instruments de percussion. Elles indiquent à l'instrumentiste de laisser sonner la note ou l'accord au lieu de l'étouffer. Elles s'indiquent de la manière suivante : @lilypond[quote,verbatim,relative=1] \laissezVibrer @end lilypond @cindex liaisons de prolongation, positionnement @funindex \tieUp @funindex tieUp @funindex \tieDown @funindex tieDown @funindex \tieNeutral @funindex tieNeutral Le positionnement vertical des liaisons de prologaation peut être affiné --- voir à ce sujet les @qq{commandes prédéfinies} et, pour de plus amples détails, @ref{Direction and placement}. @cindex liaison de prolongation, apparence @cindex liaison de prolongation, pointillés @cindex liaison de prolongation, tirets @funindex \tieDotted @funindex tieDotted @funindex \tieDashed @funindex tieDashed @funindex \tieSolid @funindex tieSolid Les liaisons de prolongation peuvent s'imprimer sous la forme de ligne continue, discontinue ou pointillée. @lilypond[quote, verbatim, relative=1] \tieDotted c2 ~ c \tieDashed c2 ~ c \tieHalfDashed c2 ~ c \tieHalfSolid c2 ~ c \tieSolid c2 ~ c @end lilypond Il est même possible d'en personnaliser l'allure : @lilypond[quote, verbatim, relative=1] \tieDashPattern #0.3 #0.75 c2 ~ c \tieDashPattern #0.7 #1.5 c2 ~ c \tieSolid c2 ~ c @end lilypond Que ce soit pour une tenue ou un phrasé, le motif d'une ligne discontinue formant une liaison se définit de la même manière. Pour de plus amples détails à ce sujet, reportez-vous au chapitre @ref{Slurs}. @predefined @code{\tieUp}, @code{\tieDown}, @code{\tieNeutral}, @code{\tieDotted}, @code{\tieDashed}, @code{\tieDashPattern}, @code{\tieHalfDashed}, @code{\tieHalfSolid}, @code{\tieSolid}. @endpredefined @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {using-ties-with-arpeggios.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {engraving-ties-manually.ly} @seealso Glossaire musical : @rglos{tie}, @rglos{laissez vibrer}. Dans ce manuel : @ref{Automatic note splitting}. Morceaux choisis : @rlsr{Rhythms}. Référence du programme : @rinternals{LaissezVibrerTie}, @rinternals{LaissezVibrerTieColumn}, @rinternals{TieColumn}, @rinternals{Tie}. @knownissues Un changement de portée, lorsqu'une liaison de tenue est active, ne peut produire une liaison oblique. Un changement de clé ou d'octave pendant une liaison de tenue produit un résultat indéfini. Dans ces cas-là, il est préférable d'utiliser un @emph{legato}. @node Writing rests @subsection Writing rests Les silences se saisissent dans une expression musicale tout comme les notes. @menu * Rests:: * Invisible rests:: * Full measure rests:: @end menu @node Rests @unnumberedsubsubsec Rests @cindex silences @cindex durée d'un silence @cindex double pause @funindex \rest @funindex rest @funindex r @funindex \maxima @funindex maxima @funindex \longa @funindex longa @funindex \breve @funindex breve Les silences sont écrits comme des notes avec le nom de note @code{r}. Les durées supérieures à la pause s'indiquent à l'aide de commandes prédéfinies : @c \time 16/1 is used to avoid spurious bar lines @c and long tracts of empty measures @lilypond[fragment,quote,verbatim] \new Staff { % These two lines are just to prettify this example \time 16/1 \override Staff.TimeSignature #'stencil = ##f % Print a maxima rest, equal to four breves r\maxima % Print a longa rest, equal to two breves r\longa % Print a breve rest r\breve r1 r2 r4 r8 r16 r32 r64 r128 } @end lilypond @cindex silence multi-mesure @cindex mesure de silence Les pauses d'une mesure complète, qui sont placées au centre de la mesure, doivent être entrées comme des mesures de silence. Elles peuvent être utilisées pour une seule mesure comme pour plusieurs, et leur utilisation est expliquée dans la section @ref{Full measure rests}. @cindex silence, spécification du positionnement vertical Pour spécifier explicitement la position verticale d'un silence, écrivez une note suivie de @code{\rest}. Un silence, de même durée, sera placé à la position où serait imprimée la note. Cela rend plus facile la mise en place de musique polyphonique, puisque le formateur automatique de collision des silences laissera ces silences tranquilles. @lilypond[quote,verbatim,relative=2] a'4\rest d'4\rest @end lilypond @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {rest-styles.ly} @seealso Glossaire musicologique : @rglos{breve}, @rglos{longa}, @rglos{maxima}. Manuel de notation : @ref{Full measure rests}. Morceaux choisis : @rlsr{Rhythms}. Référence du programme : @rinternals{Rest}. @knownissues @c Deliberately duplicated in Durations and Rests. -gp Il n'existe pas à proprement parler de limite (inférieure ou supérieure) en terme de durée d'un silence. Cependant, le nombre de glyphes disponibles ne couvre que les silences allant du quintuple soupir à la maxime (équivalant huit pauses). @node Invisible rests @unnumberedsubsubsec Invisible rests @cindex sauts de durée @cindex silences invisibles @cindex silences d'espacement @funindex s @funindex \skip @funindex skip Un silence invisible --- que l'on pourrait appeler un @qq{saut} --- peut être entré comme une note avec le nom de note @code{s} ou avec @code{\skip @var{durée}} @lilypond[verbatim,quote,relative=2] c4 c s c s2 c @end lilypond @cindex paroles, blanc @cindex paroles, saut de notes La syntaxe @code{s} est seulement disponible pour les modes d'entrée de notes et d'accords. Dans d'autres situations, pour l'entrée de paroles par exemple, vous devrez utiliser la commande @code{\skip}, qui recquiert une durée explicite. @lilypond[quote,verbatim,relative=2] << { a2 \skip2 a2 a2 } \new Lyrics { \lyricmode { foo2 \skip 1 bla2 } } >> @end lilypond La commande de saut génère simplement une case musicale vide. Le code de saut @code{s} crée tout de même les contextes @code{Staff} et @code{Voice} lorsque nécessaire, à l'intar des notes ou des silences : @lilypond[quote,verbatim,fragment] s1 s s @end lilypond Un @code{\skip} ne fait que sauter du temps musical ; il ne produit rien du tout, pas même un symbole transparent.. @lilypond[quote,verbatim,fragment] % This is valid input, but does nothing \skip 1 \skip1 \skip 1 @end lilypond @seealso Morceaux choisis : @rlsr{Rhythms}. Référence du programme : @rinternals{SkipMusic}. @node Full measure rests @unnumberedsubsubsec Full measure rests @cindex mesures à compter @cindex mesure entière de silence @cindex silences multi-mesures @cindex silences, mesure entière @cindex une pause par mesure @funindex R Un silence valant une ou plusieurs mesures entières s'entre avec un @samp{R} majuscule. @lilypond[quote,verbatim,relative=2] % Rest measures contracted to single measure \compressFullBarRests R1*4 R1*24 R1*4 b2^"Tutti" b4 a4 @end lilypond Ceci ne peut être utile que pour une mesure complètement vide. Sa durée doit donc correspondre à la longueur de la mesure telle que définie par la métrique. C'est la raison pour laquelle on utilisera aussi des points d'augmentation ou des fractions : @lilypond[quote,fragment,verbatim] \compressFullBarRests \time 2/4 R1 | R2 | \time 3/4 R2. | R2.*2 | \time 13/8 R1*13/8 | R1*13/8*12 | \time 10/8 R4*5*4 | @end lilypond Un @code{R} qui s'étend sur une seule mesure s'imprime tantôt comme une pause, tantôt comme une brève -- ou @qq{bâton de pause} -- et sera centré sur la mesure quelle qu'en soit la métrique : @lilypond[quote,verbatim,fragment] \time 4/4 R1 | \time 6/4 R1*3/2 | \time 8/4 R1*2 | @end lilypond @cindex silence multi-mesures, expansion @cindex silence multi-mesures, contraction @funindex \expandFullBarRests @funindex expandFullBarRests @funindex \compressFullBarRests @funindex compressFullBarRests Par défaut, un silence multi-mesures sera répété sur autant de mesures que nécessaire. Il peut aussi n'être imprimé qu'une seule fois, surplombé du nombre de mesures vides -- ou @qq{à compter} : @lilypond[quote,fragment,verbatim] % Default behavior \time 3/4 r2. | R2.*2 | \time 2/4 R2 | \time 4/4 % Rest measures contracted to single measure \compressFullBarRests r1 | R1*17 | R1*4 | % Rest measures expanded \expandFullBarRests \time 3/4 R2.*2 | @end lilypond @cindex texte indiquant le nombre de mesures vides @cindex silence multi-mesures, ajout de texte @cindex script et silence multi-mesures @cindex silence multi-mesures, script @cindex étiquette et silence multi-mesures @cindex silence multi-mesures, étiquette @cindex point d'orgue et silence multi-mesures @cindex silence multi-mesures et point d'orgue @funindex \fermataMarkup @funindex fermataMarkup @funindex MultiMeasureRestText Vous pouvez aussi ajouter du texte à un silence multi-mesures en utilisant la syntaxe @var{note}-@code{markup} (cf. @ref{Formatting text}). La variable @code{\fermataMarkup} quant à elle permet d'ajouter un point d'orgue : @lilypond[quote,verbatim,fragment] \compressFullBarRests \time 3/4 R2.*10^\markup { \italic "ad lib." } R2.^\fermataMarkup @end lilypond @warning{ C'est @code{MultiMeasureRestText} qui créera le texte, et non @code{TextScript}. Les commandes de dérogation ou redéfinition doivent s'adresser à l'objet concerné, comme vous pouvez le constater dans l'exemple suivant.} @c KEEP LY @lilypond[quote,verbatim,fragment] % Ceci échouera : il y a erreur quant à l'objet spécifié \override TextScript #'padding = #5 R1^"pas bon !" % Formulation correcte, qui fonctionnera \override MultiMeasureRestText #'padding = #5 R1^"ça marche !" @end lilypond Un silence multi-mesure placé directement après une commande @code{\partial} risque fort de perturber le vérificateur de limites et numéros de mesure. @funindex \textLengthOn @funindex textLengthOn @funindex \textLengthOff @funindex textLenthOff @funindex \fermataMarkup @funindex fermataMarkup @funindex \compressFullBarRests @funindex compressFullBarRests @funindex \expandFullBarRests @funindex expandFullBarRests @predefined @code{\textLengthOn}, @code{\textLengthOff}, @code{\fermataMarkup}, @code{\compressFullBarRests}, @code{\expandFullBarRests}. @endpredefined @snippets @cindex silence d'église @cindex kirchenpausen @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {changing-form-of-multi--measure-rests.ly} @cindex silence multi-mesures, positionnement @cindex positionnement des silences multi-mesures @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {positioning-multi--measure-rests.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {multi--measure-rest-markup.ly} @seealso Glossaire musicologique : @rglos{multi-measure rest}. Manuel de notation : @ref{Durations}, @ref{Text}, @ref{Formatting text}, @ref{Text scripts}. Morceaux choisis : @rlsr{Rhythms}. Référence du programme : @rinternals{MultiMeasureRest}. @rinternals{MultiMeasureRestNumber}, @rinternals{MultiMeasureRestText}. @cindex doigtés et silences multi-mesures @cindex silences multi-mesures et doigtés @knownissues Vous ne pouvez pas utiliser de doigtés (p.ex. @code{R1*10-4}) pour positionner des nombres au dessus d'un silence multi-mesures, le numéro de doigt (4) risquant de chevaucher le nombre de mesures à compter (10). @cindex condenser les silences Condenser plusieurs silences en un unique silence multi-mesures ne peut être automatisé. @cindex silences, collisions entre Les silences multi-mesures peuvent générer des collisions avec d'autres silences. @node Displaying rhythms @subsection Displaying rhythms @menu * Time signature:: * Upbeats:: * Unmetered music:: * Polymetric notation:: * Automatic note splitting:: * Showing melody rhythms:: @end menu @node Time signature @unnumberedsubsubsec Time signature @cindex chiffrage de mesure @cindex chiffre indicateur de mesure @cindex métrique @funindex \time @funindex time Le chiffre de mesure indique le mètre d'une pièce : une alternance régulière de temps forts et de temps faibles. Il est indiqué par une fraction au début de la portée : @lilypond[quote,verbatim,relative=2] \time 2/4 c2 \time 3/4 c2. @end lilypond @cindex métrique, visibilité La métrique est imprimée en début de morceau, et à chaque fois qu'elle est modifiée. Si cette modification intervient après un saut de ligne, une métrique @qq{de précaution} sera imprimée juste avant. Ce comportement par défaut peut être modifié, comme indiqué au chapitre @ref{Visibility of objects}. @lilypond[quote,verbatim,relative=2] \time 2/4 c2 c \break c c \break \time 4/4 c c c c @end lilypond @cindex métrique, styles @cindex styles de métrique @funindex \numericTimeSignature @funindex numericTimeSignature @funindex \defaultTimeSignature @funindex defaultTimeSignature Le symbole de métrique utilisé pour les mesures à 2/2 et 4/4 peut être changé pour un style numérique : @lilypond[quote,verbatim,relative=2] % Default style \time 4/4 c1 \time 2/2 c1 % Change to numeric style \numericTimeSignature \time 4/4 c1 \time 2/2 c1 % Revert to default style \defaultTimeSignature \time 4/4 c1 \time 2/2 c1 @end lilypond Les métriques anciennes sont abordées au chapitre @ref{Mensural time signatures}. @predefined @code{\numericTimeSignature}, @code{\defaultTimeSignature}. @endpredefined @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {changing-the-time-signature-without-affecting-the-beaming.ly} @cindex métriques composites @cindex métriques décomposées @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {compound-time-signatures.ly} @seealso Glossaire musicologique : @rglos{time signature} Manuel de notation : @ref{Mensural time signatures}, @ref{Time administration}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{TimeSignature}, @rinternals{Timing_translator}. @node Upbeats @unnumberedsubsubsec Upbeats @cindex anacrouse @cindex levée @cindex mesure incomplète @cindex mesure, changement de longueur @funindex measurePosition @funindex \partial @funindex partial Les mesures incomplètes, telles que les anacrouses ou levées, doivent être entrées avec la commande @code{\partial}. La syntaxe de cette commande est @example \partial @var{durée} @end example où @code{durée} correspond à la valeur rythmique devant être ajoutée avant la première mesure complète : @lilypond[quote,verbatim,relative=2] \partial 4 e4 | a2. c,4 | @end lilypond Une mesure incomplète peut être de n'importe quelle longueur inférieure à la mesure complète : @lilypond[quote,verbatim,relative=2] \partial 8*3 c8 d e | a2. c,4 | @end lilypond Le programme traduit cette commande en @example \set Timing.measurePosition = -@var{durée} @end example La propriété @code{measurePosition} contient un nombre rationnel qui indique, à ce point précis, où l'on en est de la mesure. Notez qu'il peut s'agir d'un nombre négatif ; @code{\partial 4} signifie, pour le programme : @qq{Dans cette mesure, il reste juste une noire}. @seealso Glossaire musicologique : @rglos{anacrusis}. Manuel de notation : @ref{Grace notes}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{Timing_translator}. @knownissues @code{\partial} n'est destiné à être utilisé qu'en début de pièce. Si on l'utilise ailleurs qu'au début, des messages d'erreurs peuvent s'afficher. @node Unmetered music @unnumberedsubsubsec Unmetered music @cindex barres de mesures, supression @cindex numérotation des mesures, supression @cindex cadence @cindex musique non mesurée @funindex \cadenzaOn @funindex cadenzaOn @funindex \cadenzaOff @funindex cadenzaOff Les barres de mesure et les numéros de mesure sont calculés automatiquement, ce qui n'est pas souhaitable dans le cas d'une musique non mesurée --- les cadences, par exemple. Les commandes @code{\cadenzaOn} et @code{\cadenzaOff} permettent de désactiver et de rétablir la métrique automatique. @lilypond[verbatim,relative=2,fragment] c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c @end lilypond La numérotation reprend dès la fin d'un cadence, comme si elle n'avait pas existé : @lilypond[verbatim,relative=2,fragment] % Show all bar numbers \override Score.BarNumber #'break-visibility = #all-visible c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c @end lilypond @predefined @code{\cadenzaOn}, @code{\cadenzaOff}. @endpredefined @seealso Glossaire musicologique : @rglos{cadenza}. Manuel de notation : @ref{Visibility of objects}. Morceaux choisis : @rlsr{Rhythms}. @cindex cadence et saut de ligne @cindex cadence et saut de page @cindex musique non mesurée et saut de ligne @cindex musique non mesurée et saut de page @cindex sauts de ligne et cadences @cindex sauts de page et cadences @cindex sauts de ligne et musique non mesurée @cindex sauts de page et musique non mesurée @knownissues LilyPond ne change de ligne ou de page qu'au niveau des barres de mesure. Si votre musique non mesurée dure plus d'une ligne, il vous faudra insérer des barres de mesure invisibles, @example \bar "" @end example @noindent pour indiquer où des sauts de ligne peuvent prendre place. @node Polymetric notation @unnumberedsubsubsec Polymetric notation @c This section necessarily uses \set @c This is acceptable -td @cindex métrique double @cindex métrique composite @cindex composite, métrique @cindex métrique polymétrique @cindex polymétrie @funindex timeSignatureFraction @funindex \scaleDurations @funindex scaleDurations @funindex \times @funindex times LilyPond gère les métriques composites, aussi bien de manière explicite que de manière détournée --- modification de l'indicateur de métrique et échelonnement de la durée des notes. @strong{@i{Portées aux métriques différentes, mesures d'égale longueur}} Il suffit pour obtenir cette forme de notation de tout d'abord affecter une même métrique aux différentes portées. L'indicateur de métrique sera ensuite remplacé dans chacune des portées par un quotient donné en argument à la propriété @code{timeSignatureFraction}. La durée des notes sera enfin proratisée selon la métrique commune (voir @ref{Time signature}) grâce à la fonction @code{\scaleDurations}, qui s'utilise tout comme la commande @code{\times} --- sans toutefois créer de crochet de nolet (voir @ref{Scaling durations}). @cindex ligature et musique polymétrique @cindex polymétrie et ligature L'exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et 10/8. Pour la deuxième portée, les durées sont multipliées par 2/3, de telle sorte que @w{2/3 * 9/8 = 3/4} ; pour la troisième, elles sont multipliées par 3/5, de telle sorte que @w{3/5 * 10/8 = 3/4}. Les ligatures devront être explicites, la fonction d'échelonnement venant perturber les règles de ligature automatique. @lilypond[quote,verbatim,fragment] \relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(9 . 8) \scaleDurations #'(2 . 3) \repeat unfold 6 { c8[ c c] } } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(10 . 8) \scaleDurations #'(3 . 5) { \repeat unfold 2 { c8[ c c] } \repeat unfold 2 { c8[ c] } | c4. c4. \times 2/3 { c8[ c c] } c4 } } >> @end lilypond @strong{@i{Portées aux métriques différentes, mesures de longueur inégale}} Il arrive aussi que chaque portée ait sa propre métrique. Vous y parviendrez en déplaçant le @code{Timing_translator} et le @code{Default_bar_line_engraver} dans le contexte @code{Staff}. @lilypond[quote,verbatim] \layout { \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver" } \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" } } % Now each staff has its own time signature. \relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 2/4 c4 c | c c | c c | } \new Staff { \time 3/8 c4. | c8 c c | c4. | c8 c c | } >> @end lilypond @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {compound-time-signatures.ly} @seealso Glossaire musicologique : @rglos{polymetric}, @rglos{polymetric time signature}, @rglos{meter}. Manuel de notation : @ref{Time signature}, @ref{Scaling durations}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{TimeSignature}, @rinternals{Timing_translator}, @rinternals{Default_bar_line_engraver}, @rinternals{Staff}. @knownissues L'utilisation de métriques différentes en parallèle entraine un alignement vertical. De ce fait, les barres de mesure ont tendance à fausser l'espacement régulier entre les portées. @node Automatic note splitting @unnumberedsubsubsec Automatic note splitting @cindex notes, division @cindex division de notes @funindex Note_heads_engraver @funindex Completion_heads_engraver On peut convertir automatiquement les notes longues en notes liées. Il faut pour cela remplacer le graveur @code{Note_heads_engraver} par le graveur @code{Completion_heads_engraver}. Dans l'exemple suivant, les notes dépassant de la mesure sont divisées et liées. @lilypond[quote,verbatim,relative=1] \new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" } { c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 } @end lilypond Ce graveur divise toutes les notes qui sortent de la mesure, et insère des liaisons de prolongation. Dans la pratique, cette fonctionnalité permet de déboguer des partitions complexes : si les mesures ne sont pas entièrement remplies, alors les liaisons de prolongation montrent exactement la durée des décalages de mesure. @seealso Glossaire musicologique : @rglos{tie} Manuel d'apprentissage : @rlearning{Engravers explained}, @rlearning{Adding and removing engravers}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{Note_heads_engraver}, @rinternals{Completion_heads_engraver}, @rinternals{Forbid_line_break_engraver}. @knownissues Bien que toutes les durées --- particulièrement celles contenant des nolets --- ne puissent pas être représentées exactement avec des notes normales et des points, le graveur @code{Completion_heads_engraver} n'insèrera pas de nolet. @code{Completion_heads_engraver} affecte seulement les notes, il ne divise pas les silences. @node Showing melody rhythms @unnumberedsubsubsec Showing melody rhythms @cindex mélodie, affichage du rythme seul @cindex rythmique d'une mélodie Au moyen d'une portée rythmique -- @emph{rhythmic staff} en anglais -- on peut montrer seulement le rythme d'une mélodie : toutes les notes sont ramenées à la même hauteur, sur une portée d'une seule ligne. @lilypond[quote,relative=1,verbatim] << \new RhythmicStaff { \new Voice = "myRhythm" { \time 4/4 c4 e8 f g2 r4 g g f g1 } } \new Lyrics { \lyricsto "myRhythm" { This is my song I like to sing } } >> @end lilypond @cindex guitar chord charts @cindex strumming rhythms, showing @cindex guitar strumming rhythms, showing @funindex Pitch_squash_engraver @funindex \improvisationOn @funindex improvisationOn @funindex \improvisationOff @funindex improvisationOff L'utilisation combinée du @code{Pitch_squash_engraver} et de @code{\improvisationOn} permet d'afficher la structure rythmique d'une grille d'accords : @lilypond[quote,verbatim] << \new ChordNames { \chordmode { c1 f g c } } \new Voice \with { \consists Pitch_squash_engraver } \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } >> @end lilypond @predefined @code{\improvisationOn}, @code{\improvisationOff}. @endpredefined @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {guitar-strum-rhythms.ly} @seealso Snippets: @rlsr{Rhythms}. Référence du programme : @rinternals{RhythmicStaff}. @rinternals{Pitch_squash_engraver}. @node Beams @subsection Beams @menu * Automatic beams:: * Setting automatic beam behavior:: * Manual beams:: * Feathered beams:: @end menu @node Automatic beams @unnumberedsubsubsec Automatic beams LilyPond décide automatiquement de la manière de grouper les notes et d'imprimer les ligatures. @cindex ligatures manuelles @cindex ligatures, définition de règles @cindex ligatures, personnalisation @funindex \autoBeamOn @funindex autoBeamOn @funindex \autoBeamOff @funindex autoBeamOff @lilypond[quote,verbatim,relative=2] \time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8 @end lilypond Lorsque ce comportement automatisé n'est pas satisfaisant, on peut définir des groupements manuellement --- voir @ref{Manual beams}. Dans le cas où les groupe de notes en questioon contient un silence, il est @strong{impératif} d'indiquer explicitement les début et fin de la ligature. Lorsque les ligatures automatiques ne sont pas nécessaires, il suffit de désactiver la fonctionnalité par un @code{\autoBeamOff} --- réactivée par @code{\autoBeamOn} : @lilypond[quote,relative=1,verbatim] c4 c8 c8. c16 c8. c16 c8 \autoBeamOff c4 c8 c8. c16 c8. \autoBeamOn c16 c8 @end lilypond @cindex mélisme et ligature @cindex ligature et mélisme @warning{Si des ligatures sont utilisées dans les paroles d'une chanson (pour indiquer des mélismes), les ligatures automatiques doivent être désactivées, avec @code{\autoBeamOff}, et indiquées manuellement.} Les règles qui dérogent au comportement automatique par défaut sont possibles ; voir @ref{Setting automatic beam behavior}. @predefined @code{\autoBeamOff}, @code{\autoBeamOn}. @endpredefined @snippets @cindex saut de ligne et ligature @cindex ligature et saut de ligne @funindex breakable @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {beams-across-line-breaks.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {changing-beam-knee-gap.ly} @seealso Manuel de notation : @ref{Manual beams}, @ref{Setting automatic beam behavior}. Fichiers installés : @file{scm/@/auto@/-beam@/.scm}. Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{Beam}. @knownissues Ligatures coudées à cheval sur deux portées et masquage de portée sont incompatibles ; voir @ref{Hiding staves}. Les ligatures peuvent générer des collisions avec des têtes de notes ou altérations appartenant à d'autres voix. @node Setting automatic beam behavior @unnumberedsubsubsec Setting automatic beam behavior @cindex ligatures automatiques, personnalisation @cindex réglage des ligatures automatiques @cindex ligatures automatiques, génération de @cindex autobeam @cindex paroles et ligatures @funindex autoBeaming @funindex autoBeamSettings @funindex (end * * * *) @funindex (begin * * * *) @funindex measureLength @funindex beatLength @funindex beatGrouping @funindex \time @funindex time @funindex \set @funindex set LilyPond dispose de deux types de règles en matière de ligature : des règles concernant le @strong{regroupement}, et des règles concernant la @strong{terminaison} des ligatures. Les règles de regroupement sont des plus simples mais peuvent être outrepassées par des règles de terminaison. Les règles déterminant le positionnement des ligatures automatiques s'appliquent dans l'ordre suivant de priorité : @itemize @item Une ligature explicite --- indiquée par @code{[@dots{}]} --- sera toujours respectée, sinon @item si @code{\autoBeamOff} a été activé, il n'y aura pas de ligature, sinon @item si une règle de terminaison peut s'appliquer, s'y référer pour déterminer à quel moment une ligature peut prendre fin, sinon @item si une règle valide de regroupement par ligature (voir ci-dessous) peut s'appliquer, s'y référer ; sinon @item utiliser la valeur de @code{beatLength} pour regrouper les notes par des ligatures. @end itemize @i{@strong{Modification des ligatures selon la pulsation}} Lorsque, pour une métrique donnée, aucune règle n'a été définie quant à la fin ni la longueur d'une ligature particulière, cette ligature sera contrôlée par trois propriétés : @code{measureLength}, @code{beatLength} et @code{beatGrouping}. Ces propriétés sont définies, selon la portée de leur action, au niveau des contextes @code{Score}, @code{Staff} ou @code{Voice}. Leurs valeurs par défaut sont initialisées par la commande @code{\time} ; par voie de conséquence, toute commande @code{\set} destinée à en modifier les valeurs doit se placer après la commande @code{\time}. @warning{Ces trois propriétés s'appliqueront à une ligature donnée dans @strong{deux cas seulement} : s'il n'existe aucune règle de fin pour la longueur d'une ligature dans la métrique considérée, ou si toutes les règles de fin ont été annulées.} Ces propriétés déterminent la manière de ligaturer ainsi : Une ligature peut débuter n'importe où, à moins qu'il n'y en ait déjà une d'active. Les ligatures se terminent à un moment déterminé par les valeurs de @code{beatGrouping} et @code{beatLength}, selon le principe suivant : @itemize @item Si @code{beatGrouping} et @code{beatLength} concordent avec @code{measureLength}, @code{beatGrouping} est utilisé pour déterminer les terminaisons des ligatures. @item Si @code{beatGrouping} et @code{beatLength} ne sont pas en concordance avec @code{measureLength}, @code{beatLength} est utilisé pour déterminer les terminaisons des ligatures. @end itemize @code{measureLength} et @code{beatLength} tirent leur valeur par défaut à partir de la métrique telle que définie par la commande @code{\time}. @code{measureLength} est définie comme étant la longueur d'une mesure complète pour la métrique donnée. Enfin, @code{beatLength} prend la valeur du dénominateur de la métrique. Les valeurs par défaut de @code{beatGrouping} sont répertoriées dans une table contenue dans le fichier @file{scm/@/music@/-functions@/.scm} -- consultez @rlearning{Other sources of information} pour savoir où il se situe. Cette table définit les règles de groupement pour les mesures à 3/8, 4/8, 5/8, 8/8, ainsi que les mesures composées les plus courantes. @code{measureLength} et @code{beatLength} constituent tous deux des @strong{moments}, autrement dit des unités de durée musicale. La fonction Scheme @code{ly:make-moment} est tout particulièrement chargée de créer cette quantité de type @i{moment} -- pour plus d'information, consultez @ref{Time administration}. @code{beatGrouping} représente une liste d'entiers correspondant au nombre de pulsations de chaque groupe. @snippets @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {grouping-beats.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {specifying-context-with-beatgrouping.ly} @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {using-beatlength-and-beatgrouping.ly} @funindex subdivideBeams @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {sub-dividing-beams.ly} @cindex mesure et regroupements @cindex pulsation et regroupements @cindex groupement par pulsation @cindex mesure, subdivision @funindex autoBeamSettings @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle] {conducting-signs,-measure-grouping-signs.ly} @c [TODO: use \applyContext] Dans les métriques courantes, les ligatures automatiques peuvent commencer sur n'importe quelle note, mais ne peuvent se terminer qu'à certains points précis dans la mesure : sur une pulsation, ou après toute durée spécifiée par les propriétés nommées @code{autoBeamSettings}. Ces propriétés consistent en une liste de règles relatives au début ou à la fin des ligatures. Par défaut, elles sont définies dans le fichier @file{scm/@/auto@/-beam@/.scm}. On peut ajouter à cette liste une nouvelle règle, au moyen de la commande @example #(override-auto-beam-setting '(extrémité p q n m) a b [contexte]) @end example @itemize @bullet @item @code{extrémité} désigne le début (@code{begin}) ou la fin (@code{end}) de la ligature. @item @code{p/q} désigne la valeur rythmique de la note que l'on veut affecter, ou de la plus brève des notes concernées. Si cette règle doit s'appliquer à toutes les ligatures, remplacez @code{p} et @code{q} par des étoiles @qq{@code{*}}. @item @code{n/m} est le chiffre de mesure dans lequel la règle doit s'appliquer. Si celle-ci doit s'appliquer dans toutes les métriques, remplacez @code{n} et @code{m} par des étoiles @qq{@code{*}}. @item @code{a/b} est l'emplacement, dans la mesure, auquel les ligatures doivent débuter ou s'achever (suivant la valeur @q{extrémité} que nous venons de voir). @item @code{contexte} est un argument facultatif, qui détermine le contexte dans lequel la règle doit s'appliquer. Par défaut, il s'agit de @code{'Voice}. @code{#(score-override-auto-beam-setting '(A B C D) E F)} équivaut à @code{#(override-auto-beam-setting '(A B C D) E F 'Score)}. @end itemize Par exemple, si l'on veut que les ligatures s'achèvent toujours après la première noire : @example #(override-auto-beam-setting '(end * * * *) 1 4) @end example On peut obliger une règle de ligatures à ne s'appliquer qu'à des groupes dont la note la plus brève est d'une valeur précise : @lilypond[quote,fragment,ragged-right,verbatim,relative=2] \time 2/4 #(override-auto-beam-setting '(end 1 16 * *) 1 16) a16 a a a a a a a | a32 a a a a16 a a a a a | #(override-auto-beam-setting '(end 1 32 * *) 1 16) a32 a a a a16 a a a a a | @end lilypond On peut obliger une règle de ligatures à ne s'appliquer que pour un chiffre de mesure précis : @lilypond[quote,fragment,ragged-right,verbatim,relative=2] \time 5/8 #(override-auto-beam-setting '(end * * 5 8) 2 8) c8 c d d d \time 4/4 e8 e f f e e d d \time 5/8 c8 c d d d @end lilypond Enfin, on peut désactiver une règle de ligatures au moyen du réglage suivant : @example #(revert-auto-beam-setting '(extrémité p q n m) a b [contexte]) @end example @noindent @code{extrémité}, @code{p}, @code{q}, @code{n}, @code{m}, @code{a}, @code{b} et @code{contexte} étant les mêmes que plus haut. Il est même possible de désactiver des règles que l'on n'a pas explicitement créées : les règles par défaut, qui se trouvent dans le fichier @file{scm/@/auto@/-beam@/.scm}. @lilypond[quote,fragment,ragged-right,verbatim,relative=2] \time 4/4 a16 a a a a a a a a a a a a a a a #(revert-auto-beam-setting '(end 1 16 4 4) 1 4) a16 a a a a a a a a a a a a a a a @end lilypond La commande @code{revert-auto-beam-setting} requiert exactement les mêmes arguments que la règle d'origine. En d'autres termes, les étoiles ne seront pas prises en compte ici. @lilypond[quote,fragment,ragged-right,verbatim,relative=2] \time 1/4 #(override-auto-beam-setting '(end 1 16 1 4) 1 8) a16 a a a #(revert-auto-beam-setting '(end 1 16 * *) 1 8) % ceci ne désactive pas la règle ! a a a a #(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % ceci marche a a a a @end lilypond @c TODO: old material -- not covered by above stuff, I think. Si, dans une mesure à 5/4, l'on veut que les ligatures soient regroupées temps par temps, il est nécessaire d'indiquer toutes les terminaisons de ligatures. @example #(override-auto-beam-setting '(end * * * *) 1 4 'Staff) #(override-auto-beam-setting '(end * * * *) 1 2 'Staff) #(override-auto-beam-setting '(end * * * *) 3 4 'Staff) #(override-auto-beam-setting '(end * * * *) 5 4 'Staff) @dots{} @end example La même syntaxe peut servir à définir les points de départ des ligatures. Dans l'exemple suivant, les ligatures automatiques ne peuvent se terminer que sur une noire pointée. @example #(override-auto-beam-setting '(end * * * *) 3 8) #(override-auto-beam-setting '(end * * * *) 1 2) #(override-auto-beam-setting '(end * * * *) 7 8) @end example @c ???? Je n'y comprends rien --vv Dans une mesure à 4/4, cela implique que les ligatures ne peuvent se terminer que sur la troisième croche, ou sur le quatrième temps (après la valeur de deux fois trois croches). Si une ligature se fait de manière inattendue, pensez à vérifer les règles automatiques dans le fichier @file{scm/@/auto@/-beam@/.scm} pour rechercher d'éventuels conflits, dans la mesure ou les règles par défaut s'ajoutent à vos propres règles. Il est alors nécessaire de désactiver toute règle par défaut conduisant à des ligatures indésirables. Ainsi, pour obtenir des ligatures en groupes de @code{(3 4 3 2)} croches, dans une mesure à 12/8, il faudra préalablement utiliser : @example %%% annulons les réglages par défaut relatifs à 12/8, dans scm/auto-beam.scm #(revert-auto-beam-setting '(end * * 12 8) 3 8) #(revert-auto-beam-setting '(end * * 12 8) 3 4) #(revert-auto-beam-setting '(end * * 12 8) 9 8) %%% puis ajoutons nos propres règles #(override-auto-beam-setting '(end 1 8 12 8) 3 8) #(override-auto-beam-setting '(end 1 8 12 8) 7 8) #(override-auto-beam-setting '(end 1 8 12 8) 10 8) @end example @cindex ligatures automatiques @cindex groupes de notes @funindex autoBeaming @cindex paroles @commonprop Les groupes de notes reliées par les ligatures peuvent être spécifiés au moyen de la propriété @code{beatGrouping}. @lilypond[quote,verbatim,relative=2,fragment,ragged-right] \time 5/16 \set beatGrouping = #'(2 3) c8[^"(2+3)" c16 c8] \set beatGrouping = #'(3 2) c8[^"(3+2)" c16 c8] @end lilypond @knownissues Si une partition se termine alors qu'une ligature automatique est restée inachevée, cette dernière ligature ne sera pas imprimée du tout. C'est également valable dans le cas d'une musique polyphonique, saisie avec la syntaxe @code{<< @dots{} \\ @dots{} >>}, où une voix se terminerait sans que la dernière ligature soit achevée. @node Manual beams @unnumberedsubsubsec Manual beams @cindex groupements de note manuels @cindex ligatures manuelles @funindex ] @funindex [ Dans certaines situations, il peut s'avérer nécessaire de supplanter l'algorithme de groupement automatique des notes, par exemple pour prolonger une ligature par-dessus un silence ou une barre de mesure. Le début et la fin de la ligature sont alors indiqués par @code{[} et @code{]}. @lilypond[quote,ragged-right,fragment,relative=1,verbatim] { r4 r8[ g' a r8] r8 g[ | a] r8 } @end lilypond @commonprop @funindex stemLeftBeamCount @funindex stemRightBeamCount LilyPond peut déterminer automatiquement les sous-groupes à l'intérieur d'un groupement de notes, bien que le résultat ne soit pas toujours optimal. Les propriétés @code{stemLeftBeamCount} et @code{stemRightBeamCount} permettent alors d'ajuster ce comportement. Lorsque l'une ou l'autre de ces propriétés est définie, elle ne s'applique qu'une seule fois, après quoi sa définition est effacée. @lilypond[quote,ragged-right,fragment,relative=1,verbatim] { f8[ r16 f g a] f8[ r16 \set stemLeftBeamCount = #1 f g a] } @end lilypond La propriété @code{subdivideBeams} sert à grouper les double-croches ou les valeurs plus brèves pulsation par pulsation, la pulsation étant définie par la propriété @code{beatLength}. @lilypond[fragment,quote,relative=2,verbatim] c16[ c c c c c c c] \set subdivideBeams = ##t c16[ c c c c c c c] \set Score.beatLength = #(ly:make-moment 1 8) c16[ c c c c c c c] @end lilypond @funindex subdivideBeams @noindent Pour plus d'information sur @code{make-moment}, voir @ref{Time administration}. Lorsqu'une ligature franchit une barre de mesure, le saut de ligne est en principe interdit à cet endroit. Ce comportement peut être outrepassé en définissant @code{breakable}. @funindex breakable @node Feathered beams @unnumberedsubsubsec Feathered beams Les ligatures en soufflet s'obtiennent en définissant la propriété @code{grow-direction} d'une barre de ligature. La fonction @code{\featherDurations} sert à ajuster la durée des notes. @lilypond[ragged-right,relative=1,fragment,verbatim,quote] \override Beam #'grow-direction = #LEFT \featherDurations #(ly:make-moment 5 4) { c16[ c c c c c c] } @end lilypond @knownissues La commande @code{\featherDurations} ne permet de traiter que de très courts extraits. @node Bars @subsection Bars @menu * Bar lines:: * Bar numbers:: * Bar and bar number checks:: * Rehearsal marks:: @end menu @node Bar lines @unnumberedsubsubsec Bar lines @cindex barres de mesure @funindex \bar @cindex barres de reprise Les barres de mesures délimitent les mesures, mais peuvent aussi indiquer une reprise. En principe, elles sont insérées automatiquement, et les sauts de ligne ne peuvent avoir lieu qu'au niveau de ces barres. Il est possible de forcer l'impression d'une barre de mesure spéciale, avec la commande @code{\bar} : @lilypond[quote,ragged-right,relative=2,fragment,verbatim] c4 \bar "|:" c4 @end lilypond Les styles de barres de mesure disponibles sont @c @lilypondfile[ragged-right,quote]{bar-lines.ly} En plus de cela, on peut demander @code{"||:"}, qui équivaut à @code{"|:"}, mais qui donnera, en cas de saut de ligne, une double barre en fin de ligne, et une barre de reprise au début de la ligne suivante. Il est possible d'autoriser un saut de ligne même s'il n'y a pas de barre de mesure visible, en utilisant : @example \bar "" @end example @noindent Ceci insérera une barre de mesure invisible, et permettra de sauter de ligne à cet endroit, sans incrémenter le numéro de mesure. Dans une partition comprenant plusieurs portées, la commande @code{\bar} placée sur une portée s'applique automatiquement à toutes les portées. Les barres de mesure que l'on obtient alors sont d'un seul tenant sur les portées d'un @code{StaffGroup}, d'un @code{PianoStaff} ou d'un @code{GrandStaff}. @lilypond[quote,ragged-right,fragment,verbatim] << \new StaffGroup << \new Staff { e'4 d' \bar "||" f' e' } \new Staff { \clef bass c4 g e g } >> \new Staff { \clef bass c2 c2 } >> @end lilypond @commonprop @funindex whichBar @funindex repeatCommands @funindex defaultBarType La commande @code{\bar }@var{bartype} sert de raccourci pour @code{\set Timing.whichBar = }@var{bartype}. Dès que l'on définit @code{whichBar}, une barre de mesure est créée selon le style défini. Dès que la propriété @code{whichBar} est définie, une barre de mesure est créée. À chaque début de mesure, elle prend la valeur de @code{Timing.defaultBarType}. La valeur de @code{repeatCommands} sert à remplacer les barres de mesure par défaut. Nous vous invitons à utiliser @code{\repeat} pour indiquer les reprises. Voyez à ce sujet @ref{Repeats}. @seealso Dans ce manuel : @ref{Repeats}, @ref{Grouping staves}. Référence du programme : @rinternals{BarLine} (faisant partie du contexte @rinternals{Staff}), @rinternals{SpanBar} (sur plusieurs portées). @node Bar numbers @unnumberedsubsubsec Bar numbers @cindex Mesure, numéro de @cindex numéros de mesure @funindex currentBarNumber Les numéros de mesure sont imprimés par défaut à chaque début de ligne. Ce nombre est stocké par la propriété @code{currentBarNumber} qui sera mis à jour à chaque mesure. @lilypond[verbatim,ragged-right,quote,fragment,relative] \repeat unfold 4 {c4 c c c} \break \set Score.currentBarNumber = #50 \repeat unfold 4 {c4 c c c} @end lilypond L'impression d'un numéro de mesure ne peut intervenir que s'il y a une barre. Aussi, pour pouvoir le faire au début d'un morceau, devrez-vous ajouter une barre vide : @lilypond[verbatim,ragged-right,quote,fragment,relative] \set Score.currentBarNumber = #50 \bar "" \repeat unfold 4 {c4 c c c} \break \repeat unfold 4 {c4 c c c} @end lilypond Vous pouvez imprimer un numéro de mesure à intervalles réguliers plutôt qu'en tête de chaque ligne. C'est ce qu'illustre l'exemple suivant. @lilypond[verbatim,ragged-right,quote,fragment,relative] \override Score.BarNumber #'break-visibility = #'#(#f #t #t) \set Score.currentBarNumber = #11 \bar "" % Permit first bar number to be printed % Print a bar number every second measure \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2) c1 c c c c \break c c c c c @end lilypond Désactiver le graveur concerné --- @code{Bar_number_engraver} --- donnera une partition sans numéros de mesure. @lilypond[verbatim,ragged-right,quote] \layout { \context { \Score \remove "Bar_number_engraver" } } \relative c''{ c4 c c c \break c4 c c c } @end lilypond @seealso Référence du programme : @rinternals{BarNumber}. Exemples : @rlsr{Staff notation}. @knownissues Les numéros de mesure peuvent entrer en collision avec les crochets de @rinternals{StaffGroup}. La propriété @code{padding} --- décalage --- de l'objet @rinternals{BarNumber} permet alors d'ajuster leur positionnement. @node Bar and bar number checks @unnumberedsubsubsec Bar and bar number checks @cindex vérification des limites de mesure @cindex mesures, vérification des limites @funindex barCheckSynchronize @funindex | Les tests de limites de mesure (ou tests de mesure) aident à détecter les erreurs dans les durées. Un test de mesure s'écrit avec une barre verticale, @samp{|}. Lors du traitement, elle doit correspondre à une barre de mesure. Sinon, un avertissement est émis. Dans l'exemple suivant, le deuxième test de mesure signale une erreur. @example \time 3/4 c2 e4 | g2 | @end example Le test de mesure peut être aussi utilisé dans les paroles, par exemple : @example \lyricmode @{ \time 2/4 Twin -- kle | Twin -- kle @} @end example Des durées incorrectes font échouer les tests de mesure, et peuvent souvent mettre la partition sens dessus dessous, particulièrement s'il s'agit de musique polyphonique. Vérifier les tests de mesure qui ont échoué et les durées incorrectes est un bon moyen de commencer à corriger sa partition. @funindex | @funindex pipeSymbol Il est aussi possible d'attribuer une autre valeur au symbole @code{|}, en assignant une expression musicale à @code{pipeSymbol}, @lilypond[quote,ragged-right,verbatim] pipeSymbol = \bar "||" { c'2 c' | c'2 c' } @end lilypond Lorsque l'on recopie de longues pièces, il peut être utile de vérifier que les numéros de mesures de LilyPond correspondent à l'original que l'on recopie. Cela se fait avec @code{\barNumberCheck}. Par exemple, @verbatim \barNumberCheck #123 @end verbatim @noindent affiche un avertissement lors du traitement si le numéro de mesure à ce point (variable @code{currentBarNumber}) n'est pas 123. @node Rehearsal marks @unnumberedsubsubsec Rehearsal marks @cindex Repères, indication de @funindex \mark Indiquer un repère s'obtient grâce à la commande @code{\mark}. @lilypond[quote,ragged-right,fragment,verbatim,relative=2] c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default @end lilypond @noindent La lettre@tie{}@q{I} n'est pas utilisée, conformément aux usages de la gravure. Cependant, vous pourrez intégrer la lettre @q{I} en utilisant @example \set Score.markFormatter = #format-mark-alphabet @end example Lorsque vous utilisez @code{\mark \default}, le repère s'incrémente automatiquement ; toutefois donner un nombre en argument permet de spécifier manuellement le repère en question. La valeur à utiliser est enregistrée dans la propriété @code{rehearsalMark}. Le style du repère est déterminé par la propriété @code{markFormatter}. Il s'agit d'une fonction qui prend en arguments le repère en cours (un entier) ainsi que le contexte en cours, et retournera un objet de type étiquette. Dans l'exemple qui suit, @code{markFormatter} est réglé pour une procédure type. Quelques mesure plus loin, son comportement est modifié pour imprimer un repère encadré. @lilypond[fragment,quote,ragged-right,verbatim,relative=2] \set Score.markFormatter = #format-mark-numbers c1 \mark \default c1 \mark \default \set Score.markFormatter = #format-mark-box-numbers c1 \mark \default c1 \mark \default c1 @end lilypond Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les définitions de @code{format-mark-numbers} (comportement par défaut), @code{format-mark-box-numbers}, @code{format-mark-letters} et @code{format-mark-box-letters}. Vous pouvez vous en inspirer pour d'autres fonctions de formatage. @code{format-mark-barnumbers}, @code{format-mark-box-barnumbers} et @code{format-mark-circle-barnumbers} permettent d'imprimer le numéro de mesure au lieu des compteurs alphabétique ou numérique. On peut aussi spécifier manuellement une marque de repère : @example \mark "A1" @end example @noindent @code{Score.markFormatter} sera sans effet sur des repères ainsi définis. Un @code{\markup} peut néanmoins s'utiliser en argument. @example \mark \markup@{ \box A1 @} @end example @cindex segno @cindex coda @cindex D.S al Fine Un @code{\mark} peut contenir un glype musical tel que le signe @emph{segno}. @lilypond[fragment,quote,ragged-right,verbatim,relative] c1 \mark \markup { \musicglyph #"scripts.segno" } c1 \mark \markup { \musicglyph #"scripts.coda" } c1 \mark \markup { \musicglyph #"scripts.ufermata" } c1 @end lilypond @noindent Pour connaître les différents symboles accessibles par @code{\musicglyph}, consultez @ref{The Feta font}. Pour affiner le positionnement des repères, veuillez vous référer à @ref{Text marks}. @seealso Dans ce manuel : @ref{Text marks}. Référence du programme : @rinternals{RehearsalMark}. Fichiers d'initialisation : @file{scm/@/translation@/-functions@/.scm} contient les définitions de @code{format-mark-numbers} et @code{format-mark-letters}. Elles seront source d'inspiration pour d'autres fonctions de formatage. Exemples : @rlsr{Rhythms}, @rlsr{Expressive marks}. @node Special rhythmic concerns @subsection Special rhythmic concerns @menu * Grace notes:: * Aligning to cadenzas:: * Time administration:: @end menu @node Grace notes @unnumberedsubsubsec Grace notes @funindex \grace @cindex ornements @cindex notes d'ornement @cindex appoggiature @cindex accacciature @cindex petite note Les petites notes sont des ornements entièrement écrits. Les plus courantes sont les accacciatures, qui doivent se jouer très vite, et qui s'écrivent sous forme d'une petite note barrée (sur la hampe) et liée. L'appoggiature est une petite note non barrée, qui vole une fraction à la durée de la note réelle qui la suit. Ces petites notes sont entrées avec les commandes @code{\acciaccatura} et @code{\appoggiatura}, comme le montre l'exemple suivant : @lilypond[quote,ragged-right,relative=2,verbatim,fragment] b4 \acciaccatura d8 c4 \appoggiatura e8 d4 \acciaccatura { g16[ f] } e4 @end lilypond Ce sont là deux formes spéciales de la commande @code{\grace}, qui prend en charge toutes les petites notes. Si on la fait suivre d'une expression musicale, un groupe de petites notes sera créé, sans impact sur la métrique. @lilypond[quote,ragged-right,relative=2,verbatim,fragment] c4 \grace c16 c4 \grace { c16[ d16] } c2 c4 @end lilypond @noindent Contrairement à @code{\acciaccatura} ou @code{\appoggiatura}, la commande @code{\grace} ne provoque pas de liaison. La durée des petites notes est interprétée par le programme en fonction d'un deuxième compteur de temps, le chronomètre @code{grace}. Chaque instant est défini par deux nombres rationnels : le premier compte les durées réelles, le second compte la durée des petites notes. Reprenons l'exemple ci-dessus en y ajoutant ces couples de nombres : @lilypond[quote,ragged-right] << \relative c''{ c4 \grace c16 c4 \grace { c16[ d16] } c2 c4 } \new Lyrics \lyricmode { \override LyricText #'font-family = #'typewriter \markup { (0,0) } 4 \grace { \markup { ( \fraction 1 4 , \fraction -1 16 ) } 16 } \markup { (\fraction 1 4 , 0 ) } 4 \grace { \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16 \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16 } \markup { ( \fraction 2 4 , 0 ) } } >> @end lilypond Les petites notes se placent de façon synchrone entre les différentes portées. Dans l'exemple suivant, il y a deux petites double-croches pour chaque petite croche. @lilypond[quote,ragged-right,relative=2,verbatim,fragment] << \new Staff { e4 \grace { c16[ d e f] } e4 } \new Staff { c4 \grace { g8[ b] } c4 } >> @end lilypond @funindex \afterGrace La commande @code{\afterGrace} sert à placer une petite note après une note réelle --- et non @emph{avant} comme d'ordinaire. Cette commande requiert deux arguments : la note réelle, et la ou les petites notes qui suivent. @lilypond[ragged-right, verbatim,relative=2,fragment] c1 \afterGrace d1 { c16[ d] } c4 @end lilypond Les petites notes se placent alors aux 3/4 de la durée de la note réelle. Cette fraction peut être changée en définissant @code{afterGraceFraction} ; ainsi, @example #(define afterGraceFraction (cons 7 8)) @end example @noindent placera la petite note à 7/8 de la note réelle. On peut obtenir le même effet manuellement, de la façon suivante : @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Voice { << { d1^\trill_( } { s2 \grace { c16[ d] } } >> c4) } @end lilypond @noindent Le silence invisible peut être plus ou moins long --- ici c'est une demi-pause --- afin d'ajuster l'espace entre la note réelle et les petites notes. Les expressions @code{\grace} obéissent à des règles typographiques particulières, notamment pour régler l'orientation et la taille des objets. De ce fait, toute subtilité de mise en forme devra être indiquée @emph{à l'intérieur} de l'expression introduite par @code{\grace} : @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Voice { \acciaccatura { \stemDown f16-> \stemNeutral } g4 } @end lilypond @noindent Tous les réglages ajoutés doivent également être désactivés dans cette même expression. Il est possible de changer globalement la mise en forme des petites notes dans un morceau, au moyen de la fonction @code{add-grace-property}. Ici, par exemple, on ôte la définition de l'orientation des objets @code{Stem} pour toutes les petites notes, afin que les hampes ne soient pas toujours orientées vers le haut. @example \new Staff @{ #(add-grace-property 'Voice 'Stem 'direction '()) @dots{} @} @end example @noindent Il est par ailleurs possible de modifier les variables @code{startGraceMusic}, @code{stopGraceMusic}, @code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic}, @code{startAppoggiaturaMusic}, et @code{stopAppoggiaturaMusic}. Pour plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}. @noindent Le trait que l'on trouve sur les hampes des accacciatures peut être appliqué dans d'autres situations en définissant @* @code{\override Stem #'stroke-style = #"grace"}. @commonprop Il est possible de forcer l'élasticité de l'espacement des notes d'agrément. @lilypond[verbatim,quote,relative=2] << \override Score.SpacingSpanner #'strict-grace-spacing = ##t \new Staff { c4 \afterGrace c4 { c16[ c8 c16] } c4 r } \new Staff { c16 c c c c c c c c4 r } >> @end lilypond @seealso Référence du programme : @rinternals{GraceMusic}. @knownissues Une partition commençant par une expression @code{\grace} doit faire intervenir la commande @code{\new Voice}, sans quoi la note réelle et la petite note se retrouveront sur des portées différentes. La synchronisation des petites notes se fait de façon parfois surprenante, car les autres objets de la portée --- barres de mesure, armures, etc. --- sont eux aussi synchrones. Pensez-y lorsque vous mélez des portées comprenant des petites notes et d'autres sans : @lilypond[quote,ragged-right,relative=2,verbatim,fragment] << \new Staff { e4 \bar "|:" \grace c16 d4 } \new Staff { c4 \bar "|:" d4 } >> @end lilypond @noindent Il est possible de remédier à cela en insérant sur les autres portées des silences invisibles dans une expression précédée de @code{\grace}, correspondant à la durée des petites notes. @lilypond[quote,ragged-right,relative=2,verbatim,fragment] << \new Staff { e4 \bar "|:" \grace c16 d4 } \new Staff { c4 \bar "|:" \grace s16 d4 } >> @end lilypond Seules des expressions musicales séquentielles peuvent être utilisées pour des petites notes ; il n'est pas possible d'imbriquer ni de juxtaposer des sections de petites notes, faute de quoi le traitement du code peut échouer ou produire des erreurs. @node Aligning to cadenzas @unnumberedsubsubsec Aligning to cadenzas @cindex cadenza @cindex cadence @cindex cadence et alignement @cindex alignnement et cadence Dans un contexte orchestral, une cadence constitue un problème spécifique. Lors du montage d'une partition contenant une cadence, tous les autres instruments doivent sauter autant de notes que ce qu'en comporte la cadence, faute de quoi il démarreraient trop tôt ou trop tard. Les fonctions @code{mmrest-of-length} ou @code{skip-of-length} permettent de résoudre ce problème. Ces fonctions Scheme prennent en argument un fragment de musique, et génèrent un @code{\skip} ou un silence multi-mesures d'une durée correspondant à ce fragment. @lilypond[verbatim,quote] MyCadenza = \relative c' { c4 d8 e f g g4 f2 g4 g } \new GrandStaff << \new Staff { \MyCadenza c'1 \MyCadenza c'1 } \new Staff { #(ly:export (mmrest-of-length MyCadenza)) c'1 #(ly:export (skip-of-length MyCadenza)) c'1 } >> @end lilypond @seealso Glossaire musicologique : @rglos{cadenza}. Morceaux choisis : @rlsr{Rhythms}. @node Time administration @unnumberedsubsubsec Time administration @cindex temps, gestion du @cindex musique non mesurée @cindex non mesurée, musique @funindex currentBarNumber @funindex measurePosition @funindex measureLength Le temps est administré par le @code{Timing_translaator}, qui réside en principe dans le contexte @code{Score}. Un alias, @code{Timing}, sera ajouté au contexte auquel il est rattaché. @code{Timing} dispose des propriétés suivantes afin de garder trace du minutage de la partition. @cindex numéro de mesure @cindex mesure, numéro de @table @code @item currentBarNumber Le numéro de la mesure en cours. Un exemple d'utilisation se trouve au chapitre @ref{Bar numbers}. @item measureLength La longueur de la mesure, dans la métrique en cours. Pour une mesure à 4/4, elle est de@tie{}1, et de 3/4 pour une mesure à 6/8. Sa valeur détermine où peut s'insérer une barre et comment seront générées les ligatures automatiques. @item measurePosition Le moment où l'on en est dans la mesure en cours. Cette quantité est remise à@tie{}0 dès lors qu'on dépasse @code{measureLength} ; la variable @code{currentBarNumber} est alors incrémentée. @item timing Lorsqu'on lui assigne la valeur @emph{vrai}, les valeurs ci-dessus mentionnées sont mises à jour à chaque pas. Fixée à @emph{faux}, le graveur restera indéfiniment dans la mesure en cours. @end table Le calage peut être modifié en réglant explicitement l'une de ces variables. Dans l'exemple qui suit, nous réglons la métrique à 4/4, tout en fixant @code{measureLength} à 5/4. Arrivé à 4/8 dans la troisième mesure, nous avançons de 1/8, en assignant 5/8 à @code{measurePosition}, racourcissant donc cette mesure d'une croche. La barre de mesure suivante tombera donc à 9/8 et non à 5/8. @lilypond[quote,verbatim,relative=1] \set Score.measureLength = #(ly:make-moment 5 4) c1 c4 c1 c4 c4 c4 \set Score.measurePosition = #(ly:make-moment 5 8) b4 b4 b8 c4 c1 @end lilypond @noindent Comme le montre cet exemple, @code{ly:make-moment n m} construit une durée de n/m fois une ronde. Par conséquent, @code{ly:make-moment 1 8} correspond à une croche, et @code{ly:make-moment 7 16} à la durée de sept doubles croches. @seealso This manual: @ref{Bar numbers}, @ref{Unmetered music} Morceaux choisis : @rlsr{Rhythms}. Références internes : @rinternals{Timing_translator}, @rinternals{Score}