1.2.4 Barras


Barras automáticas

De manera predeterminada, las barras de corchea se insertan automáticamente:

\time 2/4 c8 c c c
\time 6/8 c c c c8. c16 c8

[image of music]

Cuando estas decisiones automáticas no son lo bastante buenas, se pueden escribir los barrados de forma explícita; véase Barras manuales. También es posible definir patrones de barrado que difieran de los ajustes por defecto. Las reglas de barrado predeterminadas están definidas en el archivo ‘scm/auto-beam.scm’. Si no hay definidas reglas de barrado para una duración dada de la barra en el tipo de compás en uso, el barrado se controla mediante los valores de tres propiedades de contexto, measureLength, beatLength y beatGrouping. Tanto las reglas de barrado como las propiedades de contexto se pueden sobreescribir, véase Establecer el comportamiento de las barras automáticas.

Nota: Si se usan barras para indicar los melismas de las canciones, entonces se debe desactivar el barrado automático con autoBeamOff e indicar las barras manualmente.

El barrado automático se puede habilitar o desactivar con las instrucciones \autoBeamOff y \autoBeamOn:

c4 c8 c8. c16 c8. c16 c8
\autoBeamOff
c4 c8 c8. c16 c8.
\autoBeamOn
c16 c8

[image of music]

Instrucciones predefinidas

\autoBeamOff, \autoBeamOn.

Fragmentos de código seleccionados

Beams across line breaks

Normalmente están prohibidos los saltos de línea si las barras atraviesan las líneas divisorias. Se puede cambiar este comportamiento como se muestra aquí:

\relative c'' {
  \override Beam #'breakable = ##t
  c8 c[ c] c[ c] c[ c] c[ \break  
  c8] c[ c] c[ c] c[ c] c
}

[image of music]

Cambiar el salto de las barras en ángulo

Se insertan automáticamente barras en ángulo cuando se detecta un intervalo muy grande entre las notas. Se puede hacer un ajuste fino de este comportamiento a través de la propiedad auto-knee-gap. Se traza una barra doblada si el salto es mayor que el valor de auto-knee-gap más el ancho del objeto barra (que depende de la duración de las notas y de la inclinación de la barra). De forma predeterminada auto-knee-gap está establecido a 5.5 espacios de pentagrama.

{
  f8 f''8 f8 f''8
  \override Beam #'auto-knee-gap = #6
  f8 f''8 f8 f''8
}

[image of music]

Véase también

Referencia de la notación: Barras manuales, Establecer el comportamiento de las barras automáticas.

Archivos instalados: ‘scm/auto-beam.scm’.

Fragmentos de código: Duraciones.

Referencia de funcionamiento interno: Beam.

Advertencias y problemas conocidos

No se pueden usar conjuntamente barras dobladas automáticamente que cruzan pentagramas y pentagramas ocultos. Véase Ocultar pentagramas.

Las barras pueden colisionar con las cabezas de las notas y las alteraciones accidentales de las otras voces.


Establecer el comportamiento de las barras automáticas

La colocación de barras automáticas viene determinada por las reglas descritas en Barras automáticas. Existen dos formas mutuamente excluyentes de modificar estas reglas. La primera es modificar la agrupación de los pulsos y se aplica a compases poco usuales, es decir, aquellos para los que no ha reglas predefinidas que definen los puntos de final de las barras. El segundo método, modificar la especificación de los puntos finales de las barras, se puede usar para cualquier tipo de compás. Este segundo método se debe usar para aquellos compases y combinaciones de duración de barras para los que existen reglas predefinidas de final de barra, a no ser que se hayan revertido. Hay reglas predefinidas para los compases de 3/2, 3/4, 4/4, 2/4, 4/8, 4/16, 6/8, 9/8 y 12/8.

Modificar las agrupaciones de pulsos

Si no hay definida ninguna regla de final de barra para la duración de una barra en particular dentro del tipo de compás en uso, su barrado se controla mediante tres propiedades de contexto: measureLength, beatLength y beatGrouping. Estas propiedades se deben establecer en los contextos Score, Staff o Voice para delimitar el ámbito de su efecto. Los valores predeterminados se establecen al procesarse las instrucciones \time, por ello las instrucciones \set se deben escribir después de todas las instrucciones \time.

