@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
    Translation of GIT committish: 3fa99142fdc38cee6972e76edb37c052f029fe1b

    When revising a translation, copy the HEAD committish of the
    version that you are working on.  For details, see the Contributors'
    Guide, node Updating translation committishes..
@end ignore

@c \version "2.19.21"

@node Notación de los pentagramas
@section Notación de los pentagramas
@translationof Staff notation

@c The line width is a bit of a hack to allow space for the
@c  instrument names.
@lilypondfile[quote,ragged-right,line-width=14.5\cm,staffsize=16]{snippets/staff-headword.ly}

Esta sección explica cómo influir sobre la apariencia de los
pentagramas, cómo imprimir partituras con más de un pentagrama y
cómo añadir indicaciones de tempo y notas guía a los pentagramas.

@menu
* Impresión de los pentagramas::
* Modificación de pentagramas sueltos::
* Escritura de las particellas::
@end menu


@node Impresión de los pentagramas
@subsection Impresión de los pentagramas
@translationof Displaying staves

Esta sección describe los distintos métodos de creación de
pentagramas y grupos de ellos.

@menu
* Crear instancias de pentagramas nuevos::
* Agrupar pentagramas::
* Grupos de pentagramas anidados::
* Separación de sistemas::
@end menu


@node Crear instancias de pentagramas nuevos
@unnumberedsubsubsec Crear instancias de pentagramas nuevos
@translationof Instantiating new staves

@cindex nuevo pentagrama
@cindex pauta
@cindex pentagrama, iniciar
@cindex pentagrama, instanciar
@cindex pentagrama, nuevo
@cindex pentagrama, de percusión
@cindex pentagrama, único
@cindex percusión, pauta de
@cindex pauta, de percusión
@cindex gregoriano, canto, pauta de transcripción de
@cindex rítmica, pauta
@cindex tablatura, pauta de

@funindex \drummode
@funindex DrumStaff
@funindex RhythmicStaff
@funindex TabStaff
@funindex MensuralStaff
@funindex VaticanaStaff
@funindex GregorianTranscriptionStaff

Las @notation{pautas} y los @notation{pentagramas} o pautas de
cinco líneas se crean con las instrucciones @code{\new} o
@code{\context}.  Para ver más detalles, consulte @ref{Crear y
referenciar contextos}.

El contexto básico de pentagrama es @code{Staff}:

@lilypond[verbatim,quote]
\new Staff \relative { c''4 d e f }
@end lilypond

El contexto @code{DrumStaff} crea una pauta de cinco líneas
preparada para un conjunto de batería típico.  Cada instrumento se
presenta con un símbolo distinto.  Los instrumentos se escriben en
el modo de percusión que sigue a una instrucción @code{\drummode},
con cada instrumento identificado por un nombre.  Para ver más
detalles, consulte @ref{Pautas de percusión}.

@lilypond[verbatim,quote]
\new DrumStaff {
  \drummode { cymc hh ss tomh }
}
@end lilypond

@code{RhythmicStaff} crea una pauta de una sola línea que sólo
muestra las duraciones de la entrada.  Se preservan las duraciones
reales.  Para ver más detalles, consulte
@ref{Mostrar los ritmos de la melodía}.

@lilypond[verbatim,quote]
\new RhythmicStaff { c4 d e f }
@end lilypond

@code{TabStaff} crea una tablatura con seis cuerdas en la
afinación estándar de guitarra.  Para ver más detalles, consulte
@ref{Tablaturas predeterminadas}.

@lilypond[verbatim,quote]
\new TabStaff \relative { c''4 d e f }
@end lilypond

Existen dos contextos de pauta específicos para la notación de
música antigua: @code{MensuralStaff} y @code{VaticanaStaff}.  Se
describen en @ref{Contextos predefinidos}.

@code{GregorianTranscriptionStaff} crea una pauta para la notación
moderna de canto gregoriano.  No muestra líneas divisorias.

@lilypond[verbatim,quote]
\new GregorianTranscriptionStaff \relative { c''4 d e f e d }
@end lilypond

Se pueden definir contextos nuevos de pentagrama único.  Para ver
más detalles, consulte @ref{Definir contextos nuevos}.

@morerefs
Glosario musical:
@rglos{staff},
@rglos{staves}.

Referencia de la notación:
@ref{Crear y referenciar contextos},
@ref{Pautas de percusión},
@ref{Mostrar los ritmos de la melodía},
@ref{Tablaturas predeterminadas},
@ref{Contextos predefinidos},
@ref{El símbolo del pentagrama},
@ref{Contextos del canto gregoriano},
@ref{Contextos de la música mensural},
@ref{Definir contextos nuevos}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{Staff},
@rinternals{DrumStaff},
@rinternals{GregorianTranscriptionStaff},
@rinternals{RhythmicStaff},
@rinternals{TabStaff},
@rinternals{MensuralStaff},
@rinternals{VaticanaStaff},
@rinternals{StaffSymbol}.


@node Agrupar pentagramas
@unnumberedsubsubsec Agrupar pentagramas
@translationof Grouping staves

@cindex comienzo del sistema
@cindex pentagramas, varios
@cindex corchete vertical
@cindex llave vertical
@cindex pentagrama, de piano
@cindex pentagrama, grupo de
@cindex pauta, de coro
@cindex sistema, delimitador de comienzo
@cindex coro, sistema de
@cindex piano, sistema de
@cindex piano, pentagramas de
@cindex sistema de piano
@cindex sistema de coro
@cindex sistema

Existen varios contextos para agrupar pentagramas individuales
formando sistemas.  Cada contexto de agrupación establece el
estilo del delimitador de comienzo del sistema y el comportamiento
de las barras de compás.

Si no se especifica ningún contexto, se usan las propiedades
predeterminadas: el grupo comienza con una línea vertical y las
barras de compás no están conectadas.

@lilypond[verbatim,quote]
<<
  \new Staff \relative { c''1 c }
  \new Staff \relative { c''1 c }
>>
@end lilypond

En el contexto @code{StaffGroup}, el grupo se inicia con un
corchete y las barras de compás se dibujan atravesando todos los
pentagramas.

@lilypond[verbatim,quote]
\new StaffGroup <<
  \new Staff \relative { c''1 c }
  \new Staff \relative { c''1 c }
>>
@end lilypond

En un @code{ChoirStaff} (sistema de coro), el grupo se inicia con
un corchete, pero las barras de compás no están conectadas.

@lilypond[verbatim,quote]
\new ChoirStaff <<
  \new Staff \relative { c''1 c }
  \new Staff \relative { c''1 c }
>>
@end lilypond

En un @code{GrandStaff} (sistema de piano), el grupo se inicia con
una llave y las barras de compás se conectan entre los
pentagramas.

@lilypond[verbatim,quote]
\new GrandStaff <<
  \new Staff \relative { c''1 c }
  \new Staff \relative { c''1 c }
>>
@end lilypond

El @code{PianoStaff} (sistema de piano) es idéntico a
@code{GrandStaff}, excepto que contempla directamente la impresión
del nombre del instrumento.  Para ver más detalles, consulte
@ref{Nombres de instrumentos}.

@lilypond[verbatim,quote]
\new PianoStaff \with { instrumentName = "Piano" }
<<
  \new Staff \relative { c''1 c }
  \new Staff \relative { \clef bass c1 c }
>>
@end lilypond

