GNU LilyPond – Manuel de notation : 1.2.3 Displaying rhythms
Description: GNU LilyPond – Manuel de notation: 1.2.3 Displaying rhythms
Keywords: GNU LilyPond – Manuel de notation: 1.2.3 Displaying rhythms

### 1.2.3 Displaying rhythms

#### Time signature

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.

Le chiffre de mesure est réglé par la commande `\time`.

>     \time 2/4 c'2 \time 3/4 c'2.

#### Commonly tweaked properties

Le symbole imprimé peut être modifié avec la propriété `style`. En la réglant sur `#'()`, une fraction sera utilisée pour les chiffres de mesure 4/4 et 2/2.

>     \time 4/4 c'1
>     \time 2/2 c'1
>     \override Staff.TimeSignature #'style = #'()
>     \time 4/4 c'1
>     \time 2/2 c'1

Il y a bien d’autres options pour sa mise en place. Voir Ancient time signatures pour plus d’exemples.

`\time` définit les propriétés `timeSignatureFraction`, `beatLength` et `measureLength` dans le contexte `Timing`, qui en principe est assimilé à Score. La propriété `measureLength` détermine où des barres de mesure doivent être insérées, et comment les groupements de notes doivent être gérés. La modification de la valeur de `timeSignatureFraction` donne également lieu à l’impression d’un symbole.

Plus d’options sont accessibles au moyen de la fonction Scheme `set-time-signature`. De concert avec le Measure_grouping_engraver, elle crée les signes de MeasureGrouping, qui facilitent la lecture de musiques modernes, complexes rythmiquement. Dans l’exemple suivant, les mesures à 9/8 sont subdivisées en `(2 2 2 3)`, ce qui est donné comme argument à la commande `set-time-signature`, en troisième position.

>     \score {
>       \relative c'' {
>         #(set-time-signature 9 8 '(2 2 2 3))
>         g8[ g] d[ d] g[ g] a8[( bes g]) |
>         #(set-time-signature 5 8 '(3 2))
>         a4. g4
>       }
>       \layout {
>         \context {
>           \Staff
>           \consists "Measure_grouping_engraver"
>         }
>       }
>     }

#### See also

Référence du programme : TimeSignature et Timing_translator.

Exemples : Rhythms.

#### Known issues and warnings

Le groupement automatique des ligatures n’utilise pas les groupements spécifiés par `set-time-signature`.

#### Upbeats

Les mesures incomplètes, telles que les anacrouses ou levées, doivent être entrées avec la commande

>     \partial 16*5 c16 cis d dis e | a2. c,4 | b2

La syntaxe de cette commande est

>     \partial durée

`durée` étant la valeur rythmique devant être ajoutée avant la mesure suivante.

Le programme traduit cette commande en

>     \set Timing.measurePosition = -durée

La propriété `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 ; `\partial 4` signifie, pour le programme : « Dans cette mesure, il reste juste une noire ».

#### Known issues and warnings

Cette commande ne prend pas en compte les notes d’ornement ou appoggiatures au début de la musique. Lorsqu’un morceau commence par une levée et avec des petites notes, la commande `\partial` devrait être placée après celles-ci.

>     \grace f16
>     \partial 4
>     g4
>     a2 g2

`\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.

#### Unmetered music

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 `\cadenzaOn` et `\cadenzaOff` permettent de désactiver et de rétablir la métrique automatique.

>     c4 d e d
>     \cadenzaOn
>     c4 c d8 d d f4 g4.
>     \cadenzaOff
>     \bar "|"
>     d4 e d c

#### Known issues and warnings

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, pour indiquer à quels endroit un saut de ligne peut intervenir.

>     \bar ""

#### Polymetric notation