Dichas propiedades determinan el barrado de la siguiente forma:

Las barras pueden dar comienzo en cualquier lugar (excepto si ya hay una barra activa). Las barras terminan en un tiempo determinado por los valores de beatGrouping y beatLength, com se ve a continuación:

Nota: Estas tres propiedades se hacen efectivas para una barra concreta solamente si no hay reglas de final de barra predefinidas para esa duración de barra en el tipo de compás en uso, o si todas esas reglas de final de barra se han revertido.

De forma predeterminada, las propiedades the measureLength y beatLength se derivan del compás establecido por la instrucción \time. La longitud measureLength está establecida de forma que sea exactamente la misma que la longitud del compás dado por la indicación de compás, y la longitud del pulso beatLength tiene un valor dado igual a una parte de compás (1/n, siendo n el denominador del compás).

El valor predeterminado de beatGrouping se toma de una tabla que está en ‘scm/music-functions.scm’. Para localizarla, véase Otras fuentes de información. Define la agrupación de pulsos para los compases de 5/8, 6/8, 8/8, 9/8 y 12/8.

Tanto measureLength como beatLength son momentos, unidades de duración musical. Las cantidades del tipo moment se crean por la función de Scheme ly:make-moment. Para ver más información sobre esta función, consulte Gestión del tiempo.

beatGrouping es una lista de enteros que dan el número de pulsos en cada grupo.

Fragmentos de código seleccionados

Agrupar los pulsos

Los patrones de barrado se pueden alterar con la propiedad beatGrouping:

\relative c'' {
  \time 5/16
  #(override-auto-beam-setting '(end * * 5 16) 5 16)
  \set beatGrouping = #'(2 3)
  c8^"(2+3)" c16 c8
  \set beatGrouping = #'(3 2)
  c8^"(3+2)" c16 c8
}

[image of music]

Especificar el contexto con beatGrouping

Mediante la especificación del contexto, el efecto de beatGrouping puede limitarse al contexto especificado, y sobreescribirse los valores establecidos en contextos de niveles más altos:

\score {
  \new Staff <<
    \time 7/8
    \new Voice {
      \relative c'' {
        \set Staff.beatGrouping = #'(2 3 2)
        a8 a a a a a a
      }
    }
    \new Voice {
      \relative c' {
        \voiceTwo
        \set beatGrouping = #'(1 3 3)
        f8 f f f f f f
      }
    }
  >>
}

[image of music]

Utilización de beatLength y beatGrouping

La propiedad measureLength determina dónde se deben insertar líneas divisorias y, con beatLength y beatGrouping, cómo se deben generar las barras autoomáticas para las duraciones de barra y compases para los que no hay ninguna regla definida para los finales de barra. Este ejemplo muestra distintas dormas de controlar el barrado mediante el establecimiento de estas propiedades. Las explicaciones están en forma de comentarios dentro del código.

\relative c'' {
  \time 3/4
  % De forma predeterminada, en 3/4 el barrado se hace en tres grupos
  % de una negra de longitud cada uno
  a16 a a a a a a a a a a a

  \time 12/16
  % No hay ningún barrado automático definido para 12/16
  a16 a a a a a a a a a a a

  \time 3/4
  % Cambiar el símbolo de compás, manteniendo el barrado subyacente de 3/4
  \set Score.timeSignatureFraction = #'(12 . 16)
  a16 a a a a a a a a a a a

  % El agrupamiento predeterminado de (1 1 1) y beatLength de 1/8 del compás 3/4
  % no son consistentes con una longitud de compás measureLength de 3/4, por ello las barras
  % se agrupan a intervalos de beatLength
  \set Score.beatLength = #(ly:make-moment 1 8)
  a16 a a a a a a a a a a a

  % Especificar barras en grupos de (3 3 2 3) semicorcheas
  % 3+3+2+3=11, y 11*1/16<>3/4, así que no es de aplicación beatGrouping
  % y las barras se agrupan a intervalos de beatLength (semicorcheas)
  \set Score.beatLength = #(ly:make-moment 1 16)
  \set Score.beatGrouping = #'(3 3 2 3)
  a16 a a a a a a a a a a a

  % Especificat barras en grupos de (3 4 2 3) semicorcheas
  % 3+4+2+3=12, y 12*1/16=3/4, así pues beatGrouping es de aplicación
  \set Score.beatLength = #(ly:make-moment 1 16)
  \set Score.beatGrouping = #'(3 4 2 3)
  a16 a a a a a a a a a a a
}

