@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
    Translation of GIT committish: 9fd9c4afa39adeacf1626a8811a533c7daadc3cf

    When revising a translation, copy the HEAD committish of the
    version that you are working on.  For details, see the Contributors'
    Guide, node Updating translation committishes..
@end ignore

@c \version "2.21.0"

@c Translators: Federico Bruni
@c Translation checkers: Luca Rossetto Casel

@node Simultaneous notes
@section Note simultanee

@lilypondfile[quote]{snippets/simultaneous-headword.ly}

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.


@node Single voice
@subsection Una voce

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


@node Chorded notes
@unnumberedsubsubsec Note in un accordo

@cindex accordo
@cindex parentesi uncinata (o angolare)

@funindex @sortas{<A} <
@funindex @sortas{>A} >
@funindex <...>

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

@lilypond[verbatim,quote]
\relative {
  <a' c e>1 <a c e>2 <f a c e>4 <a c>8. <g c e>16
}
@end lilypond

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

@lilypond[verbatim,quote]
\relative {
  <a' c e>1\fermata <a c e>2-> <f a c e>4\prall <a c>8.^! <g c e>16-.
}
@end lilypond

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

@lilypond[verbatim,quote]
\relative {
  <a' c\prall e>1 <a-> c-^ e>2 <f-. a c-. e-.>4
  <a-+ c-->8. <g\fermata c e\turn>16
}
@end lilypond

Tuttavia, alcuni elementi della notazione, come le dinamiche e le forcelle,
devono essere attaccate all'accordo invece che alle sue singole note, altrimenti
non appariranno.  Altri elementi della notazione, come le diteggiature e le
legature di portamento, saranno posizionate in modo nettamente diverso se
attaccate alle note di un accordo invece che a un accordo intero o a singole
note.

@lilypond[verbatim,quote]
\relative {
  <a'\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>)
  <a c e>\< <a c e> <a c e>\!
}
@end lilypond

@cindex accordo vuoto
@cindex evento segnaposto

@funindex <>

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
@ref{Simultaneous expressions}):

@lilypond[verbatim,quote]
\relative {
  \grace { g'8( a b }
  <> ) \p \< -. -\markup \italic "sempre staccato"
  \repeat unfold 4 { c4 e }  c1\f
}
@end lilypond

@cindex altezza relativa, accordi
@cindex accordo, altezza relativa

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 @emph{all'interno dell'accordo}.

@lilypond[verbatim,quote]
\relative {
  <a' c e>1 <f a c> <a c e> <f' a c> <b, e b,>
}
@end lilypond

Maggiori informazioni sugli accordi si trovano in @ref{Chord notation}.

@morerefs
Glossario Musicale:
@rglosnamed{chord,accordo}.

Manuale d'apprendimento:
@rlearningnamed{Combining notes into chords, Combinare le note negli accordi}.

Guida alla notazione:
@ref{Chord notation},
@ref{Articulations and ornamentations},
@ref{Relative octave entry},
@ref{Multiple voices}.

Frammenti:
@rlsr{Simultaneous notes}.
@endmorerefs

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

@itemize

@item
l'uso temporaneo di @ref{Multiple voices},
@samp{<< f! \\ <e fis!> >>},

@item
la trascrizione enarmonica di una o più altezze,
@samp{<e f ges>}, oppure

@item
i @ref{Clusters}.

@end itemize


@node Chord repetition
@unnumberedsubsubsec Ripetizione di un accordo

@cindex accordo, ripetizione
@cindex ripetizione, uso di @code{q}
@cindex @code{q}, ripetizione accordo

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

@lilypond[verbatim,quote]
\relative {
  <a' c e>1 q <f a c>2 q
}
@end lilypond

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.

@lilypond[verbatim,quote]
\relative {
  <a' c e>1\p^"text" q2\<( q8)[-! q8.]\! q16-1-2-3 q8\prall
}
@end lilypond

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.

@lilypond[verbatim,quote]
\relative {
  <a' c e>1 c'4 q2 r8 q8 |
  q2 c, |
}
@end lilypond

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

@lilypond[verbatim,quote]
\relative {
  <a'-. c\prall e>1\sfz c'4 q2 r8 q8 |
  q2 c, |
}
@end lilypond

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

