[ << Modifica dell'output ] | [Inizio][Contenuti][Indice] | [ Modelli >> ] |
[ < Comportamento automatico ] | [ Su : Posizionamento degli oggetti ] | [ La proprietà direction > ] |
5.4.2 Oggetti interni al rigo
Abbiamo già visto come i comandi \voiceXXX
influenzino
la direzione di legature di portamento e di valore, delle diteggiature e
di qualsiasi altro elemento che dipenda dalla direzione dei gambi (vedi
Definire esplicitamente le voci).
Questi comandi sono fondamentali quando si scrive musica polifonica,
perché permettono di distinguere le linee melodiche che si intrecciano.
Talvolta, però, capita di voler modificare questo comportamento
automatico. Si può fare per intere sezioni musicali o anche per
una singola nota. La proprietà che controlla questo comportamento
è la proprietà direction
di ogni oggetto di formattazione.
Spieghiamo prima che cosa fa e poi presentiamo alcuni comandi
già pronti, che ti eviteranno di dover scrivere sovrascritture
esplicite per le modifiche più comuni.
Alcuni oggetti di formattazione, come le legature di portamento e di
valore, si incurvano, si piegano o puntano verso l’alto o il basso; altri,
come i gambi e le code, a seconda dell’orientamento si dispongono anche sulla
destra o sulla sinistra. Tutto questo viene controllato automaticamente
quando si imposta la proprietà direction
.
La proprietà direction | ||
Diteggiatura |
[ << Modifica dell'output ] | [Inizio][Contenuti][Indice] | [ Modelli >> ] |
[ < Oggetti interni al rigo ] | [ Su : Oggetti interni al rigo ] | [ Diteggiatura > ] |
La proprietà direction
L’esempio seguente mostra il posizionamento predefinito delle legature di portamento nella prima battuta, con legature che iniziano sulle note alte poste sopra le note e quelle che iniziano sulle note basse posizionate sotto, seguita da una battuta con entrambe le legature forzate verso il basso, un’altra battuta con entrambe le legatura forzate verso l’alto e infine una battuta con entrambe le legature ripristinate al comportamento predefinito.
a'4( g') c''( a') | \override Slur.direction = #DOWN a'4( g') c''( a') | \override Slur.direction = #UP a'4( g') c''( a') | \revert Slur.direction a'4( g') c''( a') |
Abbiamo usato le costanti DOWN
(giù) e UP
(su).
Queste hanno rispettivamente i valori -1
e +1
, ed
è possibile usare tali valori numerici al loro posto. In alcuni casi
si può usare anche il valore 0
, che significa UP
per le
legature di portamento, ma per alcuni oggetti significa ‘center’ (centro).
Esiste una costante, CENTER
che ha valore 0
.
Tuttavia queste sovrascritture esplicite solitamente non vengono usate, perché ci sono dei comandi predefiniti equivalenti e più semplici. Ecco una tabella con quelli più utilizzati; il significato di ognuno è esplicitato laddove non è ovvio.
Giù/Sinistra | Su/Destra | Ripristina | Effetto |
---|---|---|---|
\arpeggioArrowDown | \arpeggioArrowUp | \arpeggioNormal | Aggiunge una freccia in fondo, in cima o toglie la freccia |
\dotsDown | \dotsUp | \dotsNeutral | Direzione dello spostamento per evitare le linee del rigo |
\dynamicDown | \dynamicUp | \dynamicNeutral | |
\phrasingSlurDown | \phrasingSlurUp | \phrasingSlurNeutral | Nota: è diverso dai comandi slur |
\slurDown | \slurUp | \slurNeutral | |
\stemDown | \stemUp | \stemNeutral | |
\textSpannerDown | \textSpannerUp | \textSpannerNeutral | Il testo inserito come oggetto estensore (spanner) va sotto/sopra il rigo |
\tieDown | \tieUp | \tieNeutral | |
\tupletDown | \tupletUp | \tupletNeutral | I gruppi irregolare sono sotto/sopra le note |
Le varianti neutral/normal di questi comandi usano \revert
e queste
non possono essere precedute da \once
. Se desideri limitare
l’effetto degli altri comandi (che usano \override
) a un singolo
momento temporale, devi farli precedere da \once
come faresti con
delle sovrascritture esplicite.
Oppure, se solo un oggetto della formattazione deve essere forzato verso
l’alto o verso il basso, si possono usare gli indicatori di
direzione, ^
o _
:
a'4( g') c''( a') | a'4^( g') c''_( a') |
[ << Modifica dell'output ] | [Inizio][Contenuti][Indice] | [ Modelli >> ] |
[ < La proprietà direction ] | [ Su : Oggetti interni al rigo ] | [ Oggetti esterni al rigo > ] |
Diteggiatura
Anche il posizionamento della diteggiatura sulle singole note può essere
controllato dalla proprietà direction
, ma la modifica di direction
non produce effetti sugli accordi. Come vedremo, ci sono comandi specifici
che permettono di controllare la diteggiatura delle singole note degli
accordi, col segno di diteggiatura posizionato sopra, sotto, a sinistra
o a destra di ogni nota.
Vediamo innanzitutto l’effetto di direction
sulla diteggiatura
attaccata alle singole note. La prima battuta mostra il comportamento
predefinito e le due battute successive mostrano gli effetti dei valori
DOWN
e UP
:
\relative { c''4-5 a-3 f-1 c'-5 | \override Fingering.direction = #DOWN c4-5 a-3 f-1 c'-5 | \override Fingering.direction = #UP c4-5 a-3 f-1 c'-5 | }
Tuttavia sovrascrivere la proprietà direction
non è il modo
più semplice di definire a mano la diteggiatura sopra o sotto
le note; di solito è preferibile usare _
o ^
invece di -
prima del numero della diteggiatura. Ecco l’esempio precedente riscritto
usando questo metodo:
\relative { c''4-5 a-3 f-1 c'-5 | c4_5 a_3 f_1 c'_5 | c4^5 a^3 f^1 c'^5 | }
La proprietà direction
viene ignorata negli accordi, ma i
prefissi direzionali, _
e ^
funzionano. Per impostazione
predefinita, la diteggiatura viene disposta automaticamente sopra e
sotto le note di un accordo:
\relative { <c''-5 g-3>4 <c-5 g-3 e-2>4 <c-5 g-3 e-2 c-1>4 }
ma può essere sovrascritta per forzare manualmente in su o in giù tutti o alcuni dei singoli numeri della diteggiatura:
\relative { <c''-5 g-3 e-2 c-1>4 <c^5 g_3 e_2 c_1>4 <c^5 g^3 e^2 c_1>4 }
È possibile avere un controllo ancora maggiore sulla disposizione della
diteggiatura delle singole note di un accordo usando il comando
\set fingeringOrientations
. Il formato di questo comando è:
\set fingeringOrientations = #'([up] [left/right] [down])
Si usa \set
perché fingeringOrientations
è una
proprietà del contesto Voice
, creato e usato dall’incisore
New_fingering_engraver
.
Questa proprietà accetta come valori una lista comprendente da uno a tre elementi.
Stabilisce se la diteggiatura debba essere posizionata sopra (se nella
lista c’è up
), sotto (se c’è down
), a sinistra (se c’è
left
) o a destra (se c’è right
). Nel caso vengano inseriti valori
non accettati dalla lista, non sarà invece collocata alcuna diteggiatura. LilyPond
prende in considerazione questi limiti e trova la migliore disposizione per
la diteggiatura delle note degli accordi che seguono. Nota che left
e
right
si escludono a vicenda – la diteggiatura può essere posta
solo da un lato o dall’altro, non da entrambi.
Nota: Per controllare la posizione della diteggiatura di una singola nota con questo comando bisogna scrivere la nota come un accordo con una nota sola, ovvero racchiuderla tra parentesi angolari.
Ecco alcuni esempi:
\relative { \set fingeringOrientations = #'(left) <f'-2>4 <c-1 e-2 g-3 b-5>4 \set fingeringOrientations = #'(left) <f-2>4 <c-1 e-2 g-3 b-5>4 | \set fingeringOrientations = #'(up left down) <f-2>4 <c-1 e-2 g-3 b-5>4 \set fingeringOrientations = #'(up left) <f-2>4 <c-1 e-2 g-3 b-5>4 | \set fingeringOrientations = #'(right) <f-2>4 <c-1 e-2 g-3 b-5>4 }
Se la diteggiatura appare eccessivamente fitta, si può ridurre la dimensione del
tipo di carattere modificando la proprietà font-size
. Si può vedere
nell’oggetto Fingering
della guida al Funzionamento interno che il
valore predefinito di tale proprietà è -5
, dunque proviamo
con -7
:
\relative { \override Fingering.font-size = #-7 \set fingeringOrientations = #'(left) <f'-2>4 <c-1 e-2 g-3 b-5>4 \set fingeringOrientations = #'(left) <f-2>4 <c-1 e-2 g-3 b-5>4 | \set fingeringOrientations = #'(up left down) <f-2>4 <c-1 e-2 g-3 b-5>4 \set fingeringOrientations = #'(up left) <f-2>4 <c-1 e-2 g-3 b-5>4 | \set fingeringOrientations = #'(right) <f-2>4 <c-1 e-2 g-3 b-5>4 }
[ << Modifica dell'output ] | [Inizio][Contenuti][Indice] | [ Modelli >> ] |
[ < La proprietà direction ] | [ Su : Oggetti interni al rigo ] | [ Oggetti esterni al rigo > ] |