Cada contexto de grupo de pentagramas fija la propiedad del
delimitador de inicio @code{systemStartDelimiter} a uno de los
siguientes valores: @code{SystemStartBar} (línea),
@code{SystemStartBrace} (llave) o @code{SystemStartBracket}
(corchete).  También está disponible un cuarto delimitador,
@code{SystemStartSquare} (corchete en ángulo recto), pero se debe
especificar explícitamente.

Se pueden definir contextos nuevos de grupo de pentagramas.  Para
ver más detalles, consulte @ref{Definir contextos nuevos}.

@snippets

@cindex corchete, cuadrado, al inicio de un grupo
@cindex cuadrado, corchete, al inicio de un grupo
@cindex grupo de pentagramas, corchete cuadrado al inicio
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/use-square-bracket-at-the-start-of-a-staff-group.ly}

@cindex corchete, al comienzo de un pentagrama único
@cindex llave, al comienzo de un pentagrama único
@cindex pentagrama, único, con cochete o llave
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/display-bracket-with-only-one-staff-in-a-system.ly}

@cindex diseño «mensurstriche»
@cindex mensurstriche, diseño
@cindex renacimiento, música del
@cindex transcripción de música mensural
@cindex mensural, música, transcripción de
@cindex línea, de compás, entre pautas
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/mensurstriche-layout-bar-lines-between-the-staves.ly}


@morerefs
Glosario musical:
@rglos{brace},
@rglos{bracket},
@rglos{grand staff}.

Referencia de la notación:
@ref{Nombres de instrumentos},
@ref{Definir contextos nuevos}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{Staff},
@rinternals{StaffGroup},
@rinternals{ChoirStaff},
@rinternals{GrandStaff},
@rinternals{PianoStaff},
@rinternals{SystemStartBar},
@rinternals{SystemStartBrace},
@rinternals{SystemStartBracket},
@rinternals{SystemStartSquare}.


@node Grupos de pentagramas anidados
@unnumberedsubsubsec Grupos de pentagramas anidados
@translationof Nested staff groups

@cindex pentagramas, anidados
@cindex anidamiento, de pentagramas
@cindex sistema, delimitadores de inicio anidados
@cindex anidados, corchetes de pentagrama
@cindex corchetes, anidados
@cindex llaves, anidado de

Los contextos de grupos de pentagramas se pueden anidar hasta una
profundidad arbitraria.  En este caso, cada contexto descendiente
crea un corchete nuevo adyacente al corchete de su grupo padre.

@lilypond[verbatim,quote]
\new StaffGroup <<
  \new Staff \relative { c''2 c | c2 c }
  \new StaffGroup <<
    \new Staff \relative { g'2 g | g2 g }
    \new StaffGroup \with {
      systemStartDelimiter = #'SystemStartSquare
    }
    <<
      \new Staff \relative { e'2 e | e2 e }
      \new Staff \relative { c'2 c | c2 c }
    >>
  >>
>>
@end lilypond

Se pueden definir nuevos contextos de grupos de pentagramas
anidados.  Para ver más detalles, consulte
@ref{Definir contextos nuevos}.

@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/nesting-staves.ly}

@morerefs
Referencia de la notación:
@ref{Agrupar pentagramas},
@ref{Nombres de instrumentos},
@ref{Definir contextos nuevos}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{StaffGroup},
@rinternals{ChoirStaff},
@rinternals{SystemStartBar},
@rinternals{SystemStartBrace},
@rinternals{SystemStartBracket},
@rinternals{SystemStartSquare}.


@node Separación de sistemas
@unnumberedsubsubsec Separación de sistemas
@translationof Separating systems

@cindex separación de sistemas, marca de

Si el número de sistemas por página varía de una página a otra, es
costumbre separar los sistemas colocando una marca separadora
entre ellos.  De forma predeterminada, el separador de sistemas es
nulo, pero se puede activar con una opción de @code{\paper}.

@c \book is required here to display the system separator
@c ragged-right is required as there are two systems
@lilypond[verbatim,quote,ragged-right]
\book {
  \score {
    \new StaffGroup <<
      \new Staff {
        \relative {
          c''4 c c c
          \break
          c4 c c c
        }
      }
      \new Staff {
        \relative {
          c''4 c c c
          \break
          c4 c c c
        }
      }
    >>
  }
  \paper {
    system-separator-markup = \slashSeparator
    % following commands are needed only to format this documentation
    paper-width = 100\mm
    paper-height = 100\mm
    tagline = ##f
  }
}
@end lilypond

@morerefs
Referencia de la notación:
@ref{Disposición de la página}.

Fragmentos de código:
@rlsr{Notación de los pentagramas}.


@node Modificación de pentagramas sueltos
@subsection Modificación de pentagramas sueltos
@translationof Modifying single staves

Esta sección explica cómo cambiar los atributos específicos de un
pentagrama: por ejemplo, cambiar el número de líneas o el tamaño
de la pauta.  También se describen los métodos para comenzar y
terminar los pentagramas, y establecer secciones de ossia.

@menu
* El símbolo del pentagrama::
* Pentagramas de Ossia::
* Ocultar pentagramas::
@end menu


@node El símbolo del pentagrama
@unnumberedsubsubsec El símbolo del pentagrama
@translationof Staff symbol

@cindex pentagrama, símbolo del
@cindex pentagrama, detener e iniciar líneas del
@cindex pentagrama, mofidicar las líneas del
@cindex adicional, línea
@cindex adicional, interna, línea
@cindex adicional, modificar línea
@cindex línea, del pentagrama
@cindex línea, adicional

@funindex \startStaff
@funindex \stopStaff

Se pueden usar las instrucciones @code{\stopStaff} y
@code{\startStaff} para detener y (re)iniciar, respectivamente, la
impresión de las líneas de la pauta en cualquier punto de la
partitura.

@lilypond[verbatim,quote]
\relative {
  \stopStaff f''4 d \startStaff g, e
  f'4 d \stopStaff g, e
  f'4 d \startStaff g, e
}
@end lilypond

@predefined
@code{\startStaff},
@code{\stopStaff}.
@endpredefined

Las líneas de la pauta pertenecen al grob @code{StaffSymbol}
(incluidas las líneas adicionales) y se pueden modificar usando
las propiedades de @code{StaffSymbol}, pero esas modificaciones
deben hacerse antes de que el pentagrama se (re)inicie.

Se puede cambiar el número de líneas de la pauta:

@lilypond[verbatim,quote]
\relative {
  f''4 d \stopStaff
  \override Staff.StaffSymbol.line-count = #2
  \startStaff g, e |

  f'4 d \stopStaff
  \revert Staff.StaffSymbol.line-count
  \startStaff g, e |
}
@end lilypond

La posición de cada una de las líneas de la pauta también puede
cambiarse.  Una lista de números fija la posición de cada línea.
@code{0}@tie{}corresponde a la línea central normal, y las
posiciones normales de las líneas son
@code{(-4@tie{}-2@tie{}0@tie{}2@tie{}4)}.  Se imprime una sola
línea de pauta por cada valor que se introduce, de manera que el
número de líneas así como su posición en la pauta pueden cambiarse
con una sola operación de sobreescritura.

@lilypond[verbatim,quote]
\relative {
  f''4 d \stopStaff
  \override Staff.StaffSymbol.line-positions = #'(1 3 5 -1 -3)
  \startStaff g, e |
  f'4 d \stopStaff
  \override Staff.StaffSymbol.line-positions = #'(8 6.5 -6 -8 -0.5)
  \startStaff g, e |
}
@end lilypond

Para preservar las direcciones típicas de las plicas (hacia arriba
para la mitad inferior del pentagrama y hacia abajo para la mitad
superior), debemos alinear la línea (o espacio) central de la
pauta personalizada con la posición de la línea central normal
(0).  Puede ser necesario un ajuste de la posición de la clave y
del Do@tie{}central para que se correspondan a las líneas nuevas.
Véase @ref{Clave}.

Puede cambiarse el grosor de las líneas de la pauta.  También
resultan afectadas, de forma predeterminada, las líneas
adicionales y no la plica de las figuras.

@lilypond[verbatim,quote]
\new Staff \with {
  \override StaffSymbol.thickness = #3
} \relative {
  f''4 d g, e
}
@end lilypond

También es posible fijar el grosor de las líneas adicionales de
forma independiente del de las líneas de la pauta.

@lilypond[verbatim,quote]
\new Staff \with {
  \override StaffSymbol.thickness = #2
  \override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4)
} \relative {
  f'''4 a, a,, f
}
@end lilypond

@noindent
El primer valor se multiplica por el grosor de las líneas del
pentagrama, el segundo por el ancho de un espacio del pentagrama,
y después los dos valores se suman para obtener el grosor de las
líneas adicionales.

Se pueden alterar las posiciones de las líneas adicionales:

@lilypond[verbatim,quote]
\new Staff \with {
  \override StaffSymbol.ledger-positions = #'(-3 -2 -1 2 5 6)
} \relative {
  f'''4 a, a,, f
}
@end lilypond

Puede hacerse que las líneas adicionales añadidas aparezcan por
encima o por debajo de la cabeza de las figuras, dependiendo de la
posición actual relativa a otras cabezas de figura que tienen
asimismo sus propias líneas adicionales.

@lilypond[verbatim,quote]
\new Staff \with {
  \override StaffSymbol.ledger-extra = #4
} \relative {
  f'''4 a, d, f,
}
@end lilypond

También puede hacerse que las líneas adicionales aparezcan dentro
del pentagrama allí donde se requieren líneas de pauta
personalizadas.  El ejemplo muestra la posición predeterminada de
las líneas adicionales cuando el valor de posición explícito
@code{ledger-position} se ha fijado o no.  La instrucción
@code{\stopStaff} se necesita en el ejemplo para revertir la
instrucción de sobreescritura @code{\override} para todo el
@code{StaffSymbol} (el símbolo de pauta).

@lilypond[verbatim,quote]
\relative d' {
  \override Staff.StaffSymbol.line-positions = #'(-8 0 2 4)
  d4 e f g
  \stopStaff
  \startStaff
  \override Staff.StaffSymbol.ledger-positions = #'(-8 -6 (-4 -2) 0)
  d4 e f g
}
@end lilypond

Puede alterarse la distancia entre líneas de la pauta.  Esto
afecta también al espaciado de las líneas adicionales.

@lilypond[verbatim,quote]
\new Staff \with {
  \override StaffSymbol.staff-space = #1.5
} \relative {
  f'''4 d, g, e,
}
@end lilypond

@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/making-some-staff-lines-thicker-than-the-others.ly}

