Referència de la notació del GNU LilyPond: 1.4.1 Repeticions llargues

### 1.4.1 Repeticions llargues

Aquesta secció tracta sobre la forma d’introduir repeticions llargues, normalment de diversos compassos. Les repeticions adopten dues formes: repeticions envoltades entre signes de repetició, o repeticions explícites, que s’usen per escriure música repetitiva. També es poden controlar manualment els signes de repetició.

#### Repeticions normals

La sintaxi d’una repetició normal és

>     \repeat volta nombre_de_repeticions expressió_musical

on `expressió_musical` és una expressió musical.

Una repetició simple sense finals alternatius:

>     \relative {
>       \repeat volta 2 { c''4 d e f }
>       c2 d
>       \repeat volta 2 { d4 e f g }
>     }

De forma predeterminada no s’imprimeixen les dobles barres d’obertura de repetició al primer compàs complet. Malgrat això és possible imprimir-les usant `\bar ".|:"` abans de la primera nota.

>     \relative {
>       \repeat volta 2 { \bar ".|:" c''4 d e f }
>       c2 d
>       \repeat volta 2 { d4 e f g }
>     }

Els finals alternatius (celes de primera i segona vegada) es poden generar utilitzant `\alternative`. Cada grup d’alternatives ha d’estar envoltat pel seu compte entre claus.

>     \repeat volta nombre_de_repeticions expressió_musical
>     \alternative {
>       { expressió_musical }
>     }

on `expressió_musical` és una expressió musical.

Si hi ha més repeticions que finals alternatius, s’assigna el primer final alternatiu a les repeticions més antigues.

Repetició única amb primera i segona vegada:

>     \relative {
>       \repeat volta 2 { c''4 d e f | }
>       \alternative {
>         { c2 e | }
>         { f2 g | }
>       }
>       c1
>     }

Diverses repeticions amb primera i segona vegada:

>     \relative {
>       \repeat volta 4 { c''4 d e f | }
>       \alternative {
>         { c2 e | }
>         { f2 g | }
>       }
>       c1
>     }

Més d’una repetició amb més d’un final alternatiu:

>     \relative {
>       \repeat volta 3 { c''4 d e f | }
>       \alternative {
>         { c2 e | }
>         { f2 g | }
>         { a2 g | }
>       }
>       c1
>     }

Nota: Si hi ha dos o més alternatives, no ha d’aparèixer res entre la clau de tancament d’una i la d’obertura de l’altra dins d’un bloc `\alternative`, atès que en cas contrari no obtindrem el nombre de finals esperat.

Nota: Si incloem `\relative` dins d’un `\repeat` sense instancia el context `Voice` explícitament, apareixeran pentagrames addicionals no desitjats. Vegeu Apareix un pentagrama de més.

Si una repetició sense celes de primera i segona vegada comença en mig d’un compàs, normalment acaba en el lloc corresponent a meitat d’un altre compàs posterior (de tal forma que els dos sumen un compàs complet). En aquest cas, els símbols de repetició no són ‘veritables’ línies divisòries, per la qual cosa no s’han d’escriure en aquest lloc comprovacions de compàs ni ordres `\partial`:

>     c'4 e g
>     \repeat volta 4 {
>       e4 |
>       c2 e |
>       g4 g g
>     }
>       g4 |
>       a2 a |
>       g1 |

Si una repetició que no té celes de primera i segona vegada comença amb un compàs parcial, aleshores s’aplica el mateix principi, excepte que es requereix una ordre `\partial` al començament del compàs:

>     \partial 4
>     \repeat volta 4 {
>       e'4 |
>       c2 e |
>       g4 g g
>     }
>       g4 |
>       a2 a |
>       g1 |

Es poden afegir lligadures d’unió al segon final:

>     \relative {
>       c''1
>       \repeat volta 2 { c4 d e f~ }
>       \alternative {
>         { f2 d }
>         { f2\repeatTie f, }
>       }
>     }

L’ordre `\inStaffSegno` es pot utilitzar per generar una barra de compàs combinada que incorpora el símbol del segno junt amb la barra de repetició, quan s’usa amb la instrucció `\repeat volta`. Se selecciona automàticament el tipus correcte de línia divisòria de repetició, ja sigui de començament o fi de repetició, o de doble repetició. Observeu que la indicació “D.S.” corresponent s’ha d’afegir manualment.

Sortida d’una repetició:

>     \relative {
>       e'1
>       \inStaffSegno
>       f2 g a b
>       c1_"D.S." \bar "|."
>     }

Al començament d’una repetició:

>     \relative {
>       e'1
>       \repeat volta 2 {
>         \inStaffSegno  % inicia repetició
>         f2 g a b
>       }
>       c1_"D.S." \bar "|."
>     }

Al final de una repetición:

