| [Inizio][Contenuti][Indice][ ? ] |
LilyPond — Guida alla Notazione
|
Questo manuale costituisce la guida di riferimento per tutti gli aspetti relativi alla notazione musicale in LilyPond versione 2.17.18. Si presuppone che il lettore conosca il materiale esposto nel Manuale di Apprendimento. |
| 1. Notazione musicale | Notazione usata in quasi tutti i progetti. | |
| 2. Specialist notation | Notazione usata solo in contesti specifici. | |
| 3. General input and output | Informazioni generali su input e output. | |
| 4. Spacing issues | Impaginazione della musica sul foglio. | |
| 5. Changing defaults | Aggiustamento dell’output. | |
Appendici | ||
|---|---|---|
| A. Notation manual tables | Tabelle e diagrammi. | |
| B. Cheat sheet | Sommario della sintassi di LilyPond. | |
| C. GNU Free Documentation License | Licenza di questo documento. | |
| D. Indice dei comandi di LilyPond | ||
| E. Indice di LilyPond | ||
|
Per maggiori informazioni su come questo manuale si integra col resto della documentazione, o per leggere questo manuale in altri formati, si veda Manuali. Se ti manca qualche manuale, puoi trovare la completa documentazione all’indirizzo http://www.lilypond.org/. |
| [ << Top ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Top ] | [ Su : Top ] | [ Altezze > ] | ||
1. Notazione musicale
Questo capitolo spiega come creare la notazione musicale.
| 1.1 Altezze | Scrittura e aspetto delle altezze delle note. | |
| 1.2 Ritmi | Scrittura e aspetto delle durate delle note. | |
| 1.3 Expressive marks | Adding expression to notes. | |
| 1.4 Repeats | Repeat music. | |
| 1.5 Simultaneous notes | More than one note at once. | |
| 1.6 Staff notation | Displaying staves. | |
| 1.7 Editorial annotations | Special notation to increase legibility. | |
| 1.8 Text | Adding text to scores. |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Notazione musicale ] | [ Su : Notazione musicale ] | [ Inserimento delle altezze > ] | ||
1.1 Altezze
Questa sezione tratta il modo in cui si determina l’altezza delle note. Occorre considerare tre aspetti: input, modifica e output.
| 1.1.1 Inserimento delle altezze | ||
| 1.1.2 Modifica di più altezze | ||
| 1.1.3 Aspetto delle altezze | ||
| 1.1.4 Teste di nota |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Altezze ] | [ Su : Altezze ] | [ Ottava assoluta > ] | ||
1.1.1 Inserimento delle altezze
Questa sezione spiega come indicare l’altezza delle note. Ci sono due modi di collocare le note in una determinata ottava: il modo assoluto e il modo relativo. Nella maggioranza dei casi il modo relativo è più funzionale.
| Ottava assoluta | ||
| Ottava relativa | ||
| Alterazioni | ||
| Nomi delle note in altre lingue |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Inserimento delle altezze ] | [ Su : Inserimento delle altezze ] | [ Ottava relativa > ] | ||
Ottava assoluta
Le altezze, se non si adotta una lingua diversa, sono scritte in
notazione olandese, che usa le lettere minuscole dalla a (La)
alla g (Sol). Le note c (Do) e b (Si) vengono scritte
un’ottava sotto il Do centrale.
{
\clef bass
c4 d e f
g4 a b c
d4 e f g
}
Si possono indicare altre ottave con l’apice singolo (')
o la virgola (,). Ogni ' alza l’altezza di
un’ottava; ogni , abbassa l’altezza di un’ottava.
{
\clef treble
c'4 c'' e' g
d''4 d' d c
\clef bass
c,4 c,, e, g
d,,4 d, d c
}
Vedi anche
Glossario musicale: Nomi delle altezze.
Frammenti di codice: Altezze.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Ottava assoluta ] | [ Su : Inserimento delle altezze ] | [ Alterazioni > ] | ||
Ottava relativa
Quando si indicano le ottave in modalità assoluta è facile collocare un’altezza nell’ottava sbagliata. Il metodo d’inserimento in ottava relativa riduce questi errori, perché il più delle volte non è necessario specificare alcuna ottava. Inoltre, in modalità assoluta un singolo errore può essere difficile da individuare, mentre in modalità relativa un singolo errore sposta tutto il resto del pezzo di un’ottava.
\relative altezza_di_riferimento espressione_musicale
In modalità relativa ogni nota è collocata il più vicino
possibile a quella precedente. Questo significa che l’ottava
di ogni altezza all’interno di espressione_musicale viene
calcolata nel modo seguente:
- In assenza di segni di cambiamento d’ottava, l’ottava di un’altezza viene calculata in modo che l’intervallo con la nota precedente sia inferiore a una quinta. Tale intervallo è determinato senza considerare gli accidenti.
-
Si può aggiungere un segno di cambiamento d’ottava
'o,per collocare l’altezza di una nota all’ottava superiore o inferiore a quella di riferimento. -
È possibile usare più di un segno di cambiamento d’ottava. Per esempio,
''e,,modificano l’altezza di due ottave. -
L’altezza della prima nota è relativa a
altezza_di_riferimento.altezza_di_riferimentoè specificato nel modo di ottava assoluta. Vi raccomandiamo di fare riferimento a un Do (c).
Ecco il modo relativo in azione:
\relative c {
\clef bass
c d e f
g a b c
d e f g
}
I segni di cambiamento d’ottava si impiegano per gli intervalli più ampi di quello di quarta:
\relative c'' {
c g c f,
c' a, e'' c
}
Una sequenza di note senza segni di ottava può tuttavia comprendere intervalli di grande estensione:
\relative c {
c f b e
a d g c
}
Nel caso di blocchi \relative annidati, si
considera il blocco \relative più interno.
\relative c' {
c d e f
\relative c'' {
c d e f
}
}
\relative non ha effetto sui blocchi \chordmode.
\new Staff {
\relative c''' {
\chordmode { c1 }
}
\chordmode { c1 }
}
\relative non può essere inserito all’interno dei blocchi \chordmode.
La musica all’interno di un blocco \transpose è considerata in
notazione d’ottava assoluta, a meno che non sia incluso il
blocco \relative.
\relative c' {
d e
\transpose f g {
d e
\relative c' {
d e
}
}
}
Se l’elemento precedente è un accordo, il posizionamento dell’ottava della
nota o dell’accordo che segue è riferito alla prima nota dell’accordo
stesso. All’interno degli accordi la nota successiva è sempre relativa a
quella precedente. Esaminate con attenzione l’esempio seguente, e in
particolare le note c.
\relative c' {
c
<c e g>
<c' e g'>
<c, e, g''>
}
Come spiegato sopra, il riferimento delle altezze a un’ottava è calcolato in base ai soli nomi delle note, senza considerare le alterazioni. Dunque un Mi doppio diesis che segue un Si verrà posizionato sopra, mentre un Fa doppio bemolle sarà posizionato sotto. In altre parole, un intervallo di quarta aumentata due volte viene considerato più piccolo di una quinta diminuita due volte, indipendentemente dal numero di semitoni contenuto in ogni intervallo.
\relative c'' {
c2 fis
c2 ges
b2 eisis
b2 feses
}
Ne consegue che la prima nota di un blocco \relative f venga
interpretata come se fosse scritta nel modo di ottava assoluta.
Vedi anche
Glossario musicale: quinta, intervallo, Nomi delle altezze.
Guida alla notazione: Controlli di ottava.
Frammenti di codice: Altezze.
Guida al funzionamento interno: RelativeOctaveMusic.
Se non viene specificata una altezza_di_riferimento per \relative,
allora si assume che corrisponda a c'. Tuttavia, questa è un’opzione
deprecata e potrebbe essere tolta nelle future versioni; il
suo impiego è quindi sconsigliato.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Ottava relativa ] | [ Su : Inserimento delle altezze ] | [ Nomi delle note in altre lingue > ] | ||
Alterazioni
Nota: I nuovi utenti sono talvolta confusi dalla gestione delle
alterazioni e delle armature di chiave. In LilyPond i nomi delle
note costituiscono l’input grezzo; le armature e le chiavi determinano
come questo input grezzo venga mostrato.
Una nota non alterata come c significa ‘Do naturale’,
indipendentemente dall’armatura o dalla chiave. Per maggiori informazioni
si veda
Alterazioni e armature di chiave.
Nella modalità di notazione predefinita un diesis si ottiene aggiungendo is
al nome della nota, un bemolle aggiungendo es. Come potete
immaginare, un doppio diesis o doppio bemolle
si ottengono aggiungendo isis o eses. Questa sintassi è
desunta dalla notazione olandese. Per usare altri nomi
per le alterazioni, si veda Nomi delle note in altre lingue.
ais1 aes aisis aeses
Un bequadro cancella l’effetto di un’alterazione o di un’armatura di chiave. Tuttavia, nella sintassi di Lilypond, non occorre specificare i bequadri mediante l’aggiunta di un particolare suffisso: un’altezza naturale è indicata con il semplice nome della nota:
a4 aes a2
È possibile indicare alterazioni di quarti di tono. Ecco una serie di Do con altezza crescente:
ceseh1 ces ceh c cih cis cisih
Di norma le alterazioni vengono mostrate automaticamente, ma è
possibile anche inserirle manualmente. Si può forzare l’inserimento di
un’alterazione di sicurezza aggiungendo il punto esclamativo !
dopo l’altezza. Un’alterazione di cortesia (ovvero un’alterazione compresa
tra parentesi) si ottiene aggiungendo il punto interrogativo ? dopo
l’altezza. Questi segni possono essere usati anche per produrre dei bequadri.
cis cis cis! cis? c c c! c?
Se una nota è prolungata attraverso una legatura di valore, l’alterazione viene ripetuta solo all’inizio di un nuovo sistema:
cis1~ cis~ \break cis
Frammenti di codice selezionati
Nascondere le alterazioni delle note con legatura di valore all’inizio di un nuovo sistema
Questo frammento mostra come nascondere le alterazioni delle note con legatura di valore all’inizio di un nuovo sistema
\relative c'' {
\override Accidental.hide-tied-accidental-after-break = ##t
cis1~ cis~
\break
cis
}
Impedire l’inserimento automatico dei bequadri supplementari
Secondo le norme tipografiche standard, un segno di bequadro viene
inserito prima di un diesis o di un bemolle se un’alterazione
precedente sulla stessa nota deve essere cancellata. Per cambiare
questo comportamento si imposta la proprietà extraNatural su
f (falso) nel contesto Staff.
\relative c'' {
aeses4 aes ais a
\set Staff.extraNatural = ##f
aeses4 aes ais a
}
Vedi anche
Glossario musicale: diesis, bemolle, doppio diesis, doppio bemolle, Nomi delle altezze, quarto di tono.
Manuale di apprendimento: Alterazioni e armature di chiave.
Guida alla notazione: Alterazioni automatiche, Annotational accidentals (musica ficta), Nomi delle note in altre lingue.
Frammenti di codice: Altezze.
Guida al funzionamento interno: Accidental_engraver, Accidental, AccidentalCautionary, accidental-interface.
Problemi noti e avvertimenti
Poiché non esistono standard universalmente accettati per indicare le alterazioni di quarto di tono, il simbolo impiegato da LilyPond non si riferisce ad alcuno standard.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Alterazioni ] | [ Su : Inserimento delle altezze ] | [ Modifica di più altezze > ] | ||
Nomi delle note in altre lingue
Lilypond comprende insiemi predefiniti di nomi di note e alterazioni in altre lingue. La scelta della lingua si fa solitamente all’inizio del file; l’esempio seguente è scritto in notazione italiana:
\language "italiano"
\relative do' {
do re mi sib
}
Le lingue disponibili e i tipi di notazione che definiscono sono:
Lingua
Nomi delle note
nederlandsc d e f g a bes b
catalando re mi fa sol la sib si
deutschc d e f g a b h
englishc d e f g a bf b
espanoloespañoldo re mi fa sol la sib si
italianoofrançaisdo re mi fa sol la sib si
norskc d e f g a b h
portuguesdo re mi fa sol la sib si
suomic d e f g a b h
svenskac d e f g a b h
vlaamsdo re mi fa sol la sib si
Oltre ai nomi delle note, anche i suffissi per le alterazioni possono variare a seconda della lingua adottata:
Lingua
diesis
bemolle
doppio diesis
doppio bemolle
nederlands-is
-es
-isis
-eses
catalan-d/-s
-b
-dd/-ss
-bb
deutsch-is
-es
-isis
-eses
english-s/-sharp
-f/-flat
-ss/-x/-sharpsharp
-ff/-flatflat
espanoloespañol-s
-b
-ss/-x
-bb
italianoofrançais-d
-b
-dd
-bb
norsk-iss/-is
-ess/-es
-ississ/-isis
-essess/-eses
portugues-s
-b
-ss
-bb
suomi-is
-es
-isis
-eses
svenska-iss
-ess
-ississ
-essess
vlaams-k
-b
-kk
-bb
In olandese, aes viene contratto in as, ma entrambe le
forme sono accettate in LilyPond. Analogalmente, sia es che
ees sono accettati. Lo stesso vale per
aeses / ases e
eeses / eses. Talvolta solo questi nomi
contratti sono definiti nei corrispondenti file della lingua.
a2 as e es a ases e eses
In alcune forme musicali vengono usati i microtoni, le cui alterazioni sono frazioni di un ‘normale’ diesis o bemolle. La seguente tabella elenca i nomi delle note per le alterazioni di un quarto di tono in varie lingue; i prefissi semi- e sesqui- significano rispettivamente ‘metà’ e ‘uno e mezzo’. Le lingue che non compaiono in questa tabella non hanno ancora dei nomi per le note speciali.
Lingua
semi-diesis
semi-bemolle
sesqui-diesis
sesqui-bemolle
nederlands-ih
-eh
-isih
-eseh
deutsch-ih
-eh
-isih
-eseh
english-qs
-qf
-tqs
-tqf
espanoloespañol-cs
-cb
-tcs
-tcb
italianoofrançais-sd
-sb
-dsd
-bsb
portugues-sqt
-bqt
-stqt
-btqt
Gran parte delle lingue presentate qui sono comunemente associate alla musica classica occidentale, nota anche come Common Practice Period. Sono tuttavia supportati anche altezze e sistemi di accordatura alternativi: si veda Common notation for non-Western music.
Vedi anche
Glossario musicale: Nomi delle altezze, Periodo di pratica comune.
Guida alla notazione: Common notation for non-Western music.
File installati: ‘scm/define-note-names.scm’.
Frammenti di codice: Altezze.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Nomi delle note in altre lingue ] | [ Su : Altezze ] | [ Controlli di ottava > ] | ||
1.1.2 Modifica di più altezze
Questa sezione tratta il modo di modificare le altezze delle note.
| Controlli di ottava | ||
| Trasposizione | ||
| Inversione | ||
| Retrogradazione | ||
| Trasposizioni modali |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Modifica di più altezze ] | [ Su : Modifica di più altezze ] | [ Trasposizione > ] | ||
Controlli di ottava
In modalità relativa è facile dimenticare un segno di cambiamento d’ottava. I controlli di ottava permettono di rilevare questi errori più facilmente: infatti, generano un avviso e correggono l’ottava se una nota si trova in un’ottava diversa dal previsto.
Per controllare l’ottava di una nota, occorre specificare l’ottava assoluta
dopo il simbolo =. Questo esempio genererà un avviso
(e cambierà l’altezza) perché la seconda nota è l’ottava assoluta
d'' invece di d', come indicato dalla correzione di ottava.
\relative c'' {
c2 d='4 d
e2 f
}
L’ottava in cui si trovano le note può essere controllata anche col
comando \octaveCheck altezza_di_controllo.
L’altezza_di_controllo è specificata in modo assoluto. Questo
comando controlla che l’intervallo tra la nota precedente e
l’altezza_di_controllo sia compresa in una quinta (ovvero secondo
il normale calcolo della modalità relativo). Se il controllo fallisce, compare
un avviso, ma la nota precedente non viene modificata. Le note successive
sono relative all’altezza_di_controllo.
\relative c'' {
c2 d
\octaveCheck c'
e2 f
}
Nelle due battute che seguono, il primo e il terzo \octaveCheck
falliscono, mentre il secondo non fallisce.
\relative c'' {
c4 f g f
c4
\octaveCheck c'
f
\octaveCheck c'
g
\octaveCheck c'
f
}
Vedi anche
Frammenti di codice: Altezze.
Guida al funzionamento interno: RelativeOctaveCheck.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Controlli di ottava ] | [ Su : Modifica di più altezze ] | [ Inversione > ] | ||
Trasposizione
Un’espressione musicale può essere trasposta con \transpose. La
sintassi è
\transpose altezza_di_partenza altezza_di_arrivo espressione_musicale
Significa che espressione_musicale viene trasposto
dell’intervallo compreso tra le altezze altezza_di_partenza e
altezza_di_arrivo: qualsiasi nota che presenti un’altezza
corrispondente all’altezza_di_partenza viene modificata
in altezza_di_arrivo, e qualsiasi altra nota viene
trasposta dello stesso intervallo. Entrambe le altezze sono inserite
in modalità assoluta.
Nota: La musica all’interno di un blocco \transpose è assoluta
a meno che il blocco non includa un \relative.
Prendiamo come esempio un brano scritto in Re maggiore. Possiamo trasportarlo in Mi maggiore; si noti come anche l’armatura di chiave venga trasposta automaticamente.
\transpose d e {
\relative c' {
\key d \major
d4 fis a d
}
}
Se una parte scritta in Do (l’intonazione reale abituale) deve essere suonata su un clarinetto in La (per il quale un La viene rappresentato da un Do e dunque suona una terza minore più basso), la trasposizione sarà ottenuta con:
\transpose a c' {
\relative c' {
\key c \major
c4 d e g
}
}
Si noti che \key c \major è specificato esplicitamente. Se
non si specifica un’armatura di chiave, le note verranno trasposte ma
non apparirà alcuna armatura.
\transpose fa distinzione tra altezze enarmoniche: sia
\transpose c cis che \transpose c des traspongono
un brano di un semitono più alto. La prima versione mostrerà i diesis e
le note rimarranno sullo stesso grado della scala, mentre la seconda
versione mostrerà i bemolle sul grado superiore della scala.
music = \relative c' { c d e f }
\new Staff {
\transpose c cis { \music }
\transpose c des { \music }
}
\transpose può essere usato anche in un altro modo, ovvero
per inserire note scritte per uno strumento traspositore. Gli esempi
precedenti mostrano come inserire altezze in Do (o intonazione reale)
e mostrare le note di uno strumento traspositore, ma è possibile anche
il contrario: per esempio, se da un insieme di parti strumentali
si volesse ricavare una partitura per il direttore. Così, per inserire
la parte per una tromba in Si bemolle che inizia con un Mi (intonazione reale
Re), si può scrivere:
musicInBflat = { e4 … }
\transpose c bes, \musicInBflat
Per stampare questa musica in Fa (ad esempio per riarrangiarla per corno) si
può avvolgere la musica esistente in un altro \transpose:
musicInBflat = { e4 … }
\transpose f c' { \transpose c bes, \musicInBflat }
Per maggiori informazioni sugli strumenti traspositori, si veda Trasporto strumentale.
Frammenti di codice selezionati
Trasposizione delle altezze con numero minimo di alterazioni
Questo esempio usa del codice Scheme per imporre delle modifiche enarmoniche alle note che permettano di avere il numero minimo di alterazioni. In questo caso si applica la seguente regola:
Le doppie alterazioni devono essere eliminate
Si diesis -> Do
Mi diesis -> Fa
Do bemolle -> Si
Fa bemolle -> Mi
In questo modo vengono scelti i suoni enarmonici più semplici.
#(define (naturalize-pitch p)
(let ((o (ly:pitch-octave p))
(a (* 4 (ly:pitch-alteration p)))
;; alteration, a, in quarter tone steps,
;; for historical reasons
(n (ly:pitch-notename p)))
(cond
((and (> a 1) (or (eq? n 6) (eq? n 2)))
(set! a (- a 2))
(set! n (+ n 1)))
((and (< a -1) (or (eq? n 0) (eq? n 3)))
(set! a (+ a 2))
(set! n (- n 1))))
(cond
((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
(if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
(if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
(ly:make-pitch o n (/ a 4))))
#(define (naturalize music)
(let ((es (ly:music-property music 'elements))
(e (ly:music-property music 'element))
(p (ly:music-property music 'pitch)))
(if (pair? es)
(ly:music-set-property!
music 'elements
(map (lambda (x) (naturalize x)) es)))
(if (ly:music? e)
(ly:music-set-property!
music 'element
(naturalize e)))
(if (ly:pitch? p)
(begin
(set! p (naturalize-pitch p))
(ly:music-set-property! music 'pitch p)))
music))
naturalizeMusic =
#(define-music-function (parser location m)
(ly:music?)
(naturalize m))
music = \relative c' { c4 d e g }
\score {
\new Staff {
\transpose c ais { \music }
\naturalizeMusic \transpose c ais { \music }
\transpose c deses { \music }
\naturalizeMusic \transpose c deses { \music }
}
\layout { }
}
Vedi anche
Guida alla notazione: Trasporto strumentale, Inversione, Trasposizioni modali, Ottava relativa, Retrogradazione.
Frammenti di codice: Altezze.
Guida al funzionamento interno: TransposedMusic.
Problemi noti e avvertimenti
La conversione relativa non avrà effetto sulle sezioni \transpose,
\chordmode e \relative comprese all’interno di un
blocco \relative. Per usare la modalità relativa all’interno
di musica trasposta, occorre inserire un ulteriore blocco \relative
all’interno di \transpose.
Il comando \transpose impedisce di stampare le alterazioni triple. Le
sostituisce con un’altezza ‘enarmonicamente equivalente’ (per esempio,
Re bemolle al posto di Mi triplo bemolle).
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Trasposizione ] | [ Su : Modifica di più altezze ] | [ Retrogradazione > ] | ||
Inversione
Un’espressione musicale può essere invertita e trasposta in una singola operazione con:
\inversion altezza-di-riferimento altezza-di-arrivo espressione_musicale
L’espressione_musicale viene invertita intervallo per intervallo
intorno all’altezza-di-riferimento e poi trasposta in modo che
ci sia una corrispondenza tra altezza-di-riferimento e
altezza-di-arrivo.
music = \relative c' { c d e f }
\new Staff {
\music
\inversion d' d' \music
\inversion d' ees' \music
}
Nota: I motivi da invertire devono essere scritti in forma assoluta
oppure devono essere prima convertiti in forma assoluta racchiudendoli
in un blocco relative.
Vedi anche
Guida alla notazione: Trasposizioni modali, Retrogradazione, Trasposizione.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Inversione ] | [ Su : Modifica di più altezze ] | [ Trasposizioni modali > ] | ||
Retrogradazione
Un’espressione musicale può essere invertita in modo da produrre il proprio retrogrado:
music = \relative c' { c8. ees16( fis8. a16 b8.) gis16 f8. d16 }
\new Staff {
\music
\retrograde \music
}
Problemi noti e avvertimenti
Le legature di valore manuali in \retrograde saranno spezzate e
genereranno degli avvisi. Alcune legature di valore possono essere
generate automaticamente abilitando Divisione automatica delle note.
Vedi anche
Guida alla notazione: Inversione, Trasposizioni modali, Trasposizione.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Retrogradazione ] | [ Su : Modifica di più altezze ] | [ Aspetto delle altezze > ] | ||
Trasposizioni modali
In una composizione musicale basata su una scala, un motivo viene frequentemente trasportato in differenti modi. Può essere trasposto per iniziare in punti diversi della scala o può essere invertito rispetto a un punto cardine della scala. Può anche essere rovesciato per produrre il retrogrado, si veda Retrogradazione.
Nota: Le note che non si trovano all’interno della scala definita non vengono trasformate.
Trasposizione modale
Un motivo può essere trasposto entro una certa scala con:
\modalTranspose altezza-di-partenza altezza-di-arrivo scala motif
Le note di motif vengono spostate, se all’interno della scala, del numero di gradi della scala dati dall’intervallo tra altezza-di-arrivo e altezza-di-partenza:
diatonicScale = \relative c' { c d e f g a b }
motif = \relative c' { c8 d e f g a b c }
\new Staff {
\motif
\modalTranspose c f \diatonicScale \motif
\modalTranspose c b, \diatonicScale \motif
}
È possibile indicare una scala ascendente di qualsiasi lunghezza e con qualsiasi intervallo:
pentatonicScale = \relative c' { ges aes bes des ees }
motif = \relative c' { ees8 des ges,4 <ges' bes,> <ges bes,> }
\new Staff {
\motif
\modalTranspose ges ees' \pentatonicScale \motif
}
Se usato con una scala cromatica, \modalTranspose ha un
effetto simile a \transpose, con in più la possibilità
di specificare i nomi delle note da usare:
chromaticScale = \relative c' { c cis d dis e f fis g gis a ais b }
motif = \relative c' { c8 d e f g a b c }
\new Staff {
\motif
\transpose c f \motif
\modalTranspose c f \chromaticScale \motif
}
Inversione modale
Una sequenza di note può essere invertita all’interno di una data scala intorno a una determinata nota cardine e quindi trasposto, in un’unica operazione, con:
\modalInversion altezza-cardine altezza-di-arrivo scala motif
Le note di motif vengono spostate dello stesso numero di gradi dalla nota dell’altezza-cardine all’interno della scala, ma nella direzione opposta, e il risultato viene poi spostato all’interno della scala per il numero di gradi dato dall’intervallo tra altezza-di-arrivo e altezza-cardine.
Dunque, per invertire intorno a una particolare nota della scala, è necessario usare il medesimo valore per altezza-cardine e altezza-di-arrivo:
octatonicScale = \relative c' { ees f fis gis a b c d }
motif = \relative c' { c8. ees16 fis8. a16 b8. gis16 f8. d16 }
\new Staff {
\motif
\modalInversion fis' fis' \octatonicScale \motif
}
Per invertire intorno a una nota cardine posta tra altre due note, si inverte intorno a una della note e poi si traspone di un grado della scala. Le due note specificate possono essere interpretate come parentesi del punto cardine:
scale = \relative c' { c g' }
motive = \relative c' { c c g' c, }
\new Staff {
\motive
\modalInversion c' g' \scale \motive
}
L’operazione combinata di inversione e retrogradazione produce la retrogradazione inversa:
octatonicScale = \relative c' { ees f fis gis a b c d }
motif = \relative c' { c8. ees16 fis8. a16 b8. gis16 f8. d16 }
\new Staff {
\motif
\retrograde \modalInversion c' c' \octatonicScale \motif
}
Vedi anche
Guida alla notazione: Inversione, Retrogradazione, Trasposizione.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Trasposizioni modali ] | [ Su : Altezze ] | [ Chiave > ] | ||
1.1.3 Aspetto delle altezze
Questa sezione tratta il modo di modificare l’aspetto delle altezze delle note.
| Chiave | ||
| Armatura di chiave | ||
| Segni di ottavazione | ||
| Trasporto strumentale | ||
| Alterazioni automatiche | ||
| Ambitus |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Aspetto delle altezze ] | [ Su : Aspetto delle altezze ] | [ Armatura di chiave > ] | ||
Chiave
È possibile cambiare la chiave impiegata. Negli esempi seguenti mostriamo il Do centrale. I seguenti nomi di chiave possono (ma non devono) essere racchiusi tra virgolette.
\clef treble c2 c \clef alto c2 c \clef tenor c2 c \clef bass c2 c
Altre chiavi:
\clef french c2 c \clef soprano c2 c \clef mezzosoprano c2 c \clef baritone c2 c \break \clef varbaritone c2 c \clef subbass c2 c \clef percussion c2 c \break \clef G % synonym for treble c2 c \clef F % synonym for bass c2 c \clef C % synonym for alto c2 c
Aggiungendo _8 o ^8 al nome della chiave, la sua
adozione comporta il trasporto all’ottava rispettivamente inferiore o
superiore, mentre _15 e ^15 traspongono di due ottave.
È possibile usare altri numeri interi, se necessario. I nomi di chiave
contenenti caratteri non alfabetici devono essere racchiusi tra virgolette
\clef treble c2 c \clef "treble_8" c2 c \clef "bass^15" c2 c \clef "alto_2" c2 c \clef "G_8" c2 c \clef "F^5" c2 c
L’ottavazione opzionale si può ottenere racchiudendo l’argomento numerico tra parentesi tonde o quadre:
\clef "treble_(8)" c2 c \clef "bass^[15]" c2 c
Le altezze vengono mostrate come se l’argomento numerico fosse inserito senza parentesi.
Alcune chiavi particolari sono descritte in Mensural clefs,
Gregorian clefs, Default tablatures e Custom tablatures. Per alternare chiavi diverse nelle citazioni in corpo più piccolo
all’interno di una partitura, si vedano le funzioni \cueClef e
\cueDuringWithClef in Formatting cue notes.
Frammenti di codice selezionati
Modifiche manuali della proprietà della chiave
Il comando \clef "treble_8" equivale a impostare
clefGlyph, clefPosition (che regola la posizione
verticale della chiave), middleCPosition e
clefTransposition. Viene stampata una chiave quando cambia una
di queste proprietà, eccetto middleCPosition.
La modifica del glifo, della posizione della chiave o
dell’ottavazione non è sufficiente per cambiare la posizione delle
note che seguono sul rigo: bisogna anche specificare la posizione
del Do centrale (middle C). I parametri di posizione sono relativi
alla linea centrale del rigo, con i numeri positivi che indicano
la parte superiore: ogni linea e spazio valgono uno. Il valore
clefTransposition di norma è impostato su 7, -7, 15
o -15, ma altri valori sono considerati validi.
Quando un cambio di chiave avviene in corrispondenza di un’interruzione di
linea, di norma il simbolo della nuova chiave viene inserito sia alla fine
del rigo precedente sia all’inizio di quello successivo. Se la
chiave di avvertimento a fine rigo non fosse necessaria,
può essere nascosta impostando la proprietà explicitClefVisibility
del contesto Staff su end-of-line-invisible. Il comportamento
predefinito può essere ripristinato con \unset Staff.explicitClefVisibility.
Gli esempi seguenti mostrano le possibilità date dall’impostazione manuale di tali proprietà. Sulla prima linea le modifiche manuali preservano il posizionamento relativo standard di chiavi e note, mentre sulla seconda linea non lo fanno.
\layout { ragged-right = ##t }
{
% The default treble clef
c'1
% The standard bass clef
\set Staff.clefGlyph = #"clefs.F"
\set Staff.clefPosition = #2
\set Staff.middleCPosition = #6
c'1
% The baritone clef
\set Staff.clefGlyph = #"clefs.C"
\set Staff.clefPosition = #4
\set Staff.middleCPosition = #4
c'1
% The standard choral tenor clef
\set Staff.clefGlyph = #"clefs.G"
\set Staff.clefPosition = #-2
\set Staff.clefTransposition = #-7
\set Staff.middleCPosition = #1
c'1
% A non-standard clef
\set Staff.clefPosition = #0
\set Staff.clefTransposition = #0
\set Staff.middleCPosition = #-4
c'1 \break
% The following clef changes do not preserve
% the normal relationship between notes and clefs:
\set Staff.clefGlyph = #"clefs.F"
\set Staff.clefPosition = #2
c'1
\set Staff.clefGlyph = #"clefs.G"
c'1
\set Staff.clefGlyph = #"clefs.C"
c'1
\set Staff.clefTransposition = #7
c'1
\set Staff.clefTransposition = #0
\set Staff.clefPosition = #0
c'1
% Return to the normal clef:
\set Staff.middleCPosition = #0
c'1
}
Vedi anche
Guida alla notazione: Mensural clefs, Gregorian clefs, Default tablatures, Custom tablatures, Formatting cue notes.
Frammenti di codice: Altezze.
Guida al funzionamento interno: Clef_engraver, Clef, ClefModifier, clef-interface.
Problemi noti e avvertimenti
I numeri di ottavazione assegnati alle chiavi sono trattati come oggetti grafici
separati. Quindi qualsiasi \override all’oggetto Clef dovrà essere
applicato, con un altro \override, all’oggetto ClefModifier.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Chiave ] | [ Su : Aspetto delle altezze ] | [ Segni di ottavazione > ] | ||
Armatura di chiave
Nota: I nuovi utenti sono talvolta confusi dalla gestione delle
alterazioni e delle armature di chiave. In LilyPond i nomi delle
note costituiscono l’input grezzo; le armature e le chiavi determinano
come questo venga mostrato. Una nota non alterata come c
significa ‘Do naturale’, indipendentemente dall’armatura o dalla
chiave. Per maggiori informazioni si veda
Alterazioni e armature di chiave.
L’armatura di chiave indica la tonalità di un brano. È costituita da un insieme di alterazioni (bemolle o diesis) all’inizio del rigo. L’armatura di chiave può essere modificata:
\key altezza modo
modo deve essere \major o \minor
per ottenere rispettivamente un’armatura di altezza-maggiore o
altezza-minore. È anche possibile usare i nomi tradizionali
dei modi, chiamati anche modi ecclesiastici:
\ionian, \dorian, \phrygian, \lydian,
\mixolydian, \aeolian e \locrian.
\key g \major fis1 f fis
Si possono definire ulteriori modi elencando le alterazioni per ogni grado della scala quando il modo inizia col Do.
freygish = #`((0 . ,NATURAL) (1 . ,FLAT) (2 . ,NATURAL)
(3 . ,NATURAL) (4 . ,NATURAL) (5 . ,FLAT) (6 . ,FLAT))
\relative c' {
\key c\freygish c4 des e f
\bar "||" \key d\freygish d es fis g
}
Le alterazioni dell’armatura di chiave possono essere collocate in
posizioni diverse da quelle tradizionali o anche in più di un’ottava, usando
le proprietà flat-positions e sharp-positions
di KeySignature. I valori di queste proprietà specificano
l’estensione delle posizioni del rigo in cui potranno comparire
le alterazioni. Se viene specificata una sola posizione, le
alterazioni vengono collocate entro l’ottava che finisce in quella
posizione del rigo.
\override Staff.KeySignature.flat-positions = #'((-5 . 5)) \override Staff.KeyCancellation.flat-positions = #'((-5 . 5)) \clef bass \key es\major es g bes d \clef treble \bar "||" \key es\major es g bes d \override Staff.KeySignature.sharp-positions = #'(2) \bar "||" \key b\major b fis b2
Frammenti di codice selezionati
Impedire l’inserimento dei segni di bequadro quando cambia l’armatura di chiave
Quando l’armatura di chiave cambia, vengono inseriti automaticamente i
segni di bequadro per annulare le alterazioni di precedenti armature. Si
può evitare questo comportamento impostando su f (falso) la proprietà
printKeyCancellation nel contesto Staff.
\relative c' {
\key d \major
a4 b cis d
\key g \minor
a4 bes c d
\set Staff.printKeyCancellation = ##f
\key d \major
a4 b cis d
\key g \minor
a4 bes c d
}
Armature di chiave non tradizionali
Il comando \key comunemente usato imposta la proprietà
keySignature, che fa parte del contesto Staff.
Per creare armature di chiave non standard, tale proprietà va impostata esplicitamente. Il formato di questo comando è una lista:
\set Staff.keySignature = #`(((ottava . grado) . alterazione) ((ottava
. grado) . alterazione) ...) dove, per ogni elemento della lista,
ottava indica l’ottava (0 è l’ottava dal Do centrale
al Si precedente), grado indica la nota all’interno
dell’ottava (0 significa Do e 6 significa Si) e alterazione
può essere ,SHARP ,FLAT ,DOUBLE-SHARP etc. (Si noti la virgola iniziale.)
Altrimenti, usando, per ogni elemento della lista, il formato breve
(grado . alterazione), ciò indica che la stessa alterazione deve
essere presente in tutte le ottave.
Ecco un esempio di una possibile armatura per generare una scala a tono intero:
\relative c' {
\set Staff.keySignature = #`(((0 . 6) . ,FLAT)
((0 . 5) . ,FLAT)
((0 . 3) . ,SHARP))
c4 d e fis
aes4 bes c2
}
Vedi anche
Glossario musicale: church mode, scordatura.
Manuale di apprendimento: Alterazioni e armature di chiave.
Frammenti di codice: Altezze.
Guida al funzionamento interno: KeyChangeEvent, Key_engraver, Key_performer, KeyCancellation, KeySignature, key-signature-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Armatura di chiave ] | [ Su : Aspetto delle altezze ] | [ Trasporto strumentale > ] | ||
Segni di ottavazione
I segni di ottavazione introducono un’ulteriore trasposizione di ottava nel rigo:
a2 b \ottava #-2 a2 b \ottava #-1 a2 b \ottava #0 a2 b \ottava #1 a2 b \ottava #2 a2 b
Frammenti di codice selezionati
Testo dell’ottava
Internamente, \ottava imposta le proprietà ottavation (ad
esempio, su 8va o 8vb) e middleCPosition. Per
sovrascrivere il testo della parentesi, occorre specificare ottavation
dopo il comando \ottava.
{
\ottava #1
\set Staff.ottavation = #"8"
c''1
\ottava #0
c'1
\ottava #1
\set Staff.ottavation = #"Text"
c''1
}
Vedi anche
Glossario musicale: ottavazione.
Frammenti di codice: Altezze.
Guida al funzionamento interno: Ottava_spanner_engraver, OttavaBracket, ottava-bracket-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Segni di ottavazione ] | [ Su : Aspetto delle altezze ] | [ Alterazioni automatiche > ] | ||
Trasporto strumentale
Quando si scrivono partiture che comprendono strumenti traspositori, alcune parti possono essere scritte a un’altezza diversa dall’intonazione reale. In questi casi, è necessario specificare la chiave dello strumento traspositore, altrimenti l’output MIDI e le citazioni in altre parti produrranno altezze errate. Per maggiori informazioni sulle citazioni, si veda Quoting other voices.
\transposition altezza
L’altezza da usare per \transposition deve corrispondere al suono
effettivamente prodotto quando un c' scritto sul rigo viene
suonato dallo strumento traspositore. Tale altezza viene inserita in
modalità assoluta; dunque, uno strumento che produce un suono reale un
tono sopra la notazione deve usare \transposition d'.
\transposition va usato soltanto se le altezze non
sono scritte in intonazione reale.
Ecco un frammento per violino e clarinetto in Si bemolle, le cui parti sono inserite usando le note e l’armatura di chiave che appaiono nei rispettivi righi sulla partitura del direttore. I due strumenti suonano all’unisono.
\new GrandStaff <<
\new Staff = "violin" {
\relative c'' {
\set Staff.instrumentName = #"Vln"
\set Staff.midiInstrument = #"violin"
% not strictly necessary, but a good reminder
\transposition c'
\key c \major
g4( c8) r c r c4
}
}
\new Staff = "clarinet" {
\relative c'' {
\set Staff.instrumentName = \markup { Cl (B\flat) }
\set Staff.midiInstrument = #"clarinet"
\transposition bes
\key d \major
a4( d8) r d r d4
}
}
>>
\transposition può essere modificato nel corso di un brano. Ad
esempio, un clarinettista potrebbe passare da un clarinetto in La a uno
in Si bemolle.
\set Staff.instrumentName = #"Cl (A)"
\key a \major
\transposition a
c d e f
\textLengthOn
<>^\markup { Switch to B\flat clarinet }
R1
\key bes \major
\transposition bes
c2 g
Vedi anche
Glossario musicale: intonazione reale, strumento traspositore.
Guida alla notazione: Quoting other voices, Trasposizione.
Frammenti di codice: Altezze.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Trasporto strumentale ] | [ Su : Aspetto delle altezze ] | [ Ambitus > ] | ||
Alterazioni automatiche
Esistono diverse convenzioni sul modo di scrivere le alterazioni. LilyPond ha una funzione per specificare lo stile di gestione delle alterazioni adottato. Questa funzione viene richiamata nel modo seguente:
\new Staff <<
\accidentalStyle voice
{ … }
>>
La gestione delle alterazioni si applica di norma all’attuale Staff (con
l’eccezione degli stili piano e piano-cautionary, che sono
spiegati dopo). Questa funzione accetta un secondo argomento opzionale che
determina in quale ambito debba essere cambiato lo stile. Ad esempio, per
usare lo stesso stile in tutti i righi dell’attuale StaffGroup, si usa:
\accidentalStyle StaffGroup.voice
Sono supportati i seguenti modi di gestire le alterazioni. Il seguente esempio mostra tutti gli stili:
musicA = {
<<
\relative c' {
cis'8 fis, bes4 <a cis>8 f bis4 |
cis2. <c, g'>4 |
}
\\
\relative c' {
ais'2 cis, |
fis8 b a4 cis2 |
}
>>
}
musicB = {
\clef bass
\new Voice {
\voiceTwo \relative c' {
<fis, a cis>8[ <fis a cis>
\change Staff = up
cis' cis
\change Staff = down
<fis, a> <fis a>]
\showStaffSwitch
\change Staff = up
dis'4 |
\change Staff = down
<fis, a cis>4 gis <f a d>2 |
}
}
}
\new PianoStaff {
<<
\context Staff = "up" {
\accidentalStyle default
\musicA
}
\context Staff = "down" {
\accidentalStyle default
\musicB
}
>>
}
Si noti che le ultime linee di questo esempio possono essere sostituite dal seguente frammento, se si vuole usare lo stesso stile in entrambi i righi.
\new PianoStaff {
<<
\context Staff = "up" {
%%% change the next line as desired:
\accidentalStyle Score.default
\musicA
}
\context Staff = "down" {
\musicB
}
>>
}
-
default -
Questo è il comportamento predefinito del compositore tipografico. Corrisponde alla pratica comunemente impiegata dal diciottesimo secolo: le alterazioni vengono ricordate fino alla fine della misura in cui si trovano, limitatamente all’ottava di appartenenza. Quindi, nell’esempio seguente non compare alcun segno di bequadro prima del
bnella seconda misura o prima dell’ultimoc: -
voice -
Normalmente le alterazioni mantengono la propria validità a livello di
Staff. Tuttavia in questo stile le alterazioni vengono gestite individualmente per ogni voce. Al di fuori di quest’aspetto, lo stile è analogo adefault.Di conseguenza, le alterazioni relative a una voce non vengono cancellate nelle altre voci. Un risultato spesso non desiderabile: nell’esempio seguente è difficile capire se il secondo
asia naturale o diesis. L’opzionevoicedeve essere quindi usata solo se ogni voce è destinata a un esecutore diverso. Se la partitura deve essere letta da un unico musicista (come nel caso della partitura del direttore, o di uno spartito per pianoforte), allora è preferibile usaremodernomodern-cautionary. -
modern -
Questa regola corrisponde alla pratica comune del ventesimo secolo. Omette i segni di bequadro supplementari che in passato erano di norma anteposti al diesis che segue un doppio diesis o a un bemolle che segue un doppio bemolle. La regola
modernpresenta le stesse alterazioni didefault, con due aggiunte che servono a evitare ambiguità: i segni di annullamento delle alterazioni temporanee sono anteposti alle note sulla stessa ottava della misura successiva e alle note in ottave diverse nella stessa misura. In questo esempio, dunque, i bequadri delbe delcnella seconda misura del rigo superiore: -
modern-cautionary -
Questa regola è simile a
modern, ma le alterazioni ‘supplementari’ (quelle non mostrate dadefault) sono segnate come alterazioni di precauzione. Di norma, sono poste tra parentesi; altrimenti, possono essere ridotte in corpo più piccolo definendo la proprietàcautionary-stylediAccidentalSuggestion. -
modern-voice -
Questa regola viene usata per le alterazioni su più voci destinate sia agli esecutori che suonano una singola voce sia a quelli che suonano tutte le voci. Le alterazioni sono mostrate su tutte le voci, ma sono annullate su ogni voce dello stesso rigo (
Staff). Quindi, l’alterazione dell’anell’ultima misura viene annullata perché l’annullamento precedente si trovava in una voce diversa, mentre quella deldnel rigo inferiore viene annullata a causa dell’alterazione in un’altra voce della misura precedente: -
modern-voice-cautionary -
Questa regola è analoga a
modern-voice, ma con le alterazioni supplementari (quelle non mostrate davoice) segnate come alterazioni di precauzione. Tutte le alterazioni mostrate dadefaultsono mostrate con questa regola, ma alcune di esse sono indicate come alterazioni di precauzione. -
piano -
Questa regola riflette la pratica del ventesimo secolo per la notazione per pianoforte. Il suo comportamento è molto simile allo stile
modern, ma in questo caso le alterazioni vengono annullate in tutti i righi che si trovano nello stessoGrandStaffoPianoStaff, dunque tutte gli annullamenti delle note finali.È lo stile predefinito per gli attuali
GrandStaffePianoStaff. -
piano-cautionary -
È uguale a
pianoma con le alterazioni supplementari mostrate come alterazioni di precauzione. -
neo-modern -
Questa regola si riferisce a una pratica tipica della musica contemporanea: le alterazioni sono mostrate come in
modern, ma vengono ripetute se la stessa nota appare in seguito nella stessa misura – a meno che la seconda occorrenza non segua direttamente la prima. -
neo-modern-cautionary -
Questa regola è simile a
neo-modern, ma le alterazioni supplementari sono mostrate come alterazioni di precauzione. -
neo-modern-voice -
Questa regola viene usata per le alterazioni su più di una voce che devono essere lette sia da musicisti che suonano una singola voce sia da musicisti che suonano tutte le voci. Le alterazioni per ogni voce sono mostrate come nello stile
neo-modern, ma vengono annullate attraverso le voci nello stesso rigo (Staff). -
neo-modern-voice-cautionary -
Questa regola è simile a
neo-modern-voice, ma le alterazioni supplementari sono indicate come alterazioni di precauzione. -
dodecaphonic -
Questa regola riflette una regola introdotta dai compositori all’inizio del ventesimo secolo nel tentativo di abolire la gerarchia tra suoni naturali e non naturali. Con questo stile, ogni nota presenta un segno di alterazione, anche i suoni naturali.
-
teaching -
Questa regola è pensata per gli studenti: permette di generare facilmente degli spartiti di scale con le alterazioni di precauzione inserite in modo automatico. Alle alterazioni, indicate come nello stile
modern, vengono aggiunte ulteriori segni di precauzione per tutti i diesis e bemolle specificati dall’armatura di chiave, fuorché nel caso di ripetizioni immediatamente successive di una stessa nota. -
no-reset -
È identico a
default, ma le alterazioni mantengono la propria validità ‘per sempre’, non solo all’interno della singola misura: -
forget -
È il contrario di
no-reset: le alterazioni non vengono ricordate affatto – pertanto, tutte le alterazioni si riferiscono all’armatura di chiave, indipendentemente dal materiale musicale precedente.
Vedi anche
Frammenti di codice: Altezze.
Guida al funzionamento interno: Accidental, Accidental_engraver, GrandStaff, PianoStaff, Staff, AccidentalSuggestion, AccidentalPlacement, accidental-suggestion-interface.
Problemi noti e avvertimenti
Le note simultanee non vengono considerate nell’individuazione
automatica delle alterazioni; vengono prese come riferimento solo
le note precedenti e l’armatura di chiave. Se la stessa nota
occorre simultaneamente con alterazioni diverse, può essere necessario
forzare le alterazioni con ! o ?: ‘<f! fis!>’.
L’annullamento di precauzione delle alterazioni avviene in relazione alla
misura precedente. Tuttavia, nel blocco \alternative che segue
una sezione \repeat volta N, è auspicabile che l’annullamento sia
calcolato in base alla precedente misura eseguita, non alla precedente
misura stampata. Nell’esempio seguente il Do naturale della seconda
volta non richiede il segno di bequadro:
Si può usare il seguente espediente: si definisce una funzione che
imposti localmente lo stile delle alterazioni su forget:
forget = #(define-music-function (parser location music) (ly:music?) #{
\accidentalStyle forget
#music
\accidentalStyle modern
#})
{
\accidentalStyle modern
\time 2/4
\repeat volta 2 {
c'2
}
\alternative {
cis'
\forget c'
}
}
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Alterazioni automatiche ] | [ Su : Aspetto delle altezze ] | [ Teste di nota > ] | ||
Ambitus
Il termine ambitus (pl. ambitus) indica l’ambito di altezze di una determinata voce all’interno di una composizione musicale. Può indicare anche l’estensione di uno strumento musicale, ovvero l’intera gamma di suoni che può produrre. L’ambitus viene usato nelle parti vocali in modo che gli esecutori possano capire facilmente se siano adeguate alle loro possibilità.
L’ambitus viene indicato all’inizio del brano, prima della chiave iniziale. L’intervallo è individuato graficamente da due teste di nota che rappresentano l’altezza più bassa e più alta. Le alterazioni sono mostrate solo se non fanno parte dell’armatura di chiave.
\layout {
\context {
\Voice
\consists "Ambitus_engraver"
}
}
\relative c'' {
aes c e2
cis,1
}
Frammenti di codice selezionati
Un ambitus per voce
L’ambitus può essere specificato per voce. In tal caso occorre spostarlo manualmente per evitare collisioni.
\new Staff <<
\new Voice \with {
\consists "Ambitus_engraver"
} \relative c'' {
\override Ambitus.X-offset = #2.0
\voiceOne
c4 a d e
f1
}
\new Voice \with {
\consists "Ambitus_engraver"
} \relative c' {
\voiceTwo
es4 f g as
b1
}
>>
Ambitus su più voci
Se si aggiunge l’incisore Ambitus_engraver al contesto Staff viene
creato un solo ambitus per il rigo, anche nel caso di righi che hanno più
voci.
\new Staff \with {
\consists "Ambitus_engraver"
}
<<
\new Voice \relative c'' {
\voiceOne
c4 a d e
f1
}
\new Voice \relative c' {
\voiceTwo
es4 f g as
b1
}
>>
Modifica dell’intervallo dell’ambitus
È possibile cambiare le impostazioni predefinite dell’intervallo dell’ambitus.
\layout {
\context {
\Voice
\consists "Ambitus_engraver"
}
}
\new Staff {
\time 2/4
% Default setting
c'4 g''
}
\new Staff {
\time 2/4
\override AmbitusLine.gap = #0
c'4 g''
}
\new Staff {
\time 2/4
\override AmbitusLine.gap = #1
c'4 g''
}
\new Staff {
\time 2/4
\override AmbitusLine.gap = #1.5
c'4 g''
}
Vedi anche
Glossario musicale: ambitus.
Frammenti di codice: Altezze.
Guida al funzionamento interno: Ambitus_engraver, Voice, Staff, Ambitus, AmbitusAccidental, AmbitusLine, AmbitusNoteHead, ambitus-interface.
Problemi noti e avvertimenti
Le collisioni non vengono gestite in presenza di un ambitus multiplo su più di una voce.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Ambitus ] | [ Su : Altezze ] | [ Teste di nota speciali > ] | ||
1.1.4 Teste di nota
Questa sezione suggerisce i modi in cui modificare la testa di una nota.
| Teste di nota speciali | ||
| Testa di nota con nome della nota | ||
| Teste di nota a forma variabile | ||
| Improvvisazione |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Teste di nota ] | [ Su : Teste di nota ] | [ Testa di nota con nome della nota > ] | ||
Teste di nota speciali
L’aspetto delle teste delle note può essere modificato:
c4 b \override NoteHead.style = #'cross c4 b \revert NoteHead.style a b \override NoteHead.style = #'harmonic a b \revert NoteHead.style c4 d e f
L’elenco di tutti gli stili per le teste di nota è in Note head styles.
Lo stile barrato (cross) viene usato per rappresentare varie
intenzioni musicali. I seguenti comandi generici predefiniti modificano
la testa della nota nei contesti del rigo e dell’intavolatura e possono
essere usati per rappresentare qualsiasi significato musicale:
c4 b \xNotesOn a b c4 b \xNotesOff c4 d
Questo comando può essere usato all’interno e all’esterno degli accordi per generare teste barrate sia nel contesto del rigo che in quello dell’intavolatura:
c4 b
\xNote { e f }
c b < g \xNote c f > b
Potete utilizzare, al posto di \xNote, \xNotesOn e
\xNotesOff, i comandi \deadNote, \deadNotesOn e
\deadNotesOff. Il termine dead note è di uso comune
tra i chitarristi.
Esiste anche una scorciatoia per le forme a diamante. Può essere usata solo all’interno di un accordo:
<c f\harmonic>2 <d a'\harmonic>4 <c g'\harmonic>
Comandi predefiniti
\harmonic,
\xNotesOn,
\xNotesOff,
\xNote.
Vedi anche
Frammenti di codice: Altezze.
Guida alla notazione: Note head styles, Chorded notes, Indicating harmonics and dampened notes.
Guida al funzionamento interno: note-event, Note_heads_engraver, Ledger_line_engraver, NoteHead, LedgerLineSpanner, note-head-interface, ledger-line-spanner-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Teste di nota speciali ] | [ Su : Teste di nota ] | [ Teste di nota a forma variabile > ] | ||
Testa di nota con nome della nota
La nota ‘easy play’ inserisce il nome della nota dentro la testa. Viene usata nella musica per principianti. Per rendere le lettere leggibili, occorrerebbe usare un carattere più grande. A questo proposito si veda Setting the staff size.
#(set-global-staff-size 26)
\relative c' {
\easyHeadsOn
c2 e4 f
g1
\easyHeadsOff
c,1
}
Comandi predefiniti
\easyHeadsOn,
\easyHeadsOff.
Frammenti di codice selezionati
Numeri dentro le teste di nota
Le teste di nota con nome della nota usano la proprietà note-names
dell’oggetto NoteHead per determinare cosa appaia
all’interno della testa. È possibile sovrascrivere questa proprietà
e mostrare numeri che corrispondano ai gradi della scala.
Si può creare un semplice incisore che faccia questo per oggni oggetto testa di nota che incontra.
#(define Ez_numbers_engraver
(make-engraver
(acknowledgers
((note-head-interface engraver grob source-engraver)
(let* ((context (ly:translator-context engraver))
(tonic-pitch (ly:context-property context 'tonic))
(tonic-name (ly:pitch-notename tonic-pitch))
(grob-pitch
(ly:event-property (event-cause grob) 'pitch))
(grob-name (ly:pitch-notename grob-pitch))
(delta (modulo (- grob-name tonic-name) 7))
(note-names
(make-vector 7 (number->string (1+ delta)))))
(ly:grob-set-property! grob 'note-names note-names))))))
#(set-global-staff-size 26)
\layout {
ragged-right = ##t
\context {
\Voice
\consists \Ez_numbers_engraver
}
}
\relative c' {
\easyHeadsOn
c4 d e f
g4 a b c \break
\key a \major
a,4 b cis d
e4 fis gis a \break
\key d \dorian
d,4 e f g
a4 b c d
}
Vedi anche
Guida alla notazione: Setting the staff size.
Frammenti di codice: Altezze.
Guida al funzionamento interno: note-event, Note_heads_engraver, NoteHead, note-head-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Testa di nota con nome della nota ] | [ Su : Teste di nota ] | [ Improvvisazione > ] | ||
Teste di nota a forma variabile
In alcune notazioni, la forma della testa della nota corrisponde alla funzione armonica di una nota nella scala. Questa notazione era comune nei canzonieri americani del diciannovesimo secolo. Gli stili possibili sono Sacred Harp, Southern Harmony, Funk (Harmonica Sacra), Walker e Aiken (Christian Harmony):
\aikenHeads c, d e f g2 a b1 c \break \sacredHarpHeads c,4 d e f g2 a b1 c \break \southernHarmonyHeads c,4 d e f g2 a b1 c \break \funkHeads c,4 d e f g2 a b1 c \break \walkerHeads c,4 d e f g2 a b1 c \break
Le forme variano in base al grado della scala; la
scala è determinata dal comando \key. Se si scrive in
tonalità minore, il grado della scala può essere determinato
in base alla relativa maggiore:
\key a \minor \aikenHeads a b c d e2 f g1 a \break \aikenHeadsMinor a,4 b c d e2 f g1 a \break \sacredHarpHeadsMinor a,2 b c d \break \southernHarmonyHeadsMinor a2 b c d \break \funkHeadsMinor a2 b c d \break \walkerHeadsMinor a2 b c d \break
Comandi predefiniti
\aikenHeads,
\aikenHeadsMinor,
\funkHeads,
\funkHeadsMinor,
\sacredHarpHeads,
\sacredHarpHeadsMinor,
\southernHarmonyHeads,
\southernHarmonyHeadsMinor,
\walkerHeads,
\walkerHeadsMinor.
Frammenti di codice selezionati
Applicazione degli stili delle teste di nota in base al grado della scala
La proprietà shapeNoteStyles può essere usata per definire vari
stili di teste di nota per ogni grado della scala (definita dall’armatura
di chiave o dalla proprietà tonic). Questa proprietà richiede un
insieme di simboli, che può essere puramente arbitrario (sono permesse
espressioni geometriche come triangle, cross e xcircle)
o basato sull’antica tradizione tipografica americana (sono consentiti
anche alcuni nomi di nota latini).
Detto questo, per imitare gli antichi canzionieri americani, ci sono vari
stili predefiniti disponibili attraverso dei comodi comandi come
\aikenHeads o \sacredHarpHeads.
Questo esempio mostra modi diversi di ottenere teste di nota di varie forme e illustra la possibilità di trasporre una melodia senza perdere la corrispondenza tra le funzioni armoniche e gli stili delle teste.
fragment = {
\key c \major
c2 d
e2 f
g2 a
b2 c
}
\new Staff {
\transpose c d
\relative c' {
\set shapeNoteStyles = ##(do re mi fa
#f la ti)
\fragment
}
\break
\relative c' {
\set shapeNoteStyles = ##(cross triangle fa #f
mensural xcircle diamond)
\fragment
}
}
La lista completa di tutti gli stili delle teste si trova in Note head styles.
Vedi anche
Frammenti di codice: Altezze.
Guida alla notazione: Note head styles.
Guida al funzionamento interno: note-event, Note_heads_engraver, NoteHead, note-head-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Teste di nota a forma variabile ] | [ Su : Teste di nota ] | [ Ritmi > ] | ||
Improvvisazione
L’improvvisazione viene talvolta indicata con teste tagliate: l’esecutore può scegliere qualsiasi nota ma deve seguire il ritmo indicato. Si possono creare queste teste:
\new Voice \with {
\consists "Pitch_squash_engraver"
} {
e8 e g a a16( bes) a8 g
\improvisationOn
e8 ~
e2 ~ e8 f4 f8 ~
f2
\improvisationOff
a16( bes) a8 g e
}
Comandi predefiniti
\improvisationOn,
\improvisationOff.
Vedi anche
Frammenti di codice: Altezze.
Guida al funzionamento interno: Pitch_squash_engraver, Voice, RhythmicStaff.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Improvvisazione ] | [ Su : Notazione musicale ] | [ Scrittura delle durate > ] | ||
1.2 Ritmi
Questa sezione tratta i ritmi, le pause, le durate, la disposizione delle travature e le battute.
| 1.2.1 Scrittura delle durate | ||
| 1.2.2 Scrittura delle pause | ||
| 1.2.3 Aspetto dei ritmi | ||
| 1.2.4 Travature | ||
| 1.2.5 Battute | ||
| 1.2.6 Questioni ritmiche particolari |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Ritmi ] | [ Su : Ritmi ] | [ Durata > ] | ||
1.2.1 Scrittura delle durate
| Durata | ||
| Gruppi irregolari | ||
| Scalare le durate | ||
| Legature di valore |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Scrittura delle durate ] | [ Su : Scrittura delle durate ] | [ Gruppi irregolari > ] | ||
Durata
Le durate, indicate con numeri e punti, vengono inserite con i loro
valori reciproci. Ad esempio, una nota di un quarto si indica con un
4 (dato che il suo valore è un 1/4), mentre una minima si indica
col 2 (dato che il suo valore è 1/2). Per le note più lunghe
di un intero bisogna usare i comandi \longa (due volte una
breve) e \breve. Valori minori sono possibili, ma appaiono
con delle travature. La nota più breve ha un valore di 128.
\time 8/1 c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128
Ecco le stesse durate con la disposizione automatica delle travature disabilitata.
\time 8/1 \autoBeamOff c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c128 c128
Solo nella notazione per musica antica è possibile specificare una nota che
dura quattro volte una breve, attraverso il comando \maxima. Per maggiori
informazioni si veda Ancient notation.
Se la durata viene omessa, viene impostata sulla durata precedente. Il valore predefinito della prima nota è un quarto.
a a a2 a a4 a a1 a
Per ottenere note puntate, si inserisce un punto (.) dopo la
durata. Le note doppiamente puntate si specificano aggiungendo due
punti, e così via.
a4 b c4. b8 a4. b4.. c8.
Alcune durate non possono essere rappresentate soltanto con durate e punti; occorre utilizzare una legatura di valore tra due o più note. I dettagli sono spiegati in Legature di valore.
Per sapere come specificare le durate delle sillabe del testo e come allineare il testo alle note, si veda Vocal music.
Le note possono essere distanziate in modo strettamente proporzionale alla loro durata. I dettagli relativi a questo e a altre impostazioni che controllano la notazione proporzionale si trovano in Proportional notation.
Di norma i punti sono spostati in su per evitare le linee del rigo, con l’eccezione dei passaggi polifonici. I punti possono essere posizionati manualmente sopra o sotto il rigo; si veda Direction and placement.
Comandi predefiniti
\autoBeamOn,
\autoBeamOff,
\dotsUp,
\dotsDown,
\dotsNeutral.
Frammenti di codice selezionati
Nota breve alternativa
Questo frammento mostra come usare la nota breve alternativa che ha due lineette verticali su ciascun lato della testa invece di una sola.
\relative c'' {
\time 4/2
c\breve |
\override Staff.NoteHead.style = #'altdefault
b\breve
\revert Staff.NoteHead.style
a\breve
}
Modifica del numero di punti di aumentazione per nota
Questo frammento mostra come modificare il numero di punti di aumentazione su una singola nota.
\relative c' {
c4.. a16 r2 |
\override Dots.dot-count = #4
c4.. a16 r2 |
\override Dots.dot-count = #0
c4.. a16 r2 |
\revert Dots.dot-count
c4.. a16 r2 |
}
Vedi anche
Glossario musicale: breve, longa, maxima, durata, Nomi di durata delle note e delle pause.
Guida alla notazione: Travature automatiche, Legature di valore, Stems, Scrittura delle durate, Scrittura delle pause, Vocal music, Ancient notation, Proportional notation.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Dots, DotColumn.
Problemi noti e avvertimenti
Non c’è un limite massimo o minimo alle durate di una pausa, è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve).
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Durata ] | [ Su : Scrittura delle durate ] | [ Scalare le durate > ] | ||
Gruppi irregolari
I gruppi irregolari sono costituiti da un’espressione musicale
introdotta dal comando \tuplet, che moltiplica la velocità
dell’espressione musicale per una frazione:
\tuplet frazione { musica }
Il numeratore della frazione apparirà sopra o sotto le note, eventualmente con una parentesi quadra. Il gruppo irregolare più comune è la terzina, in cui 3 note hanno la durata di 2:
a2 \tuplet 3/2 { b4 b b }
c4 c \tuplet 3/2 { b4 a g }
In caso di lunghi passaggi di gruppi irregolari, dover scrivere
un comando \tuplet per ogni gruppo è scomodo. È possibile
specificare direttamente la durata di un gruppo irregolare prima
della musica per far sì che i gruppi siano suddivisi automaticamente:
g2 r8 \tuplet 3/2 8 { cis16 d e e f g g f e }
Le parentesi dei gruppi irregolari si possono posizionare manualmente sopra o sotto il rigo, come spiegato dettagliatamente in Direction and placement.
È possibile annidare i gruppi irregolari:
\autoBeamOff
c4 \tuplet 5/4 { f8 e f \tuplet 3/2 { e[ f g] } } f4
La modifica di gruppi irregolari annidati che iniziano nello stesso momento
musicale richiede l’uso di \tweak.
Per modificare la durata delle note senza che appaia la parentesi del gruppo irregolare, si veda Scalare le durate.
Comandi predefiniti
\tupletUp,
\tupletDown,
\tupletNeutral.
Frammenti di codice selezionati
Inserire vari gruppi irregolari usando una sola volta il comando \tuplet
La proprietà tupletSpannerDuration imposta la durata di ognuno dei
gruppi irregolari compresi tra parentesi dopo il comando \tuplet.
In questo modo si possono inserire molti gruppi irregolari consecutivi
all’interno di una singola espressione \tuplet, risparmiando così
tempo e spazio.
Ci sono vari modi per impostare tupletSpannerDuration. Il
comando \tupletSpan la imposta su una certa durata e poi
la annulla quando invece di una durata viene specificato
\default. Altrimenti si può usare un argomento
opzionale con \tuplet.
\relative c' {
\time 2/4
\tupletSpan 4
\tuplet 3/2 { c8^"\\tupletSpan 4" c c c c c }
\tupletSpan \default
\tuplet 3/2 { c8^"\\tupletSpan \\default" c c c c c }
\tuplet 3/2 4 { c8^"\\tuplet 3/2 4 {...}" c c c c c }
}
Modifica del numero del gruppo irregolare
Di norma compare sulla parentesi del gruppo irregolare solo il numeratore del numero del gruppo irregolare. Ma è possibile mostrare la frazione num:den del numero del gruppo irregolare oppure nascondere del tutto il numero.
\relative c'' {
\tuplet 3/2 { c8 c c }
\tuplet 3/2 { c8 c c }
\override TupletNumber.text = #tuplet-number::calc-fraction-text
\tuplet 3/2 { c8 c c }
\override TupletNumber.stencil = ##f
\tuplet 3/2 { c8 c c }
}
Numeri non predefiniti per i gruppi irregolari
LilyPond fornisce anche funzioni di formattazione che permettono di creare numeri di gruppi irregolari diversi dalla frazione vera e propria, così come di aggiungere un valore di nota al numero o alla frazione di un gruppo irregolare.
\relative c'' {
\once \override TupletNumber.text =
#(tuplet-number::non-default-tuplet-denominator-text 7)
\tuplet 3/2 { c4. c4. c4. c4. }
\once \override TupletNumber.text =
#(tuplet-number::non-default-tuplet-fraction-text 12 7)
\tuplet 3/2 { c4. c4. c4. c4. }
\once \override TupletNumber.text =
#(tuplet-number::append-note-wrapper
(tuplet-number::non-default-tuplet-fraction-text 12 7) "8")
\tuplet 3/2 { c4. c4. c4. c4. }
\once \override TupletNumber.text =
#(tuplet-number::append-note-wrapper
tuplet-number::calc-denominator-text "4")
\tuplet 3/2 { c8 c8 c8 c8 c8 c8 }
\once \override TupletNumber.text =
#(tuplet-number::append-note-wrapper
tuplet-number::calc-fraction-text "4")
\tuplet 3/2 { c8 c8 c8 c8 c8 c8 }
\once \override TupletNumber.text =
#(tuplet-number::fraction-with-notes "4." "8")
\tuplet 3/2 { c4. c4. c4. c4. }
\once \override TupletNumber.text =
#(tuplet-number::non-default-fraction-with-notes 12 "8" 4 "4")
\tuplet 3/2 { c4. c4. c4. c4. }
}
Controllare la visibilità della parentesi del gruppo irregolare
Il comportamento predefinito relativo alla visibilità della parentesi quadra
del gruppo irregolare è di mostrare una parentesi a meno che non ci sia
una travatura della stessa lunghezza del gruppo. Per controllare la
visibilità di tale parentesi, si imposta la proprietà 'bracket-visibility
su #t (mostra sempre la parentesi), #f (non mostrare mai la
parentesi) o #'if-no-beam (mostra la parentesi solo se non c’è una
travatura).
music = \relative c'' {
\tuplet 3/2 { c16[ d e } f8]
\tuplet 3/2 { c8 d e }
\tuplet 3/2 { c4 d e }
}
\new Voice {
\relative c' {
<< \music s4^"default" >>
\override TupletBracket.bracket-visibility = #'if-no-beam
<< \music s4^"'if-no-beam" >>
\override TupletBracket.bracket-visibility = ##t
<< \music s4^"#t" >>
\override TupletBracket.bracket-visibility = ##f
<< \music s4^"#f" >>
}
}
Consentire l’interruzione del rigo all’interno di gruppi irregolari con travature
Questo esempio artificioso mostra come permettere interruzioni del rigo sia manuali che automatiche all’interno di un gruppo irregolare con travature. Si noti che le travature di questi gruppi irregolari fuori dal ritmo devono essere disposte manualmente.
\layout {
\context {
\Voice
% Permit line breaks within tuplets
\remove "Forbid_line_break_engraver"
% Allow beams to be broken at line breaks
\override Beam.breakable = ##t
}
}
\relative c'' {
a8
\repeat unfold 5 { \tuplet 3/2 { c[ b a] } }
% Insert a manual line break within a tuplet
\tuplet 3/2 { c[ b \bar "" \break a] }
\repeat unfold 5 { \tuplet 3/2 { c[ b a] } }
c8
}
Vedi anche
Glossario musicale: terzina, gruppo irregolare, polimetrico.
Manuale di apprendimento: Tweaking methods.
Guida alla notazione:
Gestione del tempo,
Scalare le durate,
The \tweak command,
Notazione polimetrica.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: TupletBracket, TupletNumber, TimeScaledMusic.
Problemi noti e avvertimenti
Gli abbellimenti si possono inserire dentro le parentesi del gruppo
irregolare, eccetto quando un rigo inizia con un abbellimento
seguito da un gruppo irregolare. In questo caso particolare, l’abbellimento
deve essere inserito prima del comando \tuplet per evitare errori.
Quando si usa un gruppo irregolare all’inizio di un brano che ha un
segno di \tempo, la musica deve essere inserita esplicitamente
in un blocco \new Voice, come è spiegato in
Voices contain music.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Gruppi irregolari ] | [ Su : Scrittura delle durate ] | [ Legature di valore > ] | ||
Scalare le durate
La durata di singole note, pause o accordi può essere moltiplicata
per una frazione N/M aggiungendo *N/M (o *N se M
è 1). Questo non cambierà l’aspetto delle note o delle pause, ma
la durata così alterata verrà utilizzata per calcolare la posizione
all’interno della misura e per impostare la durata nel file MIDI.
Si possono combinare molteplici fattori, come *L*M/N. I fattori
fanno parte della durata: quindi se non si specifica una durata per
le note successive, la durata predefinita presa dalla nota precedente
includerà il fattore di scalatura.
Nell’esempio seguente le prime tre note occupano esattamente due battiti, ma non sono indicate come gruppo irregolare.
\time 2/4 % Trasforma le durate in terzine a4*2/3 gis a % Durate normali a4 a % Raddoppia la durata dell'accordo <a d>4*2 % Durata di un quarto, ma appare come un sedicesimo b16*4 c4
Anche la durata delle pause spaziatrici può essere modificata
con un moltiplicatore. Può essere utile per saltare molte misure, ad
esempio s1*23.
Si possono comprimere allo stesso modo tratti musicali più lunghi, come se ogni nota, accordo o pausa avesse la frazione come moltiplicatore. Così l’aspetto della musica non cambia ma la durata interna delle note viene moltiplicata per la frazione num/den. Ecco un esempio che mostra come la musica possa essere compressa e espansa:
\time 2/4
% Durate normali
<c a>4 c8 a
% Scala la musica di *2/3
\scaleDurations 2/3 {
<c a f>4. c8 a f
}
% Scala la musica di *2
\scaleDurations 2/1 {
<c' a>4 c8 b
}
Questo comando torna utile nella notazione polimetrica, si veda Notazione polimetrica.
Vedi anche
Guida alla notazione: Gruppi irregolari, Pause invisibili, Notazione polimetrica.
Frammenti di codice: Rhythms.
Problemi noti e avvertimenti
Il calcolo della posizione in una misura deve considerare tutti i fattori di dimensionamento applicati alle note di quella misura e gli esigui residui delle misure precedenti. Questo calcolo viene fatto con numeri razionali. Se un numeratore o un denominatore intermedi in quel calcolo eccedono di 2^30, l’esecuzione e la composizione tipografica si arresteranno in quel punto senza indicare un errore.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Scalare le durate ] | [ Su : Scrittura delle durate ] | [ Scrittura delle pause > ] | ||
Legature di valore
Una legatura di valore connette due teste di nota adiacenti della stessa altezza. La legatura di valore estende la durata di una nota.
Nota: Le legature di valore non devono essere confuse con le legature di portamento, che indicano un’articolazione, o con le legature di frase, che indicano una frase musicale. Una legatura di valore serve semplicemente a estendere la durata di una nota, in modo analogo al punto di aumentazione.
La legatura di valore si inserisce col simbolo tilde (~).
a2 ~ a
Le legature di valore si usano quando una nota attraversa una stanghetta o quando non si possono usare i punti per indicare la durata. Le legature si dovrebbero usare anche quando i valori della nota superano le suddivisioni della misura:
\relative c' {
r8 c8 ~ c2 r4 |
r8^"non" c2 ~ c8 r4
}
Se si devono creare legature di valore tra molte note che attraversano le misure, è più semplice usare la suddivisione automatica delle note, come è spiegato in Divisione automatica delle note. Questo sistema divide automaticamente le note lunghe e le connette da misura a misura.
Quando si applica una legatura di valore a un accordo, vengono legate tutte le teste di nota con la stessa altezza. Se le teste non corrispondono, non verrà creata alcuna legatura. Gli accordi possono essere parzialmente legati inserendo la legatura dentro l’accordo.
<c e g> ~ <c e g> <c~ e g~ b> <c e g b>
Quando la seconda alternativa di una ripetizione inizia con una nota legata, occorre specificarla nel modo seguente:
\repeat volta 2 { c g <c e>2 ~ }
\alternative {
% Prima alternativa: la nota seguente viene legata in modo normale
{ <c e>2. r4 }
% Seconda alternativa: la nota seguente ha una legatura ripetuta
{ <c e>2\repeatTie d4 c } }
Le legature di valore L.v. (laissez vibrer) indicano che le note non devono essere smorzate alla fine. Si usa nella notazione per pianoforte, arpa e altri strumenti a corda e a percussione. Si inseriscono così:
<c f g>1\laissezVibrer
Le legature di valore possono essere posizionate manalmente sopra o sotto il rigo; si veda Direction and placement.
Le legature di valore possono essere tratteggiate, punteggiate oppure in una combinazione di tratti continui e tratti interrotti.
\tieDotted c2 ~ c \tieDashed c2 ~ c \tieHalfDashed c2 ~ c \tieHalfSolid c2 ~ c \tieSolid c2 ~ c
Si possono specificare modelli di tratteggiatura personalizzati:
\tieDashPattern #0.3 #0.75 c2 ~ c \tieDashPattern #0.7 #1.5 c2 ~ c \tieSolid c2 ~ c
Le definizioni dei modelli di tratteggiatura delle legature di valore hanno la stessa struttura di quelle per le legature di portamento. I dettagli relativi ai modelli complessi di tratteggiatura sono trattati in Slurs.
Se le legature collidono con altri oggetti del rigo, si possono sovrascrivere le proprietà di formattazione whiteout e layer.
\override Tie.layer = #-2 \override Staff.TimeSignature.layer = #-1 \override Staff.KeySignature.layer = #-1 \override Staff.TimeSignature.whiteout = ##t \override Staff.KeySignature.whiteout = ##t b2 b~ \time 3/4 \key a \major b r4
Comandi predefiniti
\tieUp,
\tieDown,
\tieNeutral,
\tieDotted,
\tieDashed,
\tieDashPattern,
\tieHalfDashed,
\tieHalfSolid,
\tieSolid.
Frammenti di codice selezionati
Usare le legature di valore con un arpeggio
Le legature di valore vengono usate talvolta per scrivere un arpeggio. In questo
caso, le due note da legare devono non essere consecutive. Per riuscirci
occorre impostare la proprietà tieWaitForNote su #t. Questa
funzionalità serve anche a legare un tremolo a un accordo e in generale
qualsiasi note consecutive.
\relative c' {
\set tieWaitForNote = ##t
\grace { c16[ ~ e ~ g] ~ } <c, e g>2
\repeat tremolo 8 { c32 ~ c' ~ } <c c,>1
e8 ~ c ~ a ~ f ~ <e' c a f>2
\tieUp
c8 ~ a
\tieDown
\tieDotted
g8 ~ c g2
}
Disegnare manualmente le legature di valore
Le legature di valore possono essere disegnate a mano cambiando la
proprietà tie-configuration dell’oggetto TieColumn. Il
primo numero indica la distanza dal centro del rigo nell’unità di
metà spazio rigo, mentre il secondo numero indica la
direzione (1 = su, -1 = giù).
\relative c' {
<c e g>2~ <c e g>
\override TieColumn.tie-configuration =
#'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
<c e g>2~ <c e g>
}
Vedi anche
Glossario musicale: legatura di valore, laissez vibrer.
Guida alla notazione: Slurs, Divisione automatica delle note.
Frammenti di codice: Expressive marks, Rhythms.
Guida al funzionamento interno: LaissezVibrerTie, LaissezVibrerTieColumn, TieColumn, Tie.
Problemi noti e avvertimenti
Cambiare righi mentre una legatura di valore è attiva non produce una legatura obliqua.
Il cambio di chiave o di ottava durante una legatura di valore non è una situazione ben definita. In questi casi è preferibile usare una legatura di portamento.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Legature di valore ] | [ Su : Ritmi ] | [ Pause > ] | ||
1.2.2 Scrittura delle pause
Le pause si inseriscono insieme alla musica contenuta nelle espressioni musicali.
| Pause | ||
| Pause invisibili | ||
| Pause d’intero |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Scrittura delle pause ] | [ Su : Scrittura delle pause ] | [ Pause invisibili > ] | ||
Pause
Le pause si inseriscono allo stesso modo delle note ma col nome r.
Le durate più lunghe di un intero usano i seguenti comandi predefiniti:
\new Staff {
% Queste due linee servono solo ad abbellire questo esempio
\time 16/1
\override Staff.TimeSignature.stencil = ##f
% Mostra una pausa di maxima, equivalente a quattro brevi
r\maxima
% Mostra una pausa di longa, equivalente a due brevi
r\longa
% Mostra una pausa di breve
r\breve
r1 r2 r4 r8 r16 r32 r64 r128
}
Le pause d’intero, centrate sulla misura, devono essere inserite come pausa multipla. Si possono usare per una sola misura così come su molte misure, come è spiegato in Pause d’intero.
Per specificare esplicitamente la posizione verticale di una pausa, si scrive
il nome di una nota seguito da \rest. Una pausa della durata della
nota verrà posizionata sul punto del rigo in cui apparirebbe la nota. Questo
permette una precisa formattazione mauale della musica polifonica, dato che
il formattatore automatico che gestisce le collisioni tra pause non sposterà
queste pause.
a4\rest d4\rest
Frammenti di codice selezionati
Stili di pausa
Esistono vari stili di pausa.
\layout {
indent = 0
\context {
\Staff
\remove "Time_signature_engraver"
}
}
\new Staff \relative c {
\cadenzaOn
\override Staff.Rest.style = #'mensural
r\maxima^\markup \typewriter { mensural }
r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128
\bar ""
\override Staff.Rest.style = #'neomensural
r\maxima^\markup \typewriter { neomensural }
r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128
\bar ""
\override Staff.Rest.style = #'classical
r\maxima^\markup \typewriter { classical }
r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128
\bar ""
\override Staff.Rest.style = #'default
r\maxima^\markup \typewriter { default }
r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128
}
Vedi anche
Glossario musicale: breve, longa, maxima.
Guida alla notazione: Pause d’intero.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Rest.
Problemi noti e avvertimenti
Non c’è un limite massimo o minimo alle durate di una pausa, è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve).
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Pause ] | [ Su : Scrittura delle pause ] | [ Pause d'intero > ] | ||
Pause invisibili
Una pausa invisibile (chiamata anche ‘pausa spaziatrice’) si inserisce come
come una nota col nome s:
c4 c s c s2 c
Le pause spaziatrici possono essere utilizzate soltanto nella modalità note e
nella modalità accordi. In altre situazioni, ad esempio quando si inserisce
il testo vocale, si usa il comando \skip per saltare un momento musicale.
\skip richiede una durata esplicita, ma questo requisito viene ignorato
se il testo deriva le propriet durate dalle note presenti in una melodia ad esso
associata attraverso \addlyrics o \lyricsto.
<<
{
a2 \skip2 a2 a2
}
\new Lyrics {
\lyricmode {
foo2 \skip 1 bla2
}
}
>>
Dato che \skip è un comando, non modifica la durata predefinita delle
note che seguono, diversamente da s.
<<
{
\repeat unfold 8 { a4 }
}
{
a4 \skip 2 a |
s2 a
}
>>
Una pausa spaziatrice crea implicitamente i contesti Staff e Voice
se non esistono già, proprio come accade per le note e le pause:
s1 s s
\skip si limita a saltare un momento musicale, non crea nessun tipo di
output.
% Questo input è corretto, ma non produce niente \skip 1 \skip1 \skip 1
Vedi anche
Manuale di apprendimento: Visibility and color of objects.
Guida alla notazione: Hidden notes, Visibility of objects.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: SkipMusic.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Pause invisibili ] | [ Su : Scrittura delle pause ] | [ Aspetto dei ritmi > ] | ||
Pause d’intero
Le pause per una o più misure intere si inseriscono come le note col
nome di nota maiuscolo R:
% Le misure di ciascuna pausa vengono contratte in una sola misura \compressFullBarRests R1*4 R1*24 R1*4 b2^"Tutti" b4 a4
La durata delle pause multiple è identica alla notazione di durata usata per le note e deve essere sempre un numero intero di misure/lunghezze, quindi occorre spesso usare dei punti di aumentazione o delle frazioni:
\compressFullBarRests \time 2/4 R1 | R2 | \time 3/4 R2. | R2.*2 | \time 13/8 R1*13/8 | R1*13/8*12 | \time 10/8 R4*5*4 |
Una pausa d’intero appare al centro della misura come una pausa di semibreve o una pausa di breve, a seconda del segno di tempo.
\time 4/4 R1 | \time 6/4 R1*3/2 | \time 8/4 R1*2 |
Di norma una pausa multipla viene espansa nel pentagramma in modo da mostrare esplicitamente tutte le misure in cui quella pausa appare. Altrimenti è possibile mostrare una pausa multipla come una singola misura che contiene un simbolo di pausa multipla, col numero di misure in cui la pausa si ripete indicato sopra la misura:
% Default behavior \time 3/4 r2. | R2.*2 | \time 2/4 R2 | \time 4/4 % Le misure di ciascuna pausa multipla vengono contratte in una singola misura \compressFullBarRests r1 | R1*17 | R1*4 | % Le misure della pausa multipla vengono espanse \expandFullBarRests \time 3/4 R2.*2 |
Si possono aggiungere delle annotazioni alle pause multiple. Il comando
predefinito \fermataMarkup permette di aggiungere il segno di corona.
\compressFullBarRests
\time 3/4
R2.*10^\markup { \italic "ad lib." }
R2.^\fermataMarkup
Nota: Il testo connesso a una pausa multipla è un oggetto di tipo
MultiMeasureRestText, non TextScript. Le sovrascritture
devono specificare l’oggetto corretto o saranno ignorate. Si veda
l’esempio seguente:
% Questo non funziona, perché è specificato il nome dell'oggetto sbagliato \override TextScript.padding = #5 R1^"wrong" % Questo è il nome dell'oggetto corretto da specificare \override MultiMeasureRestText.padding = #5 R1^"right"
Quando una pausa multipla segue immediatamente un comando \partial, potrebbero
non apparire i relativi avvertimenti del controllo battuta.
Comandi predefiniti
\textLengthOn,
\textLengthOff,
\fermataMarkup,
\compressFullBarRests,
\expandFullBarRests.
Frammenti di codice selezionati
Modificare la forma delle pause multiple
Se la pausa multipla dura dieci misure o un numero inferiore a dieci, nel rigo
apparirà una serie di pause di longa e di breve (chiamate in tedesco “Kirchenpausen”
- pause ecclesiastiche); altrimenti apparirà una semplice linea. Il numero
predefinito di dieci può essere cambiato sovrascrivendo la proprietà
expand-limit..
\relative c'' {
\compressFullBarRests
R1*2 | R1*5 | R1*9
\override MultiMeasureRest.expand-limit = #3
R1*2 | R1*5 | R1*9
}
Posizionamento delle pause multiple
Diversamente dalle pause normali, non esiste un comando predefinito per cambiare la posizione sul rigo di un simbolo di pausa multipla di qualsiasi tipo connettendolo a una nota. Tuttavia, nella musica polifonica le pause multiple nelle voci dispari e pari sono separate verticalmente. Il posizionamento delle pause multiple si controlla nel modo seguente:
\relative c'' {
% Multi-measure rests by default are set under the fourth line
R1
% They can be moved using an override
\override MultiMeasureRest.staff-position = #-2
R1
\override MultiMeasureRest.staff-position = #0
R1
\override MultiMeasureRest.staff-position = #2
R1
\override MultiMeasureRest.staff-position = #3
R1
\override MultiMeasureRest.staff-position = #6
R1
\revert MultiMeasureRest.staff-position
\break
% In two Voices, odd-numbered voices are under the top line
<< { R1 } \\ { a1 } >>
% Even-numbered voices are under the bottom line
<< { a1 } \\ { R1 } >>
% Multi-measure rests in both voices remain separate
<< { R1 } \\ { R1 } >>
% Separating multi-measure rests in more than two voices
% requires an override
<< { R1 } \\ { R1 } \\
\once \override MultiMeasureRest.staff-position = #0
{ R1 }
>>
% Using compressed bars in multiple voices requires another override
% in all voices to avoid multiple instances being printed
\compressFullBarRests
<<
\revert MultiMeasureRest.staff-position
{ R1*3 }
\\
\revert MultiMeasureRest.staff-position
{ R1*3 }
>>
}
Testo a margine delle pause multiple
Il testo a margine di una pausa multipla viene centrato sopra o sotto di essa. Se il testo è lungo, la misura non si espanderà. Per espandere la pausa multipla in modo che si allinei col testo, conviene usare un accordo vuoto con del testo attaccato prima della pausa multipla.
Il testo così attaccato a una nota spaziatrice viene allineato a sinistra della posizione in cui la nota sarebbe posta nella misura, ma se la lunghezza della misura è determinata dalla lunghezza del testo, il testo verrà centrato.
\relative c' {
\compressFullBarRests
\textLengthOn
<>^\markup { [MAJOR GENERAL] }
R1*19
<>_\markup { \italic { Cue: ... it is yours } }
<>^\markup { A }
R1*30^\markup { [MABEL] }
\textLengthOff
c4^\markup { CHORUS } d f c
}
Vedi anche
Glossario musicale: pausa multipla.
Guida alla notazione: Durata, Text, Formatting text, Text scripts.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: MultiMeasureRest, MultiMeasureRestNumber, MultiMeasureRestText.
Problemi noti e avvertimenti
Se una diteggiatura viene attaccata a una pausa multipla (ad esempio
R1*10-4), il numero della diteggiatura può collidere col numero
del contatore delle battute.
Non è possibile condensare automaticamente molteplici pause normali in in una singola pausa multipla.
Le pause multiple non prendono parte alle collisioni di pausa.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Pause d'intero ] | [ Su : Ritmi ] | [ Indicazione di tempo > ] | ||
1.2.3 Aspetto dei ritmi
| Indicazione di tempo | ||
| Indicazioni metronomiche | ||
| Anacrusi | ||
| Musica in tempo libero | ||
| Notazione polimetrica | ||
| Divisione automatica delle note | ||
| Mostrare i ritmi della melodia |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Aspetto dei ritmi ] | [ Su : Aspetto dei ritmi ] | [ Indicazioni metronomiche > ] | ||
Indicazione di tempo
L’indicazione di tempo si imposta così:
\time 2/4 c2 \time 3/4 c2.
Le indicazioni di tempo appaiono all’inizio di un brano e ogni volta che l’indicazione cambia. Se il cambio ha luogo alla fine di un rigo, appare un’indicazione di tempo di avvertimento. Si può modificare questo comportamento predefinito, come è spiegato in Visibility of objects.
\time 2/4 c2 c \break c c \break \time 4/4 c c c c
Il simbolo di indicazione di tempo usato nei tempi 2/2 e 4/4 può essere sostituito da un numero:
% Stile predefinito \time 4/4 c1 \time 2/2 c1 % Passaggio allo stile numerico \numericTimeSignature \time 4/4 c1 \time 2/2 c1 % Ritorno allo stile predefinito \defaultTimeSignature \time 4/4 c1 \time 2/2 c1
Le indicazioni di tempo mensurali sono trattate in Mensural time signatures.
Oltre a impostare l’indicazione di tempo che appare nel pentagramma, il comando
\time imposta anche i valori delle proprietà basate sull’indicazione di
tempo, ovvero baseMoment, beatStructure e beamExceptions.
I valori predefiniti di queste proprietà si trovano in
‘scm/time-signature-settings.scm’.
Si può sovrascrivere il valore predefinito di beatStructure nel comando
\time stesso specificandolo come primo argomento opzionale:
\score {
\new Staff {
\relative c' {
\time #'(2 2 3) 7/8
\repeat unfold 7 { c8 } |
\time #'(3 2 2) 7/8
\repeat unfold 7 { c8 } |
}
}
}
Oppure si possono impostare tutti i valori predefiniti di queste variabili legate
all’indicazione di tempo, incluse baseMoment e beamExceptions.
I valori possono essere impostati in modo indipendente per diverse indicazioni
di tempo. I nuovi valori hanno effetto appena viene eseguito un nuovo
comando \time che abbia lo stesso valore dell’indicazione di tempo
specificata nelle nuove impostazioni:
\score {
\new Staff {
\relative c' {
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(3 1) % beatStructure
#'() % beamExceptions
\time 4/4
\repeat unfold 8 { c8 } |
}
}
}
\overrideTimeSignatureSettings prende quattro argomenti:
-
timeSignatureFraction, una frazione che indica l’indicazione di tempo a cui questi valori si riferiscono. -
baseMomentFraction, una frazione che contiene il numeratore e il denominatore dell’unità di tempo. -
beatStructure, una lista Scheme che indica la struttura dei battiti nella misura, nell’unità dibaseMomentFraction. -
beamExceptions, una lista di associazione (alist) che contiene regole di disposizione delle travature che vanno oltre la fine ad ogni battito, come descritto in Impostare il comportamento della travatura automatica.
Il contesto che contiene \overrideTimeSignatureSettings deve essere
istanziato prima dell’esecuzione di \overrideTimeSignatureSettings.
Ciò significa che deve essere istanziato esplicitamente oppure ci deve essere
della musica nel contesto prima che venga chiamato \overrideTimeSignatureSettings:
\score {
\relative c' {
% Questa chiamata non funzionerà perché il contesto non è ancora istanziato
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(3 1) % beatStructure
#'() % beamExceptions
\time 4/4
c8^\markup {"Beamed (2 2)"}
\repeat unfold 7 { c8 } |
% Questa chiamata funzionerà
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(3 1) % beatStructure
#'() % beamExceptions
\time 4/4
c8^\markup {"Beamed (3 1)"}
\repeat unfold 7 { c8 } |
}
}
I valori modificati delle proprietà predefinite dell’indicazione di tempo possono essere ripristinati ai valori originali:
\score{
\relative c' {
\repeat unfold 8 { c8 } |
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(3 1) % beatStructure
#'() % beamExceptions
\time 4/4
\repeat unfold 8 { c8 } |
\revertTimeSignatureSettings 4/4
\time 4/4
\repeat unfold 8 { c8 } |
}
}
Si possono stabilire valori diversi delle proprietà predefinite dell’indicazione
di tempo per righi diversi spostando Timing_translator e
Default_bar_line_engraver dal contesto Score al contesto
Staff.
\score {
\new StaffGroup <<
\new Staff {
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(3 1) % beatStructure
#'() % beamExceptions
\time 4/4
\repeat unfold 8 {c''8}
}
\new Staff {
\overrideTimeSignatureSettings
4/4 % timeSignatureFraction
1/4 % baseMomentFraction
#'(1 3) % beatStructure
#'() % beamExceptions
\time 4/4
\repeat unfold 8 {c''8}
}
>>
\layout {
\context {
\Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
}
\context {
\Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
}
}
}
Un ulteriore metodo per modificare queste variabili relative all’indicazione di tempo, che evita di mostrare di nuovo l’indicazione di tempo al momento del cambio, è mostrato in Impostare il comportamento della travatura automatica.
Comandi predefiniti
\numericTimeSignature,
\defaultTimeSignature.
Frammenti di codice selezionati
Indicazione di tempo che mostra solo il numeratore (invece della frazione)
Talvolta un’indicazione di tempo non deve mostrare la frazione intera (ad esempio
7/4), ma solo il numeratore (7 in questo caso). Si può fare facilmente con
\override Staff.TimeSignature.style = #'single-digit,
che cambia lo stile in modo permanente. Con \revert
Staff.TimeSignature.style, questa impostazione può essere annullata. Per
applicare lo stile a cifra singola (single-digit) a una sola indicazione
di tempo, si usa il comando \override preceduto da \once.
\relative c'' {
\time 3/4
c4 c c
% Change the style permanently
\override Staff.TimeSignature.style = #'single-digit
\time 2/4
c4 c
\time 3/4
c4 c c
% Revert to default style:
\revert Staff.TimeSignature.style
\time 2/4
c4 c
% single-digit style only for the next time signature
\once \override Staff.TimeSignature.style = #'single-digit
\time 5/4
c4 c c c c
\time 2/4
c4 c
}
Vedi anche
Glossario musicale: indicazione di tempo
Guida alla notazione: Mensural time signatures, Impostare il comportamento della travatura automatica, Gestione del tempo.
File installati: ‘scm/time-signature-settings.scm’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: TimeSignature, Timing_translator.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Indicazione di tempo ] | [ Su : Aspetto dei ritmi ] | [ Anacrusi > ] | ||
Indicazioni metronomiche
Un’indicazione metronomica è semplice da scrivere:
\tempo 4 = 120 c2 d e4. d8 c2
Le indicazioni metronomiche si possono rappresentare anche come una gamma di due numeri:
\tempo 4 = 40 ~ 46 c4. e8 a4 g b,2 d4 r
Al loro posto si possono usare delle indicazioni di tempo testuali:
\tempo "Allegretto" c4 e d c b4. a16 b c4 r4
Un’indicazione metronomica, se combinata con del testo, viene messa automaticamente tra parentesi:
\tempo "Allegro" 4 = 160 g4 c d e d4 b g2
In generale, il testo può essere qualsiasi oggetto di tipo testuale:
\tempo \markup { \italic Faster } 4 = 132
a8-. r8 b-. r gis-. r a-. r
Si può scrivere un’indicazione metronomica tra parentesi e senza testo se si include una stringa vuota nell’input:
\tempo "" 8 = 96 d4 g e c
Frammenti di codice selezionati
Posizionare il metronomo e i numeri di chiamata sotto il rigo
Di norma, il metronomo e i numeri di chiamata vengono posizionati sopra il
rigo. Per metterli sotto il rigo basta impostare correttamente la proprietà
direction di MetronomeMark o RehearsalMark.
\layout { ragged-right = ##f }
{
% Metronome marks below the staff
\override Score.MetronomeMark.direction = #DOWN
\tempo 8. = 120
c''1
% Rehearsal marks below the staff
\override Score.RehearsalMark.direction = #DOWN
\mark \default
c''1
}
Modificare il tempo senza mostrare l’indicazione metronomica
Per cambiare il tempo del file MIDI senza che l’indicazione metronomica appaia, basta renderla invisibile.
\score {
\new Staff \relative c' {
\tempo 4 = 160
c4 e g b
c4 b d c
\set Score.tempoHideNote = ##t
\tempo 4 = 96
d,4 fis a cis
d4 cis e d
}
\layout { }
\midi { }
}
Creare indicazioni metronomiche in modalità testuale
Si possono creare nuove indicazioni metronomiche in modalità testuale, ma non modificheranno il tempo del file MIDI.
\relative c' {
\tempo \markup {
\concat {
(
\smaller \general-align #Y #DOWN \note #"16." #1
" = "
\smaller \general-align #Y #DOWN \note #"8" #1
)
}
}
c1
c4 c' c,2
}
I dettagli si trovano in Formatting text.
Vedi anche
Glossario musicale: metronomo, indicazione di tempo, indicazione metronomica.
Guida alla notazione: Formatting text, MIDI output.
Frammenti di codice: Staff notation.
Guida al funzionamento interno: MetronomeMark.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Indicazioni metronomiche ] | [ Su : Aspetto dei ritmi ] | [ Musica in tempo libero > ] | ||
Anacrusi
Le misure parziali, come un anacrusi o una battuta
in levare, si inseriscono col comando \partial,
\partial durata
dove durata è la lunghezza rimanente della misura
parziale prima dell’inizio della nuova misura completa.
\time 3/4 \partial 8 e8 | a4 c8 b c4 |
La durata può avere qualsiasi valore inferiore a quello di una misura intera:
\time 3/4 \partial 4. r4 e8 | a4 c8 b c4 |
L’espressione \partial durata si può scrivere anche così:
\set Timing.measurePosition -durata
Quindi \partial 8 diventa:
\time 3/4 \set Timing.measurePosition = #(ly:make-moment -1/8) e8 | a4 c8 b c4 |
La proprietà measurePosition contiene un numero razionale che
indica how much of the measure has passed at this point. Si noti che
è impostato come numero negativo dal comando \partial:
ovvero, \partial 4 viene tradotto internamente in -4,
che significa “manca una nota di un quarto alla fine della misura.”
Vedi anche
Glossario musicale: anacrusi.
Guida alla notazione: Abbellimenti.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Timing_translator.
Problemi noti e avvertimenti
Il comando \partial deve essere usato solo all’inizio di un
brano. Se si usa dopo l’inizio, il programma potrebbe emettere degli
avvisi o si potrebbero verificare problemi, dunque si consiglia di
usare \set Timing.measurePosition al suo posto.
\time 6/8 \partial 8 e8 | a4 c8 b[ c b] | \set Timing.measurePosition = #(ly:make-moment -1/4) r8 e,8 | a4 c8 b[ c b] |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Anacrusi ] | [ Su : Aspetto dei ritmi ] | [ Notazione polimetrica > ] | ||
Musica in tempo libero
Nella musica in tempo determinato le stanghette vengono inserite e i numeri di
battuta sono calcolati automaticamente. Nella musica in tempo libero (ad esempio,
la cadenza), questo comportamento non è desiderabile e può essere
‘disabilitato’ col comando \cadenzaOn e poi ‘riabilitato’ al
momento giusto con \cadenzaOff.
c4 d e d \cadenzaOn c4 c d8[ d d] f4 g4. \cadenzaOff \bar "|" d4 e d c
La numerazione delle battute ricomincia alla fine della cadenza.
% Mostra tutti i numeri di battuta \override Score.BarNumber.break-visibility = #all-visible c4 d e d \cadenzaOn c4 c d8[ d d] f4 g4. \cadenzaOff \bar "|" d4 e d c
Di norma un’alterazione è valida fino alla fine della battuta. Se si inseriscono
uno o più comandi \bar all’interno di una cadenza, compaiono delle
stanghette ma non viene mai iniziata una nuova battuta. Per questo motivo
l’uso di \bar all’interno di una cadenza non termina l’alterazione; per
mostrare l’alterazione si dovranno aggiungere a mano delle alterazioni di
sicurezza. Si veda Alterazioni.
c4 d e d \cadenzaOn cis4 d cis d \bar "|" % Il primo cis dopo la battuta non ha l'alterazione, bisogna usare un'alterazione di sicurezza cis4 d cis! d \cadenzaOff \bar "|"
La disposizione automatica delle travature viene disabilitata da
\cadenzaOn. Quindi tutte le travature nelle cadenze devono
essere inserite manualmente. Si veda Travature manuali.
\repeat unfold 8 { c8 }
\cadenzaOn
cis8 c c c c
\bar"|"
c8 c c
\cadenzaOff
\repeat unfold 8 { c8 }
Questi comandi predefiniti hanno effetto su tutti i righi di una partitura, anche
quando inseriti in un solo contesto Voice. Per modificare questo comportamento,
si sposta Timing_translator dal contesto Score al contesto
Staff. Si veda Notazione polimetrica.
Comandi predefiniti
\cadenzaOn,
\cadenzaOff.
Vedi anche
Glossario musicale: cadenza.
Guida alla notazione: Visibility of objects, Notazione polimetrica, Travature manuali, Alterazioni.
Frammenti di codice: Rhythms.
Problemi noti e avvertimenti
Le interruzioni automatiche di linea e di pagina sono possibili solo dopo una stanghetta, quindi per consentire delle interruzioni nei lunghi passaggi di musica in tempo libero è necessario inserire manualmente delle stanghette ‘invisibili’:
\bar ""
Bisogna creare esplicitamente un contesto Voice quando si inizia un
brano con \cadenzaOn, altrimenti potrebbero verificarsi errori inattesi.
\new Voice {
\relative c' {
\cadenzaOn
c16[^"Solo Free Time" d e f] g2.
\bar "||"
\cadenzaOff
}
}
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Musica in tempo libero ] | [ Su : Aspetto dei ritmi ] | [ Divisione automatica delle note > ] | ||
Notazione polimetrica
La notazione polimetrica è supportata esplicitamente o tramite la modifica manuale del simbolo d’indicazione di tempo (e la trasformazione della durata delle note).
Diverse indicazioni di tempo con misure di uguale lunghezza
Si sceglie una normale indicazione di tempo per ogni rigo e si imposta
timeSignatureFraction sulla frazione desiderata. Quindi si usa
la funzione \scaleDurations per scalare la durata delle note di
ogni rigo in modo che rientrino nella comune indicazione di tempo.
Nell’esempio seguente viene messa in parallelo della musica con indicazioni di tempo di 3/4, 9/8 e 10/8. Nel secondo rigo le durate appaiono come moltiplicate per 2/3 (perché 2/3 * 9/8 = 3/4), mentre nel terzo rigo le durate appaiono come moltiplicate per 3/5 (perché 3/5 * 10/8 = 3/4). È possibile che si debbano inserire a mano le travature, perché la scalatura delle durate influenzerà le regole della disposizione automatica delle travature.
\relative c' <<
\new Staff {
\time 3/4
c4 c c |
c4 c c |
}
\new Staff {
\time 3/4
\set Staff.timeSignatureFraction = 9/8
\scaleDurations 2/3
\repeat unfold 6 { c8[ c c] }
}
\new Staff {
\time 3/4
\set Staff.timeSignatureFraction = 10/8
\scaleDurations 3/5 {
\repeat unfold 2 { c8[ c c] }
\repeat unfold 2 { c8[ c] } |
c4. c \tuplet 3/2 { c8[ c c] } c4
}
}
>>
Diverse indicazioni di tempo con misure di lunghezza non uguale
Si può dare a ogni rigo la sua indicazione di tempo indipendente spostando
Timing_translator e Default_bar_line_engraver nel contesto
Staff.
\layout {
\context {
\Score
\remove "Timing_translator"
\remove "Default_bar_line_engraver"
}
\context {
\Staff
\consists "Timing_translator"
\consists "Default_bar_line_engraver"
}
}
% Ora ogni rigo ha la sua indicazione di tempo.
\relative c' <<
\new Staff {
\time 3/4
c4 c c |
c4 c c |
}
\new Staff {
\time 2/4
c4 c |
c4 c |
c4 c |
}
\new Staff {
\time 3/8
c4. |
c8 c c |
c4. |
c8 c c |
}
>>
Indicazioni di tempo composto
Si creano con la funzione \compoundMeter. La sintassi è:
\compoundMeter #'(lista di liste)
La struttura più semplice è una singola lista, dove l’ultimo numero indica il numero inferiore dell’indicazione di tempo e i numeri precedenti indicano i numeri superiori del segno di tempo.
\relative c' {
\compoundMeter #'((2 2 2 8))
\repeat unfold 6 c8 \repeat unfold 12 c16
}
Si possono costruire tempi più complessi tramite ulteriori liste. Le impostazioni della disposizione automatica delle travature varieranno a seconda di questi valori.
\relative c' {
\compoundMeter #'((1 4) (3 8))
\repeat unfold 5 c8 \repeat unfold 10 c16
}
\relative c' {
\compoundMeter #'((1 2 3 8) (3 4))
\repeat unfold 12 c8
}
Vedi anche
Glossario musicale: polimetrico, indicazione di tempo polimetrico, tempo.
Guida alla notazione: Travature automatiche, Travature manuali, Indicazione di tempo, Scalare le durate.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: TimeSignature, Timing_translator, Default_bar_line_engraver, Staff.
Problemi noti e avvertimenti
Quando si usano indicazioni di tempo diverse in parallelo, le note che si trovano nello stesso momento saranno poste nella stessa posizione sull’asse orizzontale. Tuttavia le stanghette dei vari righi faranno sì che la spaziatura delle note sia meno regolare in ciascun rigo di quanto accadrebbe normalmente senza le diverse indicazioni di tempo.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Notazione polimetrica ] | [ Su : Aspetto dei ritmi ] | [ Mostrare i ritmi della melodia > ] | ||
Divisione automatica delle note
Le note lunghe che oltrepassano le stanghette possono essere convertite
automaticamente in note con legature di valore sostituendo l’incisore Note_heads_engraver
con Completion_heads_engraver. Analogalmente, le pause lunghe
che oltrepassano le stanghette possono essere divise automaticamente
sostituendo Rest_engraver con Completion_rest_engraver. Nell’esempio
seguente, le note e le pause che attraversano le stanghette vengono divise e
le note sono anche connesse con legature di valore.
\new Voice \with {
\remove "Note_heads_engraver"
\consists "Completion_heads_engraver"
\remove "Rest_engraver"
\consists "Completion_rest_engraver"
}
{ c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 r1*2 }
Questi incisori dividono tutte le note e le pause nel punto in cui si trova la stanghetta e inseriscono le legature di valore. Uno dei suoi usi possibili è la verifica di partiture complesse: se le misure non sono riempite interamente, le legature di valore mostrano esattamente di quanto è spostata ogni misura.
Vedi anche
Glossario musicale: legatura di valore
Manuale di apprendimento: Engravers explained, Adding and removing engravers.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Note_heads_engraver, Completion_heads_engraver, Rest_engraver, Completion_rest_engraver, Forbid_line_break_engraver.
Problemi noti e avvertimenti
Non tutte le durate (specialmente quelle che contengono gruppi irregolari) possono
essere rappresentate esattamente con normali note e punti, ma l’incisore
Completion_heads_engraver non inserirà gruppi irregolari.
L’incisore Completion_heads_engraver ha effetto solo sulle note, non
divide le pause.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Divisione automatica delle note ] | [ Su : Aspetto dei ritmi ] | [ Travature > ] | ||
Mostrare i ritmi della melodia
È possibile mostrare soltanto il ritmo di una melodia usando il rigo ritmico. Tutte le altezze delle note su tale rigo sono schiacciate e il rigo stesso ha una sola linea
<<
\new RhythmicStaff {
\new Voice = "myRhythm" {
\time 4/4
c4 e8 f g2
r4 g g f
g1
}
}
\new Lyrics {
\lyricsto "myRhythm" {
This is my song
I like to sing
}
}
>>
I diagrammi degli accordi per chitarra di solito mostrano i ritmi di
accompagnamento. Si possono visualizzare usando l’incisore
Pitch_squash_engraver e il comando \improvisationOn.
<<
\new ChordNames {
\chordmode {
c1 f g c
}
}
\new Voice \with {
\consists "Pitch_squash_engraver"
} \relative c'' {
\improvisationOn
c4 c8 c c4 c8 c
f4 f8 f f4 f8 f
g4 g8 g g4 g8 g
c4 c8 c c4 c8 c
}
>>
Comandi predefiniti
\improvisationOn,
\improvisationOff.
Frammenti di codice selezionati
Ritmi di accompagnamento per chitarra
Per la musica per chitarra, è possibile mostrare i ritmi di accompagnamento, insieme alle note della melodia e ai nomi e ai diagrammi degli accordi.
\include "predefined-guitar-fretboards.ly"
<<
\new ChordNames {
\chordmode {
c1 | f | g | c
}
}
\new FretBoards {
\chordmode {
c1 | f | g | c
}
}
\new Voice \with {
\consists "Pitch_squash_engraver"
} {
\relative c'' {
\improvisationOn
c4 c8 c c4 c8 c
f4 f8 f f4 f8 f
g4 g8 g g4 g8 g
c4 c8 c c4 c8 c
}
}
\new Voice = "melody" {
\relative c'' {
c2 e4 e4
f2. r4
g2. a4
e4 c2.
}
}
\new Lyrics {
\lyricsto "melody" {
This is my song.
I like to sing.
}
}
>>
Vedi anche
Frammenti di codice: Rhythms.
Guida al funzionamento interno: RhythmicStaff, Pitch_squash_engraver.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Mostrare i ritmi della melodia ] | [ Su : Ritmi ] | [ Travature automatiche > ] | ||
1.2.4 Travature
| Travature automatiche | ||
| Impostare il comportamento della travatura automatica | ||
| Travature manuali | ||
| Travature convergenti/divergenti |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Travature ] | [ Su : Travature ] | [ Impostare il comportamento della travatura automatica > ] | ||
Travature automatiche
Le travature sono inserite automaticamente:
\time 2/4 c8 c c c \time 6/8 c8 c c c8. c16 c8
Se queste decisioni automatiche non sono soddisfacenti, si può definire esplicitamente la disposizione delle travature, come è spiegato in Travature manuali. Le travature devono essere inserite manualmente se devono estendersi oltre le pause.
La disposizione automatica delle travature, se non necessaria, può essere
disabilitata con \autoBeamOff e riabilitata con \autoBeamOn:
c4 c8 c8. c16 c8. c16 c8 \autoBeamOff c4 c8 c8. c16 c8. \autoBeamOn c16 c8
Nota: Se si usano le travature per indicare i melismi nelle canzoni, occorre
disabilitare la disposizione automatica delle travature con \autoBeamOff
e le travature devono essere indicate manualmente. L’uso di \partcombine
insieme a \autoBeamOff può produrre risultati inattesi. Si vedano i
frammenti di codice per avere maggiori informazioni.
Si possono creare dei modelli di disposizione delle travature diversi da quelli automatici predefiniti, come è spiegato in Impostare il comportamento della travatura automatica.
Comandi predefiniti
\autoBeamOff,
\autoBeamOn.
Frammenti di codice selezionati
Travature che attraversano le interruzioni di linea
Le interruzioni di linea sono di norma proibite quando le travature attraversano la stanghetta di una battuta. Si può cambiare questo comportamento nel modo seguente:
\relative c'' {
\override Beam.breakable = ##t
c8 c[ c] c[ c] c[ c] c[ \break
c8] c[ c] c[ c] c[ c] c
}
Modificare la distanza delle travature angolari
Le travature angolari vengono inserite automaticamente quando viene
rilevata un’ampia distanza tra le teste di nota. Questo comportamento
può essere regolato attraverso la proprietà auto-knee-gap. Viene
disegnata una travatura angolare se la distanza è più grande del valore
di auto-knee-gap più la larghezza della travatura (che dipende dalla
durata delle note e dall’inclinazione della travatura). Il valore predefinito
di auto-knee-gap è 5.5 spazi rigo.
{
f8 f''8 f8 f''8
\override Beam.auto-knee-gap = #6
f8 f''8 f8 f''8
}
Partcombine e autoBeamOff
La funzione \autoBeamOff, se usata insieme a
\partcombine, può essere difficile da comprendere.
È preferibile usare invece
\set Staff.autoBeaming = ##f
per assicurarsi che la disposizione delle travature sia disabilitata per tutto il rigo.
\partcombine funziona con 3 voci – gambo in su singolo,
gambo in giù singolo, gambo in su unito.
L’uso di \autoBeamOff all’interno del primo argomento di partcombine
ha effetto sulla voce che è attiva al momento in cui la funzione viene elaborata,
ovvero sul gambo in su singolo o sul gambo in giù unito. L’uso di \autoBeamOff
nel secondo argomento avrà effetto sulla voce che ha il gambo in giù singolo.
Per poter usare \autoBeamOff per impedire tutte le disposizioni automatiche
delle travature, se usato con \partcombine, è necessario richiamare
tre volte la funzione \autoBeamOff.
{
%\set Staff.autoBeaming = ##f % turns off all autobeaming
\partcombine
{
\autoBeamOff % applies to split up stems
\repeat unfold 4 a'16
%\autoBeamOff % applies to combined up stems
\repeat unfold 4 a'8
\repeat unfold 4 a'16
}
{
\autoBeamOff % applies to down stems
\repeat unfold 4 f'8
\repeat unfold 8 f'16 |
}
}
Vedi anche
Guida alla notazione: Travature manuali, Impostare il comportamento della travatura automatica.
File installati: ‘scm/auto-beam.scm’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Auto_beam_engraver, Beam_engraver, Beam, BeamEvent, BeamForbidEvent, beam-interface, unbreakable-spanner-interface.
Problemi noti e avvertimenti
Le proprietà di una travatura sono determinate all’inizio della sua costruzione e qualsiasi ulteriore modifica alle sue proprietà che venga fatta prima che la travatura sia stata completata non avrà effetto finché non inizia la successiva, nuova travatura.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Travature automatiche ] | [ Su : Travature ] | [ Travature manuali > ] | ||
Impostare il comportamento della travatura automatica
Quando la disposizione automatica delle travature è abilitata, la disposizione
delle travature è determinata da tre proprietà di contesto:
baseMoment, beatStructure e beamExceptions.
I valori predefiniti di queste variabili possono essere sovrascritti, come
vedremo tra breve, oppure si possono cambiare i valori predefiniti stessi,
come è spiegato in Indicazione di tempo.
Se è definita una regola beamExceptions per l’indicazione di
tempo corrente, è quella regola soltanto a determinare la
disposizione delle travature; i valori di baseMoment e
beatStructure vengono ignorati. Se non è definita
alcuna regola beamExceptions per l’indicazione di tempo
corrente, la disposizione delle travature è determinata dai
valori di baseMoment e beatStructure.
Disposizione delle travature basata su baseMoment e beatStructure
Dato che le indicazioni di tempo più comuni hanno delle regole beamExceptions
già definite, occorre disabilitarle se la disposizione automatica deve basarsi
su baseMoment e beatStructure. Le regole beamExceptions si
disabilitano con questo comando
\set Timing.beamExceptions = #'()
Quando beamExceptions è impostato su #'(), o per
impostazione esplicita o perché non sono state definite internamente
le beamExceptions per l’indicazione di tempo corrente, le
estremità delle travature si trovano sui battiti come specificato
dalle proprietà di contesto baseMoment e
beatStructure. beatStructure è una lista scheme
che definisce la lunghezza di ogni battito nella misura in unità
di baseMoment. Per impostazione predefinita, baseMoment
è uno fratto il denominatore dell’indicazione di tempo e ogni unità
di baseMoment corrisponde a un singolo battito.
\time 5/16 c16^"predefinito" c c c c | % È improbabile che per un tempo di 5/16 sia stata definita beamExceptions, % ma disabilitiamola lo stesso per sicurezza \set Timing.beamExceptions = #'() \set Timing.beatStructure = #'(2 3) c16^"(2+3)" c c c c | \set Timing.beatStructure = #'(3 2) c16^"(3+2)" c c c c |
\time 4/4 a8^"predefinito" a a a a a a a % Disabilita beamExceptions perché è senz'altro definita % per il tempo 4/4 \set Timing.beamExceptions = #'() \set Timing.baseMoment = #(ly:make-moment 1/4) \set Timing.beatStructure = #'(1 1 1 1) a8^"cambiato" a a a a a a a
Le modifiche alle impostazioni delle travature possono essere limitate a contesti specifici. Se non si specifica alcuna impostazione in un contesto di livello più basso, verrà applicata l’impostazione del contesto che lo contiene.
\new Staff {
\time 7/8
% Nessun bisogno di disabilitare beamExceptions perché non è definita per il tempo 7/8
\set Staff.beatStructure = #'(2 3 2)
<<
\new Voice = one {
\relative c'' {
a8 a a a a a a
}
}
\new Voice = two {
\relative c' {
\voiceTwo
\set Voice.beatStructure = #'(1 3 3)
f8 f f f f f f
}
}
>>
}
Quando si usano varie voci, occorre specificare il contesto Staff se
si vuole applicare la disposizione delle travature a tutte le voci del
rigo:
\time 7/8
% ritmo 3-1-1-2
% Se non si specifica il contesto, la modifica viene applicata a Voice e quindi non funziona correttamente
% Dato che le voci sono autogenerate, tutto il ritmo avrà come baseMoment (1 . 8)
\set beatStructure = #'(3 1 1 2)
<< {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>
% Funziona correttamente se si specifica il contesto Staff
\set Staff.beatStructure = #'(3 1 1 2)
<< {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>
Il valore di baseMoment può essere regolato in modo da
cambiare il comportamento delle travature, se si vuole. In questo caso
occorre cambiare anche il valore di beatStructure così che sia
compatibile col nuovo valore di baseMoment.
\time 5/8
% Nessun bisogno di disabilitare beamExceptions perché non è definita per il tempo 5/8
\set Timing.baseMoment = #(ly:make-moment 1/16)
\set Timing.beatStructure = #'(7 3)
\repeat unfold 10 { a16 }
baseMoment è un momento, ovvero un’unità della durata musicale. Una
quantità di tipo moment viene creata dalla funzione scheme
ly:make-moment. Per maggiori informazioni su questa funzione, si
veda Gestione del tempo.
Per impostazione predefinita, baseMoment ha un valore di uno fratto il
denominatore dell’indicazione di tempo. Le eccezioni a questa regola si
trovano in ‘scm/time-signature-settings.scm’.
Disposizione delle travature con beamExceptions
Le regole speciali di disposizione automatica delle travature (diverse da quelle
che determinano dove terminare una travatura su un battito) sono definite
nella proprietà beamExceptions.
\time 3/16
\set Timing.beatStructure = #'(2 1)
\set Timing.beamExceptions =
#'( ;inizio della lista di associazioni (alist)
(end . ;estremità delle travature
( ;inizio della lista che indica le estremità
((1 . 32) . (2 2 2)) ;regola per le travature da 1/32 -- termina ognuna a 1/16
))) %chiude tutti gli elementi
c16 c c |
\repeat unfold 6 { c32 } |
beamExceptions è una lista di associazioni (alist) che ha una
chiave che indica il tipo di regola e un valore che esprime le regole di
disposizione delle travature.
Al momento l’unico tipo di regola disponibile è 'end, che specifica
il termine della travatura.
Le regole di disposizione delle travature sono una lista di associazione scheme (o lista di coppie) che indica il tipo di travatura e la modalità di raggruppamento da applicare alle travature contenenti note dalla durata più breve del tipo di travatura a loro assegnato.
#'((travatura-1 . raggruppamento-1) (travatura-2 . raggruppamento-2) (travatura-3 . raggruppamento-3))
Il tipo di travatura è una coppia scheme che indica la durata della travatura,
ad esempio (1 . 16).
Il raggruppamento è una lista scheme che indica il raggruppamento da usare per la travatura; ha come unità la durata specificata nel tipo di travatura.
Nota: Il valore di beamExceptions deve essere una lista completa
di eccezioni, ovvero bisogna includere tutte le eccezioni che si vogliono
applicare. Non è possibile aggiungere, rimuovere o modificare soltanto
una eccezione. Anche se questo può sembrare scomodo, significa anche che
non c’è bisogno di conoscere le attuali impostazioni delle travature per
poter specificare un nuovo modello di disposizione delle travature.
Quando cambia l’indicazione di tempo, vengono impostati i valori predefiniti
di Timing.baseMoment, Timing.beatStructure e
Timing.beamExceptions. L’impostazione dell’indicazione di tempo
ripristina le impostazioni automatiche delle travature del contesto Timing
ai valori predefiniti.
\time 6/8
\repeat unfold 6 { a8 }
% raggruppamento (4 + 2)
\set Timing.beatStructure = #'(4 2)
\repeat unfold 6 { a8 }
% ritorno al comportamento predefinito
\time 6/8
\repeat unfold 6 { a8 }
Le impostazioni predefinite della disposizione automatica delle travature per ogni tempo sono definite in ‘scm/time-signature-settings.scm’. La loro modifica è descritta in Indicazione di tempo.
Molte impostazioni di travature automatiche per le indicazioni di tempo hanno
un elemento beamExceptions. Ad esempio, il tempo 4/4 cerca di creare
due travature nella misura se ci sono solo note di un ottavo. La regola
beamExceptions può sovrascrivere l’impostazione di beatStructure
se beamExceptions non viene annullato.
\time 4/4
\set Timing.baseMoment = #(ly:make-moment 1/8)
\set Timing.beatStructure = #'(3 3 2)
% Le travature non saranno raggruppate in (3 3 2) a causa di beamExceptions
\repeat unfold 8 {c8} |
% Il raggruppamento delle travature è (3 3 2) perché abbiamo tolto le impostazioni predefinite di beamExceptions
\set Timing.beamExceptions = #'()
\repeat unfold 8 {c8}
Analogalmente, le note di un ottavo in un tempo 3/4 sono raggruppate in
un’unica travatura. Per raggrupparle sul battito, azzera beamExceptions.
\time 3/4
% il comportamento predefinito è un gruppo di (6) a causa di beamExceptions
\repeat unfold 6 {a8} |
% Le travature saranno raggruppate in (1 1 1) a causa dei valori predefiniti di baseMoment e beatStructure
\set Timing.beamExceptions = #'()
\repeat unfold 6 {a8}
Nelle partiture del periodo Romantico fino a quello Classico, le travature
spesso iniziano a metà della misura in un tempo 3/4; ma la pratica moderna
preferisce evitare la falsa impressione di un tempo 6/8 (vedi Gould, p. 153).
Si presentano situazioni simili nel tempo 3/8. Questo comportamento è
controllato dalla proprietà di contesto beamHalfMeasure, che ha effetto
soltanto sulle indicazioni di tempo che hanno 3 come numeratore:
\time 3/4 r4. a8 a a | \set Timing.beamHalfMeasure = ##f r4. a8 a a |
Come funziona la disposizione automatica delle travature
Quando la disposizione automatica delle travature è abilitata, la disposizione
delle travature è determinata dalle proprietà di contesto
baseMoment, beatStructure e beamExceptions.
Nel determinare l’aspetto delle travature vengono applicate le seguenti regole, in ordine di priorità:
-
Se si specifica una travatura manuale con
[..]imposta la travatura in quel modo, altrimenti -
se è definita una regola di fine della travatura in
beamExceptionsper il tipo di travatura in questione, la usa per determinare i punti corretti in cui le travature possono terminare, altrimenti -
se è definita una regola di fine della travatura in
beamExceptionsper un tipo di travatura più lunga, la usa per determinare i punti corretti in cui le travature possono terminare, altrimenti -
usa i valori di
baseMomentebeatStructureper determinare le estremità dei battiti nella misura e terminare le travature alla fine dei battiti.
Nelle regole precedenti, il tipo di travatura è la durata della nota più corta nel gruppo della travatura.
Le regole predefinite per le travature si trovano in ‘scm/time-signature-settings.scm’.
Frammenti di codice selezionati
Suddividere le travature
Le travature di note consecutive di un sedicesimo (o più brevi) non
vengono suddivise, ovvero le tre (o più) travature si allungano, senza
spezzarsi, su interi gruppi di note. Questo comportamento può essere
modificato in modo da suddividere le travature in sottogruppi attraverso
la proprietà subdivideBeams.
Se impostata, le travature multiple verranno suddivise a intervalli
definiti dal valore attuale di baseMoment, riducendo le travature
multiple a una sola travatura che collega i sottogruppi. Si noti che
baseMoment, se non impostata esplicitamente, equivale a uno fratto
il denominatore dell’attuale indicazione di tempo. Deve quindi essere
impostata su una frazione che stabilisca la durata del sottogruppo di
travature; lo si può fare usando la funzione ly:make-moment, come
è mostrato in questo frammento di codice. Inoltre quando baseMoment
cambia, anche beatStructure deve essere modificato per accordarsi
con baseMoment:
\relative c'' {
c32[ c c c c c c c]
\set subdivideBeams = ##t
c32[ c c c c c c c]
% Set beam sub-group length to an eighth note
\set baseMoment = #(ly:make-moment 1/8)
\set beatStructure = #'(2 2 2 2)
c32[ c c c c c c c]
% Set beam sub-group length to a sixteenth note
\set baseMoment = #(ly:make-moment 1/16)
\set beatStructure = #'(4 4 4 4)
c32[ c c c c c c c]
}
Travatura che segue strettamente il battito
Si possono impostare le lineette della travatura in modo che siano rivolte verso il battito cui appartengono. La prima travatura fa sì che non spuntino le code (comportamento predefinito); la seconda travatura segue esattamente il battito.
\relative c'' {
\time 6/8
a8. a16 a a
\set strictBeatBeaming = ##t
a8. a16 a a
}
Segni per la conduzione, segni di raggruppamento della misura
Il raggruppamento dei battiti all’interno della misura è regolato dalla
proprietà di contesto beatStructure. I valori di beatStructure per
varie indicazioni di tempo vengono stabiliti in ‘scm/time-signature-settings.scm’. Questi
valori possono essere impostati o modificati con \set. Altrimenti, si
può usare \time per impostare sia l’indicazione di tempo che la struttura
dei battiti. Per farlo si specifica il raggruppamento interno dei battiti in
una misura in una lista di numeri (nella sintassi di Scheme) prima dell’indicazione
di tempo.
\time agisce nel contesto Timing, dunque non reimposterà i
i valori di beatStructure e baseMoment che sono impostati in
altri contesti di più basso livello, come Voice.
Se si include l’incisore Measure_grouping_engraver in uno dei
contesti che regolano l’aspetto, appariranno i segni di raggruppamento
della misura. Tali segni facilitano la lettura di musica moderna ritmicamente
complessa.
Nell’esempio la misura di 9/8 è raggruppata in due diversi schemi usando
due metodi differenti, mentre la misura di 5/8 è raggruppata in base alle
impostazioni predefinite in ‘scm/time-signature-settings.scm’:
\score {
\new Voice \relative c'' {
\time 9/8
g8 g d d g g a( bes g) |
\set Timing.beatStructure = #'(2 2 2 3)
g8 g d d g g a( bes g) |
\time #'(4 5) 9/8
g8 g d d g g a( bes g) |
\time 5/8
a4. g4 |
}
\layout {
\context {
\Staff
\consists "Measure_grouping_engraver"
}
}
}
Estremità delle travature nel contesto Score
Le regole relative alle estremità delle travature definite nel contesto Score
si applicano a tutti i righi, ma possono essere modificate anche ai livelli
Staff e Voice:
\relative c'' {
\time 5/4
% Set default beaming for all staves
\set Score.baseMoment = #(ly:make-moment 1/8)
\set Score.beatStructure = #'(3 4 3)
<<
\new Staff {
c8 c c c c c c c c c
}
\new Staff {
% Modify beaming for just this staff
\set Staff.beatStructure = #'(6 4)
c8 c c c c c c c c c
}
\new Staff {
% Inherit beaming from Score context
<<
{
\voiceOne
c8 c c c c c c c c c
}
% Modify beaming for this voice only
\new Voice {
\voiceTwo
\set Voice.beatStructure = #'(6 4)
a8 a a a a a a a a a
}
>>
}
>>
}
Vedi anche
Guida alla notazione: Indicazione di tempo.
File installati: ‘scm/time-signature-settings.scm’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Auto_beam_engraver, Beam, BeamForbidEvent, beam-interface.
Problemi noti e avvertimenti
Se una partitura finisce quando una travatura automatica non è stata terminata e
si sta ancora aspettando delle note, quest’ultima travatura non apparirà.
Lo stesso vale per le voci polifoniche, inserite con
<< … \\ … >>. Una voce polifonica non apparirà se termina
quando una travatura automatica è ancora in attesa di note.
Per aggirare questi problemi occorre impostare manualmente l’ultima travatura
della voce o della partitura.
Timing è un alias del contesto Score. Questo significa che
la modifica della disposizione delle travature in un rigo avrà effetto anche
sugli altri righi.
Quindi un’impostazione di tempo in un rigo successivo reimposterà la disposizione
personalizzata delle travature definita in un rigo precedente.
Per evitare questo problema si può impostare l’indicazione di tempo su
un solo rigo.
<<
\new Staff {
\time 3/4
\set Timing.baseMoment = #(ly:make-moment 1/8)
\set Timing.beatStructure = #'(1 5)
\repeat unfold 6 { a8 }
}
\new Staff {
\repeat unfold 6 { a8 }
}
>>
Si possono cambiare anche le impostazioni predefinite delle travature, in modo che sia usata sempre la disposizione delle travature desiderata. Le modifiche nelle impostazioni della travatura automatica per le indicazioni di tempo sono descritte in Indicazione di tempo.
<<
\new Staff {
\overrideTimeSignatureSettings
3/4 % timeSignatureFraction
1/8 % baseMomentFraction
#'(1 5) % beatStructure
#'() % beamExceptions
\time 3/4
\repeat unfold 6 { a8 }
}
\new Staff {
\time 3/4
\repeat unfold 6 { a8 }
}
>>
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Impostare il comportamento della travatura automatica ] | [ Su : Travature ] | [ Travature convergenti/divergenti > ] | ||
Travature manuali
In alcuni casi potrebbe essere necessario scavalcare l’algoritmo di
disposizione automatica delle travature. Ad esempio, questo algoritmo
non inserirà delle travature tra le pause o tra le stanghette; e nelle
partiture corali la disposizione delle travature segue spesso il tempo
del testo piuttosto che quello delle note. Tali travature possono essere
specificate manualmente contrassegnando i punti iniziali e finali con
[ e ].
r4 r8[ g' a r] r g[ | a] r
La direzione delle travature può essere impostata manualmente attraverso gli indicatori di direzione:
c8^[ d e] c,_[ d e f g]
Le note individuali possono essere contrassegnate con \noBeam per impedire
che vengano inserite in una travatura:
\time 2/4 c8 c\noBeam c c
Le travature degli abbellimenti e quelle delle note normali possono verificarsi simultaneamente. Gli abbellimenti privi di travatura non vengono inseriti nella travatura delle note normali.
c4 d8[
\grace { e32[ d c d] }
e8] e[ e
\grace { f16 }
e8 e]
Si può avere un controllo manuale delle travature ancora più preciso attraverso
le proprietà stemLeftBeamCount e stemRightBeamCount, che specificano
il numero di travature da creare a sinistra e a destra della nota successiva.
Se una di queste proprietà viene impostata, il suo valore verrà usato una volta
sola e poi viene cancellato. In questo esempio, l’ultima nota f ha una
sola travatura a sinistra, ovvero la travatura di una nota di un ottavo
dell’intero gruppo.
a8[ r16 f g a] a8[ r16 \set stemLeftBeamCount = #2 \set stemRightBeamCount = #1 f16 \set stemLeftBeamCount = #1 g16 a]
Comandi predefiniti
\noBeam.
Frammenti di codice selezionati
Code e punte delle travature
È possibile ottenere delle code su note sole e delle punte all’estremità
della travatura con una combinazione di stemLeftBeamCount,
stemRightBeamCount e una coppia di indicatori della travatura [].
Per ottenere delle code che siano rivolte a destra, si usano la coppia di indicatori
[] e si imposta stemLeftBeamCount a zero (vedi Example 1).
Per ottenere delle code che siano rivolte a sinistra, si imposta invece
stemRightBeamCount (Example 2).
Perché le punte alla fine di un gruppo di note unite da travatura siano rivolte
a destra, si imposta stemRightBeamCount su un valore positivo. Perché le
punte all’inizio di un gruppo di note unite da travatura siano rivolte a sinistra,
si imposta invece stemLeftBeamCount (Example 3).
Talvolta, ad esempio per una nota solitaria circondata da pause, ha senso
avere una coda che punti sia a destra che a sinistra. Lo si può fare con
una coppia di indicatori di travatura [] da soli (Example 4).
(Nota che \set stemLeftBeamCount è sempre equivalente a
\once \set. In altre parole, le impostazioni che definiscono
il conteggio delle travature non “permangono”, quindi la coppia di code
attaccate al c'16[] solitario nell’ultimo esempio non hanno nulla a
che fare con l’impostazione \set di due note prima.)
\score {
<<
% Example 1
\new RhythmicStaff {
\set stemLeftBeamCount = #0
c16[]
r8.
}
% Example 2
\new RhythmicStaff {
r8.
\set stemRightBeamCount = #0
c16[]
}
% Example 3
\new RhythmicStaff {
c16 c
\set stemRightBeamCount = #2
c16 r r
\set stemLeftBeamCount = #2
c16 c c
}
% Example 4
\new RhythmicStaff {
c16 c
\set stemRightBeamCount = #2
c16 r
c16[]
r16
\set stemLeftBeamCount = #2
c16 c
}
>>
}
Vedi anche
Guida alla notazione: Direction and placement, Abbellimenti.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Beam, BeamEvent, Beam_engraver, beam-interface, Stem_engraver.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Travature manuali ] | [ Su : Travature ] | [ Battute > ] | ||
Travature convergenti/divergenti
Le travature convergenti o divergenti servono a indicare che un
piccolo gruppo di note deve essere suonato a un tempo crescente
(o decrescente), senza cambiare il tempo complessivo del brano. L’estensione
della travatura convergente o divergente deve essere indicato a mano
con [ e ]; questo tipo di travatura si attiva specificando
la direzione della proprietà Beam di grow-direction.
Se la disposizione delle note e il suono del file MIDI devono riflettere
il ritardando o l’accelerando indicati dalla travatura
convergente/divergente, le note devono essere raggruppate in un’espressione
musicale delimitata da parentesi graffe e preceduta dal comando
featherDurations, che specifica il rapporto tra le durate
delle prime e delle ultime note del gruppo.
Le parentesi quadre indicano l’estensione della travatura, mentre quelle graffe indicano quali note devono avere una durata modificata. Di norma queste parentesi delimitano lo stesso gruppo di note, ma questo non è un requisito: i due comandi sono indipendenti.
Nell’esempio seguente le otto note da un sedicesimo occupano esattamente lo stesso tempo di una nota di due quarti, ma la prima nota dura la metà dell’ultima e le note intermedie si allungano gradualmente. Le prime quattro note da un trentaduesimo diventano gradualmente più veloci, mentre le ultime quattro hanno un tempo costante.
\override Beam.grow-direction = #LEFT
\featherDurations #(ly:make-moment 2/1)
{ c16[ c c c c c c c] }
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 2/3)
{ c32[ d e f] }
% ripristina le travature normali
\override Beam.grow-direction = #'()
{ g32[ a b c] }
La spaziatura rappresenta la durata effettiva delle note solo in modo approssimato, mentre il tempo nel file MIDI è esatto.
Comandi predefiniti
\featherDurations.
Vedi anche
Frammenti di codice: Rhythms.
Problemi noti e avvertimenti
Il comando \featherDurations funziona solamente con frammenti di
musica molto brevi e quando i numeri della frazione sono piccoli.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Travature convergenti/divergenti ] | [ Su : Ritmi ] | [ Stanghette > ] | ||
1.2.5 Battute
| Stanghette | ||
| Numeri di battuta | ||
| Controlli di battuta e del numero di battuta | ||
| Segni di chiamata |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Battute ] | [ Su : Battute ] | [ Numeri di battuta > ] | ||
Stanghette
Le stanghette delimitano le misure e sono usate anche per indicare le ripetizioni. Di norma le stanghette semplici sono inserite automaticamente in base all’indicazione di tempo.
Si possono inserire altri tipi di stanghette col comando \bar. Ad
esempio, di solito si usa una stanghetta doppia alla fine di un brano:
e4 d c2 \bar "|."
Se la nota finale in una misura non termina entro la stanghetta inserita automaticamente, non viene segnalato un errore: si presuppone che la nota continui nella misura successiva. Ma se ci sono tante misure simili in sequenza, la musica potrebbe apparire compressa oppure scorrere fuori dalla pagina. Questo accade perché le interruzioni di linea automatiche si verificano solo al termine di misure complete, ovvero quando tutte le note terminano prima dell’inizio di una misura.
Nota: Una durata sbagliata può impedire un’interruzione di linea, causando una linea di musica altamente compressa oppure a musica che prosegue fuori dalla pagina.
Le interruzioni di linea sono permesse anche in caso si stanghette inserite a mano anche all’interno di misure incomplete. Per permettere un’interruzione di linea senza che appaia una stanghetta si usa:
\bar ""
Questo comando inserirà una stanghetta invisibile e permetterà (senza forzarla) un’interruzione di linea in questo punto. Il contatore dei numeri di battuta non aumenta. Per forzare un’interruzione di linea si veda Line breaking.
Si possono inserire questa e altre stanghette speciali in qualsiasi punto. Quando coincidono con la fine di una misura, sostituiscono la stanghetta semplice che sarebbe stata inserita lì automaticamente. Quando non coincidono con la fine di una misura, la stanghetta specificata viene inserita in quel punto.
Si noti che le stanghette manuali hanno una funzione puramente visiva. Non hanno alcun effetto sulle proprietà di una normale stanghetta, come i numeri della misura, le alterazioni, le interruzioni di linea, etc. Non influiscono nemmeno sul conteggio e sulla posizione delle stanghette automatiche successive. Quando una stanghetta manuale è posta nel punto in cui si trova già una normale stanghetta, le caratteristiche della stanghetta originale non sono alterate.
Sono disponibili per l’inserimento manuale due tipi di stanghette semplici e cinque tipi di stanghette doppie:
f1 \bar "|" f1 \bar "." g1 \bar "||" a1 \bar ".|" b1 \bar ".." c1 \bar "|.|" d1 \bar "|." e1
oltre alle stanghette puntate e tratteggiate:
f1 \bar ";" g1 \bar "!" a1
e a nove tipi di stanghette per le ripetizioni:
f1 \bar ".|:" g1 \bar ":..:" a1 \bar ":|.|:" b1 \bar ":|.:" c1 \bar ":.|.:" d1 \bar "[|:" e1 \bar ":|][|:" f1 \bar ":|]" g1 \bar ":|." a1
Inoltre, una stanghetta può apparire come un semplice segno di spunta:
f1 \bar "'"
Tuttavia,dato che questi segni di spunta sono tipicamente usati nel canto
gregoriano, è preferibile usare \divisioMinima, come è descritto
nella sezione Divisiones della parte dedicata al canto gregoriano.
Lilypond supporta la notazione russa e fornisce una stanghetta speciale per questo tipo di notazione:
f1 \bar "k"
I dettagli di questo tipo di notazione sono spiegati in Typesetting Kievan square notation.
Per i segni di tipo segno interni al rigo, ci sono tre tipi di stanghette che differiscono nel comportamento quando incontrano un’interruzione di linea:
c4 c c c \bar "S" c4 c c c \break \bar "S" c4 c c c \bar "S-|" c4 c c c \break \bar "S-|" c4 c c c \bar "S-S" c4 c c c \break \bar "S-S" c1
Sebbene le stanghette che indicano le ripetizioni possano essere inserite a mano, non fanno sì che LilyPond riconosca la musica come una sezione da ripetere. Tali sezioni devono essere inserite con i vari comandi di ripetizione (vedi Repeats), che creano automaticamente le stanghette appropriate.
Inoltre si può specificare ".|:-||", che è equivalente a
".|:" tranne in presenza di un’interruzione di linea, dove
crea una doppia stanghetta alla fine della linea e una stanghetta
di inizio ripetizione all’inizio della linea successiva.
c4 c c c \bar ".|:-||" c4 c c c \break \bar ".|:-||" c4 c c c
Per combinare le ripetizioni con i segni di tipo segno, ci sono sei diverse varianti:
c4 c c c \bar ":|.S" c4 c c c \break \bar ":|.S" c4 c c c \bar ":|.S-S" c4 c c c \break \bar ":|.S-S" c4 c c c \bar "S.|:-S" c4 c c c \break \bar "S.|:-S" c4 c c c \bar "S.|:" c4 c c c \break \bar "S.|:" c4 c c c \bar ":|.S.|:" c4 c c c \break \bar ":|.S.|:" c4 c c c \bar ":|.S.|:-S" c4 c c c \break \bar ":|.S.|:-S" c1
Inoltre esiste un comando \inStaffSegno che crea una battuta
di tipo segno, posta in cooperazione col comando\repeat volta.
Si possono definire nuovi tipi di stanghette con \defineBarLine:
\defineBarLine tipo-stanghetta #'(fine inizio span)
Le variabili di \defineBarline possono includere la stringa
‘vuota’ "",che è equivalente a una stanghetta invisibile.
Oppure possono essere impostate su #f, che fa sì che non
appaia alcuna stanghetta.
Dopo averla definita, si può richiamare la nuova stanghetta col comando
\bar tipo-stanghetta.
Attualmente sono disponibile dieci tipi di stanghetta:
\defineBarLine ":" #'("" ":" "")
\defineBarLine "=" #'("=" "" "")
\defineBarLine "[" #'("" "[" "")
\defineBarLine "]" #'("]" "" "")
\new Staff {
s1 \bar "|"
s1 \bar "."
s1 \bar "!"
s1 \bar ";"
s1 \bar ":"
s1 \bar "k"
s1 \bar "S"
s1 \bar "="
s1 \bar "["
s1 \bar "]"
s1 \bar ""
}
La stanghetta "=" crea la stanghetta doppia, usata insieme
al segno. Non deve essere usata per creare una sottile stanghetta doppia
che sta per conto suo; in questo caso è preferibile usare \bar "||".
Il segno "-" introduce le annotazioni alle stanghette che
servono a distinguere quelle che hanno aspetto identico ma un
diverso comportamento in occasione delle interruzioni di linea e/o
un diverso modo di connettere le stanghette tra i righi.
La parte che segue il segno "-" non viene usato per costruire
la stanghetta.
\defineBarLine "||-dashedSpan" #'("||" "" "!!")
\new StaffGroup <<
\new Staff {
c1 \bar "||"
c1 \bar "||-dashedSpan"
c1
}
\new Staff {
c1
c1
c1
}
>>
Lo spazio " " fa da segnaposto e fa sì che le stanghette tra i
righi siano allineate correttamente alle stanghette principali:
\defineBarLine ":|.-sbagliata" #'(":|." "" "|.")
\defineBarLine ":|.-giusta" #'(":|." "" " |.")
\new StaffGroup <<
\new Staff {
c1 \bar ":|.-sbagliata"
c1 \bar ":|.-giusta"
c1
}
\new Staff {
c1
c1
c1
}
>>
Se servono ulteriori elementi, LilyPond fornisce un modo semplice per definirli. Maggiori informazioni sulla modifica e l’aggiunta delle stanghette sono presenti nel file ‘scm/bar-line.scm’.
Nelle partiture con molti righi, un comando \bar inserito
in un rigo viene applicato automaticamente a tutti i righi.
Le stanghette risultanti sono connesse tra i diversi righi
di un StaffGroup, PianoStaff o GrandStaff.
<<
\new StaffGroup <<
\new Staff {
e4 d
\bar "||"
f4 e
}
\new Staff { \clef bass c4 g e g }
>>
\new Staff { \clef bass c2 c2 }
>>
Il comando ‘\bar tipo-stanghetta’ è una scorciatoia di
‘\set Timing.whichBar = tipo-stanghetta’. Una stanghetta
viene creata ogni volta che si imposta la proprietà whichBar.
Il tipo di stanghetta predefinita per le stanghette inserite automaticamente
è "|". Si può modificare in qualsiasi momento con
‘\set Timing.defaultBarType = tipo-stanghetta’.
Vedi anche
Guida alla notazione: Line breaking, Repeats, Grouping staves.
File installati: ‘scm/bar-line.scm’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno:
BarLine (creata al livello Staff),
SpanBar (tra i righi),
Timing_translator (per le proprietà di Timing).
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Stanghette ] | [ Su : Battute ] | [ Controlli di battuta e del numero di battuta > ] | ||
Numeri di battuta
I numeri di battuta appaiono all’inizio di ogni linea eccetto la prima.
Il numero viene salvato nella proprietà currentBarNumber, che
viene aggiornata automaticamente per ogni misura. Può anche essere
impostata a mano:
c1 c c c \break \set Score.currentBarNumber = #50 c1 c c c
I numeri di battuta possono essere mostrati a intervalli regolari
invece che solo all’inizio di ogni linea. Per farlo occorre
sovrascrivere il comportamento predefinito e permettere ai
numeri di battuta di apparire anche in punti diversi dall’inizio
della linea. Questo comportamento è regolato dalla proprietà
break-visibility di BarNumber, che prende tre
valori impostabili su #t o #f che indicano se
il numero di battuta corrispondente debba essere visibile
o no. L’ordine dei tre valori è end of line visible, middle of
line visible, beginning of line visible. Nell’esempio seguente
i numeri di battuta appaiono in tutti i punti possibili:
\override Score.BarNumber.break-visibility = ##(#t #t #t) \set Score.currentBarNumber = #11 % Permette la visualizzazione del primo numero di battuta \bar "" c1 | c | c | c \break c1 | c | c | c
Frammenti di codice selezionati
Mostrare il numero di battuta nella prima misura
Il primo numero di battuta di una partitura viene soppresso se è inferiore
o uguale a ‘1’. Se si imposta barNumberVisibility su
all-bar-numbers-visible, verrà mostrato il numero di battuta della
prima misura e di tutte quelle successive. Si noti che perché funzioni è
necessario inserire una stanghetta vuota prima della prima nota.
\relative c' {
\set Score.barNumberVisibility = #all-bar-numbers-visible
\bar ""
c1 | d | e | f \break
g1 | e | d | c
}
Mostrare i numeri di battuta a intervalli regolari
I numeri di battuta possono essere resi visbili a intervalli regolari
attraverso la proprietà barNumberVisibility. In questo esempio
vengono mostrati ogni due misure eccetto alla fine della linea.
\relative c' {
\override Score.BarNumber.break-visibility = #end-of-line-invisible
\set Score.currentBarNumber = #11
% Permit first bar number to be printed
\bar ""
% Print a bar number every second measure
\set Score.barNumberVisibility = #(every-nth-bar-number-visible 2)
c1 | c | c | c | c
\break
c1 | c | c | c | c
}
Numeri di battuta racchiusi in rettangoli o cerchi
I numeri di battuta possono apparire anche all’interno di rettangoli o cerchi.
\relative c' {
% Prevent bar numbers at the end of a line and permit them elsewhere
\override Score.BarNumber.break-visibility = #end-of-line-invisible
\set Score.barNumberVisibility = #(every-nth-bar-number-visible 4)
% Increase the size of the bar number by 2
\override Score.BarNumber.font-size = #2
% Draw a box round the following bar number(s)
\override Score.BarNumber.stencil
= #(make-stencil-boxer 0.1 0.25 ly:text-interface::print)
\repeat unfold 5 { c1 }
% Draw a circle round the following bar number(s)
\override Score.BarNumber.stencil
= #(make-stencil-circler 0.1 0.25 ly:text-interface::print)
\repeat unfold 4 { c1 } \bar "|."
}
Numeri di battuta alternativi
Si possono impostare due metodi alternativi di numerazione della battuta, utili specialmente per le ripetizioni.
\relative c'{
\set Score.alternativeNumberingStyle = #'numbers
\repeat volta 3 { c4 d e f | }
\alternative {
{ c4 d e f | c2 d \break }
{ f4 g a b | f4 g a b | f2 a | \break }
{ c4 d e f | c2 d }
}
c1 \break
\set Score.alternativeNumberingStyle = #'numbers-with-letters
\repeat volta 3 { c,4 d e f | }
\alternative {
{ c4 d e f | c2 d \break }
{ f4 g a b | f4 g a b | f2 a | \break }
{ c4 d e f | c2 d }
}
c1
}
Allineare i numeri di battuta
Per impostazione predefinita i numeri di battuta sono allineati a destra rispetto al loro oggetto genitore. Di solito si tratta del margine sinistro della linea oppure, se i numeri appaiono all’interno della linea, del lato sinistro della stanghetta. I numeri possono essere posizionati anche direttamente sopra la stanghetta oppure allineati a sinistra della stanghetta.
\relative c' {
\set Score.currentBarNumber = #111
\override Score.BarNumber.break-visibility = #all-visible
% Increase the size of the bar number by 2
\override Score.BarNumber.font-size = #2
% Print a bar number every second measure
\set Score.barNumberVisibility = #(every-nth-bar-number-visible 2)
c1 | c1
% Center-align bar numbers
\override Score.BarNumber.self-alignment-X = #CENTER
c1 | c1
% Left-align bar numbers
\override Score.BarNumber.self-alignment-X = #LEFT
c1 | c1
}
Togliere i numeri di battuta da uno spartito
I numeri di battuta possono essere tolti rimuovendo l’incisore
Bar_number_engraver dal contesto Score.
\layout {
\context {
\Score
\remove "Bar_number_engraver"
}
}
\relative c'' {
c4 c c c \break
c4 c c c
}
Vedi anche
Frammenti di codice: Rhythms.
Guida al funzionamento interno: BarNumber, Bar_number_engraver.
Problemi noti e avvertimenti
I numeri di battuta possono collidere con la cima della parentesi quadra di
StaffGroup, se presente. Per evitare la collisione, si può usare la
proprietà padding di BarNumber per posizionare correttamente
il numero. Si veda
StaffGroup e
BarNumber per
maggiori informazioni.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Numeri di battuta ] | [ Su : Battute ] | [ Segni di chiamata > ] | ||
Controlli di battuta e del numero di battuta
I controlli di battuta aiutano a rilevare gli errori nelle durate. Il controllo
di battuta si inserisce col simbolo della barra verticale, |, in un qualsiasi
punto in cui si prevede che cada la stanghetta. Se vengono trovati controlli
di battuta in punti diversi, viene creata una lista di avvisi nel file di log
che mostra i numeri di linea e le linee in cui il controllo è fallito. Nell’esempio
seguente il secondo controllo di battuta segnalerà un errore.
\time 3/4 c2 e4 | g2 |
I controlli di battuta possono essere usati anche nel testo vocale:
\lyricmode {
\time 2/4
Twin -- kle | Twin -- kle |
}
Una durata non corretta può generare uno spartito completamente alterato, specialmente se il brano è polifonico. Quindi il primo passo da compiere per correggere l’input è la verifica dei controlli di battuta e delle durate sbagliate.
Se i controlli di battuta successivi sono spostati dello stesso intervallo musicale, viene mostrato solo il primo messaggio di avviso. Così l’avvertimento si concentra sulla causa dell’errore di tempo.
È anche possibile ridefinire l’azione da prendere quando si incontra
un controllo di battuta o simbolo di barra verticale, |, nell’input,
in modo che faccuia qualcosa di diverso dal controllo di battuta. Si può
fare assegnando un’espressione musicale a pipeSymbol.
Nell’esempio seguente |, invece di controllare la fine di una
battuta, viene usato per inserire una stanghetta doppia ovunque appaia
nell’input.
pipeSymbol = \bar "||"
{
c'2 c' |
c'2 c'
c'2 | c'
c'2 c'
}
Quando si copiano brani ampi, può essere d’aiuto verificare che i
numeri di battuta di LilyPond corrispondano all’originale da cui
si sta inserendo il brano. Si può abilitare con \barNumberCheck, ad
esempio,
\barNumberCheck #123
genererà un avvertimento se currentBarNumber non è 123
nel momento in cui viene elaborato.
Vedi anche
Frammenti di codice: Rhythms.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Controlli di battuta e del numero di battuta ] | [ Su : Battute ] | [ Questioni ritmiche particolari > ] | ||
Segni di chiamata
Per creare un segno di chiamata si usa il comando \mark.
c1 \mark \default c1 \mark \default c1 \mark \default c1 \mark \default
Il segno viene incrementato automaticamente se si usa \mark
\default, ma è possibile usare anche un numero intero come argomento in
modo da impostare il segno manualmente. Il valore da usare viene salvato
nella proprietà rehearsalMark.
c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default
La lettera ‘I’ viene saltata, come vuole la tradizione tipografica. Se si desidera includere la lettera ‘I’, si può usare uno dei seguenti comandi, a seconda dello stile che si vuole (solo lettere, lettere in un quadrato o lettere in un cerchio).
\set Score.markFormatter = #format-mark-alphabet \set Score.markFormatter = #format-mark-box-alphabet \set Score.markFormatter = #format-mark-circle-alphabet
\set Score.markFormatter = #format-mark-box-alphabet c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default
Lo stile viene definito dalla proprietà markFormatter. È una
funzione che prende come argomenti il segno corrente (un numero intero) e
il contesto corrente. Dovrebbe restituire un oggetto testuale. Nell’esempio
seguente, markFormatter viene prima impostato su una procedura
predefinita e dopo alcune misure su una procedura che produce un
numero racchiuso in un quadrato.
\set Score.markFormatter = #format-mark-numbers c1 \mark \default c1 \mark \default \set Score.markFormatter = #format-mark-box-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-letters c1
Il file ‘scm/translation-functions.scm’ contiene le
definizioni di format-mark-numbers (il formato predefinito),
format-mark-box-numbers, format-mark-letters e
format-mark-box-letters. Possono essere usate come fonte
di ispirazione per creare altre funzioni di formattazione.
Si possono usare format-mark-barnumbers,
format-mark-box-barnumbers e
format-mark-circle-barnumbers per ottenere i numeri di battuta
invece di numeri o lettere crescenti.
Si possono specificare manualmente altri stili di segni di chiamata:
\mark "A1"
Si noti che Score.markFormatter non ha effetto sui segni specificati
in questo modo. Tuttavia, è possibile applicare un \markup alla
stringa.
\mark \markup{ \box A1 }
I glifi musicali (come il Segno) possono essere posti dentro il
comando \mark
c1 \mark \markup { \musicglyph #"scripts.segno" }
c1 \mark \markup { \musicglyph #"scripts.coda" }
c1 \mark \markup { \musicglyph #"scripts.ufermata" }
c1
L’elenco dei simboli che possono essere prodotti con \musicglyph si
trova in The Feta font.
Per le più comuni modifiche relative al posizionamento dei segni di chiamata, si
veda Formatting text. Per ottenere un controllo più preciso si consiglia
di studiare il funzionamento della proprietà break-alignable-interface
descritta in Aligning objects.
Il file ‘scm/translation-functions.scm’ contiene le
definizioni di format-mark-numbers e
format-mark-letters, che possono essere usate come fonte di
ispirazione per creare altre funzioni di formattazione.
Vedi anche
Guida alla notazione: The Feta font, Formatting text, Aligning objects.
File installati: ‘scm/translation-functions.scm’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: MarkEvent, Mark_engraver, RehearsalMark.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Segni di chiamata ] | [ Su : Ritmi ] | [ Abbellimenti > ] | ||
1.2.6 Questioni ritmiche particolari
| Abbellimenti | ||
| Allineamento sulle cadenze | ||
| Gestione del tempo |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Questioni ritmiche particolari ] | [ Su : Questioni ritmiche particolari ] | [ Allineamento sulle cadenze > ] | ||
Abbellimenti
Gli abbellimenti sono degli ornamenti musicali che hanno un tipo di carattere più piccolo e non occupano alcuno spazio temporale in una misura.
c4 \grace b16 a4(
\grace { b16[ c16] } a2)
Esistono altri tre tipi di abbellimenti possibili; l’acciaccatura – un
abbellimento a tempo libero indicato da una nota con legatura di portamento
e un gambo barrato – e l’appoggiatura, che prende una frazione fissa
della nota principale a cui è attaccata e ha un gambo non barrato. È anche
possibile creare un abbellimento con gambo barrato, come l’acciaccatura ma
senza la legatura di portamento, in modo da posizionarla tra note che sono
già legate tra loro: si usa il comando \slashedGrace.
\acciaccatura d8 c4
\appoggiatura e8 d4
\acciaccatura { g16[ f] } e2
\slashedGrace a,8 g4
\slashedGrace b16 a4(
\slashedGrace b8 a2)
Il posizionamento degli abbellimenti è sincronizzato tra righi diversi. Nell’esempio seguente, ci sono due abbellimenti da un sedicesimo ogni abbellimento da un ottavo
<<
\new Staff { e2 \grace { c16[ d e f] } e2 }
\new Staff { c2 \grace { g8[ b] } c2 }
>>
Se si desidera terminare una nota con un abbellimento, si usa il
comando \afterGrace. Prende due argomenti: la nota principale e
gli abbellimenti che la seguono.
c1 \afterGrace d1 { c16[ d] } c1
In questo modo gli abbellimenti vengono posizionati dopo uno spazio che dura
3/4 della durata della nota principale. La frazione predefinita 3/4 può essere
modificata attraverso afterGraceFraction. L’esempio seguente mostra
le diverse spaziature che si ottengono con la frazione predefinita, con 15/16
e infine con 1/2 della nota principale.
<<
\new Staff {
c1 \afterGrace d1 { c16[ d] } c1
}
\new Staff {
#(define afterGraceFraction (cons 15 16))
c1 \afterGrace d1 { c16[ d] } c1
}
\new Staff {
#(define afterGraceFraction (cons 1 2))
c1 \afterGrace d1 { c16[ d] } c1
}
>>
The space between the main note and the grace note may also be specified using spacers. The following example places the grace note after a space lasting 7/8 of the main note.
\new Voice {
<<
{ d1^\trill_( }
{ s2 s4. \grace { c16[ d] } }
>>
c1)
}
L’espressione musicale introdotta dal comando \grace avrà delle
impostazioni tipografiche speciali, ad esempio per rimpicciolire il
tipo di carattere e impostare le direzioni. Dunque le modifiche che
sovrascrivono tali impostazioni speciali devono essere poste all’interno
del blocco \grace. Lo stesso vale per le modifiche che ripristinano
i valori predefiniti. Nell’esempio seguente la direzione predefinita del
gambo viene prima sovrascritta e poi ripristinata.
\new Voice {
\acciaccatura {
\stemDown
f16->
\stemNeutral
}
g4 e c2
}
Frammenti di codice selezionati
Usare il gambo barrato degli abbellimenti con le teste normali
Il gambo barrato presente nelle acciaccature può essere applicato in altre situazioni.
\relative c'' {
\override Flag.stroke-style = #"grace"
c8( d2) e8( f4)
}
Modificare l’aspetto degli abbellimenti di un intero brano
L’aspetto di tutte le espressioni contenute nei blocchi \grace di un
brano può essere modificato con le funzioni add-grace-property e
remove-grace-property. L’esempio seguente toglie la definizione
della direzione di Stem nell’abbellimento, in modo che gli abbellimenti
non siano sempre rivolti in su, e rende barrate le teste di nota.
\relative c'' {
\new Staff {
$(remove-grace-property 'Voice 'Stem 'direction)
$(add-grace-property 'Voice 'NoteHead 'style 'cross)
\new Voice {
\acciaccatura { f16 } g4
\grace { d16[ e] } f4
\appoggiatura { f,32[ g a] } e2
}
}
}
Ridefinire le impostazioni predefinite globali degli abbellimenti
Le impostazioni predefinite globali degli abbellimenti sono salvate negli
identificatori startGraceMusic, stopGraceMusic,
startAcciaccaturaMusic, stopAcciaccaturaMusic,
startAppoggiaturaMusic e stopAppoggiaturaMusic, che
sono definiti nel file ly/grace-init.ly. Ridefinendoli si
possono ottenere altri effetti.
startAcciaccaturaMusic = {
<>(
\override Flag.stroke-style = #"grace"
\slurDashed
}
stopAcciaccaturaMusic = {
\revert Flag.stroke-style
\slurSolid
<>)
}
\relative c'' {
\acciaccatura d8 c1
}
Posizionare gli abbellimenti con dello spazio fluttuante
Se si imposta la proprietà 'strict-grace-spacing, le colonne musicali
degli abbellimenti ’fluttuano’, ovvero si scollegano dalle note normali:
prima vengono spaziate le note normali, poi le colonne musicali degli
abbellimenti vengono messe a sinistra delle colonne delle note principali.
\relative c'' {
<<
\override Score.SpacingSpanner.strict-grace-spacing = ##t
\new Staff \new Voice {
\afterGrace c4 { c16[ c8 c16] }
c8[ \grace { b16[ d] } c8]
c4 r
}
\new Staff {
c16 c c c c c c c c4 r
}
>>
}
Vedi anche
Glossario musicale: acciaccatura, acciaccatura, appoggiatura.
Guida alla notazione: Scalare le durate, Travature manuali.
File installati: ‘ly/grace-init.ly’.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: GraceMusic, Grace_beam_engraver, Grace_engraver, Grace_spacing_engraver.
Problemi noti e avvertimenti
Una acciaccatura con molte note legate da travatura è priva della barratura e ha lo stesso identico aspetto di una appoggiatura composta da varie note legate da travatura.
La sincronizzazione degli abbellimenti può nascondere delle sorprese, perché vengono sincronizzati anche altri elementi della notazione del rigo, come le armature di chiave, le stanghette, etc. Fai attenzione quando metti insieme righi che hanno degli abbellimenti con righi che non ne hanno. Ad esmepio
<<
\new Staff { e4 \bar ".|:" \grace c16 d2. }
\new Staff { c4 \bar ".|:" d2. }
>>
Si può ovviare a questo problema inserendo degli abbellimenti della durata corrispondente negli altri righi. Riprendendo l’esempio precedente
<<
\new Staff { e4 \bar ".|:" \grace c16 d2. }
\new Staff { c4 \bar ".|:" \grace s16 d2. }
>>
L’uso degli abbellimenti all’interno dei contesti della voce confonde il modo in cui la voce viene rappresentata. Si può evitare il problema inserendo una pausa o una nota tra il comando della voce e l’abbellimento.
accMusic = {
\acciaccatura { f8 } e8 r8 \acciaccatura { f8 } e8 r4
}
\new Staff {
<<
\new Voice {
\relative c'' {
r8 r8 \voiceOne \accMusic \oneVoice r8 |
r8 \voiceOne r8 \accMusic \oneVoice r8 |
}
}
\new Voice {
\relative c' {
s8 s8 \voiceTwo \accMusic \oneVoice s8 |
s8 \voiceTwo r8 \accMusic \oneVoice s8 |
}
}
>>
}
Le sezioni con abbellimenti devono essere usate solamente all’interno di espressioni musicali sequenziali. Non è permesso annidare o affiancare gruppi di abbellimenti; potrebbero verificarsi blocchi del programma o altri errori se non si rispetta questa limitazione.
Ogni abbellimento generato nell’output MIDI ha una durata di 1/4 della sua
vera durata. Se la durata complessiva degli abbellimenti è maggiore della
durata della nota che li precede, verrà generato l’errore
“Going back in MIDI time”. O si diminuisce la durata degli
abbellimenti, ad esempio:
c'8 \acciaccatura { c'8[ d' e' f' g'] }
diventa:
c'8 \acciaccatura { c'16[ d' e' f' g'] }
Oppure si cambia esplicitamente la durata musicale:
c'8 \acciaccatura { \scaleDurations 1/2 { c'8[ d' e' f' g'] } }
Vedi Scalare le durate.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Abbellimenti ] | [ Su : Questioni ritmiche particolari ] | [ Gestione del tempo > ] | ||
Allineamento sulle cadenze
Nell’ambito di una partitura per orchestra, le cadenze presentano un problema speciale: quando si scrive una partitura che include una cadenza o un altro passaggio solista, tutti gli altri strumenti devono saltare esattamente la durata complessiva delle note del passaggio, altrimenti inizieranno troppo presto o troppo tardi.
Una possibile soluzione a questo problema consiste nell’uso delle funzioni
mmrest-of-length e skip-of-length. Queste funzioni Scheme
prendono come argomento un pezzo di musica salvato in una variabile e generano
una pausa multipla o \skip della lunghezza esatta del brano.
MyCadenza = \relative c' {
c4 d8 e f g g4
f2 g4 g
}
\new GrandStaff <<
\new Staff {
\MyCadenza c'1
\MyCadenza c'1
}
\new Staff {
#(mmrest-of-length MyCadenza)
c'1
#(skip-of-length MyCadenza)
c'1
}
>>
Vedi anche
Glossario musicale: cadenza.
Frammenti di codice: Rhythms.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Allineamento sulle cadenze ] | [ Su : Questioni ritmiche particolari ] | [ Expressive marks > ] | ||
Gestione del tempo
Il tempo è gestito da Timing_translator, che si trova
nel contesto Score. Un suo alias,
Timing, viene aggiunto nel contesto nel quale si
trova Timing_translator. Per assicurarsi che l’alias
Timing sia disponibile, occorre istanziare esplicitamente
il contesto che lo contiene (come Voice o
Staff).
Si usano le seguenti proprietà di Timing per tenere traccia
del tempo in una partitura.
-
currentBarNumber Il numero di battuta corrente. Un esempio che mostra l’uso di questa proprietà si trova in Numeri di battuta.
-
measureLength La durata delle misure nel tempo corrente. Per un tempo di 4/4 è 1, per un tempo di 6/8 è 3/4. Il suo valore determina quando debbano essere inserite le stanghette e come debbano essere generate le travature automatiche.
-
measurePosition Il punto della misura in cui ci troviamo. Questa quantità viene reimpostata sottraendo
measureLengthogni volta chemeasureLengthviene raggiunto o superato. Quando questo accade,currentBarNumberviene incrementato.-
timing Se impostato su
#t, le variabili precedenti sono aggiornate ad ogni momento temporale. Se impostato su#f, l’incisore rimane nella misura corrente per un tempo indefinito.
Si può cambiare il tempo impostando esplicitamente una qualsiasi di
queste variabili. Nel prossimo esempio, viene visualizzata l’indicazione
di tempo predefinita di 4/4, ma measureLength è impostato su 5/4.
A 4/8 della terza misura, measurePosition si sposta in avanti
di 1/8 fino a 5/8, diminuendo quella misura di 1/8.
Quindi la stanghetta successiva si troverà a 9/8 invece che a 5/4.
\new Voice \relative c' {
\set Timing.measureLength = #(ly:make-moment 5/4)
c1 c4 |
c1 c4 |
c4 c
\set Timing.measurePosition = #(ly:make-moment 5/8)
b4 b b8 |
c4 c1 |
}
Come mostra l’esempio, ly:make-moment n m definisce una durata
di n/m della nota intera. Ad esempio, ly:make-moment 1 8 corrisponde
alla durata di un ottavo mentre ly:make-moment 7 16 a quella di sette
sedicesimi.
Vedi anche
Guida alla notazione: Numeri di battuta, Musica in tempo libero.
Frammenti di codice: Rhythms.
Guida al funzionamento interno: Timing_translator, Score.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Gestione del tempo ] | [ Su : Notazione musicale ] | [ Expressive marks attached to notes > ] | ||
1.3 Expressive marks
This section lists various expressive marks that can be created in a score.
| 1.3.1 Expressive marks attached to notes | ||
| 1.3.2 Expressive marks as curves | ||
| 1.3.3 Expressive marks as lines |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Expressive marks ] | [ Su : Expressive marks ] | [ Articulations and ornamentations > ] | ||
1.3.1 Expressive marks attached to notes
This section explains how to create expressive marks that are attached to notes: articulations, ornamentations, and dynamics. Methods to create new dynamic markings are also discussed.
| Articulations and ornamentations | ||
| Dynamics | ||
| New dynamic marks |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Expressive marks attached to notes ] | [ Su : Expressive marks attached to notes ] | [ Dynamics > ] | ||
Articulations and ornamentations
A variety of symbols that denote articulations, ornamentations, and other performance indications can be attached to a note using this syntax:
note\name
The possible values for name are listed in
List of articulations. For example:
c4\staccato c\mordent b2\turn c1\fermata
Some of these articulations have shorthands for easier entry.
Shorthands are appended to the note name, and their syntax
consists of a dash - followed by a symbol signifying the
articulation. Predefined shorthands exist for marcato,
stopped, tenuto, staccatissimo,
accent, staccato, and portato.
Their corresponding output appears as follows:
c4-^ c-+ c-- c-| c4-> c-. c2-_
The rules for the default placement of articulations are defined in ‘scm/script.scm’. Articulations and ornamentations may be manually placed above or below the staff; see Direction and placement.
Articulations are Script objects. Their properties are
described more fully in
Script.
Articulations can be attached to rests as well as notes but they
cannot be attached to multi-measure rests. A special predefined
command, \fermataMarkup, is available for attaching a fermata
to a multi-measure rest (and only a multi-measure rest). This
creates a MultiMeasureRestText object.
\override Script.color = #red \override MultiMeasureRestText.color = #blue a2\fermata r\fermata R1\fermataMarkup
In addition to articulations, text and markups can be attached to notes. See Text scripts.
For more information about the ordering of Scripts and TextScripts that are attached to the notes, see Placement of objects.
Frammenti di codice selezionati
Modifying default values for articulation shorthand notation
The shorthands are defined in ‘ly/script-init.ly’, where the
variables dashHat, dashPlus, dashDash,
dashBar, dashLarger, dashDot, and
dashUnderscore are assigned default values. The default values
for the shorthands can be modified. For example, to associate the
-+ (dashPlus) shorthand with the trill symbol instead of
the default + symbol, assign the value trill to the variable
dashPlus:
\relative c'' { c1-+ }
dashPlus = "trill"
\relative c'' { c1-+ }
Controlling the vertical ordering of scripts
The vertical ordering of scripts is controlled with the
'script-priority property. The lower this number, the closer it
will be put to the note. In this example, the TextScript (the
sharp symbol) first has the lowest priority, so it is put lowest in the
first example. In the second, the prall trill (the Script) has
the lowest, so it is on the inside. When two objects have the same
priority, the order in which they are entered determines which one
comes first.
\relative c''' {
\once \override TextScript.script-priority = #-100
a2^\prall^\markup { \sharp }
\once \override Script.script-priority = #-100
a2^\prall^\markup { \sharp }
}
Creating a delayed turn
Creating a delayed turn, where the lower note of the turn uses the
accidental, requires several overrides. The
outside-staff-priority property must be set to #f, as
otherwise this would take precedence over the avoid-slur
property. The value of halign is used to position the turn
horizontally.
\relative c'' {
\once \override TextScript.avoid-slur = #'inside
\once \override TextScript.outside-staff-priority = ##f
c2(^\markup \tiny \override #'(baseline-skip . 1) {
\halign #-4
\center-column {
\sharp
\musicglyph #"scripts.turn"
}
}
d4.) c8
}
Vedi anche
Music Glossary: tenuto, accent, staccato, portato.
Learning Manual: Placement of objects.
Notation Reference: Text scripts, Direction and placement, List of articulations, Trills.
Installed Files: ‘scm/script.scm’.
Snippets: Expressive marks.
Internals Reference: Script, TextScript.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Articulations and ornamentations ] | [ Su : Expressive marks attached to notes ] | [ New dynamic marks > ] | ||
Dynamics
Absolute dynamic marks are specified using a command after a note,
such as c4\ff. The available dynamic marks are
\ppppp, \pppp, \ppp, \pp, \p,
\mp, \mf, \f, \ff, \fff,
\ffff, \fffff, \fp, \sf, \sff,
\sp, \spp, \sfz, and \rfz. Dynamic
marks may be manually placed above or below the staff; see
Direction and placement.
c2\ppp c\mp c2\rfz c^\mf c2_\spp c^\ff
A crescendo mark is started with \< and
terminated with \!, an absolute dynamic, or an additional
crescendo or decrescendo mark. A decrescendo mark is
started with \> and is also terminated with \!, an
absolute dynamic, or another crescendo or decrescendo mark.
\cr and \decr may be used instead of \< and
\>. Hairpins are engraved by default using this
notation.
c2\< c\! d2\< d\f e2\< e\> f2\> f\! e2\> e\mp d2\> d\> c1\!
A hairpin that is terminated with \! will end at the
right edge of the note that has the \! assigned to it. In the
case where it is terminated with the start of another crescendo
or decrescendo mark, it will end at the centre of the note
that has the next \< or \> assigned to it. The next
hairpin will then start at the right edge of the same note
instead of the usual left edge had it been terminated with \!
before.
c1\< | c4 a c\< a | c4 a c\! a\< | c4 a c a\!
Hairpins that are terminated with absolute dynamic marks instead of
\! will also be engraved in a similar way. However, the length
of the absolute dynamic itself can alter where the preceding hairpin
ends.
c1\< | c4 a c\mf a | c1\< | c4 a c\ffff a
Spacer rests are needed to engrave multiple marks on one note. This is particularly useful when adding a crescendo and decrescendo to the same note:
c4\< c\! d\> e\!
<< f1 { s4 s4\< s4\> s4\! } >>
The \espressivo command can be used to indicate a crescendo
and decrescendo on the same note. However, be warned that this is
implemented as an articulation, not a dynamic.
c2 b4 a g1\espressivo
Textual crescendo marks begin with \cresc.
Textual decrescendos begin with \decresc or \dim.
Extender lines are engraved as required.
g8\cresc a b c b c d e\mf | f8\decresc e d c e\> d c b | a1\dim ~ | a2. r4\! |
Textual marks for dynamic changes can also replace hairpins:
\crescTextCresc c4\< d e f\! | \dimTextDecresc g4\> e d c\! | \dimTextDecr e4\> d c b\! | \dimTextDim d4\> c b a\! | \crescHairpin \dimHairpin c4\< d\! e\> d\! |
To create new absolute dynamic marks or text that should be aligned with dynamics, see New dynamic marks.
Vertical positioning of dynamics is handled by DynamicLineSpanner.
A Dynamics context is available to engrave dynamics on
their own horizontal line. Use spacer rests to indicate timing.
(Notes in a Dynamics context will also take up
musical time, but will not be engraved.)
The Dynamics context can usefully contain some other
items such as text scripts, text spanners, and piano pedal marks.
<<
\new Staff \relative c' {
c2 d4 e |
c4 e e,2 |
g'4 a g a |
c1 |
}
\new Dynamics {
s1\< |
s1\f |
s2\dim s2-"rit." |
s1\p |
}
>>
Comandi predefiniti
\dynamicUp,
\dynamicDown,
\dynamicNeutral,
\crescTextCresc,
\dimTextDim,
\dimTextDecr,
\dimTextDecresc,
\crescHairpin,
\dimHairpin.
Frammenti di codice selezionati
Setting hairpin behavior at bar lines
If the note which ends a hairpin falls on a downbeat, the hairpin stops
at the bar line immediately preceding. This behavior can be controlled
by overriding the 'to-barline property.
\relative c'' {
e4\< e2.
e1\!
\override Hairpin.to-barline = ##f
e4\< e2.
e1\!
}
Setting the minimum length of hairpins
If hairpins are too short, they can be lengthened by modifying the
minimum-length property of the Hairpin object.
\relative c'' {
c4\< c\! d\> e\!
\override Hairpin.minimum-length = #5
<< f1 { s4 s\< s\> s\! } >>
}
Printing hairpins using al niente notation
Hairpin dynamics may be printed with a circled tip (“al niente”
notation) by setting the circled-tip property of the
Hairpin object to #t.
\relative c'' {
\override Hairpin.circled-tip = ##t
c2\< c\!
c4\> c\< c2\!
}
Vertically aligned dynamics and textscripts
By setting the 'Y-extent property to a suitable value, all
DynamicLineSpanner objects (hairpins and dynamic texts) can be
aligned to a common reference point, regardless of their actual extent.
This way, every element will be vertically aligned, thus producing a
more pleasing output.
The same idea, together with \textLengthOn, is used to align the text scripts along their baseline.
music = \relative c' {
a'2\p b\f
e4\p f\f\> g, b\p
c2^\markup { \huge gorgeous } c^\markup { \huge fantastic }
}
{
\music
\break
\override DynamicLineSpanner.staff-padding = #2.0
\override DynamicLineSpanner.Y-extent = #'(-1.5 . 1.5)
\textLengthOn
\override TextScript.Y-extent = #'(-1.5 . 1.5)
\music
}
Hiding the extender line for text dynamics
Text style dynamic changes (such as cresc. and dim.) are printed with a dashed line showing their extent. This line can be suppressed in the following way:
\relative c'' {
\override DynamicTextSpanner.style = #'none
\crescTextCresc
c1\< | d | b | c\!
}
Changing text and spanner styles for text dynamics
The text used for crescendos and decrescendos can be changed by
modifying the context properties crescendoText and
decrescendoText.
The style of the spanner line can be changed by modifying the
'style property of DynamicTextSpanner. The default value
is 'dashed-line, and other possible values include 'line,
'dotted-line and 'none.
\relative c'' {
\set crescendoText = \markup { \italic { cresc. poco } }
\set crescendoSpanner = #'text
\override DynamicTextSpanner.style = #'dotted-line
a2\< a
a2 a
a2 a
a2 a\mf
}
Vedi anche
Music Glossary: al niente, crescendo, decrescendo, hairpin.
Learning Manual: Articulation and dynamics.
Notation Reference: Direction and placement, New dynamic marks, What goes into the MIDI output?, Controlling MIDI dynamics.
Snippets: Expressive marks.
Internals Reference: DynamicText, Hairpin, DynamicLineSpanner, Dynamics.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Dynamics ] | [ Su : Expressive marks attached to notes ] | [ Expressive marks as curves > ] | ||
New dynamic marks
The easiest way to create dynamic indications is to use
\markup objects.
moltoF = \markup { molto \dynamic f }
\relative c' {
<d e>16_\moltoF <d e>
<d e>2..
}
In markup mode, editorial dynamics (within parentheses or square brackets) can be created. The syntax for markup mode is described in Formatting text.
roundF = \markup {
\center-align \concat { \bold { \italic ( }
\dynamic f \bold { \italic ) } } }
boxF = \markup { \bracket { \dynamic f } }
\relative c' {
c1_\roundF
c1_\boxF
}
Simple, centered dynamic marks are easily created with the
make-dynamic-script function.
sfzp = #(make-dynamic-script "sfzp")
\relative c' {
c4 c c\sfzp c
}
In general, make-dynamic-script takes any markup object as its
argument. The dynamic font only contains the characters
f,m,p,r,s and z, so if a dynamic mark that includes
plain text or punctuation symbols is desired, markup commands that
reverts font family and font encoding to normal text should be used,
for example \normal-text. The interest of using
make-dynamic-script instead of an ordinary markup is ensuring
the vertical alignment of markup objects and hairpins that are
attached to the same note head.
roundF = \markup { \center-align \concat {
\normal-text { \bold { \italic ( } }
\dynamic f
\normal-text { \bold { \italic ) } } } }
boxF = \markup { \bracket { \dynamic f } }
mfEspress = \markup { \center-align \line {
\hspace #3.7 mf \normal-text \italic espress. } }
roundFdynamic = #(make-dynamic-script roundF)
boxFdynamic = #(make-dynamic-script boxF)
mfEspressDynamic = #(make-dynamic-script mfEspress)
\relative c' {
c4_\roundFdynamic\< d e f
g,1~_\boxFdynamic\>
g1
g'1~\mfEspressDynamic
g1
}
The Scheme form of markup mode may be used instead. Its syntax is explained in Markup construction in Scheme.
moltoF = #(make-dynamic-script
(markup #:normal-text "molto"
#:dynamic "f"))
\relative c' {
<d e>16 <d e>
<d e>2..\moltoF
}
To left-align the dynamic text rather than centering it on a note
use a \tweak:
moltoF = \tweak DynamicText.self-alignment-X #LEFT
#(make-dynamic-script
(markup #:normal-text "molto"
#:dynamic "f"))
\relative c' {
<d e>16 <d e>
<d e>2..\moltoF <d e>1
}
Font settings in markup mode are described in Selecting font and font size.
Vedi anche
Notation Reference: Formatting text, Selecting font and font size, What goes into the MIDI output?, Controlling MIDI dynamics.
Extending LilyPond: Markup construction in Scheme.
Snippets: Expressive marks.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < New dynamic marks ] | [ Su : Expressive marks ] | [ Slurs > ] | ||
1.3.2 Expressive marks as curves
This section explains how to create various expressive marks that are curved: normal slurs, phrasing slurs, breath marks, falls, and doits.
| Slurs | ||
| Phrasing slurs | ||
| Breath marks | ||
| Falls and doits |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Expressive marks as curves ] | [ Su : Expressive marks as curves ] | [ Phrasing slurs > ] | ||
Slurs
Slurs are entered using parentheses:
Nota: In polyphonic music, a slur must be terminated in the same voice it began.
f4( g a) a8 b( a4 g2 f4) <c e>2( <b d>2)
Slurs may be manually placed above or below the staff; see Direction and placement.
Simultaneous or overlapping slurs are not permitted, but a phrasing slur can overlap a slur. This permits two slurs to be printed at once. For details, see Phrasing slurs.
Slurs can be solid, dotted, or dashed. Solid is the default slur style:
c4( e g2) \slurDashed g4( e c2) \slurDotted c4( e g2) \slurSolid g4( e c2)
Slurs can also be made half-dashed (the first half dashed, the second half solid) or half-solid (the first half solid, the second half dashed):
c4( e g2) \slurHalfDashed g4( e c2) \slurHalfSolid c4( e g2) \slurSolid g4( e c2)
Custom dash patterns for slurs can be defined:
c4( e g2) \slurDashPattern #0.7 #0.75 g4( e c2) \slurDashPattern #0.5 #2.0 c4( e g2) \slurSolid g4( e c2)
Comandi predefiniti
\slurUp,
\slurDown,
\slurNeutral,
\slurDashed,
\slurDotted,
\slurHalfDashed,
\slurHalfSolid,
\slurDashPattern,
\slurSolid.
Frammenti di codice selezionati
Using double slurs for legato chords
Some composers write two slurs when they want legato chords. This can
be achieved by setting doubleSlurs.
\relative c' {
\set doubleSlurs = ##t
<c e>4( <d f> <c e> <d f>)
}
Positioning text markups inside slurs
Text markups need to have the outside-staff-priority property
set to false in order to be printed inside slurs.
\relative c'' {
\override TextScript.avoid-slur = #'inside
\override TextScript.outside-staff-priority = ##f
c2(^\markup { \halign #-10 \natural } d4.) c8
}
Making slurs with complex dash structure
Slurs can be made with complex dash patterns by defining the
dash-definition property. dash-definition is a list of
dash-elements. A dash-element is a list of parameters
defining the dash behavior for a segment of the slur.
The slur is defined in terms of the bezier parameter t which ranges
from 0 at the left end of the slur to 1 at the right end of the slur.
dash-element is a list (start-t stop-t dash-fraction
dash-period). The region of the slur from start-t to
stop-t will have a fraction dash-fraction of each
dash-period black. dash-period is defined in terms of
staff spaces. dash-fraction is set to 1 for a solid slur.
\relative c' {
\once \override
Slur.dash-definition = #'((0 0.3 0.1 0.75)
(0.3 0.6 1 1)
(0.65 1.0 0.4 0.75))
c4( d e f)
\once \override
Slur.dash-definition = #'((0 0.25 1 1)
(0.3 0.7 0.4 0.75)
(0.75 1.0 1 1))
c4( d e f)
}
Vedi anche
Music Glossary: slur.
Learning Manual: On the un-nestedness of brackets and ties.
Notation Reference: Direction and placement, Phrasing slurs.
Snippets: Expressive marks.
Internals Reference: Slur.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Slurs ] | [ Su : Expressive marks as curves ] | [ Breath marks > ] | ||
Phrasing slurs
Phrasing slurs (or phrasing marks) that indicate a
musical sentence are written using the commands \( and
\) respectively:
c4\( d( e) f( e2) d\)
Typographically, a phrasing slur behaves almost exactly like a
normal slur. However, they are treated as different objects; a
\slurUp will have no effect on a phrasing slur. Phrasing
may be manually placed above or below the staff; see
Direction and placement.
Simultaneous or overlapping phrasing slurs are not permitted.
Phrasing slurs can be solid, dotted, or dashed. Solid is the default style for phrasing slurs:
c4\( e g2\) \phrasingSlurDashed g4\( e c2\) \phrasingSlurDotted c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
Phrasing slurs can also be made half-dashed (the first half dashed, the second half solid) or half-solid (the first half solid, the second half dashed):
c4\( e g2\) \phrasingSlurHalfDashed g4\( e c2\) \phrasingSlurHalfSolid c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
Custom dash patterns for phrasing slurs can be defined:
c4\( e g2\) \phrasingSlurDashPattern #0.7 #0.75 g4\( e c2\) \phrasingSlurDashPattern #0.5 #2.0 c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
Dash pattern definitions for phrasing slurs have the same structure as dash pattern definitions for slurs. For more information about complex dash patterns, see the snippets under Slurs.
Comandi predefiniti
\phrasingSlurUp,
\phrasingSlurDown,
\phrasingSlurNeutral,
\phrasingSlurDashed,
\phrasingSlurDotted,
\phrasingSlurHalfDashed,
\phrasingSlurHalfSolid,
\phrasingSlurDashPattern,
\phrasingSlurSolid.
Vedi anche
Learning Manual: On the un-nestedness of brackets and ties.
Notation Reference: Direction and placement, Slurs.
Snippets: Expressive marks.
Internals Reference: PhrasingSlur.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Phrasing slurs ] | [ Su : Expressive marks as curves ] | [ Falls and doits > ] | ||
Breath marks
Breath marks are entered using \breathe:
c2. \breathe d4
A breath mark will end an automatic beam; to override this behavior, see Travature manuali.
c8 \breathe d e f g2
Musical indicators for breath marks in ancient notation, divisiones, are supported. For details, see Divisiones.
Frammenti di codice selezionati
Changing the breath mark symbol
The glyph of the breath mark can be tuned by overriding the text
property of the BreathingSign layout object with any markup
text.
\relative c'' {
c2
\override BreathingSign.text =
\markup { \musicglyph #"scripts.rvarcomma" }
\breathe
d2
}
Using a tick as the breath mark symbol
Vocal and wind music frequently uses a tick mark as a breathing sign. This indicates a breath that subtracts a little time from the previous note rather than causing a short pause, which is indicated by the comma breath mark. The mark can be moved up a little to take it away from the stave.
\relative c'' {
c2
\breathe
d2
\override BreathingSign.Y-offset = #2.6
\override BreathingSign.text =
\markup { \musicglyph #"scripts.tickmark" }
c2
\breathe
d2
}
Inserting a caesura
Caesura marks can be created by overriding the 'text property of
the BreathingSign object. A curved caesura mark is also
available.
\relative c'' {
\override BreathingSign.text = \markup {
\musicglyph #"scripts.caesura.straight"
}
c8 e4. \breathe g8. e16 c4
\override BreathingSign.text = \markup {
\musicglyph #"scripts.caesura.curved"
}
g8 e'4. \breathe g8. e16 c4
}
Vedi anche
Music Glossary: caesura.
Notation Reference: Divisiones.
Snippets: Expressive marks.
Internals Reference: BreathingEvent, BreathingSign, Breathing_sign_engraver.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Breath marks ] | [ Su : Expressive marks as curves ] | [ Expressive marks as lines > ] | ||
Falls and doits
Falls and doits can be added to notes using
the \bendAfter command. The direction of the fall or doit
is indicated with a plus or minus (up or down). The number
indicates the pitch interval that the fall or doit will extend
beyond the main note.
c2\bendAfter #+4 c2\bendAfter #-4 c2\bendAfter #+6.5 c2\bendAfter #-6.5 c2\bendAfter #+8 c2\bendAfter #-8
Frammenti di codice selezionati
Adjusting the shape of falls and doits
The shortest-duration-space property may be tweaked to adjust
the shape of falls and doits.
\relative c'' {
\override Score.SpacingSpanner.shortest-duration-space = #4.0
c2-\bendAfter #5
c2-\bendAfter #-4.75
c2-\bendAfter #8.5
c2-\bendAfter #-6
}
Vedi anche
Snippets: Expressive marks.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Falls and doits ] | [ Su : Expressive marks ] | [ Glissando > ] | ||
1.3.3 Expressive marks as lines
This section explains how to create various expressive marks that follow a linear path: glissandos, arpeggios, and trills.
| Glissando | ||
| Arpeggio | ||
| Trills |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Expressive marks as lines ] | [ Su : Expressive marks as lines ] | [ Arpeggio > ] | ||
Glissando
A glissando is created by appending \glissando
to a note:
g2\glissando g' c2\glissando c, \afterGrace f,1\glissando f'16
A glissando can connect notes across staves:
\new PianoStaff <<
\new Staff = "right" {
e'''2\glissando
\change Staff = "left"
a,,4\glissando
\change Staff = "right"
b''8 r |
}
\new Staff = "left" {
\clef bass
s1
}
>>
A glissando can connect notes in chords. If anything other than a
direct one-to-one pairing of the notes in the two chords is required
the connections between the notes are defined by setting
\glissandoMap, where the notes of a chord are assumed to be
numbered from zero in the order in which they appear in the input
‘.ly’ file.
<c, e>1\glissando g' | <c, e>1\glissando | <g' b> | \break \set glissandoMap = #'((0 . 1) (1 . 0)) <c, g'>1\glissando | <d a'> | \set glissandoMap = #'((0 . 0) (0 . 1) (0 . 2)) c1\glissando | <d f a> | \set glissandoMap = #'((2 . 0) (1 . 0) (0 . 1)) <f d a'>1\glissando | <c c'> |
Different styles of glissandi can be created. For details, see Line styles.
Frammenti di codice selezionati
Contemporary glissando
A contemporary glissando without a final note can be typeset using a hidden note and cadenza timing.
\relative c'' {
\time 3/4
\override Glissando.style = #'zigzag
c4 c
\cadenzaOn
c4\glissando
\hideNotes
c,,4
\unHideNotes
\cadenzaOff
\bar "|"
}
Adding timing marks to long glissandi
Skipped beats in very long glissandi are sometimes indicated by timing marks, often consisting of stems without noteheads. Such stems can also be used to carry intermediate expression markings.
If the stems do not align well with the glissando, they may need to be repositioned slightly.
glissandoSkipOn = {
\override NoteColumn.glissando-skip = ##t
\override NoteHead.transparent = ##t
\override NoteHead.no-ledgers = ##t
}
glissandoSkipOff = {
\revert NoteColumn.glissando-skip
\revert NoteHead.transparent
\revert NoteHead.no-ledgers
}
\relative c'' {
r8 f8\glissando
\glissandoSkipOn
f4 g a a8\noBeam
\glissandoSkipOff
a8
r8 f8\glissando
\glissandoSkipOn
g4 a8
\glissandoSkipOff
a8 |
r4 f\glissando \<
\glissandoSkipOn
a4\f \>
\glissandoSkipOff
b8\! r |
}
Making glissandi breakable
Setting the breakable property to #t in combination with
after-line-breaking allows a glissando to break if it occurs
at a line break:
glissandoSkipOn = {
\override NoteColumn.glissando-skip = ##t
\override NoteHead.transparent = ##t
\override NoteHead.no-ledgers = ##t
}
\relative c'' {
\override Glissando.breakable = ##t
\override Glissando.after-line-breaking = ##t
f1\glissando |
\break
a4 r2. |
f1\glissando
\once \glissandoSkipOn
\break
a2 a4 r4 |
}
Extending glissandi across repeats
A glissando which extends into several \alternative blocks
can be simulated by adding a hidden grace note with a glissando
at the start of each \alternative block. The grace note
should be at the same pitch as the note which starts the initial
glissando. This is implemented here with a music function which
takes the pitch of the grace note as its argument.
Note that in polyphonic music the grace note must be matched with corresponding grace notes in all other voices.
repeatGliss = #(define-music-function (parser location grace)
(ly:pitch?)
#{
% the next two lines ensure the glissando is long enough
% to be visible
\once \override Glissando.springs-and-rods
= #ly:spanner::set-spacing-rods
\once \override Glissando.minimum-length = #3.5
\once \hideNotes
\grace $grace \glissando
#})
\score {
\relative c'' {
\repeat volta 3 { c4 d e f\glissando }
\alternative {
{ g2 d }
{ \repeatGliss f g2 e }
{ \repeatGliss f e2 d }
}
}
}
music = \relative c' {
\voiceOne
\repeat volta 2 {
g a b c\glissando
}
\alternative {
{ d1 }
{ \repeatGliss c e1 }
}
}
\score {
\new StaffGroup <<
\new Staff <<
\context Voice { \clef "G_8" \music }
>>
\new TabStaff <<
\context TabVoice { \clef "moderntab" \music }
>>
>>
}
Vedi anche
Music Glossary: glissando.
Notation Reference: Line styles.
Snippets: Expressive marks.
Internals Reference: Glissando.
Problemi noti e avvertimenti
Printing text over the line (such as gliss.) is not supported.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Glissando ] | [ Su : Expressive marks as lines ] | [ Trills > ] | ||
Arpeggio
An arpeggio on a chord (also known as a broken chord)
is denoted by appending \arpeggio to the chord construct:
<c e g c>1\arpeggio
Different types of arpeggios may be written.
\arpeggioNormal reverts to a normal arpeggio:
<c e g c>2\arpeggio \arpeggioArrowUp <c e g c>2\arpeggio \arpeggioArrowDown <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
Special bracketed arpeggio symbols can be created:
<c e g c>2 \arpeggioBracket <c e g c>2\arpeggio \arpeggioParenthesis <c e g c>2\arpeggio \arpeggioParenthesisDashed <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
The dash properties of the parenthesis arpeggio are controlled
with the 'dash-details property, which is described at Slurs.
Arpeggios can be explicitly written out with ties. For more information, see Legature di valore.
Comandi predefiniti
\arpeggio,
\arpeggioArrowUp,
\arpeggioArrowDown,
\arpeggioNormal,
\arpeggioBracket,
\arpeggioParenthesis
\arpeggioParenthesisDashed.
Frammenti di codice selezionati
Creating cross-staff arpeggios in a piano staff
In a PianoStaff, it is possible to let an arpeggio cross between
the staves by setting the property PianoStaff.connectArpeggios.
\new PianoStaff \relative c'' <<
\set PianoStaff.connectArpeggios = ##t
\new Staff {
<c e g c>4\arpeggio
<g c e g>4\arpeggio
<e g c e>4\arpeggio
<c e g c>4\arpeggio
}
\new Staff {
\clef bass
\repeat unfold 4 {
<c,, e g c>4\arpeggio
}
}
>>
Creating cross-staff arpeggios in other contexts
Cross-staff arpeggios can be created in contexts other than
GrandStaff, PianoStaff and StaffGroup if the
Span_arpeggio_engraver is included in the Score context.
\score {
\new ChoirStaff {
\set Score.connectArpeggios = ##t
<<
\new Voice \relative c' {
<c e>2\arpeggio
<d f>2\arpeggio
<c e>1\arpeggio
}
\new Voice \relative c {
\clef bass
<c g'>2\arpeggio
<b g'>2\arpeggio
<c g'>1\arpeggio
}
>>
}
\layout {
\context {
\Score
\consists "Span_arpeggio_engraver"
}
}
}
Creating arpeggios across notes in different voices
An arpeggio can be drawn across notes in different voices on the same
staff if the Span_arpeggio_engraver is added to the Staff
context:
\new Staff \with {
\consists "Span_arpeggio_engraver"
}
\relative c' {
\set Staff.connectArpeggios = ##t
<<
{ <e' g>4\arpeggio <d f> <d f>2 }
\\
{ <d, f>2\arpeggio <g b>2 }
>>
}
Vedi anche
Music Glossary: arpeggio.
Notation Reference: Slurs, Legature di valore.
Snippets: Expressive marks.
Internals Reference: Arpeggio, Slur, PianoStaff.
Problemi noti e avvertimenti
It is not possible to mix connected arpeggios and unconnected
arpeggios in one PianoStaff at the same point in
time.
The parenthesis-style arpeggio brackets do not work for cross-staff arpeggios.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Arpeggio ] | [ Su : Expressive marks as lines ] | [ Repeats > ] | ||
Trills
Short trills without an extender line are printed with
\trill; see Articulations and ornamentations.
Longer trills with an extender line are made with
\startTrillSpan and \stopTrillSpan:
d1\startTrillSpan d1 c2\stopTrillSpan r2
A trill spanner crossing a line break will restart exactly above the first note on the new line.
d1\startTrillSpan \break d1 c2\stopTrillSpan r2
Consecutive trill spans will work without explicit
\stopTrillSpan commands, since successive trill spanners will
automatically become the right bound of the previous trill.
d1\startTrillSpan d1 b1\startTrillSpan d2\stopTrillSpan r2
Trills can also be combined with grace notes. The syntax of this construct and the method to precisely position the grace notes are described in Abbellimenti.
d1~\afterGrace
d1\startTrillSpan { c32[ d]\stopTrillSpan }
c2 r2
Trills that require an auxiliary note with an explicit pitch can
be typeset with the \pitchedTrill command. The first
argument is the main note, and the second is the trilled
note, printed as a stemless note head in parentheses.
\pitchedTrill d2\startTrillSpan fis d2 c2\stopTrillSpan r2
Subsequent accidentals of the same note in the same measure will need to be added manually. Only the accidental of the first pitched trill in a measure is printed.
\pitchedTrill eis4\startTrillSpan fis eis4\stopTrillSpan \pitchedTrill eis4\startTrillSpan cis eis4\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis eis4\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis! eis4\stopTrillSpan
Comandi predefiniti
\startTrillSpan,
\stopTrillSpan.
Vedi anche
Music Glossary: trill.
Notation Reference: Articulations and ornamentations, Abbellimenti.
Snippets: Expressive marks.
Internals Reference: TrillSpanner.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Trills ] | [ Su : Notazione musicale ] | [ Long repeats > ] | ||
1.4 Repeats
Repetition is a central concept in music, and multiple notations exist for repetitions. LilyPond supports the following kinds of repeats:
-
volta The repeated music is not written out but enclosed between repeat bar lines. If the repeat is at the beginning of a piece, a repeat bar line is only printed at the end of the repeat. Alternative endings (volte) are printed left to right with brackets. This is the standard notation for repeats with alternatives.
-
unfold The repeated music is fully written out, as many times as specified by
repeatcount. This is useful when entering repetitious music.-
percent These are beat or measure repeats. They look like single slashes or percent signs.
-
tremolo This is used to write tremolo beams.
| 1.4.1 Long repeats | ||
| 1.4.2 Short repeats |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Repeats ] | [ Su : Repeats ] | [ Normal repeats > ] | ||
1.4.1 Long repeats
This section discusses how to input long (usually multi-measure) repeats. The repeats can take two forms: repeats enclosed between repeat signs; or written-out repeats, used to input repetitious music. Repeat signs can also be controlled manually.
| Normal repeats | ||
| Manual repeat marks | ||
| Written-out repeats |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Long repeats ] | [ Su : Long repeats ] | [ Manual repeat marks > ] | ||
Normal repeats
The syntax for a normal repeat is
\repeat volta repeatcount musicexpr
where musicexpr is a music expression.
A single repeat without an alternate ending:
\repeat volta 2 { c4 d e f }
c2 d
\repeat volta 2 { d4 e f g }
Alternative endings can be produced using \alternative. Each
group of alternatives must be themselves, enclosed in a set of braces.
\repeat volta repeatcount musicexpr
\alternative {
{ musicexpr }
}
where musicexpr is a music expression.
If there are more repeats than there are alternate endings, the earliest repeats are given the first alternative.
A single repeat with one alternate ending:
\repeat volta 2 { c4 d e f | }
\alternative {
{ c2 e | }
{ f2 g | }
}
c1
A single repeat with more than one alternate ending:
\repeat volta 4 { c4 d e f | }
\alternative {
{ c2 e | }
{ f2 g | }
}
c1
Multiple repeats with more than one alternate ending:
\repeat volta 3 { c4 d e f | }
\alternative {
{ c2 e | }
{ f2 g | }
{ a2 g | }
}
c1
Nota: If there are two or more alternatives, nothing should appear
between the closing brace of one and the opening brace of the next
in an \alternative block, otherwise you will not get the
expected number of endings.
Nota: If you include \relative inside a
\repeat without explicitly instantiating the
Voice context, extra (unwanted) staves will appear. See
An extra staff appears.
If a repeat starts in the middle of a measure and has no alternate
endings, normally the end of the repeat will also fall in the
middle of a measure, so that the two ends add up to one complete
measure. In such cases, the repeat signs do not constitute true
bar lines. Do not use \partial commands or bar checks
where these repeat signs are printed:
% no \partial here
c4 e g % no bar check here
% no \partial here
\repeat volta 4 {
e4 |
c2 e |
% no \partial here
g4 g g % no bar check here
}
% no \partial here
g4 |
a2 a |
g1 |
Similarly, if a repeat begins with the initial partial measure of
a score and has no alternate endings, the same conditions apply as
in the above example, except that in this case the \partial
command is required at the beginning of the score:
\partial 4 % required
\repeat volta 4 {
e4 |
c2 e |
% no \partial here
g4 g g % no bar check here
}
% no \partial here
g4 |
a2 a |
g1 |
When alternate endings are added to a repeat that begins with an
incomplete measure, it becomes necessary to set the
Timing.measureLength context property manually, in the
following specific places:
-
at the start of any incomplete measures in the
\alternativeblock, which normally occur at the end of each alternative, except (in most cases) the last. - at the start of each alternative, except the first.
\partial 4
\repeat volta 2 { e4 | c2 e | }
\alternative {
{
f2 d |
\set Timing.measureLength = #(ly:make-moment 3/4)
g4 g g % optional bar check is allowed here
}
{
\set Timing.measureLength = #(ly:make-moment 4/4)
a2 a |
}
}
g1 |
The measureLength property is described in Gestione del tempo.
The \inStaffSegno command can be used to place the segno
symbol in cooperation with the \repeat volta command.
Alternative bar line symbols can be set in a Score context by
overriding the properties segnoType,
startRepeatSegnoType, endRepeatSegnoType or
doubleRepeatSegnoType as required.
e1
\repeat volta 2 {
\inStaffSegno
f2 g a b
}
c1_"D.S." \bar "|."
Ties may be added to a second ending:
c1
\repeat volta 2 { c4 d e f~ }
\alternative {
{ f2 d }
{ f2\repeatTie f, }
}
Frammenti di codice selezionati
Shortening volta brackets
By default, the volta brackets will be drawn over all of the
alternative music, but it is possible to shorten them by setting
voltaSpannerDuration. In the next example, the bracket only
lasts one measure, which is a duration of 3/4.
\relative c'' {
\time 3/4
c4 c c
\set Score.voltaSpannerDuration = #(ly:make-moment 3/4)
\repeat volta 5 { d4 d d }
\alternative {
{
e4 e e
f4 f f
}
{ g4 g g }
}
}
Adding volta brackets to additional staves
The Volta_engraver by default resides in the Score
context, and brackets for the repeat are thus normally only printed
over the topmost staff. This can be adjusted by adding the
Volta_engraver to the Staff context where the brackets
should appear; see also the “Volta multi staff” snippet.
<<
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
\new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' }
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
>>
Setting the double repeat default for volte
There are three different styles of double repeats for volte, that can
be set using doubleRepeatType.
\relative c'' {
\repeat volta 1 { c1 }
\set Score.doubleRepeatType = #":..:"
\repeat volta 1 { c1 }
\set Score.doubleRepeatType = #":|.|:"
\repeat volta 1 { c1 }
\set Score.doubleRepeatType = #":|.:"
\repeat volta 1 { c1 }
}
Numeri di battuta alternativi
Si possono impostare due metodi alternativi di numerazione della battuta, utili specialmente per le ripetizioni.
\relative c'{
\set Score.alternativeNumberingStyle = #'numbers
\repeat volta 3 { c4 d e f | }
\alternative {
{ c4 d e f | c2 d \break }
{ f4 g a b | f4 g a b | f2 a | \break }
{ c4 d e f | c2 d }
}
c1 \break
\set Score.alternativeNumberingStyle = #'numbers-with-letters
\repeat volta 3 { c,4 d e f | }
\alternative {
{ c4 d e f | c2 d \break }
{ f4 g a b | f4 g a b | f2 a | \break }
{ c4 d e f | c2 d }
}
c1
}
Vedi anche
Music Glossary: repeat, volta.
Notation Reference: Stanghette, Modifying context plug-ins, Modifying ties and slurs, Gestione del tempo.
Snippets: Repeats.
Internals Reference: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.
Problemi noti e avvertimenti
Slurs that span from a \repeat block into an
\alternative block will only work for the first alternative
ending. The visual appearance of a continuing slur in other
alternative blocks may be simulated with \repeatTie if the
slur extends into only one note in the alternative block, although
this method does not work in TabStaff. Other methods which
may be tailored to indicate continuing slurs over several notes in
alternative blocks, and which also work in TabStaff contexts,
are shown in Modifying ties and slurs.
Also, slurs cannot wrap around from the end of one alternative back to the beginning of the repeat.
Glissandi that span from a \repeat block into an
\alternative block will only work for the first alternative
ending. The visual appearance of a continuing glissando in other
alternative blocks may be indicated by coding a glissando starting
on a hidden grace note. For an example, see
“Extending glissandi across repeats” under Selected Snippets
in Glissando.
If a repeat that begins with an incomplete measure has an
\alternative block that contains modifications to the
measureLength property, using \unfoldRepeats will
result in wrongly-placed bar lines and bar check warnings.
A nested repeat like
\repeat … \repeat … \alternative
is ambiguous, since it is not clear to which \repeat the
\alternative belongs. This ambiguity is resolved by always
having the \alternative belong to the inner \repeat.
For clarity, it is advisable to use braces in such situations.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Normal repeats ] | [ Su : Long repeats ] | [ Written-out repeats > ] | ||
Manual repeat marks
Nota: These methods are only used for displaying unusual repeat
constructs, and may produce unexpected behavior. In most cases,
repeats should be created using the standard \repeat command
or by printing the relevant bar lines. For more information, see
Stanghette.
The property repeatCommands can be used to control the
layout of repeats. Its value is a Scheme list of repeat commands.
-
start-repeat Print a
.|:bar line.c1 \set Score.repeatCommands = #'(start-repeat) d4 e f g c1
As per standard engraving practice, repeat signs are not printed at the beginning of a piece.
-
end-repeat Print a
:|.bar line:c1 d4 e f g \set Score.repeatCommands = #'(end-repeat) c1
-
(volta number) ... (volta #f) Create a new volta with the specified number. The volta bracket must be explicitly terminated, or it will not be printed.
f4 g a b \set Score.repeatCommands = #'((volta "2")) g4 a g a \set Score.repeatCommands = #'((volta #f)) c1
Multiple repeat commands may occur at the same point:
f4 g a b \set Score.repeatCommands = #'((volta "2, 5") end-repeat) g4 a g a c1 \set Score.repeatCommands = #'((volta #f) (volta "95") end-repeat) b1 \set Score.repeatCommands = #'((volta #f))
Text can be included with the volta bracket. The text can be a number or numbers or markup text, see Formatting text. The simplest way to use markup text is to define the markup first, then include the markup in a Scheme list.
voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } }
\relative c'' {
c1
\set Score.repeatCommands =
#(list(list 'volta voltaAdLib) 'start-repeat)
c4 b d e
\set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat)
f1
\set Score.repeatCommands = #'((volta #f))
}
Frammenti di codice selezionati
Printing a repeat sign at the beginning of a piece
A .|: bar line can be printed at the beginning of a piece, by
overriding the relevant property:
\relative c'' {
\once \override Score.BreakAlignment.break-align-orders =
#(make-vector 3 '(instrument-name
left-edge
ambitus
breathing-sign
clef
key-signature
time-signature
staff-bar
custos))
\once \override Staff.TimeSignature.space-alist =
#'((first-note . (fixed-space . 2.0))
(right-edge . (extra-space . 0.5))
;; free up some space between time signature
;; and repeat bar line
(staff-bar . (extra-space . 1)))
\bar ".|:"
c1
d1
d4 e f g
}
Vedi anche
Notation Reference: Stanghette, Formatting text.
Snippets: Repeats.
Internals Reference: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Manual repeat marks ] | [ Su : Long repeats ] | [ Short repeats > ] | ||
Written-out repeats
By using the unfold command, repeats can be used to simplify the
writing out of repetitious music. The syntax is
\repeat unfold repeatcount musicexpr
where musicexpr is a music expression and
repeatcount is the number of times
musicexpr is repeated.
\repeat unfold 2 { c4 d e f }
c1
In some cases, especially in a \relative context, the
\repeat unfold function is not the same as writing out the
music expression multiple times. E.g,
\repeat unfold 2 { a'4 b c }
is not equivalent to
a'4 b c | a'4 b c
Unfold repeats can be made with alternate endings.
\repeat unfold 2 { c4 d e f }
\alternative {
{ c2 g' }
{ c,2 b }
}
c1
If there are more repeats than there are alternate endings, the first alternative is applied multiple times until the remaining alternatives make up the total number of repeats.
\repeat unfold 4 { c4 d e f }
\alternative {
{ c2 g' }
{ c,2 b }
{ e2 d }
}
c1
If there are more alternate endings than repeats then only the first alternatives are applied. The remaining alternatives will be ignored and not printed.
\repeat unfold 2 { c4 d e f }
\alternative {
{ c2 g' }
{ c,2 b }
{ e2 d }
}
c1
It is also possible to nest multiple unfold functions (with or
without alternate endings).
\repeat unfold 2 {
\repeat unfold 2 { c4 d e f }
\alternative {
{ c2 g' }
{ c,2 b }
}
}
c1
Chord constructs can be repeated by the chord repetition symbol
q. See Chord repetition.
Nota: If you include \relative inside a \repeat
without explicitly instantiating the Voice context, extra
(unwanted) staves will appear. See
An extra staff appears.
Vedi anche
Notation Reference: Chord repetition.
Snippets: Repeats.
Internals Reference: RepeatedMusic, UnfoldedRepeatedMusic.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Written-out repeats ] | [ Su : Repeats ] | [ Percent repeats > ] | ||
1.4.2 Short repeats
This section discusses how to input short repeats. Short repeats can take two forms: slashes or percent signs to represent repeats of a single note, a single measure or two measures, and tremolos otherwise.
| Percent repeats | ||
| Tremolo repeats |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Short repeats ] | [ Su : Short repeats ] | [ Tremolo repeats > ] | ||
Percent repeats
Repeated short patterns are printed once, and the repeated pattern is replaced with a special sign.
The syntax is
\repeat percent number musicexpr
where musicexpr is a music expression.
Patterns that are shorter than one measure are replaced by slashes.
\repeat percent 4 { c128 d e f }
\repeat percent 4 { c64 d e f }
\repeat percent 5 { c32 d e f }
\repeat percent 4 { c16 d e f }
\repeat percent 4 { c8 d }
\repeat percent 4 { c4 }
\repeat percent 2 { c2 }
Patterns of one or two measures are replaced by percent-like symbols.
\repeat percent 2 { c4 d e f }
\repeat percent 2 { c2 d }
\repeat percent 2 { c1 }
\repeat percent 3 { c4 d e f | c2 g' }
Patterns that are shorter than one measure but contain mixed durations use a double-percent symbol.
\repeat percent 4 { c8. <d f>16 }
\repeat percent 2 { \tuplet 3/2 { r8 c d } e4 }
Frammenti di codice selezionati
Percent repeat counter
Measure repeats of more than two repeats can get a counter when the convenient property is switched, as shown in this example:
\relative c'' {
\set countPercentRepeats = ##t
\repeat percent 4 { c1 }
}
Percent repeat count visibility
Percent repeat counters can be shown at regular intervals by setting
the context property repeatCountVisibility.
\relative c'' {
\set countPercentRepeats = ##t
\set repeatCountVisibility = #(every-nth-repeat-count-visible 5)
\repeat percent 10 { c1 } \break
\set repeatCountVisibility = #(every-nth-repeat-count-visible 2)
\repeat percent 6 { c1 d1 }
}
Isolated percent repeats
Isolated percents can also be printed.
makePercent =
#(define-music-function (parser location note) (ly:music?)
"Make a percent repeat the same length as NOTE."
(make-music 'PercentEvent
'length (ly:music-length note)))
\relative c'' {
\makePercent s1
}
Vedi anche
Music Glossary: percent repeat, simile.
Snippets: Repeats.
Internals Reference: RepeatSlash, RepeatSlashEvent, DoubleRepeatSlash, PercentRepeat, PercentRepeatCounter, PercentRepeatedMusic, Percent_repeat_engraver, DoublePercentEvent, DoublePercentRepeat, DoublePercentRepeatCounter, Double_percent_repeat_engraver, Slash_repeat_engraver.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Percent repeats ] | [ Su : Short repeats ] | [ Simultaneous notes > ] | ||
Tremolo repeats
Tremolos can take two forms: alternation between two chords or two notes, and rapid repetition of a single note or chord. Tremolos consisting of an alternation are indicated by adding beams between the notes or chords being alternated, while tremolos consisting of the rapid repetition of a single note are indicated by adding beams or slashes to a single note.
To place tremolo marks between notes, use \repeat with
tremolo style:
\repeat tremolo 8 { c16 d }
\repeat tremolo 6 { c16 d }
\repeat tremolo 2 { c16 d }
The \repeat tremolo syntax expects exactly two notes within
the braces, and the number of repetitions must correspond to a
note value that can be expressed with plain or dotted notes. Thus,
\repeat tremolo 7 is valid and produces a double dotted
note, but \repeat tremolo 9 is not.
The duration of the tremolo equals the duration of the
braced expression multiplied by the number of repeats:
\repeat tremolo 8 { c16 d16 } gives a whole note tremolo,
notated as two whole notes joined by tremolo beams.
There are two ways to put tremolo marks on a single note. The
\repeat tremolo syntax is also used here, in which case
the note should not be surrounded by braces:
\repeat tremolo 4 c'16
The same output can be obtained by adding :N after
the note, where N indicates the duration of the
subdivision (it must be at least 8). If N is 8, one
beam is added to the note’s stem. If N is omitted,
the last value (stored in tremoloFlags) is used:
c2:8 c:32 c: c:
Frammenti di codice selezionati
Cross-staff tremolos
Since \repeat tremolo expects exactly two musical arguments for
chord tremolos, the note or chord which changes staff within a
cross-staff tremolo should be placed inside curly braces together with
its \change Staff command.
\new PianoStaff <<
\new Staff = "up" \relative c'' {
\key a \major
\time 3/8
s4.
}
\new Staff = "down" \relative c'' {
\key a \major
\time 3/8
\voiceOne
\repeat tremolo 6 {
<a e'>32
{
\change Staff = "up"
\voiceTwo
<cis a' dis>32
}
}
}
>>
Vedi anche
Snippets: Repeats.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Tremolo repeats ] | [ Su : Notazione musicale ] | [ Single voice > ] | ||
1.5 Simultaneous notes
Polyphony in music refers to having more than one voice occurring in a piece of music. Polyphony in LilyPond refers to having more than one voice on the same staff.
| 1.5.1 Single voice | ||
| 1.5.2 Multiple voices |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Simultaneous notes ] | [ Su : Simultaneous notes ] | [ Chorded notes > ] | ||
1.5.1 Single voice
This section discusses simultaneous notes inside the same voice.
| Chorded notes | ||
| Chord repetition | ||
| Simultaneous expressions | ||
| Clusters |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Single voice ] | [ Su : Single voice ] | [ Chord repetition > ] | ||
Chorded notes
A chord is formed by enclosing a set of pitches between <
and >. A chord may be followed by a duration just like simple
notes.
<a c e>1 <a c e>2 <f a c e>4 <a c>8. <g c e>16
Chords may also be followed by articulations, again just like simple notes.
<a c e>1\fermata <a c e>2-> <f a c e>4\prall <a c>8.^| <g c e>16-.
The notes within the chord themselves can also be followed by articulation and ornamentation.
<a c\prall e>1 <a-> c-^ e>2 <f-. a c-. e-.>4 <a-+ c-->8. <g\fermata c e\turn>16
However some notation, such as dynamics, hairpins and slurs must be attached to the chord, rather than notes within the chord, otherwise they will not print.
<a\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>) <a c e>\< <a c e> <a c e>\!
A chord acts merely as a container for its notes, its articulations and other attached elements. Consequently, a chord without notes inside does not actually have a duration. Any attached articulations will happen at the same musical time as the next following note or chord and be combined with them (for more complex possibilities of combining such elements, see Simultaneous expressions):
\grace { g8[( a b] }
<> ) \p \< -. -\markup \italic "sempre staccato"
\repeat unfold 4 { c4 e } c1\f
Relative mode can be used for pitches in chords. The first note of each chord is always relative to the first note of the chord that came before it, or in the case where no preceding chord exists, the pitch of the last note that came before the chord. All remaining notes in the chord are relative to the note that came before it within the same chord.
<a c e>1 <f a c> <a c e> <f' a c> <b, e b,>
For more information about chords, see Chord notation.
Vedi anche
Music Glossary: chord.
Learning Manual: Combining notes into chords.
Notation Reference: Chord notation, Articulations and ornamentations, Ottava relativa, Multiple voices.
Snippets: Simultaneous notes.
Problemi noti e avvertimenti
Chords containing more than two pitches within a staff space, such as ‘<e f! fis!>’, create overlapping noteheads. Depending on the situation, better representations might involve
- temporary use of Multiple voices, ‘<< f! \\ <e fis!> >>’,
- enharmonic transcription of one or more pitches, ‘<e f ges>’, or
- Clusters.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Chorded notes ] | [ Su : Single voice ] | [ Simultaneous expressions > ] | ||
Chord repetition
In order to save typing, a shortcut can be used to repeat the preceding
chord. The chord repetition symbol is q:
<a c e>1 q <f a c>2 q
As with regular chords, the chord repetition symbol can be used with durations, articulations, markups, slurs, beams, etc. as only the pitches of the previous chord are duplicated.
<a c e>1\p^"text" q2\<( q8)[-| q8.]\! q16-1-2-3 q8\prall
The chord repetition symbol always remembers the last instance of a chord so it is possible to repeat the most recent chord even if other non-chorded notes or rests have been added since.
<a c e>1 c'4 q2 r8 q8 | q2 c, |
However, the chord repetition symbol does not retain any dynamics, articulation or ornamentation within, or attached to, the previous chord.
<a-. c\prall e>1\sfz c'4 q2 r8 q8 | q2 c, |
To have some of them retained, the \chordRepeats function can be
be called explicitly with an extra argument specifying a list of
event types to keep unless events of that type are already
present on the q chord itself.
\relative c'' {
\chordRepeats #'(articulation-event)
{ <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
q2 c, |
}
Here using \chordRepeats inside of a \relative construction
produces unexpected results: once chord events have been expanded, they
are indistinguishable from having been entered as regular chords, making
\relative assign an octave based on their current context.
Since nested instances of \relative don’t affect one another,
another \relative inside of \chordRepeats can be used for
establishing the octave relations before expanding the repeat chords.
In that case, the whole content of the inner \relative does not
affect the outer one; hence the different octave entry of the final note
in this example.
\new Voice
\relative c'' {
\chordRepeats #'(articulation-event)
\relative c''
{ <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
q2 c |
}
Interactions with \relative occur only with explicit calls of
\chordRepeats: the implicit expansion at the start of typesetting
is done at a time where all instances of \relative have already
been processed.
Vedi anche
Notation Reference: Chord notation, Articulations and ornamentations.
Installed Files: ‘ly/chord-repetition-init.ly’.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Chord repetition ] | [ Su : Single voice ] | [ Clusters > ] | ||
Simultaneous expressions
One or more music expressions enclosed in double angle brackets are taken to be simultaneous. If the first expression begins with a single note or if the whole simultaneous expression appears explicitly within a single voice, the whole expression is placed on a single staff; otherwise the elements of the simultaneous expression are placed on separate staves.
The following examples show simultaneous expressions on one staff:
\new Voice { % explicit single voice
<< { a4 b g2 } { d4 g c,2 } >>
}
% single first note
a << { a4 b g } { d4 g c, } >>
This can be useful if the simultaneous sections have identical rhythms, but attempts to attach notes with different durations to the same stem will cause errors. Notes, articulations, and property changes in a single ‘Voice’ are collected and engraved in musical order:
<a c>4-. <>-. << c a >> << { c-. <c a> } { a s-. } >>
Multiple stems or beams or different note durations or properties at the same musical time require the use of multiple voices.
The following example shows how simultaneous expressions can generate multiple staves implicitly:
% no single first note
<< { a4 b g2 } { d4 g2 c,4 } >>
Here different rhythms cause no problems because they are interpreted in different voices.
Problemi noti e avvertimenti
If notes from two or more voices, with stems in the same direction, are placed at the same position on the staff and have no shift (or have the same shift specified), the message:
warning: ignoring too many clashing note columns
will appear during compilation. This message can be suppressed by:
\override NoteColumn.ignore-collision = ##t
However, this not only suppresses the warning but will prevent any collision resolution whatsover and may have other unintended effects (also see Known Issues in Collision resolution).
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Simultaneous expressions ] | [ Su : Single voice ] | [ Multiple voices > ] | ||
Clusters
A cluster indicates a continuous range of pitches to be played.
They can be denoted as the envelope of a set of notes. They are
entered by applying the function \makeClusters to a sequence
of chords, e.g.,
\makeClusters { <g b>2 <c g'> }
Ordinary notes and clusters can be put together in the same staff, even simultaneously. In such a case no attempt is made to automatically avoid collisions between ordinary notes and clusters.
Vedi anche
Music Glossary: cluster.
Snippets: Simultaneous notes.
Internals Reference: ClusterSpanner, ClusterSpannerBeacon, Cluster_spanner_engraver.
Problemi noti e avvertimenti
Clusters look good only if they span at least two chords; otherwise they appear too narrow.
Clusters do not have a stem and cannot indicate durations by themselves, but the length of the printed cluster is determined by the durations of the defining chords. Separate clusters need a separating rest between them.
Clusters do not produce MIDI output.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Clusters ] | [ Su : Simultaneous notes ] | [ Single-staff polyphony > ] | ||
1.5.2 Multiple voices
This section discusses simultaneous notes in multiple voices or multiple staves.
| Single-staff polyphony | ||
| Voice styles | ||
| Collision resolution | ||
| Automatic part combining | ||
| Writing music in parallel |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Multiple voices ] | [ Su : Multiple voices ] | [ Voice styles > ] | ||
Single-staff polyphony
Explicitly instantiating voices
The basic structure needed to achieve multiple independent voices in a single staff is illustrated in the following example:
\new Staff <<
\new Voice = "first"
{ \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d }
\new Voice= "second"
{ \voiceTwo d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
>>
Here, voices are instantiated explicitly and are given names. The
\voiceOne … \voiceFour commands set up the voices
so that first and third voices get stems up, second and fourth
voices get stems down, third and fourth voice note heads are
horizontally shifted, and rests in the respective voices are
automatically moved to avoid collisions. The \oneVoice
command returns all the voice settings to the neutral default
directions.
Temporary polyphonic passages
A temporary polyphonic passage can be created with the following construct:
<< { \voiceOne ... }
\new Voice { \voiceTwo ... }
>> \oneVoice
Here, the first expression within a temporary polyphonic passage is
placed into the Voice context which was in use immediately
before the polyphonic passage, and that same Voice context
continues after the temporary section. Other expressions within
the angle brackets are assigned to distinct temporary voices.
This allows lyrics to be assigned to one continuing voice before,
during and after a polyphonic section:
<<
\new Voice = "melody" {
a4
<<
{
\voiceOne
g f
}
\new Voice {
\voiceTwo
d2
}
>>
\oneVoice
e4
}
\new Lyrics \lyricsto "melody" {
This is my song.
}
>>
Here, the \voiceOne and \voiceTwo commands are
required to define the settings of each voice.
The double backslash construct
The << {...} \\ {...} >> construct, where the two (or
more) expressions are separated by double backslashes, behaves
differently to the similar construct without the double backslashes:
all the expressions within this construct are assigned
to new Voice contexts. These new Voice contexts
are created implicitly and are given the fixed names "1",
"2", etc.
The first example could be typeset as follows:
<<
{ r8 r16 g e8. f16 g8[ c,] f e16 d }
\\
{ d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
>>
This syntax can be used where it does not matter that temporary
voices are created and then discarded. These implicitly created
voices are given the settings equivalent to the effect of the
\voiceOne … \voiceFour commands, in the order in
which they appear in the code.
In the following example, the intermediate voice has stems up, therefore we enter it in the third place, so it becomes voice three, which has the stems up as desired. Spacer rests are used to avoid printing doubled rests.
<<
{ r8 g g g g f16 ees f8 d }
\\
{ ees,8 r ees r d r d r }
\\
{ d'8 s c s bes s a s }
>>
In all but the simplest works it is advisable to create explicit
Voice contexts as explained in
Contexts and engravers and
Explicitly instantiating voices.
Voice order
When entering multiple voices in the input file, use the following order:
Voice 1: highest Voice 2: lowest Voice 3: second highest Voice 4: second lowest Voice 5: third highest Voice 6: third lowest etc.
Though this may seem counterintuitive, it simplifies the automatic layout process. Note that the odd-numbered voices are given upstems, and the even-numbered voices are given downstems:
\new Staff <<
\time 2/4
{ f''2 } % 1: highest
\\
{ c'2 } % 2: lowest
\\
{ d''2 } % 3: second-highest
\\
{ e'2 } % 4: second-lowest
\\
{ b'2 } % 5: third-highest
\\
{ g'2 } % 6: third-lowest
>>
Nota: Lyrics, spanners (such as slurs, ties, hairpins etc.) cannot be created ‘across’ voices.
Identical rhythms
In the special case that we want to typeset parallel pieces of music
that have the same rhythm, we can combine them into a single
Voice context, thus forming chords. To achieve this, enclose
them in a simple simultaneous music construct within an explicit voice:
\new Voice <<
{ e4 f8 d e16 f g8 d4 }
{ c4 d8 b c16 d e8 b4 }
>>
This method leads to strange beamings and warnings if the pieces of music do not have the same rhythm.
Comandi predefiniti
\voiceOne,
\voiceTwo,
\voiceThree,
\voiceFour,
\oneVoice.
Vedi anche
Learning Manual: Voices contain music, Explicitly instantiating voices.
Notation Reference: Percussion staves, Pause invisibili, Stems.
Snippets: Simultaneous notes.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Single-staff polyphony ] | [ Su : Multiple voices ] | [ Collision resolution > ] | ||
Voice styles
Voices may be given distinct colors and shapes, allowing them to be easily identified:
<<
{ \voiceOneStyle d4 c2 b4 }
\\
{ \voiceTwoStyle e,2 e }
\\
{ \voiceThreeStyle b2. c4 }
\\
{ \voiceFourStyle g'2 g }
>>
The \voiceNeutralStyle command is used to revert to the
standard presentation.
Comandi predefiniti
\voiceOneStyle,
\voiceTwoStyle,
\voiceThreeStyle,
\voiceFourStyle,
\voiceNeutralStyle.
Vedi anche
Learning Manual: I'm hearing Voices, Other sources of information.
Snippets: Simultaneous notes.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Voice styles ] | [ Su : Multiple voices ] | [ Automatic part combining > ] | ||
Collision resolution
The note heads of notes in different voices with the same pitch, same note head and opposite stem direction are automatically merged, but notes with different note heads or the same stem direction are not. Rests opposite a stem in a different voice are shifted vertically. The following example shows three different circumstances, on beats 1 and 3 in bar 1 and beat 1 in bar 2, where the automatic merging fails.
<<
{
c8 d e d c d c4
g'2 fis
} \\ {
c2 c8. b16 c4
e,2 r
} \\ {
\oneVoice
s1
e8 a b c d2
}
>>
Notes with different note heads may be merged, with the exception of half-note heads and quarter-note heads, as shown below. Here the note heads on beat 1 of bar 1 are now merged:
<<
{
\mergeDifferentlyHeadedOn
c8 d e d c d c4
g'2 fis
} \\ {
c2 c8. b16 c4
e,2 r
} \\ {
\oneVoice
s1
e8 a b c d2
}
>>
Note heads with different dots as shown in beat 3 of bar 1 may be also be merged:
<<
{
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
c8 d e d c d c4
g'2 fis
} \\ {
c2 c8. b16 c4
e,2 r
} \\ {
\oneVoice
s1
e8 a b c d2
}
>>
The half note and eighth note at the start of the second measure
are incorrectly merged because the automatic merge cannot
successfully complete the merge when three or more notes line up in
the same note column, and in this case the merged note head is
incorrect. To allow the merge to select the correct note head
a \shift must be applied to the note that should not be
merged. Here, \shiftOn is applied to move the top
g out of the column, and \mergeDifferentlyHeadedOn
then works properly.
<<
{
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
c8 d e d c d c4
\shiftOn
g'2 fis
} \\ {
c2 c8. b16 c4
e,2 r
} \\ {
\oneVoice
s1
e8 a b c d2
}
>>
The \shiftOn command allows (but does not force) the notes
in a voice to be shifted. When \shiftOn is applied to a
voice, a note or chord in that voice is shifted only if its stem
would otherwise collide with a stem from another voice, and only
if the colliding stems point in the same direction. The
\shiftOff command prevents this type of shifting from
occurring.
By default, the outer voices (normally voices one and two) have
\shiftOff specified, while the inner voices (three and
above) have \shiftOn specified. When a shift is applied,
voices with upstems (odd-numbered voices) are shifted to the
right, and voices with downstems (even-numbered voices) are
shifted to the left.
Here is an example to help you visualize how an abbreviated polyphonic expression would be expanded internally.
Nota: Note that with three or more voices, the vertical order of voices in your input file should not be the same as the vertical order of voices on the staff!
\new Staff \relative c'' {
%% abbreviated entry
<<
{ f2 } % 1: highest
\\
{ g,2 } % 2: lowest
\\
{ d'2 } % 3: upper middle
\\
{ b2 } % 4: lower middle
>>
%% internal expansion of the above
<<
\new Voice = "1" { \voiceOne \shiftOff f'2 }
\new Voice = "2" { \voiceTwo \shiftOff g,2 }
\new Voice = "3" { \voiceThree \shiftOn d'2 } % shifts right
\new Voice = "4" { \voiceFour \shiftOn b2 } % shifts left
>>
}
Two additional commands, \shiftOnn and \shiftOnnn
provide further shift levels which may be specified temporarily to
resolve collisions in complex situations – see
Real music example.
Notes are only merged if they have opposing stem directions (as they have, for example, in voices one and two by default or when the stems are explicitly set in opposite directions).
Comandi predefiniti
\mergeDifferentlyDottedOn,
\mergeDifferentlyDottedOff,
\mergeDifferentlyHeadedOn,
\mergeDifferentlyHeadedOff.
\shiftOn,
\shiftOnn,
\shiftOnnn,
\shiftOff.
Frammenti di codice selezionati
Additional voices to avoid collisions
In some instances of complex polyphonic music, additional voices are
necessary to prevent collisions between notes. If more than four
parallel voices are needed, additional voices can be added by defining
a variable using the Scheme function context-spec-music.
voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
\relative c'' {
\time 3/4
\key d \minor
\partial 2
<<
{
\voiceOne
a4. a8
e'4 e4. e8
f4 d4. c8
}
\\
{
\voiceThree
f,2
bes4 a2
a4 s2
}
\\
{
\voiceFive
s2
g4 g2
f4 f2
}
\\
\bar "||"{
\voiceTwo
d2
d4 cis2
d4 bes2
}
>>
}
Forcing horizontal shift of notes
When the typesetting engine cannot cope, the following syntax can be used to override typesetting decisions. The units of measure used here are staff spaces.
\relative c' <<
{
<d g>2 <d g>
}
\\
{
<b f'>2
\once \override NoteColumn.force-hshift = #1.7
<b f'>2
}
>>
Vedi anche
Music Glossary: polyphony.
Learning Manual: Multiple notes at once, Voices contain music, Real music example.
Snippets: Simultaneous notes.
Internals Reference: NoteColumn, NoteCollision, RestCollision.
Problemi noti e avvertimenti
Using \override NoteColumn.ignore-collision = ##t will cause
differently headed notes in different voices to merge incorrectly.
\mergeDifferentlyHeadedOn
<< { c16 a' b a } \\ { c,2 } >>
\override NoteColumn.ignore-collision = ##t
<< { c16 a' b a } \\ { c,2 } >>
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Collision resolution ] | [ Su : Multiple voices ] | [ Writing music in parallel > ] | ||
Automatic part combining
Automatic part combining is used to merge two separate parts of music
onto a single staff. This can be especially helpful when typesetting
orchestral scores. A single Voice is printed while the two parts
of music are the same, but in places where they differ, a second
Voice is printed. Stem directions are set up & down accordingly
while Solo and a due parts are also identified and marked
appropriately.
The syntax for automatic part combining is:
\partcombine musicexpr1 musicexpr2
The following example demonstrates the basic functionality, putting parts on a single staff as polyphony and setting stem directions accordingly. The same variables are used for the independent parts and the combined staff.
instrumentOne = \relative c' {
c4 d e f |
R1 |
d'4 c b a |
b4 g2 f4 |
e1 |
}
instrumentTwo = \relative g' {
R1 |
g4 a b c |
d4 c b a |
g4 f( e) d |
e1 |
}
<<
\new Staff \instrumentOne
\new Staff \instrumentTwo
\new Staff \partcombine \instrumentOne \instrumentTwo
>>
Both parts have identical notes in the third measure, so only one
instance of the notes is printed. Stem, slur, and tie directions are
set automatically, depending on whether the parts are playing solo or in
unison. When needed in polyphony situations, the first part (with
context called one) gets “up” stems, while the second (called
two) always gets “down” stems. In solo situations, the first
and second parts get marked with “Solo” and “Solo II”,
respectively. The unison (a due) parts are marked with the
text “a2”.
Both arguments to \partcombine will be interpreted as separate
Voice contexts, so if the music is being specified in relative
mode then both parts must contain a \relative function,
i.e.,
\partcombine \relative … musicexpr1 \relative … musicexpr2
A \relative section that encloses a \partcombine has no
effect on the pitches of musicexpr1 or
musicexpr2.
In professional scores, voices are often kept apart from each other for
long passages of music even if some of the notes are the same in both
voices, and could just as easily be printed as unison. Combining notes
into a chord, or showing one voice as solo is, therefore, not ideal as
the \partcombine function considers each note separately. In this
case the \partcombine function can be overriden with the
following commands:
Commands ending in ...Once apply only to the next note in the
music expression.
-
\partcombineApartand\partcombineApartOncekeep the notes as two separate voices, even if they can be combined into a chord or unison. -
\partcombineChordsand\partcombineChordsOncecombine the notes into a chord. -
\partcombineUnisonoand\partcombineUnisonoOncecombine both voices as “unison”. -
\partcombineSoloIand\partcombineSoloIOnceprint only voice one, and mark it as a “Solo”. -
\partcombineSoloIIor\partcombineSoloIIOnceprint only voice two and mark it as a “Solo”. -
\partcombineAutomaticand\partcombineAutomaticOnceend the functions of the commands above, and revert back to the standard\partcombinefunctionality.
instrumentOne = \relative c' {
\partcombineApart c2^"apart" e |
\partcombineAutomatic e2^"auto" e |
\partcombineChords e'2^"chord" e |
\partcombineAutomatic c2^"auto" c |
\partcombineApart c2^"apart" \partcombineChordsOnce e^"chord once" |
c2 c |
}
instrumentTwo = \relative c' {
c2 c |
e2 e |
a,2 c |
c2 c' |
c2 c |
c2 c |
}
<<
\new Staff { \instrumentOne }
\new Staff { \instrumentTwo }
\new Staff { \partcombine \instrumentOne \instrumentTwo }
>>
Frammenti di codice selezionati
Combining two parts on the same staff
The part combiner tool ( \partcombine command ) allows the
combination of several different parts on the same staff. Text
directions such as “solo” or “a2” are added by default; to remove
them, simply set the property printPartCombineTexts to f.
For vocal scores (hymns), there is no need to add “solo/a2” texts,
so they should be switched off. However, it might be better not to use
it if there are any solos, as they won’t be indicated. In such cases,
standard polyphonic notation may be preferable.
This snippet presents the three ways two parts can be printed on a same
staff: standard polyphony, \partcombine without texts, and
\partcombine with texts.
musicUp = \relative c'' {
\time 4/4
a4 c4.( g8) a4 |
g4 e' g,( a8 b) |
c b a2.
}
musicDown = \relative c'' {
g4 e4.( d8) c4 |
r2 g'4( f8 e) |
d2 \stemDown a
}
\score {
<<
<<
\new Staff {
\set Staff.instrumentName = #"Standard polyphony"
<< \musicUp \\ \musicDown >>
}
\new Staff \with { printPartCombineTexts = ##f } {
\set Staff.instrumentName = #"PartCombine without texts"
\partcombine \musicUp \musicDown
}
\new Staff {
\set Staff.instrumentName = #"PartCombine with texts"
\partcombine \musicUp \musicDown
}
>>
>>
\layout {
indent = 6.0\cm
\context {
\Score
\override SystemStartBar.collapse-height = #30
}
}
}
Changing partcombine texts
When using the automatic part combining feature, the printed text for the solo and unison sections may be changed:
\new Staff <<
\set Staff.soloText = #"girl"
\set Staff.soloIIText = #"boy"
\set Staff.aDueText = #"together"
\partcombine
\relative c'' {
g4 g r r
a2 g
}
\relative c'' {
r4 r a( b)
a2 g
}
>>
Vedi anche
Notation Reference: Writing parts.
Snippets: Simultaneous notes.
Internals Reference: PartCombineMusic, Voice.
Problemi noti e avvertimenti
All \partcombine... functions can only accept two voices and are
not designed to work with lyrics; such that when one of the voices is
explicitly named in order to attach lyrics to it, the partcombiner will
stop working.
\partcombine... functions cannot be placed inside a \tuplet
or \relative block.
If printPartCombineTexts is set and the two voices play the same
notes “on and off”, in the same measure, the part combiner may
typeset a2 more than once in that measure.
\partcombine only knows when a note starts in a Voice; it
cannot, for example, remember if a note in one Voice has already
started when combining notes that have just started in the other
Voice. This can lead to a number of unexpected issues including
“Solo” or “Unison” marks being printed incorrectly.
\partcombine keeps all spanners (slurs, ties, hairpins etc.) in
the same Voice so that if any such spanners start or end in a
different Voice, they may not be printed properly or at all.
If the \partcombine function cannot combine both music
expressions (i.e. when both voices have different durations), it will
give the voices, internally, its own custom names: one and
two respectively. This means if there is any “switch” to a
differently named Voice context, the events in that differently
named Voice will be ignored.
Refer also to Known issues and warnings when using
\partcombine with tablature in Default tablatures and the
Note in Travature automatiche when using automatic beaming.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Automatic part combining ] | [ Su : Multiple voices ] | [ Staff notation > ] | ||
Writing music in parallel
Music for multiple parts can be interleaved in input code. The
function \parallelMusic accepts a list with the names of a
number of variables to be created, and a musical expression. The
content of alternate measures from the expression become the value
of the respective variables, so you can use them afterwards to
print the music.
Nota: Bar checks | must be used, and the measures must
be of the same length.
\parallelMusic #'(voiceA voiceB voiceC) {
% Bar 1
r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' |
r16 e'8.~ e'4 r16 e'8.~ e'4 |
c'2 c'2 |
% Bar 2
r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' |
r16 d'8.~ d'4 r16 d'8.~ d'4 |
c'2 c'2 |
}
\new StaffGroup <<
\new Staff << \voiceA \\ \voiceB >>
\new Staff { \clef bass \voiceC }
>>
Relative mode may be used. Note that the \relative command
is not used inside \parallelMusic itself. The notes are
relative to the preceding note in the voice, not to the previous
note in the input – in other words, relative notes for
voiceA ignore the notes in voiceB.
\parallelMusic #'(voiceA voiceB voiceC) {
% Bar 1
r8 g16 c e g, c e r8 g,16 c e g, c e |
r16 e8.~ e4 r16 e8.~ e4 |
c2 c |
% Bar 2
r8 a,16 d f a, d f r8 a,16 d f a, d f |
r16 d8.~ d4 r16 d8.~ d4 |
c2 c |
}
\new StaffGroup <<
\new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >>
\new Staff \relative c' { \clef bass \voiceC }
>>
This works quite well for piano music. This example maps four consecutive measures to four variables:
global = {
\key g \major
\time 2/4
}
\parallelMusic #'(voiceA voiceB voiceC voiceD) {
% Bar 1
a8 b c d |
d4 e |
c16 d e fis d e fis g |
a4 a |
% Bar 2
e8 fis g a |
fis4 g |
e16 fis g a fis g a b |
a4 a |
% Bar 3 ...
}
\score {
\new PianoStaff <<
\new Staff {
\global
<<
\relative c'' \voiceA
\\
\relative c' \voiceB
>>
}
\new Staff {
\global \clef bass
<<
\relative c \voiceC
\\
\relative c \voiceD
>>
}
>>
}
Vedi anche
Learning Manual: Organizing pieces with variables.
Snippets: Simultaneous notes.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Writing music in parallel ] | [ Su : Notazione musicale ] | [ Displaying staves > ] | ||
1.6 Staff notation
This section explains how to influence the appearance of staves, how to print scores with more than one staff, and how to add tempo indications and cue notes to staves.
| 1.6.1 Displaying staves | ||
| 1.6.2 Modifying single staves | ||
| 1.6.3 Writing parts |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Staff notation ] | [ Su : Staff notation ] | [ Instantiating new staves > ] | ||
1.6.1 Displaying staves
This section describes the different methods of creating and grouping staves.
| Instantiating new staves | ||
| Grouping staves | ||
| Nested staff groups | ||
| Separating systems |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Displaying staves ] | [ Su : Displaying staves ] | [ Grouping staves > ] | ||
Instantiating new staves
Staves (singular: staff) are created with
the \new or \context commands. For details, see
Creating and referencing contexts.
The basic staff context is Staff:
\new Staff { c4 d e f }
The DrumStaff context creates a five-line staff set up for
a typical drum set. Each instrument is shown with a different
symbol. The instruments are entered in drum mode following a
\drummode command, with each instrument specified by name.
For details, see Percussion staves.
\new DrumStaff {
\drummode { cymc hh ss tomh }
}
RhythmicStaff creates a single-line staff that only
displays the rhythmic values of the input. Real durations are
preserved. For details, see Mostrare i ritmi della melodia.
\new RhythmicStaff { c4 d e f }
TabStaff creates a tablature with six strings in standard
guitar tuning. For details, see Default tablatures.
\new TabStaff { c4 d e f }
There are two staff contexts specific for the notation of ancient
music: MensuralStaff and VaticanaStaff. They are
described in Pre-defined contexts.
The GregorianTranscriptionStaff context creates a staff to
notate modern Gregorian chant. It does not show bar lines.
\new GregorianTranscriptionStaff { c4 d e f e d }
New single staff contexts may be defined. For details, see Defining new contexts.
Vedi anche
Music Glossary: staff, staves.
Notation Reference: Creating and referencing contexts, Percussion staves, Mostrare i ritmi della melodia, Default tablatures, Pre-defined contexts, Staff symbol, Gregorian chant contexts, Mensural contexts, Defining new contexts.
Snippets: Staff notation.
Internals Reference: Staff, DrumStaff, GregorianTranscriptionStaff, RhythmicStaff, TabStaff, MensuralStaff, VaticanaStaff, StaffSymbol.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Instantiating new staves ] | [ Su : Displaying staves ] | [ Nested staff groups > ] | ||
Grouping staves
Various contexts exist to group single staves together in order to form multi-stave systems. Each grouping context sets the style of the system start delimiter and the behavior of bar lines.
If no context is specified, the default properties will be used: the group is started with a vertical line, and the bar lines are not connected.
<<
\new Staff { c1 c }
\new Staff { c1 c }
>>
In the StaffGroup context, the group is started with a
bracket and bar lines are drawn through all the staves.
\new StaffGroup <<
\new Staff { c1 c }
\new Staff { c1 c }
>>
In a ChoirStaff, the group starts with a bracket, but bar
lines are not connected.
\new ChoirStaff <<
\new Staff { c1 c }
\new Staff { c1 c }
>>
In a GrandStaff, the group begins with a brace, and bar
lines are connected between the staves.
\new GrandStaff <<
\new Staff { c1 c }
\new Staff { c1 c }
>>
The PianoStaff is identical to a GrandStaff, except
that it supports printing the instrument name directly. For
details, see Instrument names.
\new PianoStaff <<
\set PianoStaff.instrumentName = #"Piano"
\new Staff { c1 c }
\new Staff { c1 c }
>>
Each staff group context sets the property
systemStartDelimiter to one of the following values:
SystemStartBar, SystemStartBrace, or
SystemStartBracket. A fourth delimiter,
SystemStartSquare, is also available, but it must be
explicitly specified.
New staff group contexts may be defined. For details, see Defining new contexts.
Frammenti di codice selezionati
Use square bracket at the start of a staff group
The system start delimiter SystemStartSquare can be used by
setting it explicitly in a StaffGroup or ChoirStaff
context.
\score {
\new StaffGroup { <<
\set StaffGroup.systemStartDelimiter = #'SystemStartSquare
\new Staff { c'4 d' e' f' }
\new Staff { c'4 d' e' f' }
>> }
}
Display bracket with only one staff in a system
If there is only one staff in one of the staff types ChoirStaff
or StaffGroup, the bracket and the starting bar line will not be
displayed as standard behavior. This can be changed by overriding the
relevant properties.
Note that in contexts such as PianoStaff and GrandStaff
where the systems begin with a brace instead of a bracket, another
property has to be set, as shown on the second system in the example.
\markup \left-column {
\score {
\new StaffGroup <<
% Must be lower than the actual number of staff lines
\override StaffGroup.SystemStartBracket.collapse-height = #1
\override Score.SystemStartBar.collapse-height = #1
\new Staff {
c'1
}
>>
\layout { }
}
\null
\score {
\new PianoStaff <<
\override PianoStaff.SystemStartBrace.collapse-height = #1
\override Score.SystemStartBar.collapse-height = #1
\new Staff {
c'1
}
>>
\layout { }
}
}
Mensurstriche layout (bar lines between the staves)
The mensurstriche-layout where the bar lines do not show on the staves
but between staves can be achieved with a StaffGroup instead of
a ChoirStaff. The bar line on staves is blanked out by setting
the transparent property.
global = {
\override Staff.BarLine.transparent = ##t
s1 s
% the final bar line is not interrupted
\revert Staff.BarLine.transparent
\bar "|."
}
\new StaffGroup \relative c'' {
<<
\new Staff { << \global { c1 c } >> }
\new Staff { << \global { c c } >> }
>>
}
Vedi anche
Music Glossary: brace, bracket, grand staff.
Notation Reference: Instrument names, Defining new contexts.
Snippets: Staff notation.
Internals Reference: Staff, StaffGroup, ChoirStaff, GrandStaff, PianoStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
Problemi noti e avvertimenti
PianoStaff does not, by default, accept ChordNames.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Grouping staves ] | [ Su : Displaying staves ] | [ Separating systems > ] | ||
Nested staff groups
Staff-group contexts can be nested to arbitrary depths. In this case, each child context creates a new bracket adjacent to the bracket of its parent group.
\new StaffGroup <<
\new Staff { c2 c | c2 c }
\new StaffGroup <<
\new Staff { g2 g | g2 g }
\new StaffGroup \with {
systemStartDelimiter = #'SystemStartSquare
}
<<
\new Staff { e2 e | e2 e }
\new Staff { c2 c | c2 c }
>>
>>
>>
New nested staff group contexts can be defined. For details, see Defining new contexts.
Frammenti di codice selezionati
Nesting staves
The property systemStartDelimiterHierarchy can be used to make
more complex nested staff groups. The command \set
StaffGroup.systemStartDelimiterHierarchy takes an alphabetical list of
the number of staves produced. Before each staff a system start
delimiter can be given. It has to be enclosed in brackets and takes as
much staves as the brackets enclose. Elements in the list can be
omitted, but the first bracket takes always the complete number of
staves. The possibilities are SystemStartBar,
SystemStartBracket, SystemStartBrace, and
SystemStartSquare.
\new StaffGroup
\relative c'' <<
\set StaffGroup.systemStartDelimiterHierarchy
= #'(SystemStartSquare (SystemStartBrace (SystemStartBracket a
(SystemStartSquare b) ) c ) d)
\new Staff { c1 }
\new Staff { c1 }
\new Staff { c1 }
\new Staff { c1 }
\new Staff { c1 }
>>
Vedi anche
Notation Reference: Grouping staves, Instrument names, Defining new contexts.
Snippets: Staff notation.
Internals Reference: StaffGroup, ChoirStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Nested staff groups ] | [ Su : Displaying staves ] | [ Modifying single staves > ] | ||
Separating systems
If the number of systems per page changes from page to page it is
customary to separate the systems by placing a system separator mark
between them. By default the system separator is blank, but can be
turned on with a \paper option.
\book {
\score {
\new StaffGroup <<
\new Staff {
\relative c'' {
c4 c c c
\break
c4 c c c
}
}
\new Staff {
\relative c'' {
c4 c c c
\break
c4 c c c
}
}
>>
}
\paper {
system-separator-markup = \slashSeparator
% following commands are needed only to format this documentation
paper-width = 100\mm
paper-height = 100\mm
tagline = ##f
}
}
Vedi anche
Notation Reference: Page layout.
Snippets: Staff notation.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Separating systems ] | [ Su : Staff notation ] | [ Staff symbol > ] | ||
1.6.2 Modifying single staves
This section explains how to change specific attributes of one staff: for example, modifying the number of staff lines or the staff size. Methods to start and stop staves and set ossia sections are also described.
| Staff symbol | ||
| Ossia staves | ||
| Hiding staves |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Modifying single staves ] | [ Su : Modifying single staves ] | [ Ossia staves > ] | ||
Staff symbol
The \stopStaff and \startStaff commands can be used to
stop or (re)start the staff lines respectively, from being printed at
any point witin a score.
\stopStaff f4 d \startStaff g, e f'4 d \stopStaff g, e f'4 d \startStaff g, e
Comandi predefiniti
\startStaff,
\stopStaff.
The lines of a staff belong to the StaffSymbol grob (including
ledger lines) can be modified using StaffSymbol properties, but
these modifications must be made before the staff is (re)started.
The number of staff lines can be altered,
f4 d \stopStaff \override Staff.StaffSymbol.line-count = #2 \startStaff g, e | f'4 d \stopStaff \revert Staff.StaffSymbol.line-count \startStaff g, e |
The position of each staff line can also be altered. A list of
numbers sets each line’s position. 0 corresponds to the normal
center line, and the normal line positions are
(-4 -2 0 2 4). A single staff line is
printed for every value entered so that the number of staff lines, as
well as their position, can be changed with a single override.
f4 d \stopStaff \override Staff.StaffSymbol.line-positions = #'(1 3 5 -1 -3) \startStaff g, e | f'4 d \stopStaff \override Staff.StaffSymbol.line-positions = #'(8 6.5 -6 -8 -0.5) \startStaff g, e
To preserve typical stem directions (in the bottom half of the staff stems point up, in the top half they point down), align the center line (or space) of the customized staff with the position of the normal center line (0). The clef position and the position of middle C may need to be adjusted accordingly to fit the new lines. See Chiave.
Staff line thickness can be altered. Ledger lines and note stems, by default, are also affected.
\new Staff \with {
\override StaffSymbol.thickness = #3
}
{ f4 d g, e }
However, it is possible to set ledger line thickness independently of staff lines. The two values required multiply the staff line thickness with the staff line spacing and are then added together to give the ledger line thickness.
\new Staff \with {
\override StaffSymbol.thickness = #2
\override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4)
}
{ f'4 a, a,, f }
The vertical positions of ledger lines can be altered,
\new Staff \with {
\override StaffSymbol.ledger-positions = #'(-3 -2 -1 2 5 6)
}
{ f'4 a, a,, f }
Additional ledger lines can be made to appear above or below note heads depending on the current position relative to other note heads that also have their own ledger lines.
\new Staff \with {
\override StaffSymbol.ledger-extra = #4
}
{ f'4 a, d, f, }
Ledger lines can also be made to appear inside the staff where custom
staff lines are required. The example shows the default position of
ledger lines when the explicit ledger-position is and is not set.
The \stopStaff is needed in the example to revert the
\override for the whole StaffSymbol.
The distance between staff lines can be altered. This affects ledger line spacing as well.
\new Staff \with {
\override StaffSymbol.staff-space = #1.5
}
{ f'4 d, g, e, }
Frammenti di codice selezionati
Making some staff lines thicker than the others
For educational purposes, a staff line can be thickened (e.g., the
middle line, or to emphasize the line of the G clef). This can be
achieved by adding extra lines very close to the line that should be
emphasized, using the line-positions property of the
StaffSymbol object.
{
\override Staff.StaffSymbol.line-positions =
#'(-4 -2 -0.2 0 0.2 2 4)
d'4 e' f' g'
}
Vedi anche
Music Glossary: line, ledger line, staff.
Notation Reference: Chiave.
Snippets: Staff notation.
Internals Reference: StaffSymbol, staff-symbol-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Staff symbol ] | [ Su : Modifying single staves ] | [ Hiding staves > ] | ||
Ossia staves
Ossia staves can be set by creating a new simultaneous staff in the appropriate location:
\new Staff \relative c'' {
c4 b d c
<<
{ c4 b d c }
\new Staff { e4 d f e }
>>
c4 b c2
}
However, the above example is not what is usually desired. To create ossia staves that are above the original staff, have no time signature or clef, and have a smaller font size, tweaks must be used. The Learning Manual describes a specific technique to achieve this goal, beginning with Nesting music expressions.
The following example uses the alignAboveContext property
to align the ossia staff. This method is most appropriate when
only a few ossia staves are needed.
\new Staff = main \relative c'' {
c4 b d c
<<
{ c4 b d c }
\new Staff \with {
\remove "Time_signature_engraver"
alignAboveContext = #"main"
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
firstClef = ##f
}
{ e4 d f e }
>>
c4 b c2
}
If many isolated ossia staves are needed, creating an empty
Staff context with a specific context id may be more
appropriate; the ossia staves may then be created by
calling this context and using \startStaff and
\stopStaff at the desired locations. The benefits of this
method are more apparent if the piece is longer than the following
example.
<<
\new Staff = ossia \with {
\remove "Time_signature_engraver"
\override Clef.transparent = ##t
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
}
{ \stopStaff s1*6 }
\new Staff \relative c' {
c4 b c2
<<
{ e4 f e2 }
\context Staff = ossia {
\startStaff e4 g8 f e2 \stopStaff
}
>>
g4 a g2 \break
c4 b c2
<<
{ g4 a g2 }
\context Staff = ossia {
\startStaff g4 e8 f g2 \stopStaff
}
>>
e4 d c2
}
>>
Using the \Staff \RemoveEmptyStaves command to create ossia
staves may be used as an alternative. This method is most
convenient when ossia staves occur immediately following a line
break. For more information about
\Staff \RemoveEmptyStaves, see Hiding staves.
<<
\new Staff = ossia \with {
\remove "Time_signature_engraver"
\override Clef.transparent = ##t
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
} \relative c'' {
R1*3
c4 e8 d c2
}
\new Staff \relative c' {
c4 b c2
e4 f e2
g4 a g2 \break
c4 b c2
g4 a g2
e4 d c2
}
>>
\layout {
\context {
\Staff \RemoveEmptyStaves
\override VerticalAxisGroup.remove-first = ##t
}
}
Frammenti di codice selezionati
Vertically aligning ossias and lyrics
This snippet demonstrates the use of the context properties
alignBelowContext and alignAboveContext to control the
positioning of lyrics and ossias.
\paper {
ragged-right = ##t
}
\relative c' <<
\new Staff = "1" { c4 c s2 }
\new Staff = "2" { c4 c s2 }
\new Staff = "3" { c4 c s2 }
{ \skip 2
<<
\lyrics {
\set alignBelowContext = #"1"
lyrics4 below
}
\new Staff \with {
alignAboveContext = #"3"
fontSize = #-2
\override StaffSymbol.staff-space = #(magstep -2)
\remove "Time_signature_engraver"
} {
\tuplet 6/4 {
\override TextScript.padding = #3
c8[^"ossia above" d e d e f]
}
}
>>
}
>>
Vedi anche
Music Glossary: ossia, staff, Frenched staff.
Learning Manual: Nesting music expressions, Size of objects, Length and thickness of objects.
Notation Reference: Hiding staves.
Snippets: Staff notation.
Internals Reference: StaffSymbol.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Ossia staves ] | [ Su : Modifying single staves ] | [ Writing parts > ] | ||
Hiding staves
Staff lines can be hidden by removing the
Staff_symbol_engraver from the Staff context. As an
alternative, \stopStaff may be used.
\new Staff \with {
\remove "Staff_symbol_engraver"
}
\relative c''' { a8 f e16 d c b a2 }
Empty staves can be hidden by setting the
\Staff \RemoveEmptyStaves command in the \layout
block. In orchestral scores, this style is known as ‘Frenched
Score’. By default, this command hides and removes all empty
staves in a score except for those in the first system.
Nota: A staff is considered empty when it contains only multi-measure rests, rests, skips, spacer rests, or a combination of these elements.
\layout {
\context {
\Staff \RemoveEmptyStaves
}
}
\relative c' <<
\new Staff {
e4 f g a \break
b1 \break
a4 b c2
}
\new Staff {
c,4 d e f \break
R1 \break
f4 g c,2
}
>>
\Staff \RemoveEmptyStaves can also be used to create ossia
sections for a staff. For details, see Ossia staves.
The \VaticanaStaff \RemoveEmptyStaves command may be used to
hide empty staves in ancient music contexts. Similarly,
\RhythmicStaff \RemoveEmptyStaves may be used to hide empty
RhythmicStaff contexts.
Comandi predefiniti
\Staff \RemoveEmptyStaves,
\VaticanaStaff \RemoveEmptyStaves,
\RhythmicStaff \RemoveEmptyStaves.
Frammenti di codice selezionati
Removing the first empty line
The first empty staff can also be removed from the score by setting the
VerticalAxisGroup property remove-first. This can be done
globally inside the \layout block, or locally inside the
specific staff that should be removed. In the latter case, you have to
specify the context (Staff applies only to the current staff) in
front of the property.
The lower staff of the second staff group is not removed, because the setting applies only to the specific staff inside of which it is written.
\layout {
\context {
\Staff \RemoveEmptyStaves
% To use the setting globally, uncomment the following line:
% \override VerticalAxisGroup.remove-first = ##t
}
}
\new StaffGroup <<
\new Staff \relative c' {
e4 f g a \break
c1
}
\new Staff {
% To use the setting globally, comment this line,
% uncomment the line in the \layout block above
\override Staff.VerticalAxisGroup.remove-first = ##t
R1 \break
R
}
>>
\new StaffGroup <<
\new Staff \relative c' {
e4 f g a \break
c1
}
\new Staff {
R1 \break
R
}
>>
Vedi anche
Music Glossary: Frenched staff.
Learning Manual: Visibility and color of objects.
Notation Reference: Changing context default settings, Staff symbol, Ossia staves, Hidden notes, Pause invisibili, Visibility of objects.
Snippets: Staff notation.
Internals Reference: ChordNames, FiguredBass, Lyrics, Staff, VerticalAxisGroup, Staff_symbol_engraver.
Problemi noti e avvertimenti
Removing Staff_symbol_engraver also hides bar lines. If
bar line visibility is forced, formatting errors may occur. In
this case, use the following overrides instead of removing the
engraver:
\override StaffSymbol.stencil = ##f \override NoteHead.no-ledgers = ##t
For the Known issues and warnings associated with
\Staff \RemoveEmptyStaves see
Changing context default settings.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Hiding staves ] | [ Su : Staff notation ] | [ Instrument names > ] | ||
1.6.3 Writing parts
This section explains how to insert tempo indications and instrument names into a score. Methods to quote other voices and format cue notes are also described.
| Instrument names | ||
| Quoting other voices | ||
| Formatting cue notes |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Writing parts ] | [ Su : Writing parts ] | [ Quoting other voices > ] | ||
Instrument names
Instrument names can be printed on the left side of staves in the
Staff, PianoStaff, StaffGroup, GrandStaff
and ChoirStaff contexts. The value of
instrumentName is used for the first staff, and the value
of shortInstrumentName is used for all succeeding staves.
\new Staff \with {
instrumentName = #"Violin "
shortInstrumentName = #"Vln. "
}
{ c4.. g'16 c4.. g'16 \break | c1 }
\markup can be used to create more complex instrument names:
\new Staff \with {
instrumentName = \markup {
\column { "Clarinetti"
\line { "in B" \smaller \flat }
}
}
}
{ c4 c,16 d e f g2 }
When two or more staff contexts are grouped together, the instrument
names and short instrument names are centered by default. To center
multi-line instrument names, \center-column must be used:
<<
\new Staff \with {
instrumentName = #"Flute"
}
{ f2 g4 f }
\new Staff \with {
instrumentName = \markup {
\center-column { "Clarinet"
\line { "in B" \smaller \flat }
}
}
}
{ c4 b c2 }
>>
However, if the instrument names are longer, the instrument names in a
staff group may not be centered unless the indent and
short-indent settings are increased. For details about these
settings, see \paper variables for shifts and indents.
\relative c'' {
<<
\new Staff \with {
instrumentName = #"Alto Flute in G"
shortInstrumentName = #"Flt."
}
{
f2 g4 f \break
g4 f g2
}
\new Staff \with {
instrumentName = #"Clarinet"
shortInstrumentName = #"Clar."
}
{
c,4 b c2 \break
c2 b4 c
}
>>
}
\layout {
indent = 3.0\cm
short-indent = 1.5\cm
}
To add instrument names to other contexts (such as ChordNames or
FiguredBass), Instrument_name_engraver must be added to
that context. For details, see Modifying context plug-ins.
The shortInstrumentName may be changed in the middle of a piece.
However, only the first instance of instrumentName will be
printed and subsequent changes will be ignored:
\new Staff \with {
instrumentName = #"Flute"
shortInstrumentName = #"Flt."
}
{
c1 c c c \break
c1 c c c \break
\set Staff.instrumentName = #"Clarinet"
\set Staff.shortInstrumentName = #"Clt."
c1 c c c \break
c1 c c c \break
}
If an instrument switch is needed,
\addInstrumentDefinition may be used in combination with
\instrumentSwitch to create a detailed list of the
necessary changes for the switch. The
\addInstrumentDefinition command has two arguments: an
identifying string, and an association list of context properties
and values to be used for the instrument. It must be placed in
the toplevel scope. \instrumentSwitch is used in the music
expression to declare the instrument switch:
\addInstrumentDefinition #"contrabassoon"
#`((instrumentTransposition . ,(ly:make-pitch -1 0 0))
(shortInstrumentName . "Cbsn.")
(clefGlyph . "clefs.F")
(middleCPosition . 6)
(clefPosition . 2)
(instrumentCueName . ,(make-bold-markup "cbsn."))
(midiInstrument . "bassoon"))
\new Staff \with {
instrumentName = #"Bassoon"
}
\relative c' {
\clef tenor
\compressFullBarRests
c2 g'
R1*16
\instrumentSwitch "contrabassoon"
c,,2 g \break
c,1 ~ | c1
}
Vedi anche
Notation Reference:
\paper variables for shifts and indents,
Modifying context plug-ins.
Snippets: Staff notation.
Internals Reference: InstrumentName, PianoStaff, Staff.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Instrument names ] | [ Su : Writing parts ] | [ Formatting cue notes > ] | ||
Quoting other voices
It is very common for one voice to use the same notes as those from another voice. For example, first and second violins playing the same phrase during a particular passage of the music. This is done by letting one voice quote the other, without having to re-enter the music all over again for the second voice.
The \addQuote command, used in the top level scope, defines a
stream of music from which fragments can be quoted.
The \quoteDuring command is used to indicate the point where the
quotation begins. It is followed by two arguments: the name of the
quoted voice, as defined with \addQuote, and a music expression
for the duration of the quote.
fluteNotes = \relative c'' {
a4 gis g gis | b4^"quoted" r8 ais\p a4( f)
}
oboeNotes = \relative c'' {
c4 cis c b \quoteDuring #"flute" { s1 }
}
\addQuote "flute" { \fluteNotes }
\score {
<<
\new Staff \with { instrumentName = "Flute" } \fluteNotes
\new Staff \with { instrumentName = "Oboe" } \oboeNotes
>>
}
If the music expression used in \quoteDuring contains notes
instead of spacer or multimeasure rests then the quote will appear as
polyphony and may produce unexpected results.
fluteNotes = \relative c'' {
a4 gis g gis | b4^"quoted" r8 ais\p a4( f)
}
oboeNotes = \relative c'' {
c4 cis c b \quoteDuring #"flute" { e4 r8 ais b4 a }
}
\addQuote "flute" { \fluteNotes }
\score {
<<
\new Staff \with { instrumentName = "Flute" } \fluteNotes
\new Staff \with { instrumentName = "Oboe" } \oboeNotes
>>
}
The \quoteDuring command uses the \transposition settings
of both quoted and quoting parts to produce notes for the quoting part
that have the same sounding pitch as those in the quoted part.
clarinetNotes = \relative c'' {
\transposition bes
\key d \major
b4 ais a ais | cis4^"quoted" r8 bis\p b4( f)
}
oboeNotes = \relative c'' {
c4 cis c b \quoteDuring #"clarinet" { s1 }
}
\addQuote "clarinet" { \clarinetNotes }
\score {
<<
\new Staff \with { instrumentName = "Clarinet" } \clarinetNotes
\new Staff \with { instrumentName = "Oboe" } \oboeNotes
>>
}
By default quoted music will include all articulations, dynamics,
markups, etc., in the quoted expression. It is possible to choose which
of these objects from the quoted music are displayed by using the
quotedEventTypes context property.
fluteNotes = \relative c'' {
a2 g2 |
b4\<^"quoted" r8 ais a4\f( c->)
}
oboeNotes = \relative c'' {
c2. b4 |
\quoteDuring #"flute" { s1 }
}
\addQuote "flute" { \fluteNotes }
\score {
<<
\set Score.quotedEventTypes = #'(note-event articulation-event
crescendo-event rest-event
slur-event dynamic-event)
\new Staff \with { instrumentName = "Flute" } \fluteNotes
\new Staff \with { instrumentName = "Oboe" } \oboeNotes
>>
}
Quotes can also be tagged, see Using tags.
Vedi anche
Notation Reference: Trasporto strumentale, Using tags.
Installed Files: ‘scm/define-event-classes.scm’.
Snippets: Staff notation.
Internals Reference: Music classes, QuoteMusic, Voice.
Problemi noti e avvertimenti
Only the contents of the first Voice occurring in an
\addQuote command will be considered for quotation, so if the music
expression contains \new or \context Voice
statements, their contents will not be quoted. Quoting grace notes
is unsupported and may cause LilyPond to crash whereas quoting nested
triplets may result in poor notation.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Quoting other voices ] | [ Su : Writing parts ] | [ Editorial annotations > ] | ||
Formatting cue notes
The simplest way to format cue notes is to explicitly create a
CueVoice context within the part.
R1
<<
{ e2\rest r4. e8 }
\new CueVoice {
\stemUp d'8^"flute" c d e fis2
}
>>
d,4 r a r
The \cueClef command can also be used with an explict
CueVoice context if a change of clef is required and will print
an appropriately sized clef for the cue notes. The \cueClefUnset
command can then be used to switch back to the original clef, again with
an appropriately sized clef.
\clef "bass"
R1
<<
{ e2\rest r4. \cueClefUnset e,8 }
\new CueVoice {
\cueClef "treble" \stemUp d''8^"flute" c d e fis2
}
>>
d,,4 r a r
The \cueClef and \cueClefUnset command can also be used
without a CueVoice if required.
\clef "bass" R1 \cueClef "treble" d'8^"flute" c d e fis2 \cueClefUnset d,,4 r a r
For more complex cue note placement, e.g including transposition, or
inserting cue notes from multiple music sources the \cueDuring or
\cueDuringWithClef commands can be used. These are more
specialized form of \quoteDuring, see Quoting other voices
in the previous section.
The syntax is:
\cueDuring #quotename #direction #music
and
\cueDuringWithClef #quotename #direction #clef #music
The music from the corresponding measures of the quote name
is added as a CueVoice context and occurs simultaneously with the
music, which then creates a polyphonic situation. The
direction takes the argument UP or DOWN, and
corresponds to the first and second voices respectively, determining how
the cue notes are printed in relation to the other voice.
fluteNotes = \relative c'' {
r2. c4 | d8 c d e fis2 | g2 d |
}
oboeNotes = \relative c'' {
R1
\new CueVoice { \set instrumentCueName = "flute" }
\cueDuring #"flute" #UP { R1 }
g2 c,
}
\addQuote "flute" { \fluteNotes }
\new Staff {
\oboeNotes
}
It is possible to adjust which aspects of the music are quoted with
\cueDuring by setting the quotedCueEventTypes
property. Its default value is '(note-event rest-event
tie-event beam-event tuplet-span-event), which means that only
notes, rests, ties, beams and tuplets are quoted, but not
articulations, dynamic marks, markup etc.
Nota: When a Voice starts with cueDuring, as in the
following example, the Voice context must be explicitly declared,
or else the entire music expression would belong to the CueVoice
context.
oboeNotes = \relative c'' {
r2 r8 d16(\f f e g f a)
g8 g16 g g2.
}
\addQuote "oboe" { \oboeNotes }
\new Voice \relative c'' {
\set Score.quotedCueEventTypes = #'(note-event rest-event tie-event
beam-event tuplet-span-event
dynamic-event slur-event)
\cueDuring #"oboe" #UP { R1 }
g2 c,
}
The name of the instrument playing the cue can be printed by setting
the instrumentCueName property in a temporary CueVoice
context. The placement and style of the instrumentCueName is
controlled by the \instrumentSwitch object, see
Instrument names. If the cue notes require a change in clef,
this can be done manually but the original clef should also be
restored manually at the end of the cue notes.
fluteNotes = \relative c'' {
r2. c4 d8 c d e fis2 g2 d2
}
bassoonNotes = \relative c {
\clef bass
R1
\clef treble
\new CueVoice { \set instrumentCueName = "flute" }
\cueDuring #"flute" #UP { R1 }
\clef bass
g4. b8 d2
}
\addQuote "flute" { \fluteNotes }
\new Staff {
\bassoonNotes
}
Alternatively, the \cueDuringWithClef function can be used
instead. This command takes an extra argument to specify the change of
clef that needs to be printed for the cue notes but will automatically
print the original clef once the cue notes have finished.
fluteNotes = \relative c'' {
r2. c4 d8 c d e fis2 g2 d2
}
bassoonNotes = \relative c {
\clef bass
R1
\new CueVoice { \set instrumentCueName = "flute" }
\cueDuringWithClef #"flute" #UP #"treble" { R1 }
g4. b8 d2
}
\addQuote "flute" { \fluteNotes }
\new Staff {
\bassoonNotes
}
Like \quoteDuring, \cueDuring takes instrument
transpositions into account. Cue notes are produced at the
pitches that would be written for the instrument receiving the cue
to produce the sounding pitches of the source instrument.
To transpose cue notes differently, use
\transposedCueDuring. This command takes an extra argument
to specify (in absolute mode) the printed pitch that you want to
represent the sound of a concert middle C. This is useful for
taking cues from an instrument in a completely different register.
piccoloNotes = \relative c''' {
\clef "treble^8"
R1
c8 c c e g2
c4 g g2
}
bassClarinetNotes = \relative c' {
\key d \major
\transposition bes,
d4 r a r
\transposedCueDuring #"piccolo" #UP d { R1 }
d4 r a r
}
\addQuote "piccolo" { \piccoloNotes }
<<
\new Staff \piccoloNotes
\new Staff \bassClarinetNotes
>>
The \killCues command removes cue notes from a music
expression, so the same music expression can be used to produce
the instrument part with cues and the score. The \killCues
command removes only the notes and events that were quoted by
\cueDuring. Other markup associated with cues, such as clef
changes and a label identifying the source instrument, can be
tagged for selective inclusion in the score; see Using tags.
fluteNotes = \relative c'' {
r2. c4 d8 c d e fis2 g2 d2
}
bassoonNotes = \relative c {
\clef bass
R1
\tag #'part {
\clef treble
\new CueVoice { \set instrumentCueName = "flute" }
}
\cueDuring #"flute" #UP { R1 }
\tag #'part \clef bass
g4. b8 d2
}
\addQuote "flute" { \fluteNotes }
\new Staff {
\bassoonNotes
}
\new StaffGroup <<
\new Staff {
\fluteNotes
}
\new Staff {
\removeWithTag #'part { \killCues { \bassoonNotes } }
}
>>
Alternatively, Clef changes and instrument labels can be
collected into an instrument definition for repeated use, using
\addInstrumentDefinition described in Instrument names.
Vedi anche
Notation Reference: Quoting other voices, Trasporto strumentale, Instrument names, Chiave, Musical cues, Using tags.
Snippets: Staff notation.
Internals Reference: CueVoice, Voice.
Problemi noti e avvertimenti
Collisions can occur with rests, when using \cueDuring,
between Voice and CueVoice contexts. When using
\cueDuringWithClef or \transposedCueDuring the extra
argument required for each case must come after the quote and the
direction.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Formatting cue notes ] | [ Su : Notazione musicale ] | [ Inside the staff > ] | ||
1.7 Editorial annotations
This section discusses the various ways to change the appearance of notes and add analysis or educational emphasis.
| 1.7.1 Inside the staff | ||
| 1.7.2 Outside the staff |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Editorial annotations ] | [ Su : Editorial annotations ] | [ Selecting notation font size > ] | ||
1.7.1 Inside the staff
This section discusses how to add emphasis to elements that are inside the staff.
| Selecting notation font size | ||
| Fingering instructions | ||
| Hidden notes | ||
| Coloring objects | ||
| Parentheses | ||
| Stems |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Inside the staff ] | [ Su : Inside the staff ] | [ Fingering instructions > ] | ||
Selecting notation font size
The font size of notation elements may be altered. It does not change the size of variable symbols, such as beams or slurs.
Nota: For font sizes of text, see Selecting font and font size.
\huge c4.-> d8---3 \large c4.-> d8---3 \normalsize c4.-> d8---3 \small c4.-> d8---3 \tiny c4.-> d8---3 \teeny c4.-> d8---3
Internally, this sets the fontSize property. This in turn
causes the font-size property to be set in all layout
objects. The value of font-size is a number indicating the
size relative to the standard size for the current staff height.
Each step up is an increase of approximately 12% of the font size.
Six steps is exactly a factor of two. The Scheme function
magstep converts a font-size number to a scaling
factor. The font-size property can also be set directly,
so that only certain layout objects are affected.
\set fontSize = #3 c4.-> d8---3 \override NoteHead.font-size = #-4 c4.-> d8---3 \override Script.font-size = #2 c4.-> d8---3 \override Stem.font-size = #-5 c4.-> d8---3
Font size changes are achieved by scaling the design size that is
closest to the desired size. The standard font size (for
font-size = #0) depends on the standard staff height.
For a 20pt staff, a 10pt font is selected.
The font-size property can only be set on layout objects
that use fonts. These are the ones supporting the
font-interface layout interface.
Comandi predefiniti
\teeny,
\tiny,
\small,
\normalsize,
\large,
\huge.
Vedi anche
Snippets: Editorial annotations.
Internals Reference: font-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Selecting notation font size ] | [ Su : Inside the staff ] | [ Hidden notes > ] | ||
Fingering instructions
Fingering instructions can be entered using ‘note-digit’:
c4-1 d-2 f-4 e-3
Markup texts or strings may be used for finger changes.
c4-1 d-2 f\finger \markup \tied-lyric #"4~3" c\finger "2 - 3"
A thumb-script can be added (e.g. cello music) to indicate that a note should be played with the thumb.
<a_\thumb a'-3>2 <b_\thumb b'-3>
Fingerings for chords can also be added to individual notes by adding them after the pitches.
<c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>
Fingering instructions may be manually placed above or below the staff, see Direction and placement.
Frammenti di codice selezionati
Controlling the placement of chord fingerings
The placement of fingering numbers can be controlled precisely. For fingering orientation to apply, you must use a chord construct <> even if it is a single note.
\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
}
Allowing fingerings to be printed inside the staff
By default, vertically oriented fingerings are positioned outside the staff. However, this behavior can be canceled. Note: you must use a chord construct <>, even if it is only a single note.
\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>
}
Avoiding collisions with chord fingerings
Fingerings and string numbers applied to individual notes will automatically avoid beams and stems, but this is not true by default for fingerings and string numbers applied to the individual notes of chords. The following example shows how this default behavior can be overridden.
\relative c' {
\set fingeringOrientations = #'(up)
\set stringNumberOrientations = #'(up)
\set strokeFingerOrientations = #'(up)
% Default behavior
r8
<f c'-5>8
<f c'\5>8
<f c'-\rightHandFinger #2 >8
% Corrected to avoid collisions
r8
\override Fingering.add-stem-support = ##t
<f c'-5>8
\override StringNumber.add-stem-support = ##t
<f c'\5>8
\override StrokeFinger.add-stem-support = ##t
<f c'-\rightHandFinger #2 >8
}
Vedi anche
Notation Reference: Direction and placement.
Snippets: Editorial annotations.
Internals Reference: FingeringEvent, fingering-event, Fingering_engraver, New_fingering_engraver, Fingering.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Fingering instructions ] | [ Su : Inside the staff ] | [ Coloring objects > ] | ||
Hidden notes
Hidden (or invisible or transparent) notes can be useful in preparing theory or composition exercises.
c4 d \hideNotes e4 f \unHideNotes g a \hideNotes b \unHideNotes c
Note heads, stems, and flags, and rests are invisible. Beams are invisible if they start on a hidden note. Objects that are attached to invisible notes are still visible.
e8(\p f g a)-- \hideNotes e8(\p f g a)--
Comandi predefiniti
\hideNotes,
\unHideNotes.
Vedi anche
Learning Manual: Visibility and color of objects.
Notation Reference: Pause invisibili, Visibility of objects, Hiding staves.
Snippets: Editorial annotations.
Internals Reference: Note_spacing_engraver, NoteSpacing.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Hidden notes ] | [ Su : Inside the staff ] | [ Parentheses > ] | ||
Coloring objects
Individual objects may be assigned colors. Valid color names are listed in the List of colors.
\override NoteHead.color = #red c4 c \override NoteHead.color = #(x11-color 'LimeGreen) d \override Stem.color = #blue e
The full range of colors defined for X11 can be accessed by using
the Scheme function x11-color. The function takes one
argument; this can be a symbol in the form 'FooBar or
a string in the form "FooBar". The first form is
quicker to write and is more efficient. However, using the second
form it is possible to access X11 colors by the multi-word form of
its name.
If x11-color cannot make sense of the parameter then the
color returned defaults to black.
\override Staff.StaffSymbol.color = #(x11-color 'SlateBlue2)
\set Staff.instrumentName = \markup {
\with-color #(x11-color 'navy) "Clarinet"
}
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
Exact RGB colors can be specified using the Scheme function
rgb-color.
\override Staff.StaffSymbol.color = #(x11-color 'SlateBlue2)
\set Staff.instrumentName = \markup {
\with-color #(x11-color 'navy) "Clarinet"
}
\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
Notation Reference:
List of colors, The \tweak command.
Snippets: Editorial annotations.
Problemi noti e avvertimenti
An X11 color is not necessarily exactly the same shade as a similarly named normal color.
Not all X11 colors are distinguishable in a web browser, i.e.,
a web browser might not display a difference between LimeGreen
and ForestGreen. For web use normal colors are recommended
(i.e., blue, green, red).
Notes in a chord cannot be colored with \override; use
\tweak instead, see The \tweak command.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Coloring objects ] | [ Su : Inside the staff ] | [ Stems > ] | ||
Parentheses
Objects may be parenthesized by prefixing \parenthesize to
the music event. When prefixed to a chord, it parenthesizes every
note. Individual notes inside a chord may also be parenthesized.
c2 \parenthesize d c2 \parenthesize <c e g> c2 <c \parenthesize e g>
Non-note objects may be parenthesized as well. For articulations,
a hyphen is needed before the \parenthesize command.
c2-\parenthesize -. d c2 \parenthesize r
Vedi anche
Snippets: Editorial annotations.
Internals Reference: Parenthesis_engraver, ParenthesesItem, parentheses-interface.
Problemi noti e avvertimenti
Parenthesizing a chord prints parentheses around each individual note, instead of a single large parenthesis around the entire chord.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Parentheses ] | [ Su : Inside the staff ] | [ Outside the staff > ] | ||
Stems
Whenever a note is found, a Stem object is created
automatically. For whole notes and rests, they are also created but
made invisible.
Stems may be manually placed to point up or down; see Direction and placement.
Comandi predefiniti
\stemUp,
\stemDown,
\stemNeutral.
Frammenti di codice selezionati
Default direction of stems on the center line of the staff
The default direction of stems on the center line of the staff is set
by the Stem property neutral-direction.
\relative c'' {
a4 b c b
\override Stem.neutral-direction = #up
a4 b c b
\override Stem.neutral-direction = #down
a4 b c b
}
Vedi anche
Notation Reference: Direction and placement.
Snippets: Editorial annotations.
Internals Reference: Stem_engraver, Stem, stem-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Stems ] | [ Su : Editorial annotations ] | [ Balloon help > ] | ||
1.7.2 Outside the staff
This section discusses how to add emphasis to elements in the staff from outside of the staff.
| Balloon help | ||
| Grid lines | ||
| Analysis brackets |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Outside the staff ] | [ Su : Outside the staff ] | [ Grid lines > ] | ||
Balloon help
Elements of notation can be marked and named with the help of a square balloon. The primary purpose of this feature is to explain notation.
\new Voice \with { \consists "Balloon_engraver" }
{
\balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
a8
\balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
r
<c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2.
}
There are two music functions, balloonGrobText and
balloonText; the former is used like
\once \override to attach text to any grob, and the
latter is used like \tweak, typically within chords, to
attach text to an individual note.
Balloon text normally influences note spacing, but this can be altered:
\new Voice \with { \consists "Balloon_engraver" }
{
\balloonLengthOff
\balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
a8
\balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
r
\balloonLengthOn
<c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2.
}
Comandi predefiniti
\balloonLengthOn,
\balloonLengthOff.
Vedi anche
Snippets: Editorial annotations.
Internals Reference: Balloon_engraver, BalloonTextItem, balloon-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Balloon help ] | [ Su : Outside the staff ] | [ Analysis brackets > ] | ||
Grid lines
Vertical lines can be drawn between staves synchronized with the notes.
The Grid_point_engraver must be used to create the end
points of the lines, while the Grid_line_span_engraver must
be used to actually draw the lines. By default this centers grid
lines horizontally below and to the left side of each note head.
Grid lines extend from the middle lines of each staff. The
gridInterval must specify the duration between the grid
lines.
\layout {
\context {
\Staff
\consists "Grid_point_engraver"
gridInterval = #(ly:make-moment 1/4)
}
\context {
\Score
\consists "Grid_line_span_engraver"
}
}
\score {
\new ChoirStaff <<
\new Staff \relative c'' {
\stemUp
c4. d8 e8 f g4
}
\new Staff \relative c {
\clef bass
\stemDown
c4 g' f e
}
>>
}
Frammenti di codice selezionati
Grid lines: changing their appearance
The appearance of grid lines can be changed by overriding some of their properties.
\score {
\new ChoirStaff <<
\new Staff {
\relative c'' {
\stemUp
c'4. d8 e8 f g4
}
}
\new Staff {
\relative c {
% this moves them up one staff space from the default position
\override Score.GridLine.extra-offset = #'(0.0 . 1.0)
\stemDown
\clef bass
\once \override Score.GridLine.thickness = #5.0
c4
\once \override Score.GridLine.thickness = #1.0
g'4
\once \override Score.GridLine.thickness = #3.0
f4
\once \override Score.GridLine.thickness = #5.0
e4
}
}
>>
\layout {
\context {
\Staff
% set up grids
\consists "Grid_point_engraver"
% set the grid interval to one quarter note
gridInterval = #(ly:make-moment 1/4)
}
\context {
\Score
\consists "Grid_line_span_engraver"
% this moves them to the right half a staff space
\override NoteColumn.X-offset = #-0.5
}
}
}
Vedi anche
Snippets: Editorial annotations.
Internals Reference: Grid_line_span_engraver, Grid_point_engraver, GridLine, GridPoint, grid-line-interface, grid-point-interface.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Grid lines ] | [ Su : Outside the staff ] | [ Text > ] | ||
Analysis brackets
Brackets are used in musical analysis to indicate structure in musical pieces. Simple horizontal brackets are supported.
\layout {
\context {
\Voice
\consists "Horizontal_bracket_engraver"
}
}
\relative c'' {
c2\startGroup
d\stopGroup
}
Analysis brackets may be nested.
\layout {
\context {
\Voice
\consists "Horizontal_bracket_engraver"
}
}
\relative c'' {
c4\startGroup\startGroup
d4\stopGroup
e4\startGroup
d4\stopGroup\stopGroup
}
Vedi anche
Snippets: Editorial annotations.
Internals Reference: Horizontal_bracket_engraver, HorizontalBracket, horizontal-bracket-interface, Staff.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Analysis brackets ] | [ Su : Notazione musicale ] | [ Writing text > ] | ||
1.8 Text
This section explains how to include text (with various formatting) in music scores.
Some text elements that are not dealt with here are discussed in other specific sections: Vocal music, Titles and headers.
| 1.8.1 Writing text | ||
| 1.8.2 Formatting text | ||
| 1.8.3 Fonts |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text ] | [ Su : Text ] | [ Text scripts > ] | ||
1.8.1 Writing text
This section introduces different ways of adding text to a score.
Nota: To write accented and special text (such as characters from other languages), simply insert the characters directly into the LilyPond file. The file must be saved as UTF-8. For more information, see Text encoding.
| Text scripts | ||
| Text spanners | ||
| Text marks | ||
| Separate text |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Writing text ] | [ Su : Writing text ] | [ Text spanners > ] | ||
Text scripts
Simple “quoted text” indications may be added to a score, as demonstrated in the following example. Such indications may be manually placed above or below the staff, using the syntax described in Direction and placement.
a8^"pizz." g f e a4-"scherz." f
This syntax is actually a shorthand; more complex text formatting may be
added to a note by explicitly using a \markup block, as described
in Formatting text.
a8^\markup { \italic pizz. } g f e
a4_\markup { \tiny scherz. \bold molto } f
By default, text indications do not influence the note spacing. However, their widths can be taken into account: in the following example, the first text string does not affect spacing, whereas the second one does.
a8^"pizz." g f e \textLengthOn a4_"scherzando" f
In addition to text scripts, articulations can be attached to notes. For more information, see Articulations and ornamentations.
For more information about the relative ordering of text scripts and articulations, see Placement of objects.
Comandi predefiniti
\textLengthOn,
\textLengthOff.
Vedi anche
Learning Manual: Placement of objects.
Notation Reference: Formatting text, Direction and placement, Articulations and ornamentations.
Snippets: Text.
Internals Reference: TextScript.
Problemi noti e avvertimenti
Checking to make sure that text scripts and lyrics are within the margins requires additonal calculations. In cases where slightly faster performance is desired, use
\override Score.PaperColumn.keep-inside-line = ##f
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text scripts ] | [ Su : Writing text ] | [ Text marks > ] | ||
Text spanners
Some performance indications, e.g., rallentando or accelerando, are written as text and are extended over multiple notes with dotted lines. Such objects, called “spanners”, may be created from one note to another using the following syntax:
\override TextSpanner.bound-details.left.text = "rit." b1\startTextSpan e,\stopTextSpan
The string to be printed is set through object properties. By default
it is printed in italic characters, but different formatting can be
obtained using \markup blocks, as described in
Formatting text.
\override TextSpanner.bound-details.left.text =
\markup { \upright "rit." }
b1\startTextSpan c
e,\stopTextSpan
The line style, as well as the text string, can be defined as an object property. This syntax is described in Line styles.
Comandi predefiniti
\textSpannerUp,
\textSpannerDown,
\textSpannerNeutral.
Problemi noti e avvertimenti
LilyPond is only able to handle one text spanner per voice.
Frammenti di codice selezionati
Dynamics text spanner postfix
Custom text spanners can be defined and used with hairpin and text
crescendos. \< and \> produce hairpins by default,
\cresc etc. produce text spanners by default.
% Some sample text dynamic spanners, to be used as postfix operators
crpoco =
#(make-music 'CrescendoEvent
'span-direction START
'span-type 'text
'span-text "cresc. poco a poco")
\relative c' {
c4\cresc d4 e4 f4 |
g4 a4\! b4\crpoco c4 |
c4 d4 e4 f4 |
g4 a4\! b4\< c4 |
g4\dim a4 b4\decresc c4\!
}
Dynamics custom text spanner postfix
Postfix functions for custom crescendo text spanners. The spanners should start on the first note of the measure. One has to use -\mycresc, otherwise the spanner start will rather be assigned to the next note.
% Two functions for (de)crescendo spanners where you can explicitly give the
% spanner text.
mycresc =
#(define-music-function (parser location mymarkup) (markup?)
(make-music 'CrescendoEvent
'span-direction START
'span-type 'text
'span-text mymarkup))
mydecresc =
#(define-music-function (parser location mymarkup) (markup?)
(make-music 'DecrescendoEvent
'span-direction START
'span-type 'text
'span-text mymarkup))
\relative c' {
c4-\mycresc "custom cresc" c4 c4 c4 |
c4 c4 c4 c4 |
c4-\mydecresc "custom decresc" c4 c4 c4 |
c4 c4\! c4 c4
}
Vedi anche
Notation Reference: Line styles, Dynamics, Formatting text.
Snippets: Text, Expressive marks.
Internals Reference: TextSpanner.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text spanners ] | [ Su : Writing text ] | [ Separate text > ] | ||
Text marks
Various text elements may be added to a score using the syntax described in Segni di chiamata:
c4 \mark "Allegro" c c c
This syntax makes it possible to put any text on a bar line;
more complex text formatting may be added using a \markup
block, as described in Formatting text:
<c e>1
\mark \markup { \italic { colla parte } }
<d f>2 <e g>
<c f aes>1
This syntax also allows to print special signs, like coda, segno or fermata, by specifying the appropriate symbol name as explained in Music notation inside markup:
<bes f>2 <aes d>
\mark \markup { \musicglyph #"scripts.ufermata" }
<e g>1
Such objects are only typeset above the top staff of the score; depending on whether they are specified at the end or the middle of a bar, they can be placed above the bar line or between notes. When specified at a line break, the mark will be printed at the beginning of the next line.
\mark "Allegro" c1 c \mark "assai" \break c c
Comandi predefiniti
\markLengthOn,
\markLengthOff.
Frammenti di codice selezionati
Printing marks at the end of a line
Marks can be printed at the end of the current line, instead of the beginning of the following line. In such cases, it might be preferable to align the right end of the mark with the bar line.
\relative c'' {
g2 c
d,2 a'
\once \override Score.RehearsalMark.break-visibility = #end-of-line-visible
\once \override Score.RehearsalMark.self-alignment-X = #RIGHT
\mark "D.C. al Fine"
\break
g2 b,
c1 \bar "||"
}
Aligning marks with various notation objects
If specified, text marks may be aligned with notation objects other
than bar lines. These objects include ambitus,
breathing-sign, clef, custos, staff-bar,
left-edge, key-cancellation, key-signature, and
time-signature.
In such cases, text marks will be horizontally centered above the object. However this can be changed, as demonstrated on the second line of this example (in a score with multiple staves, this setting should be done for all the staves).
\relative c' {
e1
% the RehearsalMark will be centered above the Clef
\override Score.RehearsalMark.break-align-symbols = #'(clef)
\key a \major
\clef treble
\mark \markup { \char ##x2193 }
e1
% the RehearsalMark will be centered above the TimeSignature
\override Score.RehearsalMark.break-align-symbols = #'(time-signature)
\key a \major
\clef treble
\time 3/4
\mark \markup { \char ##x2193 }
e2.
% the RehearsalMark will be centered above the KeySignature
\override Score.RehearsalMark.break-align-symbols = #'(key-signature)
\key a \major
\clef treble
\time 4/4
\mark \markup { \char ##x2193 }
e1
\break
e1
% the RehearsalMark will be aligned with the left edge of the KeySignature
\once \override Score.KeySignature.break-align-anchor-alignment = #LEFT
\mark \markup { \char ##x2193 }
\key a \major
e1
% the RehearsalMark will be aligned with the right edge of the KeySignature
\once \override Score.KeySignature.break-align-anchor-alignment = #RIGHT
\key a \major
\mark \markup { \char ##x2193 }
e1
% the RehearsalMark will be aligned with the left edge of the KeySignature
% and then shifted right by one unit.
\once \override Score.KeySignature.break-align-anchor = #1
\key a \major
\mark \markup { \char ##x2193 }
e1
}
Printing marks on every staff
Although text marks are normally only printed above the topmost staff, they may also be printed on every staff.
\score {
<<
\new Staff { c''1 \mark "molto" c'' }
\new Staff { c'1 \mark "molto" c' }
>>
\layout {
\context {
\Score
\remove "Mark_engraver"
\remove "Staff_collecting_engraver"
}
\context {
\Staff
\consists "Mark_engraver"
\consists "Staff_collecting_engraver"
}
}
}
Vedi anche
Notation Reference: Segni di chiamata, Formatting text, Music notation inside markup, The Feta font.
Snippets: Text.
Internals Reference: MarkEvent, Mark_engraver, RehearsalMark.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text marks ] | [ Su : Writing text ] | [ Formatting text > ] | ||
Separate text
A \markup block can exist by itself, outside of any
\score block, as a “top-level expression”. This syntax
is described in File structure.
\markup {
Tomorrow, and tomorrow, and tomorrow...
}
This allows printing text separately from the music, which is particularly useful when the input file contains several music pieces, as described in Multiple scores in a book.
\score {
c'1
}
\markup {
Tomorrow, and tomorrow, and tomorrow...
}
\score {
c'1
}
Separate text blocks can be spread over multiple pages, making it possible to print text documents or books entirely within LilyPond. This feature, and the specific syntax it requires, are described in Multi-page markup.
Comandi predefiniti
\markup,
\markuplist.
Frammenti di codice selezionati
Stand-alone two-column markup
Stand-alone text may be arranged in several columns using
\markup commands:
\markup {
\fill-line {
\hspace #1
\column {
\line { O sacrum convivium }
\line { in quo Christus sumitur, }
\line { recolitur memoria passionis ejus, }
\line { mens impletur gratia, }
\line { futurae gloriae nobis pignus datur. }
\line { Amen. }
}
\hspace #2
\column \italic {
\line { O sacred feast }
\line { in which Christ is received, }
\line { the memory of His Passion is renewed, }
\line { the mind is filled with grace, }
\line { and a pledge of future glory is given to us. }
\line { Amen. }
}
\hspace #1
}
}
Vedi anche
Notation Reference: Formatting text, File structure, Multiple scores in a book, Multi-page markup.
Snippets: Text.
Internals Reference: TextScript.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Separate text ] | [ Su : Text ] | [ Text markup introduction > ] | ||
1.8.2 Formatting text
This section presents basic and advanced text formatting,
using the \markup mode specific syntax.
| Text markup introduction | ||
| Selecting font and font size | ||
| Text alignment | ||
| Graphic notation inside markup | ||
| Music notation inside markup | ||
| Multi-page markup |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Formatting text ] | [ Su : Formatting text ] | [ Selecting font and font size > ] | ||
Text markup introduction
A \markup block is used to typeset text with an extensible
syntax called “markup mode”.
The markup syntax is similar to LilyPond’s usual syntax: a
\markup expression is enclosed in curly braces
{… }. A single word is regarded as a minimal expression,
and therefore does not need to be enclosed with braces.
Unlike simple “quoted text” indications, \markup blocks may
contain nested expressions or markup commands, entered using the
backslash \ character. Such commands only affect the first
following expression.
a1-\markup intenso
a2^\markup { poco \italic più forte }
c e1
d2_\markup { \italic "string. assai" }
e
b1^\markup { \bold { molto \italic agitato } }
c
A \markup block may also contain quoted text strings. Such
strings are treated as minimal text expressions, and therefore any
markup command or special character (such as \ and #)
will be printed verbatim without affecting the formatting of the text.
Double quotation marks themselves may be printed by preceding them
with backslashes.
a1^"\italic markup..."
a_\markup { \italic "... prints \"italic\" letters!" }
a a
To be treated as a distinct expression, a list of words needs to be
enclosed with double quotes or preceded by a command. The way markup
expressions are defined affects how these expressions will be stacked,
centered and aligned; in the following example, the second
\markup expression is treated the same as the first one:
c1^\markup { \center-column { a bbb c } }
c1^\markup { \center-column { a { bbb c } } }
c1^\markup { \center-column { a \line { bbb c } } }
c1^\markup { \center-column { a "bbb c" } }
Markups can be stored in variables. Such variables may be directly attached to notes:
allegro = \markup { \bold \large Allegro }
{
d''8.^\allegro
d'16 d'4 r2
}
An exhaustive list of \markup-specific commands can be found in
Text markup commands.
Vedi anche
Notation Reference: Text markup commands.
Snippets: Text.
Installed Files: ‘scm/markup.scm’.
Problemi noti e avvertimenti
Syntax errors for markup mode can be confusing.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text markup introduction ] | [ Su : Formatting text ] | [ Text alignment > ] | ||
Selecting font and font size
Basic font switching is supported in markup mode:
d1^\markup {
\bold { Più mosso }
\italic { non troppo \underline Vivo }
}
r2 r4 r8
d,_\markup { \italic quasi \smallCaps Tromba }
f1 d2 r
The font size can be altered, relative to the global staff size, in a number of different ways
It can be set to predefined size,
b1_\markup { \huge Sinfonia }
b1^\markup { \teeny da }
b1-\markup { \normalsize camera }
It can be set relative to its previous value,
b1_\markup { \larger Sinfonia }
b1^\markup { \smaller da }
b1-\markup { \magnify #0.6 camera }
It can be increased or decreased relative to the value set by the global staff size,
b1_\markup { \fontsize #-2 Sinfonia }
b1^\markup { \fontsize #1 da }
b1-\markup { \fontsize #3 camera }
It can also be set to a fixed point-size, regardless of the global staff size,
b1_\markup { \abs-fontsize #20 Sinfonia }
b1^\markup { \abs-fontsize #8 da }
b1-\markup { \abs-fontsize #14 camera }
Text may be printed as subscript or superscript. By default these are printed in a smaller size, but a normal size can be used as well:
\markup {
\column {
\line { 1 \super st movement }
\line { 1 \normal-size-super st movement
\sub { (part two) } }
}
}
The markup mode provides an easy way to select alternate font families. The default serif font, of roman type, is automatically selected unless specified otherwise; on the last line of the following example, there is no difference between the first and the second word.
\markup {
\column {
\line { Act \number 1 }
\line { \sans { Scene I. } }
\line { \typewriter { Verona. An open place. } }
\line { Enter \roman Valentine and Proteus. }
}
}
Some of these font families, used for specific items such as numbers or dynamics, do not provide all characters, as mentioned in New dynamic marks and Manual repeat marks.
When used inside a word, some font-switching or formatting commands may produce an unwanted blank space. This can easily be solved by concatenating the text elements together:
\markup {
\column {
\line {
\concat { 1 \super st }
movement
}
\line {
\concat { \dynamic p , }
\italic { con dolce espressione }
}
}
}
An exhaustive list of font switching commands and custom font usage commands can be found in Font.
Defining custom font sets is also possible, as explained in Fonts.
Comandi predefiniti
\teeny,
\tiny,
\small,
\normalsize,
\large,
\huge,
\smaller,
\larger.
Vedi anche
Notation Reference: Font, New dynamic marks, Manual repeat marks, Fonts.
Installed Files: ‘scm/define-markup-commands.scm’.
Snippets: Text.
Internals Reference: TextScript.
Problemi noti e avvertimenti
Using the font sizing commands \teeny, \tiny,
\small, \normalsize, \large, and
\huge will lead to inconsistent line spacing compared to
using \fontsize.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Selecting font and font size ] | [ Su : Formatting text ] | [ Graphic notation inside markup > ] | ||
Text alignment
This subsection discusses how to place text in markup mode. Markup objects can also be moved as a whole, using the syntax described in Moving objects.
Markup objects may be aligned in different ways. By default, a text indication is aligned on its left edge: in the following example, there is no difference between the first and the second markup.
d1-\markup { poco }
f
d-\markup { \left-align poco }
f
d-\markup { \center-align { poco } }
f
d-\markup { \right-align poco }
Horizontal alignment may be fine-tuned using a numeric value:
a1-\markup { \halign #-1 poco }
e'
a,-\markup { \halign #0 poco }
e'
a,-\markup { \halign #0.5 poco }
e'
a,-\markup { \halign #2 poco }
Some objects may have alignment procedures of their own, and therefore are not affected by these commands. It is possible to move such markup objects as a whole, as shown for instance in Text marks.
Vertical alignment is a bit more complex. As stated above, markup objects can be moved as a whole; however, it is also possible to move specific elements inside a markup block. In this case, the element to be moved needs to be preceded with an anchor point, that can be another markup element or an invisible object. The following example demonstrates these two possibilities; the last markup in this example has no anchor point, and therefore is not moved.
d2^\markup {
Acte I
\raise #2 { Scène 1 }
}
a'
g_\markup {
\null
\lower #4 \bold { Très modéré }
}
a
d,^\markup {
\raise #4 \italic { Une forêt. }
}
a'4 a g2 a
Some commands can affect both the horizontal and vertical alignment of text objects in markup mode. Any object affected by these commands must be preceded with an anchor point:
d2^\markup {
Acte I
\translate #'(-1 . 2) "Scène 1"
}
a'
g_\markup {
\null
\general-align #Y #3.2 \bold "Très modéré"
}
a
d,^\markup {
\null
\translate-scaled #'(-1 . 2) \teeny "Une forêt."
}
a'4 a g2 a
A markup object may include several lines of text. In the following example, each element or expression is placed on its own line, either left-aligned or centered:
\markup {
\column {
a
"b c"
\line { d e f }
}
\hspace #10
\center-column {
a
"b c"
\line { d e f }
}
}
Similarly, a list of elements or expressions may be spread to fill the entire horizontal line width (if there is only one element, it will be centered on the page). These expressions can, in turn, include multi-line text or any other markup expression:
\markup {
\fill-line {
\line { William S. Gilbert }
\center-column {
\huge \smallCaps "The Mikado"
or
\smallCaps "The Town of Titipu"
}
\line { Sir Arthur Sullivan }
}
}
\markup {
\fill-line { 1885 }
}
Long text indications can also be automatically wrapped accordingly to the given line width. These will be either left-aligned or justified, as shown in the following example.
\markup {
\column {
\line \smallCaps { La vida breve }
\line \bold { Acto I }
\wordwrap \italic {
(La escena representa el corral de una casa de
gitanos en el Albaicín de Granada. Al fondo una
puerta por la que se ve el negro interior de
una Fragua, iluminado por los rojos resplandores
del fuego.)
}
\hspace #0
\line \bold { Acto II }
\override #'(line-width . 50)
\justify \italic {
(Calle de Granada. Fachada de la casa de Carmela
y su hermano Manuel con grandes ventanas abiertas
a través de las que se ve el patio
donde se celebra una alegre fiesta)
}
}
}
An exhaustive list of text alignment commands can be found in Align.
Vedi anche
Learning Manual: Moving objects.
Notation Reference: Align, Text marks.
Installed Files: ‘scm/define-markup-commands.scm’.
Snippets: Text.
Internals Reference: TextScript.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Text alignment ] | [ Su : Formatting text ] | [ Music notation inside markup > ] | ||
Graphic notation inside markup
Various graphic objects may be added to a score, using markup commands.
Some markup commands allow decoration of text elements with graphics, as demonstrated in the following example.
\markup \fill-line {
\center-column {
\circle Jack
\box "in the box"
\null
\line {
Erik Satie
\hspace #3
\bracket "1866 - 1925"
}
\null
\rounded-box \bold Prelude
}
}
Some commands may require an increase in the padding around the text; this is achieved with some markup commands exhaustively described in Align.
\markup \fill-line {
\center-column {
\box "Charles Ives (1874 - 1954)"
\null
\box \pad-markup #2 "THE UNANSWERED QUESTION"
\box \pad-x #8 "A Cosmic Landscape"
\null
}
}
\markup \column {
\line {
\hspace #10
\box \pad-to-box #'(-5 . 20) #'(0 . 5)
\bold "Largo to Presto"
}
\pad-around #3
"String quartet keeps very even time,
Flute quartet keeps very uneven time."
}
Other graphic elements or symbols may be printed without requiring any text. As with any markup expression, such objects can be combined.
\markup {
\combine
\draw-circle #4 #0.4 ##f
\filled-box #'(-4 . 4) #'(-0.5 . 0.5) #1
\hspace #5
\center-column {
\triangle ##t
\combine
\draw-line #'(0 . 4)
\arrow-head #Y #DOWN ##f
}
}
Advanced graphic features include the ability to include external image files converted to the Encapsulated PostScript format (eps), or to directly embed graphics into the input file, using native PostScript code. In such a case, it may be useful to explicitly specify the size of the drawing, as demonstrated below:
c1^\markup {
\combine
\epsfile #X #10 #"./context-example.eps"
\with-dimensions #'(0 . 6) #'(0 . 10)
\postscript #"
-2 3 translate
2.7 2 scale
newpath
2 -1 moveto
4 -2 4 1 1 arct
4 2 3 3 1 arct
0 4 0 3 1 arct
0 0 1 -1 1 arct
closepath
stroke"
}
c
An exhaustive list of graphics-specific commands can be found in Graphic.
Vedi anche
Notation Reference: Graphic, Editorial annotations, Align.
Installed Files: ‘scm/define-markup-commands.scm’, ‘scm/stencil.scm’.
Snippets: Text.
Internals Reference: TextScript.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Graphic notation inside markup ] | [ Su : Formatting text ] | [ Multi-page markup > ] | ||
Music notation inside markup
Various musical notation elements may be added to a score, inside a markup object.
Notes and accidentals can be entered using markup commands:
a2 a^\markup {
\note #"4" #1
=
\note-by-number #1 #1 #1.5
}
b1_\markup {
\natural \semiflat \flat
\sesquiflat \doubleflat
}
\glissando
a1_\markup {
\natural \semisharp \sharp
\sesquisharp \doublesharp
}
\glissando b
Other notation objects may also be printed in markup mode:
g1 bes
ees\finger \markup \tied-lyric #"4~1"
fis_\markup { \dynamic rf }
bes^\markup {
\beam #8 #0.1 #0.5
}
cis
d-\markup {
\markalphabet #8
\markletter #8
}
More generally, any available musical symbol may be included separately in a markup object, as demonstrated below; an exhaustive list of these symbols and their names can be found in The Feta font.
c2
c'^\markup { \musicglyph #"eight" }
c,4
c,8._\markup { \musicglyph #"clefs.G_change" }
c16
c2^\markup { \musicglyph #"timesig.neomensural94" }
Another way of printing non-text glyphs is described in Fonts explained. This is useful for printing braces of various sizes.
The markup mode also supports diagrams for specific instruments:
c1^\markup {
\fret-diagram-terse #"x;x;o;2;3;2;"
}
c^\markup {
\harp-pedal #"^-v|--ov^"
}
c
c^\markup {
\combine
\musicglyph #"accordion.discant"
\combine
\raise #0.5 \musicglyph #"accordion.dot"
\raise #1.5 \musicglyph #"accordion.dot"
}
Such diagrams are documented in Instrument Specific Markup.
A whole score can even be nested inside a markup object. In such a
case, the nested \score block must contain a \layout
block, as demonstrated here:
c4 d^\markup {
\score {
\relative c' { c4 d e f }
\layout { }
}
}
e f |
c d e f
An exhaustive list of music notation related commands can be found in Music.
Vedi anche
Notation Reference: Music, The Feta font, Fonts explained.
Installed Files: ‘scm/define-markup-commands.scm’, ‘scm/fret-diagrams.scm’, ‘scm/harp-pedals.scm’.
Snippets: Text.
Internals Reference: TextScript.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Music notation inside markup ] | [ Su : Formatting text ] | [ Fonts > ] | ||
Multi-page markup
Although standard markup objects are not breakable, a specific syntax makes it possible to enter lines of text that can spread over multiple pages:
\markuplist {
\justified-lines {
A very long text of justified lines.
...
}
\wordwrap-lines {
Another very long paragraph.
...
}
...
}
This syntax accepts a list of markups, that can be
- the result of a markup list command,
- a list of markups,
- a list of markup lists.
An exhaustive list of markup list commands can be found in Text markup list commands.
Vedi anche
Notation Reference: Text markup list commands.
Extending LilyPond: New markup list command definition.
Installed Files: ‘scm/define-markup-commands.scm’.
Snippets: Text.
Internals Reference: TextScript.
Comandi predefiniti
\markuplist.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Multi-page markup ] | [ Su : Text ] | [ Fonts explained > ] | ||
1.8.3 Fonts
This section presents the way fonts are handled, and how they may be changed in scores.
| Fonts explained | ||
| Single entry fonts | ||
| Entire document fonts |
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Fonts ] | [ Su : Fonts ] | [ Single entry fonts > ] | ||
Fonts explained
Fonts are handled through several libraries. FontConfig is used to detect available fonts on the system; the selected fonts are rendered using Pango.
Music notation fonts can be described as a set of specific glyphs,
ordered in several families. The following syntax allows various
LilyPond feta non-text fonts to be used directly in markup
mode:
a1^\markup {
\vcenter {
\override #'(font-encoding . fetaBraces)
\lookup #"brace120"
\override #'(font-encoding . fetaText)
\column { 1 3 sf }
\override #'(font-encoding . fetaMusic)
\lookup #"noteheads.s0petrucci"
}
}
However, all these glyphs except the braces of various sizes contained
in fetaBraces are available using the simpler syntax described
in Music notation inside markup.
When using the glyphs contained in fetaBraces, the size of the
brace is specified by the numerical part of the glyph name, in
arbitrary units. Any integer from 0 to 575 inclusive
may be specified, 0 giving the smallest brace. The optimum
value must be determined by trial and error. These glyphs are all
left braces; right braces may be obtained by rotation, see
Rotating objects.
Three families of text fonts are made available: the roman (serif) font, that defaults to New Century Schoolbook, the sans font and the monospaced typewriter font – these last two families are determined by the Pango installation.
Each family may include different shapes and series. The following
example demonstrates the ability to select alternate families, shapes,
series and sizes. The value supplied to font-size is the
required change from the default size.
\override Score.RehearsalMark.font-family = #'typewriter \mark \markup "Ouverture" \override Voice.TextScript.font-shape = #'italic \override Voice.TextScript.font-series = #'bold d2.^\markup "Allegro" \override Voice.TextScript.font-size = #-3 c4^smaller
A similar syntax may be used in markup mode; however in this case it is preferable to use the simpler syntax explained in Selecting font and font size:
\markup {
\column {
\line {
\override #'(font-shape . italic)
\override #'(font-size . 4)
Idomeneo,
}
\line {
\override #'(font-family . typewriter)
{
\override #'(font-series . bold)
re
di
}
\override #'(font-family . sans)
Creta
}
}
}
Although it is easy to switch between preconfigured fonts, it is also possible to use other fonts, as explained in the following sections: Single entry fonts and Entire document fonts.
Vedi anche
Notation Reference: The Feta font, Music notation inside markup, Rotating objects, Selecting font and font size, Font.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Fonts explained ] | [ Su : Fonts ] | [ Entire document fonts > ] | ||
Single entry fonts
Any font that is installed on the operating system and recognized by FontConfig may be used in a score, using the following syntax:
\override Staff.TimeSignature.font-name = #"Bitstream Charter"
\override Staff.TimeSignature.font-size = #2
\time 3/4
a1_\markup {
\override #'(font-name . "Vera Bold")
{ Vera Bold }
}
The following command displays a list of all available fonts on the operating system:
lilypond -dshow-available-fonts x
Vedi anche
Notation Reference: Fonts explained, Entire document fonts.
Snippets: Text.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ Specialist notation >> ] | ||
| [ < Single entry fonts ] | [ Su : Fonts ] | [ Specialist notation > ] | ||
Entire document fonts
It is possible to change the fonts to be used as the default fonts in the roman, sans and typewriter font families by specifying them, in that order, as shown in the example below, which automatically scales the fonts with the value set for the global staff size. For an explanation of fonts, see Fonts explained.
\paper {
#(define fonts
(make-pango-font-tree "Times New Roman"
"Nimbus Sans"
"Luxi Mono"
(/ staff-height pt 20)))
}
\relative c'{
c1-\markup {
roman,
\sans sans,
\typewriter typewriter. }
}
Vedi anche
Notation Reference: Fonts explained, Single entry fonts, Selecting font and font size, Font.
| [ << Notazione musicale ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Entire document fonts ] | [ Su : Top ] | [ Vocal music > ] | ||
2. Specialist notation
This chapter explains how to create musical notation for specific types of instrument or in specific styles.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Specialist notation ] | [ Su : Specialist notation ] | [ Common notation for vocal music > ] | ||
2.1 Vocal music
This section explains how to typeset vocal music, and make sure that the lyrics will be aligned with the notes of their melody.
| 2.1.1 Common notation for vocal music | ||
| 2.1.2 Techniques specific to lyrics | ||
| 2.1.3 Stanzas | ||
| 2.1.4 Songs | ||
| 2.1.5 Choral | ||
| 2.1.6 Opera and stage musicals | ||
| 2.1.7 Chants psalms and hymns | ||
| 2.1.8 Ancient vocal music | ||
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Vocal music ] | [ Su : Vocal music ] | [ References for vocal music > ] | ||
2.1.1 Common notation for vocal music
This section discusses issues common to most types of vocal music.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Common notation for vocal music ] | [ Su : Common notation for vocal music ] | [ Entering lyrics > ] | ||
References for vocal music
This section indicates where to find details of notation issues that may arise in any type of vocal music.
- Most styles of vocal music use written text as lyrics. An introduction to this notation is to be found in Setting simple songs.
-
Vocal music is likely to require the use of
markupmode, either for lyrics or for other text elements (characters’ names, etc.) This syntax is described in Text markup introduction. - Ambitus may be added at the beginning of vocal staves, as explained in Ambitus.
- Dynamic markings by default are placed below the staff, but in choral music they are usually placed above the staff in order to avoid the lyrics, as explained in Score layouts for choral.
Vedi anche
Music Glossary: ambitus.
Learning Manual: Setting simple songs.
Notation Reference: Text markup introduction, Ambitus, Score layouts for choral.
Snippets: Vocal music.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for vocal music ] | [ Su : Common notation for vocal music ] | [ Aligning lyrics to a melody > ] | ||
Entering lyrics
Lyrics are entered in a special input mode, which can be introduced
by the keyword \lyricmode, or by using \addlyrics or
\lyricsto. In this special input mode, the input d
is not parsed as the pitch D, but rather as a one-letter
syllable of text. In other words, syllables are entered like notes
but with pitches replaced by text.
For example:
\lyricmode { Three4 blind mice,2 three4 blind mice2 }
There are two main methods for specifying the horizontal placement
of the syllables, either by specifying the duration of each syllable
explicitly, as in the example above, or by leaving the lyrics to be
aligned automatically to a melody or other voice of music, using
\addlyrics or \lyricsto. The former method is
described below in Manual syllable durations. The latter
method is described in Automatic syllable durations.
A word or syllable of lyrics begins with an alphabetic character (plus some other characters, see below) and is terminated by any white space or a digit. Later characters in the syllable can be any character that is not a digit or white space.
Because any character that is not a digit or white space is regarded
as part of the syllable, a word is valid even if it ends with
}, which often leads to the following mistake:
\lyricmode { lah lah lah}
In this example, the } is included in the final syllable, so the
opening brace is not balanced and the input file will probably not
compile. Instead, braces should always be surrounded with white space:
\lyricmode { lah lah lah }
Punctuation, lyrics with accented characters, characters from non-English languages, or special characters (such as the heart symbol or slanted quotes), may simply be inserted directly into the input file, providing it is saved with UTF-8 encoding. For more information, see Special characters.
\relative c'' { d8 c16 a bes8 f e' d c4 }
\addlyrics { „Schad’ um das schö -- ne grü -- ne Band, }
Normal quotes may be used in lyrics, but they have to be preceded with a backslash character and the whole syllable has to be enclosed between additional quotes. For example,
\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. }
\addlyrics { "\"I" am so lone -- "ly,\"" said she }
The full definition of a word start in lyrics mode is somewhat more
complex. A word in lyrics mode is one that begins with an
alphabetic character, _, ?, !, :,
', the control characters ^A through ^F,
^Q through ^W, ^Y, ^^, any 8-bit
character with an ASCII code over 127, or a two-character
combination of a backslash followed by one of `, ',
", or ^.
Great control over the appearance of lyrics comes from using
\markup inside the lyrics themselves. For explanation of many
options, see Formatting text.
Frammenti di codice selezionati
Formatting lyrics syllables
Markup mode may be used to format individual syllables in lyrics.
mel = \relative c'' { c4 c c c }
lyr = \lyricmode {
Lyrics \markup { \italic can } \markup { \with-color #red contain }
\markup { \fontsize #8 \bold Markup! }
}
<<
\new Voice = melody \mel
\new Lyrics \lyricsto melody \lyr
>>
Vedi anche
Learning Manual: Songs.
Notation Reference: Automatic syllable durations, Fonts, Formatting text, Input modes, Manual syllable durations, Special characters.
Internals Reference: LyricText.
Snippets: Text.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Entering lyrics ] | [ Su : Common notation for vocal music ] | [ Automatic syllable durations > ] | ||
Aligning lyrics to a melody
Lyrics are printed by interpreting them in the context called
Lyrics, see Contexts explained.
\new Lyrics \lyricmode { … }
Lyrics can be aligned with melodies in two main ways:
-
Lyrics can be aligned automatically, with the durations of the
syllables being taken from another voice of music or (in special
circumstances) an associated melody, using
\addlyrics,\lyricsto, or by setting theassociatedVoiceproperty. For more details, see Automatic syllable durations.<< \new Staff << \time 2/4 \new Voice = "one" \relative c'' { \voiceOne c4 b8. a16 g4. r8 a4 ( b ) c2 } \new Voice = "two" \relative c' { \voiceTwo s2 s4. f8 e4 d c2 } >> % takes durations and alignment from notes in "one" \new Lyrics \lyricsto "one" { Life is __ _ love, live __ life. } % takes durations and alignment from notes in "one" initially % then switches to "two" \new Lyrics \lyricsto "one" { No more let \set associatedVoice = "two" % must be set one syllable early sins and sor -- rows grow. } >>The first stanza shows the normal way of entering lyrics.
The second stanza shows how the voice from which the lyric durations are taken can be changed. This is useful if the words to different stanzas fit the notes in different ways and all the durations are available in Voice contexts. For more details, see Stanzas.
-
Lyrics can be aligned independently of the duration of any notes
if the durations of the syllables are specified explicitly,
and entered with
\lyricmode.<< \new Voice = "one" \relative c'' { \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } % uses previous explicit duration of 2; \new Lyrics \lyricmode { Joy to the earth! } % explicit durations, set to a different rhythm \new Lyrics \lyricmode { Life4 is love,2. live4 life.2 } >>The first stanza is not aligned with the notes because the durations were not specified, and the previous value of 2 is used for each word.
The second stanza shows how the words can be aligned quite independently from the notes. This is useful if the words to different stanzas fit the notes in different ways and the required durations are not available in a music context. For more details see Manual syllable durations. This technique is also useful when setting dialogue over music; for examples showing this, see Dialogue over music.
When entered in this way the words are left-aligned to the notes by default, but may be center-aligned to the notes of a melody by specifying an associated voice, if one exists. For details, see Manual syllable durations.
Vedi anche
Learning Manual: Aligning lyrics to a melody.
Notation Reference: Contexts explained, Automatic syllable durations, Stanzas, Manual syllable durations, Dialogue over music, Manual syllable durations.
Internals Reference: Lyrics.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Aligning lyrics to a melody ] | [ Su : Common notation for vocal music ] | [ Manual syllable durations > ] | ||
Automatic syllable durations
Lyrics can be automatically aligned to the notes of a melody in three ways:
-
by specifying the named Voice context containing the melody with
\lyricsto, -
by introducing the lyrics with
\addlyricsand placing them immediately after the Voice context containing the melody, -
by setting the
associatedVoiceproperty, the alignment of the lyrics may be switched to a different named Voice context at any musical moment.
In all three methods hyphens can be drawn between the syllables of a word and extender lines can be drawn beyond the end of a word. For details, see Extenders and hyphens.
The Voice context containing the melody to which the lyrics
are being aligned must not have “died”, or the lyrics after that
point will be lost. This can happen if there are periods when that
voice has nothing to do. For methods of keeping contexts alive, see
Keeping contexts alive.
Using \lyricsto
Lyrics can be aligned under a melody automatically by specifying
the named Voice context containing the melody with
\lyricsto:
<<
\new Voice = "melody" {
a4 a a a
}
\new Lyrics \lyricsto "melody" {
These are the words
}
>>
This aligns the lyrics to the notes of the named Voice
context, which must already exist. Therefore normally the
Voice context is specified first, followed by the
Lyrics context. The lyrics themselves follow the
\lyricsto command. The \lyricsto command
invokes lyric mode automatically, so the \lyricmode keyword
may be omitted. By default, the lyrics are placed underneath the
notes. For other placements, see Placing lyrics vertically.
Using \addlyrics
The \addlyrics command is just a convenient shortcut that
can sometimes be used instead of having to set up the lyrics
through a more complicated LilyPond structure.
{ MUSIC }
\addlyrics { LYRICS }
is the same as
\new Voice = "blah" { MUSIC }
\new Lyrics \lyricsto "blah" { LYRICS }
Here is an example,
{
\time 3/4
\relative c' { c2 e4 g2. }
\addlyrics { play the game }
}
More stanzas can be added by adding more
\addlyrics sections:
{
\time 3/4
\relative c' { c2 e4 g2. }
\addlyrics { play the game }
\addlyrics { speel het spel }
\addlyrics { joue le jeu }
}
The command \addlyrics cannot handle polyphonic settings.
For these cases one should use \lyricsto.
Using associatedVoice
The melody to which the lyrics are being aligned can be changed by
setting the associatedVoice property,
\set associatedVoice = #"lala"
The value of the property (here: "lala") should be the name
of a Voice context. For technical reasons, the \set
command must be placed one syllable before the one to which the
change in voice is to apply.
Here is an example demonstrating its use:
<<
\new Staff <<
\time 2/4
\new Voice = "one" \relative c'' {
\voiceOne
c4 b8. a16 g4. r8 a4 ( b ) c2
}
\new Voice = "two" \relative c' {
\voiceTwo
s2 s4. f8 e8 d4. c2
}
>>
% takes durations and alignment from notes in "one" initially
% then switches to "two"
\new Lyrics \lyricsto "one" {
No more let
\set associatedVoice = "two" % must be set one syllable early
sins and sor -- rows grow.
}
>>
Vedi anche
Notation Reference: Extenders and hyphens, Keeping contexts alive, Placing lyrics vertically.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Automatic syllable durations ] | [ Su : Common notation for vocal music ] | [ Multiple syllables to one note > ] | ||
Manual syllable durations
In some complex vocal music, it may be desirable to place lyrics
completely independently of notes. In this case do not use
\lyricsto or \addlyrics and do not set
associatedVoice. Syllables are entered like notes –
but with pitches replaced by text – and the duration of each
syllable is entered explicitly after the syllable.
By default, syllables will be left-aligned to the corresponding musical moment. Hyphenated lines may be drawn between syllables as usual, but extender lines cannot be drawn when there is no associated voice.
Here are two examples:
<<
\new Voice = "melody" {
\time 3/4
c2 e4 g2 f
}
\new Lyrics \lyricmode {
play1 the4 game4
}
>>
<<
\new Staff {
\relative c'' {
c2 c2
d1
}
}
\new Lyrics {
\lyricmode {
I2 like4. my8 cat!1
}
}
\new Staff {
\relative c' {
c8 c c c c c c c
c8 c c c c c c c
}
}
>>
This technique is useful when writing dialogue over music, see Dialogue over music.
To center-align syllables on the notes at the corresponding musical
moments, set associatedVoice to the name of the Voice context
containing those notes. When associatedVoice is set, both
double hyphens and double underscores can be used to draw
hyphenated lines and extenders under melismata correctly.
<<
\new Voice = "melody" {
\time 3/4
c2 e4 g f g
}
\new Lyrics \lyricmode {
\set associatedVoice = #"melody"
play2 the4 game2. __
}
>>
Vedi anche
Notation Reference: Dialogue over music.
Internals Reference: Lyrics, Voice.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Manual syllable durations ] | [ Su : Common notation for vocal music ] | [ Multiple notes to one syllable > ] | ||
Multiple syllables to one note
In order to assign more than one syllable to a single note with
spaces between the syllables, you can surround the phrase with
quotes or use a _ character. Alternatively, you can use
the tilde symbol (~) to get a lyric tie.
{
\relative c'' { \autoBeamOff
r8 b c fis, fis c' b e, }
\addlyrics { Che_in ques -- ta_e_in quel -- l'al -- tr'on -- da }
\addlyrics { "Che in" ques -- "ta e in" quel -- l'al -- tr'on -- da }
\addlyrics { Che~in ques -- ta~e~in quel -- l'al -- tr'on -- da }
}
Vedi anche
Internals Reference: LyricCombineMusic.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Multiple syllables to one note ] | [ Su : Common notation for vocal music ] | [ Extenders and hyphens > ] | ||
Multiple notes to one syllable
Sometimes, particularly in Medieval music, several notes are to be sung on one syllable; such vocalises are called melismata, or melismas. The syllable to a melisma is usually left-aligned with the first note of the melisma.
When a melisma occurs on a syllable other that the last one in a
word, that syllable is usually joined to the following one with a
hyphenated line. This is indicated by placing a double hyphen,
--, immediately after the syllable.
Alternatively, when a melisma occurs on the last or only syllable in
a word an extender line is usually drawn from the end of the syllable
to the last note of the melisma. This is indicated by placing a
double underscore, __, immediately after the word.
There are five ways in which melismata can be indicated:
-
Melismata are created automatically over notes which are tied
together:
<< \new Voice = "melody" { \time 3/4 f4 g2 ~ | g4 e2 ~ | e8 } \new Lyrics \lyricsto "melody" { Ky -- ri -- e __ } >> -
Melismata can be created automatically from the music by placing
slurs over the notes of each melisma. This is the usual way of
entering lyrics:
<< \new Voice = "melody" { \time 3/4 f4 g8 ( f e f ) e8 ( d e2 ) } \new Lyrics \lyricsto "melody" { Ky -- ri -- e __ } >>Note that phrasing slurs do not affect the creation of melismata.
-
Notes are considered a melisma if they are manually beamed,
providing automatic beaming is switched off. See
Impostare il comportamento della travatura automatica.
<< \new Voice = "melody" { \time 3/4 \autoBeamOff f4 g8[ f e f] e2. } \new Lyrics \lyricsto "melody" { Ky -- ri -- e } >>Clearly this is not suited to melismata over notes which are longer than eighth notes.
-
An unslurred group of notes will be treated as a melisma if they
are bracketed between
\melismaand\melismaEnd.<< \new Voice = "melody" { \time 3/4 f4 g8 \melisma f e f \melismaEnd e2. } \new Lyrics \lyricsto "melody" { Ky -- ri -- e } >> -
A melisma can be defined entirely in the lyrics by entering a
single underscore character,
_, for every extra note that has to be added to the melisma.<< \new Voice = "melody" { \time 3/4 f4 g8 f e f e8 d e2 } \new Lyrics \lyricsto "melody" { Ky -- ri -- _ _ _ e __ _ _ } >>
It is possible to have ties, slurs and manual beams in the melody
without their indicating melismata. To do this, set
melismaBusyProperties:
<<
\new Voice = "melody" {
\time 3/4
\set melismaBusyProperties = #'()
c4 d ( e )
g8 [ f ] f4 ~ f
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- e e -- le -- i -- son
}
>>
Other settings for melismaBusyProperties can be used to
selectively include or exclude ties, slurs, and beams from the
automatic detection of melismata; see melismaBusyProperties
in
Tunable context properties.
Alternatively, if all melismata indications are to be ignored,
ignoreMelismata may be set true;
see Stanzas with different rhythms.
If a melisma is required during a passage in which
melismaBusyProperties is active, it may be indicated by
placing a single underscore in the lyrics for each note which
should be included in the melisma:
<<
\new Voice = "melody" {
\time 3/4
\set melismaBusyProperties = #'()
c4 d ( e )
g8 [ f ] ~ f4 ~ f
}
\new Lyrics \lyricsto "melody" {
Ky -- ri -- _ e __ _ _ _
}
>>
Comandi predefiniti
\autoBeamOff,
\autoBeamOn,
\melisma,
\melismaEnd.
Vedi anche
Musical Glossary: melisma.
Learning Manual: Aligning lyrics to a melody.
Notation Reference: Aligning lyrics to a melody, Automatic syllable durations, Impostare il comportamento della travatura automatica, Stanzas with different rhythms.
Internals Reference: Tunable context properties.
Problemi noti e avvertimenti
Extender lines under melismata are not created automatically; they must be inserted manually with a double underscore.
Extenders and hyphens
In the last syllable of a word, melismata are sometimes indicated with a long horizontal line starting in the melisma syllable, and ending in the next one. Such a line is called an extender line, and it is entered as ‘ __ ’ (note the spaces before and after the two underscore characters).
Nota: Melismata are indicated in the score with extender lines, which are entered as one double underscore; but short melismata can also be entered by skipping individual notes, which are entered as single underscore characters; these do not make an extender line to be typeset by default.
Centered hyphens are entered as ‘ -- ’ between syllables of a same word (note the spaces before and after the two hyphen characters). The hyphen will be centered between the syllables, and its length will be adjusted depending on the space between the syllables.
In tightly engraved music, hyphens can be removed. Whether this
happens can be controlled with the minimum-distance (minimum
distance between two syllables) and the minimum-length
(threshold below which hyphens are removed) properties of
LyricHyphen.
Vedi anche
Internals Reference: LyricExtender, LyricHyphen.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Extenders and hyphens ] | [ Su : Vocal music ] | [ Working with lyrics and variables > ] | ||
2.1.2 Techniques specific to lyrics
| Working with lyrics and variables | ||
| Placing lyrics vertically | ||
| Placing syllables horizontally | ||
| Lyrics and repeats | ||
| Divisi lyrics |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Techniques specific to lyrics ] | [ Su : Techniques specific to lyrics ] | [ Placing lyrics vertically > ] | ||
Working with lyrics and variables
Variables containing lyrics can be created, but the lyrics must be entered in lyric mode:
musicOne = \relative c'' {
c4 b8. a16 g4. f8 e4 d c2
}
verseOne = \lyricmode {
Joy to the world, the Lord is come.
}
\score {
<<
\new Voice = "one" {
\time 2/4
\musicOne
}
\new Lyrics \lyricsto "one" {
\verseOne
}
>>
}
Durations do not need to be added if the variable is to be invoked
with \addlyrics or \lyricsto.
For different or more complex orderings, the best way is to define
the music and lyric variables first, then set up the hierarchy of
staves and lyrics, omitting the lyrics themselves, and then add the
lyrics using \context underneath. This ensures that the
voices referenced by \lyricsto have always been defined
earlier. For example:
sopranoMusic = \relative c'' { c4 c c c }
contraltoMusic = \relative c'' { a4 a a a }
sopranoWords = \lyricmode { Sop -- ra -- no words }
contraltoWords = \lyricmode { Con -- tral -- to words }
\score {
\new ChoirStaff <<
\new Staff {
\new Voice = "sopranos" {
\sopranoMusic
}
}
\new Lyrics = "sopranos"
\new Lyrics = "contraltos"
\new Staff {
\new Voice = "contraltos" {
\contraltoMusic
}
}
\context Lyrics = "sopranos" {
\lyricsto "sopranos" {
\sopranoWords
}
}
\context Lyrics = "contraltos" {
\lyricsto "contraltos" {
\contraltoWords
}
}
>>
}
Vedi anche
Notation Reference: Placing lyrics vertically.
Internals Reference: LyricCombineMusic, Lyrics.
Placing lyrics vertically
Depending on the type of music, lyrics may be positioned above the staff, below the staff, or between staves. Placing lyrics below the associated staff is the easiest, and can be achieved by simply defining the Lyrics context below the Staff context:
\score {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' { c4 c c c }
}
}
\new Lyrics {
\lyricsto "melody" {
Here are the words
}
}
>>
}
Lyrics may be positioned above the staff using one of two methods. The simplest (and preferred) method is to use the same syntax as above and explicitly specify the position of the lyrics:
\score {
<<
\new Staff = "staff" {
\new Voice = "melody" {
\relative c'' { c4 c c c }
}
}
\new Lyrics \with { alignAboveContext = "staff" } {
\lyricsto "melody" {
Here are the words
}
}
>>
}
Alternatively, a two-step process may be used. First the Lyrics
context is declared (without any content) before the Staff and
Voice contexts, then the \lyricsto command is placed after
the Voice declaration it references by using \context, as
follows:
\score {
<<
\new Lyrics = "lyrics" \with {
% lyrics above a staff should have this override
\override VerticalAxisGroup.staff-affinity = #DOWN
}
\new Staff {
\new Voice = "melody" {
\relative c'' { c4 c c c }
}
}
\context Lyrics = "lyrics" {
\lyricsto "melody" {
Here are the words
}
}
>>
}
When there are two voices on separate staves the lyrics may be placed between the staves using either of these methods. Here is an example of the second method:
\score {
\new ChoirStaff <<
\new Staff {
\new Voice = "sopranos" {
\relative c'' { c4 c c c }
}
}
\new Lyrics = "sopranos"
\new Lyrics = "contraltos" \with {
% lyrics above a staff should have this override
\override VerticalAxisGroup.staff-affinity = #DOWN
}
\new Staff {
\new Voice = "contraltos" {
\relative c'' { a4 a a a }
}
}
\context Lyrics = "sopranos" {
\lyricsto "sopranos" {
Sop -- ra -- no words
}
}
\context Lyrics = "contraltos" {
\lyricsto "contraltos" {
Con -- tral -- to words
}
}
>>
}
Other combinations of lyrics and staves may be generated by elaborating these examples, or by examining the templates in the Learning Manual, see Vocal ensembles templates.
Frammenti di codice selezionati
Obtaining 2.12 lyrics spacing in newer versions
The vertical spacing engine changed for version 2.14. This can cause
lyrics to be spaced differently. It is possible to set properties for
Lyric and Staff contexts to get the spacing engine to
behave as it did in version 2.12.
global = {
\key d \major
\time 3/4
}
sopMusic = \relative c' {
% VERSE ONE
fis4 fis fis | \break
fis4. e8 e4
}
altoMusic = \relative c' {
% VERSE ONE
d4 d d |
d4. b8 b4 |
}
tenorMusic = \relative c' {
a4 a a |
b4. g8 g4 |
}
bassMusic = \relative c {
d4 d d |
g,4. g8 g4 |
}
words = \lyricmode {
Great is Thy faith- ful- ness,
}
\score {
\new ChoirStaff <<
\new Lyrics = sopranos
\new Staff = women <<
\new Voice = "sopranos" {
\voiceOne
\global \sopMusic
}
\new Voice = "altos" {
\voiceTwo
\global \altoMusic
}
>>
\new Lyrics = "altos"
\new Lyrics = "tenors"
\new Staff = men <<
\clef bass
\new Voice = "tenors" {
\voiceOne
\global \tenorMusic
}
\new Voice = "basses" {
\voiceTwo \global \bassMusic
}
>>
\new Lyrics = basses
\context Lyrics = sopranos \lyricsto sopranos \words
\context Lyrics = altos \lyricsto altos \words
\context Lyrics = tenors \lyricsto tenors \words
\context Lyrics = basses \lyricsto basses \words
>>
\layout {
\context {
\Lyrics
\override VerticalAxisGroup.staff-affinity = ##f
\override VerticalAxisGroup.staff-staff-spacing =
#'((basic-distance . 0)
(minimum-distance . 2)
(padding . 2))
}
\context {
\Staff
\override VerticalAxisGroup.staff-staff-spacing =
#'((basic-distance . 0)
(minimum-distance . 2)
(padding . 2))
}
}
}
Vedi anche
Learning Manual: Vocal ensembles templates.
Notation Reference: Context layout order, Creating and referencing contexts.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Placing lyrics vertically ] | [ Su : Techniques specific to lyrics ] | [ Lyrics and repeats > ] | ||
Placing syllables horizontally
To increase the spacing between lyrics, set the
minimum-distance property of LyricSpace.
{
c c c c
\override Lyrics.LyricSpace.minimum-distance = #1.0
c c c c
}
\addlyrics {
longtext longtext longtext longtext
longtext longtext longtext longtext
}
To make this change for all lyrics in the score, set the property in the
\layout block.
\score {
\relative c' {
c c c c
c c c c
}
\addlyrics {
longtext longtext longtext longtext
longtext longtext longtext longtext
}
\layout {
\context {
\Lyrics
\override LyricSpace.minimum-distance = #1.0
}
}
}
Frammenti di codice selezionati
Lyrics alignment
Horizontal alignment for lyrics can be set by overriding the
self-alignment-X property of the LyricText object.
#-1 is left, #0 is center and #1 is right;
however, you can use #LEFT, #CENTER and #RIGHT as
well.
\layout { ragged-right = ##f }
\relative c'' {
c1
c1
c1
}
\addlyrics {
\once \override LyricText.self-alignment-X = #LEFT
"This is left-aligned"
\once \override LyricText.self-alignment-X = #CENTER
"This is centered"
\once \override LyricText.self-alignment-X = #1
"This is right-aligned"
}
Checking to make sure that text scripts and lyrics are within the margins requires additional calculations. To speed up processing slightly, this feature can be disabled:
\override Score.PaperColumn.keep-inside-line = ##f
To make lyrics avoid bar lines as well, use
\layout {
\context {
\Lyrics
\consists "Bar_engraver"
\consists "Separating_line_group_engraver"
\override BarLine.transparent = ##t
}
}
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Placing syllables horizontally ] | [ Su : Techniques specific to lyrics ] | [ Divisi lyrics > ] | ||
Lyrics and repeats
Simple repeats
Repeats in music are fully described elsewhere; see Repeats. This section explains how to add lyrics to repeated sections of music.
Lyrics to a section of music that is repeated should be surrounded by exactly the same repeat construct as the music, if the words are unchanged.
\score {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat volta 2 { b4 b b b }
}
}
}
\new Lyrics {
\lyricsto "melody" {
Not re -- peat -- ed.
\repeat volta 2 { Re -- peat -- ed twice. }
}
}
>>
}
The words will then be correctly expanded if the repeats are unfolded.
\score {
\unfoldRepeats {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat volta 2 { b4 b b b }
}
}
}
\new Lyrics {
\lyricsto "melody" {
Not re -- peat -- ed.
\repeat volta 2 { Re -- peat -- ed twice. }
}
}
>>
}
}
If the repeated section is to be unfolded and has different words, simply enter all the words:
\score {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat unfold 2 { b4 b b b }
}
}
}
\new Lyrics {
\lyricsto "melody" {
Not re -- peat -- ed.
The first time words.
Sec -- ond time words.
}
}
>>
}
When the words to a repeated volta section are different, the words
to each repeat must be entered in separate Lyrics contexts,
correctly nested in parallel sections:
\score {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat volta 2 { b4 b b b }
}
}
}
\new Lyrics \lyricsto "melody" {
Not re -- peat -- ed.
<<
{ The first time words. }
\new Lyrics {
\set associatedVoice = "melody"
Sec -- ond time words.
}
>>
}
>>
}
More verses may be added in a similar way:
\score {
<<
\new Staff {
\new Voice = "singleVoice" {
\relative c'' {
a4 a a a
\repeat volta 3 { b4 b b b }
c4 c c c
}
}
}
\new Lyrics \lyricsto "singleVoice" {
Not re -- peat -- ed.
<<
{ The first time words. }
\new Lyrics {
\set associatedVoice = "singleVoice"
Sec -- ond time words.
}
\new Lyrics {
\set associatedVoice = "singleVoice"
The third time words.
}
>>
The end sec -- tion.
}
>>
}
However, if this construct is embedded within a multi-staved
context such as a ChoirStaff the lyrics of the second and
third verses will appear beneath the bottom staff.
To position them correctly use alignBelowContext:
\score {
<<
\new Staff {
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat volta 3 { b4 b b b }
c4 c c c
}
}
}
\new Lyrics = "firstVerse" \lyricsto "melody" {
Not re -- peat -- ed.
<<
{ The first time words. }
\new Lyrics = "secondVerse"
\with { alignBelowContext = #"firstVerse" } {
\set associatedVoice = "melody"
Sec -- ond time words.
}
\new Lyrics = "thirdVerse"
\with { alignBelowContext = #"secondVerse" } {
\set associatedVoice = "melody"
The third time words.
}
>>
The end sec -- tion.
}
\new Voice = "harmony" {
\relative c' {
f4 f f f \repeat volta 2 { g8 g g4 g2 } a4 a8. a16 a2
}
}
>>
}
Repeats with alternative endings
If the words of the repeated section are the same, exactly the same structure can be used for both the lyrics and music.
\score {
<<
\new Staff {
\time 2/4
\new Voice = "melody" {
\relative c'' {
a4 a a a
\repeat volta 2 { b4 b }
\alternative { { b b } { b c } }
}
}
}
\new Lyrics {
\lyricsto "melody" {
Not re -- peat -- ed.
\repeat volta 2 { Re -- peat -- }
\alternative { { ed twice. } { ed twice. } }
}
}
>>
}
But when the repeated section has different words, a repeat
construct cannot be used around the words and \skip commands
have to be inserted manually to skip over the notes in the
alternative sections which do not apply.
Note: do not use an underscore, _, to skip notes – an
underscore indicates a melisma, causing the preceding syllable
to be left-aligned.
Nota: The \skip command must be followed by a number,
but this number is ignored in lyrics which derive their durations
from the notes in an associated melody through addlyrics or
lyricsto. Each \skip skips a single note of any
value, irrespective of the value of the following number.
\score {
<<
\new Staff {
\time 2/4
\new Voice = "melody" {
\relative c'' {
\repeat volta 2 { b4 b }
\alternative { { b b } { b c } }
c4 c
}
}
}
\new Lyrics {
\lyricsto "melody" {
The first time words.
\repeat unfold 2 { \skip 1 }
End here.
}
}
\new Lyrics {
\lyricsto "melody" {
Sec -- ond
\repeat unfold 2 { \skip 1 }
time words.
}
}
>>
}
When a note is tied over into two or more alternative endings a
tie is used to carry the note into the first alternative ending and
a \repeatTie is used in the second and subsequent endings.
This structure causes difficult alignment problems when lyrics are
involved and increasing the length of the alternative sections so
the tied notes are contained wholly within them may give a more
acceptable result.
The tie creates a melisma into the first alternative, but not into the second and subsequent alternatives, so to align the lyrics correctly it is necessary to disable the automatic creation of melismata over the volta section and insert manual skips.
\score {
<<
\new Staff {
\time 2/4
\new Voice = "melody" {
\relative c'' {
\set melismaBusyProperties = #'()
\repeat volta 2 { b4 b ~}
\alternative { { b b } { b \repeatTie c } }
\unset melismaBusyProperties
c4 c
}
}
}
\new Lyrics {
\lyricsto "melody" {
\repeat volta 2 { Here's a __ }
\alternative {
{ \skip 1 verse }
{ \skip 1 sec }
}
ond one.
}
}
>>
}
Note that if \unfoldRepeats is used around a section
containing \repeatTie, the \repeatTie should be
removed to avoid both types of tie being printed.
When the repeated section has different words a \repeat
cannot be used around the lyrics and \skip commands need to
be inserted manually, as before.
\score {
<<
\new Staff {
\time 2/4
\new Voice = "melody" {
\relative c'' {
\repeat volta 2 { b4 b ~}
\alternative { { b b } { b \repeatTie c } }
c4 c
}
}
}
\new Lyrics {
\lyricsto "melody" {
Here's a __ verse.
\repeat unfold 2 { \skip 1 }
}
}
\new Lyrics {
\lyricsto "melody" {
Here's one
\repeat unfold 2 { \skip 1 }
more to sing.
}
}
>>
}
If you wish to show extenders and hyphens into and out of alternative sections these must be inserted manually.
\score {
<<
\new Staff {
\time 2/4
\new Voice = "melody" {
\relative c'' {
\repeat volta 2 { b4 b ~}
\alternative { { b b } { b \repeatTie c } }
c4 c
}
}
}
\new Lyrics {
\lyricsto "melody" {
Here's a __ verse.
\repeat unfold 2 { \skip 1 }
}
}
\new Lyrics {
\lyricsto "melody" {
Here's "a_"
\skip 1
"_" sec -- ond one.
}
}
>>
}
Vedi anche
Notation Reference: Keeping contexts alive, Repeats.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Lyrics and repeats ] | [ Su : Techniques specific to lyrics ] | [ Stanzas > ] | ||
Divisi lyrics
When just the words and rhythms of the two parts differ with the pitches remaining the same, temporarily turning off the automatic detection of melismata and indicating the melisma in the lyrics may be the appropriate method to use:
\score {
<<
\new Voice = "melody" {
\relative c' {
\set melismaBusyProperties = #'()
\slurDown
\slurDashed
e4 e8 ( e ) c4 c |
\unset melismaBusyProperties
c
}
}
\new Lyrics \lyricsto "melody" {
They shall not o -- ver -- come
}
\new Lyrics \lyricsto "melody" {
We will _
}
>>
}
When both music and words differ it may be better to display the differing music and lyrics by naming voice contexts and attaching lyrics to those specific contexts:
\score {
<<
\new Voice = "melody" {
\relative c' {
<<
{
\voiceOne
e4 e8 e
}
\new Voice = "splitpart" {
\voiceTwo
c4 c
}
>>
\oneVoice
c4 c |
c
}
}
\new Lyrics \lyricsto "melody" {
They shall not o -- ver -- come
}
\new Lyrics \lyricsto "splitpart" {
We will
}
>>
}
It is common in choral music to have a voice part split for
several measures. The << {…} \\ {…} >>
construct, where the two (or more) musical expressions are
separated by double backslashes, might seem the proper way to
set the split voices. This construct, however, will assign
all the expressions within it to NEW Voice
contexts which will result in no lyrics being set for
them since the lyrics will be set to the original voice context
– not, typically, what one wants. The temporary polyphonic
passage is the proper construct to use, see section
Temporary polyphonic passages in Single-staff polyphony.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Divisi lyrics ] | [ Su : Vocal music ] | [ Adding stanza numbers > ] | ||
2.1.3 Stanzas
| Adding stanza numbers | ||
| Adding dynamics marks to stanzas | ||
| Adding singers’ names to stanzas | ||
| Stanzas with different rhythms | ||
| Printing stanzas at the end | ||
| Printing stanzas at the end in multiple columns |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Stanzas ] | [ Su : Stanzas ] | [ Adding dynamics marks to stanzas > ] | ||
Adding stanza numbers
Stanza numbers can be added by setting stanza, e.g.,
\new Voice {
\time 3/4 g2 e4 a2 f4 g2.
} \addlyrics {
\set stanza = #"1. "
Hi, my name is Bert.
} \addlyrics {
\set stanza = #"2. "
Oh, ché -- ri, je t'aime
}
These numbers are put just before the start of the first syllable.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Adding stanza numbers ] | [ Su : Stanzas ] | [ Adding singers' names to stanzas > ] | ||
Adding dynamics marks to stanzas
Stanzas differing in loudness may be indicated by putting a
dynamics mark before each stanza. In LilyPond, everything coming in
front of a stanza goes into the StanzaNumber object; dynamics
marks are no different. For technical reasons, you have to set the
stanza outside \lyricmode:
text = {
\set stanza = \markup { \dynamic "ff" "1. " }
\lyricmode {
Big bang
}
}
<<
\new Voice = "tune" {
\time 3/4
g'4 c'2
}
\new Lyrics \lyricsto "tune" \text
>>
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Adding dynamics marks to stanzas ] | [ Su : Stanzas ] | [ Stanzas with different rhythms > ] | ||
Adding singers’ names to stanzas
Names of singers can also be added. They are printed at the start of
the line, just like instrument names. They are created by setting
vocalName. A short version may be entered as
shortVocalName.
\new Voice {
\time 3/4 g2 e4 a2 f4 g2.
} \addlyrics {
\set vocalName = #"Bert "
Hi, my name is Bert.
} \addlyrics {
\set vocalName = #"Ernie "
Oh, ché -- ri, je t'aime
}
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Adding singers' names to stanzas ] | [ Su : Stanzas ] | [ Printing stanzas at the end > ] | ||
Stanzas with different rhythms
Often, different stanzas of one song are put to one melody in slightly
differing ways. Such variations can still be captured with
\lyricsto.
Ignoring melismata
One possibility is that the text has a melisma in one stanza, but
multiple syllables in another. One solution is to make the faster
voice ignore the melisma. This is done by setting
ignoreMelismata in the Lyrics context.
<<
\relative c' \new Voice = "lahlah" {
\set Staff.autoBeaming = ##f
c4
\slurDotted
f8.[( g16])
a4
}
\new Lyrics \lyricsto "lahlah" {
more slow -- ly
}
\new Lyrics \lyricsto "lahlah" {
go
\set ignoreMelismata = ##t
fas -- ter
\unset ignoreMelismata
still
}
>>
Problemi noti e avvertimenti
Unlike most \set commands, \set ignoreMelismata does
not work if prefixed with \once. It is necessary to use
\set and \unset to bracket the lyrics where melismata
are to be ignored.
Adding syllables to grace notes
By default, grace notes (e.g. via \grace) do not get assigned
syllables when using \lyricsto, but this behavior can be
changed:
<<
\new Voice = melody \relative c' {
f4 \appoggiatura a32 b4
\grace { f16[ a16] } b2
\afterGrace b2 { f16[ a16] }
\appoggiatura a32 b4
\acciaccatura a8 b4
}
\new Lyrics
\lyricsto melody {
normal
\set includeGraceNotes = ##t
case,
gra -- ce case,
after -- grace case,
\set ignoreMelismata = ##t
app. case,
acc. case.
}
>>
Problemi noti e avvertimenti
Like associatedVoice, includeGraceNotes needs to be
set at latest one syllable before the one which is to be put under a
grace note. For the case of a grace note at the very beginning of a
piece of music, consider using a \with or \context
block:
<<
\new Voice = melody \relative c' {
\grace { c16[( d e f] }
g1) f
}
\new Lyrics \with { includeGraceNotes = ##t }
\lyricsto melody {
Ah __ fa
}
>>
Switching to an alternative melody
More complex variations in setting lyrics to music are possible.
The melody to which the lyrics are being set can be changed from
within the lyrics by setting the associatedVoice property:
<<
\relative c' \new Voice = "lahlah" {
\set Staff.autoBeaming = ##f
c4
<<
\new Voice = "alternative" {
\voiceOne
\tuplet 3/2 {
% show associations clearly.
\override NoteColumn.force-hshift = #-3
f8 f g
}
}
{
\voiceTwo
f8.[ g16]
\oneVoice
} >>
a8( b) c
}
\new Lyrics \lyricsto "lahlah" {
Ju -- ras -- sic Park
}
\new Lyrics \lyricsto "lahlah" {
% Tricky: need to set associatedVoice
% one syllable too soon!
\set associatedVoice = "alternative" % applies to "ran"
Ty --
ran --
no --
\set associatedVoice = "lahlah" % applies to "rus"
sau -- rus Rex
} >>
The text for the first stanza is set to the melody called
‘lahlah’ in the usual way, but the second stanza is set initally
to the lahlah context and is then switched to the
alternative melody for the syllables ‘ran’ to ‘sau’ by
the lines:
\set associatedVoice = "alternative" % applies to "ran" Ty -- ran -- no -- \set associatedVoice = "lahlah" % applies to "rus" sau -- rus Rex
Here, alternative is the name of the Voice context
containing the triplet.
Note the placement of the \set associatedVoice command –
it appears to be one syllable too early, but this is correct.
Nota: The set associatedVoice command must be placed
one syllable before the one at which the switch to the new
voice is to occur. In other words, changing the associated Voice
happens one syllable later than expected. This is for technical
reasons, and it is not a bug.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Stanzas with different rhythms ] | [ Su : Stanzas ] | [ Printing stanzas at the end in multiple columns > ] | ||
Printing stanzas at the end
Sometimes it is appropriate to have one stanza set
to the music, and the rest added in verse form at
the end of the piece. This can be accomplished by adding
the extra verses into a \markup section outside
of the main score block. Notice that there are two
different ways to force linebreaks when using
\markup.
melody = \relative c' {
e d c d | e e e e |
d d e d | c1 |
}
text = \lyricmode {
\set stanza = #"1." Ma- ry had a lit- tle lamb,
its fleece was white as snow.
}
\score{ <<
\new Voice = "one" { \melody }
\new Lyrics \lyricsto "one" \text
>>
\layout { }
}
\markup { \column{
\line{ Verse 2. }
\line{ All the children laughed and played }
\line{ To see a lamb at school. }
}
}
\markup{
\wordwrap-string #"
Verse 3.
Mary took it home again,
It was against the rule."
}
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Printing stanzas at the end ] | [ Su : Stanzas ] | [ Songs > ] | ||
Printing stanzas at the end in multiple columns
When a piece of music has many verses, they are often printed in multiple columns across the page. An outdented verse number often introduces each verse. The following example shows how to produce such output in LilyPond.
melody = \relative c' {
c4 c c c | d d d d
}
text = \lyricmode {
\set stanza = #"1." This is verse one.
It has two lines.
}
\score {
<<
\new Voice = "one" { \melody }
\new Lyrics \lyricsto "one" \text
>>
\layout { }
}
\markup {
\fill-line {
\hspace #0.1 % moves the column off the left margin;
% can be removed if space on the page is tight
\column {
\line { \bold "2."
\column {
"This is verse two."
"It has two lines."
}
}
\vspace #0.1 % adds vertical spacing between verses
\line { \bold "3."
\column {
"This is verse three."
"It has two lines."
}
}
}
\hspace #0.1 % adds horizontal spacing between columns;
\column {
\line { \bold "4."
\column {
"This is verse four."
"It has two lines."
}
}
\vspace #0.1 % adds vertical spacing between verses
\line { \bold "5."
\column {
"This is verse five."
"It has two lines."
}
}
}
\hspace #0.1 % gives some extra space on the right margin;
% can be removed if page space is tight
}
}
Vedi anche
Internals Reference: LyricText, StanzaNumber.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Printing stanzas at the end in multiple columns ] | [ Su : Vocal music ] | [ References for songs > ] | ||
2.1.4 Songs
| References for songs | ||
| Lead sheets |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Songs ] | [ Su : Songs ] | [ Lead sheets > ] | ||
References for songs
Songs are usually written on three staves with the melody for the singer on the top staff and two staves of piano accompaniment at the bottom. The lyrics of the first stanza are printed immediately underneath the top staff. If there are just a small number of further stanzas these can be printed immediately under the first one, but if there are more stanzas than can be easily accommodated there the second and subsequent stanzas are printed after the music as stand-alone text.
All the notational elements needed to write songs are fully described elsewhere:
- For constructing the staff layout, see Displaying staves.
- For writing piano music, see Keyboard and other multi-staff instruments.
- For writing the lyrics to a melody line, see Common notation for vocal music.
- For placing the lyrics, see Placing lyrics vertically.
- For entering stanzas, see Stanzas.
- Songs are frequently printed with the chording indicated by chord names above the staves. This is described in Displaying chords.
- To print fret diagrams of the chords for guitar accompaniment or accompaniment by other fretted instruments, see “Fret diagram markups” in Common notation for fretted strings.
Vedi anche
Learning Manual: Songs.
Notation Reference: Common notation for vocal music, Displaying chords, Displaying staves, Keyboard and other multi-staff instruments, Placing lyrics vertically, Stanzas.
Snippets: Vocal music.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for songs ] | [ Su : Songs ] | [ Choral > ] | ||
Lead sheets
Lead sheets may be printed by combining vocal parts and ‘chord mode’; this syntax is explained in Chord notation.
Frammenti di codice selezionati
Simple lead sheet
When put together, chord names, a melody, and lyrics form a lead sheet:
<<
\chords { c2 g:sus4 f e }
\relative c'' {
a4 e c8 e r4
b2 c4( d)
}
\addlyrics { One day this shall be free __ }
>>
Vedi anche
Notation Reference: Chord notation.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Lead sheets ] | [ Su : Vocal music ] | [ References for choral > ] | ||
2.1.5 Choral
This section discusses notation issues that relate most directly to choral music. This includes anthems, part songs, oratorio, etc.
| References for choral | ||
| Score layouts for choral | ||
| Divided voices |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Choral ] | [ Su : Choral ] | [ Score layouts for choral > ] | ||
References for choral
Choral music is usually notated on two, three or four staves within
a ChoirStaff group. Accompaniment, if required, is placed
beneath in a PianoStaff group, which is usually reduced in
size for a capella choral works. The notes for each vocal
part are placed in a Voice context, with each staff
being given either a single vocal part (i.e., one Voice) or
a pair of vocal parts (i.e., two Voices).
Words are placed in Lyrics contexts, either underneath each
corresponding music staff, or one above and one below the music
staff if this contains the music for two parts.
Several common topics in choral music are described fully elsewhere:
- An introduction to creating an SATB vocal score can be found in the Learning Manual, see Four-part SATB vocal score.
- Several templates suitable for various styles of choral music can also be found in the Learning Manual, see Vocal ensembles templates.
-
For information about
ChoirStaffandPianoStaffsee Grouping staves. - Shape note heads, as used in Sacred Harp and similar notation, are described in Teste di nota a forma variabile.
-
When two vocal parts share a staff the stems, ties, slurs, etc., of
the higher part will be directed up and those of the lower part
down. To do this, use
\voiceOneand\voiceTwo. See Single-staff polyphony. - When a vocal part temporarily splits, you should use Temporary polyphonic passages (see Single-staff polyphony).
Comandi predefiniti
\oneVoice,
\voiceOne,
\voiceTwo.
Vedi anche
Learning Manual: Four-part SATB vocal score, Vocal ensembles templates.
Notation Reference: Context layout order, Grouping staves, Teste di nota a forma variabile, Single-staff polyphony.
Snippets: Vocal music.
Internals Reference: ChoirStaff, Lyrics, PianoStaff.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for choral ] | [ Su : Choral ] | [ Divided voices > ] | ||
Score layouts for choral
Choral music containing four staves, with or without piano accompaniment, is usually laid out with two systems per page. Depending on the page size, achieving this may require changes to several default settings. The following settings should be considered:
- The global staff size can be modified to change the overall size of the elements of the score. See Setting the staff size.
- The distances between the systems, the staves and the lyrics can all be adjusted independently. See Vertical spacing.
- The dimensions of the vertical layout variables can be displayed as an aid to adjusting the vertical spacing. This and other possibilities for fitting the music onto fewer pages are described in Fitting music onto fewer pages.
- If the number of systems per page changes from one to two it is customary to indicate this with a system separator mark between the two systems. See Separating systems.
- For details of other page formatting properties, see Page layout.
Dynamic markings by default are placed below the staff, but in
choral music they are usually placed above the staff in order to
avoid the lyrics. The predefined command \dynamicUp does
this for the dynamic markings in a single Voice context.
If there are many Voice contexts this predefined command
would have to be placed in every one. Alternatively its expanded
form can be used to place all dynamic markings in the entire score
above their respective staves, as shown here:
\score {
\new ChoirStaff <<
\new Staff {
\new Voice {
\relative c'' { g4\f g g g }
}
}
\new Staff {
\new Voice {
\relative c' { d4 d d\p d }
}
}
>>
\layout {
\context {
\Score
\override DynamicText.direction = #UP
\override DynamicLineSpanner.direction = #UP
}
}
}
Comandi predefiniti
\dynamicUp, \dynamicDown, \dynamicNeutral.
Vedi anche
Notation Reference: Changing spacing, Displaying spacing, Fitting music onto fewer pages, Page layout, Score layout, Separating systems, Setting the staff size, Using an extra voice for breaks, Vertical spacing.
Internals Reference: VerticalAxisGroup, StaffGrouper.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Score layouts for choral ] | [ Su : Choral ] | [ Opera and stage musicals > ] | ||
Divided voices
Using arpeggioBracket to make divisi more visible
The arpeggioBracket can be used to indicate the division of
voices where there are no stems to provide the information. This is
often seen in choral music.
\include "english.ly"
\score {
\relative c'' {
\key a \major
\time 2/2
<<
\new Voice = "upper"
<<
{ \voiceOne \arpeggioBracket
a2( b2
<b d>1\arpeggio)
<cs e>\arpeggio ~
<cs e>4
}
\addlyrics { \lyricmode { A -- men. } }
>>
\new Voice = "lower"
{ \voiceTwo
a1 ~
a
a ~
a4 \bar "|."
}
>>
}
\layout { ragged-right = ##t }
}
Vedi anche
Notation Reference: Expressive marks as lines.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Divided voices ] | [ Su : Vocal music ] | [ References for opera and stage musicals > ] | ||
2.1.6 Opera and stage musicals
The music, lyrics and dialogue to opera and stage musicals are usually set out in one or more of the following forms:
- A Conductors’ Score containing the full orchestral and vocal parts, together with libretto cues if there are spoken passages.
- Orchestral Parts containing the music for the individual instruments of the orchestra or band.
- A Vocal Score containing all vocal parts with piano accompaniment. The accompaniment is usually an orchestral reduction, and if so the name of the original orchestral instrument is often indicated. Vocal scores sometimes includes stage directions and libretto cues.
- A Vocal Book containing just the vocal parts (no accompaniment), sometimes combined with the libretto.
- A Libretto containing the extended passages of spoken dialogue usually found in musicals, together with the words to the sung parts. Stage directions are usually included. LilyPond can be used to typeset libretti but as they contain no music alternative methods may be preferable.
The sections in the LilyPond documentation which cover the topics needed to create scores in the styles commonly found in opera and musicals are indicated in the References below. This is followed by sections covering those techniques which are peculiar to typesetting opera and musical scores.
| References for opera and stage musicals | ||
| Character names | ||
| Musical cues | ||
| Spoken music | ||
| Dialogue over music |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Opera and stage musicals ] | [ Su : Opera and stage musicals ] | [ Character names > ] | ||
References for opera and stage musicals
- A conductors’ score contains many grouped staves and lyrics. Ways of grouping staves is shown in Grouping staves. To nest groups of staves see Nested staff groups.
- The printing of empty staves in conductors’ scores and vocal scores is often suppressed. To create such a “Frenched score” see Hiding staves.
- Writing orchestral parts is covered in Writing parts. Other sections in the Specialist notation chapter may be relevant, depending on the orchestration used. Many instruments are transposing instruments, see Trasporto strumentale.
- If the number of systems per page changes from page to page it is customary to separate the systems with a system separator mark. See Separating systems.
- For details of other page formatting properties, see Page layout.
-
Dialogue cues, stage directions and footnotes can be inserted, see
Creating footnotes and Text. Extensive stage directions
can also be added with a section of stand-alone markups between two
\scoreblocks, see Separate text.
Vedi anche
Musical Glossary: Frenched score, Frenched staves, transposing instrument.
Notation Reference: Creating footnotes, Grouping staves, Hiding staves, Trasporto strumentale, Nested staff groups, Page layout, Separating systems, Trasposizione, Writing parts, Writing text.
Snippets: Vocal music.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for opera and stage musicals ] | [ Su : Opera and stage musicals ] | [ Musical cues > ] | ||
Character names
Character names are usually shown to the left of the staff when the staff is dedicated to that character alone:
\score {
<<
\new Staff {
\set Staff.vocalName = \markup \smallCaps Kaspar
\set Staff.shortVocalName = \markup \smallCaps Kas.
\relative c' {
\clef "G_8"
c4 c c c
\break
c4 c c c
}
}
\new Staff {
\set Staff.vocalName = \markup \smallCaps Melchior
\set Staff.shortVocalName = \markup \smallCaps Mel
\clef "bass"
\relative c' {
a4 a a a
a4 a a a
}
}
>>
}
When two or more characters share a staff the character’s name is usually printed above the staff at the start of every section applying to that character. This can be done with markup. Often a specific font is used for this purpose.
\clef "G_8" c4^\markup \fontsize #1 \smallCaps Kaspar c c c \clef "bass" a4^\markup \fontsize #1 \smallCaps Melchior a a a \clef "G_8" c4^\markup \fontsize #1 \smallCaps Kaspar c c c
Alternatively, if there are many character changes, it may be
easier to set up “instrument” definitions for each character at
the top level so that \instrumentSwitch can be used to
indicate each change.
\addInstrumentDefinition #"kaspar"
#`((instrumentTransposition . ,(ly:make-pitch -1 0 0))
(shortInstrumentName . "Kas.")
(clefGlyph . "clefs.G")
(clefTransposition . -7)
(middleCPosition . 1)
(clefPosition . -2)
(instrumentCueName . ,(markup #:fontsize 1 #:smallCaps "Kaspar"))
(midiInstrument . "voice oohs"))
\addInstrumentDefinition #"melchior"
#`((instrumentTransposition . ,(ly:make-pitch 0 0 0))
(shortInstrumentName . "Mel.")
(clefGlyph . "clefs.F")
(clefTransposition . 0)
(middleCPosition . 6)
(clefPosition . 2)
(instrumentCueName . ,(markup #:fontsize 1 #:smallCaps "Melchior"))
(midiInstrument . "choir aahs"))
\relative c' {
\instrumentSwitch "kaspar"
c4 c c c
\instrumentSwitch "melchior"
a4 a a a
\instrumentSwitch "kaspar"
c4 c c c
}
Vedi anche
Notation Reference: Instrument names, Scheme functions, Text, Text markup commands.
Extending LilyPond: Markup construction in Scheme.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Character names ] | [ Su : Opera and stage musicals ] | [ Spoken music > ] | ||
Musical cues
Musical cues can be inserted in Vocal Scores, Vocal Books and Orchestral Parts to indicate what music in another part immediately precedes an entry. Also, cues are often inserted in the piano reduction in Vocal Scores to indicate what each orchestral instrument is playing. This aids the conductor when a full Conductors’ Score is not available.
The basic mechanism for inserting cues is fully explained in the main text, see Quoting other voices and Formatting cue notes. But when many cues have to be inserted, for example, as an aid to a conductor in a vocal score, the instrument name must be positioned carefully just before and close to the start of the cue notes. The following example shows how this is done.
flute = \relative c'' {
s4 s4 e g
}
\addQuote "flute" { \flute }
pianoRH = \relative c'' {
c4. g8
% position name of cue-ing instrument just before the cue notes,
% and above the staff
\new CueVoice {
\override InstrumentSwitch.self-alignment-X = #RIGHT
\set instrumentCueName = "Flute"
}
\cueDuring "flute" #UP { g4 bes4 }
}
pianoLH = \relative c { c4 <c' e> e, <g c> }
\score {
\new PianoStaff <<
\new Staff {
\pianoRH
}
\new Staff {
\clef "bass"
\pianoLH
}
>>
}
If a transposing instrument is being quoted the instrument part should
specify its key so the conversion of its cue notes will be done
automatically. The example below shows this transposition for a
B-flat clarinet. The notes in this example are low on the staff so
DOWN is specified in \cueDuring (so the stems are
down) and the instrument name is positioned below the staff. Note
also that the piano right-hand voice is explicitly declared. This
is because the cue notes in this example begin at the start of the
first bar and this would otherwise cause the entire piano right-hand
notes to be placed in a CueVoice context.
clarinet = \relative c' {
\transposition bes
fis4 d d c
}
\addQuote "clarinet" { \clarinet }
pianoRH = \relative c'' {
\transposition c'
% position name of cue-ing instrument below the staff
\new CueVoice {
\override InstrumentSwitch.self-alignment-X = #RIGHT
\override InstrumentSwitch.direction = #DOWN
\set instrumentCueName = "Clar."
}
\cueDuring "clarinet" #DOWN { c4. g8 }
g4 bes4
}
pianoLH = \relative c { c4 <c' e> e, <g c> }
\score {
<<
\new PianoStaff <<
\new Staff {
\new Voice {
\pianoRH
}
}
\new Staff {
\clef "bass"
\pianoLH
}
>>
>>
}
From these two examples it is clear that inserting many cues in a Vocal Score would be tedious, and the notes of the piano part would become obscured. However, as the following snippet shows, it is possible to define a music function to reduce the amount of typing and to make the piano notes clearer.
Frammenti di codice selezionati
Adding orchestral cues to a vocal score
This shows one approach to simplify adding many orchestral cues to the
piano reduction in a vocal score. The music function \cueWhile
takes four arguments: the music from which the cue is to be taken, as
defined by \addQuote, the name to be inserted before the cue
notes, then either #UP or #DOWN to specify either
\voiceOne with the name above the staff or \voiceTwo
with the name below the staff, and finally the piano music in parallel
with which the cue notes are to appear. The name of the cued
instrument is positioned to the left of the cued notes. Many passages
can be cued, but they cannot overlap each other in time.
cueWhile =
#(define-music-function
(parser location instrument name dir music)
(string? string? ly:dir? ly:music?)
#{
\cueDuring $instrument #dir {
\once \override TextScript.self-alignment-X = #RIGHT
\once \override TextScript.direction = $dir
<>-\markup { \tiny #name }
$music
}
#})
flute = \relative c'' {
\transposition c'
s4 s4 e g
}
\addQuote "flute" { \flute }
clarinet = \relative c' {
\transposition bes
fis4 d d c
}
\addQuote "clarinet" { \clarinet }
singer = \relative c'' { c4. g8 g4 bes4 }
words = \lyricmode { here's the lyr -- ics }
pianoRH = \relative c'' {
\transposition c'
\cueWhile "clarinet" "Clar." #DOWN { c4. g8 }
\cueWhile "flute" "Flute" #UP { g4 bes4 }
}
pianoLH = \relative c { c4 <c' e> e, <g c> }
\score {
<<
\new Staff {
\new Voice = "singer" {
\singer
}
}
\new Lyrics {
\lyricsto "singer"
\words
}
\new PianoStaff <<
\new Staff {
\new Voice {
\pianoRH
}
}
\new Staff {
\clef "bass"
\pianoLH
}
>>
>>
}
Vedi anche
Musical Glossary: cue-notes.
Notation Reference: Aligning objects, Direction and placement, Formatting cue notes, Quoting other voices, Using music functions.
Snippets: Vocal music.
Internals Reference: InstrumentSwitch, CueVoice.
Problemi noti e avvertimenti
\cueDuring automatically inserts a CueVoice context
and all cue notes are placed in that context. This means it is not
possible to have two overlapping sequences of cue notes by this
technique. Overlapping sequences could be entered by explicitly
declaring separate CueVoice contexts and using
\quoteDuring to extract and insert the cue notes.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Musical cues ] | [ Su : Opera and stage musicals ] | [ Dialogue over music > ] | ||
Spoken music
Such effects as ‘parlato’ or ‘Sprechgesang’ require performers to speak without pitch but still with rhythm; these are notated by cross note heads, as demonstrated in Teste di nota speciali.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Spoken music ] | [ Su : Opera and stage musicals ] | [ Chants psalms and hymns > ] | ||
Dialogue over music
Dialogue over music is usually printed over the staves in an italic font, with the start of each phrase keyed in to a particular music moment.
For short interjections a simple markup suffices.
a4^\markup { \smallCaps { Alex - } \italic { He's gone } } a a a
a4 a a^\markup { \smallCaps { Bethan - } \italic Where? } a
a4 a a a
For longer phrases it may be necessary to expand the music to make the words fit neatly. There is no provision in LilyPond to do this fully automatically, and some manual intervention to layout the page will be necessary.
For long phrases or for passages with a lot of closely packed dialogue, using a Lyrics context will give better results. The Lyrics context should not be associated with a music Voice; instead each section of dialogue should be given an explicit duration. If there is a gap in the dialogue, the final word should be separated from the rest and the duration split between them so that the underlying music spaces out smoothly.
If the dialogue extends for more than one line it will be necessary
to manually insert \breaks and adjust the placing of the
dialogue to avoid running into the right margin. The final word of
the last measure on a line should also be separated out, as above.
Here is an example illustrating how this might be done.
music = \relative c'' {
\repeat unfold 3 { a4 a a a }
}
dialogue = \lyricmode {
\markup {
\fontsize #1 \upright \smallCaps Abe:
"Say this over measures one and"
}4*7
"two"4 |
\break
"and this over measure"4*3
"three"4 |
}
\score {
<<
\new Lyrics \with {
\override LyricText.font-shape = #'italic
\override LyricText.self-alignment-X = #LEFT
}
{ \dialogue }
\new Staff {
\new Voice { \music }
}
>>
}
Vedi anche
Notation Reference: Manual syllable durations, Text.
Internal Reference: LyricText.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Dialogue over music ] | [ Su : Vocal music ] | [ References for chants and psalms > ] | ||
2.1.7 Chants psalms and hymns
The music and words for chants, psalms and hymns usually follow a well-established format in any particular church. Although the formats may differ from church to church the type-setting problems which arise are broadly similar, and are covered in this section.
| References for chants and psalms | ||
| Setting a chant | ||
| Pointing a psalm | ||
| Partial measures in hymn tunes |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Chants psalms and hymns ] | [ Su : Chants psalms and hymns ] | [ Setting a chant > ] | ||
References for chants and psalms
Typesetting Gregorian chant in various styles of ancient notation is described in Ancient notation.
Vedi anche
Notation reference: Ancient notation.
Snippets: Vocal music.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for chants and psalms ] | [ Su : Chants psalms and hymns ] | [ Pointing a psalm > ] | ||
Setting a chant
Modern chant settings use modern notation with varying numbers of elements taken from ancient notation. Some of the elements and methods to consider are shown here.
Chants often use quarter notes without stems to indicate the pitch, with the rhythm being taken from the spoken rhythm of the words.
stemOff = { \override Staff.Stem.transparent = ##t }
\relative c' {
\stemOff
a'4 b c2 |
}
Chants often omit the bar lines or use shortened or dotted bar lines to indicate pauses in the music. To omit all bar lines from all staves remove the bar line engraver completely:
\score {
\new StaffGroup <<
\new Staff {
\relative c'' {
a4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
\new Staff {
\relative c'' {
a4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
>>
\layout {
\context {
\Staff
\remove "Bar_engraver"
}
}
}
Bar lines can also be removed on a staff-by-staff basis:
\score {
\new ChoirStaff <<
\new Staff
\with { \remove "Bar_engraver" } {
\relative c'' {
a4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
\new Staff {
\relative c'' {
a4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
>>
}
To remove bar lines from just a section of music treat it as a
cadenza. If the section is long you may need to insert dummy
bar lines with \bar "" to show where the line should break.
a4 b c2 | \cadenzaOn a4 b c2 a4 b c2 \bar "" a4 b c2 a4 b c2 \cadenzaOff a4 b c2 | a4 b c2 |
Rests or pauses in chants can be indicated by modified bar lines.
a4 \cadenzaOn b c2 a4 b c2 \bar "'" a4 b c2 a4 b c2 \bar ";" a4 b c2 \bar "!" a4 b c2 \bar "||"
Alternatively, the notation used in Gregorian chant for pauses or
rests is sometimes used even though the rest of the notation is
modern. This uses a modified \breathe mark:
divisioMinima = {
\once \override BreathingSign.stencil = #ly:breathing-sign::divisio-minima
\once \override BreathingSign.Y-offset = #0
\breathe
}
divisioMaior = {
\once \override BreathingSign.stencil = #ly:breathing-sign::divisio-maior
\once \override BreathingSign.Y-offset = #0
\breathe
}
divisioMaxima = {
\once \override BreathingSign.stencil = #ly:breathing-sign::divisio-maxima
\once \override BreathingSign.Y-offset = #0
\breathe
}
finalis = {
\once \override BreathingSign.stencil = #ly:breathing-sign::finalis
\once \override BreathingSign.Y-offset = #0
\breathe
}
\score {
\relative c'' {
g2 a4 g
\divisioMinima
g2 a4 g
\divisioMaior
g2 a4 g
\divisioMaxima
g2 a4 g
\finalis
}
\layout {
\context {
\Staff
\remove "Bar_engraver"
}
}
}
Chants usually omit the time signature and often omit the clef too.
\score {
\new Staff {
\relative c'' {
a4 b c2 |
a4 b c2 |
a4 b c2 |
}
}
\layout {
\context {
\Staff
\remove "Bar_engraver"
\remove "Time_signature_engraver"
\remove "Clef_engraver"
}
}
}
Chants for psalms in the Anglican tradition are usually either single, with 7 bars of music, or double, with two lots of 7 bars. Each group of 7 bars is divided into two halves, corresponding to the two halves of each verse, usually separated by a double bar line. Only whole and half notes are used. The 1st bar in each half always contains a single chord of whole notes. This is the “reciting note”. Chants are usually centered on the page.
SopranoMusic = \relative g' {
g1 | c2 b | a1 | \bar "||"
a1 | d2 c | c b | c1 | \bar "||"
}
AltoMusic = \relative c' {
e1 | g2 g | f1 |
f1 | f2 e | d d | e1 |
}
TenorMusic = \relative a {
c1 | c2 c | c1 |
d1 | g,2 g | g g | g1 |
}
BassMusic = \relative c {
c1 | e2 e | f1 |
d1 | b2 c | g' g | c,1 |
}
global = {
\time 2/2
}
% Use markup to center the chant on the page
\markup {
\fill-line {
\score { % centered
<<
\new ChoirStaff <<
\new Staff <<
\global
\clef "treble"
\new Voice = "Soprano" <<
\voiceOne
\SopranoMusic
>>
\new Voice = "Alto" <<
\voiceTwo
\AltoMusic
>>
>>
\new Staff <<
\clef "bass"
\global
\new Voice = "Tenor" <<
\voiceOne
\TenorMusic
>>
\new Voice = "Bass" <<
\voiceTwo
\BassMusic
>>
>>
>>
>>
\layout {
\context {
\Score
\override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/2)
}
\context {
\Staff
\remove "Time_signature_engraver"
}
}
} % End score
}
} % End markup
Some other approaches to setting such a chant are shown in the first of the following snippets.
Frammenti di codice selezionati
Chant or psalms notation
This form of notation is used for the chant of the Psalms, where verses aren’t always the same length.
stemOn = {
\revert Staff.Stem.transparent
\revert Staff.Flag.transparent
}
stemOff = {
\override Staff.Stem.transparent = ##t
\override Staff.Flag.transparent = ##t
}
\score {
\new Staff \with { \remove "Time_signature_engraver" }
{
\key g \minor
\cadenzaOn
\stemOff a'\breve bes'4 g'4
\stemOn a'2 \bar "||"
\stemOff a'\breve g'4 a'4
\stemOn f'2 \bar "||"
\stemOff a'\breve^\markup { \italic flexe }
\stemOn g'2 \bar "||"
}
}
Canticles and other liturgical texts may be set more freely, and may use notational elements from ancient music. Often the words are shown underneath and aligned with the notes. If so, the notes are spaced in accordance with the syllables rather than the notes’ durations.
Modello per notazione antica – trascrizione moderna di musica gregoriana
Questo esempio mostra come realizzare una trascrizione moderna di musica gregoriana. La musica gregoriana non presenta suddivisione in misure né gambi; utilizza soltanto le teste della minima e della semiminima, e dei segni appositi che indicano pause di diversa lunghezza.
\include "gregorian.ly"
chant = \relative c' {
\set Score.timing = ##f
f4 a2 \divisioMinima
g4 b a2 f2 \divisioMaior
g4( f) f( g) a2 \finalis
}
verba = \lyricmode {
Lo -- rem ip -- sum do -- lor sit a -- met
}
\score {
\new Staff <<
\new Voice = "melody" \chant
\new Lyrics = "one" \lyricsto melody \verba
>>
\layout {
\context {
\Staff
\remove "Time_signature_engraver"
\remove "Bar_engraver"
\override Stem.transparent = ##t
\override Flag.transparent = ##t
}
\context {
\Voice
\override Stem.length = #0
}
\context {
\Score
barAlways = ##t
}
}
}
Vedi anche
Learning Manual: Visibility and color of objects, Vocal ensembles templates.
Notation Reference: Ancient notation, Stanghette, Modifying context plug-ins, Typesetting Gregorian chant, Musica in tempo libero, Visibility of objects.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Setting a chant ] | [ Su : Chants psalms and hymns ] | [ Partial measures in hymn tunes > ] | ||
Pointing a psalm
The words to an Anglican psalm are usually printed in separate verses centered underneath the chant.
Single chants (with 7 bars) are repeated for every verse. Double chants (with 14 bars) are repeated for every pair of verses. Marks are inserted in the words to show how they should be fitted to the chant. Each verse is divided into two halves. A colon is usually used to indicate this division. This corresponds to the double bar line in the music. The words before the colon are sung to the first three bars of music; the words after the colon are sung to the last four bars.
Single bar lines (or in some psalters an inverted comma or similar
symbol) are inserted between words to indicate where the bar lines
in the music fall. In markup mode a single bar line can be entered
with the bar check symbol, |.
\markup {
\fill-line {
\column {
\left-align {
\line { O come let us sing | unto the | Lord : let }
\line { us heartily rejoice in the | strength of | our }
\line { sal- | -vation. }
}
}
}
}
Other symbols may require glyphs from the fetaMusic fonts.
For details, see Fonts.
tick = \markup {
\raise #1 \fontsize #-5 \musicglyph #"scripts.rvarcomma"
}
\markup {
\fill-line {
\column {
\left-align {
\line { O come let us sing \tick unto the \tick Lord : let }
\line {
us heartily rejoice in the \tick strength of \tick our
}
\line { sal \tick vation. }
}
}
}
}
Where there is one whole note in a bar all the words corresponding to that bar are recited on that one note in speech rhythm. Where there are two notes in a bar there will usually be only one or two corresponding syllables. If there are more that two syllables a dot is usually inserted to indicate where the change in note occurs.
dot = \markup {
\raise #0.7 \musicglyph #"dots.dot"
}
tick = \markup {
\raise #1 \fontsize #-5 \musicglyph #"scripts.rvarcomma"
}
\markup {
\fill-line {
\column {
\left-align {
\line {
O come let us sing \tick unto \dot the \tick Lord : let
}
\line {
us heartily rejoice in the \tick strength of \tick our
}
\line { sal \tick vation. }
}
}
}
}
In some psalters an asterisk is used to indicate a break in a recited section instead of a comma, and stressed or slightly lengthened syllables are indicated in bold text.
dot = \markup {
\raise #0.7 \musicglyph #"dots.dot"
}
tick = \markup {
\raise #1 \fontsize #-5 \musicglyph #"scripts.rvarcomma"
}
\markup {
\fill-line {
\column {
\left-align {
\line { Today if ye will hear his voice * }
\line {
\concat { \bold hard en }
| not your | hearts : as in the pro-
}
\line { vocation * and as in the \bold day of tempt- | }
\line { -ation | in the | wilderness. }
}
}
}
}
In other psalters an accent is placed over the syllable to indicate stress.
tick = \markup {
\raise #2 \fontsize #-5 \musicglyph #"scripts.rvarcomma"
}
\markup {
\fill-line {
\column {
\left-align {
\line {
O come let us \concat {
si \combine \tick ng
}
| unto the | Lord : let
}
\line {
us heartily \concat {
rejo \combine \tick ice
}
in the | strength of | our
}
\line { sal- | -vation. }
}
}
}
}
The use of markup to center text, and arrange lines in columns is described in Formatting text.
Most of these elements are shown in one or other of the two verses in the template, see Psalms.
Vedi anche
Learning Manual: Psalms, Vocal ensembles templates.
Notation Reference: Fonts, Formatting text.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Pointing a psalm ] | [ Su : Chants psalms and hymns ] | [ Ancient vocal music > ] | ||
Partial measures in hymn tunes
Hymn tunes frequently start and end every line of music with
partial measures so that each line of music corresponds exactly
with a line of text. This requires a \partial command at
the start of the music and \bar "|" or \bar "||"
commands at the end of each line.
Modello per inno
Il codice seguente presenta un modo di impostare un inno in cui ogni verso inizia e finisce con una misura parziale. Mostra anche come aggiungere delle strofe come testo separato sotto la musica.
Timeline = {
\time 4/4
\tempo 4=96
\partial 2
s2 | s1 | s2 \breathe s2 | s1 | s2 \bar "||" \break
s2 | s1 | s2 \breathe s2 | s1 | s2 \bar "||"
}
SopranoMusic = \relative g' {
g4 g | g g g g | g g g g | g g g g | g2
g4 g | g g g g | g g g g | g g g g | g2
}
AltoMusic = \relative c' {
d4 d | d d d d | d d d d | d d d d | d2
d4 d | d d d d | d d d d | d d d d | d2
}
TenorMusic = \relative a {
b4 b | b b b b | b b b b | b b b b | b2
b4 b | b b b b | b b b b | b b b b | b2
}
BassMusic = \relative g {
g4 g | g g g g | g g g g | g g g g | g2
g4 g | g g g g | g g g g | g g g g | g2
}
global = {
\key g \major
}
\score { % Start score
<<
\new PianoStaff << % Start pianostaff
\new Staff << % Start Staff = RH
\global
\clef "treble"
\new Voice = "Soprano" << % Start Voice = "Soprano"
\Timeline
\voiceOne
\SopranoMusic
>> % End Voice = "Soprano"
\new Voice = "Alto" << % Start Voice = "Alto"
\Timeline
\voiceTwo
\AltoMusic
>> % End Voice = "Alto"
>> % End Staff = RH
\new Staff << % Start Staff = LH
\global
\clef "bass"
\new Voice = "Tenor" << % Start Voice = "Tenor"
\Timeline
\voiceOne
\TenorMusic
>> % End Voice = "Tenor"
\new Voice = "Bass" << % Start Voice = "Bass"
\Timeline
\voiceTwo
\BassMusic
>> % End Voice = "Bass"
>> % End Staff = LH
>> % End pianostaff
>>
} % End score
\markup {
\fill-line {
""
{
\column {
\left-align {
"This is line one of the first verse"
"This is line two of the same"
"And here's line three of the first verse"
"And the last line of the same"
}
}
}
""
}
}
\paper { % Start paper block
indent = 0 % don't indent first system
line-width = 130 % shorten line length to suit music
} % End paper block
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Partial measures in hymn tunes ] | [ Su : Vocal music ] | [ Keyboard and other multi-staff instruments > ] | ||
2.1.8 Ancient vocal music
Ancient vocal music is supported, as explained in Ancient notation.
Vedi anche
Notation Reference: Ancient notation.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Ancient vocal music ] | [ Su : Specialist notation ] | [ Common notation for keyboards > ] | ||
2.2 Keyboard and other multi-staff instruments
This section discusses several aspects of music notation that are unique to keyboard instruments and other instruments notated on many staves, such as harps and vibraphones. For the purposes of this section this entire group of multi-staff instruments is called “keyboards” for short, even though some of them do not have a keyboard.
| 2.2.1 Common notation for keyboards | ||
| 2.2.2 Piano | ||
| 2.2.3 Accordion | ||
| 2.2.4 Harp |
2.2.1 Common notation for keyboards
This section discusses notation issues that may arise for most keyboard instruments.
| References for keyboards | ||
| Changing staff manually | ||
| Changing staff automatically | ||
| Staff-change lines | ||
| Cross-staff stems |
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Common notation for keyboards ] | [ Su : Common notation for keyboards ] | [ Changing staff manually > ] | ||
References for keyboards
Keyboard instruments are usually notated with Piano staves. These
are two or more normal staves coupled with a brace. The same
notation is also used for other keyed instruments.
Organ music is normally written with two staves inside a
PianoStaff group and third, normal staff for the pedals.
The staves in keyboard music are largely independent, but sometimes voices can cross between the two staves. This section discusses notation techniques particular to keyboard music.
Several common issues in keyboard music are covered elsewhere:
- Keyboard music usually contains multiple voices and the number of voices may change regularly; this is described in Collision resolution.
- Keyboard music can be written in parallel, as described in Writing music in parallel.
- Dynamics may be placed in a
Dynamicscontext, between the twoStaffcontexts to align the dynamic marks on a horizontal line centered between the staves; see Dynamics. - Fingerings are indicated with Fingering instructions.
- Organ pedal indications are inserted as articulations, see List of articulations.
- Vertical grid lines can be shown with Grid lines.
- Keyboard music often contains Laissez vibrer ties as well as ties on arpeggios and tremolos, described in Legature di valore.
- Placing arpeggios across multiple voices and staves is covered in Arpeggio.
- Tremolo marks are described in Tremolo repeats.
- Several of the tweaks that can occur in keyboard music are demonstrated in Real music example.
- Hidden notes can be used to produce ties that cross voices, as shown in Other uses for tweaks.
Vedi anche
Learning Manual: Real music example, Other uses for tweaks.
Notation Reference: Grouping staves, Instrument names, Collision resolution, Writing music in parallel, Fingering instructions, List of articulations, Grid lines, Legature di valore, Arpeggio, Tremolo repeats.
Internals Reference: PianoStaff.
Snippets: Keyboards.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < References for keyboards ] | [ Su : Common notation for keyboards ] | [ Changing staff automatically > ] | ||
Changing staff manually
Voices can be switched between staves manually, using the command
\change Staff = staffname
The string staffname is the name of the staff. It switches
the current voice from its current staff to the staff called
staffname. Typical values for staffname are
"up" and "down", or "RH" and "LH".
The staff to which the voice is being switched must exist at the time of the switch. If necessary, staves should be “kept alive”, see Keeping contexts alive.
Cross-staff notes are beamed automatically:
\new PianoStaff <<
\new Staff = "up" {
<e' c'>8
\change Staff = "down"
g8 fis g
\change Staff = "up"
<g'' c''>8
\change Staff = "down"
e8 dis e
\change Staff = "up"
}
\new Staff = "down" {
\clef bass
% keep staff alive
s1
}
>>
If the beaming needs to be tweaked, make any changes to the stem directions first. The beam positions are then measured from the center of the staff that is closest to the beam. For a simple example of beam tweaking, see notation Fixing overlapping notation.
Overlapping notation can result when voices cross staves:
\new PianoStaff <<
\new Staff = "up" {
\voiceOne
% Make space for fingering in the cross-staff voice
\once\override DynamicLineSpanner.staff-padding = #3.4
e''2\p\< d''\>
c''1\!
}
\new Staff = "down" <<
{
\clef bass
s4. e,8\rest g,2\rest
c1
} \\ {
c8\( g c'
\change Staff = "up"
e' g' b'-3 a' g'\)
f'1
}
>>
>>
The stem and slur overlap the intervening line of dynamics because automatic collision resolution is suspended for beams, slurs and other spanners that connect notes on different staves, as well as for stems and articulations if their placement is affected by a cross-staff spanner. The resulting collisions must be resolved manually, where necessary, using the methods in Fixing overlapping notation.
Vedi anche
Learning Manual: Fixing overlapping notation.
Notation Reference: Stems, Travature automatiche, Keeping contexts alive.
Snippets: Keyboards.
Internals Reference: Beam, ContextChange.
Problemi noti e avvertimenti
Beam collision avoidance does not work for automatic beams that end right before a change in staff. In this case use manual beams.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Changing staff manually ] | [ Su : Common notation for keyboards ] | [ Staff-change lines > ] | ||
Changing staff automatically
Voices can be made to switch automatically between the top and the bottom staff. The syntax for this is
\autochange …music…
This will create two staves inside the current staff group
(usually a PianoStaff), called "up" and
"down". The lower staff will be in the bass clef by default.
The autochanger switches on the basis of the pitch (middle C is the
turning point), and it looks ahead skipping over rests to switch
in advance.
\new PianoStaff {
\autochange {
g4 a b c'
d'4 r a g
}
}
A \relative section that is outside of \autochange
has no effect on the pitches of the music, so if necessary, put
\relative inside \autochange.
If additional control is needed over the individual staves, they
can be created manually with the names "up" and
"down". The \autochange command will then switch
its voice between the existing staves.
Nota: If staves are created manually, they must be named
"up" and "down".
For example, staves must be created manually in order to place a key signature in the lower staff:
\new PianoStaff <<
\new Staff = "up" {
\new Voice = "melOne" {
\key g \major
\autochange \relative c' {
g8 b a c b d c e
d8 r fis, g a2
}
}
}
\new Staff = "down" {
\key g \major
\clef bass
}
>>
Vedi anche
Notation Reference: Changing staff manually.
Snippets: Keyboards.
Internals Reference: AutoChangeMusic.
Problemi noti e avvertimenti
The staff switches may not end up in optimal places. For high quality output, staff switches should be specified manually.
Chords will not be split across the staves; they will be assigned to a staff based on the first note named in the chord construct.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Changing staff automatically ] | [ Su : Common notation for keyboards ] | [ Cross-staff stems > ] | ||
Staff-change lines
Whenever a voice switches to another staff, a line connecting the notes can be printed automatically:
\new PianoStaff <<
\new Staff = "one" {
\showStaffSwitch
c1
\change Staff = "two"
b2 a
}
\new Staff = "two" {
\clef bass
s1*2
}
>>
Comandi predefiniti
\showStaffSwitch,
\hideStaffSwitch.
Vedi anche
Snippets: Keyboards.
Internals Reference: Note_head_line_engraver, VoiceFollower.
| [ << Specialist notation ] | [Inizio][Contenuti][Indice][ ? ] | [ General input and output >> ] | ||
| [ < Staff-change lines ] | [ Su : Common notation for keyboards ] | [ | ||