[image of music]

Subdivisión de las barras de semicorchea

Las barras de semicorcheas (o notas más breves) seguidas no se subdividen de forma predeterminada. Esto es: las tres (o más) barras se prolongan, sin dividirse, sobre grupos completos de notas. Este comportamiento se puede modificar para que las barras se subdividan en subgrupos mediante el establecimiento de la propiedad subdivideBeams. Cuando está establecida, las diversas barras se subdividen a intervalos definidos por el valor actual de la longitud del pulso beatLength reduciendo las barras múltiples a una sola entre los subgrupos. Observe que el valor predeterminado de beatLength es de una negra si no está establecido explícitamente. Se debe establecer al valor de una fracción que da la duración el subgrupo de barras utilizando la función make-moment, como se muestra aquí:

\relative c'' {
  c32[ c c c c c c c]
  \set subdivideBeams = ##t
  c32[ c c c c c c c]

  % Fijar la longitud del subgrupo de barras a una corchea
  \set beatLength = #(ly:make-moment 1 8)
  c32[ c c c c c c c]

  % Fijar la longitud del subgrupo de barras a una semicorchea
  \set beatLength = #(ly:make-moment 1 16)
  c32[ c c c c c c c]
}

[image of music]

Símbolos de dirección, símbolos de agrupación de compás

Las opciones para agrupar los pulsos de un compás están a nuestra disposición a través de la función de Scheme set-time-signature, que acepta tres argumentos: el número de pulsos, la longitud del pulso, y la agrupación interna de los pulsos dentro del compás. Si se incluye el grabador Measure_grouping_engraver, la función crea también símbolos de agrupación MeasureGrouping. Dichos símbolos facilitan la lectura de la música moderna de cierta complejidad rítmica. En el ejemplo, el compás de 9/8 se subdivide en 2, 2, 2 y 3. Esto se pasa a la función set-time-signature como tercer argumento: '(2 2 2 3):

\score {
  \relative c'' {
    #(set-time-signature 9 8 '(2 2 2 3))
    #(revert-auto-beam-setting '(end * * 9 8) 3 8)
    #(override-auto-beam-setting '(end 1 8 9 8) 1 4)
    #(override-auto-beam-setting '(end 1 8 9 8) 2 4)
    #(override-auto-beam-setting '(end 1 8 9 8) 3 4)
    g8 g d d g g a( bes g) |
    #(set-time-signature 5 8 '(3 2))
    a4. g4
  }
  \layout {
    \context {
      \Staff
      \consists "Measure_grouping_engraver"
    }
  }
}

[image of music]

Modificar los puntos finales de las barras

En compases de tipo normal, las barras automáticas pueden comenzar en cualquier nota pero solamente pueden terminar en algunas poriciones dentro del compás, concretamente en las duraciones que estén especificadas por las propiedades de autoBeamSettings. Estas propiedades consisten en una lista de reglas que especifican dónde pueden terminar las barras. Las reglas predeterminadas de autoBeamSettings están definidas en ‘scm/auto-beam.scm’. Para localizarlo, consulte Otras fuentes de información.

Se debe usar este método para los tipos de compás para los que existen reglas de final de barra definidas de forma predeterminada, a no ser que todas ellas se hayan revertido. También es particularmente apropiado para otros muchos compases si la indicación de compás cambia con frecuencia, o si el barrado debe ser distinto para las distintas duraciones de barra.

