5.5.5 Modifica degli estensori spezzati


Uso di \alterBroken

Quando un estensore va a capo o si spezza, ciascun pezzo eredita gli attributi dell’estensore originario. Dunque la normale modifica di un estensore spezzato applica le stesse modifiche a ciascuno dei suoi segmenti. Nell’esempio successivo, la sovrascrittura di thickness agisce sulla legatura di portamento su entrambi i lati rispetto all’interruzione di linea.

\relative c'' {
  r2
  \once\override Slur.thickness = 10
  c8( d e f
  \break
  g8 f e d) r2
}

[image of music]

È possibile modificare indipendentemente l’aspetto di singoli pezzi di un estensore spezzato col comando \alterBroken. Questo può generare sia un \override che un \tweak della proprietà di un estensore.

La sintassi di \alterBroken è:

[-]\alterBroken proprietà valori elemento

L’argomento valori è una lista di valori, uno per ogni pezzo spezzato. Se elemento è il nome di un grob come Slur o Staff.PianoPedalBracket, il risultato è un \override del tipo di grob specificato. Se elemento è un’espressione musicale come “(” o “[”, il risultato è la stessa espressione musicale modificata da un comando \tweak.

Il trattino iniziale è richiesto nella forma \tweak. Non aggiungerlo se \alterBroken viene usato come un \override.

Nel suo uso come \override, \alterBroken può essere preceduto da \once o \temporary e ripristinato con \revert seguito da proprietà (vedi Intermediate substitution functions).

Il codice seguente applica un \override indipendente a ciascun segmento della legatura di portamento dell’esempio precedente:

\relative c'' {
  r2
  \alterBroken thickness #'(10 1) Slur
  c8( d e f
  \break
  g8 f e d) r2
}

[image of music]

Il comando \alterBroken può essere usato con qualsiasi oggetto estensore, inclusi Tie, PhrasingSlur, Beam e TextSpanner. Per esempio, un editor che stia preparando un’edizione colta potrebbe voler indicare l’assenza di parte di una legatura di frase in un manoscritto tratteggiando solo il segmento che è stato aggiunto. L’esempio seguente mostra come farlo, in questo caso usando la forma \tweak del comando:

% Si usa per convenienza la lista vuota, perché è l'impostazione
% predefinita di dash-definition, producendo così una curva continua.
\relative {
  c''2-\alterBroken dash-definition #'(() ((0 1.0 0.4 0.75))) \(e
  \break
  g2 e\)
}

[image of music]

È importante comprendere che \alterBroken imposterà ogni pezzo di un estensore spezzato sul valore corrispondente specificato in valori. Quando il numero di valori è inferiore a quello dei pezzi, a qualsiasi pezzo ulteriore sarà assegnata una lista vuota. Ciò potrebbe portare a risultati indesiderati se la proprietà di formattazione non è impostata su una lista vuota per impostazione predefinita. In tali casi, a ogni segmento deve essere assegnato un valore appropriato.

Problemi noti e avvertimenti

Le interruzioni di linea possono verificarsi in punti diversi in seguito a modifiche della formattazione. Le impostazioni scelte per \alterBroken potrebbero non essere più adatte per un estensore che non va più a capo o è diviso in più segmenti di prima. Per proteggersi da questa situazione conviene fare un uso esplicito di \break.

Il comando \alterBroken non funziona nel caso di proprietà dell’estensore a cui si accede prima di line-breaking, come direction.

Vedi anche

Estendere LilyPond: Difficult tweaks.


LilyPond — Guida alla Notazione v2.23.82 (ramo di sviluppo).