LilyPond — Guida alla Notazione

Questo manuale costituisce la guida di riferimento per tutti gli aspetti relativi alla notazione musicale in LilyPond versione 2.19.13. Si presuppone che il lettore conosca il materiale esposto nel Manuale di Apprendimento.

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/.


1. Notazione musicale

Questo capitolo spiega come creare la notazione musicale.


1.1 Altezze

[image of music]

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

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

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
}

[image of music]

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
}

[image of music]

Si può indicare in modo esplicito che la musica viene inserita con l’ottava assoluta facendola precedere da \absolute:

\absolute espressione-musicale

verrà interpretata nella modalità assoluta indipendentemente dal contesto in cui si trova.

Vedi anche

Glossario musicale: Nomi delle altezze.

Frammenti di codice: Altezze.


Ottava relativa

L’inserimento delle note con l’ottava assoluta costringe a specificare l’ottava di ogni singola nota. Al contrario, se si usa l’ottava relativa, ogni ottava è determinata dall’ultima nota: se si cambia l’ottava di una nota, cambieranno anche le ottave di tutte le note successive.

La modalità relativa deve essere impostata in modo esplicito col comando \relative:

\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:

Ecco il modo relativo in azione:

\relative c {
  \clef bass
  c d e f
  g a b c
  d e f g
}

[image of music]

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
}

[image of music]

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
}

[image of music]

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
  }
}

[image of music]

\relative non ha effetto sui blocchi \chordmode.