Para añadir una regla a la lista, utilice

#(override-auto-beam-setting
  '(beam-limit
    beam-numerator  beam-denominator
    time-signature-numerator time-signature-denominator)
  moment-numerator moment-denominator [context])

donde:

Por ejemplo, si las barras automáticas siempre deben terminar sobre la primera negra, para cualquier tipo de compás o duración de la barra, use

a8 a a a a a a a
#(override-auto-beam-setting '(end * * * *) 1 4)
a8 a a a a a a a

[image of music]

Podemos forzar los ajustes de las barras para que tengan efecto sólo sobre las barras cuya nota más breve sea de una cierta duración:

\time 2/4
% finalizar barras de semicorchea para todos los compases en el momento 1/16
#(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 |
% finalizar barras de fusa para todos los compases en el momento 1/16
#(override-auto-beam-setting '(end 1 32 * *) 1 16)
a32 a a a a16 a a a a a |

[image of music]

Podemos forzar los ajustes de las barras para que tengan efecto solamente en ciertos tipos de compás:

\time 5/8
% finalizar barras para cualquier duración en el compás de 5/8, en el momento 2/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

[image of music]

En caso de usar varias voces, se debe especificar el contexto Staff si queremos aplicar el barrado a todas las voces del pentagrama:

\time 7/8
% ritmo 3-1-1-2
% Contexto sin especificar: no funciona correctamente
#(override-auto-beam-setting '(end * * 7 8) 3 8)
#(override-auto-beam-setting '(end * * 7 8) 4 8)
#(override-auto-beam-setting '(end * * 7 8) 5 8)
<< {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>

% Funciona correctamente con el contexto especificado
#(override-auto-beam-setting '(end * * 7 8) 3 8 'Staff)
#(override-auto-beam-setting '(end * * 7 8) 4 8 'Staff)
#(override-auto-beam-setting '(end * * 7 8) 5 8 'Staff)
<< {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>

[image of music]

Nota: Si se produce un comportamiento inesperado de las barras, compruebe la existencia de una posible interferencia en los ajustes predeterminados del barrado automático que están en ‘scm/auto-beam.scm’, porque los finales de barra definidos aquí aún son válidos además de los suyos.

Debemos revertir cualquer final predeterminado indeseado o conflictivo, para nuestro compás concreto. Podemos eliminar una regla de barrado automático previamente establecida usando

#(revert-auto-beam-setting
  '(beam-limit
    beam-numerator  beam-denominator
    time-signature-numerator time-signature-denominator)
  moment-numerator moment-denominator [context])

límite-barra, numerador-barra, denominador-barra, numerador-compás, denominador-compás, numerador-momento, denominador-momento y contexto son los mismos que antes.

\time 4/4
a16 a a a a a a a a a a a a a a a
% deshacer regla de finalizar barras de semicorchea en compás 4/4 en el momento 1/4
#(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

[image of music]

La regla de un enunciado revert-auto-beam-setting debe corresponderse exactamente con la regla original. Esto es, no se tiene en cuenta ninguna expansión de comodines.

\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) % ¡esto no lo devuelve a su valor anterior!
a a a a
#(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % esto sí
a a a a

[image of music]

Fragmentos de código seleccionados

Agrupamiento de las barras en el compás de 7/8

No está especificada ninguna agrupación predeterminada automática de las barras para el compás de 7/8, de forma que si se requieren barras automáticas se debe especificar la forma de agrupamiento. Por ejemplo, para agrupar todas las barras en la forma 2-3-2 en el compás de 7/8, especificamos los finales de barra en 2/8 y 5/8:

\relative c'' {
  \time 7/8
  % ritmo 2-3-2
  a8 a a a a a a
  #(override-auto-beam-setting '(end * * 7 8) 2 8)
  #(override-auto-beam-setting '(end * * 7 8) 5 8)
  a8 a a a a a a
}

[image of music]

Alteración de los finales de barra predeterminados

