[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Note editoriali ] | [ Su : Note editoriali ] | [ Scelta della dimensione del tipo di carattere > ] |
1.7.1 Interne al rigo
Questa sezione spiega come aggiungere enfasi agli elementi interni al rigo.
Scelta della dimensione del tipo di carattere | ||
Indicazioni di diteggiatura | ||
Dita che scivolano | ||
Note nascoste | ||
Colorare gli oggetti | ||
Parentesi | ||
Gambi |
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Interne al rigo ] | [ Su : Interne al rigo ] | [ Indicazioni di diteggiatura > ] |
Scelta della dimensione del tipo di carattere
Nota:
Per le dimensioni del testo, leggere Scelta del tipo di carattere e della dimensione.
Per la dimensione del rigo, leggere Impostare la dimensione del rigo.
Per le citazioni in corpo piccolo, leggere Formattazione delle notine.
Per i righi ossia, leggere Righi ossia.
Per modificare la dimensione di un elemento della notazione senza cambiare
anche la dimensione del rigo, si può specificare un fattore di ingrandimento
col comando \magnifyMusic
:
\new Staff << \new Voice \relative { \voiceOne <e' e'>4 <f f'>8. <g g'>16 <f f'>8 <e e'>4 r8 } \new Voice \relative { \voiceTwo \magnifyMusic 0.63 { \override Score.SpacingSpanner.spacing-increment = #(* 1.2 0.63) r32 c'' a c a c a c r c a c a c a c r c a c a c a c a c a c a c a c } } >>
L’\override
in questo esempio serve a eludere un difetto del programma,
spiegato in “Known issues and warnings” alla fine di questa sezione.
Se la testa di una nota di dimensione normale è accorpata con una più piccola, potrebbe essere necessario ripristinare la dimensione della nota più piccola (con ‘\once \normalsize’) in modo che i gambi e le alterazioni siano allineati correttamente:
\new Staff << \key fis \minor \mergeDifferentlyDottedOn \new Voice \relative { \voiceOne \magnifyMusic 0.63 { \override Score.SpacingSpanner.spacing-increment = #(* 1.2 0.63) \once \normalsize cis'32( cis' gis b a fis \once \normalsize d d' \once \normalsize cis, cis' gis b a gis \once \normalsize fis fis' \once \normalsize fis, fis' ais, cis b gis \once \normalsize eis eis' \once \normalsize a, a' bis, d cis b \once \normalsize gis gis') } } \new Voice \relative { \voiceTwo cis'8. d16 cis8. fis16 fis8. eis16 a8. gis16 } >>
Il comando \magnifyMusic
non è adatto per le citazioni in corpo
piccolo, gli abbellimenti o i righi ossia, per i quali esistono
metodi di inserimento più appropriati. È invece utile quando la
dimensione della notazione cambia in una singola parte strumentale
su un rigo e quando gli abbellimenti non sono la scelta appropriata,
come nei passaggi di tipo cadenza o in casi simili agli esempi
precedenti. Impostando il valore di \magnifyMusic
su 0.63
si duplicano le dimensioni del contesto CueVoice
.
Nota: Il comando \magnifyMusic
non deve essere
usato quando si ridimensiona anche il rigo. Maggiori informazioni
in Impostare la dimensione del rigo.
Ridimensionare oggetti della formattazione individualmente
Un singolo oggetto della formattazione può essere ridimensionato
coi comandi \tweak
o \override
per regolare la sua
proprietà font-size
:
\relative { % ridimensiona una testa di nota <f' \tweak font-size -4 b e>-5 % ridimensiona una diteggiatura bes-\tweak font-size 0 -3 % ridimensiona un'alterazione \once \override Accidental.font-size = -4 bes!-^ % ridimensiona un'articolazione \once \override Script.font-size = 4 bes!-^ }
Il valore predefinito di font-size
per ogni oggetto della
formattazione è elencato nella Guida al funzionamento interno. La
proprietà font-size
può essere impostata solo per quegli
oggetti che supportano l’interfaccia di formattazione font-interface
.
Se font-size
non è specificato nella lista ‘Standard settings’
dell’oggetto, il suo valore è 0. Si veda
All layout objects.
Capire la proprietà fontSize
La proprietà di contesto fontSize
regola la dimensione relativa di
tutti gli elementi della notazione basati su un glifo in un contesto:
\relative { \time 3/4 d''4---5 c8( b a g) | \set fontSize = -6 e'4-- c!8-4( b a g) | \set fontSize = 0 fis4---3 e8( d) fis4 | g2. }
Il valore di fontSize
è un numero che indica la dimensione
relativa alla dimensione standard dell’altezza del rigo corrente.
Il valore predefinito di fontSize
è 0; aggiungendo 6 a qualsiasi
valore di fontSize
si raddoppia la dimensione dei glifi e
togliendo 6 si dimezza. Ogni punto aumenta la dimensione di circa
il 12%.
Dato che le unità logaritmiche della proprietà font-size
non sono
del tutto intuitive, viene fornita per comodità la funzione Scheme
magnification->font-size
. Per esempio, per ridurre la notazione
musicale al 75% della dimensione predefinita si usa:
\set fontSize = #(magnification->font-size 0.75)
La funzione Scheme magstep
fa l’opposto: converte un valore
di font-size
in un fattore di ingrandimento.
La proprietà fontSize
avrà effetto soltanto sugli elementi
della notazione che sono disegnati con glifi, come le teste di
nota, le alterazioni, i segni, etc. Non modificherà la dimensione
del rigo stesso né ridimensionerà proporzionalmente gambi, travature
o la spaziatura orizzontale. Per ridimensionare gambi, travature
e spaziatura orizzontale insieme alla dimensione degli elementi della
notazione (senza cambiare la dimensione del rigo), si usa il comando
\magnifyMusic
presentato prima. Per ridimensionare tutto,
compreso il rigo, leggere Impostare la dimensione del rigo.
Ogni volta che la proprietà di contesto fontSize
è impostata, il
suo valore viene aggiunto al valore della proprietà del grob font-size
per i singoli oggetti di formattazione, prima che siano stampati i glifi.
Ciò può creare confusione quando si impostano individualmente le proprietà
font-size
mentre è impostato anche fontSize
:
% il valore predefinito di font-size per NoteHead è 0 % il valore predefinito di font-size per Fingering è -5 c''4-3 \set fontSize = -3 % la dimensione effettiva per NoteHead è ora -3 % la dimensione effettiva per Fingering è ora -8 c''4-3 \override Fingering.font-size = 0 % la dimensione effettiva per Fingering è ora -3 c''4-3
Sono anche disponibili le seguenti scorciatoie:
Comando | Equivalente a | Dimensione relativa |
\teeny | \set fontSize = -3 | 71% |
\tiny | \set fontSize = -2 | 79% |
\small | \set fontSize = -1 | 89% |
\normalsize | \set fontSize = 0 | 100% |
\large | \set fontSize = 1 | 112% |
\huge | \set fontSize = 2 | 126% |
\relative c'' { \teeny c4.-> d8---3 \tiny c4.-> d8---3 \small c4.-> d8---3 \normalsize c4.-> d8---3 \large c4.-> d8---3 \huge c4.-> d8---3 }
La modifica della dimensione del tipo di carattere si ottiene ridimensionando
la dimensione, tra quelle predefinite, più vicina a quella desiderata. La
dimensione standard (per font-size = 0
) dipende dall’altezza
standard del rigo: per un rigo di 20pt, viene scelto un tipo di carattere
di 11pt.
Comandi predefiniti
\magnifyMusic
,
\teeny
,
\tiny
,
\small
,
\normalsize
,
\large
,
\huge
.
Vedi anche
Guida alla notazione: Scelta del tipo di carattere e della dimensione, Impostare la dimensione del rigo, Formattazione delle notine, Righi ossia.
File installati: ‘ly/music-functions-init.ly’, ‘ly/property-init.ly’.
Frammenti: Editorial annotations.
Guida al funzionamento interno: font-interface.
Problemi noti e avvertimenti
Attualmente ci sono due bug che impediscono una corretta spaziatura
orizzontale quando si usa \magnifyMusic
. C’è un solo modo
per eludere questi bug e non funziona in tutte le circostanze.
Nell’esempio seguente, sostituire la variabile mag con un
valore a piacere. Si può provare anche a togliere uno o entrambi
i comandi \newSpacingSection
e/o i comandi \override
e \revert
:
\magnifyMusic mag { \newSpacingSection \override Score.SpacingSpanner.spacing-increment = #(* 1.2 mag) [music] \newSpacingSection \revert Score.SpacingSpanner.spacing-increment }
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Scelta della dimensione del tipo di carattere ] | [ Su : Interne al rigo ] | [ Dita che scivolano > ] |
Indicazioni di diteggiatura
Le indicazioni di diteggiatura si inseriscono con ‘nota-numero’:
\relative { c''4-1 d-2 f-4 e-3 }
Si può usare il testo incluso dentro \markup
o tra virgolette per
indicare un cambio di dito.
\relative { c''4-1 d-2 f\finger \markup \tied-lyric "4~3" c\finger "2 - 3" }
Si può aggiungere la diteggiatura del pollice per indicare che una nota deve essere suonata col pollice (ad esempio, nella musica per violoncello).
\relative { <a'_\thumb a'-3>2 <b_\thumb b'-3> }
È possibile indicare la diteggiatura di ogni singola nota di un accordo specificandola dopo ciascuna altezza.
\relative { <c''-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5> }
Le indicazioni di diteggiatura possono essere poste sopra o sotto il rigo, come è spiegato in Direzione e posizionamento.
Frammenti di codice selezionati
Controllare il posizionamento delle diteggiature di un accordo
Il posizionamento dei numeri della diteggiatura può essere regolato in modo preciso. Perché l’orientamento funzioni, occorre usare il costrutto per gli accordi <> anche per le note singole. Si può impostare in modo simile l’orientamento dei numeri di corda e delle diteggiature della mano destra.
\relative c' { \set fingeringOrientations = #'(left) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down right up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(left) <c-1>2 \set fingeringOrientations = #'(down) <e-3>2 \set stringNumberOrientations = #'(up left down) <f\3 a\2 c\1>1 \set strokeFingerOrientations = #'(down right up) <c\rightHandFinger #1 e\rightHandFinger #2 c'\rightHandFinger #4 > }
Far sì che la diteggiatura appaia dentro il rigo
Per impostazione predefinita, le diteggiature orientate verticalmente sono poste fuori dal rigo; questo comportamento tuttavia può essere disabilitato. Occorre fare attenzione alle situazioni in cui le diteggiature e i gambi sono rivolti nella stessa direzione: normalmente le diteggiature evitano soltanto i gambi con travature. Questa impostazione predefinita può essere cambiata in modo da evitare tutti i gambi oppure nessuno. L’esempio seguente mostra queste due opzioni, così come tornare al comportamento predefinito.
\relative c' { <c-1 e-2 g-3 b-5>2 \override Fingering.staff-padding = #'() <c-1 e-2 g-3 b-5>4 g'-0 a8[-1 b]-2 g-0 r \override Fingering.add-stem-support = ##f a[-1 b]-2 g-0 r \override Fingering.add-stem-support = ##t a[-1 b]-2 g-0 r \override Fingering.add-stem-support = #only-if-beamed a[-1 b]-2 g-0 r }
Vedi anche
Guida alla notazione: Direzione e posizionamento.
Frammenti: Editorial annotations.
Guida al funzionamento interno: FingeringEvent, fingering-event, Fingering_engraver, New_fingering_engraver, Fingering.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Indicazioni di diteggiatura ] | [ Su : Interne al rigo ] | [ Note nascoste > ] |
Dita che scivolano
Negli strumenti a corda un dito che scivola viene indicato solitamente da una
linea che connette lo stesso dito da usare per note suonate in posizioni
diverse sulla stessa corda.
Questa linea inizia inserendo \\glide
prima di una diteggiatura
(Fingering
) e termina quando si riusa lo stesso dito.
La linea può apparire in vari stili.
mus = { \set fingeringOrientations = #'(right) <a'\glide-1>2. \set fingeringOrientations = #'(left) <d'-1>4 } { <>^"line" \mus <>^"stub-left" \override FingerGlideSpanner.style = #'stub-left \mus <>^"stub-right" \override FingerGlideSpanner.style = #'stub-right \mus <>^"stub-both" \override FingerGlideSpanner.style = #'stub-both \mus <>^"dashed-line" \override FingerGlideSpanner.style = #'dashed-line \mus \break <>^"dotted-line" \override FingerGlideSpanner.style = #'dotted-line \mus <>^"bow" \override FingerGlideSpanner.style = #'bow \mus <>^"trill" \override FingerGlideSpanner.style = #'trill \mus <>^"zigzag" \override FingerGlideSpanner.style = #'zigzag \mus }
Se style
viene impostato su 'bow
(arco), la direzione dell’arco
può essere regolata attraverso i modificatori della direzione.
{ \override FingerGlideSpanner.style = #'bow \set fingeringOrientations = #'(down) <b\glide-1>4 <d'-1> \set fingeringOrientations = #'(up) <e''\glide-2> <c''-2> \set fingeringOrientations = #'(down) <b^\glide-1>4 <d'-1> \set fingeringOrientations = #'(up) <e''^\glide-2> <c''-2> \set fingeringOrientations = #'(down) <b_\glide-1>4 <d'-1> \set fingeringOrientations = #'(up) <e''_\glide-2> <c''-2> }
Se si sposta l’incisore Finger_glide_engraver
nel contesto Staff
,
i grob Fingering
che appartengono a contesti Voice
diversi
possono essere connessi.
\score { \new Staff << \new Voice { \voiceOne \set fingeringOrientations = #'(right) <e''-3>2 \set fingeringOrientations = #'(left) <d''-\tweak bound-details.left.padding #2.5 \glide-2> <c''-2> \bar "||" } \new Voice { \voiceTwo \set fingeringOrientations = #'(right) <c''\glide-2> \set fingeringOrientations = #'(left) <b'-\tweak bound-details.left.padding #2.5 \glide-4> <a'-4> } >> \layout { ragged-right = ##f \context { \Voice \remove "Finger_glide_engraver" } \context { \Staff \consists "Finger_glide_engraver" } } }
Vedi anche
Guida alla notazione: Direzione e posizionamento.
Guida al funzionamento interno: FingeringGlideEvent, fingering-glide-event, Finger_glide_engraver, finger-glide-interface, FingerGlideSpanner.
Problemi noti e avvertimenti
Molteplici legature con lo stesso dito non sono supportate e producono
risultati imprevisti.
Un espediente consiste nell’usare dita diverse e \tweak text
.
{ \clef "G_8" <a\glide-1 cis'\glide-1>2 <bes-1 d'-1> <a\glide-1 cis'\glide-\tweak text "1"-2>2 <bes-1 d'-\tweak text "1"-2> }
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Dita che scivolano ] | [ Su : Interne al rigo ] | [ Colorare gli oggetti > ] |
Note nascoste
Le note nascoste (o invisibili o trasparenti) possono essere utili nella preparazione di esercizi di teoria e composizione.
\relative { c''4 d \hideNotes e4 f \unHideNotes g a \hideNotes b \unHideNotes c }
Questo comando rende invisibili le teste, i gambi e le code delle note, e le pause. Le travature sono invisibili se iniziano su una nota nascosta. Mentre gli oggetti attaccati a note invisibili sono comunque visibili.
\relative c'' { e8(\p f g a)-- \hideNotes e8(\p f g a)-- }
Comandi predefiniti
\hideNotes
,
\unHideNotes
.
Vedi anche
Manuale d’apprendimento: Visibilità e colore degli oggetti.
Guida alla notazione: Pause invisibili, Visibilità degli oggetti, Nascondere i righi.
Frammenti: Editorial annotations.
Guida al funzionamento interno: Note_spacing_engraver, NoteSpacing.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Note nascoste ] | [ Su : Interne al rigo ] | [ Parentesi > ] |
Colorare gli oggetti
Si possono assegnare dei colori a ciascun oggetto. I nomi dei colori validi sono elencati nell’Elenco dei colori.
\override NoteHead.color = #red c''4 c'' \override NoteHead.color = #(x11-color 'LimeGreen) d'' \override Stem.color = "deepskyblue" e''
Oltre a un insieme limitato di colori semplici disponibili come variabili
predefinite (vedi “Colori normali” in Elenco dei colori), si può
inserire qualsiasi colore come una stringa.
Questa stringa può essere un nome colore definito in stile
CSS oppure un codice colore
esadecimale preceduto dal carattere #
(dentro le virgolette doppie):
\override NoteHead.color = "lightsalmon" \override Flag.color = "#E30074" \override Beam.color = "#5e45ad" \override Rest.color = "#3058" g'8 \huge r4 a'16 f'
Il codice colore può avere un canale alfa per la semitrasparenza usando un codice a otto caratteri "#RRGGBBAA" o la sua forma abbreviata "#RGBA".
In un modo diverso, si può accedere all’intera gamma di colori
definita per X11 con
la funzione Scheme x11-color
. La funzione prende un argomento,
che può essere un simbolo, come 'DarkSeaGreen4
, o una
stringa, come "DarkSeaGreen4"
. La prima forma è più
veloce da scrivere e un po’ più efficiente. Tuttavia, la seconda forma
permette di specificare colori X11 anche attraverso più parole:
in questo esempio, "dark sea green 4"
.
La funzione x11-color
, se non riesce a comprendere il parametro,
restituisce il colore nero.
\new Staff \with { instrumentName = \markup { \with-color #(x11-color 'red) "Clarinet" } } \relative c'' { \override Staff.StaffSymbol.color = #(x11-color 'SlateBlue2) gis8 a \override Beam.color = #(x11-color "medium turquoise") gis a \override Accidental.color = #(x11-color 'DarkRed) gis a \override NoteHead.color = #(x11-color "LimeGreen") gis a % this is deliberate nonsense; note that the stems remain black \override Stem.color = #(x11-color 'Boggle) b2 cis }
I colori RGB esatti si specificano con la funzione Scheme rgb-color
.
Questa funzione prende tre argomenti, usati rispettivamente per i canali
red (rosso), green (verde) e blue (blu), e un numero
alfa opzionale per la semitrasparenza. (Tutti i valori devono essere
numeri compresi tra 0 e 1.)
La semitrasparenza è supportata nell’output SVG, mentre per l’output PS
e PDF è supportata solo se si una versione di Ghostscript uguale o superiore
a 9.53. Nel frammento seguente la chiave del rigo appare semitrasparente
se elaborato secondo le condizioni menzionate sopra.
\new Staff \with { instrumentName = \markup { \with-color #(x11-color 'red) "Clarinetto" } \override Clef.color = #(rgb-color 0 0 0 0.5) } \relative c'' { \override Staff.StaffSymbol.color = #(x11-color 'SlateBlue2) \override Stem.color = #(rgb-color 0 0 0) gis8 a \override Stem.color = #(rgb-color 1 1 1) gis8 a \override Stem.color = #(rgb-color 0 0 0.5) gis4 a }
Vedi anche
Guida alla notazione:
Elenco dei colori, Il comando \tweak
.
Frammenti: Editorial annotations.
Problemi noti e avvertimenti
Un colore X11 non ha necessariamente la stessa identica tonalità di un normale colore dal nome simile.
Non tutti i colori X11 sono distinguibili in un browser web. Per esempio,
un browser potrebbe non mostrare alcuna differenza tra LimeGreen
e ForestGreen
. Per il web si consiglia di usare i colori CSS,
come è spiegato in Elenco dei colori.
Le note in un accordo non possono essere colorate separatamente con un
\override
; al suo posto si usa \tweak
o l’equivalente
\single\override
, vedi Il comando \tweak
.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Colorare gli oggetti ] | [ Su : Interne al rigo ] | [ Gambi > ] |
Parentesi
Gli oggetti possono essere messi tra parentesi se si usa il comando \parenthesize
prima dell’evento musicale. Se precede un accordo, viene messa tra parentesi
ogni nota dell’accordo. Si possono mettere tra parentesi anche singole note
di un accordo.
\relative { c''2 \parenthesize d c2 \parenthesize <c e g> c2 <c \parenthesize e g> }
Si possono mettere tra parentesi anche oggetti diversi dalle note. Per le
articolazioni è necessario usare un trattino prima del comando \parenthesize
.
\relative { c''2-\parenthesize -. d c2 \parenthesize r }
Quando \parenthesize
si applica a un accordo, tutte le sue note
vengono racchiuse tra parentesi.
Per racchiudere tra parentesi solo alcune note di un accordo, usare un costrutto
per la musica parallela << … >>
.
Una forma alternativa del comando \parenthesize
prevede un percorso
al grob: \parenthesize NomeContesto.NomeGrob
o semplicemente \parenthesize NomeGrob
(l’ultimo sottintende
il contesto al livello più basso, normalmente Voice
). Bisogna
inserirlo prima del momento musicale, come un \once \override
.
Questa forma permette di racchiudere tra parentesi grob che sono causati
solo indirettamente dagli eventi.
\new Staff \relative << { \parenthesize NoteHead c'1 } \new CueVoice { s2 \voiceOne \once \override Staff.Parentheses.font-size = 3 \parenthesize Staff.CueClef \cueClef treble e'8 f a g } >>
Vedi anche
Frammenti: Editorial annotations.
Guida al funzionamento interno: Parenthesis_engraver, Parentheses, parentheses-interface.
Problemi noti e avvertimenti
Attualmente, la proprietà font-size
del grob Parentheses
deve
essere modificata manualmente per ottenere parentesi dalle dimensioni corrette
per gli accordi e alcuni altri oggetti.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Parentesi ] | [ Su : Interne al rigo ] | [ Esterne al rigo > ] |
Gambi
Per ogni nota viene creato automaticamente un oggetto Stem
(gambo).
Vale anche per le semibrevi e le pause, anche se i loro gambi sono resi
invisibili.
I gambi si possono posizionare sopra o sotto, vedi Direzione e posizionamento.
Comandi predefiniti
\stemUp
,
\stemDown
,
\stemNeutral
.
Frammenti di codice selezionati
Direzione predefinita dei gambi sulla linea centrale del rigo
La direzione predefinita dei gambi sulla linea centrale del rigo si
imposta con la proprietà neutral-direction
dell’oggetto Stem
.
\relative c'' { a4 b c b \override Stem.neutral-direction = #up a4 b c b \override Stem.neutral-direction = #down a4 b c b }
Cambiare automaticamente la direzione del gambo della nota centrale in base alla melodia
LilyPond può modificare la direzione del gambo della nota centrale di un
rigo in modo che segua la melodia: occorre aggiungere l’incisore
Melody_engraver
al contesto Voice
.
La proprietà di contesto suspendMelodyDecisions
può essere usata
per disattivare questo comportamento localmente.
\relative c'' { \time 3/4 a8 b g f b g | \set suspendMelodyDecisions = ##t a b g f b g | \unset suspendMelodyDecisions c b d c b c | } \layout { \context { \Voice \consists "Melody_engraver" \autoBeamOff } }
Vedi anche
Guida alla notazione: Direzione e posizionamento.
Frammenti: Editorial annotations.
Guida al funzionamento interno: Stem_engraver, Stem, stem-interface.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Parentesi ] | [ Su : Interne al rigo ] | [ Esterne al rigo > ] |