1.4.1 Repeticiones largas

Esta sección trata sobre la forma de introducir repeticiones largas, normalmente de varios compases. Las repeticiones adoptan dos formas: repeticiones encerradas entre signos de repetición, o repeticiones explícitas, que se usan para escribir música repetitiva. También se pueden controlar manualmente los signos de repetición.


Repeticiones normales

La sintaxis de una repetición normal es

\repeat volta número_de_repeticiones expresión_musical

donde expresión_musical es una expresión musical.

Una repetición simple sin finales alternativos:

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

[image of music]

De forma predeterminada no se imprimen las dobles barras de apertura de repetición en el primer compás completo. Sin embargo es posible imprimirlas usando \bar ".|:" antes de la primera nota.

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

[image of music]

Los finales alternativos (casillas de primera y segunda vez) se pueden generar utilizando \alternative. Cada grupo de alternativas debe, a su vez, estar encerrado entre llaves curvas.

\repeat volta número_de_repeticiones expresión_musical
\alternative {
  { expresión_musical }
}

donde expresión_musical es una expresión musical.

Si existen más repeticiones que finales alternativos, se asigna el primer final alternativo a las repeticiones más antiguas.

Repetición única con primera y segunda vez:

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

[image of music]

Varias repeticiones con primera y segunda vez:

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

[image of music]

Más de una repetición con más de un final alternativo:

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

[image of music]

Nota: Si hay dos o más alternativas, no debe aparecer nada entre la llave de cierre de una y la de apertura de la otra dentro de un bloque \alternative, pues en caso contrario no obtendremos el número de finales esperado.

Nota: Si incluimos \relative dentro de un \repeat sin instanciar el contexto Voice explícitamente, aparecerán pentagramas adicionales no deseados. Véase Aparece un pentagrama de más.

Si una repetición sin casillas de primera y segunda vez comienza en medio de un compás, normalmente termina en el lugar correspondiente en mitad de otro compás posterior (de tal forma que los dos suman un compás completo). En este caso, los símbolos de repetición no son ‘verdaderas’ líneas divisorias, por lo que no deben escribirse en este sitio comprobaciones de compás ni instrucciones \partial:

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

[image of music]

Si una repetición que no tiene casillas de primera y segunda vez comienza con un compás parcial, entonces se aplica el mismo principio, excepto que se requiere una instrucción \partial al comienzo del compás:

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

[image of music]

Se pueden añadir ligaduras de unión al segundo final:

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

[image of music]

La instrucción \inStaffSegno se puede utilizar para generar una barra de compás combinada que incorpora el símbolo del segno junto con la barra de repetición, cuando se usa con la instrucción \repeat volta. Se selecciona automáticamente el tipo correcto de línea divisoria de repetición, ya sea de comienzo o fin de repeticion, o de doble repetición. Observe que la indicación “D.S.” correspondiente se debe añadir manualmente.

Salida de una repetición:

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

[image of music]

Al comienzo de una repetición:

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

[image of music]

Al final de una repetición:

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

[image of music]

Entre dos repeticiones:

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

[image of music]

Se pueden obtener símbolos de línea divisoria alternativos mediante el establecimiento (en el contexto Score) de las propiedades segnoBarType, startRepeatSegnoBarType, endRepeatSegnoBarType o doubleRepeatSegnoBarType al tipo de línea requerido. Los tipos de línea divisoria alternativos deben seleccionarse a partir de los tipos predefinidos o de tipos definidos anteriormente con la instrucción \defineBarLine (véase Barras 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 "|."
}

[image of music]

Fragmentos de código seleccionados

Acortar los corchetes de primera y segunda vez

De forma predeterminada, los corchetes de primera y segunda vez se trazan encima de los finales alternativos completos, pero es posible acortartlos estableciendo un valor cierto para voltaSpannerDuration. En el ejemplo siguiente, el corchete sólo dura un compás, que corresponde a una duración 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 }
  }
}

[image of music]

Añadir corchetes de primera y segunda vez a más pentagramas

El grabador Volta_engraver reside de forma predeterminada dentro del contexto de Score, y los corchetes de la repetición se imprimen así normalmente sólo encima del pentagrama superior. Esto se puede ajustar añadiendo el grabador Volta_engraver al contexto de Staff en que deban aparecer los corchetes; véase también el fragmento de código “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' } }
>>

[image of music]

Establecer el tipo de repetición doble predeterminado para la primera y segunda vez

Existen tres estilos distintos de repeticiones dobles para la primera y segunda vez, que se pueden ajustar utilizando doubleRepeatBarType.

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

[image of music]

Numeración de compases alternativa

Se pueden seleccionar dos métodos alternativos para la numeración de compases, especiales para cuando hay repeticiones.

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

[image of music]

Véase también

Glosario musical: repeat, volta.

Referencia de la notación: Barras de compás, Modificar los complementos (plug-ins) de contexto, Modificación de ligaduras de unión y de expresión, Gestión del tiempo.

Archivos instalados: ‘ly/engraver-init.ly’.

Fragmentos de código: Repeats.