>     \relative {
>       e'1
>       \repeat volta 2 {
>         f2 g a b
>         \inStaffSegno  % finalitza repetició
>       }
>       f2 g a b
>       c1_"D.S." \bar "|."
>     }

Entre dues repeticions:

>     \relative {
>       e'1
>       \repeat volta 2 {
>         f2 g a b
>       }
>       \inStaffSegno  % doble repetició
>       \repeat volta 2 {
>         f2 g a b
>       }
>       c1_"D.S." \bar "|."
>     }

Es poden obtenir símbols de línia divisòria alternatius mitjançant l’establiment (en el context Score) de les propietats `segnoBarType`, `startRepeatSegnoBarType`, `endRepeatSegnoBarType` o `doubleRepeatSegnoBarType` al tipus de línia requerit. Els tipus de línia divisòria alternatius s’han de seleccionar a partir dels tipus predefinits o de tipus definits anteriorment amb la instrucció `\defineBarLine` (vegeu Barres de compàs).

>     \defineBarLine ":|.S[" #'(":|." "S[" "")
>     \defineBarLine "]" #'("]" "" "")
>     \relative {
>       e'1
>       \repeat volta 2 {
>         f2 g a b
>         \once \set Score.endRepeatSegnoBarType = ":|.S["
>         \inStaffSegno
>       }
>       f2 g \bar "]" a b
>       c1_"D.S." \bar "|."
>     }

#### Fragments de codi seleccionats

#### Fer més curts els corxets de primer i segona vegada

De forma predeterminada, els corxets de primera i segona vegada es tracen a sobre els finals alternatius complets, però és possible fer-los més curts establint un valor cer per a `voltaSpannerDuration`. A l’exemple següent, el corxet sols dura un compàs, que correspon a una duració de 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 }
>       }
>     }

#### Afegir claus de repetició i segona vegada a més pentagrames

El gravador `Volta_engraver` resideix de forma predeterminada dins del context de `Score`, i les claus de repetició‘s’imprimeixen així normalment sols a sobre el pentagrama superior. Aixo es pot ajustar afegint el gravador `Volta_engraver` al context de `Staff` el el qual han d’aparèixer les claus; vegeu també el fragment de codi “Volta multi staff”.

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

#### Establiment del tipus de repetició doble predeterminat per a la primera i la segona vegada

Hi ha tres estils diferents de repeticions dobles per a la primera i la segona vegada, que es poden ajustar utilitzant `doubleRepeatType`.

>     \relative c'' {
>       \repeat volta 2 { c1 }
>       \set Score.doubleRepeatBarType = #":..:"
>       \repeat volta 2 { c1 }
>       \set Score.doubleRepeatBarType = #":|.|:"
>       \repeat volta 2 { c1 }
>       \set Score.doubleRepeatBarType = #":|.:"
>       \repeat volta 2 { c1 }
>     }

#### Numeració de compassos alternativa

Es poden seleccionar dos mètodes alternatius per a la numeració de compassos, especials quan hi ha repeticions.

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

#### Vegeu també

Glossari musical: repeat, volta.

Referència de la notació: Barres de compàs, Modificació dels connectors (plug-ins) de context, Modificació de lligadures d’unió i d’expressió, Gestió del temps.

Fitxers instal·lats: ‘`ly/engraver-init.ly`’.

Fragments de codi: Repeats.

Referència de funcionament intern: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.

#### Advertiments i problemes coneguts

Les lligadures d’expressió que abasten des d’un bloc `\repeat` fins un bloc `\alternative` sols funcionen per a la cela de primera vegada. L’aparença visual d’una lligadura d’expressió que es continua introduint a d’altres celes de repetició pot simular-se amb `\repeatTie` si la lligadura s’estén fins una sola nota dins de la cela de repetició, tot i que aquest mètode no funciona a `TabStaff`. D’altres mètodes que poden servir per indicar lligadures que es continuen per sobre de diverses notes a les celes de repetició, i que també funcionen en contextos de tabulatura `TabStaff`, s’expliquen a Modificació de lligadures d’unió i d’expressió.

Així mateix, no és possible fer que les lligadures d’expressió es repleguin des del final d’una alternativa fins el començament de la repetició.

Els glissandos que s’estenen des d’un bloc `\repeat` fins un bloc `\alternative` sols funcionen per a la cela de primera vegada. Es pot indicar l’aparença visual d’un glissando que es continua fin l’interior d’altres celes de repetició mitjançant la codificació d’un glissando que comença a una nota d’adorn oculta. Per veure un exemple, consulteu “Extensió dels glissandos sobre les repeticions” sota l’epígraf Fragments de codi seleccionats, a Glissando.

Si una repetició que comença amb un compàs incomplet té un bloc `\alternative` que conté modificacions a la propietat `measureLength`, la utilització de `\unfoldRepeats` donarà lloc a línies divisòries erròniament col·locades i advertiments de comprovació de compàs.

Una repetició niuada com