Para tipografiar las barras agrupadas en la forma 3-4-3-2 en 12/8, en primer lugar tenemos que sobreescribir los finales de barra predeterminados en 12/8, y después preparar los finales de barra nuevos:

\relative c'' {
  \time 12/8

  % Barrado predeterminado
  a8 a a a a a a a a a a a

  % Revertir los valores predeterminados en scm/auto-beam.scm para el 12/8
  #(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)
  a8 a a a a a a a a a a a

  % establecer valores nuevos para finales de barra
  #(override-auto-beam-setting '(end * * 12 8) 3 8)
  #(override-auto-beam-setting '(end * * 12 8) 7 8)
  #(override-auto-beam-setting '(end * * 12 8) 10 8)
  a8 a a a a a a a a a a a
}

[image of music]

Finales de barra en el contexto Score

Las reglas de final de barra especificadas en el contexto Score se aplican a todos los pentagramas, pero se pueden modificar tanto en los niveles de Staff como de Voice:

\relative c'' {
  \time 5/4
  % Establecer el barrado predeterminado para todos los pentagramas
  #(score-override-auto-beam-setting '(end * * 5 4) 3 8)
  #(score-override-auto-beam-setting '(end * * 5 4) 7 8)
  <<
    \new Staff {
      c8 c c c c c c c c c
    }
    \new Staff {
      % Modificar el barrado sólo para este pentagrama
      #(override-auto-beam-setting '(end * * 5 4) 6 8 'Staff)
      #(revert-auto-beam-setting '(end * * 5 4) 7 8 'Staff)
      c8 c c c c c c c c c
    }
    \new Staff {
      % Heredar el barrado del contexto Score
      <<
        {
          \voiceOne
          c8 c c c c c c c c c
        }
        % Modificar el barrado sólo para esta voz
        \new Voice {
          \voiceTwo
          #(override-auto-beam-setting '(end * * 5 4) 6 8)
          #(revert-auto-beam-setting '(end * * 5 4) 7 8)
          a8 a a a a a a a a a
        }
      >>
    }
  >>
}

[image of music]

Instrucciones predefinidas

\autoBeamOff, \autoBeamOn.

Advertencias y problemas conocidos

Si una partitura termina mientras una barra automática no ha terminado aún todavía está aceptando notas, esta última barra no se imprimirá en absoluto. Lo mismo sirve para las voces polifónicas, introducidas con << … \\ … >>. Si una voz polifónica termina mientras una barra automática está aún aceptando notas, no se imprime.

Véase también

Fragmentos de código: Duraciones.


Barras manuales

En ciertos casos puede ser preciso sobreescribir el algoritmo de barrado automático. Por ejemplo, el barrador automático no escribe barras por encima de los silencios o las líneas divisorias, y en las partituras corales el barrado se ajusta con frecuencia para que siga la medida de la letra en vez de la de las notas. Tales barras se especifican manualmente marcando los puntos de comienzo y final con [ y ]

