5.1.7 Orden de disposición de los contextos
Los contextos se disponen en un sistema normalmente desde arriba hacia abajo en el orden en que se encuentran en el archivo de entrada. Cuando los contextos se anidan unos dentro de otros, el contexto exterior incluye a los contextos anidados tal y como se especifica en el archivo de entrada, siempre y cuando los contextos interiores estén incluidos en la lista “accepts” del contexto externo. Los contextos anidados que no está nincluidos en la lista “accepts” del contexto externo se recolocan debajo del contexto externo en lugar de anidarse dentro de él.
La lista “accepts” de un contexto se puede cambiar con las
instrucciones \accepts (acepta) y \denies (niega).
\accepts añade un contexto a la lista “accepts” y
\denies elimina un contexto de la lista. Por ejemplo,
normalmente no sería deseable que los acordes de cifrado americano
estuvieran anidados dentro de un contexto Staff, por lo que el
contexto ChordNames no se incluye de forma predeterminada
dentro de la lista “accepts” del contexto Staff, pero podría
hacerse si fuera necesario:
\score {
\new Staff {
c' d' e' f'
\chords { d1:m7 b1:min7.5- }
}
}
\score {
\new Staff {
c' d' e' f'
\chords { d1:m7 b1:min7.5- }
}
\layout {
\context {
\Staff
\accepts "ChordNames"
}
}
}
\denies se usa principalmente cuando un contexto nuevo se está
basando en otro, pero los anidamientos requeridos difieren. Por
ejemplo, el contexto VaticanaStaff está basado en el contexto
Staff, pero con el contexto VaticanaVoice sustituido por
el contexto Voice en la lista “accepts”.
Observe que discretamente se crea un contexto de forma implícita si se encuentra una instrucción donde no hay un contexto apropiado para contenerlo. Esto puede dar lugar a pentagramas o partituras nuevos no esperados.
Véase también
Manual de utilización del programa: Aparece un pentagrama de más.
Archivos instalados: ‘ly/engraver-init.ly’.
Otros idiomas: English, deutsch, français, italiano, 日本語.
About automatic language selection.