5.1.5 Cambiar los valores por omisión de los contextos
Se pueden cambiar las propiedades de contexto y de grob con las
instrucciones \set
y \override
, tal y como se describe
en Modificar las propiedades. Estas instrucciones crean eventos
musicales, haciendo que los cambios tengan efecto en el punto temporal
en que la música se está procesando.
Por contra, esta sección explica la forma de cambiarlos valores predeterminados de las propiedades de contexto y de grob en el momento en que se crea el contexto. Existen dos formas de hacerlo. Una modifica los valores predeterminados en todos los contextos de un tipo dado, y el otro modifica los valores predeterminados solamente en una instancia concreta de un contexto.
Cambiar todos los contextos del mismo tipo | ||
Cambiar solamente un contexto determinado | ||
Orden de precedencia |
Cambiar todos los contextos del mismo tipo
Los ajustes de contexto predeterminados que se han de usar para la composición
tipográfica dentro de Score
, Staff
, Voice
y otros contextos
se pueden especificar en un bloque \context
dentro de cualquier
bloque \layout
.
Los ajustes para la salida MIDI, al contrario que para la
composición tipográfica, se tendrán que especificar aparte en
bloques \midi
(véase
Definiciones de salida - estructura de los contextos).
El bloque \layout
se debe colocar
dentro del bloque \score
al que se aplica, después de la
música.
\layout { \context { \Voice [ajustes de contexto para todos los contextos Voice] } \context { \Staff [ajustes de contexto para todos los contextos Staff] } }
Se pueden especificar los siguientes tipos de ajustes:
-
Una instrucción
\override
, pero omitiendo el nombre del contexto\score { \relative c'' { a4^"Thicker stems" a a a a4 a a\ff a } \layout { \context { \Staff \override Stem.thickness = #4.0 } } }
-
Estableciendo una propiedad de contexto directamente
\score { \relative c'' { a4^"Smaller font" a a a a4 a a\ff a } \layout { \context { \Staff fontSize = #-4 } } }
-
Una instrucción predefinida tal como
\dynamicUp
o una expresión musical como\accidentalStyle dodecaphonic
\score { \relative c'' { a4^"Dynamics above" a a a a4 a a\ff a } \layout { \context { \Voice \dynamicUp } \context { \Staff \accidentalStyle dodecaphonic } } }
-
Una variable definida por el usuario que contenga un bloque
\with
; para ver detalles acerca del bloque\with
, consulte Cambiar solamente un contexto determinado.StaffDefaults = \with { fontSize = #-4 } \score { \new Staff { \relative c'' { a4^"Smaller font" a a a a4 a a a } } \layout { \context { \Staff \StaffDefaults } } }
Las instrucciones de ajuste de propiedades se pueden disponer dentro
de un bloque \layout
sin que estén encerradas en un bloque
\context
. Tales ajustes son equivalentes a incluir las mismas
instrucciones de ajuste de propiedades al comienzo de cada uno de los
contextos del tipo especificado. Si no se especifica ningún contexto,
todos y cada uno de los contextos del nivel inferior quedan
afectados, véase Contextos del nivel más bajo. Voces. La
sintaxis de una instrucción de ajuste de propiedades dentro de un
bloque \layout
es la misma que si la misma instrucción
estuviera escrita en el propio flujo musical.
\score { \new Staff { \relative c'' { a4^"Smaller font" a a a a4 a a a } } \layout { \accidentalStyle dodecaphonic \set fontSize = #-4 \override Voice.Stem.thickness = #4.0 } }
Cambiar solamente un contexto determinado
Las propiedades de contexto de una única instancia de contexto pueden
cambiarse dentro de un bloque \with
. Todas las demás
instancias de contexto del mismo tipo retienen los ajustes
predeterminados que LilyPond tiene programados y que se modifican por
parte de cualquier bloque \layout
que se encuentre dentro del
ámbito. El bloque \with
se debe situar inmediatamente después
de las instrucciones \new
context-type:
\new Staff \with { [ajustes de contexto para esta instancia de contexto solamente] } { … }
Dado que dicha ‘modificación de contexto’ está especificada dentro de la música, afectará a todas las salidas (tipografía y también el MIDI), a diferencia de los cambios que se hacen dentro de una definición de salida.
Se pueden especificar los siguientes tipos de ajustes:
-
Una instrucción
\override
, pero omitiendo el nombre del contexto\score { \new Staff { \new Voice \with { \override Stem.thickness = #4.0 } { \relative c'' { a4^"Thick stems" a a a a4 a a a } } } }
-
Estableciendo una propiedad de contexto directamente
\score { << \new Staff { \relative c'' { a4^"Default font" a a a a4 a a a } } \new Staff \with { fontSize = #-4 } { \relative c'' { a4^"Smaller font" a a a a4 a a a } } >> }
-
Una instrucción predefinida tal como
\dynamicUp
\score { << \new Staff { \new Voice { \relative c'' { a4^"Dynamics below" a a a a4 a a\ff a } } } \new Staff \with { \accidentalStyle dodecaphonic } { \new Voice \with { \dynamicUp } { \relative c'' { a4^"Dynamics above" a a a a4 a a\ff a } } } >> }
Orden de precedencia
El valor de una propiedad que se aplica en un momento determinado se determina de la siguiente forma:
-
si está en efecto una instrucción
\override
o\set
dentro del flujo musical, se usa dicho valor, -
de lo contrario, se usa el valor predeterminado tomado de un enunciado
\with
en las instrucciones de inicio del contexto, -
de lo contrario, se usa el valor tomado del bloque
\context
más reciente que corresponda dentro de los bloques\layout
o\midi
, - de lo contrario se usa el valor predeterminado que LilyPond lleva preprogramado.
Véase también
Manual de aprendizaje: Modificar las propiedades de los contextos.
Referencia de la notación:
Explicación de los contextos,
Contextos del nivel más bajo. Voces,
La instrucción \set
,
La instrucción \override
,
El bloque \layout
.
Otros idiomas: English, deutsch, français, italiano, 日本語.
Acerca de la selección automática del idioma.