[ << Trucar la salida ] | [Top][Contents][Index] | [ Plantillas >> ] |
[ < La instrucción \overrideProperty ] | [ Up : Métodos de trucaje ] | [ El prefijo \single > ] |
La instrucción \tweak
La última instrucción de trucaje que está disponible es
\tweak
. Se debe utilizar cuando varios objetos tienen
lugar en el mismo momento musical pero solo queremos cambiar las
propiedades de algunos de ellos, como una sola nota dentro de un
acorde. El uso de \override
para la sobreescritura
afectaría a todas las notas del acorde, mientras que \tweak
afecta solamente al siguiente elemento del flujo de entrada.
He aquí un ejemplo. Suponga que queremos cambiar el tamaño de la
cabeza de la nota intermedia (el Mi) en un acorde de Do mayor. En
primer lugar, veamos lo que haría \once \override
:
\relative { <c' e g>4 \once \override NoteHead.font-size = #-3 <c e g>4 <c e g>4 }
Vemos que la sobreescritura con override afecta a todas las
cabezas de las notas del acorde. Esto es así porque todas las
notas de un acorde ocurren en el mismo momento musical, y
la acción de \once
es aplicar la sobreescritura a todos los
objetos de presentación del tipo especificado que ocurren en el
mismo momento musical que la propia instrucción de sobreescritura
\override
.
La instrucción \tweak
opera de una forma distinta. Actúa
sobre el elemento inmediatamente siguiente dentro del flujo de
entrada. En su forma más sencilla es efectivo solamente sobre
objetos que se crean directamente a partir del elemento siguiente,
en esencia las cabezas y las articulaciones.
Así pues, volviendo a nuestro ejemplo, el tamaño de la nota intermedia se cambiaría de la siguiente forma:
\relative { <c' e g>4 <c \tweak font-size #-3 e g>4 }
Observe que la sintaxis de \tweak
no es igual que la de
\override
. El contexto no se debe especificar; de hecho,
generaría un error hacerlo. Tanto el contexto como el objeto de
presentación están implícitos por el siguiente elemento del flujo
de entrada. Observe también que no debe haber un signo igual. Así
que la sintaxis de la instrucción \tweak
en su forma
sencilla es:
\tweak propiedad-de-presentación #valor
Una instrucción \tweak
también se puede usar para modificar
sólo una de una serie de articulaciones, como se muestra aquí:
a'4^"Black" -\tweak color "red" ^"Red" -\tweak color "green" _"Green"
Observe que la instrucción \tweak
debe venir precedida de
una marca de articulación porque la propia expresión trucada debe
aplicarse como una articulación. En el caso de más de una
sobreescritura de dirección (^
o _
), gana la
sobreescritura situada más a la izquierda porque se aplica en
último lugar.
Los objetos tales como plicas y alteraciones accidentales se crean
más tarde, y no directamente a partir del evento que viene a
continuación. Aún es posible utilizar \tweak
sobre tales
objetos creados indirectamente mediante el nombrado explícito del
objeto de presentación, siempre y cuando LilyPond pueda rastrear
su origen hasta el evento original:
<\tweak Accidental.color "red" cis''4 \tweak Accidental.color "green" es'' g''>
Esta forma extensa de la instrucción \tweak
se puede describir
como
\tweak LayoutObject.layout-property #value
La instrucción \tweak
también se debe usar para cambiar la
apariencia de uno solo de un conjunto de grupos especiales
anidados que comiencen en el mismo instante musical. En el
siguiente ejemplo, el corchete del tresillo largo y el primero de
los tres corchetes cortos empiezan en el mismo momento musical, y
por ello cualquier instrucción \override
se aplicaría a los
dos. En el ejemplo se usa \tweak
para distinguir entre
ellos. La primera instrucción \tweak
especifica que el
corchete del tresillo largo se debe colocar por encima de las
notas y el segundo especifica que el número del tresillo se debe
imprimir en rojo sobre el corchete del primer tresillo corto.
\relative c'' { \tweak direction #up \tuplet 3/4 { \tweak color "red" \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } } }
Si los grupos anidados no comienzan en el mismo momento, su
apariencia se puede modificar de la forma usual mediante
instrucciones \override
:
\relative { \tuplet 3/2 { c'8[ c c] } \once \override TupletNumber.text = #tuplet-number::calc-fraction-text \tuplet 3/2 { c8[ c] c8[ c] \once \override TupletNumber.transparent = ##t \tuplet 3/2 { c8[ c c] } \tuplet 3/2 { c8[ c c] } } }
Véase también
Referencia de la notación: La instrucción tweak.
[ << Trucar la salida ] | [Top][Contents][Index] | [ Plantillas >> ] |
[ < La instrucción \overrideProperty ] | [ Up : Métodos de trucaje ] | [ El prefijo \single > ] |