LilyPond ne gère pas les métriques composites de manière explicite, mais on peut contourner ce problème. Dans l’exemple suivant, l’indicateur de métrique est obtenu grâce à une étiquette textuelle. Cette étiquette vient s’insérer dans l’objet graphique (grob) TimeSignature.

    % Create 9/8 split into 2/4 + 5/8
    tsMarkup = \markup {
      \override #'(baseline-skip . 2) \number {
        \column { "2" "4" }
        \vcenter "+"
        \bracket \column { "5" "8" }
      }
    }

    {
      \override Staff.TimeSignature #'stencil =
        #ly:text-interface::print
      \override Staff.TimeSignature #'text = #tsMarkup
      \time 9/8
      c'2 \bar ":" c'4 c'4.
      c'2 \bar ":" c'4 c'4.
    }

Compound time signatures

Odd 20th century time signatures (such as "5/8") can often be played as compound time signatures (e.g. "3/8 + 2/8"), which combine two or more inequal metrics. LilyPond can make such music quite easy to read and play, by explicitly printing the compound time signatures and adapting the automatic beaming behavior. (Graphic measure grouping indications can also be added; see the appropriate snippet in this database.)

>     #(define ((compound-time one two num) grob)
>       (grob-interpret-markup grob
>         (markup #:override '(baseline-skip . 0) #:number
>           (#:line (
>               (#:column (one num))
>               #:vcenter "+"
>               (#:column (two num)))))))

>     \relative c' {
>       \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8")
>       \time 5/8
>       #(override-auto-beam-setting '(end 1 8 5 8) 1 4)
>       c8 d e fis gis
>       c8 fis, gis e d
>       c8 d e4 gis8
>     }

Il arrive aussi que chaque portée ait sa propre métrique. Vous y parviendrez en déplaçant le Timing_translator dans le contexte Staff.

>     \layout {
>       \context { \Score
>          \remove "Timing_translator"
>          \remove "Default_bar_line_engraver"
>       }
>       \context {
>         \Staff
>         \consists "Timing_translator"
>         \consists "Default_bar_line_engraver"
>       }

>     }

Maintenant, chacune des portées dispose de sa propre métrique.

>     <<
>       \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
>       }
>     >>

Une autre forme de notation polymétrique consiste dans le fait que des notes aient une durée relative différente selon la portée.

Vous pouvez créer une telle notation en définissant une métrique commune à toutes les portées, que vous proratiserez manuellement selon le cas en utilisant `timeSignatureFraction` pour obtenir la division adéquate pour chaque portée. Les durées, dans chacune des portées, seront alors échelonnées par rapport à la métrique commune. L’échelle de représentation se règle avec `\scaleDurations` — qui fonctionne comme `\times`, sans toutefois créer de crochet. La syntaxe appropriée est :

>     \scaleDurations #'(numérateur . dénominateur) exprmusicale

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 2/3 * 9/8 = 3/4 ; pour la troisième, elles sont multipliées par 3/5, de telle sorte que 3/5 * 10/8 = 3/4.

>     \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
>         }
>       }
>     >> }

#### See also

Exemples : Rhythms.

#### Known issues and warnings

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.

#### Automatic note splitting

On peut convertir automatiquement les notes longues en notes liées. Il faut pour cela remplacer le graveur Note_heads_engraver par le graveur Completion_heads_engraver. Dans les exemples suivants, les notes dépassant de la mesure sont divisées et liées.

    \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
    }

Ce graveur divise toutes les notes qui sortent de la mesure, et insère des liaisons de prolongation. Une utilisation posible consiste à 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.

Si vous voulez permettre un saut de ligne aux barres de mesure où Completion_heads_engraver divise les notes, vous devez aussi enlever Forbid_line_break_engraver.

#### Known issues and warnings

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 n’insèrera pas de nolets.

`Completion_heads_engraver` affecte seulement les notes, il ne divise pas les silences.

#### See also

Référence du programme : Completion_heads_engraver.

#### Showing melody rhythms

Au moyen d’une portée rythmique – ‘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.

>     \new RhythmicStaff {
>       \time 4/4
>       c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
>     }

#### See also

Référence du programme : RhythmicStaff.

Other languages: English, español, deutsch.

#### Manuel de notation