@morerefs
Glosario musical:
@rglos{line},
@rglos{ledger line},
@rglos{staff}.

Referencia de la notación:
@ref{Clave}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{StaffSymbol},
@rinternals{staff-symbol-interface}.


@node Pentagramas de Ossia
@unnumberedsubsubsec Pentagramas de Ossia
@translationof Ossia staves

@cindex pentagrama a la francesa
@cindex ossia
@cindex francesa, pentagrama a la
@cindex pauta, escalado de
@cindex escalado, del pentagrama

@funindex \startStaff
@funindex \stopStaff

Los pentagramas @notation{Ossia} se pueden preparar mediante la
creación de un pentagrama simultáneo nuevo en la posición
adecuada:

@lilypond[verbatim,quote]
\new Staff \relative {
  c''4 b d c
  <<
    { c4 b d c }
    \new Staff { e4 d f e }
  >>
  c4 b c2
}
@end lilypond

@noindent
Sin embargo, el ejemplo anterior no es lo que normalmente se
desea.  Para crear pentagramas de ossia que estén encima del
pentagrama original, que no tengan compás ni clave, y que tengan
un tamaño menor de tipografía se deben usar varios trucos.  El
Manual de aprendizaje describe una técnica específica para llegar
a este objetivo, empezando por @rlearning{Anidado de expresiones
musicales}.

El ejemplo siguiente utiliza la propiedad @code{alignAboveContext}
para alinear el pentagrama de ossia.  Este método es muy
conveniente cuando se necesitan sólo algunos pentagramas de ossia.

@lilypond[verbatim,quote]
\new Staff = "main" \relative {
  c''4 b d c
  <<
    { c4 b d c }

    \new Staff \with {
      \remove Time_signature_engraver
      alignAboveContext = "main"
      \magnifyStaff #2/3
      firstClef = ##f
    }
    { e4 d f e }
  >>
  c4 b c2
}
@end lilypond

Si se requieren muchos pentagramas de ossia aislados, puede ser
más conveniente la creación de un contexto @code{Staff} vacío con
un @emph{identificador de contexto} específico; después se pueden
crear los pentagramas de ossia @emph{llamando} a este contexto y
usando @code{\startStaff} y @code{\stopStaff} en los puntos
deseados.  Las ventajas de este método son más patentes si la
pieza es más larga que en ejemplo siguiente.

@lilypond[verbatim,quote,ragged-right]
<<
  \new Staff = "ossia" \with {
    \remove Time_signature_engraver
    \hide Clef
    \magnifyStaff #2/3
  }
  { \stopStaff s1*6 }

  \new Staff \relative {
    c'4 b c2
    <<
      { e4 f e2 }
      \context Staff = "ossia" {
        \startStaff e4 g8 f e2 \stopStaff
      }
    >>
    g4 a g2 \break
    c4 b c2
    <<
      { g4 a g2 }
      \context Staff = "ossia" {
        \startStaff g4 e8 f g2 \stopStaff
      }
    >>
    e4 d c2
  }
>>
@end lilypond

Como alternativa, se puede usar la instrucción
@code{\RemoveAllEmptyStaves} para crear pentagramas de ossia.
Este método es muy conveniente cuando los pentagramas de ossia
aparecen inmediatamente después de un salto de línea. Para ver más
información sobre @code{\RemoveAllEmptyStaves}, consulte
@ref{Ocultar pentagramas}.

@lilypond[verbatim,quote,ragged-right]
<<
  \new Staff = "ossia" \with {
    \remove Time_signature_engraver
    \hide Clef
    \magnifyStaff #2/3
    \RemoveAllEmptyStaves
  } \relative {
    R1*3
    c''4 e8 d c2
  }
  \new Staff \relative {
    c'4 b c2
    e4 f e2
    g4 a g2 \break
    c4 b c2
    g4 a g2
    e4 d c2
  }
>>
@end lilypond


@snippets

@cindex ossia, posicionamiento
@cindex lyrics, posicionamiento
@cindex posicionamiento, de letra
@cindex posicionamiento, de ossia
@funindex alignBelowContext
@funindex alignAboveContext
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/vertically-aligning-ossias-and-lyrics.ly}