\new Staff {
  \relative c''' {
    \chordmode { c1 }
  }
  \chordmode { c1 }
}

[image of music]

\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
    }
  }
}

[image of music]

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''>
}

[image of music]

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
}

[image of music]

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.


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

[image of music]

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

[image of music]

È possibile indicare alterazioni di quarti di tono. Ecco una serie di Do con altezza crescente:

ceseh1 ces ceh c cih cis cisih

[image of music]

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?

[image of music]

Se una nota è prolungata attraverso una legatura di valore, l’alterazione viene ripetuta solo all’inizio di un nuovo sistema:

cis1~ 1~
\break
cis

[image of music]

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 unite alla figura precedente mediante una legatura di valore all’inizio di un nuovo sistema

\relative c'' {
  \override Accidental.hide-tied-accidental-after-break = ##t
  cis1~ cis~
  \break
  cis
}

[image of music]

Impedire l’inserimento automatico dei bequadri supplementari

Secondo le norme tipografiche tradizionali, un segno di bequadro viene inserito prima di un diesis o di un bemolle se un precedente doppio diesis o bemolle sulla stessa nota è cancellato. Per cambiare questo comportamento e seguire la pratica contemporanea, 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
}

[image of music]

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.


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
}

[image of music]

Le lingue disponibili e i tipi di notazione che definiscono sono:

Lingua

Nomi delle note

nederlands

c d e f g a bes b

catalan

do re mi fa sol la sib si

deutsch

c d e f g a b h

english

c d e f g a bf b

espanol o español

do re mi fa sol la sib si

italiano o français

do re mi fa sol la sib si

norsk

c d e f g a b h

portugues

do re mi fa sol la sib si

suomi

c d e f g a b h

svenska

c d e f g a b h

vlaams

do 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

espanol o español

-s

-b

-ss/-x

-bb

italiano o franç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

[image of music]

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

espanol o español

-cs

-cb

-tcs

-tcb

italiano o franç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.


1.1.2 Modifica di più altezze

Questa sezione tratta il modo di modificare le altezze delle note.


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
}

[image of music]

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
}

[image of music]

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
}

[image of music]

Vedi anche

Frammenti di codice: Altezze.

Guida al funzionamento interno: RelativeOctaveCheck.


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
  }
}

[image of music]

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
  }
}

[image of music]

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 }
}

[image of 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 { }
}

[image of music]

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).


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
}

[image of 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.


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
}

[image of 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.


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
}

[image of music]

È 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
}

[image of music]

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
}

[image of music]

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
}

[image of music]

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
}

[image of music]

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
}

[image of music]

Vedi anche

Guida alla notazione: Inversione, Retrogradazione, Trasposizione.


1.1.3 Aspetto delle altezze

Questa sezione tratta il modo di modificare l’aspetto delle altezze delle note.


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

[image of music]

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

[image of music]

Aggiungendo _8^8 al nome della chiave, la sua adozione comporta il trasporto all’ottava rispettivamente inferiore o superiore, mentre _15^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

[image of music]

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

[image of music]

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 Formattazione delle notine.

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). Per far sì che le armature di chiave si trovino sulle linee corrette del rigo, occorre impostare anche middleCClefPosition. 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 {
  indent = 0
  ragged-right = ##t
}
{
  % The default treble clef
  \key f \major
  c'1
  % The standard bass clef
  \set Staff.clefGlyph = #"clefs.F"
  \set Staff.clefPosition = #2
  \set Staff.middleCPosition = #6
  \set Staff.middleCClefPosition = #6
  \key g \major
  c'1
  % The baritone clef
  \set Staff.clefGlyph = #"clefs.C"
  \set Staff.clefPosition = #4
  \set Staff.middleCPosition = #4
  \set Staff.middleCClefPosition = #4
  \key f \major
  c'1
  % The standard choral tenor clef
  \set Staff.clefGlyph = #"clefs.G"
  \set Staff.clefPosition = #-2
  \set Staff.clefTransposition = #-7
  \set Staff.middleCPosition = #1
  \set Staff.middleCClefPosition = #1
  \key f \major
  c'1
  % A non-standard clef
  \set Staff.clefPosition = #0
  \set Staff.clefTransposition = #0
  \set Staff.middleCPosition = #-4
  \set Staff.middleCClefPosition = #-4
  \key g \major
  c'1 \break

  % The following clef changes do not preserve
  % the normal relationship between notes, key signatures
  % 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
}

[image of music]

Vedi anche

Guida alla notazione: Mensural clefs, Gregorian clefs, Default tablatures, Custom tablatures, Formattazione delle notine.

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.

[image of music]


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

[image of music]

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
}

[image of music]

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

[image of music]

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
}

[image of music]

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.keyAlterations = #`((6 . ,FLAT)
                                 (5 . ,FLAT)
                                 (3 . ,SHARP))
  c4 d e fis
  aes4 bes c2
}

[image of music]

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.


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

[image of music]

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
}

[image of music]

Aggiungere un segno di ottava a una sola voce

Se il rigo ha più di una voce, l’ottavazione in una voce trasporrà la posizione delle note in tutte le voci per la durata della parentesi dell’ottava. Se si intende applicare l’ottavazione a una sola voce, si possono impostare esplicitamente middleCPosition e la parentesi di ottava. In questo frammento, la chiave di basso ha di norma il MiddleCPosition impostato su 6, ovvero sei posizioni sopra la linea centrale, dunque nella porzione con l’ottava il MiddleCPosition è più alto di sette posizioni (un’ottava).

{
  \clef bass
  << { <g d'>1~ q2 <c' e'> }
  \\
    {
      r2.
      \set Staff.ottavation = #"8vb"
      \once \override Staff.OttavaBracket.direction = #DOWN
      \set Voice.middleCPosition = #(+ 6 7)
      <b,,, b,,>4 ~ |
      q2
      \unset Staff.ottavation
      \unset Voice.middleCPosition
      <c e>2
    }
  >>
}

[image of music]

Vedi anche

Glossario musicale: ottavazione.

Frammenti di codice: Altezze.

Guida al funzionamento interno: Ottava_spanner_engraver, OttavaBracket, ottava-bracket-interface.


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 Citare altre voci.

\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
    }
  }
>>

[image of music]

\transposition può essere modificato nel corso di un brano. Ad esempio, un clarinettista potrebbe essere costretto a passare da un clarinetto in La a uno in Si bemolle.

flute = \relative c'' {
  \key f \major
  \cueDuring #"clarinet" #DOWN {
    R1 _\markup\tiny "clarinet"
    c4 f e d
    R1 _\markup\tiny "clarinet"
  }
}
clarinet = \relative c'' {
  \key aes \major
  \transposition a
  aes4 bes c des
  R1^\markup { muta in B\flat }
  \key g \major
  \transposition bes
  d2 g,
}
\addQuote "clarinet" \clarinet
<<
  \new Staff \with { instrumentName = #"Flute" }
    \flute
  \new Staff \with { instrumentName = #"Cl (A)" }
    \clarinet
>>

[image of music]

Vedi anche

Glossario musicale: intonazione reale, strumento traspositore.

Guida alla notazione: Citare altre voci, Trasposizione.

Frammenti di codice: Altezze.


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
    }
  >>
}

[image of music]

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 b nella seconda misura o prima dell’ultimo c:

[image of music]

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 a default.

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 a sia naturale o diesis. L’opzione voice deve 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 usare modern o modern-cautionary.

[image of music]

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 modern presenta le stesse alterazioni di default, 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 del b e del c nella seconda misura del rigo superiore:

[image of music]

modern-cautionary

Questa regola è simile a modern, ma le alterazioni ‘supplementari’ (quelle non mostrate da default) sono segnate come alterazioni di precauzione. Di norma, sono poste tra parentesi; altrimenti, possono essere ridotte in corpo più piccolo definendo la proprietà cautionary-style di AccidentalSuggestion.

[image of music]

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’ a nell’ultima misura viene annullata perché l’annullamento precedente si trovava in una voce diversa, mentre quella del d nel rigo inferiore viene annullata a causa dell’alterazione in un’altra voce della misura precedente:

[image of music]

modern-voice-cautionary

Questa regola è analoga a modern-voice, ma con le alterazioni supplementari (quelle non mostrate da voice) segnate come alterazioni di precauzione. Tutte le alterazioni mostrate da default sono mostrate con questa regola, ma alcune di esse sono indicate come alterazioni di precauzione.

[image of music]

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 stesso GrandStaff o PianoStaff, dunque tutte gli annullamenti delle note finali.

È lo stile predefinito per gli attuali GrandStaff e PianoStaff.

[image of music]

piano-cautionary

È uguale a piano ma con le alterazioni supplementari mostrate come alterazioni di precauzione.

[image of music]

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.

[image of music]

neo-modern-cautionary

Questa regola è simile a neo-modern, ma le alterazioni supplementari sono mostrate come alterazioni di precauzione.

[image of music]

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).

[image of music]

neo-modern-voice-cautionary

Questa regola è simile a neo-modern-voice, ma le alterazioni supplementari sono indicate come alterazioni di precauzione.

[image of music]

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.

[image of music]

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.

[image of music]

no-reset

È identico a default, ma le alterazioni mantengono la propria validità ‘per sempre’, non solo all’interno della singola misura:

[image of music]

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.

[image of music]

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 !?: ‘<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:

[image of music]

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'
  }
}

[image of music]


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
}

[image of music]

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
  }
>>

[image of music]

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
  }
>>

[image of music]

Modifica dell’intervallo dell’ambitus

È possibile cambiare le impostazioni predefinite dell’intervallo tra le teste di nota dell’ambitus e la linea che le collega.

\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''
}

[image of music]

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.


1.1.4 Teste di nota

Questa sezione suggerisce i modi in cui modificare la testa di una 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

[image of music]

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

[image of music]

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

[image of music]

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 simile per le forme a diamante:

<c f\harmonic>2 <d a'\harmonic>4 <c g'\harmonic> f\harmonic

[image of music]

Comandi predefiniti

\harmonic, \xNotesOn, \xNotesOff, \xNote.

Vedi anche

Frammenti di codice: Altezze.

Guida alla notazione: Note head styles, Note in un accordo, 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.


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
}

[image of music]

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 corrispondenti ai gradi della scala.

Si può creare un semplice incisore che faccia questo per ogni 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
}

[image of music]

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.


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

[image of music]

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

[image of music]

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
  }
}

[image of music]

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.


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 ~
  2 ~ 8 f4 f8 ~
  2
  \improvisationOff
  a16( bes) a8 g e
}

[image of music]

Comandi predefiniti

\improvisationOn, \improvisationOff.

Vedi anche

Frammenti di codice: Altezze.

Guida al funzionamento interno: Pitch_squash_engraver, Voice, RhythmicStaff.


1.2 Ritmi

[image of music]

Questa sezione tratta i ritmi, le pause, le durate, la disposizione delle travature e le battute.


1.2.1 Inserimento delle durate


Durata

Le durate, indicate con numeri e punti, sono indicate con i valori corrispondenti. Per 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. La minor durata esprimibile per una nota indipendente è di 128; è possibile inserire anche valori inferiori, ma solo all’interno di travature.

\time 8/1
c\longa c\breve c1 c2
c4 c8 c16 c32 c64 c128 c128

[image of music]

Ecco gli stessi valori con la disposizione automatica delle travature disabilitata.

\time 8/1
\autoBeamOff
c\longa c\breve c1 c2
c4 c8 c16 c32 c64 c128 c128

[image of music]

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 una durata viene omessa, viene mantenuta quella precedente. Il valore predefinito della prima nota è di un quarto.

a a a2 a a4 a a1 a

[image of music]

Per ottenere note puntate, si inserisce un punto (.) dopo la durata. Le figure con doppio punto si indicano aggiungendo due punti, e così via.

a4 b c4. b8 a4. b4.. c8.

[image of music]

Alcune durate non possono essere rappresentate soltanto con durate e punti; occorre inserire 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 rigorosamente proporzionale alla loro durata. I dettagli relativi a questo argomento e alle impostazioni della notazione proporzionale si trovano in Proportional notation.

Di norma i punti sono spostati in su per evitare le linee del rigo, fuorché all’interno di passaggi polifonici. I punti possono essere orientati manualmente verso l’alto o verso il basso; si veda Direction and placement.

Comandi predefiniti

\autoBeamOn, \autoBeamOff, \dotsUp, \dotsDown, \dotsNeutral.

Frammenti di codice selezionati

Note brevi alternative

Le note brevi sono disponibili anche con due linee verticali su ciascun lato della testa invece di una sola e in stile barocco.

\relative c'' {
  \time 4/2
  c\breve |
  \override Staff.NoteHead.style = #'altdefault
  b\breve
  \override Staff.NoteHead.style = #'baroque
  b\breve
  \revert Staff.NoteHead.style
  a\breve
}

[image of music]

Modifica del numero di punti di aumentazione per nota

Il numero di punti di aumentazione su una singola nota può essere modificato in modo indipendente dai punti posizionati dopo la 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 |
}

[image of music]

Vedi anche

Glossario musicale: breve, longa, maxima, durata, Nomi di durata delle note e delle pause.

Guida alla notazione: Travature automatiche, Legature di valore, Gambi, Inserimento delle durate, Inserimento 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 alla durata di una pausa, ma è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve).


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 l’aggiunta opzionale di 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 }

[image of music]

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 }

[image of music]

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

[image of music]

La modifica di gruppi irregolari annidati che iniziano simultaneamente richiede l’uso di \tweak.

Per modificare la durata delle note senza introdurre un gruppo irregolare, si veda Scalare le durate.

Comandi predefiniti

\tupletUp, \tupletDown, \tupletNeutral.

Frammenti di codice selezionati

Entering several tuplets using only one \tuplet command

The property tupletSpannerDuration sets how long each of the tuplets contained within the brackets after \tuplet should last. Many consecutive tuplets can then be placed within a single \tuplet expression, thus saving typing.

There are several ways to set tupletSpannerDuration. The command \tupletSpan sets it to a given duration, and clears it when instead of a duration \default is specified. Another way is to use an optional argument with \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 }
}

[image of music]

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 }
  \omit TupletNumber
  \tuplet 3/2 { c8 c c }
}

[image of music]

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. }
}

[image of music]

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" >>
    %% v2.18 :
    \omit TupletBracket
    << \music s4^"omit" >>
  }
}

[image of music]

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
}

[image of music]

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 possono essere inseriti all’interno delle parentesi dei gruppi irregolari, 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 pone un gruppo irregolare all’inizio di un brano che presenta un’indicazione di \tempo, la musica deve essere inserita esplicitamente in un blocco \new Voice, come è spiegato in Voices contain music.


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 ripresa dalla nota precedente includerà il fattore di scalatura.

Nell’esempio seguente le prime tre note occupano esattamente due tempi, 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

[image of music]

Anche la durata delle pause spaziatrici può essere modificata con un moltiplicatore. Può essere utile per saltare molte misure; per esempio s1*23.

Frammenti musicali più lunghi possono essere compressi secondo la stessa proporzione, come moltiplicando ogni nota, accordo o pausa per una medesima frazione. In questo modo, 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
}

[image of music]

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.


Legature di valore

Una legatura di valore connette le teste di due note della stessa altezza successive. Dunque, la legatura di valore prolunga la durata di una nota.

Nota: Le legature di valore non devono essere confuse con le legature di portamento, che articolano un passaggio, o con le legature di frase, che delimitano una frase musicale. Una legatura di valore serve semplicemente a prolungare la durata di una nota, in modo analogo al punto di valore.

La legatura di valore si inserisce aggiungendo il simbolo tilde (~) alla prima di ogni coppia di note legate. Esso indica che la nota deve essere legata alla nota successiva, che deve essere della stessa altezza.

a2~ 4~ 16 r r8

[image of music]

Le legature di valore si usano per unire due note a cavallo di una stanghetta di battuta, oppure quando non si possono usare i punti per esprimere una particolare durata. Le legature si dovrebbero usare anche per unire note dalle durate superiori all’unità di suddivisione della misura:

\relative c' {
  r8 c~ 2 r4 |
  r8^"non" c2~ 8 r4
}

[image of music]

Per legare una successione di note la cui durata si prolunga per più misure intere, è più semplice ricorrere alla suddivisione automatica delle note, come è spiegato in Divisione automatica delle note. Questo metodo divide automaticamente le note lunghe e le connette da misura a misura.

Quando si applica una legatura di valore a degli accordi, vengono legate tutte le teste delle note della stessa altezza. In assenza di altezze corrispondenti, non verrà creata alcuna legatura. Singoli suoni degli accordi possono essere legati inserendo la legatura all’interno dell’accordo stesso.

<c e g>~ <c e g c>
<c~ e g~ b> <c e g b>

[image of music]

Quando la battuta della "seconda volta" di un ritornello inizia con una nota legata a quella precedente, occorre indicare la legatura nel modo seguente:

\repeat volta 2 { c g <c e>2~ }
\alternative {
  % Prima volta: la nota seguente viene legata in modo normale
  { <c e>2. r4 }
  % Seconda volta: la nota seguente ha una legatura ripetuta
  { <c e>2\repeatTie d4 c } }

[image of music]

Le legature L.v. (laissez vibrer) indicano che le note non devono essere terminate nettamente. Si usa nella notazione per pianoforte, arpa e altri strumenti a corda e a percussione. Si inseriscono così:

<c f g>1\laissezVibrer

[image of music]

Le legature di valore possono essere impostate manualmente per avere la curva in su o in giù, come è spiegato in Direction and placement.

Le legature di valore possono essere tratteggiate, punteggiate, oppure tracciate secondo una successione di tratti continui e tratti interrotti.

\tieDotted
c2~ 2
\tieDashed
c2~ 2
\tieHalfDashed
c2~ 2
\tieHalfSolid
c2~ 2
\tieSolid
c2~ 2

[image of music]

Si possono specificare modelli di tratteggiatura personalizzati:

\tieDashPattern #0.3 #0.75
c2~ 2
\tieDashPattern #0.7 #1.5
c2~ 2
\tieSolid
c2~ 2

[image of music]

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 Legature di portamento.

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

[image of music]

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 ottenere tale risultato occorre impostare la proprietà tieWaitForNote su #t. Questa funzionalità serve anche a legare un tremolo a un accordo e in generale qualsiasi coppia di 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
}

[image of music]

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>
}

[image of music]

Vedi anche

Glossario musicale: legatura di valore, laissez vibrer.

Guida alla notazione: Legature di portamento, Divisione automatica delle note.

Frammenti di codice: Expressive marks, Rhythms.

Guida al funzionamento interno: LaissezVibrerTie, LaissezVibrerTieColumn, TieColumn, Tie.

Problemi noti e avvertimenti

Cambiare rigo 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.


1.2.2 Inserimento delle pause

Le pause si inseriscono insieme alla musica contenuta nelle espressioni musicali.


Pause

Le pause si inseriscono allo stesso modo delle note, ma con il carattere 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
  \omit Staff.TimeSignature
  % 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
}

[image of music]

Le pause d’intero, poste al centro della misura, devono essere inserite come pause multiple. Si possono usare sia per una sola misura sia su più misure, come è spiegato in Pause d’intero.

Per indicare esplicitamente la posizione verticale di una pausa, si scrive la nota corrispondente seguita da \rest. Una pausa della durata della nota verrà collocata nella posizione della nota sul rigo. Questo permette una precisa formattazione manuale della musica polifonica, dato che il formattatore automatico che gestisce le collisioni tra pause non interviene su questo tipo di pause.

a4\rest d4\rest

[image of music]

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
}

[image of music]

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 alla durata di una pausa, ma è il numero dei glifi ad essere limitato: si possono indicare pause da un centoventottesimo fino alla maxima (otto volte una semibreve).


Pause invisibili

Una pausa invisibile (chiamata anche ‘pausa spaziatrice’) si inserisce come come una nota col nome s:

c4 c s c
s2 c

[image of music]

Le pause spaziatrici possono essere usate 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 valore musicale. \skip richiede una durata esplicita, ma questo requisito viene ignorato se il testo desume le proprie 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
    }
  }
>>

[image of music]

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
  }
>>

[image of music]

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

[image of music]

\skip si limita a saltare un valore musicale, non crea nessun tipo di output.

% Questo input è corretto, ma non produce niente
\skip 1 \skip1 \skip 1

[image of music]

Vedi anche

Manuale di apprendimento: Visibility and color of objects.

Guida alla notazione: Note nascoste, Visibility of objects.

Frammenti di codice: Rhythms.

Guida al funzionamento interno: SkipMusic.


Pause d’intero

Le pause per una o più misure d’intero si inseriscono, come le note, col carattere maiuscolo R:

% L'insieme delle misure di pausa vengono riportate in una sola misura
\compressFullBarRests
R1*4
R1*24
R1*4
b2^"Tutti" b4 a4

[image of music]

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 |

[image of music]

Una pausa d’intero appare al centro della misura con la durata di una semibreve o di una breve, in base all’indicazione di tempo.

\time 4/4
R1 |
\time 6/4
R1*3/2 |
\time 8/4
R1*2 |

[image of music]

Di norma una pausa multipla viene scorporata sul pentagramma in modo da mostrare esplicitamente tutte le misure per cui si prolunga. Altrimenti, è possibile indicarla collocando in una sola misura un simbolo di pausa multipla, col numero di misure per cui la pausa si prolunga posto al di sopra della misura stessa:

% Default behavior
\time 3/4 r2. | R2.*2 |
\time 2/4 R2 |
\time 4/4
% Tutte le misure di pausa sono riportate in una singola misura
\compressFullBarRests
r1 | R1*17 | R1*4 |
% Le misure della pausa multipla sono scorporate
\expandFullBarRests
\time 3/4
R2.*2 |

[image of music]

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

[image of music]

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^"sbagliato"
% Questo è il nome dell'oggetto corretto da specificare
\override MultiMeasureRestText.padding = #5
R1^"corretto"

[image of music]

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
}

[image of music]

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.direction
    { R1*3 }
    \\
   \revert MultiMeasureRest.direction
    { R1*3 }
  >>
}

[image of music]

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
}

[image of music]

Vedi anche

Glossario musicale: pausa multipla.

Guida alla notazione: Durata, Testo, Formattazione del testo, Scritte.

Frammenti di codice: Rhythms.

Guida al funzionamento interno: MultiMeasureRest, MultiMeasureRestNumber, MultiMeasureRestText.

Problemi noti e avvertimenti

Se una diteggiatura viene posta su 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 considerano le collisioni di pausa.


1.2.3 Aspetto dei ritmi


Indicazione di tempo

L’indicazione di tempo si imposta così:

\time 2/4 c2
\time 3/4 c2.

[image of music]

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 precauzione. 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

[image of music]

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

[image of music]

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 } |
    }
  }
}

[image of music]

Oppure si possono impostare tutti i valori predefiniti di queste variabili relative 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 } |
    }
  }
}

[image of music]

\overrideTimeSignatureSettings prende quattro argomenti:

  1. timeSignatureFraction, una frazione che indica l’indicazione di tempo a cui questi valori si riferiscono.
  2. baseMomentFraction, una frazione che contiene il numeratore e il denominatore dell’unità di tempo.
  3. beatStructure, una lista Scheme che indica la struttura dei battiti nella misura, nell’unità di baseMomentFraction.
  4. 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 delle travature automatiche.

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 } |
  }
}

[image of music]

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"
    }
  }
}

[image of music]

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, è descritto in Impostare il comportamento delle travature automatiche.

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ò ottenere 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
}

[image of music]

Vedi anche

Glossario musicale: indicazione di tempo

Guida alla notazione: Mensural time signatures, Impostare il comportamento delle travature automatiche, Gestione del tempo.

File installati: ‘scm/time-signature-settings.scm’.

Frammenti di codice: Rhythms.

Guida al funzionamento interno: TimeSignature, Timing_translator.


Indicazioni metronomiche

Un’indicazione metronomica è semplice da scrivere:

\tempo 4 = 120
c2 d
e4. d8 c2

[image of music]

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

[image of music]

Al loro posto si possono usare delle indicazioni di tempo testuali:

\tempo "Allegretto"
c4 e d c
b4. a16 b c4 r4

[image of music]

Un’indicazione metronomica, se combinata con del testo, viene posta automaticamente tra parentesi:

\tempo "Allegro" 4 = 160
g4 c d e
d4 b g2

[image of music]

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

[image of music]

È possibile scrivere un’indicazione metronomica tra parentesi e senza testo includendo una stringa vuota nell’input:

\tempo "" 8 = 96
d4 g e c

[image of music]

In una parte per uno strumento che ha lunghi periodi pieni di pause, le indicazioni di tempo sono talvolta molto ravvicinate. Il comando \markLengthOn aggiunge dello spazio orizzontale per impedire che le indicazioni di tempo si sovrappongano; \markLengthOff ripristina il comportamento predefinito, per cui le indicazioni di tempo non sono tenute in considerazione ai fini della spaziatura orizzontale.

\compressFullBarRests
\markLengthOn
\tempo "Molto vivace"
R1*12
\tempo "Meno mosso"
R1*16
\markLengthOff
\tempo "Tranquillo"
R1*20

[image of music]

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 {
  indent = 0
  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
}

[image of music]

Modificare il tempo senza mostrare l’indicazione metronomica

Per cambiare il tempo del file MIDI senza che appaia l’indicazione metronomica, 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 { }
}

[image of music]

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
}

[image of music]

I dettagli si trovano in Formattazione del testo.

Vedi anche

Glossario musicale: metronomo, indicazione di tempo, indicazione metronomica.

Guida alla notazione: Formattazione del testo, MIDI output.

Frammenti di codice: Staff notation.

Guida al funzionamento interno: MetronomeMark.


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 |

[image of music]

La durata può avere qualsiasi valore inferiore a quello di una misura intera:

\time 3/4
\partial 4.
r4 e8 | a4 c8 b c4 |

[image of music]

L’espressione \partial durata si può scrivere anche così:

\set Timing.measurePosition -durata

Quindi l’esempio precedente può essere scritto così:

\time 3/4
\set Timing.measurePosition = #(ly:make-moment -1/8)
e8 | a4 c8 b c4 |

[image of music]

La proprietà measurePosition contiene un numero razionale, solitamente positivo, che indica la durata corrispondente alla parte di misura trascorsa. Il comando \partial durata lo imposta su un numero negativo quando ha un senso diverso: in quel caso significa che la battuta corrente (la prima) sarà preceduta da una battuta 0 (la battuta parziale) della durata indicata da durata.

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 collocato solo all’inizio di un brano. Se è posto dopo l’inizio, il programma potrebbe produrre 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] |

[image of music]


Musica in tempo libero

Nella musica in un tempo determinato l’inserimento delle stanghette e dei numeri di battuta è calcolato automaticamente. Nella musica in tempo libero (per esempio, la cadenza), un simile comportamento non è desiderabile, e può essere ‘disabilitato’ col comando \cadenzaOn e poi ‘riabilitato’ quando necessario con \cadenzaOff.

c4 d e d
\cadenzaOn
c4 c d8[ d d] f4 g4.
\cadenzaOff
\bar "|"
d4 e d c

[image of music]

La numerazione delle battute riprende dopo la 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

[image of music]

Se si inserisce un comando \bar dentro una cadenza non viene iniziata una nuova misura, anche se appare una stanghetta nell’output. Quindi qualsiasi alterazione, che di solito si considera sempre attiva fino alla fine della misura, sarà ancora valida dopo la stanghetta stampata da \bar. Se si desidera che le alterazioni successive appaiano, si dovranno inserire manualmente delle alterazioni forzate o di precauzione, come è spiegato in Alterazioni.

c4 d e d
\cadenzaOn
cis4 d cis d
\bar "|"
% Il primo cis viene stampato senza alterazione anche se si trova dopo \bar
cis4 d cis! d
\cadenzaOff
\bar "|"

[image of music]

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 }

[image of music]

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 possono aver luogo solo dopo una stanghetta di battuta; quindi, per consentire delle interruzioni nei lunghi passaggi di musica in tempo libero è necessario inserire manualmente delle stanghette ‘invisibili’:

\bar ""

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.

L’esempio seguente presenta simultaneamente 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
    }
  }
>>

[image of music]

Diverse indicazioni di tempo con misure di lunghezza differenti

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 |
  }
>>

[image of music]

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
}

[image of music]

Si possono costruire tempi più complessi tramite ulteriori liste. Le modalità di 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
}

[image of music]

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 simultaneamente indicazioni di tempo diverse, le note che procedono parallelamente 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.


Divisione automatica delle note

Le note le cui durate eccedono il valore della battuta possono essere convertite automaticamente in note con legature di valore a cavallo delle stanghette sostituendo l’incisore Note_heads_engraver con Completion_heads_engraver. Analogalmente, le pause le cui durate eccedono il valore della battuta possono essere divise automaticamente sostituendo Rest_engraver con Completion_rest_engraver. Nell’esempio seguente, le note e le pause che eccedono la durata di battuta vengono divise e le note sono anche connesse con legature di valore a cavallo della stanghetta.

\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 }

[image of music]

Questi incisori dividono tutte le note e le pause in corrispondenza della 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 è ecceduta 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.


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 appiattite 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
    }
  }
>>

[image of music]

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
  }
>>

[image of music]

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.
    }
  }
>>

[image of music]

Vedi anche

Frammenti di codice: Rhythms.

Guida al funzionamento interno: RhythmicStaff, Pitch_squash_engraver.


1.2.4 Travature


Travature automatiche

Le travature sono inserite automaticamente:

\time 2/4 c8 c c c
\time 6/8 c8 c c c8. c16 c8

[image of music]

Se queste impostazioni 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

[image of music]

Nota: Se si usano le travature per indicare i melismi nelle parti vocali, 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 imprevisti. 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 delle travature automatiche.

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
}

[image of music]

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
}

[image of music]

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 |
  }
}

[image of music]

Vedi anche

Guida alla notazione: Travature manuali, Impostare il comportamento delle travature automatiche.

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.


Impostare il comportamento delle travature automatiche

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 anche cambiare i valori predefiniti stessi, come è spiegato in Indicazione di tempo.

Se è definita una regola beamExceptions per l’indicazione di tempo corrente, tale regola soltanto determina 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 sulle suddivisioni come specificato dalle proprietà di contesto baseMoment e beatStructure. beatStructure è una lista scheme che definisce la lunghezza di ogni suddivisione in rapporto alla misura in unità di baseMoment. Per impostazione predefinita, baseMoment è uno fratto il denominatore dell’indicazione di tempo e ogni unità di baseMoment corrisponde a una singola suddivisione.

\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 |

[image of music]

\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

[image of music]

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
      }
    }
  >>
}

[image of music]

Quando si usano più 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} >>

[image of music]

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 }

[image of music]

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 la corrispondenza della travatura alla suddivisione) 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 gli estremi
       ((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 } |

[image of music]

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 }

[image of music]

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}

[image of music]

Analogalmente, le note di un ottavo in un tempo 3/4 sono raggruppate in un’unica travatura. Per raggrupparle secondo le suddivisioni, 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}

[image of music]

Spesso, nelle partiture di età classica e romantica, le travature iniziano a metà della misura in un tempo 3/4; ma la pratica moderna preferisce evitare l’impressione ingannevole di un tempo 6/8 (vedi Gould, p. 153). Situazioni simili si incontrano anche per il 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 |

[image of music]

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à:

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 i tre (o più) tratti della travatura si estendono, senza spezzarsi, sugli interi gruppi di note. Questo comportamento può essere modificato in modo da suddividere le travature in sottoraggruppamenti attraverso la proprietà subdivideBeams. Se impostata, le travature che comprendono più sottoraggruppamenti verranno suddivise a intervalli definiti dal valore attuale di baseMoment, riducendo le travature multiple a una sola travatura che collega i sottoraggruppamenti. 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]
}

[image of music]

Travatura che segue strettamente il battito

Si possono impostare i tratti di suddivisione della travatura in modo che siano rivolti verso la relativa pulsazione. La prima travatura fa sì che non spuntino i tratti di suddivisione (comportamento predefinito); la seconda travatura è orientata verso la pulsazione.

\relative c'' {
  \time 6/8
  a8. a16 a a
  \set strictBeatBeaming = ##t
  a8. a16 a a
}

[image of music]

Segni per la conduzione, segni di raggruppamento della misura

Il raggruppamento delle pulsazioni 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 delle pulsazioni. Per farlo si specifica il raggruppamento interno delle pulsazioni 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"
    }
  }
}

[image of music]

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
        }
      >>
    }
  >>
}

[image of music]

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 prima del termine di una travatura automatica, cui mancano ancora 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 }
  }
>>

[image of music]

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 }
  }
>>

[image of music]


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 è spesso determinato dall’articolazione del testo piuttosto che da quella musicale. Tali travature possono essere specificate manualmente indicandone l’inizio e la fine con [ e ].

r4 r8[ g' a r] r g[ | a] r

[image of music]

La direzione delle travature può essere impostata manualmente attraverso gli indicatori di direzione:

c8^[ d e] c,_[ d e f g]

[image of music]

Le note individuali possono essere contrassegnate con \noBeam per impedire che vengano inserite in una travatura:

\time 2/4
c8 c\noBeam c c

[image of music]

Le travature degli abbellimenti e quelle delle note normali possono coesistere 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]

[image of music]

Si può ottenere un controllo manuale delle travature ancora più preciso agendo sulle 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 la proprietà sarà poi cancellata. In questo esempio, l’ultima nota f ha una sola travatura a sinistra: la travatura corrispondente alla sottodivisione di un ottavo all’interno dell’intero raggruppamento.

a8[ r16 f g a]
a8[ r16
\set stemLeftBeamCount = #2
\set stemRightBeamCount = #1
f16
\set stemLeftBeamCount = #1
g16 a]

[image of music]

Comandi predefiniti

\noBeam.

Frammenti di codice selezionati

Code e punte delle travature

È possibile ottenere delle codette su note isolate e dei tratti di suddivisione all’estremità della travatura con una combinazione di stemLeftBeamCount, stemRightBeamCount e una coppia di indicatori della travatura [].

Per ottenere delle codette rivolte a destra, si usa la coppia di indicatori [] e si imposta stemLeftBeamCount a zero (vedi Example 1).

Per ottenere delle codette rivolte a sinistra, si imposta invece stemRightBeamCount (Example 2).

Perché i tratti di suddivisione alla fine di un gruppo di note unite da travatura siano rivolti a destra, si imposta stemRightBeamCount su un valore positivo. Perché i tratti di suddivisione all’inizio di un gruppo di note unite da travatura siano rivolti a sinistra, si imposta invece stemLeftBeamCount (Example 3).

Talvolta, ad esempio per una nota isolata 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
      16[]
    }
    % Example 3
    \new RhythmicStaff {
      16 16
      \set stemRightBeamCount = #2
      16 r r
      \set stemLeftBeamCount = #2
      16 16 16
    }
    % Example 4
    \new RhythmicStaff {
      16 16
      \set stemRightBeamCount = #2
      16 r16
      16[]
      r16
      \set stemLeftBeamCount = #2
      16 16
    }
  >>
}

[image of music]

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.


Travature a raggiera

Le travature a raggiera servono a indicare che un gruppo di note determinato deve essere eseguito a un tempo progressivamente accelerato (o rallentato), senza cambiare l’andamento complessivo del brano. L’estensione della travatura a raggiera deve essere indicato a mano con [ e ], e la convergenza o divergenza delle travature si determina specificando la la direzione della proprietà Beam di grow-direction.

Perché il ritardando o l’accelerando indicati dalla travatura a raggiera trovino riscontro nella disposizione delle note e nell’esecuzione del file MIDI, 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 è tassativo: 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 sono progressivamente più veloci, mentre le ultime quattro presentano lo stesso tempo.

\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] }

[image of music]

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.


1.2.5 Battute


Stanghette

Le stanghette delimitano le misure e sono usate anche per indicare i ritornelli. 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 finale al termine di un brano:

e4 d c2 \bar "|."

[image of music]

Se l’ultima nota di 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 errata 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 consentirà (senza però forzarla) un’interruzione di linea in questo punto. Il conteggio dei numeri di battuta non incrementa. 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 posta 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

[image of music]

oltre alle stanghette puntate e tratteggiate:

f1 \bar ";"
g1 \bar "!"
a1

[image of music]

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

[image of music]

Inoltre, una stanghetta può apparire come un semplice segno di spunta:

f1 \bar "'" g1

[image of music]

Tuttavia,dato che questi segni di spunta sono tipicamente usati nella notazione gregoriana, è preferibile usare \divisioMinima, come è descritto nella sezione Divisiones della parte dedicata al canto gregoriano.

Lilypond supporta la notazione gregoriana russa e fornisce una stanghetta speciale per questo tipo di notazione:

f1 \bar "k"

[image of music]

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

[image of music]

Sebbene LilyPond preveda l’inserimento manuale delle stanghette che indicano i ritornelli, ciò non consente il riconoscimento della musica come una sezione da ripetere. Tali sezioni devono essere inserite con i vari comandi di ripetizione (vedi Ripetizioni), 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

[image of music]

Esistono sei diverse combinazioni di ripetizioni e indicazioni di segno:

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

[image of music]

Esiste inoltre un comando \inStaffSegno che crea una stanghetta con segno in congiunzione con un’appropriata stanghetta di ripetizione se usata con un comando \repeat volta, vedi Ripetizioni normali..

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 ""
}

[image of music]

La stanghetta "=" crea una stanghetta doppia da combinare con il il segno. Non va usata per creare una stanghetta doppia indipendente; 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 corrispondenza 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
  }
>>

[image of music]

Inoltre, lo spazio " " fa da spaziatore 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
  }
>>

[image of music]

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 }
>>

[image of music]

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, Ripetizioni, Raggruppare i righi.

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).


Numeri di battuta

I numeri di battuta appaiono all’inizio di ogni linea tranne 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

[image of music]

I numeri di battuta possono essere mostrati a intervalli regolari anziché 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 considera tre valori impostabili su #t o #f, i quali 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 compaiono 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

[image of music]

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 invisibile prima della prima nota.

\layout {
  indent = 0
  ragged-right = ##t
}

\relative c' {
  \set Score.barNumberVisibility = #all-bar-numbers-visible
  \bar ""
  c1 | d | e | f \break
  g1 | e | d | c
}

[image of music]

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
}

[image of music]

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 "|."
}

[image of music]

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
}

[image of music]

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
}

[image of music]

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
    \omit BarNumber
    % or:
    %\remove "Bar_number_engraver"
  }
}

\relative c'' {
  c4 c c c \break
  c4 c c c
}

[image of music]

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 parte superiore 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.


Controlli di battuta e del numero di battuta

I controlli di battuta aiutano a rilevare gli errori di durata. Il controllo di battuta si inserisce col simbolo della barra verticale, |, in un qualsiasi punto in cui è previsto l’inserimento di una 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 all’interno del testo vocale:

\lyricmode {
  \time 2/4
  Twin -- kle | Twin -- kle |
}

Una durata non corretta può generare uno spartito completamente alterato, specialmente nel caso di brani polifonici. Quindi il primo passo da compiere per correggere l’input è la verifica dei controlli di battuta e delle durate errate.

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 avvenga qualcosa di diverso dal controllo di battuta. Si può fare assegnando un’espressione musicale a "|". Nell’esempio seguente |, invece di controllare la fine di una battuta, viene usato per inserire una stanghetta doppia ovunque appaia nell’input.

"|" = \bar "||"
{
  c'2 c' |
  c'2 c'
  c'2 | c'
  c'2 c'
}

[image of music]

Quando si copiano brani di una certa ampiezza, può essere d’aiuto verificare che i numeri di battuta di LilyPond corrispondano all’originale a partire dal quale si sta scrivendo 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.


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

[image of music]

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

[image of music]

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

[image of music]

Lo stile viene definito dalla proprietà markFormatter. È una funzione che accoglie 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

[image of music]

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

[image of music]

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 Formattazione del testo. 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, Formattazione del testo, Aligning objects.

File installati: ‘scm/translation-functions.scm’.

Frammenti di codice: Rhythms.

Guida al funzionamento interno: MarkEvent, Mark_engraver, RehearsalMark.


1.2.6 Questioni ritmiche particolari


Abbellimenti

Gli abbellimenti sono degli ornamenti musicali che hanno un carattere in corpo più piccolo e non alterano la durata della misura.

c4 \grace b16 a4(
\grace { b16 c16 } a2)

[image of music]

Esistono altri tre tipi di abbellimenti possibili; l’acciaccatura – un abbellimento in tempo libero indicato da una nota con legatura di portamento e un gambo barrato – e l’appoggiatura, che sottrae un valore determinato della nota principale a cui corrisponde e ha un gambo non barrato. È anche possibile creare un abbellimento con gambo barrato, come l’acciaccatura, ma privo di legatura di portamento, in modo da collocarla tra note già poste sotto una legatura: 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)

[image of music]

Il posizionamento degli abbellimenti è sincronizzato sui diversi righi. 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 }
>>

[image of music]

Se si desidera risolvere una nota su un abbellimento, si usa il comando \afterGrace. Considera due argomenti: la nota principale e gli abbellimenti che la seguono.

c1 \afterGrace d1 { c16[ d] } c1

[image of music]

In questo modo, gli abbellimenti sono collocati dopo uno spazio corrispondente a 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
  }
>>

[image of music]

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)
}

[image of music]

L’espressione musicale introdotta dal comando \grace avrà delle impostazioni tipografiche speciali; per 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
}

[image of music]

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)
}

[image of music]

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 barra 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
    }
  }
}

[image of music]

Ridefinire le impostazioni predefinite globali degli abbellimenti

Le impostazioni globali predefinite 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 effetti diversi.

startAcciaccaturaMusic = {
  <>(
  \override Flag.stroke-style = #"grace"
  \slurDashed
}

stopAcciaccaturaMusic = {
  \revert Flag.stroke-style
  \slurSolid
  <>)
}

\relative c'' {
  \acciaccatura d8 c1
}

[image of music]

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
    }
  >>
}

[image of music]

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_auto_beam_engraver, Grace_engraver, Grace_spacing_engraver.

Problemi noti e avvertimenti

Una acciaccatura con molte note raggruppate sotto una travatura è priva della barra trasversale e ha il medesimo aspetto di una appoggiatura composta da varie note raggruppate sotto una 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 esempio

<<
  \new Staff { e4 \bar ".|:" \grace c16 d2. }
  \new Staff { c4 \bar ".|:" d2. }
>>

[image of music]

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. }
>>

[image of music]

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 |
      }
    }
  >>
}

[image of music]

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”. A meno che non si diminuisca 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.


Allineamento sulle cadenze

Nell’ambito di una partitura per orchestra, le cadenze presentano un problema peculiare: quando si scrive una partitura che include una cadenza o un altro passaggio solistico, 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 una sezione di musica salvata 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
  }
>>

[image of music]

Vedi anche

Glossario musicale: cadenza.

Frammenti di codice: Rhythms.


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 si trova. Questa quantità viene reimpostata sottraendo measureLength ogni volta che measureLength viene raggiunto o superato. Quando questo accade, currentBarNumber viene 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 |
}

[image of music]

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.


1.3 Segni di espressione

[image of music]

Questa sezione elenca vari segni di espressione che si possono usare in una partitura.


1.3.1 Segni di espressione collegati alle note

Questa sezione spiega come creare segni di espressione collegati alle note: articolazioni, abbellimenti e dinamiche. Sono trattati anche i metodi per creare nuove indicazioni dinamiche.


Articolazioni e abbellimenti

I diversi simboli che rappresentano articolazioni, ornamenti e altre indicazioni esecutive possono essere collegati a una nota con questa sintassi:

nota\nome

I valori possibili per nome sono elencati in List of articulations. Ad esempio:

c4\staccato c\mordent b2\turn
c1\fermata

[image of music]

Alcune di queste articolazioni hanno delle abbreviazioni che ne semplificano l’inserimento. Le abbreviazioni sono attaccate al nome della nota e la loro sintassi è composta da un trattino - seguito da un simbolo che indica l’articolazione. Esistono abbreviazioni predefinite per marcato, chiuso, tenuto, staccatissimo, accento, staccato e portato. L’output corrispondente è:

c4-^ c-+ c-- c-!
c4-> c-. c2-_

[image of music]

Le regole per il posizionamento predefinito delle articolazioni sono definite in ‘scm/script.scm’. Articolazioni e ornamenti possono essere posizionati manualmente sopra o sotto il rigo; si veda Direction and placement.

Le articolazioni sono oggetti Script. Le loro proprietà sono descritte in dettaglio in Script.

Le articolazioni possono essere attaccate alle pause e alle note ma non alle pause multiple. Esiste un comando speciale predefinito, \fermataMarkup, che permette di attaccare un segno di corona a una pausa multipla (e soltanto ad essa). Questo crea un oggetto MultiMeasureRestText.

\override Script.color = #red
\override MultiMeasureRestText.color = #blue
a2\fermata r\fermata
R1\fermataMarkup

[image of music]

Oltre alle articolazioni, si può attaccare alle note anche un testo, posto tra virgolette o in un blocco \markup{}. Si veda Scritte.

Ulteriori informazioni sull’ordine degli oggetti Script e TextScript collegati alle note si trovano in Posizionamento degli oggetti.

Frammenti di codice selezionati

Modificare i valori predefiniti per le abbreviazioni delle articolazioni

Le abbreviazioni sono definite in ‘ly/script-init.ly’, dove sono assegnati valori predefiniti alle variabili dashHat, dashPlus, dashDash, dashBang, dashLarger, dashDot e dashUnderscore. Questi valori predefiniti possono essere modificati. Ad esempio, per associare l’abbreviazione -+ (dashPlus) al simbolo del trillo invece che al simbolo + predefinito, si assegna il valore trill alla variabile dashPlus:

\relative c'' { c1-+ }

dashPlus = "trill"

\relative c'' { c1-+ }

[image of music]

Controllo dell’ordine verticale degli script

L’ordine verticale degli script è determinato dalla proprietà 'script-priority. Più il numero è piccolo, più sarà posto vicino alla nota. In questo esempio, il simbolo di diesis (oggetto TextScript) ha prima la priorità più bassa, dunque è posto più in basso nel primo esempio. Nel secondo, il trillo (oggetto Script) ha la priorità più bassa, quindi si trova all’interno. Quando due oggetti hanno la stessa priorità, l’ordine in cui sono inseriti determina quale viene prima.

\relative c''' {
  \once \override TextScript.script-priority = #-100
  a2^\prall^\markup { \sharp }

  \once \override Script.script-priority = #-100
  a2^\prall^\markup { \sharp }
}

[image of music]

Creare un gruppetto ritardato

Creare un gruppetto ritardato, dove la nota più bassa del gruppetto usa l’alterazione, richiede vari \override. La proprietà outside-staff-priority deve essere impostata su #f, perché altrimenti questa avrebbe la precedenza sulla proprietà avoid-slur. Cambiando le frazioni 2/3 e 1/3 si aggiusta la posizione orizzontale.

\relative c'' {
  c2*2/3 ( s2*1/3\turn d4) r
  <<
    { c4.( d8) }
    { s4 s\turn }
  >>
  \transpose c d \relative c'' <<
    { c4.( d8) }
    {
      s4
      \once \set suggestAccidentals = ##t
      \once \override AccidentalSuggestion.outside-staff-priority = ##f
      \once \override AccidentalSuggestion.avoid-slur = #'inside
      \once \override AccidentalSuggestion.font-size = -3
      \once \override AccidentalSuggestion.script-priority = -1
      \single \hideNotes
      b8-\turn \noBeam
      s8
    }
  >>
}

[image of music]

Vedi anche

Glossario Musicale: tenuto, accento, staccato, portato.

Manuale di apprendimento: Posizionamento degli oggetti.

Guida alla notazione: Scritte, Direction and placement, List of articulations, Trilli.

File installati: ‘scm/script.scm’.

Frammenti: Expressive marks.

Guida al funzionamento interno: Script, TextScript.


Dinamiche

Le indicazioni dinamiche assolute si indicano con un comando che segue una nota, come ad esempio c4\ff. Le indicazioni dinamiche disponibili sono \ppppp, \pppp, \ppp, \pp, \p, \mp, \mf, \f, \ff, \fff, \ffff, \fffff, \fp, \sf, \sff, \sp, \spp, \sfz e \rfz. Le indicazioni dinamiche possono essere posizionate manualmente sopra o sotto il rigo, come è spiegato in dettaglio in Direction and placement.

c2\ppp c\mp
c2\rfz c^\mf
c2_\spp c^\ff

[image of music]

Un’indicazione di crescendo inizia con \< e termina con \!, un’indicazione dinamica assoluta o un’ulteriore indicazione di crescendo o decrescendo. Un’indicazione di decrescendo inizia con \> e termina nello stesso modo, ovvero con \!, un’indicazione dinamica assoluta oppure un altro segno di crescendo o decrescendo. Si possono usare \cr e \decr al posto di \< e \>. Le forcelle vengono create con questa notazione.

c2\< c\!
d2\< d\f
e2\< e\>
f2\> f\!
e2\> e\mp
d2\> d\>
c1\!

[image of music]

Una forcella che termina con \! si estenderà fino al margine destro della nota a cui è assegnato \!. Nel caso in cui sia terminata con l’inizio di un altro segno di crescendo o decrescendo, si estenderà fino al centro della nota a cui è assegnato il successivo \< o \>. La forcella successiva partirà dal margine destro della stessa nota invece che dal margine sinistro, come accade quando si termina con \!.

c1\< | c4 a c\< a | c4 a c\! a\< | c4 a c a\!

[image of music]

Le forcelle terminate con indicazioni dinamiche assolute invece che da \! avranno un aspetto simile. Tuttavia, la lunghezza dell’indicazione dinamica assoluta stessa può cambiare il punto in cui finisce la forcella precedente.

c1\< | c4 a c\mf a | c1\< | c4 a c\ffff a

[image of music]

Occorre usare le pause spaziatrici per attaccare più di un’indicazione a una nota. Questo è utile soprattutto quando si aggiunge un crescendo e un decrescendo alla stessa nota:

c4\< c\! d\> e\!
<< f1 { s4 s4\< s4\> s4\! } >>

[image of music]

Il comando \espressivo permette di indicare un crescendo e un decrescendo sulla stessa nota. Tuttavia, si tenga presente che viene implementato come articolazione, non come dinamica.

c2 b4 a
g1\espressivo

[image of music]

Le indicazioni di crescendo testuali iniziano con \cresc, quelle di decrescendo con \decresc o \dim. Le linee di estensione sono aggiunte automaticamente.

g8\cresc a b c b c d e\mf |
f8\decresc e d c e\> d c b |
a1\dim ~ |
a2. r4\! |

[image of music]

Le indicazioni testuali per i cambi di dinamica possono essere impiegate anche per sostituire le forcelle:

\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\! |

[image of music]

Per creare nuove indicazioni dinamiche assolute o testi da allineare alle dinamiche, si veda Nuove indicazioni dinamiche.

Il posizionamento verticale della dinamica è gestito da DynamicLineSpanner.

Esiste un contesto Dynamics che permette di posizionare le indicazioni dinamiche su un’apposita linea orizzontale. Si usano le pause spaziatrici per indicarne la collocazione temporale (le note in un contesto Dynamics occupano infatti il rispettivo valore musicale, ma senza comparire sul rigo). Il contesto Dynamics può contenere altri elementi utili come indicazioni testuali, estensori del testo e indicazioni di pedalizzazione del pianoforte.

<<
  \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 |
  }