{
  r4 r8[ g' a r8] r8 g[ | a] r8
}

[image of music]

Se pueden marcar notas individuales con \noBeam para evitar que resulten unidas por una barra:

\time 2/4 c8 c\noBeam c c

[image of music]

Se puede conseguir un control incluso más estritcto sobre las barras estableciendo las propiedades stemLeftBeamCount y stemRightBeamCount. Especifican el número de barras que se dibujarán en los lados izquierdo y derecho, respectivamente, de la nota siguiente. Si cualquiera de estas dos propiedades está ajustada a un valor, dicho valor se usará una sola vez, y luego se borrará. En este ejemplo, el último Fa se imprime con sólo una barra en el lado izquierdo, es decir, la barra de corchea del grupo como un todo.

a8[ r16 f g a]
a8[ r16
\set stemLeftBeamCount = #2
\set stemRightBeamCount = #1
f
\set stemLeftBeamCount = #1
g a]

[image of music]

Fragmentos de código seleccionados

Corchetes rectos y extremos de barra sueltos

Son posibles tanto los corchetes rectos sobre notas sueltas como extremos de barra sueltos en figuras unidas, con una combinación de stemLeftBeamCount, stemRightBeamCount e indicadores de barra [ ] emparejados.

Para corchetes rectos que apunten a la derecha sobre notas sueltas, use indicadores de barra emparejados [ ] y establezca stemLeftBeamCount a cero (véase el ejemplo 1).

Para corchetes rectos que apunten a la izquierda, establezca en su lugar stemRightBeamCount (ejemplo 2).

Para extremos sueltos que apunten a la derecha al final de un conjunto de notas unidas, establezca stemRightBeamCount a un valor positivo. Y para extremos sueltos que apunten a la izquierda al principio de un conjunto de notas unidas, establezca stemLeftBeamCount en su lugar (ejemplo 3).

A veces, para una nota suelta rodeada de silencios tiene sentido que lleve los dos extremos sueltos del corchete plano, apuntando a derecha e izquierda. Hágalo solamente con indicadores de barra emparejados [ ] (ejemplo 4).

(Observe que \set stemLeftBeamCount siempre equivale a \once \set. En otras palabras, los ajustes de la cantidad de barras no se recuerdan, y por ello el par de corchetes planos aplicados a la nota Do semicorchea c'16 [ ] del último ejemplo no tiene nada que ver con el \set de dos notas por detrás.)

\score {
  <<
    % Ejemplo 1
    \new RhythmicStaff {
      \set stemLeftBeamCount = #0
      c16[]
      r8.
    }
    
    % Ejemplo 2
    \new RhythmicStaff {
      r8.
      \set stemRightBeamCount = #0
      c16[]
    }
    
    % Ejemplo 3
    \new RhythmicStaff {
      c16 c
      \set stemRightBeamCount = #2
      c16 r r
      \set stemLeftBeamCount = #2
      c16 c c
    }
    
    % Ejemplo 4
    \new RhythmicStaff {
      c16 c
      \set stemRightBeamCount = #2
      c16 r
      c16[]
      r16
      \set stemLeftBeamCount = #2
      c16 c
    }
  >>
}

[image of music]


Barras progresivas

Las barras progresivas se usan para indicar que un pequeño grupo de notas se debe tocar a una velocidad creciente (o decreciente), sin cambiar el tempo general de la pieza. El ámbito de la barra progresiva se debe indicar manualmente usando [ y ], el efecto de ángulo de la barra se inicia especificando una dirección en la propiedad grow-direction del objeto Beam.

Si queremos que la colocación de las notas y el sonido de la salida MIDI refleje el ritardando o accelerando indicado por la barra progresiva, las notas se deben agrupar como una expresión musical delimitada por llaves y precedida de una instrucción featheredDurations que especifica la razón entre las duraciones de la primera y la última notas dentro del grupo.

Los corchetes rectos muestran el ábito de la barra y las llaves muestran qué notas han de modificar sus duraciones. Normalmente delimitarían el mismo grupo de notas, pero no es un requisito: las dos instrucciones son independientes.

En el ejemplo siguiente las ocho semicorcheas ocupan exactamente el mismo tiempo que una blanca, pero la primera nota tiene la mitar de duración que la última, con las notas intermedias alargándose gradualmente. Las cuatro primeras fusas se aceleran gradualmente, mientras que las últimas cuatro fusas están a un tempo constante.

\override Beam #'grow-direction = #LEFT
\featherDurations #(ly:make-moment 2 1)
{ c16[ c c c c c c c] }
\override Beam #'grow-direction = #RIGHT
\featherDurations #(ly:make-moment 2 3)
{ c32[ d e f] }
% volver a usar barras continuas
\override Beam #'grow-direction = #'()
{ g32[ a b c] }

[image of music]

El espaciado en la salida impresa representa las duraciones de las notas de una forma sólo aproximada, pero la salida MIDI es exacta.

Advertencias y problemas conocidos

La instrucción \featherDurations sólo funciona con fragmentos musicales muy breves, y cuando los números de la fracción son pequeños.

Véase también

Fragmentos de código: Duraciones.


Otros idiomas: English, français, deutsch.

Manual de referencia de la notación