@morerefs
Glosario musical:
@rglos{ossia},
@rglos{staff},
@rglos{Frenched staff}.

Manual de aprendizaje:
@rlearning{Anidado de expresiones musicales},
@rlearning{Tamaño de los objetos},
@rlearning{Longitud y grosor de los objetos}.

Referencia de la notación:
@ref{Ocultar pentagramas}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{StaffSymbol}.


@node Ocultar pentagramas
@unnumberedsubsubsec Ocultar pentagramas
@translationof Hiding staves

@cindex francesa, partituras a la
@cindex francesa, pentagrama a la
@cindex pentagrama, ocultación de
@cindex pentagrama, vacío
@cindex ocultar, pentagrama
@cindex vacío, pentagrama

@funindex \RemoveEmptyStaves
@funindex \RemoveAllEmptyStaves
@funindex Staff_symbol_engraver
@funindex \stopStaff


Se pueden ocultar las líneas del pentagrama quitando el grabador
@code{Staff_symbol_engraver} del contexto de @code{Staff}.  Como
alternativa se puede utilizar la instrucción @code{\stopStaff}.

@lilypond[verbatim,quote]
\new Staff \with {
  \remove Staff_symbol_engraver
}
\relative { a''8 f e16 d c b a2 }
@end lilypond


Se pueden ocultar los pentagramas vacíos (para hacer la que se
conoce como @q{partitura a la francesa}) aplicando la instrucción
@code{\RemoveEmptyStaves} sobre un contexto, lo cual se puede
hacer globalmente (dentro del bloque @code{\layout}) así como para
pautas específicas solamente (dentro de un bloque @code{\with}).
Esta instrucción elimina todas las pautas vacías de la partitura
excepto las del primer sistema.  Si queremos ocultar también las
del primer sistema, usamos @code{\RemoveAllEmptyStaves}.

@lilypond[verbatim,quote,ragged-right]
\layout {
  \context {
    \Staff
    \RemoveEmptyStaves
  }
}

\relative <<
  \new Staff {
    e'4 f g a \break
    b1 \break
    a4 b c2
  }
  \new Staff {
    c,4 d e f \break
    R1 \break
    f4 g c,2
  }
>>
@end lilypond

@funindex keepAliveInterfaces

Se considera que un pentagrama está vacío cuando contiene
solamente silencios multicompás, silencios normales, silencios
oscultos o saltos, o una combinación de todos los elementos
anteriores.  @emph{Cualquier otro} objeto musical (que hace que un
pentagrama no se considere como vacío) está en la lista de la
propiedad de contexto @code{keepAliveInterfaces}, como se
establece inicialmente en el archivo @file{ly/engraver-init.ly}.

@funindex remove-empty
@funindex remove-first

Tanto @code{\RemoveEmptyStaves} como @code{\RemoveAllEmptyStaves}
son atajos predefinidos que establecen propiedades tales como
@code{remove-empty} y @code{remove-first} para el objeto
@code{VerticalAxisGroup}, como aparece explicado en
@ref{Identificadores de modificación de contextos}.

El grabador @code{Keep_alive_together_engraver} solo permite que
grupos de pentagramas se puedan eliminar juntos y no
individualmente.  Por defecto, forma parte del contexto
@code{PianoStaff}: una parte de piano solo se oculta cuando sus
dos pentagramas están vacíos.  De forma semejante, es una práctica
común del tipografiado de las partituras orquestales eliminar
grupos de pentagramas vacíos en lugar de pautas individuales; esto
es posible conseguirlo añadiendo el grabador
@code{Keep_alive_together_engraver} al contexto de agrupamiento de
pentagramas adecuado, como aparece explicado en
@ref{Modificar los complementos (plug-ins) de contexto} (consulte
@ref{Agrupar pentagramas} para ver los nombres de los contextos).

@example
\layout @{
  \context @{
    \StaffGroup
    \RemoveEmptyStaves
    \consists Keep_alive_together_engraver
  @}
@}
@end example

En el ejemplo siguiente, los pentagramas de instrumentos de viento
son eliminados en el segundo sistema; sin embargo, el contrabajo
no se elimina porque forma parte del grupo mayor de cuerda
frotada, que está tocando en ese momento.

@lilypond
%{
  This is taken from Berlioz, Symphonie fantastique.
  http://imslp.eu/files/imglnks/euimg/5/54/IMSLP522307-PMLP3653-NBE_-_Symphonie_Fantastique_-_I._Reveries,_Passions_(etc).pdf
%}
\layout {
  \context {
    \StaffGroup
    \RemoveEmptyStaves
    \consists Keep_alive_together_engraver
  }
}

\paper {
  indent = 25
  short-indent = 10
}