>     \repeat …
>     \repeat …
>     \alternative

és ambigua perquè no està clar a quin `\repeat` pertany la `\alternative`. Aquesta ambigüitat es resol fent que la `\alternative` pertanyi sempre a la `\repeat` més interna. Per més claredat, es recomana usar claus en aquestes situacions.

#### Marques de repetició manual

Nota: Aquests mètodes sols s’utilitzen per realitzar construccions de repetició poc usuals. A gairebé totes les situacions s’han de crear les repeticions utilitzant l’ordre estàndard `\repeat` o imprimint les barres de compàs corresponents. Per veure més informació, consulteu Barres de compàs.

Es pot usar la propietat `repeatCommands` per controlar la disposició de les repeticions. El seu valor és una llista de l’Scheme d’ordres de repetició.

`start-repeat`

  Impressió d’una barra de compàs `.|:`

  >     \relative {
  >       c''1
  >       \set Score.repeatCommands = #'(start-repeat)
  >       d4 e f g
  >       c1
  >     }

  A la pràctica habitual del gravat no s’imprimeixen signes de repetició al principi de la peça.

``end-repeat``

  Impressió d’una barra de compàs `:|.`

  >     \relative {
  >       c''1
  >       d4 e f g
  >       \set Score.repeatCommands = #'(end-repeat)
  >       c1
  >     }

`(volta number) … (volta #f)`

  Creació d’una nova cela de repetició amb el número que s’especifica. El parèntesi de vegada s’ha de finalitzar de forma explícita, en cas contrari no s’imprimeix.

  >     \relative {
  >       f''4 g a b
  >       \set Score.repeatCommands = #'((volta "2"))
  >       g4 a g a
  >       \set Score.repeatCommands = #'((volta #f))
  >       c1
  >     }

Es poden produir diverses ordres de repetició amb el mateix punt:

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

Es pot incloure text dins de la cela de primera i segona vegada. El text pot ser un número o números, o un element de marcatge, vegeu Donar format al text. La forma més fàcil d’usar text de marcatge és definir el marcatge prèviament, i després incloure’l dins d’una llista de l’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))
>     }

#### Vegeu també

Referència de la notació: Barres de compàs, Donar format al text.

Fragments de codi: Repeats.

Referència de funcionament intern: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.

#### Repeticions explícites

Mitjançant la utilització de l’ordre `unfold` es poden usar les repeticions per simplificar l’escriptura desplegada de música repetitiva. La sintaxi és:

>     \repeat unfold número_de_repeticions expressió_musical

donde `expressió_musical` és una musical i `nombre_de_repeticions` és el nombre de vegades que `expressió_musical` es repeteix.

>     \relative {
>       \repeat unfold 2 { c''4 d e f }
>       c1
>     }

En certs casos, especialment dins d’un context `\relative`, la funció `\repeat unfold` no és exactament igual que escriure l’expressió musical diverses vegades. Per exemple:

>     \repeat unfold 2 { a'4 b c }

no equival a

>     a'4 b c | a'4 b c

Es poden fer repeticions desplegades amb finals alternatius.

>     \relative {
>       \repeat unfold 2 { c''4 d e f }
>       \alternative {
>         { c2 g' }
>         { c,2 b }
>       }
>       c1
>     }

Si hi ha repeticions amb finals alternatius, el primer final alternatiu s’aplica les vegades que calguin fins que les alternatives restants completen el nombre total de repeticions.

>     \relative {
>       \repeat unfold 4 { c''4 d e f }
>       \alternative {
>         { c2 g' }
>         { c,2 b }
>         { e2 d }
>        }
>       c1
>     }

Si hi ha més finals alternatius que repeticions, s’apliquen sols els primers finals alternatius. Les alternatives restants s’ignoren i no s’imprimeixen.

>     \relative {
>       \repeat unfold 2 { c''4 d e f }
>       \alternative {
>         { c2 g' }
>         { c,2 b }
>         { e2 d }
>       }
>       c1
>     }

És possible també niuar diverses funcions `unfold` (amb finals alternatius o sense ells).

>     \relative {
>       \repeat unfold 2 {
>         \repeat unfold 2 { c''4 d e f }
>         \alternative {
>           { c2 g' }
>           { c,2 b }
>         }
>       }
>       c1
>     }

Les construccions d’acord es poden repetir mitjançant el símbol de repetició d’acords `q`. Vegeu Repetició d’acords.

Nota: Si poseu `\relative` dins d’un bloc `\repeat` sense instanciar explícitament el context `Voice`, apareixeran pentagrames no desitjats. Vegeu Apareix un pentagrama de més.

#### Vegeu també

Referència de la notació: Repetició d’acords.

Fragments de codi: Repeats.

Referència de funcionament intern: RepeatedMusic, UnfoldedRepeatedMusic.

#### LilyPond — Referència de la notació v2.24.4 (branca estable).