>>

[image of music]

Comandi predefiniti

\dynamicUp, \dynamicDown, \dynamicNeutral, \crescTextCresc, \dimTextDim, \dimTextDecr, \dimTextDecresc, \crescHairpin, \dimHairpin.

Frammenti di codice selezionati

Impostare il comportamento delle forcelle sulle stanghette

Se la nota che termina una forcella si trova sul primo battito di una battuta, la forcella si ferma prima della stanghetta che precede la nota. Si può controllare questo comportamento modificando la proprietà 'to-barline.

\relative c'' {
  e4\< e2.
  e1\!
  \override Hairpin.to-barline = ##f
  e4\< e2.
  e1\!
}

[image of music]

Impostare la lunghezza minima delle forcelle

Se le forcelle sono troppo corte, possono essere allungate modificando la proprietà minimum-length dell’oggetto Hairpin.

\relative c'' {
  c4\< c\! d\> e\!
  << f1 { s4 s\< s\> s\! } >>
  \override Hairpin.minimum-length = #5
  << f1 { s4 s\< s\> s\! } >>
}

[image of music]

Forcelle con notazione al niente

Le forcelle di dinamica possono essere rappresentate con ua punta tonda (notazione “al niente”) impostando la proprietà circled-tip dell’oggetto Hairpin su #t.

\relative c'' {
  \override Hairpin.circled-tip = ##t
  c2\< c\!
  c4\> c\< c2\!
}

[image of music]

Stampare le forcelle in vari stili

Il segno di dinamica della forcella può avere diversi stili

\relative c'' {
  \override Hairpin.stencil = #flared-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #flared-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
}

[image of music]

Dinamiche e segni testuali allineati verticalmente

Tutti gli oggetti DynamicLineSpanner (forcelle e testi di dinamica) sono posti a una distanza minima dal rigo determinata da 'staff-padding. Se si imposta 'staff-padding su un valore abbastanza grande, le dinamiche saranno allineate.

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 = #3
  \textLengthOn
  \override TextScript.staff-padding = #1
  \music
}

[image of music]

Nascondere la linea di estensione per le dinamiche testuali

I cambi di dinamica in stile testuale (come cresc. e dim.) appaiono con una linea tratteggiata che mostra la loro estensione. Questa linea può essere soppressa nel modo seguente:

\relative c'' {
  \override DynamicTextSpanner.style = #'none
  \crescTextCresc
  c1\< | d | b | c\!
}

[image of music]

Nascondere la linea di estensione per le dinamiche testuali

Il testo usato per i crescendo e i decrescendo può essere cambiato modificando le proprietà di contesto crescendoText e decrescendoText.

Lo stile della linea dell’estensore può essere cambiato modificando la proprietà 'style di DynamicTextSpanner. Il valore predefinito è 'dashed-line; gli altri valori possibili sono 'line, 'dotted-line e '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
}

[image of music]

Vedi anche

Glossario Musicale: al niente, crescendo, decrescendo, forcella. Manuale di apprendimento: Articolazione e dinamiche.

Guida alla notazione: Direction and placement, Nuove indicazioni dinamiche, What goes into the MIDI output?, Controlling MIDI dynamics.

Frammenti: Expressive marks.

Guida al funzionamento interno: DynamicText, Hairpin, DynamicLineSpanner, Dynamics.


Nuove indicazioni dinamiche

Il modo più semplice per creare indicazioni dinamiche è usare gli oggetti \markup.

moltoF = \markup { molto \dynamic f }

\relative c' {
  <d e>16_\moltoF <d e>
  <d e>2..
}

[image of music]

In modalità markup, si possono creare dinamiche editoriali (racchiuse tra parentesi normali o quadrate). La sintassi della modalità markup è descritta in Formattazione del testo.

roundF = \markup {
    \center-align \concat { \bold { \italic ( }
           \dynamic f \bold { \italic ) } } }
boxF = \markup { \bracket { \dynamic f } }
\relative c' {
  c1_\roundF
  c1_\boxF
}

[image of music]

È possibile creare semplicemente indicazioni dinamiche centrate verticalmente con la funzione make-dynamic-script.

sfzp = #(make-dynamic-script "sfzp")
\relative c' {
  c4 c c\sfzp c
}

[image of music]

In generale, make-dynamic-script assume come argomento qualsiasi oggetto markup. Il tipo di carattere per la dinamica contiene solo i caratteri f,m,p,r,s e z; dunque, se si desidera creare un’indicazione dinamica che contenga testo semplice e simboli di punteggiatura, occorre usare dei comandi markup che ripristinino la famiglia e la codifica del tipo di carattere per il testo normale, ad esempio \normal-text. Il vantaggio nell’uso di make-dynamic-script al posto di un normale markup è l’allineamento verticale degli oggetti markup e delle forcelle collegate alla stessa testa di nota.

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
}

[image of music]

Si può usare anche la forma Scheme della modalità markup. La sintassi è spiegata 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
}

[image of music]

Per allineare a sinistra il testo di dinamica invece di centrarlo su una nota, si usa un \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
}

[image of music]

Le impostazioni dei tipi di carattere in modalità markup sono descritti in Scelta del tipo di carattere e della dimensione.

Vedi anche

Guida alla notazione: Formattazione del testo, Scelta del tipo di carattere e della dimensione, What goes into the MIDI output?, Controlling MIDI dynamics.

Extending LilyPond: Markup construction in Scheme.

Frammenti: Expressive marks.


1.3.2 Indicazioni espressive curvilinee

Questa sezione spiega come creare varie indicazioni espressive con forma curvilinea: legature di portamento, legature di frase, respiri, portamenti indeterminati discendenti (cadute) o ascendenti.


Legature di portamento

Le legature di portamento si inseriscono con delle parentesi:

Nota: Nella musica polifonica, una legatura di portamento deve terminare nella stessa voce in cui è iniziata.

f4( g a) a8 b(
a4 g2 f4)
<c e>2( <b d>2)

[image of music]

Le legature di portamento possono essere posizionate manualmente sopra o sotto il rigo, come è spiegato in Direction and placement.

Non è possibile tracciare due legature di portamento simultanee o sovrapposte, ma si può ricorrere a una legatura di frase posta per mostrare più legature. Questo permette di creare contemporaneamente due legature di portamento. Maggiori dettagli si trovano in Legature di frase.

Le legature di portamento possono essere continue, punteggiate o tratteggiate. Lo stile predefinito è quello continuo:

c4( e g2)
\slurDashed
g4( e c2)
\slurDotted
c4( e g2)
\slurSolid
g4( e c2)

[image of music]

Le legature di portamento possono essere anche semitratteggiate (half-dashed), ovvero con la prima metà tratteggiata e la seconda continua; oppure semicontinue (half-solid), ovvero con la prima metà continua e la seconda tratteggiata:

c4( e g2)
\slurHalfDashed
g4( e c2)
\slurHalfSolid
c4( e g2)
\slurSolid
g4( e c2)

[image of music]

Si possono definire modelli di tratteggio personalizzati per le legature di portamento:

c4( e g2)
\slurDashPattern #0.7 #0.75
g4( e c2)
\slurDashPattern #0.5 #2.0
c4( e g2)
\slurSolid
g4( e c2)

[image of music]

Comandi predefiniti

\slurUp, \slurDown, \slurNeutral, \slurDashed, \slurDotted, \slurHalfDashed, \slurHalfSolid, \slurDashPattern, \slurSolid.

Frammenti di codice selezionati

Uso delle doppie legature di portamento per gli accordi legati

Alcuni compositori scrivono due legature di portamento per indicare gli accordi legati. Si può ottenere questo risultato impostando doubleSlurs.

\relative c' {
  \set doubleSlurs = ##t
  <c e>4( <d f> <c e> <d f>)
}

[image of music]

Posizionare il testo a margine dentro le legature di portamento

I testi a margine devono avere la proprietà outside-staff-priority impostata su false per poter apparire dentro le legature di portamento.

\relative c'' {
  \override TextScript.avoid-slur = #'inside
  \override TextScript.outside-staff-priority = ##f
  c2(^\markup { \halign #-10 \natural } d4.) c8
}

[image of music]

Legature di portamento con complesse strutture di tratteggio

Le legature di portamento possono avere schemi di tratteggio complessi definendo la proprietà dash-definition. dash-definition è una lista di dash-elements. Un dash-element è una lista di parametri che definiscono il comportamento del tratteggio per un segmento della legatura.

La legatura di portamento è definita come il parametro t della curva di bezier che va da 0 sul margine sinistro della legatura fino a 1 su quello destro. dash-element è una lista di (inizio-t fine-t frazione-trattino punto-trattino). La regione della legatura di portamento che va da inizio-t a fine-t avrà una frazione frazione-trattino di ogni punto-trattino nero. punto-trattino viene definito in spazi rigo. frazione-trattino è impostato su 1 per una legatura di portamento continua.

\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)
}

[image of music]

Vedi anche

Glossario Musicale: legatura di portamento.

Manuale di apprendimento: Sul non annidamento di parentesi e legature di valore.

Guida alla notazione: Direction and placement, Legature di frase.

Frammenti: Expressive marks.

Guida al funzionamento interno: Slur.


Legature di frase

Le legature di frase, che indicano una frase musicale, si scrivono con i comandi \( e \):

c4\( d( e) f(
e2) d\)

[image of music]

A livello tipografico, una legatura di frase si comporta in modo pressoché identico a una normale legatura di portamento. Sono però trattate come oggetti diversi; ad esempio, \slurUp non ha effetto su una legatura di frase. Le legature di frase possono essere posizionate sopra o sotto il rigo, come è spiegato in Direction and placement.

Più legature di frase simultanee o sovrapposte non sono permesse.

Le legature di frase possono essere continue, puntate o tratteggiate. Lo stile predefinito è quello continuo:

c4\( e g2\)
\phrasingSlurDashed
g4\( e c2\)
\phrasingSlurDotted
c4\( e g2\)
\phrasingSlurSolid
g4\( e c2\)

[image of music]

Le legature di frase possono essere anche semitratteggiate (la prima metà tratteggiata, la seconda continua) o semicontinue (la prima metà continua, la seconda tratteggiata):

c4\( e g2\)
\phrasingSlurHalfDashed
g4\( e c2\)
\phrasingSlurHalfSolid
c4\( e g2\)
\phrasingSlurSolid
g4\( e c2\)

[image of music]

Si possono definire modelli di tratteggio personalizzati anche per le legature di frase:

c4\( e g2\)
\phrasingSlurDashPattern #0.7 #0.75
g4\( e c2\)
\phrasingSlurDashPattern #0.5 #2.0
c4\( e g2\)
\phrasingSlurSolid
g4\( e c2\)

[image of music]

Le definizioni dei modelli di tratteggio per le legature di frase hanno la stessa struttura di quelle per le legature di portamento. Per maggiori informazioni sui modelli complessi di tratteggio si consultino i frammenti in Legature di portamento.

Comandi predefiniti

\phrasingSlurUp, \phrasingSlurDown, \phrasingSlurNeutral, \phrasingSlurDashed, \phrasingSlurDotted, \phrasingSlurHalfDashed, \phrasingSlurHalfSolid, \phrasingSlurDashPattern, \phrasingSlurSolid.

Vedi anche

Manuale di apprendimento: Sul non annidamento di parentesi e legature di valore.

Guida alla notazione: Direction and placement, Legature di portamento.

Frammenti: Expressive marks.

Guida al funzionamento interno: PhrasingSlur.


Respiri

I respiri si inseriscono col comando \breathe:

c2. \breathe d4

[image of music]

Un respiro termina una travatura automatica; per evitare questo comportamento, si veda Travature manuali.

c8 \breathe d e f g2

[image of music]

È supportata la divisio, indicatore del respiro nella musica antica. Maggiori dettagli in Divisiones.

Frammenti di codice selezionati

Cambiare il simbolo del segno di respiro

Il glifo del respiro può essere modificato sovrascrivendo la proprietà text dell’oggetto di formattazione BreathingSign con qualsiasi testo incluso in un blocco markup.

\relative c'' {
  c2
  \override BreathingSign.text =
    \markup { \musicglyph #"scripts.rvarcomma" }
  \breathe
  d2
}

[image of music]

Usare un segno di spunta come simbolo di respiro

La musica vocale e per fiati usa frequentemente il segno di spunta come segno di respiro. Questo indica un respiro che sottrae un po’ di tempo alla nota precedente invece di prendere una piccola pausa, indicata dal segno di respiro rappresentato dalla virgola. Il segno può essere spostato un po’ su per allontanarlo dal rigo.

\relative c'' {
  c2
  \breathe
  d2
  \override BreathingSign.Y-offset = #2.6
  \override BreathingSign.text =
    \markup { \musicglyph #"scripts.tickmark" }
  c2
  \breathe
  d2
}

[image of music]

Inserire una cesura

I segni di cesura possono essere creati sovrascrivendo la proprietà 'text dell’oggetto BreathingSign. È disponibile anche un segno di cesura curvo.

\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
}

[image of music]

Vedi anche

Glossario Musicale: cesura.

Guida alla notazione: Divisiones.

Frammenti: Expressive marks.

Guida al funzionamento interno: BreathingEvent, BreathingSign, Breathing_sign_engraver.


Portamenti indeterminati discendenti (cadute) e ascendenti

I portamenti indeterminati verso il basso (cadute) e verso l’alto possono essere aggiunti alle note col comando \bendAfter. La direzione del portamento è indicata con un più o un meno (su o giù). Il numero indica l’intervallo per cui il portamento si estenderà oltre la nota principale.

c2\bendAfter #+4
c2\bendAfter #-4
c2\bendAfter #+6.5
c2\bendAfter #-6.5
c2\bendAfter #+8
c2\bendAfter #-8

[image of music]

Frammenti di codice selezionati

Cambiare la forma dei portamenti indeterminati verso il basso o verso l’alto

La proprietà shortest-duration-space può essere modificata per cambiare la forma dei portamenti indeterminati verso il basso o verso l’alto.

\relative c'' {
  \override Score.SpacingSpanner.shortest-duration-space = #4.0
  c2-\bendAfter #5
  c2-\bendAfter #-4.75
  c2-\bendAfter #8.5
  c2-\bendAfter #-6
}

[image of music]

Vedi anche

Glossario Musicale: portamento indeterminato verso il basso, portamento indeterminato verso l’alto.

Frammenti: Expressive marks.


1.3.3 Indicazioni espressive lineari

Questa sezione spiega come creare varie indicazioni espressive che seguono una traiettoria lineare: glissandi, arpeggi e trilli.


Glissando

Un glissando si crea attaccando \glissando a una nota:

g2\glissando g'
c2\glissando c,
\afterGrace f,1\glissando f'16

[image of music]

Un glissando può collegare note appartenenti a righi diversi:

\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
  }
>>

[image of music]

Un glissando può collegare le note negli accordi. Se è necessario qualcosa di diverso dal normale abbinamento uno a uno delle note, si possono definire le connessioni tra le note attraverso \glissandoMap, dove le note di un accordo sono numerate a partire da zero nell’ordine in cui appaiono nel file di input ‘.ly’.

<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'> |

[image of music]

Si possono adottare diversi stili di glissando. Maggiori dettagli in Line styles.

Frammenti di codice selezionati

Glissando contemporaneo

Un glissando contemporaneo senza una nota finale può essere creato usando una nota nascosta e un tempo di cadenza.

\relative c'' {
  \time 3/4
  \override Glissando.style = #'zigzag
  c4 c
  \cadenzaOn
  c4\glissando
  \hideNotes
  c,,4
  \unHideNotes
  \cadenzaOff
  \bar "|"
}

[image of music]

Aggiungere i segni di tempo per i glissandi lunghi

I battiti saltati nei glissandi molto lunghi vengono talvolta segnalati con delle indicazioni di tempo, che consistono solitamente in dei gambi privi di teste di nota. Questi gambi possono essere usati anche per contenere segni di espressione intermedi.

Se i gambi non si allineano bene al glissando, può essere necessario riposizionarli leggermente.

glissandoSkipOn = {
  \override NoteColumn.glissando-skip = ##t
  \hide NoteHead
  \override NoteHead.no-ledgers = ##t
}

glissandoSkipOff = {
  \revert NoteColumn.glissando-skip
  \undo \hide NoteHead
  \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 |
}

[image of music]

Lasciare che i glissandi vadano a capo

Per permettere a un glissando di andare a capo se capita su un’interruzione di riga, si impostano le proprietà breakable e after-line-breaking su #t:

glissandoSkipOn = {
  \override NoteColumn.glissando-skip = ##t
  \hide NoteHead
  \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 |
}

[image of music]

Estendere i glissandi sulle volte delle ripetizioni

Un glissando che si estende in vari blocchi \alternative può essere simulato aggiungendo all’inizio di ogni blocco \alternative una nota di abbellimento nascosta da cui inizia un glissando. La nota di abbellimento deve avere la stessa altezza della nota da cui parte il glissando iniziale. In questo frammento si usa una funzione musicale che prende come argomento l’altezza della nota di abbellimento.

Attenzione: nella musica polifonica la nota di abbellimento deve avere una nota di abbellimento corrispondente in tutte le altre voci.

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 }
    >>
  >>
}

[image of music]

Vedi anche

Glossario Musicale: glissando.

Guida alla notazione: Line styles.

Frammenti: Expressive marks.

Guida al funzionamento interno: Glissando.

Problemi noti e avvertimenti

Non è supportato il testo lungo la linea del glissando (ad esempio gliss.).


Arpeggio

Un arpeggio su un accordo (detto anche accordo spezzato) si ottiene aggiungendo \arpeggio all’accordo:

<c e g c>1\arpeggio

[image of music]

Si possono scrivere vari tipi di arpeggio. \arpeggioNormal ripristina l’arpeggio normale:

<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

[image of music]

Si possono creare simboli di arpeggio speciali in forma di parentesi:

<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

[image of music]

Le proprietà del tratteggio della parentesi dell’arpeggio sono regolate dalla proprietà 'dash-definition, descritta in Legature di portamento.

Gli arpeggi possono essere scritti in modo esplicito con le legature di valore. Per maggiori dettagli si veda Legature di valore.

Comandi predefiniti

\arpeggio, \arpeggioArrowUp, \arpeggioArrowDown, \arpeggioNormal, \arpeggioBracket, \arpeggioParenthesis \arpeggioParenthesisDashed.

Frammenti di codice selezionati

Creare degli arpeggi che attraversano il rigo del pianoforte

In un rigo per pianoforte (PianoStaff), è possibile far sì che un arpeggio attraversi i righi impostando la proprietà 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
    }
  }
>>

[image of music]

Creare degli arpeggi che attraversano i righi in altri contesti

Si possono creare arpeggi che attraversano i righi in contesti diversi da GrandStaff, PianoStaff e StaffGroup se l’incisore Span_arpeggio_engraver è incluso nel contesto Score.

\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"
    }
  }
}

[image of music]

Creare degli arpeggi che attraversano note appartenenti a voci diverse

Si può disegnare un arpeggio che attraversa delle note in voci diverse dello stesso rigo se si aggiunge l’incisore Span_arpeggio_engraver nel contesto Staff:

\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 }
  >>
}

[image of music]

Vedi anche

Glossario Musicale: arpeggio.

Guida alla notazione: Legature di portamento, Legature di valore.

Frammenti: Expressive marks.

Guida al funzionamento interno: Arpeggio, Slur, PianoStaff.

Problemi noti e avvertimenti

Non è possibile mostrare simultaneamente arpeggi connessi e non connessi in un PianoStaff.

L’arpeggio in forma di parentesi non può essere impostato con facilità negli arpeggi che attraversano i righi; occorre ricorrere a metodi più complessi descritti in Cross-staff stems.


Trilli

I trilli senza linea di estensione si ottengono col comando \trill; si veda Articolazioni e abbellimenti.

I trilli con linea di estensione si ottengono con \startTrillSpan e \stopTrillSpan:

d1\startTrillSpan
d1
c2\stopTrillSpan
r2

[image of music]

Un estensore del trillo che va a capo ricomincerà esattamente sopra la prima nota della nuova riga.

d1\startTrillSpan
\break
d1
c2\stopTrillSpan
r2

[image of music]

È possibile tracciare trilli consecutivi senza dover esplicitare i comandi \stopTrillSpan, perché il trillo successivo diventerà automaticamente il limite destro di quello precedente.

d1\startTrillSpan
d1
b1\startTrillSpan
d2\stopTrillSpan
r2

[image of music]

I trilli possono essere anche combinati con le note di abbellimento. La sintassi di questo costrutto e il metodo per posizionare in modo preciso gli abbellimenti sono descritti in Abbellimenti.

d1~\afterGrace
d1\startTrillSpan { c32[ d]\stopTrillSpan }
c2 r2

[image of music]

I trilli che richiedono una nota ausiliaria dall’altezza esplicita si ottengono col comando \pitchedTrill. Il primo argomento è la nota principale e il secondo è la nota trillata, che appare come una testa di nota senza gambo e racchiusa tra parentesi.

\pitchedTrill
d2\startTrillSpan fis
d2
c2\stopTrillSpan
r2

[image of music]

Alterazioni successive della stessa nota nella stessa misura devono essere aggiunte manualmente. Apparirà solo l’alterazione del primo trillo con notina in una misura.

