[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Répétitions et reprises ] | [ Up : Répétitions et reprises ] | [ Répétitions explicites > ] |
1.4.1 Répétition d’un long passage
Cette section présente la syntaxe des répétitions longues.
Répétitions explicites | ||
Répétitions simples | ||
Fins alternatives | ||
Autres aspects des fragments répétés | ||
Barre de segno | ||
Indications de reprise manuelles |
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Répétition d'un long passage ] | [ Up : Répétition d'un long passage ] | [ Répétitions simples > ] |
Répétitions explicites
Adjoindre à la commande \repeat
l’opion unfold
permet de
s’affranchir de ressaisir de la musique répétitive. La syntaxe est
identique à celle de la commande \repeat volta
abordée plus
avant.
Aux fins d’éviter les redites, l’expansion n’est ici pas abordée en
détail. Certains exemples des paragraphes qui suivent illustrent
cependant des fonctionnalités à la fois des formes volta
et
unfold
ainsi que de la commande \unfoldRepeats
qui permet
de convertir la forme volta
en une forme unfold
. Un autre
sujet d’intérêt de la commande unfoldRepeats
est abordé dans
Gestion des répétitions en MIDI.
Dans certains cas, et tout particulièrement dans un contexte
\relative
, la fonction \repeat unfold
ne revient pas à
écrire littéralement la même expression musicale plusieurs fois.
Ainsi :
\repeat unfold 2 { a'4 b c }
introduit un saut d’octave, contrairement à
a'4 b c | a'4 b c |
Vous pouvez facilement imbriquer plusieurs fonctions \repeat
unfold
, ce qui n’est pas aussi simple avec \repeat volta
.
Note : L’insertion d’un relative
dans une section
repeat
sans déclaration explicite du contexte Voice
génèrera une portée supplémentaire – voir
Apparition d'une portée supplémentaire.
Voir aussi
Morceaux choisis : Répétitions.
Référence des propriétés internes : RepeatedMusic, UnfoldedRepeatedMusic.
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Répétitions explicites ] | [ Up : Répétition d'un long passage ] | [ Fins alternatives > ] |
Répétitions simples
Les reprises courantes, sans alternative, s’indiquent comme ceci :
\repeat volta nombre_de_fois expression_musicale
où expression_musicale
représente ce qui doît être répété.
\fixed c'' { \repeat volta 2 { c2 f } R1 \repeat volta 2 { g2 c } }
Aucun « début » de reprise n’est indiqué par défaut pour la première
mesure d’un morceau. Vous pouvez cependant ajouter une barre de reprise
avec un \bar ".|:"
avant la première note.
\fixed c'' { \repeat volta 2 { \bar ".|:" c2 f } }
Lorsqu’une reprise sans fin alternative débute au milieu d’une mesure,
elle devrait se terminer aussi au milieu d’une mesure, de telle sorte
que les mesures soient complètes. En pareil cas, les indications de
reprise ne constituent pas des barres de mesure à proprement parler ; il
n’est donc pas nécessaire de faire appel à la commande \partial
ou à des contrôles d’intégrité de mesure. Le recours à l’instruction
\partial
est toutefois nécessaire lorsque la reprise est au début
d’une pièce commençant par une levée afin de respecter cette entame.
\fixed c'' { \partial 4 \repeat volta 2 { c4 c2 d g4 g g } \repeat volta 2 { e4 f2 g c2. } }
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Répétitions simples ] | [ Up : Répétition d'un long passage ] | [ Autres aspects des fragments répétés > ] |
Fins alternatives
Une répétition avec fins alternatives s’indique ainsi :
\repeat volta nombre_de_fois expression_musicale \alternative { \volta liste_de_nombres expression_musicale \volta liste_de_nombres expression_musicale … }
où liste_de_nombres est une liste de nombres, séparés par des virgules, indiquant les occurrences à répéter, de 1 à nombre_de_fois.
\fixed c'' { \repeat volta 6 { c4 d e f } \alternative { \volta 1,2,3 { c2 e } \volta 4,5 { f2 d } \volta 6 { e2 f } } c1 }
Si l’on donne trop peu d’alternatives en regard du nombre de fois où le passage doit être rejoué, la première alternative sera jouée plusieurs fois.
Note : Tout élément inclus dans un bloc alternative
sera
traîté en tant qu’alternative. Quelque chose d’aussi simple qu’un
contrôle de mesure placé du mauvais côté d’une accolade peut générer des
résultats inattendus.
Note : Une clause relative
ne doit jamais se trouver à
l’intérieur d’une section repeat
: vous aurez
immanquablement des portées parasites. Voir
Apparition d'une portée supplémentaire.
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Fins alternatives ] | [ Up : Répétition d'un long passage ] | [ Barre de segno > ] |
Autres aspects des fragments répétés
Un bloc \alternative
peut prendre place à l’intérieur d’un bloc
\repeat
afin de produire une notation comparable à des
alternatives. Il ne saurait toutefois s’utiliser ainsi pour signifier
les alternatives réelles – voir Fins alternatives.
\fixed c'' { \repeat volta 2 { R1 \alternative { \volta 1 { c1 } \volta 2 { d1 } } R1 } }
La présence d’une commande \volta
n’est pas réservée aux blocs
\alternative
. Elle peut s’utiliser n’importe où dans un bloc
\repeat
pour désigner un fragment qui concerne des reprises
particulières. Si le fragment spécifique à une reprise a une durée,
celle-ci sera par défaut imprimée sous un crochet comme s’il s’agissait
d’un bloc \alternative
; ce crochet peut être effacé – voir
Visibilité des objets – ou personnalisé pour répondre au besoin.
Lorsqu’un bloc \repeat
est expansé, le fragment spécifique à une
occurrence sera omis pour toutes celles auxquelles il ne s’applique pas.
Fournir une liste Scheme vide au lieu du nombre de fois supprime
carrément la musique.
music = \repeat volta 3 { \volta 1 { s1*0_\markup { \italic dolce } } a''1 \volta #'() { \mark "3×" } } \new Score { \music } \new Score { \unfoldRepeats \music }
Lorsqu’un bloc \repeat
est expansé, il peut être souhaitable de
non seulement filtrer les fragments spécifiques, mais aussi d’ajouter de
la musique qui serait absente de la forme \volta
. La commande
\unfolded
permet de désigner la musique qui sera ignorée jusqu’à
l’expansion du bloc \repeat
qui la contient.
music = \fixed c' { \repeat volta 2 { c1 \once \override Score.VoltaBracket.text = "1st time only" \once \override Score.VoltaBracket.font-name = "TeX Gyre Schola" << \volta 1 { g4 g g g } \volta 2 { \unfolded { R1 } } >> c'1 \volta 2 { \unfolded { \bar "|." } } } } \new Score { \music } \new Score { \unfoldRepeats \music }
Note : Les commandes volta
et unfolded
fontionnent en
respectant la répétition la plus imbriquée qui les entoure.
Barre de segno
La commande \inStaffSegno
permet de générer une barre de mesure
composite par l’adjonction d’un symbole de segno à une barre de
reprise créée par une commande \repeat volta
. Qu’il s’agisse d’un
début, d’une fin ou d’une double reprise, le type de barre est
automatiquement sélectionné. L’indication « D.S. » devra cependant être
ajouté manuellement.
En dehors de toute reprise :
\relative { e'1 \inStaffSegno f2 g a b c1_"D.S." \bar "|." }
Au début d’une reprise :
\relative { e'1 \repeat volta 2 { \inStaffSegno % start repeat f2 g a b } c1_"D.S." \bar "|." }
En fin de reprise :
\relative { e'1 \repeat volta 2 { f2 g a b \inStaffSegno % end repeat } f2 g a b c1_"D.S." \bar "|." }
Entre deux reprises :
\relative { e'1 \repeat volta 2 { f2 g a b } \inStaffSegno % double repeat \repeat volta 2 { f2 g a b } c1_"D.S." \bar "|." }
Des symboles alternatifs de barre de mesure sont aussi accessibles, dans
un contexte Score
, à l’aide des propriétés segnoType
,
startRepeatSegnoType
, endRepeatSegnoType
ou
doubleRepeatSegnoType
selon les besoins. Ces types de barre
alternative doivent être choisis parmi les types prédéfinis ou
préalablement créés à l’aide d’une commande \defineBarLine
–
voir Barres de mesure.
\defineBarLine ":|.S[" #'(":|." "S[" "") \defineBarLine "]" #'("]" "" "") \relative { e'1 \repeat volta 2 { f2 g a b \once \set Score.endRepeatSegnoType = ":|.S[" \inStaffSegno } f2 g \bar "]" a b c1_"D.S." \bar "|." }
Morceaux choisis
Diminution de la taille du crochet d’alternative
Les crochets indiquant les fins alternatives s’étalent tout au long de
celles-ci. On peut les raccourcir en jouant sur la propriété
voltaSpannerDuration
. Dans l’exemple suivant, le crochet ne se
prolonge que sur une mesure à 3/4.
\relative c'' { \time 3/4 c4 c c \set Score.voltaSpannerDuration = #(ly:make-moment 3/4) \repeat volta 5 { d4 d d } \alternative { { e4 e e f4 f f } { g4 g g } } }
Ajout du crochet de reprise à d’autres portées
D’ordinaire, le graveur Volta_engraver
réside dans le contexte
Score
; les crochets précédant une reprise s’impriment donc
seulement au-dessus de la portée du haut. On peut ajuster cela en
déplaçant ce graveur vers les contextes de portée (Staff
) qui
doivent comporter ces crochets.
<< \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } >>
Succession de reprises et style de barre par défaut
LilyPond dispose de trois différents styles de barre pour indiquer une
succession de reprises. Vous devez opter pour un style par défaut, à
l’aide de la propriété doubleRepeatType
.
\relative c'' { \repeat volta 1 { c1 } \set Score.doubleRepeatType = #":..:" \repeat volta 1 { c1 } \set Score.doubleRepeatType = #":|.|:" \repeat volta 1 { c1 } \set Score.doubleRepeatType = #":|.:" \repeat volta 1 { c1 } }
Numérotation des mesures et alternatives
Deux méthodes alternatives vous permettent de gérer la numérotation des mesures en cas de reprises.
\relative c'{ \set Score.alternativeNumberingStyle = #'numbers \repeat volta 3 { c4 d e f | } \alternative { { c4 d e f | c2 d \break } { f4 g a b | f4 g a b | f2 a | \break } { c4 d e f | c2 d } } c1 \break \set Score.alternativeNumberingStyle = #'numbers-with-letters \repeat volta 3 { c,4 d e f | } \alternative { { c4 d e f | c2 d \break } { f4 g a b | f4 g a b | f2 a | \break } { c4 d e f | c2 d } } c1 }
Voir aussi
Glossaire musicologique : répétition, volta.
Manuel de notation : Barres de mesure, Gestion du temps, Modification des greffons de contexte, Modification des liaisons.
Fichiers d’initialisation : ‘ly/engraver-init.ly’.
Morceaux choisis : Répétitions.
Référence des propriétés internes : VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.
Problèmes connus et avertissements
L’extension d’une liaison, dans la forme \volta
, n’est possible
que pour la première alternative. Selon le même principe, une liaison ne
saurait partir de la fin d’une alternative pour se terminer au début de
la reprise.
L’aspect visuel d’une liaison se continuant dans les autres
alternatives, peut être simulé à l’aide de la commande \repeatTie
lorsqu’elle s’arrête sur sa première note – méthode qui cependant ne
fonctionne pas pour un TabStaff
; see Tenue et reprise.
D’autres moyens existent pour indiquer la prolongation d’une liaison sur
des alternatives, y compris dans un TabStaff
, en suivant les
préceptes donnés à la rubrique Modification des liaisons.
L’aspect visuel d’un glissando se continuant dans les autres alternatives peut être simulé à l’aide d’un glissando partant d’une note d’ornement supplémentaire et masquée. Un exemple se trouve à la rubrique See Rappel du glissando à l’occasion d’une alternative.
Le développement, à l’aide de la commande \unfoldRepeats
, d’une
répétition qui commence sur une mesure incomplète et contient un bloc
alternative
avec modification de la propriété
measureLength
entraînera des messages d’erreur concernant le
placement des barres de mesure.
Des reprises imbriquées telles que
\repeat … \repeat … \alternative
présentent une ambiguïté, dans la mesure où l’on ne sait à quelle
section \repeat
attribuer la section \alternative
. Pour
résoudre cette ambiguïté, il convient de toujours insérer la commande
\alternative
à l’intérieur de la section \repeat
. Il est
préférable, dans une telle situation, d’utiliser des accolades pour plus
de clarté.
Un bloc \alternative
clôturé à l’intérieur même du bloc
\repeat
– plutôt que venant après – ne produira pas les barres
de reprise attendues à la fin des alternatives.
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Barre de segno ] | [ Up : Répétition d'un long passage ] | [ Autres types de répétition > ] |
Indications de reprise manuelles
Note : Les méthodes présentées dans les lignes qui suivent ne
devraient servir à indiquer que des constructions de répétition
inhabituelles. En règle générale, il vaut mieux recourir à la fonction
repeat
pour créer une reprise ou bien insérer la barre de mesure
adéquate. Pour plus d’information, voir le chapitre
Barres de mesure.
La propriété repeatCommands
sert à contrôler la mise en forme des
reprises. On la définit par une suite de commandes de reprise Scheme.
start-repeat
Pour imprimer une barre de reprise
.|:
\relative { c''1 \set Score.repeatCommands = #'(start-repeat) d4 e f g c1 }
Traditionnellement, on n’imprime pas de signe de reprise en début de morceau.
end-repeat
Pour imprimer une barre de reprise
:|.
\relative { c''1 d4 e f g \set Score.repeatCommands = #'(end-repeat) c1 }
(volta nombre) … (volta #f)
Pour obtenir un crochet indiquant le numéro de l’alternative. Pour que le crochet s’imprime effectivement, il faut spécifier explicitement l’endroit où il doit se terminer.
\relative { f''4 g a b \set Score.repeatCommands = #'((volta "2")) g4 a g a \set Score.repeatCommands = #'((volta #f)) c1 }
Plusieurs commandes de reprise peuvent intervenir au même moment :
\relative { f''4 g a b \set Score.repeatCommands = #'((volta "2, 5") end-repeat) g4 a g a c1 \set Score.repeatCommands = #'((volta #f) (volta "95") end-repeat) b1 \set Score.repeatCommands = #'((volta #f)) }
Le crochet indiquant une alternative peut contenir aussi du texte. Il peut s’agir d’un ou plusieurs nombres ou bien d’une indication textuelle (markup) – voir Mise en forme du texte. Le plus simple, dans le cas d’une indication textuelle, est de tout d’abord définir ce markup, puis de l’inclure dans une liste Scheme.
voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } } \relative { c''1 \set Score.repeatCommands = #(list(list 'volta voltaAdLib) 'start-repeat) c4 b d e \set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat) f1 \set Score.repeatCommands = #'((volta #f)) }
Voir aussi
Manuel de notation : Barres de mesure, Mise en forme du texte.
Morceaux choisis : Répétitions.
Référence des propriétés internes : VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.
[ << Notation musicale générale ] | [Top][Contents][Index] | [ Notation spécialisée >> ] |
[ < Barre de segno ] | [ Up : Répétition d'un long passage ] | [ Autres types de répétition > ] |