<<
  \new StaffGroup <<
    \new Staff \with { instrumentName = "Flute" } \relative c'' {
      \key c \minor
      <<
        { \tuplet 3/2 4 { \repeat unfold 4 { g'8( g g) } } }
        \\
        { r2 \tuplet 3/2 4 { \repeat unfold 2 { f8( f f) } } }
      >>
      <ees g>1~
      q16 r16 r8 r4 r2
      R1\fermata
      R1*3
    }
    \new Staff \with { instrumentName = "Oboe" } \relative c' {
      \key c \minor
      r2
      \tuplet 3/2 4 { g'8( a b) c( cis d) }
      <g, ees'>1~
      q16 r16 r8 r4 r2
      R1\fermata
      R1*3
    }
    \new Staff \with { instrumentName = "Basson" } \relative c {
      \key c \minor
      \clef bass
      r2 r4 \tuplet 3/2 { r8 g'( b,) }
      c1~
      c16 r16 r8 r4 r2
      R1\fermata
      R1*3
    }
  >>
  \new StaffGroup <<
    \new Staff \with {
      instrumentName = "Violin I"
      shortInstrumentName = "Vl."
    } \relative c'' {
      \key c \minor
      R1*2
      g'8. g16( aes8. g16) g8( f) f8.( ees16)
      ees2( d16) r16\fermata d8( ees f)
      g4( ees8) r16 c aes'4( g8) r16 fis
      g2( f8) r8 r4\fermata
    }
    \new Staff \with {
      instrumentName = "Violin II"
      shortInstrumentName = "Vl. II"
    } \relative c' {
      \key c \minor
      R1*2
      r2 b'4( c)
      c2~ c16 r16\fermata b8( c d)
      ees4( c8) r8 ees4~ ees8 r
      d2~ d8 r8 r4\fermata
    }
    \new Staff \with {
      instrumentName = "Alto"
      shortInstrumentName = "Al."
    } \relative c' {
      \key c \minor
      \clef alto
      R1*2
      r2 d4( c
      a'2~) a16 r16\fermata aes8( g f)
      ees4~ ees8 r c'4~ c8 r8
      b2~ b8 r8 r4\fermata
    }
    \new Staff \with {
      instrumentName = "Cello"
      shortInstrumentName = "Cl."
    } \relative c {
      \key c \minor
      \clef bass
      R1*2
      r2 aes'4( g
      fis2~) fis16 r16\fermata f8( ees d)
      c4~ c8 r8 c'4~ c8 r8
      b2~ b8 r8 r4 \fermata
    }
    \new Staff \with {
      instrumentName = "Double bass"
      shortInstrumentName = "D.B."
    } {
      \key c \minor
      \clef bass
      R1*6
    }
  >>
>>
@end lilypond

@cindex divisi, pentagramas
@cindex pentagramas, divisi
@funindex remove-layer

El grabador @code{Keep_alive_together_engraver} usa internamente
la propiedad @code{remove-layer} del @code{VerticalAxisGroup} de
un pentagrama para decidir si imprimirlo o no, cuando se considera
vacío.  Dicha propiedad puede también establecerse directamente,
en cuyo caso actúa como un índice de prioridad: los valores más
cercanos a cero tienen precedencia frente a los números más altos,
y de esta forma los pentagramas cuyo @code{remove-layer} es más
alto quedarán enmascarados en favor de los que tienen un número
más bajo.

Esto es especialmente útil para los pentagramas en @q{divisi},
donde ciertas partes individuales (véase
@ref{Escritura de las particellas}) a veces tienen que expandirse
a más de un pentagrama.  En el ejemplo siguiente, dos partes
resultan dirigidas a un total de @emph{tres} pentagramas; sin
embargo, los tres pentagramas nunca se imprimen todos al mismo
tiempo:

@itemize

@item
en los primeros sistemas, solo uno de ellos se imprime, porque la
propiedad @code{keepAliveInterfaces} se ha establecido a una lista
vacía; por tanto, los otros dos pentagramas se considera que están
vacíos y por ello ocultos, sin que importe su contenido;

@item
cuando la propiedad resulta des-establecida (volviendo así a su
valor predeterminado), ya no impide que los otros dos pentagramas
se impriman; sin embargo, como el valor de @code{remove-layer} de
éstos es menor que el del pentagrama suelto, estos dos pentagramas
se imprimen ahora en su lugar.

@end itemize

@noindent
Tales sustituciones se aplican no solamente a notas, acordes y
otros eventos musicales que tienen lugar inmediatamente después de
cambiar el valor, sino a todo el sistema dentro del cual ocurre el
cambio.

@lilypond[verbatim,papersize=a6]
\layout {
  short-indent = 2\cm
  indent = 3\cm
  \context {
    \Staff
    keepAliveInterfaces = #'()
  }
}

violI = {
  \repeat unfold 24 { d'4 }
  \once \unset Staff.keepAliveInterfaces
  <d' g''>2
  \repeat unfold 14 { d'4 }
  \bar "|."
}

violII = {
  \repeat unfold 24 { g4 }
  <g d'>2
  \repeat unfold 14 { g4 }
  \bar "|."
}

\new StaffGroup \with { \consists Keep_alive_together_engraver } <<
  \new Staff \with {
    instrumentName = "Violins"
    shortInstrumentName = "V I & II"
    \override VerticalAxisGroup.remove-layer = 2
  } <<  \violI \\ \violII  >>
  \new Staff \with {
    instrumentName = "Violin I"
    shortInstrumentName = "V I"
    \RemoveAllEmptyStaves
    \override VerticalAxisGroup.remove-layer = 1
  } \violI
  \new Staff \with {
    instrumentName = "Violin II"
    shortInstrumentName = "V II"
    \RemoveAllEmptyStaves
    \override VerticalAxisGroup.remove-layer = 1
  } \violII
>>
@end lilypond

@cindex ossia

También se puede usar @code{\RemoveAllEmptyStaves} para crear
secciones de ossia para un pentagrama.  Para ver más detalles,
consulte @ref{Pentagramas de Ossia}.


@predefined
@code{\RemoveEmptyStaves},
@code{\RemoveAllEmptyStaves}.
@endpredefined

@morerefs
Glosario musical:
@rglos{Frenched staff}.

Manual de aprendizaje:
@rlearning{Visibilidad y color de los objetos}.

Referencia de la notación:
@ref{Cambiar los valores por omisión de los contextos},
@ref{El símbolo del pentagrama},
@ref{Pentagramas de Ossia},
@ref{Notas ocultas},
@ref{Silencios invisibles},
@ref{Visibilidad de los objetos},
@ref{Identificadores de modificación de contextos},
@ref{Agrupar pentagramas},
@ref{Modificar los complementos (plug-ins) de contexto}.

Archivos instalados:
@file{ly/engraver-init.ly}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{ChordNames},
@rinternals{FiguredBass},
@rinternals{Lyrics},
@rinternals{Staff},
@rinternals{VerticalAxisGroup},
@rinternals{Staff_symbol_engraver},
@rinternals{Axis_group_engraver},
@rinternals{Keep_alive_together_engraver}.

@knownissues
La eliminación del grabador @code{Staff_symbol_engraver} también
oculta las barras de compás.  Si se fuerza la visibilidad de la
barra de compás, pueden ocurrir errores de formato visual.  En
este caso, utilice las siguientes sobreescrituras de valores en
vez de quitar el grabador:

@example
\omit StaffSymbol
\override NoteHead.no-ledgers = ##t
@end example

Para ver los fallos y problemas conocidos, así como las
advertencias asociadas con @code{\RemoveEmptyStaves}, consulte
@ref{Cambiar los valores por omisión de los contextos}.


@node Escritura de las particellas
@subsection Escritura de las particellas
@translationof Writing parts

@cindex partes individuales
@cindex particellas
@cindex partes de sección
@cindex partes, individuales
@cindex partes, de atril
@cindex partes, de sección

Esta sección explica cómo preparar el papel de atril, o
particellas, para música orquestal o de conjunto, lo que
frecuentemente requiere insertar nombres de instrumentos en la
partitura.  También se describen métodos para citar otras voces y
dar formato a las notas guía, así como una manera de contraer
varios compases vacíos consecutivos dentro de las partes
individuales.

Además, puede verse un método para la impresión de los pentagramas
de @emph{divisi}, que se usan a veces en las particellas, en
@ref{Ocultar pentagramas}.

@menu
* Nombres de instrumentos::
* Citar otras voces::
* Formateo de las notas guía::
* Compresión de los compases vacíos::
@end menu


@node Nombres de instrumentos
@unnumberedsubsubsec Nombres de instrumentos
@translationof Instrument names

@cindex instrumento, nombre del
@cindex instrumento, nombre abreviado

Se pueden imprimir los nombres de los instrumentos en el lado
izquierdo de los pentagramas dentro de los contextos @code{Staff},
@code{PianoStaff}, @code{StaffGroup}, @code{GrandStaff} y
@code{ChoirStaff}.  El valor de @code{instrumentName} se usa para
el primer pentagrama, y el valor de @code{shortInstrumentName} se
usa para todos los pentagramas siguientes.

@lilypond[verbatim,quote,ragged-right]
\new Staff \with {
  instrumentName = "Violin "
  shortInstrumentName = "Vln. "
} \relative {
  c'4.. g'16 c4.. g'16 \break | c1 |
}
@end lilypond

@cindex instrumento, nombre, complejo

También podemos usar @code{\markup} para construir nombres de
instrumento más complicados:

@lilypond[verbatim,quote]
\new Staff \with {
  instrumentName = \markup {
    \column { "Clarinetti"
      \line { "in B" \smaller \flat }
    }
  }
} \relative {
  c''4 c,16 d e f g2
}
@end lilypond

@cindex instrumento, nombre, centrar

Cuando se agrupan dos o más contextos de pentagrama, los nombres
de instrumento y los nombres cortos aparecen centrados de forma
predeterminada.  Para centrar nombres de instrumento de varias
líneas, se debe utilizar @code{\center-column}:

@lilypond[verbatim,quote,indent=1.5\cm]
<<
  \new Staff \with {
    instrumentName = "Flute"
  } \relative {
    f''2 g4 f
}
  \new Staff \with {
    instrumentName = \markup {
      \center-column { "Clarinet"
        \line { "in B" \smaller \flat }
      }
    }
  } \relative { c''4 b c2 }
>>
@end lilypond

@funindex indent
@funindex short-indent

Sin embargo, si los nombres de instrumento son más largos, éstos
no se centran para un grupo de pentagramas a no ser que se
aumenten los valores del sangrado, @code{indent}, y del sangrado
corto, @code{short-indent}.  Para ver más detalles sobre estos
ajustes, consulte
@ref{Variables de paper para desplazamientos y sangrados}.

@lilypond[verbatim,quote,ragged-right]
<<
  \new Staff \with {
    instrumentName = "Alto Flute in G"
    shortInstrumentName = "Flt."
  } \relative {
    f''2 g4 f \break
    g4 f g2
  }
  \new Staff \with {
    instrumentName = "Clarinet"
    shortInstrumentName = "Clar."
  } \relative {
    c''4 b c2 \break
    c2 b4 c
  }
>>

\layout {
  indent = 3.0\cm
  short-indent = 1.5\cm
}
@end lilypond

@cindex nombre, de instrumento, añadir a otros contextos

Para añadir nombres de instrumento a otros contextos (como
@code{ChordNames} o @code{FiguredBass}), debemos añadir el
grabador @code{Instrument_name_engraver} a dicho contexto. Para
ver más detalles, consulte
@ref{Modificar los complementos (plug-ins) de contexto}.

@cindex nombre, de instrumento, cambiar
@cindex cambiar, nombre de instrumento

El nombre de instrumento corto @code{shortInstrumentName} se puede
cambiar en mitad de una pieza, igual que otros ajustes que pueden
ser necesarios para el instrumento nuevo; sin embargo, sólo el
primer @code{instrumentName} se imprime y el resto de ellos se
ignoran:

@lilypond[verbatim,quote,ragged-right]
prepPiccolo = <>^\markup \italic { muta in Piccolo }

prepFlute = <>^\markup \italic { muta in Flauto }

setPiccolo = {
  <>^\markup \bold { Piccolo }
  \transposition c''
}

setFlute = {
  <>^\markup \bold { Flute }
  \transposition c'
}

\new Staff \with {
  instrumentName = "Flute"
  shortInstrumentName = "Flt."
}
\relative {
  g'1 g g g \break
  g1 g \prepPiccolo R R \break
  \set Staff.instrumentName = "Piccolo"
  \set Staff.shortInstrumentName = "Picc."
  \setPiccolo
  g1 g g g \break
  g1 g \prepFlute R R \break
  \set Staff.instrumentName = "Flute"
  \set Staff.shortInstrumentName = "Flt."
  \setFlute
  g1 g g g
}
@end lilypond


@morerefs
Referencia de la notación:
@ref{Variables de paper para desplazamientos y sangrados},
@ref{Modificar los complementos (plug-ins) de contexto}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{InstrumentName},
@rinternals{PianoStaff},
@rinternals{Staff}.


@node Citar otras voces
@unnumberedsubsubsec Citar otras voces
@translationof Quoting other voices

@cindex guía, voces
@cindex citar otras voces
@cindex fragmento, citar
@cindex nota, guía

@funindex \addQuote
@funindex \quoteDuring
@funindex \transposition

Es muy frecuente que una voz use las mismas notas que otra voz.
Por ejemplo, los violines primero y segundo tocando la misma frase
durante un determinado pasaje musical.  Esto se hace dejando que
una voz @emph{cite} a la otra, sin tener que volver a introducir
la música para la segunda voz.

La instrucción @code{\addQuote}, utilizada en el ámbito del nivel
sintáctico superior, define un flujo de música desde el que es
posible citar fragmentos.

La instrucción @code{\quoteDuring} se usa para indicar el punto en
que comienza la cita.  Va seguida por dos argumentos: el nombre de
la voz citada, tal y como se definió con @code{\addQuote}, y una
expresión musical que indica la duración de la cita.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  a'4 gis g gis | b4^"quoted" r8 ais\p a4( f)
}

oboeNotes = \relative {
  c''4 cis c b \quoteDuring "flute" { s1 }
}

\addQuote "flute" { \fluteNotes }

\score {
  <<
    \new Staff \with { instrumentName = "Flute" } \fluteNotes
    \new Staff \with { instrumentName = "Oboe" } \oboeNotes
  >>
}
@end lilypond

Si la expresión musical que se usa para @code{\quoteDuring}
contiene cualquier cosa que no sea un silencio de separación o un
silencio multicompás, se produce una situación de polifonía, lo
que no suele ser deseable:

@lilypond[verbatim,quote]
fluteNotes = \relative {
  a'4 gis g gis | b4^"quoted" r8 ais\p a4( f)
}

oboeNotes = \relative {
  c''4 cis c b \quoteDuring "flute" { e4 r8 ais b4 a }
}

\addQuote "flute" { \fluteNotes }

\score {
  <<
    \new Staff \with { instrumentName = "Flute" } \fluteNotes
    \new Staff \with { instrumentName = "Oboe" } \oboeNotes
  >>
}
@end lilypond

Si una instrucción @code{\unfoldRepeats} dentro de una expresión
musical se necesita imprimir al usar @code{\quoteDuring}, entonces
debe contener también su propia instrucción @code{\unfoldRepeats};

@lilypond[verbatim,quote]
fluteNotes = \relative {
  \repeat volta 2 { a'4 gis g gis }
}

oboeNotesDW = \relative {
  \repeat volta 2 \quoteDuring "incorrect" { s1 }
}

oboeNotesW = \relative {
  \repeat volta 2 \quoteDuring "correct" { s1 }
}


\addQuote "incorrect" { \fluteNotes }

\addQuote "correct" { \unfoldRepeats \fluteNotes }

\score {
  \unfoldRepeats
  <<
    \new Staff \with { instrumentName = "Flute" }
    \fluteNotes
    \new Staff \with { instrumentName = "Oboe (incorrect)" }
    \oboeNotesDW
    \new Staff \with { instrumentName = "Oboe (correct)" }
    \oboeNotesW
  >>
}
@end lilypond

La instrucción @code{\quoteDuring} usa los ajustes de
@code{\transposition} tanto de la parte citada como de la que
cita, para producir notas que tienen la misma altura de sonido en
la parte que cita y en las de la parte citada.

@lilypond[verbatim,quote]
clarinetNotes = \relative c'' {
  \transposition bes
  \key d \major
  b4 ais a ais | cis4^"quoted" r8 bis\p b4( f)
}

oboeNotes = \relative {
  c''4 cis c b \quoteDuring "clarinet" { s1 }
}

\addQuote "clarinet" { \clarinetNotes }


\score {
  <<
    \new Staff \with { instrumentName = "Clarinet" } \clarinetNotes
    \new Staff \with { instrumentName = "Oboe" } \oboeNotes
  >>
}
@end lilypond

@funindex note-event
@funindex articulation-event
@funindex dynamic-event
@funindex rest-event
@funindex slur-event
@funindex crescendo-event

@funindex quotedEventTypes
@funindex quotedCueEventTypes

De forma predeterminada, la música citada incluye todas las
articulaciones, matices dinámicos, elementos de marcado, etc. de
la expresión citada.  Es posible elegir cuáles de estos objetos de
la música que se cita se imprimen, mediante la propiedad de
contexto @code{quotedEventTypes}.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  a'2 g2 |
  b4\<^"quoted" r8 ais a4\f( c->)
 }

oboeNotes = \relative {
  c''2. b4 |
  \quoteDuring "flute" { s1 }
}

\addQuote "flute" { \fluteNotes }

\score {
  <<
    \set Score.quotedEventTypes = #'(note-event articulation-event
                                     crescendo-event rest-event
                                     slur-event dynamic-event)
    \new Staff \with { instrumentName = "Flute" } \fluteNotes
    \new Staff \with { instrumentName = "Oboe" } \oboeNotes
  >>
 }
@end lilypond

Las citas también se pueden etiquetar, véase @ref{Uso de etiquetas}.

@morerefs
Referencia de la notación:
@ref{Transposición de los instrumentos},
@ref{Uso de etiquetas}.

Archivos de inicio:
@file{scm/define-event-classes.scm}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{Music classes},
@rinternals{QuoteMusic},
@rinternals{Voice}.

@knownissues
Sólo el contenido de la primera voz de una instrucción
@code{\addQuote} se tiene en cuenta para la cita, de manera que si
la expresión musical contiene enunciados @code{\new} o
@code{\context Voice}, sus contenidos no serían citados.  La cita
de notas de adorno no está contemplada y puede hacer que LilyPond
termine de forma abrupta; la cita de unos tresillos dentro de
otros puede dar como resultado una notación de pobre calidad.


@node Formateo de las notas guía
@unnumberedsubsubsec Formateo de las notas guía
@translationof Formatting cue notes

@cindex guía, formateo de las notas
@cindex nota, guía
@cindex guía, nota
@cindex guía, nota, formato de
@cindex fragmento
@cindex citar otras voces
@cindex voz, citar


@funindex \cueDuring
@funindex \cueClef
@funindex \cueClefUnset
@funindex \cueDuringWithClef
@funindex \quoteDuring

@cindex nota, pequeña
@cindex pequeña, nota
@cindex CueVoice

La manera más sencilla de dar formato a las notas guía es crear
explícitamente un contexto @code{CueVoice} dentro de la parte.

@lilypond[verbatim]
\relative {
  R1
  <<
    { e'2\rest r4. e8 }
    \new CueVoice {
      \stemUp d'8^"flute" c d e fis2
    }
  >>
  d,4 r a r
}
@end lilypond

La instrucción @code{\cueClef} puede usarse también con un
contexto @code{CueVoice} explícito si se requiere un cambio de
clave, e imprime una clave del tamaño adecuado para las notas
guía.  Después puede utilizarse la instrucción
@code{\cueClefUnset} para volver a la clave original, de nuevo con
un signo de clave del tamaño adecuado.

@lilypond[verbatim,noragged-right]
\relative {
  \clef "bass"
  R1
  <<
    { e'2\rest r4. \cueClefUnset e,8 }
    \new CueVoice {
      \cueClef "treble" \stemUp d''8^"flute" c d e fis2
    }
  >>
  d,,4 r a r
}
@end lilypond

Las instrucciones @code{\cueClef} y @code{\cueClefUnset} se pueden
usar también sin un @code{CueVoice} si es necesario.

@lilypond[verbatim,noragged-right]
\relative {
  \clef "bass"
  R1
  \cueClef "treble"
  d''8^"flute" c d e fis2
  \cueClefUnset
  d,,4 r a r
}
@end lilypond

En casos de colocación más compleja de notas guía, por ejemplo con
transposición o insertando notas guía procedentes de más de una
fuente, pueden usarse las instrucciones @code{\cueDuring} o
@code{\cueDuringWithClef}.  Son una forma más especializada de
@code{\quoteDuring}, véase @ref{Citar otras voces} en la sección
anterior.

La sintaxis es:

@example
\cueDuring @var{nombre_de_la_cita} #@var{dirección} @var{música}
@end example

y

@example
\cueDuringWithClef @var{nombre_de_la_cita} #@var{dirección} #@var{clave} @var{música}
@end example

La música procedente de los compases correspondientes del elemento
@code{@var{nombre_de_la_cita}} se añade como un contexto
@code{CueVoice} y ocurre simultáneamente con la
@code{@var{música}}, lo que produce una situación polifónica.  La
@code{@var{dirección}} toma un argumento @code{UP} (arriba) o
@code{DOWN} (abajo), y corresponde a las voces primera y segunda,
respectivamente, determinando cómo se imprimen las notas guía en
relación a la otra voz.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  r2. c''4 | d8 c d e fis2 | g2 d |
}

oboeNotes = \relative c'' {
  R1
  <>^\markup \tiny { flute }
  \cueDuring "flute" #UP { R1 }
  g2 c,
}

\addQuote "flute" { \fluteNotes }

\new Staff {
  \oboeNotes
}
@end lilypond

@noindent


Es posible ajustar qué aspectos de la música se citan con
@code{\cueDuring} estableciendo el valor de la propiedad
@code{quotedCueEventTypes}.  Su valor por omisión es
@code{'(note-event rest-event tie-event beam-event
tuplet-span-event)}, lo que significa que solamente las notas,
silencios, ligaduras de unión, barras y grupos especiales se
citan, pero no las articulaciones, marcas dinámicas, elementos de
marcado, etc.

@warning{Cuando un contexto @code{Voice} da comienzo con
@code{@bs{}cueDuring}, como en el ejemplo siguiente, el contexto
@code{Voice} se debe declarar explícitamente, pues en caso
contrario toda la expresión musical pertenecería al contexto
@code{CueVoice}.}

@lilypond[verbatim,quote]
oboeNotes = \relative {
  r2 r8 d''16(\f f e g f a)
  g8 g16 g g2.
}
\addQuote "oboe" { \oboeNotes }

\new Voice \relative c'' {
  \set Score.quotedCueEventTypes = #'(note-event rest-event tie-event
                                      beam-event tuplet-span-event
                                      dynamic-event slur-event)
  \cueDuring "oboe" #UP { R1 }
  g2 c,
}
@end lilypond

Se pueden usar elementos de marcado para mostrar el nombre del
instrumento citado.  Si las notas guía requieren un cambio de
clave, puede hacerse manualmente pero la clave original se debe
restaurar al final de las notas guía.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  r2. c''4 d8 c d e fis2 g2 d2
}