Referencia de funcionamiento interno: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.

Advertencias y problemas conocidos

Las ligaduras de expresión que abarcan desde un bloque \repeat hasta un bloque \alternative sólo funcionan para la casilla de primera vez. La apariencia visual de una ligadura de expresión que se continúa introduciéndose en otras casillas de repetición puede simularse con \repeatTie si la ligadura se extiende hasta una sola nota dentro de la casilla de repetición, aunque este método no funciona en TabStaff. Otros métodos que pueden venir bien para indicar ligaduras que se continúan por encima de varias notas en las casillas de repetición, y que también funcionan en contextos de tablatura TabStaff, están explicados en Modificación de ligaduras de unión y de expresión.

Asimismo, no es posible hacer que las ligaduras de expresión se replieguen desde el final de una alternativa hasta el comienzo de la repetición.

Los glissandos que se extienden desde un bloque \repeat hasta un bloque \alternative solamente funcionan para la casilla de primera vez. Se puede indicar la apariencia visual de un glissando que se continúa hasta el interior de otras casillas de repetición mediante la codificación de un glissando que empieza en una nota de adorno oculta. Para ver un ejemplo, consulte “Extender los glissandos sobre las repeticiones” bajo el epígrafe Fragmentos de código seleccionados, en Glissando.

Si una repetición que comienza con un compás incompleto tiene un bloque \alternative que contiene modificaciones a la propiedad measureLength, la utilización de \unfoldRepeats dará lugar a líneas divisorias erróneamente colocadas y advertencias de comprobación de compás.

Una repetición anidada como

\repeat …
\repeat …
\alternative

es ambigua porque no está claro a qué \repeat pertenece la \alternative. Esta ambigüedad se resuelve haciendo que la \alternative pertenezca siempre a la \repeat más interna. Para más claridad, se recomienda usar llaves en tales situaciones.


Marcas de repetición manual

Nota: Estos métodos sólo se utilizan para realizar construcciones de repetición poco usuales, y pueden tener un comportamiento distinto al esperado. En casi todas las situaciones, se deben crear las repeticiones utilizando la instrucción estándar \repeat o imprimiendo las barras de compás correspondientes. Para ver más información, consulte Barras de compás.

Se puede usar la propiedad repeatCommands para controlar la disposición de las repeticiones. Su valor es una lista de Scheme de instrucciones de repetición.

start-repeat

Imprimir una barra de compás .|:

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

[image of music]

En la práctica habitual del grabado no se imprimen signos de repetición al principio de la pieza.

end-repeat

Imprimir una barra de compás :|.

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

[image of music]

(volta number) … (volta #f)

Crear una nueva casilla de repetición con el número que se especifica. El corchete de vez se debe terminar de forma explícita, pues en caso contrario no se imprime.

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

[image of music]

Se pueden producir varias instrucciones de repetición en el mismo punto:

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

[image of music]

Se puede incluir texto dentro de la casilla de primera y segunda vez. El texto puede ser un número o números, o un elemento de marcado, véase Formatear el texto. La forma más fácil de usar texto de marcado es definir el marcado previamente, y luego incluirlo dentro de una lista de 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))
}

[image of music]

Véase también

Referencia de la notación: Barras de compás, Formatear el texto.

Fragmentos de código: Repeats.

Referencia de funcionamiento interno: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.


Repeticiones explícitas

Mediante la utilización de la instrucción unfold se pueden usar las repeticiones para simplificar la escritura desplegada de música repetitiva. La sintaxis es:

\repeat unfold número_de_repeticiones expresión_musical

donde expresión_musical es una expresión musical y número_de_repeticiones es el número de veces que expresión_musical se repite.

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

[image of music]

En ciertos casos, especialmente dentro de un contexto \relative, la función \repeat unfold no es exactamente igual que escribir la expresión musical varias veces. P. ej.:

\repeat unfold 2 { a'4 b c }

no equivale a

a'4 b c | a'4 b c

Se pueden hacer repeticiones desplegadas con finales alternativos.

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

[image of music]

Si hay más repeticiones que finales alternativos, el primer final alternativo se aplica las veces necesarias hasta que las alternativas restantes completan el número total de repeticiones.

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

[image of music]

Si existen más finales alternativos que repeticiones, se aplican solo los primeros finales alternativos. Las alternativas restantes se ignoran y no se imprimen.

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

[image of music]

Es posible también anidar varias funciones unfold (con finales alternativos o sin ellos).

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

[image of music]

Las construcciones de acorde se pueden repetir mediante el símbolo de repetición de acordes q. Véase Repetición de acordes.

Nota: Si pone \relative dentro de un bloque \repeat sin instanciar explícitamente el contexto Voice, aparecerán pentagramas no deseados. Véase Aparece un pentagrama de más.

Véase también

Referencia de la notación: Repetición de acordes.

Snippets: Fragmentos de código: Repeats.

Referencia de funcionamiento interno: RepeatedMusic, UnfoldedRepeatedMusic.


LilyPond — Referencia de la notación v2.23.82 (rama de desarrollo).