5.5.5 Modifica degli estensori spezzati
Uso di \alterBroken |
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 }
È 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 }
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\) }
È 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.