@lilypond[verbatim,quote]
\relative {
  \chordRepeats #'(articulation-event)
  { <a'-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
  q2 c, |
}
@end lilypond

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

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

@c Without \new Voice, implicit voice creation does the dumbest thing.
@lilypond[verbatim,quote]
\new Voice
\relative c'' {
  \chordRepeats #'(articulation-event)
  \relative
  { <a'-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
  q2 c |
}
@end lilypond

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

@morerefs
Guida alla notazione:
@ref{Chord notation},
@ref{Articulations and ornamentations}.

File installati:
@file{ly/chord-repetition-init.ly}.
@endmorerefs


@node Simultaneous expressions
@unnumberedsubsubsec 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:

@lilypond[quote,verbatim]
\new Voice {  % voce singola esplicita
  << \relative { a'4 b g2 }
     \relative { d'4 g c,2 } >>
}
@end lilypond

@lilypond[quote,verbatim]
\relative {
  % prima nota singola
  a' << \relative { a'4 b g }
       \relative { d'4 g c, } >>
}
@end lilypond

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 @emph{singola} voce (@samp{Voice})
sono raccolte e create secondo l'ordine della musica:

@lilypond[quote,verbatim]
\relative {
  <a' c>4-.  <>-. << c a >>  << { c-. <c a> } { a s-. } >>
}
@end lilypond

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:

@lilypond[quote,verbatim]
% nessuna singola nota precede l'espressione simultanea
<< \relative { a'4 b g2 }
   \relative { d'4 g2 c,4 } >>
@end lilypond

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

@cindex collisione, ignorare

@knownissues
Se le note appartenenti a due o più voci, senza che sia stato specificato
uno spostamento, hanno i gambi nella stessa direzione, il messaggio

@example
attenzione: questa voce ha bisogno di un'impostazione \voiceXx o \shiftXx
@end example

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

@example
\override NoteColumn.ignore-collision = ##t
@end example

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 @emph{Problemi noti} in @ref{Collision resolution}).


@node Clusters
@unnumberedsubsubsec Cluster

@cindex cluster
@cindex cluster di note

@funindex \makeClusters

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 @code{\makeClusters} a una sequenza
di accordi, ad esempio:

@lilypond[quote,verbatim]
\relative \makeClusters { <g' b>2 <c g'> }
@end lilypond

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.

@morerefs
Glossario Musicale:
@rglos{cluster}.

Frammenti:
@rlsr{Simultaneous notes}.

Guida al funzionamento interno:
@rinternals{ClusterSpanner},
@rinternals{ClusterSpannerBeacon},
@rinternals{Cluster_spanner_engraver}.
@endmorerefs

@knownissues
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.


@node Multiple voices
@subsection Più voci

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


@node Single-staff polyphony
@unnumberedsubsubsec Polifonia su un solo rigo

@cindex polifonia su un rigo singolo
@cindex voce
@cindex testo, assegnato a una voce

@funindex \voiceOne
@funindex \voiceTwo
@funindex \voiceThree
@funindex \voiceFour
@funindex Voice
@funindex \oneVoice

@subsubsubheading Istanziare esplicitamente le voci

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

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

@noindent
Le voci sono istanziate esplicitamente e vengono contrassegnate da dei nomi. I
comandi @code{\voiceOne} @dots{} @code{\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 @code{\oneVoice}
ripristina tutte le impostazioni della voce alle direzioni neutrali
predefinite.

@subsubsubheading Passaggi polifonici temporanei

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

@example
<< @{ \voiceOne @dots{} @}
  \new Voice @{ \voiceTwo @dots{} @}
>> \oneVoice
@end example

@noindent
In questo esempio la prima espressione all'interno di un passaggio polifonico
temporaneo è posta nel contesto @code{Voice} che era in uso immediatamente
prima del passaggio polifonico e quello stesso contesto @code{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:

@lilypond[quote,verbatim]
\relative <<
  \new Voice = "melody" {
    a'4
    <<
      {
        \voiceOne
        g f
      }
      \new Voice {
        \voiceTwo
        d2
      }
    >>
    \oneVoice
    e4
  }
  \new Lyrics \lyricsto "melody" {
  This is my song.
  }
>>
@end lilypond

@noindent
I comandi @code{\voiceOne} e @code{\voiceTwo} sono necessari per
definire le impostazioni di ogni voce.

@subsubsubheading Il costrutto con la doppia barra inversa (backslash)

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

Il primo esempio potrebbe essere riscritto nel modo seguente:

@lilypond[quote,verbatim]
<<
  \relative { r8 r16 g'' e8. f16 g8[ c,] f e16 d }
  \\
  \relative { d''16 c d8~ 16 b c8~ 16 b c8~ 16 b8. }
>>
@end lilypond

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
@code{\voiceOne} @dots{} @code{\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.

@lilypond[quote,verbatim]
<<
  \relative { r8 g'' g  g g f16 ees f8 d }
  \\
  \relative { ees'8 r ees r d r d r }
  \\
  \relative { d''8 s c s bes s a s }
>>
@end lilypond

In tutti i brani, a eccezione di quelli più semplici, è consigliabile creare contesti
@code{Voice} espliciti come è spiegato in @rlearningnamed{Contexts and engravers, Contesti e incisori} e
@rlearningnamed{Explicitly instantiating voices, Definire esplicitamente le voci}.

@subsubsubheading Ordine delle voci

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

@example
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.
@end example

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

@lilypond[quote,verbatim]
\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
>>
@end lilypond

@funindex \voices
Quando si desidera inserire le voci in un ordine diverso, conviene usare
il comando @code{\voices}:

@lilypond[quote,verbatim]
\new Staff \voices 1,3,5,6,4,2 <<
  \time 2/4
  { f''2 }  % 1: la più alta
  \\
  { d''2 }  % 3: seconda più alta
  \\
  { b'2  }  % 5: terza più alta
  \\
  { g'2  }  % 6: terza più bassa
  \\
  { e'2  }  % 4: seconda più bassa
  \\
  { c'2  }  % 2: la più bassa
>>
@end lilypond


@warning{Il testo e gli estensori (come le legature di portamento e di valore,
le forcelle, etc.) non possono @q{attraversare} le voci.}

@subsubsubheading Durate identiche

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

@lilypond[quote,verbatim]
\new Voice <<
  \relative { e''4 f8 d e16 f g8 d4 }
  \relative { c''4 d8 b c16 d e8 b4 }
>>
@end lilypond

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


@predefined
@code{\voiceOne},
@code{\voiceTwo},
@code{\voiceThree},
@code{\voiceFour},
@code{\oneVoice}.
@endpredefined

@morerefs
Manuale d'apprendimento:
@rlearningnamed{Voices contain music, Le voci contengono la musica},
@rlearningnamed{Explicitly instantiating voices, Definire esplicitamente le voci}.

Guida alla notazione:
@ref{Percussion staves},
@ref{Invisible rests},
@ref{Stems}.

Frammenti:
@rlsr{Simultaneous notes}.
@endmorerefs


@node Voice styles
@unnumberedsubsubsec Stili di voce

@cindex stile di voce
@cindex voce, stile di
@cindex colorare una voce
@funindex \voiceOneStyle
@funindex \voiceTwoStyle
@funindex \voiceThreeStyle
@funindex \voiceFourStyle
@funindex \voiceNeutralStyle

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

@lilypond[quote,verbatim]
<<
  \relative { \voiceOneStyle d''4 c2 b4 }
  \\
  \relative { \voiceTwoStyle e'2 e }
  \\
  \relative { \voiceThreeStyle b2. c4 }
  \\
  \relative { \voiceFourStyle g'2 g }
>>
@end lilypond

Il comando @code{\voiceNeutralStyle} permette di ripristinare l'aspetto
predefinito.


@predefined
@code{\voiceOneStyle},
@code{\voiceTwoStyle},
@code{\voiceThreeStyle},
@code{\voiceFourStyle},
@code{\voiceNeutralStyle}.
@endpredefined

@morerefs
Manuale d'apprendimento:
@rlearningnamed{I'm hearing voices, Sento le Voci},
@rlearningnamed{Other sources of information, Altre fonti di informazione}.

Frammenti:
@rlsr{Simultaneous notes}.
@endmorerefs


@node Collision resolution
@unnumberedsubsubsec Risoluzione delle collisioni

@cindex unire le note
@cindex collisione di note
@cindex collisione
@cindex spostare una nota
@cindex nota, spostamento
@cindex tante voci
@cindex voci, multiple
@cindex musica polifonica
@cindex spostare una voce
@cindex voce, spostamento
@cindex spostamento automatico di una pausa
@cindex pausa, spostamento automatico
@funindex \shiftOn
@funindex \shiftOnn
@funindex \shiftOnnn
@funindex \shiftOff
@funindex \mergeDifferentlyDottedOn
@funindex \mergeDifferentlyDottedOff
@funindex \mergeDifferentlyHeadedOn
@funindex \mergeDifferentlyHeadedOff

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.

@lilypond[quote,verbatim]
<<
  \relative {
    c''8 d e d c d c4
    g'2 fis
  } \\
  \relative {
    c''2 c8. b16 c4
    e,2 r
  } \\
  \relative {
    \oneVoice
    s1
    e'8 a b c d2
  }
>>
@end lilypond

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:

@lilypond[quote,verbatim]
<<
  \relative {
    \mergeDifferentlyHeadedOn
    c''8 d e d c d c4
    g'2 fis
  } \\
  \relative {
    c''2 c8. b16 c4
    e,2 r
  } \\
  \relative {
    \oneVoice
    s1
    e'8 a b c d2
  }
>>
@end lilypond

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:

@lilypond[quote,verbatim]
<<
  \relative {
    \mergeDifferentlyHeadedOn
    \mergeDifferentlyDottedOn
    c''8 d e d c d c4
    g'2 fis
  } \\
  \relative {
    c''2 c8. b16 c4
    e,2 r
  } \\
  \relative {
    \oneVoice
    s1
    e'8 a b c d2
  }
>>
@end lilypond

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 @code{\shift} alla nota
che non deve essere unita.  In questo esempio si usa @code{\shiftOn} per
spostare il Sol superiore (@notation{g}) fuori dalla colonna e di
conseguenza @code{\mergeDifferentlyHeadedOn} funziona correttamente.

@lilypond[quote,verbatim]
<<
  \relative {
    \mergeDifferentlyHeadedOn
    \mergeDifferentlyDottedOn
    c''8 d e d c d c4
    \shiftOn
    g'2 fis
  } \\
  \relative {
    c''2 c8. b16 c4
    e,2 r
  } \\
  \relative {
    \oneVoice
    s1
    e'8 a b c d2
  }
>>
@end lilypond

Il comando @code{\shiftOn} permette (senza forzare) lo spostamento delle note
in una voce.  Quando si applica @code{\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 @code{\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 @code{\shiftOff}, mentre le voci più
interne (terza e successive) hanno specificato @code{\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.

@warning{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!}

@lilypond[quote,verbatim]
\new Staff \relative {
  %% inserimento abbreviato
  <<
    { f''2  }  % 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
  >>
}
@end lilypond

Due ulteriori comandi, @code{\shiftOnn} e @code{\shiftOnnn},
mettono a disposizione altri livelli di spostamento che possono
essere specificati in modo temporaneo per risolvere delle collisioni
in situazioni complesse --  vedi @rlearningnamed{Real music example, 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).

@predefined
@code{\mergeDifferentlyDottedOn},
@code{\mergeDifferentlyDottedOff},
@code{\mergeDifferentlyHeadedOn},
@code{\mergeDifferentlyHeadedOff}.

@code{\shiftOn},
@code{\shiftOnn},
@code{\shiftOnnn},
@code{\shiftOff}.
@endpredefined

@snippets

@cindex voce, ulteriore, nella musica polifonica
@cindex polifonia, voci ulteriori
@funindex context-spec-music
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/additional-voices-to-avoid-collisions.ly}

@cindex nota puntata, spostamento orizzontale
@cindex puntata, nota, spostamento orizzontale
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/moving-dotted-notes-in-polyphony.ly}

@cindex nota, spostamento orizzontale
@cindex spostamento orizzontale di una nota
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/forcing-horizontal-shift-of-notes.ly}

@morerefs
Glossario Musicale:
@rglosnamed{polyphony,polifonia}.

Manuale d'apprendimento:
@rlearningnamed{Multiple notes at once, Note simultanee},
@rlearningnamed{Voices contain music, Le voci contengono la musica},
@rlearningnamed{Real music example, Esempio musicale}.

Frammenti:
@rlsr{Simultaneous notes}.

Guida al funzionamento interno:
@rinternals{NoteColumn},
@rinternals{NoteCollision},
@rinternals{RestCollision}.
@endmorerefs

@cindex collisione,ignorare

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

@lilypond[quote,verbatim,fragment]
\mergeDifferentlyHeadedOn
<< \relative { c'16 a' b a } \\ \relative { c'2 } >>
\override NoteColumn.ignore-collision = ##t
<< \relative { c'16 a' b a } \\ \relative { c'2 } >>
@end lilypond

@ignore
@knownissues
@c TODO investigate! Sometimes it works, sometimes not. --FV
The requirements for successfully merging different note heads that
are at the same time differently dotted are not clear.
@end ignore


@node Merging rests
@unnumberedsubsubsec Accorpare le pause

In caso di voci multiple, di solito si accorpano le pause che capitano in
entrambe. Per farlo si usa l'incisore @code{Merge_rests_engraver}.

@lilypond[quote,verbatim]
voiceA = \relative { d''4 r d2 | R1 | }
voiceB = \relative { fis'4 r g2 | R1 | }
\score {
  <<
    \new Staff \with {
      instrumentName = "non accorpato"
    }
    <<
      \new Voice { \voiceOne \voiceA }
      \new Voice { \voiceTwo \voiceB }
    >>
    \new Staff \with {
      instrumentName = "accorpato"
      \consists Merge_rests_engraver
    }
    <<
      \new Voice { \voiceOne \voiceA }
      \new Voice { \voiceTwo \voiceB }
    >>
  >>
}
@end lilypond

Impostando la proprietà di contesto @code{suspendRestMerging} su @code{##t} è
possibile disattivare temporaneamente l'accorpamento delle pause.


@node Automatic part combining
@unnumberedsubsubsec Combinazione automatica delle parti

@cindex combinazione automatica delle parti
@cindex combinatore delle parti
@cindex unione delle parti
@cindex parte a due
@cindex parte solista
@funindex \partCombine

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 @notation{a due} sono a loro volta
identificate e contrassegnate.

La sintassi per la combinazione automatica delle parti è:

@example
\partCombine @var{espressione-musicale1} @var{espressione-musicale2}
@end example

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.

@lilypond[quote,verbatim]
instrumentOne = \relative {
  c'4 d e f |
  R1 |
  d'4 c b a |
  b4 g2 f4 |
  e1 |
}

instrumentTwo = \relative {
  R1 |
  g'4 a b c |
  d4 c b a |
  g4 f( e) d |
  e1 |
}

<<
  \new Staff \instrumentOne
  \new Staff \instrumentTwo
  \new Staff \partCombine \instrumentOne \instrumentTwo
>>
@end lilypond

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 @code{one}) ha i gambi
in @qq{su}, mentre la seconda (nel contesto @code{two}) ha sempre i
gambi in @qq{giù}. In caso di parti solistiche, la prima e seconda
parte sono contrassegnate rispettivamente con @qq{Solo} e @qq{Solo II}.
Le parti (@notation{a due}) all'unisono sono contrassegnate con la
scritta @qq{a2}.

Il comportamento predefinito del combinatore delle parti è
quello di unire due note della stessa altezza in una nota @notation{a due},
combinare in un accordo note della stessa durata e separate da un intervallo
inferiore alla nona e separare in voci distinte le note con un intervallo
superiore alla nona (o quando le voci collidono). Tale comportamento può
essere modificato con un argomento opzionale di una coppia di numeri dopo
il comando @code{\partCombine}: il primo indica l'intervallo in cui le note
iniziano a essere combinate (il valore predefinito è zero) e il secondo
dove le note vengono divise in note distinte.  Impostando il secondo argomento
su zero, il combinatore delle parti divide le note che hanno un intervallo
di una seconda o più; impostandolo su uno, divide le note di una terza o
più, e così via.

@lilypond[quote,verbatim]
instrumentOne = \relative {
  a4 b c d |
  e f g a |
  b c d e |
}

instrumentTwo = \relative {
  c'4 c c c |
  c c c c |
  c c c c |
}

<<
  \new Staff \partCombine \instrumentOne \instrumentTwo
  \new Staff \partCombine #'(2 . 3) \instrumentOne \instrumentTwo
>>
@end lilypond


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

@example
\partCombine
  \relative @dots{} @var{espressione-musicale1}
  \relative @dots{} @var{espressione-musicale2}
@end example

@noindent
Un blocco @code{\relative} che racchiude un @code{\partCombine} non ha
effetto sulle altezze di @code{@var{espressione-musicale1}} e
@code{@var{espressione-musicale2}}.

@funindex \partCombineChords
@funindex \partCombineApart
@funindex \partCombineUnisono
@funindex \partCombineSoloI
@funindex \partCombineSoloII
@funindex \partCombineAutomatic

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 @code{\partCombine} considera ogni nota
individualmente. In questo caso si può sovrascrivere la funzione
@code{\partCombine} con uno dei comandi elencati sotto.  Tutti i comandi
devono essere preceduti da @code{\once} per applicarli soltanto alla
nota successiva dell'espressione musicale.

@itemize
@item
@code{\partCombineApart} mantiene le note su due voci distinte, anche se
potrebbero essere combinate in un accordo o in un unisono.

@item
@code{\partCombineChords} unisce le note in un accordo.

@item
@code{\partCombineUnisono} unisce entrambe le voci come @qq{unisono}.

@item
@code{\partCombineSoloI} stampa soltanto la prima voce e la contrassegna
come un @qq{Solo}.

@item
@code{\partCombineSoloII} stampa soltanto la seconda voce e la contrassegna
come un @qq{Solo}.

@item
@code{\partCombineAutomatic} termina le funzioni dei comandi precedenti e
ripristina il funzionamento predefinito di @code{\partCombine}.
@end itemize

@lilypond[quote,verbatim]
instrumentOne = \relative c' {
  \partCombineApart c2^"separato" e |
  \partCombineAutomatic e2^"automatico" e |
  \partCombineChords e'2^"accordo" e |
  \partCombineAutomatic c2^"automatico" c |
  \partCombineApart c2^"separato" \once \partCombineChords e^"accordo una volta sola" |
  c2 c |
}
instrumentTwo = \relative {
  c'2 c |
  e2 e |
  a,2 c |
  c2 c' |
  c2 c |
  c2 c |
}

<<
  \new Staff { \instrumentOne }
  \new Staff { \instrumentTwo }
  \new Staff { \partCombine \instrumentOne \instrumentTwo }
>>
@end lilypond

@subsubsubheading Uso di \partCombine col testo vocale

@cindex @code{\partCombine} e testo vocale

Il comando @code{\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 @code{NullVoice}.  Vedi @ref{Polyphony with shared lyrics}.


@snippets

@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/combining-two-parts-on-the-same-staff.ly}

@cindex combinatore delle parti, modifica del testo
@cindex combinare le parti, modifica del testo
@lilypondfile[verbatim,quote,texidoc,doctitle]
{snippets/changing--partcombine-texts.ly}

@morerefs
Glossario Musicale:
@rglos{a due},
@rglosnamed{part,parte}.

Guida alla notazione:
@ref{Writing parts}.

Frammenti:
@rlsr{Simultaneous notes}.

Guida al funzionamento interno:
@rinternals{PartCombineMusic},
@rinternals{Voice}.
@endmorerefs

@knownissues
Tutte le funzioni @code{\partCombine@dots{}} possono accettare soltanto due
voci.

Le funzioni @code{\partCombine@dots{}} non possono essere inserite all'interno
di un blocco @code{\tuplet} o @code{\relative}.

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

@code{\partCombine} sa soltanto quando una nota inizia in una voce
(@code{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 @qq{Solo} e @qq{Unisono}.

@code{\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 @code{\partCombine} non riesce a combinare le due espressioni
musicali (ovvero quando le due voci hanno durate diverse), assegnerà alle
voci, internamente, nomi personalizzati: rispettivamente @code{one} e
@code{two}.  Ciò significa che se c'è un @qq{passaggio} a un contesto
@code{Voice} nominato diversamente, gli eventi in quel contesto verranno
ignorati.

Consultare i @emph{Problemi noti e avvertimenti} in @ref{Default tablatures}
se si usa @code{\partCombine} con l'intavolatura, e la @emph{Nota} in
@ref{Automatic beams} se si usa la disposizione automatica delle travature.


@node Writing music in parallel
@unnumberedsubsubsec Scrivere la musica in parallelo

@cindex scrivere la musica in parallelo
@cindex musica parallela
@cindex parallela, musica
@funindex \parallelMusic

La musica che contiene parti diverse può essere messa in parallelo nel codice
di input.  La funzione @code{\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.

@warning{L'uso dei controlli di battuta @code{|} è obbligatorio e le misure
devono avere la stessa durata.}

@lilypond[quote,verbatim]
\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 }
>>
@end lilypond

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

@lilypond[quote,verbatim]
\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 }
>>
@end lilypond

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

@lilypond[quote,verbatim]
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
       >>
     }
  >>
}
@end lilypond

@morerefs
Manuale d'apprendimento:
@rlearningnamed{Organizing pieces with variables, Organizzare i brani con le variabili}.

Frammenti:
@rlsr{Simultaneous notes}.
@endmorerefs