bassoonNotes = \relative c {
  \clef bass
  R1
  \clef treble
  <>^\markup \tiny { flute }
  \cueDuring "flute" #UP { R1 }
  \clef bass
  g4. b8 d2
}

\addQuote "flute" { \fluteNotes }

\new Staff {
  \bassoonNotes
}
@end lilypond

De forma alternativa, puede usarse la función
@code{\cueDuringWithClef} en su lugar.  Esta instrucción admite un
argumento adicional para especificar el cambio de clave que se
necesita imprimir para las notas guía, pero después imprime
automáticamente la clave original una vez que ha finalizado la
serie de notas guía.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  r2. c''4 d8 c d e fis2 g2 d2
}

bassoonNotes = \relative c {
  \clef bass
  R1
  <>^\markup { \tiny "flute" }
  \cueDuringWithClef "flute" #UP "treble" { R1 }
  g4. b8 d2
}

\addQuote "flute" { \fluteNotes }

\new Staff {
  \bassoonNotes
}
@end lilypond

@funindex \transposedCueDuring

Como @code{\quoteDuring}, @code{\cueDuring} tiene en cuenta las
transposiciones instrumentales.  Las notas guía se producen en las
alturas en que se escribirían para el instrumento que recibe la
cita, para así producir las alturas de sonido del instrumento
original.