\pitchedTrill
eis4\startTrillSpan fis
eis4\stopTrillSpan
\pitchedTrill
eis4\startTrillSpan cis
eis4\stopTrillSpan
\pitchedTrill
eis4\startTrillSpan fis
eis4\stopTrillSpan
\pitchedTrill
eis4\startTrillSpan fis!
eis4\stopTrillSpan

[image of music]

Comandi predefiniti

\startTrillSpan, \stopTrillSpan.

Vedi anche

Glossario Musicale: trillo.

Guida alla notazione: Articolazioni e abbellimenti, Abbellimenti.

Frammenti: Expressive marks.

Guida al funzionamento interno: TrillSpanner.


1.4 Ripetizioni

[image of music]

La ripetizione è un concetto chiave in musica e può essere resa con varie forme di notazione. LilyPond supporta i seguenti tipi di ripetizioni:

volta

La musica ripetuta non viene scritta per intero ma racchiusa tra barre di ripetizione. Se la ripetizione si trova all’inizio di un brano, la stanghetta di ritornello è posta soltanto alla fine della ripetizione. I finali alternativi (volte) appaiono da sinistra a destra e sono evidenziati da delle parentesi. Questa è la notazione standard per le ripetizioni con finali alternativi.

unfold

La musica ripetuta viene scritta per intero, tante volte quante sono specificate dal numero-ripetizioni. È utile quando si scrive musica ripetitiva.

percent

Si tratta di ripetizioni del singolo tempo (battito) o della battuta. Hanno l’aspetto di una barra obliqua o di segni di percentuale.

tremolo

Si usa per scrivere travature a tremolo.


1.4.1 Ripetizioni lunghe

Questa sezione spiega come inserire ripetizioni lunghe (solitamente di più battute). Tali ripetizioni possono essere in due forme: racchiuse tra segni di ritornello oppure ricopiate interamente (adatte a scrivere musica ripetitiva). Si possono anche controllare manualmente i segni di ripetizione.


Ripetizioni normali

La sintassi per una normale ripetizione è

\repeat volta numero-di-ripetizioni espressione-musicale

dove espressione-musicale è la musica da ripetere.

Un’unica ripetizione senza finale alternativo:

\repeat volta 2 { c4 d e f }
c2 d
\repeat volta 2 { d4 e f g }

[image of music]

I finali alternativi si ottengono con \alternative. Ogni gruppo di alternative deve essere a sua volta racchiuso tra parentesi.

\repeat volta numero-di-ripetizioni espressione-musicale
\alternative {
  { espressione-musicale }
}

dove espressione-musicale è la musica.

Se il numero di ripetizioni è superiore a quello dei finali alternativi, alle prime ripetizioni viene assegnata la prima alternativa.

Una singola ripetizione con un finale alternativo:

\repeat volta 2 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
}
c1

[image of music]

Molteplici ripetizioni con un finale alternativo:

\repeat volta 4 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
}
c1

[image of music]

Molteplici ripetizioni con più di un finale alternativo:

\repeat volta 3 { c4 d e f | }
\alternative {
  { c2 e | }
  { f2 g | }
  { a2 g | }
}
c1

[image of music]

Nota: Se ci sono due o più finali alternativi, non ci deve essere niente tra la parentesi di chiusura di uno e quella di apertura di quello successivo all’interno di un blocco \alternative, altrimenti non si otterrà il numero atteso di finali.

Nota: Se si usa \relative dentro a un blocco \repeat senza istanziare esplicitamente il contesto Voice, appare un rigo in più (non desiderato). Vedi Appare un rigo in più.

Se una ripetizione inizia in mezzo a una misura e non ha finali alternativi, solitamente anche la chiusura della ripetizione cadrà nel mezzo di una misura, così che tra le due estremità ci sia una misura completa. In queste situazioni i segni di ripetizione non sono delle vere e proprie stanghette. Non usare il comando \partial o i controlli di battuta nel punto in cui si trovano questi segni:

% nessun \partial qui
c4 e g  % nessun controllo di battuta qui
% nessun \partial qui
\repeat volta 4 {
  e4 |
  c2 e |
  % nessun \partial qui
  g4 g g  % nessun controllo di battuta qui
}
% nessun \partial qui
g4 |
a2 a |
g1 |

[image of music]

Analogalmente, se una ripetizione inizia con la misura parziale a inizio della partitura e non ha finali alternativi, si applicano le stesse condizioni dell’esempio precedente, a parte il fatto che in questo caso è richiesto il comando \partial all’inizio della partitura:

\partial 4  % necessario
\repeat volta 4 {
  e4 |
  c2 e |
  % nessun \partial qui
  g4 g g  % nessun controllo di battuta qui
}
% nessun \partial qui
g4 |
a2 a |
g1 |

[image of music]

Quando vengono aggiunti dei finali alternativi a una ripetizione che inizia con una misura incompleta, diventa necessario impostare manualmente la proprietà di contesto Timing.measureLength nei seguenti punti specifici:

\partial 4
\repeat volta 2 { e4 | c2 e | }
\alternative {
  {
    f2 d |
    \set Timing.measureLength = #(ly:make-moment 3/4)
    g4 g g  % un controllo di battuta opzionale è permesso qui
  }
  {
    \set Timing.measureLength = #(ly:make-moment 4/4)
    a2 a |
  }
}
g1 |

[image of music]

La proprietà measureLength è descritta in Gestione del tempo.

Si possono aggiungere delle legature di valore a un secondo finale:

c1
\repeat volta 2 { c4 d e f~ }
\alternative {
  { f2 d }
  { f2\repeatTie f, }
}

[image of music]

Il comando \inStaffSegno può essere usato per generare una stanghetta composita che incorpora il simbolo di segno nella stanghetta di ripetizione appropriata se usato col comando \repeat volta. Il tipo corretto di stanghetta di ripetizione, ovvero inizio della ripetizione, fine della ripetizione e doppia ripetizione, viene selezionato automaticamente. Il corrispondente segno “D.S.” deve essere agiunto manualmente.

Lontano da una ripetizione:

e1
\inStaffSegno
f2 g a b
c1_"D.S." \bar "|."

[image of music]

All’inizio di una ripetizione:

e1
\repeat volta 2 {
  \inStaffSegno  % start repeat
  f2 g a b
}
c1_"D.S." \bar "|."

[image of music]

Alla fine di una ripetizione:

e1
\repeat volta 2 {
  f2 g a b
  \inStaffSegno  % end repeat
}
f2 g a b
c1_"D.S." \bar "|."

[image of music]

Tra due ripetizioni:

e1
\repeat volta 2 {
  f2 g a b
}
\inStaffSegno  % double repeat
\repeat volta 2 {
  f2 g a b
}
c1_"D.S." \bar "|."

[image of music]

Si possono impostare simboli alternativi delle stanghette modificando nel contesto Score le proprietà segnoType, startRepeatSegnoType, endRepeatSegnoType o doubleRepeatSegnoType per il tipo di stanghetta richiesto. I tipi di stanghetta alternativi devono essere selezionati dai tipi predefiniti o dai tipi precedentemente definiti col comando \defineBarLine (vedi Stanghette).

\defineBarLine ":|.S[" #'(":|." "S[" "")
\defineBarLine "]" #'("]" "" "")
e1
\repeat volta 2 {
  f2 g a b
  \once \set Score.endRepeatSegnoType = ":|.S["
  \inStaffSegno
}
f2 g \bar "]" a b
c1_"D.S." \bar "|."

[image of music]

e1
\repeat volta 2 {
  \inStaffSegno
  f2 g a b
}
c1_"D.S." \bar "|."

[image of music]

Frammenti di codice selezionati

Accorciare le parentesi delle volte

Per impostazione predefinita, le parentesi delle volte si estendono per tutta l’alternativa, ma si possono accorciare impostando voltaSpannerDuration. Nell’esempio seguente, la parentesi dura una misura, che ha una durata di 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 }
  }
}

[image of music]

Aggiungere le parentesi delle volte a altri righi

L’incisore Volta_engraver risiede nel contesto Score, quindi le parentesi delle ripetizioni appaiono di norma soltanto sul rigo superiore. Questo comportamento può essere modificato aggiungendo l’incisore Volta_engraver al contesto Staff in cui si desidera far apparire le parentesi; si veda anche il frammento “Volta multirigo”.

<<
  \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' } }
>>

[image of music]

Impostare la doppia ripetizione predefinita per le volte

Esistono tre diversi stili di doppie ripetizioni per le volte, che si possono impostare con 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 }
}

[image of music]

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
}

[image of music]

Vedi anche

Glossario Musicale: ripetizione, volta.

Guida alla notazione: Stanghette, Modifying context plug-ins, Modifying ties and slurs, Gestione del tempo.

Frammenti: Repeats.

Guida al funzionamento interno: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.

Problemi noti e avvertimenti

Le legature di portamento che si estendono da un blocco \repeat verso un blocco \alternative funzioneranno solo nel primo finale alternativo. L’aspetto grafico di una legatura di portamento che continua negli altri finali alternativi può essere simulato con \repeatTie se la legatura si estende solo su una nota del blocco dell’alternativa, sebbene questo metodo non funzioni in TabStaff. Altri metodi che si possono adattare per indicare legature di portamento che continuano su varie note dei blocchi di alternativa, e che funzionano anche nei contesti TabStaff, sono presentati in Modifying ties and slurs.

Inoltre le legature di portamento non possono ricollegarsi dalla fine di un’alternativa all’inizio della ripetizione.

I glissandi che si estendono da un blocco \repeat in un blocco \alternative funzioneranno soltanto per il primo finale alternativo. L’aspetto grafico di un glissando che continua negli altri finali alternativi può essere indicato creando un glissando che inizia su una nota di abbellimento nascosta. Vedere ad esempio il frammento “Estendere i glissandi attraverso le ripetizioni” nei Frammenti Selezionati in Glissando.

Se una ripetizione che inizia con una misura incompleta ha un blocco \alternative che contiene modifiche alla proprietà measureLength, l’uso di \unfoldRepeats causerà l’erroneo posizionamento delle stanghette e degli avvisi di controllo di battuta.

Una ripetizione annidata come la seguente

\repeat …
\repeat …
\alternative

è ambigua, perché non è chiaro a quale \repeat appartenga il blocco \alternative. Questa ambiguità si risolve facendo in modo che \alternative appartenga sempre al blocco \repeat interno. Per chiarezza, si consiglia di usare le parentesi in queste situazioni.


Indicazioni di ripetizione manuali

Nota: Questi metodi vengono usati solo per mostrare tipi di ripetizioni inusuali, e potrebbero causare un comportamento inaspettato. Nella maggior parte dei casi, le ripetizioni devono essere create col comando standard \repeat oppure stampando le stanghette opportune. Maggiori informazioni in Stanghette.

La proprietà repeatCommands permette di controllare la formattazione delle ripetizioni. Il suo valore è una lista Scheme dei comandi di ripetizione.

start-repeat

Stampa una stanghetta .|:.

c1
\set Score.repeatCommands = #'(start-repeat)
d4 e f g
c1

[image of music]

Come vuole la pratica comune di incisione, i segni di ripetizione non vengono stampati all’inizio di un brano.

end-repeat

Stampa una stanghetta :|.:

c1
d4 e f g
\set Score.repeatCommands = #'(end-repeat)
c1

[image of music]

(volta numero) … (volta #f)

Crea una nuova volta col numero specificato. La parentesi della volta deve essere terminata esplicitamente, altrimenti non sarà stampata.

f4 g a b
\set Score.repeatCommands = #'((volta "2"))
g4 a g a
\set Score.repeatCommands = #'((volta #f))
c1

[image of music]

Comandi di ripetizione multipli possono trovarsi nello stesso punto:

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))

[image of music]

Si può includere del testo nella parentesi della volta. Il testo può consistere di un numero, di più numeri o di un’indicazione testuale, si veda Formattazione del testo. Il modo più semplice per usare del testo è definirlo prima e poi includerlo nella lista Scheme,

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))
}

[image of music]

Vedi anche

Guida alla notazione: Stanghette, Formattazione del testo.

Frammenti: Repeats.

Guida al funzionamento interno: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.


Ripetizioni ricopiate

Col comando unfold, le ripetizioni possono servire a semplificare la scrittura di musica ripetitiva. La sintassi è

\repeat unfold numero-di-ripetizioni espressione-musicale

dove espressione-musicale è la musica e numero-di-ripetizioni è il numero di volte per cui è ripetuta espressione-musicale.

\repeat unfold 2 { c4 d e f }
c1

[image of music]

In alcuni casi, specialmente in un contesto \relative, la funzione \repeat unfold non equivale a riscrivere l’espressione musicale più volte. Ad esempio

\repeat unfold 2 { a'4 b c }

non equivale a

a'4 b c | a'4 b c

Le ripetizioni dispiegate (unfold) possono avere dei finali alternativi.

\repeat unfold 2 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
}
c1

[image of music]

Se il numero di ripetizioni è maggiore del numero di finali alternativi, la prima alternativa viene applicata più volte, finché le alternative rimaste non esauriscono il numero totale delle ripetizioni.

\repeat unfold 4 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
  { e2 d }
 }
c1

[image of music]

Se il numero di finali alternativi è maggiore del numero di ripetizioni, solo le prime alternative vengono applicate. Le alternative rimanenti saranno ignorate e non verranno stampate.

\repeat unfold 2 { c4 d e f }
\alternative {
  { c2 g' }
  { c,2 b }
  { e2 d }
}
c1

[image of music]

È anche possibile annidare molteplici funzioni unfold (con o senza finali alternativi).

\repeat unfold 2 {
  \repeat unfold 2 { c4 d e f }
  \alternative {
    { c2 g' }
    { c,2 b }
  }
}
c1

[image of music]

Gli accordi si ripetono col simbolo di ripetizione dell’accordo q. Vedi Ripetizione di un accordo.

Nota: Se si usa \relative dentro a un blocco \repeat senza istanziare esplicitamente il contesto Voice, appare un rigo in più (non desiderato). Vedi Appare un rigo in più.

Vedi anche

Guida alla notazione: Ripetizione di un accordo.

Frammenti: Repeats.

Guida al funzionamento interno: RepeatedMusic, UnfoldedRepeatedMusic.


1.4.2 Ripetizioni brevi

Questa sezione tratta il modo in cui inserire brevi ripetizioni. Le ripetizioni brevi possono avere due forme: segni di tratto obliquo o percentuale per rappresentare le ripetizioni di una singola nota, di una singola misura o di due misure; tremolo negli altri casi.


Ripetizioni con percentuale

Brevi sezioni ripetute vengono stampate la prima volta volta e le ripetizioni vengono sostituite da un apposito segno.

La sintassi è

\repeat percent numero espressione-musicale

dove espressione-musicale è l’espressione musicale da ripetere.

Fraseggi più brevi di una misura vengono sostituiti dal tratto obliquo.

\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 }

[image of music]

Fraseggi di una o due misure vengono sostituiti da simboli simili alla percentuale.

\repeat percent 2 { c4 d e f }
\repeat percent 2 { c2 d }
\repeat percent 2 { c1 }

[image of music]

\repeat percent 3 { c4 d e f | c2 g' }

[image of music]

Fraseggi più brevi di una misura ma con durate miste adottano un simbolo di doppia percentuale.

\repeat percent 4 { c8. <d f>16 }
\repeat percent 2 { \tuplet 3/2 { r8 c d } e4 }

[image of music]

Frammenti di codice selezionati

Contatore della ripetizione con segno percentuale

Le ripetizioni di misura che hanno più di due ripetizioni possono avere un contatore se si cambia la proprietà opportuna, come mostra questo esempio:

\relative c'' {
  \set countPercentRepeats = ##t
  \repeat percent 4 { c1 }
}

[image of music]

Visibilità del conto della ripetizione con segno percentuale

I contatori della ripetizione con segno percentuale possono essere mostrati a intervalli regolari impostando la proprietà di contesto 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 }
}

[image of music]

Ripetizioni con segni di percentuale isolati

Si possono stampare anche segni di percentuale isolati.

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
}

[image of music]

Vedi anche

Glossario Musicale: percent repeat, simile.

Frammenti: Repeats.

Guida al funzionamento interno: RepeatSlash, RepeatSlashEvent, DoubleRepeatSlash, PercentRepeat, PercentRepeatCounter, PercentRepeatedMusic, Percent_repeat_engraver, DoublePercentEvent, DoublePercentRepeat, DoublePercentRepeatCounter, Double_percent_repeat_engraver, Slash_repeat_engraver.


Ripetizioni con tremolo

I tremoli possono avere due forme: alternanza tra due note, o due accordi, e rapida ripetizione di una singola nota o accordo. I tremoli costituiti da un’alternanza si indicano con delle travature che collegano le note o gli accordi che si alternano, mentre i tremoli che consistono in una rapida ripetizione di una nota singola si indicano aggiungendo delle travature o dei tratti di suddivisione obliqui alla singola nota.

Per inserire i segni del tremolo tra le note, si usa \repeat con lo stile tremolo:

\repeat tremolo 8 { c16 d }
\repeat tremolo 6 { c16 d }
\repeat tremolo 2 { c16 d }

[image of music]

La sintassi di \repeat tremolo prevede specificamente che all’interno delle parentesi siano indicate due note, e che il numero di ripetizioni corrisponda a un valore espresso in durate di note normali o puntate. Dunque \repeat tremolo 7 è valido e produce una nota doppiamente puntata, mentre \repeat tremolo 9 non è valido.

La durata del tremolo equivale alla durata dell’espressione musicale tra parentesi moltiplicata per il numero di ripetizioni: \repeat tremolo 8 { c16 d16 } corrisponde a un tremolo di una semibreve, rappresentata come due semibrevi unite dalle travature del tremolo.

Ci sono due modi di inserire dei segni di tremolo su una singola nota. Anche in questo caso si usa la sintassi \repeat tremolo, ma la nota non deve essere racchiusa tra parentesi:

\repeat tremolo 4 c'16

[image of music]

Si può ottenere lo stesso output aggiungendo :N dopo la nota, dove N indica la durata della suddivisione (deve essere almeno 8). Se N è 8, viene aggiunta una travatura al gambo della nota. Se N è omesso, viene usato l’ultimo valore (salvato in tremoloFlags):

c2:8 c:32
c: c:

[image of music]

Frammenti di codice selezionati

Tremoli attraverso i righi

Dato che \repeat tremolo si aspetta esattamente due argomenti musicali per i tremoli di accordi, la nota o l’accordo che cambiano rigo in un tremolo che attraversa i righi devono essere posti tra parentesi graffe insieme al comando \change Staff.

\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
      }
    }
  }
>>

[image of music]

Vedi anche

Frammenti: Repeats.


1.5 Note simultanee

[image of music]

La polifonia in musica si riferisce alla coesistenza simultanea di più di una voce in un brano musicale. In LilyPond la polifonia si riferisce alla coesistenza di più voci sullo stesso rigo.


1.5.1 Una voce

In questa sezione vengono spiegate le note simultanee che fanno parte di un’unica voce.


Note in un accordo

Un accordo si forma racchiudendo una serie di altezze tra < e > e può essere seguito da una durata, come accade per le semplici note.

<a c e>1 <a c e>2 <f a c e>4 <a c>8. <g c e>16

[image of music]

Proprio come per le note, si possono specificare le articolazioni da riferire all’accordo.

<a c e>1\fermata <a c e>2-> <f a c e>4\prall <a c>8.^! <g c e>16-.

[image of music]

Si possono specificare abbellimenti e articolazioni per ogni nota che fa parte dell’accordo.

<a c\prall e>1 <a-> c-^ e>2 <f-. a c-. e-.>4
<a-+ c-->8. <g\fermata c e\turn>16

[image of music]

Tuttavia, alcuni elementi della notazione, come le dinamiche, le forcelle e le legature di portamento, devono essere attaccate all’accordo invece che alle sue singole note, altrimenti non appariranno.

<a\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>)
<a c e>\< <a c e> <a c e>\!

[image of music]

Un accordo si comporta semplicemente come un contenitore di note, articolazioni e altri elementi. Di conseguenza, un accordo privo di note non ha una durata. Qualsiasi articolazione attaccata a un accordo vuoto si troverà nel momento musicale della nota o accordo seguenti e si combinerà con questi (possibilità più complesse di combinazione sono spiegate in Espressioni simultanee):

\grace { g8( a b }
<> ) \p \< -. -\markup \italic "sempre staccato"
\repeat unfold 4 { c4 e }  c1\f

[image of music]

Si può usare la modalità relativa per indicare l’altezza degli accordi. La prima nota di ogni accordo è sempre relativa alla prima nota dell’accordo che lo precede oppure, se non c’è un accordo precedente, è relativa all’altezza dell’ultima nota che precede l’accordo. Le altezze di tutte le altre note dell’accordo sono relative alla nota che le precede all’interno dell’accordo.

<a c e>1 <f a c> <a c e> <f' a c> <b, e b,>

[image of music]

Maggiori informazioni sugli accordi si trovano in Chord notation.

Vedi anche

Glossario Musicale: accordo.

Manuale d’apprendimento: Combinare le note negli accordi.

Guida alla notazione: Chord notation, Articolazioni e abbellimenti, Ottava relativa, Più voci.

Frammenti: Simultaneous notes.

Problemi noti e avvertimenti

Gli accordi che contengono più di due altezze in uno spazio del rigo, come ad esempio ‘<e f! fis!>’, presentano le teste di tali note sovrapposte. A seconda della situazione, si può migliorare l’aspetto con


Ripetizione di un accordo

Per inserire la musica più rapidamente, si può usare una scorciatoia che ripete l’accordo precedente. Il simbolo di ripetizione dell’accordo è q:

<a c e>1 q <f a c>2 q

[image of music]

Come nel caso dei normali accordi, il simbolo di ripetzione dell’accordo si può usare con le durate, le articolazioni, i testi a margine, le legature di portamento, le travature, etc. dato che solo le altezze dell’accordo precedente vengono duplicate.

<a c e>1\p^"text" q2\<( q8)[-! q8.]\! q16-1-2-3 q8\prall

[image of music]

Il simbolo di ripetizione dell’accordo ricorda sempre l’ultimo accordo inserito, quindi è possibile inserire l’accordo più recente anche se nel frattempo sono state inserite altre note (senza accordi) o pause.

<a c e>1 c'4 q2 r8 q8 |
q2 c, |

[image of music]

Tuttavia questo simbolo non conserva le dinamiche, le articolazioni o gli abbellimenti dell’accordo precedente.

<a-. c\prall e>1\sfz c'4 q2 r8 q8 |
q2 c, |

[image of music]

Per far sì che alcuni elementi siano conservati, si può invocare esplicitamente la funzione \chordRepeats con un’ulteriore argomento che indica una lista di tipi di evento da mantenere, a meno che eventi di quel tipo non siano già presenti nell’accordo q stesso.

