Uso de \alterBroken
Cuando un “spanner” u objeto extenso atraviesa uno o varios
saltos de línea, cada fragmento hereda los atributos del objeto de
extensión original. Así, el trucado ordinario de un objeto
dividido aplica las mismas modificaciones a todos y cada uno de
sus segmentos. En el ejemplo que aparece a continuación, la
sobreescritura de thickness
(grosor) afecta a la ligadura a
ambos lados del salto de línea.
\relative c'' { r2 \once\override Slur.thickness = 10 c8( d e f \break g8 f e d) r2 }
Es posible modificar de forma independiente el aspecto de los
fragmentos individuales de un objeto de extensión dividido, con la
instrucción \alterBroken
. Esta instrucción puede producir
un \override
o bien un \tweak
de una propiedad del
objeto de extensión.
La sintaxis de \alterBroken
es
[-]\alterBroken propiedad valores elemento
El argumento valores es una lista de valores, uno por cada
fragmento. Si elemento el el nombre de un grob como
Slur
o Staff.PianoPedalBracket
, el resultado es una
instrucción de sobreescritura \override
del tipo de grob
especificado. Si elemento es una expresión musical como
“(” o “[” el resultado es la misma expresión musical con el
correspondiente truco aplicado.
El guión inicial se debe utilizar con la forma de trucaje,
\tweak
. No lo escriba cuando utilice \alterBroken
como una operación de sobreescritura, \override
.
En su uso como \override
, \alterBroken
puede ir
precedido de \once
o \temporary
y ser revertido con
\revert
con el argumento propiedad (véase Funciones de sustitución intermedias).
EL código siguiente aplica un \override
independiente a
cada uno de los fragmentos de la ligadura del ejemplo anterior:
\relative c'' { r2 \alterBroken thickness #'(10 1) Slur c8( d e f \break g8 f e d) r2 }
La instrucción \alterBroken
se puede usar con cualquier
objeto de extensión, incluidos Tie
, PhrasingSlur
,
Beam
y TextSpanner
. Por ejemplo, un editor que está
preparando una edición académica podría desear indicar la ausencia
de parte de una ligadura de fraseo en una fuente haciendo
discontinuo solamente el segmento que se ha añadido. El siguiente
ejemplo ilustra de qué manera se puede hacer esto, en este caso
usando la forma \tweak
de la instrucción:
% The empty list is conveniently used below, because it is the % default setting of dash-definition, resulting in a solid curve. \relative { c''2-\alterBroken dash-definition #'(() ((0 1.0 0.4 0.75))) \(e \break g2 e\) }
Es importante comprender que \alterBroken
fija cada pieza
del objeto fragmentado al valor correspondiente dentro del
argumento valores. Cuando hay menos valores que piezas,
cualquier fragmento adicional recibe la asignación de la lista
vacía. Esto puede conllevar resultados no deseados si la
propiedad de disposición no está establecida a la lista vacía de
forma predeterminada. En estos casos, se debe asignar a cada
segmento un valor adecuado.
Advertencias y problemas conocidos
Los saltos de línea pueden ocurrir en distintos lugares según
cambia la disposición de la música. Los ajustes elegidos para
\alterBroken
podrían no ser adecuados para un objeto de
extensión que ya no está dividido o que se fragmenta en más piezas
que antes. El uso explícito (manual) de saltos de línea mediante
\break
puede prevenir situaciones como ésta.
La instrucción \alterBroken
no es efectiva para propiedades
de los objetos extensos accedidas antes del salto de línea, como
direction
.
Véase también
Extender LilyPond: Trucos difíciles.