L’ordre \tweak

L’última ordre d’ajustament que està disponible és \tweak. S’ha de fer servir quan diversos objectes s’usen en el mateix moment musical, però sols volem canviar les propietats d’alguns d’ells, per exemple una sola nota dins d’un acord. L’ús de \override per a la sobreescriptura afectaria a totes les notes de l’acord, mentre que \tweak sols afecta a l’element següent del flux d’entrada.

Vet aquí un exemple. Suposeu que volem canviar la mida del cap de la nota intermèdia (el Mi) a un acord de Do major. En primer lloc, vejam el fa faria \once \override:

\relative {
  <c' e g>4
  \once \override NoteHead.font-size = #-3
  <c e g>4
  <c e g>4
}

[image of music]

Veiem que la sobreescriptura amb override afecta a totes els caps de les notes de l’acord. Això és així perquè totes les notes d’un acord tenen lloc en el mateix moment musical, i l’acció de \once és aplicar la sobreescriptura a tots els objectes de presentació del tipus especificat que tenen lloc en el mateix moment musical que la pròpia ordre de sobreescriptura \override.

L’ordre \tweak pera de una manera diferent. Actua sobre l’element immediatament següent dins del flux d’entrada. En la seva forma més senzilla és efectiu sols sobre objectes que es creen directament a partir de l’element següent, en essència els caps i les articulacions.

Així doncs, tornant al nostre exemple, la mida de la nota intermèdia es canviaria de la forma següent:

\relative {
  <c' e g>4
  <c \tweak font-size #-3 e g>4
}

[image of music]

Observeu que la sintaxi de \tweak no és igual que la de \override. El context no s’ha d’especificar; de fet, generaria un error fer-lo. Tant el context com l’objecte de presentació estan implícits per l’element següent del flux d’entrada. Observeu també que no ha d’haver un signe d’igual. Així que la sintaxi de l’ordre \tweak en la seva forma senzilla és:

\tweak propietat-de-presentació #valor

Una ordre \tweak també es pot usar per modificar sols una d’una sèrie d’articulacions, com es mostra aquí:

a'4^"Black"
  -\tweak color #red ^"Red"
  -\tweak color #green _"Green"

[image of music]

Observeu que l’ordre \tweak ha de venir precedida d’una marca d’articulació perquè la pròpia expressió ajustada ha d’aplicar-se com una articulació. En el cas de més d’una sobreescriptura de direcció (^ o _), guanya la sobreescriptura situada més a l’esquerra perquè s’aplica a l’últim lloc.

Els objectes com ara pliques i alteracions accidentals es creen més tard, i no directament a partir de l’esdeveniment que ve a continuació. Encara és possible utilitzar \tweak sobre aquests objectes creats indirectament mitjançant el nomenat explícit de l’objecte de presentació, sempre i quan el LilyPond pugui rastrejar el seu origen fins l’esdeveniment original:

<\tweak Accidental.color #red   cis''4
 \tweak Accidental.color #green es''
 g''>

[image of music]

Aquesta forma extensa de l’ordre \tweak es pot descriure com

\tweak LayoutObject.layout-property #value
"ABANS" \tweak objecte-de-presentació.propietat-de-presentació valor

L’ordre \tweak també s’ha d’usar per canviar l’aparença d’un sol d’un conjunt de grups especials niuats que comencin al mateix instant musical. A l’exemple següent, la clau de treset llarg i el primer de les tres claus curtes comencen al mateix moment musical, i per això qualsevol ordre \override s’aplicaria als dos. A l’exemple s’usa \tweak per distingir entre ells. La primera ordre \tweak especifica que la clau del treset llarg s’ha de col·locar per sobre de les notes i el segon especifica que el nombre del treset s’ha d’imprimir en vermell sobre la clau del primer treset curt.

\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] }
  }
}

[image of music]

Si els grups niuats no comencen al mateix moment, la seva aparença es pot modificar de la forma usual mitjançant ordres \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] }
  }
}

[image of music]

Vegeu també

Referència de la notació: L’ordre tweak.


Manual d’aprenentatge del GNU LilyPond v2.25.22 (development-branch).