\relative c'' {
  \chordRepeats #'(articulation-event)
  { <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
  q2 c, |
}

[image of music]

In questo esempio l’uso di \chordRepeats all’interno di un blocco \relative produce risultati indesiderati: gli eventi di un accordo, una volta espansi, non si distinguono più per essere stati inseriti come accordi normali, quindi \relative assegna un’ottava basata sul contesto corrente.

Dato che \relative annidati non si influenzano l’un l’altro, si può usare un altro \relative dentro \chordRepeats per stabilire le relazioni di ottava prima di espandere gli accordi ripetuti. In questo caso l’intero contenuto del \relative più interno non influenza quello esterno; ecco perché in questo esempio la nota finale è stata specificata con un’ottava diversa.

\new Voice
\relative c'' {
  \chordRepeats #'(articulation-event)
  \relative c''
  { <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
  q2 c |
}

[image of music]

Le interazioni con \relative si verificano solo con chiamate esplicite di \chordRepeats: l’espansione implicita all’inizio della creazione della partitura viene fatta in un momento in cui tutti i \relative sono stati già elaborati.

Vedi anche

Guida alla notazione: Chord notation, Articolazioni e abbellimenti.

File installati: ‘ly/chord-repetition-init.ly’.


Espressioni simultanee

Una o più espressioni musicali racchiuse tra due coppie di parentesi uncinate sono considerate simultanee. Se la prima espressione inizia con una nota singola o se l’intera espressione simultanea appare esplicitamente all’interno di una voce, sarà posta in un solo rigo; altrimenti gli elementi dell’espressione simultanea saranno messi in righi separati.

Gli esempi seguenti mostrano espressioni simultanee su un rigo:

\new Voice {  % voce singola esplicita
  << { a4 b g2 } { d4 g c,2 } >>
}

[image of music]

% prima nota singola
a << { a4 b g } { d4 g c, } >>

[image of music]

Questo può essere utile se le sezioni simultanee hanno durate identiche, ma i tentativi di collegare note con durate diverse allo stesso gambo causerà degli errori. Le note, le articolazioni e le modifiche delle proprietà in una singola voce (‘Voice’) sono raccolte e create secondo l’ordine della musica:

<a c>4-.  <>-. << c a >>  << { c-. <c a> } { a s-. } >>

[image of music]

Per poter inserire gambi o travature multiple e variare le durate o altre proprietà di note riferibili allo stesso momento musicale, occorre usare più voci.

L’esempio seguente mostra come le espressioni simultanee possano generare implicitamente righi multipli:

% nessuna singola nota precede l'espressione simultanea
<< { a4 b g2 } { d4 g2 c,4 } >>

[image of music]

In questo caso le durate diverse non causano problemi perché sono interpretate in voci diverse.

Problemi noti e avvertimenti

Se le note appartenenti a due o più voci, con gambi nella stessa direzione, si trovano nello stesso punto del rigo e non è stato specificato uno spostamento orizzontale (oppure è stato specificato lo stesso valore per lo spostamento), il messaggio:

attenzione: troppe collisioni tra colonne di note, ignorate

apparirà durante la compilazione del file. Si può evitare con:

\override NoteColumn.ignore-collision = ##t

Tuttavia, questo comando non si limita a eliminare l’avvertimento, ma impedisce qualsiasi risoluzione delle collisioni, e potrebbe comportare altri effetti indesiderati (vedi anche i Problemi noti in Risoluzione delle collisioni).


Cluster

Un cluster prescrive l’esecuzione simultanea di tutti i suoni compresi in un determinato intervallo. Può essere rappresentato come un involucro che contiene le note che ne fanno parte. Si inserisce applicando la funzione \makeClusters a una sequenza di accordi, ad esempio:

\makeClusters { <g b>2 <c g'> }

[image of music]

Si possono inserire insieme sullo stesso rigo le normali note e i cluster, anche contemporaneamente. In tal caso non viene fatto alcun tentativo di evitare automaticamente collisioni tra le note normali e i cluster.

Vedi anche

Glossario Musicale: cluster.

Frammenti: Simultaneous notes.

Guida al funzionamento interno: ClusterSpanner, ClusterSpannerBeacon, Cluster_spanner_engraver.

Problemi noti e avvertimenti

I cluster hanno un buon aspetto solo se durano almeno per due accordi; altrimenti appaiono troppo stretti.

I cluster non hanno un gambo e non possono indicare delle durate da soli, ma la lunghezza del cluster è determinata dalle durate degli accordi che lo definiscono. Più cluster distinti devono essere separati da una pausa.

I cluster non generano output MIDI.


1.5.2 Più voci

Questa sezione presenta le note simultanee in più voci o più righi.


Polifonia su un solo rigo

Istanziare esplicitamente le voci

La struttura di base necessaria per ottenere più voci indipendenti in un solo rigo è illustrata nell’esempio seguente:

\new Staff <<
  \new Voice = "prima"
    { \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d }
  \new Voice= "seconda"
    { \voiceTwo d16 c d8~ 16 b c8~ 16 b c8~ 16 b8. }
>>

[image of music]

Le voci sono istanziate esplicitamente e vengono contrassegnate da dei nomi. I comandi \voiceOne\voiceFour impostano le voci in modo che la prima e terza voce abbiano i gambi in su, la seconda e la quarta voce i gambi in giù, le teste di nota della terza e quarta voce siano spostate orizzontalmente e le pause in ciascuna voce siano spostate automaticamente per evitare collisioni. Il comando \oneVoice ripristina tutte le impostazioni della voce alle direzioni neutrali predefinite.

Pasaggi polifonici temporanei

Un passaggio polifonico temporaneo si può creare col seguente costrutto:

<< { \voiceOne … }
  \new Voice { \voiceTwo … }
>> \oneVoice

In questo esempio la prima espressione all’interno di un passaggio polifonico temporaneo è posta nel contesto Voice che era in uso immediatamente prima del passaggio polifonico e quello stesso contesto Voice continua dopo la sezione temporanea. Le altre espressioni comprese nelle parentesi uncinate vengono assegnate a voci temporanee distinte. Questo permette di assegnare il testo a una voce che continua prima, durante e dopo una sezione polifonica:

<<
  \new Voice = "melody" {
    a4
    <<
      {
        \voiceOne
        g f
      }
      \new Voice {
        \voiceTwo
        d2
      }
    >>
    \oneVoice
    e4
  }
  \new Lyrics \lyricsto "melody" {
  This is my song.
  }
>>

[image of music]

I comandi \voiceOne e \voiceTwo sono necessari per definire le impostazioni di ogni voce.

Il costrutto con la doppia barra inversa (backslash)

Il costrutto << {…} \\ {…} >>, in cui due (o più) espressioni sono separate da due barre inverse (backslash), si comporta diversamente dal costrutto simile privo delle due barre: tutte le espressioni in questo costrutto vengono assegnate a nuovi contesti Voice. Questi nuovi contesti Voice vengono creati implicitamente e ad essi vengono assegnati dei nomi prestabiliti "1", "2", etc.

Il primo esempio potrebbe essere riscritto nel modo seguente:

<<
  { r8 r16 g e8. f16 g8[ c,] f e16 d }
  \\
  { d16 c d8~ 16 b c8~ 16 b c8~ 16 b8. }
>>

[image of music]

Questa sintassi si usa quando non importa che le voci temporanee siano create e poi eliminate. A queste voci create implicitamente vengono assegnate le impostazioni equivalenti all’uso dei comandi \voiceOne\voiceFour, nell’ordine in cui appaiono nell’input.

Nell’esempio seguente, la voce intermedia ha i gambi in su, dunque viene inserita in terza posizione in modo che diventi la terza voce, che ha i gambi in su. Si usano le pause spaziatrici per evitare il raddoppio delle pause ordinarie.

<<
  { 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 }
>>

[image of music]

In tutti i brani, a eccezione di quelli più semplici, è consigliabile creare contesti Voice espliciti come è spiegato in Contesti e incisori e Definire esplicitamente le voci.

Ordine delle voci

Quando si inseriscono più voci nel file di input, conviene usare il seguente ordine:

Voce 1: la più alta
Voce 2: la più bassa
Voce 3: la seconda più alta
Voce 4: la seconda più bassa
Voce 5: la  terza più alta
Voce 6: la terza più bassa
etc.

Sebbene possa sembrare controintuitivo, ciò semplifica il processo automatico di formattazione. Si noti che le voci con numero dispari hanno i gambi in su, quelle con numero pari hanno i gambi in giù:

\new Staff <<
  \time 2/4
  { f''2 }  % 1: la più alta
  \\
  { c'2  }  % 2: la più bassa
  \\
  { d''2 }  % 3: seconda più alta
  \\
  { e'2  }  % 4: seconda più bassa
  \\
  { b'2  }  % 5: terza più alta
  \\
  { g'2  }  % 6: terza più bassa
>>

[image of music]

Nota: Il testo e gli estensori (come le legature di portamento e di valore, le forcelle, etc.) non possono ‘attraversare’ le voci.

Durate identiche

Nel caso speciale in cui si desideri inserire sezioni musicali parallele con il medesimo ritmo, si possono combinare in un unico contesto Voice, formando dunque degli accordi. Per farlo, vanno racchiuse in un semplice costrutto musicale simultaneo all’interno di una voce esplicita:

\new Voice <<
  { e4 f8 d e16 f g8 d4 }
  { c4 d8 b c16 d e8 b4 }
>>

[image of music]

Questo metodo produce strane travature e avvertimenti se le sezioni musicali non hanno lo stesso ritmo.

Comandi predefiniti

\voiceOne, \voiceTwo, \voiceThree, \voiceFour, \oneVoice.

Vedi anche

Manuale d’apprendimento: Le voci contengono la musica, Definire esplicitamente le voci.

Guida alla notazione: Percussion staves, Pause invisibili, Gambi.

Frammenti: Simultaneous notes.


Stili di voce

Si possono assegnare colori e forme diverse a ciascuna voce per facilitarne l’identificazione:

<<
  { \voiceOneStyle d4 c2 b4 }
  \\
  { \voiceTwoStyle e,2 e }
  \\
  { \voiceThreeStyle b2. c4 }
  \\
  { \voiceFourStyle g'2 g }
>>

[image of music]

Il comando \voiceNeutralStyle permette di ripristinare l’aspetto predefinito.

Comandi predefiniti

\voiceOneStyle, \voiceTwoStyle, \voiceThreeStyle, \voiceFourStyle, \voiceNeutralStyle.

Vedi anche

Manuale d’apprendimento: Sento le Voci, Altre fonti di informazione.

Frammenti: Simultaneous notes.


Risoluzione delle collisioni

Le teste di note che si trovano in voci diverse ma hanno stessa altezza, stessa testa e direzione del gambo opposta vengono unite automaticamente; invece, le note che hanno la stessa testa o la stessa direzione del gambo non vengono unite. Le pause opposte a un gambo in una voce diversa vengono spostate verticalmente. L’esempio seguente mostra tre diverse circostanze, sul primo e terzo movimento della prima battuta e sul primo movimento della seconda battuta, in cui l’unione automatica delle teste di nota non funziona.

<<
  {
    c8 d e d c d c4
    g'2 fis
  } \\ {
    c2 c8. b16 c4
    e,2 r
  } \\ {
    \oneVoice
    s1
    e8 a b c d2
  }
>>

[image of music]

Note con teste diverse possono essere unite come è mostrato sotto. In questo esempio le teste delle note nel primo battito della prima battuta sono unite:

<<
  {
    \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
  }
>>

[image of music]

Le minime e le semiminime, invece, non sono unite, perché sarebbe difficile distinguerle.

Anche le teste di note con diversi punti, come nel terzo movimento della prima battuta, possono essere unite:

<<
  {
    \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
  }
>>

[image of music]

La minima e la croma all’inizio della seconda misura sono unite per errore, perché l’unione automatica non riesce a completare correttamente l’unione quando tre o più note sono allineate sulla stessa colonna di note: in questo caso la testa di nota unita non è corretta. Per far sì che l’unione selezioni la testa di nota corretta, occorre applicare il comando \shift alla nota che non deve essere unita. In questo esempio si usa \shiftOn per spostare il Sol superiore (g) fuori dalla colonna e di conseguenza \mergeDifferentlyHeadedOn funziona correttamente.

<<
  {
    \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
  }
>>

[image of music]

Il comando \shiftOn permette (senza forzare) lo spostamento delle note in una voce. Quando si applica \shiftOn a una voce, una nota o accordo in quella voce vengono spostati solo se il suo gambo altrimenti entrerebbe in collisione col gambo di un’altra voce, e solo se i gambi che collidono puntano nella stessa direzione. Il comando \shiftOff impedisce che si verifichi questo tipo di spostamento.

Per impostazione predefinita, le voci più esterne (solitamente la prima e la seconda voce) hanno specificato \shiftOff, mentre le voci più interne (terza e successive) hanno specificato \shiftOn. Quando si applica uno spostamento, le voci con i gambi in su (voci dispari) vengono spostate a destra, e le voci con i gambi in giù (voci pari) vengono spostate a sinistra.

Ecco un esempio che aiuta a visualizzare come un’espressione simultanea abbreviata viene espansa internamente.

Nota: Attenzione: con tre o più voci, l’ordine verticale delle voci nel file di input non deve essere lo stesso dell’ordine verticale delle voci del rigo!

\new Staff \relative c'' {
  %% inserimento abbreviato
  <<
    { f2  }  % 1: più alta
    \\
    { g,2 }  % 2: più bassa
    \\
    { d'2 }  % 3: più alta centrale
    \\
    { b2  }  % 4: più  bassa centrale
  >>
  %% espansione interna dell'input precedente
  <<
    \new Voice = "1" { \voiceOne   \shiftOff f'2 }
    \new Voice = "2" { \voiceTwo   \shiftOff g,2 }
    \new Voice = "3" { \voiceThree \shiftOn  d'2 } % sposta a destra
    \new Voice = "4" { \voiceFour  \shiftOn  b2  } % sposta a sinistra
  >>
}

[image of music]

Due ulteriori comandi, \shiftOnn e \shiftOnnn, mettono a disposizione altri livelli di spostamento che possono essere specificati in modo temporaneo per risolvere delle collisioni in situazioni complesse – vedi Esempio musicale.

Le note vengono unite solo se presentano opposta direzione dei gambi (come accade, ad esempio, nella prima o seconda voce o quando i gambi sono impostati esplicitamente in direzioni opposte).

Comandi predefiniti

\mergeDifferentlyDottedOn, \mergeDifferentlyDottedOff, \mergeDifferentlyHeadedOn, \mergeDifferentlyHeadedOff.

\shiftOn, \shiftOnn, \shiftOnnn, \shiftOff.

Frammenti di codice selezionati

Voci ulteriori per evitare le collisioni

In alcuni casi di musica polifonica complessa sono necessarie delle voci ulteriori per evitare le collisioni tra note. Se servono più di quattro voci parallele, si possono aggiungere altre voci definendo una variabile con la funzione 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
  <<
    \new Voice  {
      \voiceOne
      a4. a8
      e'4 e4. e8
      f4 d4. c8
    }
    \new Voice {
      \voiceTwo
      d,2
      d4 cis2
      d4 bes2
    }
    \new Voice {
      \voiceThree
      f'2
      bes4 a2
      a4 s2
    }
    \new Voice {
      \voiceFive
      s2
      g4 g2
      f4 f2
    }
  >>
}

[image of music]

Forzare lo spostamento orizzonatale delle note

Quando il motore tipografico non riesce a risolvere una situazione, si può usare la sintassi che sovrascrive le decisioni tipografiche. L’unità di misura usata è lo spazio del rigo.

\relative c' <<
  {
    <d g>2 <d g>
  }
  \\
  {
    <b f'>2
    \once \override NoteColumn.force-hshift = #1.7
    <b f'>2
  }
>>

[image of music]

Vedi anche

Glossario Musicale: polifonia.

Manuale d’apprendimento: Note simultanee, Le voci contengono la musica, Esempio musicale.

Frammenti: Simultaneous notes.

Guida al funzionamento interno: NoteColumn, NoteCollision, RestCollision.

Problemi noti e avvertimenti

Se si usa \override NoteColumn.ignore-collision = ##t, le note con teste diverse che si trovano in voci diverse saranno unite in modo non corretto.

\mergeDifferentlyHeadedOn
<< { c16 a' b a } \\ { c,2 } >>
\override NoteColumn.ignore-collision = ##t
<< { c16 a' b a } \\ { c,2 } >>

[image of music]


Combinazione automatica delle parti

La combinazione automatica delle parti si usa per combinare in un unico rigo due parti musicali separate. Ciò è utile soprattutto quando si scrivono partiture orchestrali. Viene stampata una sola voce se le due parti musicali sono identiche, ma nei punti in cui sono diverse viene aggiunta una seconda voce. Le direzioni dei gambi sono impostate in su e in giù in base alla voce di appartenenza, mentre le sezioni solistiche e a due sono a loro volta identificate e contrassegnate.

La sintassi per la combinazione automatica delle parti è:

\partcombine espressione-musicale1 espressione-musicale2

L’esempio seguente illustra il funzionamento di base: le parti sono poste su un unico rigo in modo polifonico e le direzioni dei gambi sono regolate di conseguenza. Si usano le stesse variabili per le parti indipendenti e il rigo combinato.

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
>>

[image of music]

Entrambe le parti hanno note identiche nella terza misura, dunque viene stampata una sola nota. Le direzioni dei gambi e delle legature di portamento e di valore sono impostate automaticamente, a seconda che l’esecuzione delle parti sia solistica o all’unisono. Quando si rende necessario, in caso di polifonia, la prima parte (nel contesto one) ha i gambi in “su”, mentre la seconda (nel contesto two) ha sempre i gambi in “giù”. In caso di parti solistiche, la prima e seconda parte sono contrassegnate rispettivamente con “Solo” e “Solo II”. Le parti (a due) all’unisono sono contrassegnate con la scritta “a2”.

Entrambi gli argomenti di \partcombine sono interpretati come contesti Voice separati, dunque se la musica viene inserita in modo relativo entrambe le parti devono contenere una funzione \relative, ovvero:

\partcombine
  \relative … espressione-musicale1
  \relative … espressione-musicale2

Un blocco \relative che racchiude un \partcombine non ha effetto sulle altezze di espressione-musicale1 e espressione-musicale2.

Nelle partiture professionali, spesso le voci sono tenute separate per lunghi passaggi anche se alcune note sono le stesse in entrambe le voci e potrebbero essere stampate come unisono. Combinare le note in un accordo o mostrare una voce come solista, dunque, non è la scelta ideale, perché la funzione \partcombine considera ogni nota individualmente. In questo caso si può sovrascrivere la funzione \partcombine con i comandi elencati sotto.

I comandi che finiscono con …Once si applicano soltanto alla nota successiva dell’espressione musicale.

instrumentOne = \relative c' {
  \partcombineApart c2^"separato" e |
  \partcombineAutomatic e2^"automatico" e |
  \partcombineChords e'2^"accordo" e |
  \partcombineAutomatic c2^"automatico" c |
  \partcombineApart c2^"separato" \partcombineChordsOnce e^"accordo una volta sola" |
  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 }
>>

[image of music]

Uso di \partcombine col testo vocale

Il comando \partcombine non è progettato per funzionare col testo vocale; al punto che se una delle voci è nominata in modo esplicito per poterle assegnare del testo, l’unione delle parti smette di funzionare. Tuttavia, questo risultato si può ottenere usando un contesto NullVoice. Vedi Polyphony with shared lyrics.

Frammenti di codice selezionati

Combinare due parti sullo stesso rigo

Lo strumento di unione delle parti (il comando \partcombine) permette di combinare varie parti sullo stesso rigo. Indicazioni testuali come “solo” e “a2” sono aggiunte automaticamente; per toglierele basta impostare la proprietà printPartCombineTexts su f. Per le partiture vocali (inni), non c’è bisogno di aggiungere i testi “solo/a2”, quindi dovrebbero essere disattivati. Tuttavia potrebbe convenire non usarlo se c’è una qualche parte solista, perché non verrebbe indicata. In tali casi è preferibile usare la notazione polifonica normale.

Questo frammento illustra i tre modi con cui due parti possono essere stampate su uno stesso rigo: normale polifonia, \partcombine senza testo e \partcombine con testo.

%% Combining pedal notes with clef changes

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
    }
  }
}

[image of music]

Modificare le indicazioni testuali di partcombine

Quando si usa la funzionalità di combinazione automatica delle parti, si può modificare il testo delle sezioni soliste e dell’unisono:

\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
    }
>>

[image of music]

Vedi anche

Glossario Musicale: a due, parte.

Guida alla notazione: Scrittura delle parti.

Frammenti: Simultaneous notes.

Guida al funzionamento interno: PartCombineMusic, Voice.

Problemi noti e avvertimenti

Tutte le funzioni \partcombine… possono accettare soltanto due voci.

Le funzioni \partcombine… non possono essere inserite all’interno di un blocco \tuplet o \relative.

Se printPartCombineTexts è attivo e le due voci eseguono le stesse note “in modo discontinuo” nella stessa misura, potrebbe apparire il testo a2 più di una volta in quella misura.

\partcombine sa soltanto quando una nota inizia in una voce (Voice); non può, ad esempio, ricordare se una nota in una voce è già iniziata quando combina le note già iniziate nell’altra voce. Questo può portare a vari problemi inattesi, tra cui la stampa non corretta dei segni “Solo” e “Unisono”.

\partcombine tiene tutti gli estensori (legature di portamento e di valore, forcelle, etc.) nella stessa voce, quindi se uno di questi estensori inizia o termina in una voce diversa potrebbe essere stampato incorrettamente o non essere stampato affatto.

Se la funzione \partcombine non riesce a combinare le due espressioni musicali (ovvero quando le due voci hanno durate diverse), assegnerà alle voci, internamente, nomi personalizzati: rispettivamente one e two. Ciò significa che se c’è un “passaggio” a un contesto Voice nominato diversamente, gli eventi in quel contesto verranno ignorati.

Consultare i Problemi noti e avvertimenti in Default tablatures se si usa \partcombine con l’intavolatura, e la Nota in Travature automatiche se si usa la disposizione automatica delle travature.


Scrivere la musica in parallelo

La musica che contiene parti diverse può essere messa in parallelo nel codice di input. La funzione \parallelMusic accetta una lista contenente i nomi di un insieme di variabili da creare e un’espressione musicale. Il contenuto delle misure alternate nell’espressione diventa il valore delle rispettive variabili, in modo che possano essere usate successivamente per stampare la musica.

Nota: L’uso dei controlli di battuta | è obbligatorio e le misure devono avere la stessa durata.

\parallelMusic #'(voiceA voiceB voiceC) {
  % Battuta 1
  r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' |
  r16 e'8.~   4              r16 e'8.~   4              |
  c'2                        c'2                        |

  % Battuta 2
  r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' |
  r16 d'8.~   4              r16 d'8.~   4              |
  c'2                        c'2                        |

}
\new StaffGroup <<
  \new Staff << \voiceA \\ \voiceB >>
  \new Staff { \clef bass \voiceC }
>>

[image of music]

L’uso del modo relativo è permesso. Attenzione: il comando \relative non deve essere messo dentro \parallelMusic. Le note sono relative alla nota precedente della voce, non a quella precedente nell’input. In altre parole, le note relative di voiceA ignorano le note in voiceB.

\parallelMusic #'(voiceA voiceB voiceC) {
  % Battuta 1
  r8 g16 c e g, c e r8 g,16 c e g, c e  |
  r16 e8.~ 4        r16 e8.~  4         |
  c2                c                   |

  % Battuta 2
  r8 a,16 d f a, d f r8 a,16 d f a, d f |
  r16 d8.~  4        r16 d8.~  4        |
  c2                 c                  |

 }
\new StaffGroup <<
  \new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >>
  \new Staff \relative c' { \clef bass \voiceC }
>>

[image of music]

Questo è molto utile nella musica per pianoforte. Questo esempio combina sezioni di quattro battute consecutive con quattro variabili:

global = {
  \key g \major
  \time 2/4
}

\parallelMusic #'(voiceA voiceB voiceC voiceD) {
  % Battuta 1
  a8    b     c   d     |
  d4          e         |
  c16 d e fis d e fis g |
  a4          a         |

  % Battuta 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
       >>
     }
  >>
}

[image of music]

Vedi anche

Manuale d’apprendimento: Organizzare i brani con le variabili.

Frammenti: Simultaneous notes.


1.6 Notazione del rigo

[image of music]

Questa sezione spiega come modificare l’aspetto del rigo, come stampare partiture multirigo e come aggiungere indicazioni di tempo e citazioni in corpo più piccolo nel rigo.


1.6.1 Aspetto del rigo

Questa sezione presenta i diversi metodi per creare e raggruppare i righi.


Istanziare nuovi righi

Il rigo musicale si crea con i comandi \new o \context. Ulteriori dettagli in Creating and referencing contexts.

Il contesto di base del rigo è Staff:

\new Staff { c4 d e f }

[image of music]

Il contesto DrumStaff crea un rigo di cinque linee impostato per una tipica batteria. Ogni strumento viene mostrato con un simbolo diverso. Gli strumenti si inseriscono nella modalità percussioni, che si attiva col comando \drummode: ogni strumento viene indicato con un nome. Ulteriori dettagli in Percussion staves.

\new DrumStaff {
  \drummode { cymc hh ss tomh }
}

[image of music]

RhythmicStaff crea un rigo con una sola linea che mostra soltanto i valori ritmici dell’input. Le durate reali vengono mantenute. Ulteriori dettagli in Mostrare i ritmi della melodia.

\new RhythmicStaff { c4 d e f }

[image of music]

TabStaff crea un’intavolatura (o tablatura) con sei corde nell’accordatura standard per chitarra. Ulteriori dettagli in Default tablatures.

\new TabStaff { c4 d e f }

[image of music]

Ci sono due contesti del rigo specifici per la notazione di musica antica, MensuralStaff e VaticanaStaff, descritti in Pre-defined contexts.

Il contesto GregorianTranscriptionStaff crea un rigo per il canto gregoriano moderno. Non mostra le stanghette delle battute.

\new GregorianTranscriptionStaff { c4 d e f e d }

[image of music]

Si possono creare nuovi contesti per un singolo rigo, come è spiegato dettagliatamente in Defining new contexts.

Vedi anche

Glossario musicale: rigo,

Guida alla notazione: Creating and referencing contexts, Percussion staves, Mostrare i ritmi della melodia, Default tablatures, Pre-defined contexts, Simbolo del rigo, Gregorian chant contexts, Mensural contexts, Defining new contexts.

Frammenti: Staff notation.

Guida al funzionamento interno: Staff, DrumStaff, GregorianTranscriptionStaff, RhythmicStaff, TabStaff, MensuralStaff, VaticanaStaff, StaffSymbol.


Raggruppare i righi

Esistono vari contesti per raggruppare insieme singoli righi in modo da formare sistemi multirigo. Ogni contesto di raggruppamento imposta il comportamento delle stanghette e lo stile del segno che delimita l’inizio del sistema.

Se non si specifica alcun contesto, vengono usate le proprietà predefinite: il gruppo inizia con una linea verticale e le stanghette non sono collegate.

<<
  \new Staff { c1 c }
  \new Staff { c1 c }
>>

[image of music]

Nel contesto StaffGroup, il gruppo inizia con una parentesi quadra e le stanghette attraversano tutti i righi.

\new StaffGroup <<
  \new Staff { c1 c }
  \new Staff { c1 c }
>>

[image of music]

Nel contesto ChoirStaff, il gruppo inizia con una parentesi quadra, ma le stanghette non sono collegate.

\new ChoirStaff <<
  \new Staff { c1 c }
  \new Staff { c1 c }
>>

[image of music]

Nel contesto GrandStaff, il gruppo inizia con una parentesi graffa e le stanghette sono collegate da rigo a rigo.

\new GrandStaff <<
  \new Staff { c1 c }
  \new Staff { c1 c }
>>

[image of music]

Il contesto PianoStaff è identico a GrandStaff, con l’unica differenza che permette di mostrare il nome dello strumento direttamente. Ulteriori dettagli in Nomi degli strumenti.

\new PianoStaff <<
  \set PianoStaff.instrumentName = #"Piano"
  \new Staff { c1 c }
  \new Staff { c1 c }
>>

[image of music]

Ogni contesto per il gruppo di righi imposta la proprietà systemStartDelimiter su uno dei seguenti valori: SystemStartBar, SystemStartBrace o SystemStartBracket. È presente anche un quarto delimitatore, SystemStartSquare, ma deve essere indicato esplicitamente.

Si possono definire nuovi contesti di gruppi di rigo. I dettagli sono spiegati in Defining new contexts.

Frammenti di codice selezionati

Usare una parentesi quadra all’inizio di un gruppo di righi

Si può usare il segno SystemStartSquare (uno dei segni che delimitano l’inizio del sistema) impostandolo esplicitamente in un contesto StaffGroup o ChoirStaff.

\score {
  \new StaffGroup { <<
  \set StaffGroup.systemStartDelimiter = #'SystemStartSquare
    \new Staff { c'4 d' e' f' }
    \new Staff { c'4 d' e' f' }
  >> }
}

[image of music]

Mostrare la parentesi anche se c’è un solo rigo nel sistema

Se c’è un solo rigo in uno dei tipi di rigo ChoirStaff o StaffGroup, la parentesi e la stanghetta iniziale non appaiono. Si può modificare questo comportamento predefinito sovrascrivendo collapse-height e impostando un valore inferiore al numero di linee del rigo.

Nei contesti PianoStaff e GrandStaff, dove i sistemi iniziano con una parentesi graffa invece di una parentesi quadra, occorre impostare un’altra proprietà, come si vede nel secondo sistema dell’esempio.

\score {
  \new StaffGroup <<
    % Must be lower than the actual number of staff lines
    \override StaffGroup.SystemStartBracket.collapse-height = #4
    \override Score.SystemStartBar.collapse-height = #4
    \new Staff {
      c'1
    }
  >>
}
\score {
  \new PianoStaff <<
    \override PianoStaff.SystemStartBrace.collapse-height = #4
    \override Score.SystemStartBar.collapse-height = #4
    \new Staff {
      c'1
    }
  >>
}

[image of music]

Formattazione mensurale (stanghette tra i righi)

La formattazione mensurale, in cui le stanghette non appaiono sui righi ma nello spazio tra i righi, si può ottenere usando StaffGroup al posto di ChoirStaff. La stanghetta sui righi viene nascosta impostando la proprietà transparent.

global = {
  \hide Staff.BarLine
  s1 s
  % the final bar line is not interrupted
  \undo \hide Staff.BarLine
  \bar "|."
}

\new StaffGroup \relative c'' {
  <<
    \new Staff { << \global { c1 c } >> }
    \new Staff { << \global { c c } >> }
  >>
}

[image of music]

Vedi anche

Glossario musicale: graffa, parentesi quadra, accollatura.

Guida alla notazione: Nomi degli strumenti, Defining new contexts.

Frammenti: Staff notation.

Guida al funzionamento interno: Staff, StaffGroup, ChoirStaff, GrandStaff, PianoStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.

Problemi noti e avvertimenti

PianoStaff non accetta ChordNames.


Gruppi di righi annidati

I contesti dei gruppi di righi possono essere annidati fino a qualsiasi livello. In questo caso, ogni contesto inferiore crea una nuova parentesi accanto alla parentesi del gruppo superiore.

\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 }
    >>
  >>
>>

[image of music]

Si possono definire nuovi gruppi di righi annidati. Ulteriori dettagli in Defining new contexts.

Frammenti di codice selezionati

Annidare i righi

Si può usare la proprietà systemStartDelimiterHierarchy per creare gruppi di righi annidati più complessi. Il comando \set StaffGroup.systemStartDelimiterHierarchy prende come argomento una lista alfabetica dell’insieme di righi prodotti. Prima di ogni rigo si può assegnare un delimitatore di inizio del sistema. Deve essere racchiuso tra parentesi e collega tutti i righi compresi tra le parentesi. Gli elementi nella lista possono essere omessi, ma la prima parentesi quadra collega sempre tutti i righi. Le possibilità sono SystemStartBar, SystemStartBracket, SystemStartBrace e 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 }
>>

[image of music]

Vedi anche

Guida alla notazione: Raggruppare i righi, Nomi degli strumenti, Defining new contexts.

Frammenti: Staff notation.

Guida al funzionamento interno: StaffGroup, ChoirStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.


Separare i sistemi

Se il numero di sistemi per pagina cambia di pagina in pagina, è consuetudine separare i sistemi con un segno separatore. Per impostazione predefinita questo segno è disattivo, ma può essere attivato con un’opzione in \paper.

\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
    % i seguenti comandi servono soltanto alla formattazione di questa documentazione
    paper-width = 100\mm
    paper-height = 100\mm
    tagline = ##f
  }
}