Para transportar las notas guía de forma diferente, use
@code{\transposedCueDuring}.  Esta instrucción acepta un argumento
adicional para especificar (en modo absoluto) la altura impresa
con que queremos representar el sonido de un Do central de
concierto.  Esto es útil para extraer citas de un instrumento que
está en un registro completamente diferente.

@lilypond[verbatim,quote]
piccoloNotes = \relative {
  \clef "treble^8"
  R1
  c'''8 c c e g2
  c4 g g2
}

bassClarinetNotes = \relative c' {
  \key d \major
  \transposition bes,
  d4 r a r
  \transposedCueDuring "piccolo" #UP d { R1 }
  d4 r a r
}

\addQuote "piccolo" { \piccoloNotes }

<<
  \new Staff \piccoloNotes
  \new Staff \bassClarinetNotes
>>
@end lilypond

@cindex eliminar, notas guía
@cindex guía, nota, eliminar

@funindex \killCues

La instrucción @code{\killCues} elimina las notas guía de una
expresión musical, de forma que la misma expresión musical pueda
utilizarse para producir la particella instrumental (con notas
guía) y la partitura de conjunto.  La instrucción @code{\killCues}
elimina solamente las notas y eventos que se han citado mediante
@code{\cueDuring}.  Otros elementos de marcado asociados con las
guías, como los cambios de clave o una etiqueta identificativa del
instrumento fuente, pueden marcarse para su inclusión selectiva
dentro de la partitura; véase @ref{Uso de etiquetas}.

@lilypond[verbatim,quote]
fluteNotes = \relative {
  r2. c''4 d8 c d e fis2 g2 d2
}

bassoonNotes = \relative c {
  \clef bass
  R1
  \tag #'part {
    \clef treble
    <>^\markup \tiny { flute }
  }
  \cueDuring "flute" #UP { R1 }
  \tag #'part \clef bass
  g4. b8 d2
}

\addQuote "flute" { \fluteNotes }

\new Staff {
  \bassoonNotes
}

\new StaffGroup <<
  \new Staff {
    \fluteNotes
  }
  \new Staff {
    \removeWithTag #'part { \killCues { \bassoonNotes } }
  }
>>
@end lilypond

@morerefs
Referencia de la notación:
@ref{Citar otras voces},
@ref{Transposición de los instrumentos},
@ref{Nombres de instrumentos},
@ref{Clave},
@ref{Guías musicales},
@ref{Uso de etiquetas}.

Fragmentos de código:
@rlsr{Staff notation}.

Referencia de funcionamiento interno:
@rinternals{CueVoice},
@rinternals{Voice}.

@knownissues
Pueden ocurrir colisiones con los silencios si se usa
@code{\cueDuring}, entre los contextos de @code{Voice} y de
@code{CueVoice}.  Al usar @code{\cueDuringWithClef} o
@code{\transposedCueDuring} el argumento adicional requerido para
cada caso debe ir después de la cita y de la dirección.

@node Compresión de los compases vacíos
@unnumberedsubsubsec Compresión de los compases vacíos
@translationof Compressing empty measures

@cindex multicompás, notas, expandir
@cindex multicompás, notas, comtraer
@funindex \compressEmptyMeasures
@funindex \expandEmptyMeasures

De forma predeterminada, todos los compases se imprimen aunque
estén vacíos (cosa que puede ocurrir si un evento rítmico, como
notas, silencios o saltos invisibles, es tan largo que abarca
varios compases.  Este comportamiento se puede cambiar contrayendo
todos los compases vacíos en uno solo, como se ilustra aquí (la
segunda parte del ejemplo, con compases expandidos, en realidad
vuelve de nuevo al comportamiento predeterminado):

@lilypond[quote,verbatim,fragment]
\override Score.BarNumber.break-visibility = ##(#f #t #t)
\time 2/4
\compressEmptyMeasures
c'1 d'1. e'\breve
\bar "||"
\expandEmptyMeasures
c'1 d'1. e'\breve
@end lilypond

@noindent
Aunque esta notación es correcta sintácticamente, puede dar lugar
a confusión desde el punto de vista musical, como queda ilustrado
en el ejemplo anterior; de ahí la necesidad de imprimir
explícitamente los números de compás, usando la sintaxis que se
describe en
@ref{Uso de break-visibility (visibilidad en el salto)}.

@cindex multicompás, silencios, expandir
@cindex multicompás, silencios, contraer
@funindex \compressMMRests

Donde esta notación puede ser más útil es cuando se aplica a los
@ref{Silencios de compás completo}.  Un silencio multicompás se
imprimirá entonces como un solo compás que contiene un símbolo de
silencio multicompás, con el número de compases de duración de
este silencio impreso encima del compás:

@lilypond[quote,verbatim,fragment]
% Default behavior
\time 3/4 r2. | R2.*2 |
\time 2/4 R2 |
\time 4/4
% Rest measures contracted to single measure
\compressEmptyMeasures
r1 | R1*17 | R1*4 |
\expandEmptyMeasures
% Rest measures expanded again
\time 3/4
R2.*2 |
@end lilypond

A diferencia de @code{\compressEmptyMeasures}, la función musical
@code{\compressMMRests} solo se aplica a los silencios, dejando
sin comprimir todos los demás eventos.  Dado que es una función, y
no un ajuste del valor de una propiedad, su sintaxis difiere
ligeramente en que debe ir seguida de una expresión musical:

@lilypond[quote,verbatim,fragment]
\compressMMRests {
  % Rests are compressed…
  R1*7
  % … but notes can still span multiple measures.
  g'1 a'1*2 d'1
  R1*2
}
@end lilypond

@funindex skipBars
Todas las instrucciones descritas en esta sección, descansan en
realidad en la propiedad interna @code{skipBars}, que se establece
dentro del contexto de @code{Score} como se explica en
@ref{La instrucción set}.

@predefined
@code{\compressEmptyMeasures},
@code{\expandEmptyMeasures},
@code{\compressMMRests}.
@endpredefined

@snippets

@cindex multicompás, silencio, numerar
@funindex restNumberThreshold
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{snippets/numbering-single-measure-rests.ly}

@cindex silencio, eclesiástico
@cindex kirchenpause
@cindex multicompás, silencio, estilo
@cindex estilo, silencios multicompás
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{snippets/changing-form-of-multi-measure-rests.ly}

@morerefs
Referencia de la notación:
@ref{Uso de break-visibility (visibilidad en el salto)},
@ref{Silencios de compás completo},
@ref{La instrucción set}.

Referencia de funcionamiento interno:
@rinternals{MultiMeasureRest},
@rinternals{MultiMeasureRestNumber},
@rinternals{MultiMeasureRestScript},
@rinternals{MultiMeasureRestText}.