[image of music]

Vedi anche

Guida alla notazione: Page layout.

Frammenti: Staff notation.


1.6.2 Modificare singoli righi

Questa sezione spiega come modificare gli attributi specifici di un rigo, per esempio il numero di linee o la dimensione del rigo. Vengono descritti anche i metodi per iniziare e finire un rigo e per impostare le sezioni ossia.


Simbolo del rigo

I comandi \stopStaff e \startStaff servono a fermare o (ri)avviare le linee del rigo, per impedire che appaiano in un punto della partitura.

\stopStaff f4 d \startStaff g, e
f'4 d \stopStaff g, e
f'4 d \startStaff g, e

[image of music]

Comandi predefiniti

\startStaff, \stopStaff.

Le linee di un rigo appartengono all’oggetto StaffSymbol (che comprende i tagli addizionali) e si possono modificare tramite le proprietà di StaffSymbol; però queste modifiche devono essere fatte prima che il rigo sia (ri)avviato.

Si può cambiare il numero di linee del rigo:

f4 d \stopStaff
\override Staff.StaffSymbol.line-count = #2
\startStaff g, e |

f'4 d \stopStaff
\revert Staff.StaffSymbol.line-count
\startStaff g, e |

[image of music]

Si può cambiare anche la posizione di ogni linea del rigo. Un elenco di numeri definisce la posizione di ogni linea. I valori consueti sono 0 per la linea centrale e (-4 -2 0 2 4) per le altre. La linea del rigo appare solo se è presente il suo valore, quindi questo comando permette di variare anche il numero delle linee, oltre alla loro posizione.

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

[image of music]

Per conservare le tipiche direzioni dei gambi (nella metà inferiore del rigo i gambi puntano in su, mentre in quella superiore sono rivolti in giù), occorre allineare la linea centrale (o lo spazio) del rigo personalizzato alla posizione della linea centrale normale (0). Potrà essere necessario regolare la posizione della chiave e del Do centrale per adattarsi alle nuove linee. Si veda Chiave.

Si può modificare lo spessore della linea del rigo. Per impostazione predefinita, questa modifica ha effetto anche sui tagli addizionali e sui gambi.

\new Staff \with {
  \override StaffSymbol.thickness = #3
}
{ f4 d g, e }

[image of music]

È anche possibile impostare lo spessore dei tagli addizionali in modo indipendente dalle linee del rigo.

\new Staff \with {
  \override StaffSymbol.thickness = #2
  \override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4)
}
{ f'4 a, a,, f }

[image of music]

Il primo valore viene moltiplicato per lo spessore della linea del rigo, il secondo per la spaziatura del rigo; la somma dei due valori definisce il nuovo valore dello spessore del taglio addizionale.

Si possono modificare le posizioni verticali dei tagli addizionali:

\new Staff \with {
  \override StaffSymbol.ledger-positions = #'(-3 -2 -1 2 5 6)
}
{ f'4 a, a,, f }

[image of music]

Si possono far apparire ulteriori tagli addizionali sopra o sotto le teste delle note, a seconda della posizione corrente relativa alle altre teste, anch’esse con i propri tagli addizionali.

\new Staff \with {
  \override StaffSymbol.ledger-extra = #4
}
{ f'4 a, d, f, }

[image of music]

Si possono far apparire i tagli addizionali anche dentro il rigo quando servono delle linee personalizzate. L’esempio mostra la posizione predefinita dei tagli addizionali quando la proprietà ledger-position è impostata e quando non lo è. Nell’esempio il comando \stopStaff serve ad annullare il comando \override per l’oggetto StaffSymbol.

\override Staff.StaffSymbol.line-positions = #'(-8 0 2 4)
d4 e f g
\stopStaff
\startStaff
\override Staff.StaffSymbol.ledger-positions = #'(-8 -6 (-4 -2) 0)
d4 e f g

[image of music]

Si può cambiare la distanza tra le linee del rigo. Tale modifica ha effetto anche sulla spaziatura della linea.

\new Staff \with {
  \override StaffSymbol.staff-space = #1.5
}
{ f'4 d, g, e, }

[image of music]

Frammenti di codice selezionati

Rendere alcune linee del rigo più spesse delle altre

In ambito didattico può essere utile rendere più spesso una linea del rigo (per esempio, la linea centrale, o per sottolineare la linea della chiave di Sol). Per farlo si possono aggiungere altre linee e posizionarle molto vicino alla linea che deve essere evidenziata, usando la proprietà line-positions dell’oggetto StaffSymbol.

{
  \override Staff.StaffSymbol.line-positions =
    #'(-4 -2 -0.2 0 0.2 2 4)
  d'4 e' f' g'
}

[image of music]

Vedi anche

Glossario musicale: linea, taglio addizionale, rigo (o pentagramma).

Guida alla notazione: Chiave.

Frammenti: Staff notation.

Guida al funzionamento interno: StaffSymbol, staff-symbol-interface.


Righi ossia

I righi ossia si possono creare aggiungendo un nuovo rigo simultaneo nel punto giusto:

\new Staff \relative c'' {
  c4 b d c
  <<
    { c4 b d c }
    \new Staff { e4 d f e }
  >>
  c4 b c2
}

[image of music]

Tuttavia, questo esempio non produce quel che normalmente si desidera. Per creare righi ossia che siano sopra il rigo originale, non abbiano indicazione di tempo né chiave e abbiano un tipo di carattere più piccolo, sono necessarie delle modifiche manuali. Il Manuale d’apprendimento descrive una tecnica specifica per ottenere questo risultato, a partire da Annidare le espressioni musicali.

L’esempio seguente usa la proprietà alignAboveContext per allineare il rigo ossia. Questo metodo conviene quando sono necessari solo pochi righi ossia.

\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
}

[image of music]

Se si hanno molti righi ossia isolati, è meglio creare un contesto Staff vuoto con un identificativo del contesto specifico; i righi ossia possono essere creati chiamando questo contesto e usando \startStaff e \stopStaff nei punti richiesti. I vantaggi di questo metodo sono più evidenti se il brano è più lungo del seguente esempio.

<<
  \new Staff = "ossia" \with {
    \remove "Time_signature_engraver"
    \hide Clef
    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
  }
>>

[image of music]

Come alternativa, si può usare il comando \Staff \RemoveEmptyStaves per creare i righi ossia. Questo metodo conviene quando i righi ossia si trovano subito dopo un’interruzione di linea. Ulteriori informazioni su \Staff \RemoveEmptyStaves si trovano in Nascondere i righi.

<<
  \new Staff = "ossia" \with {
    \remove "Time_signature_engraver"
    \hide Clef
    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
  }
}

[image of music]

Frammenti di codice selezionati

Allineare verticalmente gli ossia e il testo vocale

Questo frammento mostra come usare le proprietà di contesto alignBelowContext e alignAboveContext per controllare il posizionamento del testo vocale e degli ossia.

\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]
        }
      }
    >>
  }
>>

[image of music]

Vedi anche

Glossario musicale: ossia, rigo (pentagramma), rigo temporaneo.

Manuale d’apprendimento: Annidare le espressioni musicali, Dimensione degli oggetti, Lunghezza e spessore degli oggetti.

Guida alla notazione: Nascondere i righi.

Frammenti: Staff notation.

Guida al funzionamento interno: StaffSymbol.


Nascondere i righi

Le linee del rigo si possono nascondere togliendo l’incisore Staff_symbol_engraver dal contesto Staff. Altrimenti si può usare \stopStaff.

\new Staff \with {
  \remove "Staff_symbol_engraver"
}
\relative c''' { a8 f e16 d c b a2 }

[image of music]

I righi vuoti si possono nascondere inserendo il comando \Staff \RemoveEmptyStaves nel blocco \layout. Nelle partiture per orchestra, questo stile è noto come ‘Partitura alla francese’. Questo comando nasconde e toglie tutti i righi vuoti di una partitura eccetto quelli nel primo sistema.

Nota: Un rigo viene considerato vuoto quando contiene soltanto pause multiple, pause, salti, pause spaziatrici o una combinazione di questi elementi.

\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
  }
>>

[image of music]

\Staff \RemoveEmptyStaves si può usare anche per creare sezioni ossia per un rigo. I dettagli si trovano in Righi ossia.

Per nascondere i righi vuoti nei contesti della musica antica si può usare il comando \VaticanaStaff \RemoveEmptyStaves. Analogalmente, \RhythmicStaff \RemoveEmptyStaves permette di nascondere i contesti RhythmicStaff vuoti.

Comandi predefiniti

\Staff \RemoveEmptyStaves, \VaticanaStaff \RemoveEmptyStaves, \RhythmicStaff \RemoveEmptyStaves.

Frammenti di codice selezionati

Eliminare la prima linea vuota

Il primo rigo vuoto si può togliere dalla partitura impostando la proprietà remove-first di VerticalAxisGroup. Questa impostazione agisce a livello globale se posta nel blocco \layout, a livello locale se posta nel rigo specifico che deve essere tolto. Nel secondo caso, si deve specificare il contesto (Staff si applica solo al rigo corrente) prima della proprietà.

Il rigo inferiore del secondo gruppo di righi non viene rimosso, perché l’impostazione ha effetto solo sul rigo in cui si trova.

\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
  }
>>

[image of music]

Vedi anche

Glossario musicale: rigo temporaneo.

Manuale d’apprendimento: Visibilità e colore degli oggetti.

Guida alla notazione: Changing context default settings, Simbolo del rigo, Righi ossia, Note nascoste, Pause invisibili, Visibility of objects.

Frammenti: Staff notation.

Guida al funzionamento interno: ChordNames, FiguredBass, Lyrics, Staff, VerticalAxisGroup, Staff_symbol_engraver.

Problemi noti e avvertimenti

Se si toglie l’incisore Staff_symbol_engraver vengono nascoste anche le stanghette. Se si forza la visibilità delle stanghette, potrebbero verificarsi degli errori di formattazione. In questo caso, conviene usare i seguenti comandi invece di togliere l’incisore:

\omit StaffSymbol
\override NoteHead.no-ledgers = ##t

Per i problemi noti e gli avvertimenti relativi a \Staff \RemoveEmptyStaves si veda Changing context default settings.


1.6.3 Scrittura delle parti

Questa sezione spiega come inserire in una partitura le indicazioni di tempo e i nomi degli strumenti. Mostra anche come citare altre voci e come formattare le citazioni in corpo più piccolo.


Nomi degli strumenti

I nomi degli strumenti possono essere fatti apparire, alla sinistra dei righi, nei contesti Staff, PianoStaff, StaffGroup, GrandStaff e ChoirStaff. Il valore di instrumentName viene usato per il primo rigo e quello di shortInstrumentName per tutti i righi successivi.

\new Staff \with {
  instrumentName = #"Violin "
  shortInstrumentName = #"Vln. "
}
{ c4.. g'16 c4.. g'16 \break | c1 }

[image of music]

Si può usare \markup per creare nomi più complessi:

\new Staff \with {
  instrumentName = \markup {
    \column { "Clarinetti"
      \line { "in B" \smaller \flat }
    }
  }
}
{ c4 c,16 d e f g2 }

[image of music]

Se due o più contesti del rigo sono raggruppati insieme, i nomi degli strumenti, sia quello normale che quello abbreviato, vengono centrati automaticamente. Per allineare al centro i nomi degli strumenti che vanno a capo, occorre usare \center-column:

<<
  \new Staff \with {
    instrumentName = #"Flute"
  }
  { f2 g4 f }
  \new Staff \with {
    instrumentName = \markup {
      \center-column { "Clarinet"
        \line { "in B" \smaller \flat }
      }
    }
  }
  { c4 b c2 }
>>

[image of music]

Tuttavia, se i nomi degli strumenti sono lunghi, potranno essere centrati solo aumentando i valori di indent e short-indent. Ulteriori dettagli su queste impostazioni si trovano in \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
}

[image of music]

Per impostare i nomi degli strumenti in altri contesti (come ChordNames o FiguredBass), si deve aggiungere l’incisore Instrument_name_engraver a quel contesto. Ulteriori dettagli in Modifying context plug-ins.

shortInstrumentName può essere cambiato all’interno di un brano, mentre di instrumentName apparirà solo la prima definizione e le modifiche successive saranno ignorate:

\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
}

[image of music]

Se serve un cambio di strumento, si può usare \addInstrumentDefinition insieme a \instrumentSwitch per creare una lista dettagliata delle modifiche necessarie per il cambio. Il comando \addInstrumentDefinition prende due argomenti: una stringa testuale per identificare lo strumento, e una lista di associazione delle proprietà di contesto e dei valori da usare. Deve trovarsi nell’ambito di più alto livello. Per dichiarare il cambio di strumento, si usa il comando \instrumentSwitch, all’interno dell’espressione musicale, :

\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 ~ | 1
}

[image of music]

Vedi anche

Guida alla notazione: \paper variables for shifts and indents, Modifying context plug-ins.

Frammenti: Staff notation.

Guida al funzionamento interno: InstrumentName, PianoStaff, Staff.


Citare altre voci

È molto comune che una voce usi le stesse note di un’altra voce. Per esempio, il primo e il secondo violino che suonano la stessa frase durante un particolare passaggio del brano. Per evitare di reinserire la musica di nuovo per la seconda voce, si può far sì che una voce citi l’altra.

Il comando \addQuote, usato nell’ambito di più alto livello, definisce un flusso musicale da cui poter citare i frammenti.

Il comando \quoteDuring serve a indicare il punto in cui inizia la citazione. È seguito da due argomenti: il nome della voce citata, come è definito da \addQuote, e un’espressione musicale per la durata della citazione.

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
  >>
}

[image of music]

Se l’espressione musicale usata in \quoteDuring contiene note invece di pause spaziatrici o multiple, la citazione apparirà in forma polifonica e potrebbe causare risultati indesiderati.

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
  >>
}

[image of music]

Il comando \quoteDuring usa le impostazioni \transposition sia della parte citata sia di quella che cita per produrre delle note per la parte che cita che abbiano la stessa altezza di quelle nella parte citata.

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
  >>
}

[image of music]

La musica citata include tutte le articolazioni, dinamiche, annotazioni, etc. presenti nel frammento citato. È possibile scegliere quali di questi oggetti far apparire usando la proprietà di contesto quotedEventTypes.

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
  >>
 }

[image of music]

Le citazioni possono anche essere contrassegnate; si veda Using tags.

Vedi anche

Guida alla notazione: Trasporto strumentale, Using tags.

File installati: ‘scm/define-event-classes.scm’.

Frammenti: Staff notation.

Guida al funzionamento interno: Music classes, QuoteMusic, Voice.

Problemi noti e avvertimenti

Solo il contenuto della prima voce in un comando \addQuote sarà preso in considerazione per la citazione; quindi se l’espressione musicale contiene comandi \new o \context Voice, il loro contenuto non verrà citato. La citazione degli abbellimenti non è supportata e potrebbe causare il crash di LilyPond; la citazione di terzine annidate potrebbe produrre una notazione mediocre.


Formattazione delle notine

Il modo più semplice per formattare le notine è creare esplicitamente un contesto CueVoice all’interno della parte.

R1
<<
  { e2\rest r4. e8 }
  \new CueVoice {
    \stemUp d'8^"flute" c d e fis2
  }
>>
d,4 r a r

[image of music]

Si può usare il comando \cueClef all’interno di un contesto CueVoice esplicito se è richiesto un cambiamento di chiave; in questo modo la chiave apparirà nella dimensione giusta per le notine. Si può poi usare il comando \cueClefUnset per tornare alla chiave originale, di nuovo nella dimensione giusta.

\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

[image of music]

I comandi \cueClef e \cueClefUnset si possono usare anche senza un esplicito contesto CueVoice.

\clef "bass"
R1
\cueClef "treble"
d'8^"flute" c d e fis2
\cueClefUnset
d,,4 r a r

[image of music]

Per posizionamenti complessi delle notine, per esempio includere la trasposizione o inserire delle notine da varie sorgenti musicali, si possono usare i comandi \cueDuring o \cueDuringWithClef. Questi sono delle varianti più specializzate di \quoteDuring, introdotto in Citare altre voci nella sezione precedente.

La sintassi è:

\cueDuring #nomecitazione #direzione #musica

e

\cueDuringWithClef #nomecitazione #direzione #chiave #musica

La musica delle misure che corrispondono a nomecitazione viene aggiunta in un contesto CueVoice e si colloca in simultanea con musica, creando quindi una situazione polifonica. La direzione prende l’argomento UP o DOWN, e corrisponde alla prima e alla seconda voce rispettivamente, determinando come le notine appaiono in relazione all’altra voce.

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
}

[image of music]

È possibile controllare quali aspetti della musica vengono citati con \cueDuring impostando la proprietà quotedCueEventTypes. Il suo valore predefinito è '(note-event rest-event tie-event beam-event tuplet-span-event), che significa che vengono citati solo note, pause, legature di valore, travature e gruppi irregolari, ma non le articolazioni, le indicazioni dinamiche, il testo a margine, etc.

Nota: Quando una voce inizia con cueDuring, come nell’esempio seguente, il contesto Voice deve essere dichiarato esplicitamente, altrimenti l’intera espressione musicale appartiene al contesto CueVoice.

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,
}

[image of music]

Il nome dello strumento che suona la citazione si imposta con la proprietà instrumentCueName in un contesto CueVoice temporaneo. Il posizionamento e lo stile di instrumentCueName è regolato dall’oggetto instrumentSwitch, vedi Nomi degli strumenti. Se le citazioni in corpo più piccolo richiedono un cambio di chiave, si può fare manualmente ma anche il ripristino della chiave originale dovrà essere fatto manualmente al termine delle citazioni.

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
}

[image of music]

Altrimenti si può usare la funzione \cueDuringWithClef. Questo comando prende un ulteriore argomento per specificare il cambio di chiave da usare per le citazioni in corpo più piccolo ma mostrerà automaticamente la chiave originale appena le citazioni sono finite.

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
}

[image of music]

Come \quoteDuring, \cueDuring prende in considerazione la trasposizione degli strumenti. Le citazioni in corpo più piccolo vengono mostrate nelle altezze necessarie allo strumento che riprende la citazione per riprodurre gli stessi suoni dello strumento citato.

Per trasporre le citazioni in corpo più piccolo in modo diverso, si usa \transposedCueDuring. Questo comando prende un ulteriore argomento per specificare (in modalità assoluta) l’altezza da usare nella partitura per rappresentare il Do centrale in intonazione reale. È utile nel caso di citazioni da uno strumento che ha un registro completamente diverso.

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
>>

[image of music]

Il comando \killCues toglie le citazioni in corpo più piccolo da un’espressione musicale, in modo che la stessa espressione musicale possa essere usata per produrre sia la parte strumentale con le citazioni in corpo più piccolo sia l’intera partitura. Il comando \killCues toglie soltanto le note e gli eventi citati da \cueDuring. Altre annotazioni relative alle citazioni in corpo più piccolo, come i cambi di chiave e il nome che identifica lo strumento sorgente, possono essere contrassegnate per includerle in modo selettivo nella partitura; si veda 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 } }
  }
>>

[image of music]

Altrimenti, i cambi di chiave e i nomi identificativi degli strumenti possono essere inseriti in una definizione, in modo da poterli riutilizzare, col comando \addInstrumentDefinition descritto in Nomi degli strumenti.

Vedi anche

Guida alla notazione: Citare altre voci, Trasporto strumentale, Nomi degli strumenti, Chiave, Musical cues, Using tags.

Frammenti: Staff notation.

Guida al funzionamento interno: CueVoice, Voice.

Problemi noti e avvertimenti

Quando si usa \cueDuring, si possono verificare delle collisioni tra le pause nel contesto Voice e quelle in CueVoice. Quando si usa \cueDuringWithClef o \transposedCueDuring, l’argomento ulteriore richiesto da entrambi deve venire dopo la citazione e la direzione.


1.7 Note editoriali

[image of music]

Questa sezione tratta dei vari modi con cui cambiare l’aspetto delle note e aggiungere un’analisi o un accento didattico.


1.7.1 Interne al rigo

Questa sezione spiega come aggiungere enfasi agli elementi interni al rigo.


Scelta della dimensione del tipo di carattere

È possibile modificare la dimensione del tipo di carattere degli elementi della notazione. Tale modifica non altera la dimensione di altri simboli variabili, come le travature o le legature di portamento.

Nota: Per informazioni sulla dimensione del tipo di carattere per il testo, si veda Scelta del tipo di carattere e della dimensione.

\huge
c4.-> d8---3
\large
c4.-> d8---3
\normalsize
c4.-> d8---3
\small
c4.-> d8---3
\tiny
c4.-> d8---3
\teeny
c4.-> d8---3

[image of music]

Internamente, questi comandi impostano la proprietà fontSize. In questo modo la proprietà font-size viene impostata per tutti gli oggetti della formattazione. Il valore di font-size è un numero che indica la dimensione relativa alla dimensione standard per l’altezza del rigo corrente. Ogni grado in su corrisponde a un aumento di circa il 12% della dimensione del tipo di carattere. Sei gradi corrispondono esattamente a un fattore di due. La funzione Scheme magstep converte un numero di font-size in un fattore di ridimensionamento. Si può impostare la proprietà font-size anche direttamente, in modo da agire solo su certi oggetti di formattazione.

\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

[image of music]

La modifica della dimensione del tipo di carattere si ottiene ridimensionando la dimensione, tra quelle predefinite, più vicina a quella desiderata. La dimensione standard (per font-size = #0) dipende dall’altezza standard del rigo: per un rigo di 20pt, viene scelto un tipo di carattere di 10pt.

La proprietà font-size si può impostare soltanto sugli oggetti di formattazione che usano i tipi di carattere, ovvero quegli oggetti che supportano l’interfaccia di formattazione font-interface.

Comandi predefiniti

\teeny, \tiny, \small, \normalsize, \large, \huge.

Vedi anche

Frammenti: Editorial annotations.

Guida al funzionamento interno: font-interface.


Indicazioni di diteggiatura

Le indicazioni di diteggiatura si inseriscono con ‘nota-numero’:

c4-1 d-2 f-4 e-3

[image of music]

Si può usare il testo incluso dentro \markup o tra virgolette per indicare un cambio di dito.

c4-1 d-2 f\finger \markup \tied-lyric #"4~3" c\finger "2 - 3"

[image of music]

Si può aggiungere il simbolo del pollice per indicare che una nota deve essere suonata col pollice (ad esempio, nella musica per violoncello).

<a_\thumb a'-3>2 <b_\thumb b'-3>

[image of music]

È possibile indicare la diteggiatura di ogni singola nota di un accordo specificandola dopo ciascuna altezza.

<c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>

[image of music]

Le indicazioni di diteggiatura possono essere poste sopra o sotto il rigo, come è spiegato in Direction and placement.

Frammenti di codice selezionati

Controllare il posizionamento delle diteggiature di un accordo

Il posizionamento dei numeri della diteggiatura può essere regolato in modo preciso. Perché l’orientamento funzioni, occorre usare il costrutto per gli accordi <> anche per una nota singola.

\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
}

[image of music]

Far sì che la diteggiatura appaia dentro il rigo

Per impostazione predefinita, le diteggiature orientate verticalmente sono poste fuori dal rigo. Tuttavia, questo comportamento può essere annullato. Attenzione: bisogna usare il costrutto per gli accordi <>, anche se si riferisce a una singola nota.

\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>
}

[image of music]

Evitare le collisioni con le diteggiature degli accordi

Diteggiature e numeri di corda applicati a note individuali evitano automaticamente le travature e i gambi, ma questo non vale per diteggiature e numeri di corda applicati alle singole note di un accordo. L’esempio seguente mostra come aggirare questo comportamento predefinito.

\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

  % No tweak needed
  r8
  <f c'-5>8
  <f c'\5>8
   % Corrected to avoid collisions
  \override StrokeFinger.add-stem-support = ##t
  <f c'-\rightHandFinger #2 >8
}

[image of music]

Vedi anche

Guida alla notazione: Direction and placement.

Frammenti: Editorial annotations.

Guida al funzionamento interno: FingeringEvent, fingering-event, Fingering_engraver, New_fingering_engraver, Fingering.


Note nascoste

Le note nascoste (o invisibili o trasparenti) possono essere utili nella preparazione di esercizi di teoria e composizione.

c4 d
\hideNotes
e4 f
\unHideNotes
g a
\hideNotes
b
\unHideNotes
c

[image of music]

Questo comando rende invisibili le teste, i gambi e le code delle note, e le pause. Le travature sono invisibili se iniziano su una nota nascosta. Mentre gli oggetti attaccati a note invisibili sono comunque visibili.

e8(\p f g a)--
\hideNotes
e8(\p f g a)--

[image of music]

Comandi predefiniti

\hideNotes, \unHideNotes.

Vedi anche

Manuale d’apprendimento: Visibilità e colore degli oggetti.

Guida alla notazione: Pause invisibili, Visibility of objects, Nascondere i righi.

Frammenti: Editorial annotations.

Guida al funzionamento interno: Note_spacing_engraver, NoteSpacing.


Colorare gli oggetti

Si possono assegnare dei colori a ciascun oggetto. I nomi dei colori validi sono elencati nella List of colors.

\override NoteHead.color = #red
c4 c
\override NoteHead.color = #(x11-color 'LimeGreen)
d
\override Stem.color = #blue
e

[image of music]

Si può accedere all’intera gamma di colori definita per X11 con la funzione Scheme x11-color. La funzione prende un argomento, che può essere un simbolo nella forma 'FooBar o una stringa nella forma "FooBar". La prima forma è più veloce da scrivere e più efficiente. Tuttavia, la seconda forma permette di accedere ai colori X11 attraverso la forma del nome che ha più di una parola.

La funzione x11-color, se non riesce a comprendere il parametro, restituisce il colore nero.

\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
% questo parametro è volutamente assurdo; notare che i gambi restano neri
\override Stem.color = #(x11-color 'Boggle)
b2 cis

[image of music]

I colori RGB esatti si specificano con la funzione Scheme 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

[image of music]

Vedi anche

Guida alla notazione: List of colors, The \tweak command.

Frammenti: Editorial annotations.

Problemi noti e avvertimenti

Un colore X11 non ha necessariamente la stessa identica tonalità di un normale colore dal nome simile.

Non tutti i colori X11 sono distinguibili in un browser web. Per esempio, un browser potrebbe non mostrare alcuna differenza tra LimeGreen e ForestGreen. Per il web si consiglia di usare i colori normali (ovvero blue, green, red).

Le note in un accordo non possono essere colorate con un \override; al suo posto si usa \tweak, vedi The \tweak command.


Parentesi

Gli oggetti possono essere messi tra parentesi se si usa il comando \parenthesize prima dell’evento musicale. Se precede un accordo, viene messa tra parentesi ogni nota dell’accordo. Si possono mettere tra parentesi anche singole note di un accordo.

c2 \parenthesize d
c2 \parenthesize <c e g>
c2 <c \parenthesize e g>

[image of music]

Si possono mettere tra parentesi anche oggetti diversi dalle note. Per le articolazioni è necessario usare un trattino prima del comando \parenthesize.

c2-\parenthesize -. d
c2 \parenthesize r

[image of music]

Vedi anche

Frammenti: Editorial annotations.

Guida al funzionamento interno: Parenthesis_engraver, ParenthesesItem, parentheses-interface.

Problemi noti e avvertimenti

Se si mette tra parentesi un accordo, viene creata una parentesi per ogni nota dell’accordo invece di una sola grande parentesi per l’intero accordo.


Gambi

Per ogni nota viene creato automaticamente un oggetto Stem (gambo). Vale anche per le semibrevi e le pause, anche se i loro gambi sono resi invisibili.

I gambi si possono posizionare sopra o sotto, vedi Direction and placement.

Comandi predefiniti

\stemUp, \stemDown, \stemNeutral.

Frammenti di codice selezionati

Direzione predefinita dei gambi sulla linea centrale del rigo

La direzione predefinita dei gambi sulla linea centrale del rigo si imposta con la proprietà neutral-direction dell’oggetto Stem.

\relative c'' {
  a4 b c b
  \override Stem.neutral-direction = #up
  a4 b c b
  \override Stem.neutral-direction = #down
  a4 b c b
}

[image of music]

Cambiare automaticamente la direzione del gambo della nota centrale in base alla melodia

LilyPond può modificare la direzione del gambo della nota centrale di un rigo in modo che segua la melodia: occorre aggiungere l’incisore Melody_engraver al contesto Voice e sovrascrivere la proprietà neutral-direction di Stem.

\relative c'' {
  \time 3/4
  a8 b g f b g |
  c  b d c b c |
}

\layout {
  \context {
    \Voice
    \consists "Melody_engraver"
    \autoBeamOff
    \stemNeutral
  }
}

[image of music]

Vedi anche

Guida alla notazione: Direction and placement.

Frammenti: Editorial annotations.

Guida al funzionamento interno: Stem_engraver, Stem, stem-interface.


1.7.2 Esterne al rigo

Questa sezione spiega come dare risalto agli elementi nel rigo attraverso delle note esterne al rigo.


Nuvoletta di aiuto

Si possono contrassegnare e nominare gli elementi della notazione tramite una nuvoletta quadrata. La sua funzione principale è spiegare la notazione.

\new Voice \with { \consists "Balloon_engraver" }
{
  \balloonGrobText #'Stem #'(3 . 4) \markup { "Sono un gambo" }
  a8
  \balloonGrobText #'Rest #'(-4 . -4) \markup { "Sono una pausa" }
  r
  <c, g'-\balloonText #'(-2 . -2) \markup { "Sono la testa di una nota" } c>2.
}

[image of music]

Ci sono due funzioni musicali, balloonGrobText e balloonText; la prima si usa nella forma \once \override per attaccare del testo a un qualsiasi oggetto grafico (grob), mentre la seconda viene usata come \tweak, solitamente all’interno degli accordi, per attaccare del testo a una singola nota.

Il testo nella nuvoletta influenza la spaziatura delle note, ma è possibile modificare questo comportamento:

\new Voice \with { \consists "Balloon_engraver" }
{
  \balloonGrobText #'Stem #'(3 . 4) \markup { "Sono un gambo" }
  a8
  \balloonGrobText #'Rest #'(-4 . -4) \markup { "Sono una pausa" }
  r
  \balloonLengthOn
  <c, g'-\balloonText #'(-2 . -2) \markup { "Sono la testa di una nota" } c>2.
}

[image of music]

Comandi predefiniti

\balloonLengthOn, \balloonLengthOff.

Vedi anche

Frammenti: Editorial annotations.

Guida al funzionamento interno: Balloon_engraver, BalloonTextItem, balloon-interface.


Linee della griglia

Si possono disegnare delle linee verticali tra i righi sincronizzate con le note.

Si deve usare l’incisore Grid_point_engraver per creare le estremità delle linee, mentre l’incisore Grid_line_span_engraver serve a disegnare le linee. Per impostazione predefinita, le linee della griglia sono allineate orizzontalmente sotto e sul lato sinistro delle teste di nota. Le linee si estendono a partire dalle linee centrali di ciascun rigo. gridInterval deve specificare la durata che separa le linee.

\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
    }
  >>
}

[image of music]

Frammenti di codice selezionati

Modificare l’aspetto delle linee della griglia

L’aspetto delle linee della griglia può essere modificato sovrascrivendo alcune delle loro proprietà.

\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
    }
  }
}

[image of music]

Vedi anche

Frammenti: Editorial annotations.

Guida al funzionamento interno: Grid_line_span_engraver, Grid_point_engraver, GridLine, GridPoint, grid-line-interface, grid-point-interface.


Parentesi analitiche

Nell’analisi musicale si usano le parentesi per indicare la struttura dei brani musicali. Sono supportate delle semplici parentesi orizzontali.

\layout {
  \context {
    \Voice
    \consists "Horizontal_bracket_engraver"
  }
}
\relative c'' {
  c2\startGroup
  d\stopGroup
}

[image of music]

Le parentesi analitiche si possono annidare.

\layout {
  \context {
    \Voice
    \consists "Horizontal_bracket_engraver"
  }
}
\relative c'' {
  c4\startGroup\startGroup
  d4\stopGroup
  e4\startGroup
  d4\stopGroup\stopGroup
}

[image of music]

Vedi anche

Frammenti: Editorial annotations.

Guida al funzionamento interno: Horizontal_bracket_engraver, HorizontalBracket, horizontal-bracket-interface, Staff.


1.8 Testo

[image of music]

Questa sezione spiega come includere del testo (con vari tipi di formattazione) nelle partiture musicali.

Alcuni elementi testuali che non sono trattati qui sono discussi in altre sezioni specifiche: Vocal music, Titles and headers.


1.8.1 Inserimento del testo

Questa sezione presenta vari modi di aggiungere del testo a una partitura.

Nota: Per scrivere caratteri accentati e speciali (come quelli di altre lingue), basta inserire semplicemente i caratteri nel file LilyPond, purché il file sia salvato in formato UTF-8. Ulteriori informazioni in Text encoding.


Scritte

Si possono aggiungere a una partitura delle semplici indicazioni con del “testo tra virgolette”, come mostrato nell’esempio seguente. Tali indicazioni possono essere posizionate sopra o sotto il rigo, usando la sintassi descritta in Direction and placement.

a8^"pizz." g f e a4-"scherz." f

[image of music]

In realtà questa sintassi è una scorciatoia; si può specificare una formattazione del testo più complessa usando in modo esplicito un blocco \markup, come è spiegato in Formattazione del testo.

a8^\markup { \italic pizz. } g f e
a4_\markup { \tiny scherz. \bold molto } f

[image of music]

Le indicazioni testuali, di norma, non influenzano la spaziatura delle note. Ma è possibile far sì che la loro larghezza venga presa in considerazione: nell’esempio seguente la prima stringa di testo non influenza la spaziatura, mentre la seconda sì.

a8^"pizz." g f e
\textLengthOn
a4_"scherzando" f

[image of music]

Oltre alle scritte, si possono attaccare alle note anche le articolazioni. Ulteriori informazioni in Articolazioni e abbellimenti.

Per maggiori informazioni sull’ordinamento relativo delle scritte e delle articolazioni si veda Posizionamento degli oggetti.

Comandi predefiniti

\textLengthOn, \textLengthOff.

Vedi anche

Manuale d’apprendimento: Posizionamento degli oggetti.

Guida alla notazione: Formattazione del testo, Direction and placement, Articolazioni e abbellimenti.

Frammenti: Text.

Guida al funzionamento interno: TextScript.

Problemi noti e avvertimenti

Per verificare che le scritte e il testo vocale siano entro i margini occorrono ulteriori calcoli. Nei casi in cui è richiesta un’esecuzione leggermente più veloce, usare

\override Score.PaperColumn.keep-inside-line = ##f

Estensori del testo

Alcune indicazioni esecutive, per esempio rallentando o accelerando, appaiono in forma testuale e vengono estese lungo molteplici note con delle linee punteggiate. Tali oggetti, chiamati “estensori” (spanner), si creano collegando due note con la seguente sintassi:

\override TextSpanner.bound-details.left.text = "rit."
b1\startTextSpan
e,\stopTextSpan

[image of music]

La stringa testuale da stampare viene impostata attraverso le proprietà dell’oggetto. Per impostazione predefinita, appare in corsivo, ma si può ottenere una formattazione diversa tramite i blocchi \markup, come è spiegato in Formattazione del testo.

\override TextSpanner.bound-details.left.text =
  \markup { \upright "rit." }
b1\startTextSpan c
e,\stopTextSpan

[image of music]

Lo stile della linea, così come la stringa testuale, può essere definito come una proprietà dell’oggetto. Questa sintassi è descritta in Line styles.

Comandi predefiniti

\textSpannerUp, \textSpannerDown, \textSpannerNeutral.

Problemi noti e avvertimenti

LilyPond è capace di gestire un solo estensore del testo per ogni voce.

Frammenti di codice selezionati

Estensore testuale della dinamica personalizzato

Si possono definire estensori testuali personalizzati che fanno uso delle forcine e dei crescendo testuali. \< e \> generano le forcine, \cresc etc. generano gli estensori testuali.

% 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\!
}

[image of music]

Estensore testuale della dinamica personalizzato

Funzioni postfix per estensori testuali personalizzati del crescendo. Gli estensori devono iniziare sulla prima nota della misura; e bisogna usare -\mycresc, altrimenti l’inizio dell’estensore viene assegnato alla nota successiva.

% 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
}

[image of music]

Vedi anche

Guida alla notazione: Line styles, Dinamiche, Formattazione del testo.

Frammenti: Text, Expressive marks.

Guida al funzionamento interno: TextSpanner.


Indicazioni testuali

Si possono aggiungere vari elementi testuali a una partitura tramite la sintassi descritta in Segni di chiamata:

c4
\mark "Allegro"
c c c

[image of music]

Questa sintassi permette di porre del testo sopra una stanghetta; una formattazione del testo più complessa è possibile grazie al blocco \markup, come è spiegato in Formattazione del testo:

<c e>1
\mark \markup { \italic { colla parte } }
<d f>2 <e g>
<c f aes>1

[image of music]

Questa sintassi permette anche di stampare segni speciali, come coda, segno o corona, se si specifica il nome appropriato del simbolo, come è spiegato in Notazione musicale nel blocco markup:

<bes f>2 <aes d>
\mark \markup { \musicglyph #"scripts.ufermata" }
<e g>1

[image of music]

Tali oggetti vengono posizionati soltanto sopra il rigo superiore della partitura; a seconda che siano inseriti alla fine o a metà di una battuta, possono trovarsi sopra la stanghetta o tra le note. Se inserito prima di un’interruzione di linea, l’indicazione apparirà all’inizio della linea successiva.

\mark "Allegro"
c1 c
\mark "assai" \break
c  c

[image of music]

Comandi predefiniti

\markLengthOn, \markLengthOff.

Frammenti di codice selezionati

Posizionare le indicazioni alla fine di una linea

È possibile posizionare le indicazioni alla fine della linea corrente, invece che all’inizio della linea successiva. In tali casi, può essere preferibile allineare l’estremità destra dell’indicazione alla stanghetta.

\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 "||"
}

[image of music]

Stampare le indicazioni su ogni rigo

Sebbene le indicazioni testuali siano di norma collocate solo sopra il rigo più alto, è possibile farle apparire su ogni rigo.

\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"
    }
  }
}

[image of music]

Vedi anche

Guida alla notazione: Segni di chiamata, Formattazione del testo, Notazione musicale nel blocco markup, The Feta font.

Frammenti: Text.

Guida al funzionamento interno: MarkEvent, Mark_engraver, RehearsalMark.


Testo separato

Un blocco \markup può esistere di per sé, fuori da qualsiasi blocco \score, come un’ “espressione di livello superiore”. Questa sintassi è descritta in File structure.

\markup {
  Tomorrow, and tomorrow, and tomorrow...
}

[image of music]

Ciò permette di stampare il testo in modo autonomo dalla musica, ed è utile soprattutto quando il file di input contiene vari brani musicali, come è spiegato in Multiple scores in a book.

\score {
  c'1
}
\markup {
  Tomorrow, and tomorrow, and tomorrow...
}
\score {
  c'1
}

[image of music]

Blocchi di testo separati possono essere estesi per molte pagine, rendendo possibile la realizzazione di documenti o libri interamente con LilyPond. Questa funzionalità, e la sintassi specifica che richiede, è descritta in Testo formattato su più pagine.

Comandi predefiniti

\markup, \markuplist.

Frammenti di codice selezionati

Testo separato su due colonne

Il testo separato può essere disposto su varie colonne con i comandi di \markup:

\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
  }
}

[image of music]

Vedi anche

Guida alla notazione: Formattazione del testo, File structure, Multiple scores in a book, Testo formattato su più pagine.

Frammenti: Text.

Guida al funzionamento interno: TextScript.


1.8.2 Formattazione del testo

Questa sezione presenta la formattazione del testo basilare e quella avanzata, usando la sintassi specifica della modalità \markup.


Introduzione al testo a margine

Un blocco \markup permette di comporre del testo con un’ampia sintassi chiamata “modalità markup”.

La sintassi di markup è simile alla solita sintassi di LilyPond: un’espressione \markup viene racchiusa tra parentesi graffe {… }. Una singola parola viene considerata un’espressione minima, e quindi non è necessario racchiuderla tra parentesi.

Diversamente dalle indicazioni testuali “tra virgolette”, i blocchi \markup possono contenere espressioni o comandi di markup annidati, inseriti col carattere di barra inversa \. Tali comandi hanno effetto solo sulla prima espressione che segue.

a1-\markup intenso
a2^\markup { poco \italic più forte  }
c e1
d2_\markup { \italic "string. assai" }
e
b1^\markup { \bold { molto \italic  agitato } }
c

[image of music]

Un blocco \markup può contenere anche stringhe di testo tra virgolette. Tali stringhe vengono trattate come espressioni testuali minime, e quindi qualsiasi comando di markup o carattere speciale (come \#) apparirà alla lettera senza influenzare la formattazione del testo. Le stesse doppie virgolette possono essere stampate facendole precedere da una barra inversa.

a1^"\italic markup..."
a_\markup { \italic "... prints \"italic\" letters!" }
a a

[image of music]

Perché sia trattata come un’espressione distinta, una lista di parole deve essere racchiusa tra virgolette doppie o preceduta da un comando. Il modo in cui le espressioni musicali sono definite influenza il modo in cui saranno sistemate, centrate e allineate; nell’esempio seguente, la seconda espressione di \markup viene trattata nello stesso modo della prima:

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" } }

[image of music]

I markup possono essere salvati in delle variabili, che possono poi essere attaccate direttamente alle note:

allegro = \markup { \bold \large Allegro }

{
  d''8.^\allegro
  d'16 d'4 r2
}

[image of music]

Una lista completa dei comandi specifici di \markup si trova in Text markup commands.

Vedi anche

Guida alla notazione: Text markup commands.

Frammenti: Text.

File installati: ‘scm/markup.scm’.

Problemi noti e avvertimenti

Gli errori di sintassi relativi alla modalità markup possono essere poco chiari.


Scelta del tipo di carattere e della dimensione

La modalità markup permette di cambiare il tipo di carattere:

d1^\markup {
  \bold { Più mosso }
  \italic { non troppo \underline Vivo }
}
r2 r4 r8
d,_\markup { \italic quasi \smallCaps Tromba }
f1 d2 r

[image of music]

Si può modificare la dimensione del tipo di carattere, rispetto alla dimensione globale del rigo, in vari modi.

Si può impostare su una dimensione predefinita,

b1_\markup { \huge Sinfonia }
b1^\markup { \teeny da }
b1-\markup { \normalsize camera }

[image of music]

oppure in modo proporzionale rispetto al valore precedente,

b1_\markup { \larger Sinfonia }
b1^\markup { \smaller da }
b1-\markup { \magnify #0.6  camera }

[image of music]

Può essere aumentata o diminuita rispetto al valore impostato per la dimensione globale del rigo:

b1_\markup { \fontsize #-2 Sinfonia }
b1^\markup { \fontsize #1 da }
b1-\markup { \fontsize #3 camera }

[image of music]

Si può impostare anche su una dimensione fissa (in punti), indipendentemente dalla dimensione globale del rigo:

b1_\markup { \abs-fontsize #20 Sinfonia }
b1^\markup { \abs-fontsize #8 da }
b1-\markup { \abs-fontsize #14 camera }

[image of music]

È possibile stampare il testo come pedice o apice. Per impostazione predefinita, questo appaiono in corpo più piccolo, ma si può usare anche un corpo normale:

\markup {
  \column {
    \line { 1 \super st movement }
    \line { 1 \normal-size-super st movement
      \sub { (part two) }  }
  }
}

[image of music]

La modalità di markup fornisce un modo semplice per scegliere famiglie di caratteri diverse. Se non specificato altrimenti, viene scelto automaticamente il carattere tipografico con grazie (il tipo romano); nell’ultima linea dell’esempio seguente non c’è differenza tra la prima e la seconda parola.

\markup {
  \column {
    \line { Act \number 1 }
    \line { \sans { Scene I. } }
    \line { \typewriter { Verona. An open place. } }
    \line { Enter \roman Valentine and Proteus. }
  }
}

[image of music]

Alcune di queste famiglie di caratteri, usate per elementi specifici come i numeri o le dinamiche, non forniscono tutti i caratteri, come accennato in Nuove indicazioni dinamiche e Indicazioni di ripetizione manuali.

Se usati all’interno di una parola, alcuni comandi che cambiano il tipo di carattere o la formattazione potrebbero produrre uno spazio vuoto indesiderato. Si può facilmente risolvere concatenando insieme gli elementi testuali:

\markup {
  \column {
    \line {
      \concat { 1 \super st }
      movement
    }
    \line {
      \concat { \dynamic p , }
      \italic { con dolce espressione }
    }
  }
}

[image of music]

Una lista completa dei comandi per cambiare il tipo di carattere o per usare tipi di carattere personalizzati si trova in Font.

È possibile anche definire i propri gruppi di tipi di carattere, come è spiegato in Tipi di carattere.

Comandi predefiniti

\teeny, \tiny, \small, \normalsize, \large, \huge, \smaller, \larger.

Vedi anche

Guida alla notazione: Font, Nuove indicazioni dinamiche, Indicazioni di ripetizione manuali, Tipi di carattere.

File installati: ‘scm/define-markup-commands.scm’.

Frammenti: Text.

Guida al funzionamento interno: TextScript.

Problemi noti e avvertimenti

L’uso dei comandi di dimensionamento dei caratteri \teeny, \tiny, \small, \normalsize, \large e \huge produce una spaziatura della linea imprevedibile rispetto all’uso di \fontsize.


Allineamento del testo

Questa sottosezione spiega come posizionare il testo nella modalità markup. Gli oggetti markup possono anche essere spostati interamente tramite la sintassi descritta in Spostare gli oggetti.

Gli oggetti di markup possono essere allineati in vari modi. Per impostazione predefinita, l’indicazione testuale è allineata rispetto al suo margine sinistro: nell’esempio seguente, non c’è differenza tra il primo e il secondo markup.

d1-\markup { poco }
f
d-\markup { \left-align poco }
f
d-\markup { \center-align { poco } }
f
d-\markup { \right-align poco }

[image of music]

L’allineamento orizzontale può essere ritoccato usando un valore numerico:

a1-\markup { \halign #-1 poco }
e'
a,-\markup { \halign #0 poco }
e'
a,-\markup { \halign #0.5 poco }
e'
a,-\markup { \halign #2 poco }

[image of music]

Alcuni oggetti possono avere proprie procedure di allineamento, e dunque non sono influenzate da questi comandi. È possibile spostare tali oggetti di markup tutti insieme, come mostrato ad esempio in Indicazioni testuali.

L’allineamento verticale è un po’ più complesso. Come si è detto prima, gli oggetti di markup possono essere spostati tutti insieme; tuttavia è anche possibile spostare elementi specifici all’interno di un blocco markup. In questo caso l’elemento da spostare deve essere preceduto da un punto di riferimento, che può essere un altro elemento markup o un oggetto invisibile. L’esempio seguente illustra queste due possibilità; l’ultimo markup in questo esempio non ha un punto di riferimento e di conseguenza non si muove.

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

[image of music]

Alcuni comandi possono cambiare l’allineamento sia orizzontale che verticale degli oggetti testuali in modalità markup. Qualsiasi oggetto interessato da questi comandi deve essere preceduto da un punto di riferimento:

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

[image of music]

Un oggetto markup può includere varie linee di testo. Nell’esempio seguente, ogni elemento o espressione viene posizionato sulla sua linea, allineato a sinistra o centrato:

\markup {
  \column {
    a
    "b c"
    \line { d e f }
  }
  \hspace #10
  \center-column {
    a
    "b c"
    \line { d e f }
  }
}

[image of music]

Analogalmente, una lista di elementi o espressioni può essere distesa per riempire l’intera larghezza orizzontale della linea (se c’è un solo elemento, verrà centrato sulla pagina). Queste espressioni possono a loro volta includere del testo multilinea o una qualsiasi altra espressione di markup:

\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 }
}

[image of music]

Indicazioni testuali lunghe possono andare a capo automaticamente in base alla larghezza della linea specificata. Possono essere allineate a sinistra o giustificate, come mostra l’esempio seguente.

\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)
    }
  }
}

[image of music]

Una lista completa dei comandi di allineamento del testo si trova in Align.

Vedi anche

Manuale d’apprendimento: Spostare gli oggetti.

Guida alla notazione: Align, Indicazioni testuali.

File installati: ‘scm/define-markup-commands.scm’.

Frammenti: Text.

Guida al funzionamento interno: TextScript.


Notazione grafica nel blocco markup

Si possono aggiungere vari oggetti grafici a una partitura attraverso i comandi di markup.

Alcuni comandi di markup consentono di decorare gli elementi testuali con degli elementi grafici, come è illustrato nell’esempio seguente.

\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
  }
}

[image of music]

Alcuni comandi possono richiedere un aumento del padding intorno al testo; per farlo si usano dei comandi di markup, descritti in modo esaustivo 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."
}

[image of music]

Si possono produrre altri elementi grafici o simboli che non richiedono alcun testo. Come con qualsiasi espressione di markup, tali oggetti possono essere combinati.

\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
  }
}

[image of music]

Le funzionalità grafiche avanzate comprendono la possibilità di includere file di immagini convertite nel formato Encapsulated PostScript (eps), oppure di inserire la grafica direttamente nel file di input, usando del codice PostScript nativo. In tal caso, può essere utile specificare esplicitamente la dimensione del disegno, come è mostrato sotto:

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

[image of music]

Una lista completa dei comandi specifici per la grafica si trova in Graphic.

Vedi anche

Guida alla notazione: Graphic, Note editoriali, Align.

File installati: ‘scm/define-markup-commands.scm’, ‘scm/stencil.scm’.

Frammenti: Text.

Guida al funzionamento interno: TextScript.


Notazione musicale nel blocco markup

Si possono aggiungere vari elementi della notazione musicale dentro un oggetto markup.

Per le note e le alterazioni esistono dei comandi markup appositi:

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

[image of music]

Anche altri oggetti della notazione possono essere stampati in modalità markup:

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
}

[image of music]

Più in generale, qualsiasi simbolo musicale disponibile può essere incluso separatamente in un oggetto markup, come è illustrato sotto. Una lista completa di questi simboli e dei loro nomi si trova in The Feta font.

c2
c'^\markup { \musicglyph #"eight" }
c,4
c,8._\markup { \musicglyph #"clefs.G_change" }
c16
c2^\markup { \musicglyph #"timesig.neomensural94" }

[image of music]

Un altro modo per stampare glifi non testuali è descritto in Tipi di carattere in dettaglio. È utile per stampare parentesi di varie dimensioni.

La modalità markup supporta anche i diagrammi per strumenti specifici:

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"
}

[image of music]

Questi diagrammi sono documentati in Instrument Specific Markup.

È possibile annidare perfino un’intera partitura in un oggetto markup. In tal caso, il blocco \score annidato deve contenere un blocco \layout, come è illustrato qui:

c4 d^\markup {
  \score {
    \relative c' { c4 d e f }
    \layout { }
  }
}
e f |
c d e f

[image of music]

Una lista completa dei comandi relativi alla notazione musicale si trova in Music.

Vedi anche

Guida alla notazione: Music, The Feta font, Tipi di carattere in dettaglio.

File installati: ‘scm/define-markup-commands.scm’, ‘scm/fret-diagrams.scm’, ‘scm/harp-pedals.scm’.

Frammenti: Text.

Guida al funzionamento interno: TextScript.


Testo formattato su più pagine

Sebbene gli oggetti di markup standard non possano avere interruzioni, una specifica sintassi permette di inserire linee di testo che possono estendersi per varie pagine:

\markuplist {
  \justified-lines {
    Un testo molto lungo di linee giustificate.
    ...
  }
  \wordwrap-lines {
    Un altro paragrafo molto lungo.
    ...
  }
  ...
}

[image of music]

Questa sintassi accetta una lista di oggetti di markup, che possono essere

Una lista completa dei comandi che si possono usare con \markuplist si trova in Text markup list commands.

Vedi anche

Guida alla notazione: Text markup list commands.

Estendere LilyPond: New markup list command definition.

File installati: ‘scm/define-markup-commands.scm’.

Frammenti: Text.

Guida al funzionamento interno: TextScript.

Comandi predefiniti

\markuplist.


1.8.3 Tipi di carattere

Questa sezione presenta il modo in cui sono gestiti i tipi di carattere e come possono essere modificati nelle partiture.


Tipi di carattere in dettaglio

I tipi di carattere vengono gestiti attraverso varie librerie. FontConfig rileva i tipi di carattere disponibili nel sistema; i tipi selezionati sono riprodotti con Pango.

I tipi di carattere della notazione musicale possono essere descritti come un insieme di glifi specifici, ordinati in varie famiglie. La seguente sintassi permette di usare vari caratteri feta di LilyPond (non testuali) direttamente nella modalità markup:

a1^\markup {
  \vcenter {
    \override #'(font-encoding . fetaBraces)
    \lookup #"brace120"
    \override #'(font-encoding . fetaText)
    \column { 1 3 sf }
    \override #'(font-encoding . fetaMusic)
    \lookup #"noteheads.s0petrucci"
  }
}

[image of music]

Tuttavia, tutti questi glifi, ad eccezione delle graffe di varie dimensioni contenute in fetaBraces, sono già utilizzabili con la sintassi ben più semplice descritta in Notazione musicale nel blocco markup.

Quando si usano i glifi contenuti in fetaBraces, la dimensione della graffa viene specificata dalla parte numerica del nome del glifo, in unità arbitrarie. Può essere specificato qualsiasi numero intero da 0 a 575 compresi, dove 0 corrisponde alla graffa più piccola. Il valore ottimale deve essere determinato per tentativi. Questi glifi sono tutte graffe sinistre; le graffe destre si possono ottenere con la rotazione, vedi Rotating objects.

Sono disponibili tre famiglie di tipi di carattere: il roman (con grazie), che usa di default New Century Schoolbook, il sans (senza grazie) e il tipo monospaziato typewriter – queste ultime due famiglie sono determinate dall’installazione di Pango.

Nota: Non ci sono tipi predefiniti associati con le famiglie sans e typewriter. Un file di input che usa una di queste famiglie può produrre output diversi su computer diversi. Per garantire un output coerente su piattaforme diverse, occorre specificare i tipi di carattere per nome e quei tipi devono essere presenti in qualsiasi sistema che elabori il file. Si veda Tipi di carattere per singolo oggetto e Tipi di carattere per l’intero documento.

Ogni famiglia può avere forme e serie differenti. L’esempio seguente illustra la possibilità di scegliere famiglie, forme, serie e dimensioni alternative. Il valore specificato per font-size è la modifica relativa alla dimensione predefinita.

\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

[image of music]

Una sintassi simile si usa nella modalità markup; tuttavia in questo caso è preferibile usare la sintassi più semplice spiegata in Scelta del tipo di carattere e della dimensione:

\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
    }
  }
}

[image of music]

Sebbene sia semplice passare a un tipo di carattere preconfigurato, è anche possibile usare altri tipi, come viene spiegato nelle sezioni successive: Tipi di carattere per singolo oggetto e Tipi di carattere per l’intero documento.

Vedi anche

Guida alla notazione: The Feta font, Notazione musicale nel blocco markup, Rotating objects, Scelta del tipo di carattere e della dimensione, Font.


Tipi di carattere per singolo oggetto

Si può usare nella partitura qualsiasi tipo di carattere che sia installato nel sistema operativo e riconosciuto da FontConfig, usando la seguente sintassi:

\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 }
}

[image of music]

Il seguente comando mostra un elenco di tutti i tipi di carattere disponibili nel sistema operativo:

lilypond -dshow-available-fonts x

Vedi anche

Guida alla notazione: Tipi di carattere in dettaglio, Tipi di carattere per l’intero documento.

Frammenti: Text.


Tipi di carattere per l’intero documento

È possibile modificare i tipi di carattere usati come tipi predefiniti nelle famiglie roman, sans e typewriter specificandoli, in questo ordine, come è mostrato nell’esempio seguente, che ridimensiona automaticamente i caratteri col valore impostato per la dimensione globale del rigo. I tipi di carattere sono spiegati in Tipi di carattere in dettaglio.

\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. }
}

[image of music]

Vedi anche

Guida alla notazione: Tipi di carattere in dettaglio, Tipi di carattere per singolo oggetto, Scelta del tipo di carattere e della dimensione, Font.


2. Specialist notation

This chapter explains how to create musical notation for specific types of instrument or in specific styles.


2.1 Vocal music

[image of 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

This section discusses issues common to most types of vocal music.


References for vocal music

This section indicates where to find details of notation issues that may arise in any type of vocal music.

Vedi anche

Music Glossary: ambitus.

Learning Manual: Setting simple songs.

Notation Reference: Introduzione al testo a margine, Ambitus, Score layouts for choral.

Snippets: Vocal music.


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, }

[image of music]

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 }

[image of music]

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 Formattazione del testo.

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
>>

[image of music]

Vedi anche

Learning Manual: Songs.

Notation Reference: Automatic syllable durations, Tipi di carattere, Formattazione del testo, Input modes, Manual syllable durations, Special characters.

Internals Reference: LyricText.

Snippets: Text.


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:

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.


Automatic syllable durations

Lyrics can be automatically aligned to the notes of a melody in three ways:

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" {
    a1 a4. a8 a2
  }
  \new Lyrics \lyricsto "melody" {
    These are the words
  }
>>

[image of music]

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 }
}

[image of music]

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 }
}

[image of music]

The command \addlyrics cannot handle polyphonic settings. Also, it cannot be used to associate lyrics to a TabVoice. 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.
  }
>>

[image of music]

Vedi anche

Notation Reference: Extenders and hyphens, Keeping contexts alive, Placing lyrics vertically.


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.

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" {
    c'2 a f f e e
  }
  \new Lyrics \lyricmode {
    c4. -- a -- f -- f -- e2. -- e
  }
>>

[image of music]

<<
  \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
    }
  }
>>

[image of music]

This technique is useful when writing dialogue over music, see Dialogue over music.

To change syllable alignment, simply override the self-alignment-X property:

<<
  \new Voice = "melody" {
    \time 3/4
    c2 e4 g2 f
  }
  \new Lyrics \lyricmode {
    \override LyricText.self-alignment-X = #LEFT
    play1 a4 game4
  }
>>

[image of music]

Vedi anche

Notation Reference: Dialogue over music.

Internals Reference: Lyrics, Voice.


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.

{
  { \autoBeamOff
    r8 b c fis, fis c' b e,
  }
  \addlyrics
  {
    \override LyricHyphen.minimum-distance = #1.0 % Ensure hyphens are visible
    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 }
}

[image of music]

Vedi anche

Internals Reference: LyricCombineMusic.


Multiple notes to one syllable

Sometimes, particularly in Medieval and baroque music, several notes are sung on one syllable; this is called melisma, see melisma. The syllable to a melisma is usually left-aligned with the first note of the melisma.

When a melisma occurs on a syllable other than 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:

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 ~ 4
  }
  \new Lyrics \lyricsto "melody" {
    Ky -- ri -- e e -- le -- i -- son
  }
>>

[image of music]

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 ] ~ 4 ~ f
  }
  \new Lyrics \lyricsto "melody" {
    Ky -- ri -- _ e __ _ _ _
  }
>>

[image of music]

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 delle travature automatiche, 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.


2.1.2 Techniques specific to lyrics


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
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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 since 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))
    }
  }
}

[image of music]

Vedi anche

Learning Manual: Vocal ensembles templates.

Notation Reference: Context layout order, Creating and referencing contexts.


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
}

[image of music]

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
    }
  }
}

[image of music]

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"
}

[image of music]

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"
      \hide BarLine
  }
}

Lyrics and repeats

Simple repeats

Repeats in music are fully described elsewhere; see Ripetizioni. 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. }
      }
    }
  >>
}

[image of music]

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. }
        }
      }
    >>
  }
}

[image of music]

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.
      }
    }
  >>
}

[image of music]

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.
	}
      >>
    }
  >>
}

[image of music]

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.
    }
  >>
}

[image of music]

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
      }
    }
  >>
}

[image of music]

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. } }
      }
    }
  >>
}

[image of music]

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.
      }
    }
  >>
}

[image of music]

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.
      }
    }
  >>
}

[image of music]

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.
      }
    }
  >>
}

[image of music]

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.
      }
    }
  >>
}

[image of music]

Vedi anche

Notation Reference: Keeping contexts alive, Ripetizioni.


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 _
    }
  >>
}

[image of music]

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
    }
  >>
}

[image of music]

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 Polifonia su un solo rigo.


Polyphony with shared lyrics

When two voices with different rhythms share the same lyrics, aligning the lyrics to one of the voices may lead to problems in the other voice. For example, the second lyric extender below is too short, since the lyrics are aligned only to the top voice:

soprano = \relative { b'8( c d c) d2 }
alto = \relative { g'2 b8( a g a) }
words = \lyricmode { la __ la __ }

\new Staff <<
  \new Voice = "sopranoVoice" { \voiceOne \soprano }
  \new Voice { \voiceTwo \alto }
  \new Lyrics \lyricsto "sopranoVoice" \words
>>

[image of music]

To get the desired result, align the lyrics to a new NullVoice context containing a suitable combination of the two voices. The notes of the NullVoice context do not appear on the printed page, but can be used to align the lyrics appropriately:

soprano = \relative { b'8( c d c) d2 }
alto = \relative { g'2 b8( a g a) }
aligner = \relative { b'8( c d c) b( a g a) }
words = \lyricmode { la __ la __ }

\new Staff <<
  \new Voice { \voiceOne \soprano }
  \new Voice { \voiceTwo \alto }
  \new NullVoice = "aligner" \aligner
  \new Lyrics \lyricsto "aligner" \words
>>

[image of music]

This method also can be used with the \partcombine function, which does not allow lyrics on its own:

soprano = \relative { b'8( c d c) d2 }
alto = \relative { g'2 b8( a g a) }
aligner = \relative { b'8( c d c) b( a g a) }
words = \lyricmode { la __ la __ }

\new Staff <<
  \new Voice \partcombine \soprano \alto
  \new NullVoice = "aligner" \aligner
  \new Lyrics \lyricsto "aligner" \words
>>

[image of music]

Problemi noti e avvertimenti

The \addLyrics function only works with Voice lyrics and so cannot be used with NullVoice.

The \partcombine function is described in Combinazione automatica delle parti.

Lastly, this method can be used even when the voices are in different staves, and is not limited to only two voices:

soprano = \relative { b'8( c d c) d2 }
altoOne = \relative { g'2 b8( a b4) }
altoTwo = \relative { d'2 g4( fis8 g) }
aligner = \relative { b'8( c d c) d( d d d) }
words = \lyricmode { la __ la __ }

\new ChoirStaff <<
  \new Staff \soprano
  \new NullVoice = "aligner" \aligner
  \new Lyrics \lyricsto "aligner" \words
  \new Staff \partcombine \altoOne \altoTwo
>>

[image of music]


2.1.3 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
}

[image of music]

These numbers are put just before the start of the first syllable.


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
>>

[image of music]


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
}

[image of music]


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
  }
>>

[image of music]

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.
  }
>>

[image of music]

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
  }
>>

[image of music]

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
  } >>

[image of music]

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.


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."
}

[image of music]


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."
        }
      }
      \combine \null \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."
        }
      }
      \combine \null \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
  }
}

[image of music]

Vedi anche

Internals Reference: LyricText, StanzaNumber.


2.1.4 Songs


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:

Vedi anche

Learning Manual: Songs.

Notation Reference: Common notation for vocal music, Displaying chords, Aspetto del rigo, Keyboard and other multi-staff instruments, Placing lyrics vertically, Stanzas.

Snippets: Vocal music.


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 __ }
>>

[image of music]

Vedi anche

Notation Reference: Chord notation.


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

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 rehearsal of a cappella 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:

Comandi predefiniti

\oneVoice, \voiceOne, \voiceTwo.

Vedi anche

Learning Manual: Four-part SATB vocal score, Vocal ensembles templates.

Notation Reference: Context layout order, Raggruppare i righi, Teste di nota a forma variabile, Polifonia su un solo rigo.

Snippets: Vocal music.

Internals Reference: ChoirStaff, Lyrics, PianoStaff.


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:

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
    }
  }
}

[image of music]

Comandi predefiniti

\dynamicUp, \dynamicDown, \dynamicNeutral.

Vedi anche

Notation Reference: Changing spacing, Displaying spacing, Fitting music onto fewer pages, Page layout, Score layout, Separare i sistemi, Setting the staff size, Explicit breaks, Vertical spacing.

Internals Reference: VerticalAxisGroup, StaffGrouper.


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 }
}

[image of music]

Vedi anche

Notation Reference: Indicazioni espressive lineari.


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:

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

Vedi anche

Musical Glossary: Frenched score, Frenched staves, transposing instrument.

Notation Reference: Creating footnotes, Raggruppare i righi, Nascondere i righi, Trasporto strumentale, Gruppi di righi annidati, Page layout, Separare i sistemi, Trasposizione, Scrittura delle parti, Inserimento del testo.

Snippets: Vocal music.


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
      }
    }
  >>
}

[image of music]

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

[image of music]

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. As notes for vocal parts are usually entered at sounding pitch no instrument transposition is required, even when, as here, the tenor line is printed an octave higher.

\addInstrumentDefinition #"kaspar"
  #`((instrumentTransposition . ,(ly:make-pitch 0 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
}

[image of music]

Vedi anche

Notation Reference: Nomi degli strumenti, Scheme functions, Testo, Text markup commands.

Extending LilyPond: Markup construction in Scheme.


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 Citare altre voci and Formattazione delle notine. 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
    }
  >>
}

[image of music]

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
      }
    >>
  >>
}

[image of music]

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
      }
    >>
  >>
}

[image of music]

Vedi anche

Musical Glossary: cue-notes.

Notation Reference: Aligning objects, Direction and placement, Formattazione delle notine, Citare altre voci, 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.


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.


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

[image of music]

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 }
    }
  >>
}

[image of music]

Vedi anche

Notation Reference: Manual syllable durations, Testo.

Internal Reference: LyricText.


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

Typesetting Gregorian chant in various styles of ancient notation is described in Ancient notation.

Vedi anche

Notation reference: Ancient notation.

Snippets: Vocal music.


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 = { \hide Staff.Stem }

\relative c' {
  \stemOff
  a'4 b c2 |
}

[image of music]

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"
    }
  }
}

[image of music]

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 |
      }
    }
  >>
}

[image of music]

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 |

[image of music]

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 "||"

[image of music]

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"
    }
  }
}

[image of music]

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"
    }
  }
}

[image of music]

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

[image of music]

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 Psalm chant, where verses aren’t always the same length.

stemOff = \hide Staff.Stem
stemOn  = \undo \stemOff

\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 "||"
  }
}

[image of music]

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 la suddivisione in misure né gambi; impiega 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"
      \hide Stem
    }
    \context {
      \Voice
      \override Stem.length = #0
    }
    \context {
      \Score
      barAlways = ##t
    }
  }
}

[image of music]

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.


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. }
      }
    }
  }
}

[image of music]

Other symbols may require glyphs from the fetaMusic fonts. For details, see Tipi di carattere.

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. }
      }
    }
  }
}

[image of music]

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. }
      }
    }
  }
}

[image of music]

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. }
      }
    }
  }
}

[image of music]

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. }
      }
    }
  }
}

[image of music]

The use of markup to center text, and arrange lines in columns is described in Formattazione del testo.

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: Tipi di carattere, Formattazione del testo.


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 "||"