Guida alla Notazione di LilyPond: 1.5.2 Più voci

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

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.

#### Passaggi 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:

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

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:

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

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.

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

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

Quando si desidera inserire le voci in un ordine diverso, conviene usare il comando `\voices`:

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

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 <<
>       \relative { e''4 f8 d e16 f g8 d4 }
>       \relative { c''4 d8 b c16 d e8 b4 }
>     >>

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: Righi delle percussioni, Pause invisibili, Gambi.

Frammenti: Simultaneous notes.

#### Stili di voce

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

>     <<
>       \relative { \voiceOneStyle d''4 c2 b4 }
>       \\
>       \relative { \voiceTwoStyle e'2 e }
>       \\
>       \relative { \voiceThreeStyle b2. c4 }
>       \\
>       \relative { \voiceFourStyle g'2 g }
>     >>

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.

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

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:

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

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:

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

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.

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

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

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

Spostare le note puntate in polifonia

Quando una nota puntata della voce più alta viene spostata per evitare una collisione con una nota di un’altra voce, il comportamento predefinito è spostare la nota più alta a destra. Tale comportamento può essere modificato tramite la proprietà `prefer-dotted-right` di `NoteCollision`.

>     \new Staff \relative c' <<
>       {
>         f2. f4
>         \override Staff.NoteCollision.prefer-dotted-right = ##f
>         f2. f4
>         \override Staff.NoteCollision.prefer-dotted-right = ##t
>         f2. f4
>       }
>       \\
>       { e4 e e e e e e e e e e e }
>     >>

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

#### 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
>     << \relative { c'16 a' b a } \\ \relative { c'2 } >>
>     \override NoteColumn.ignore-collision = ##t
>     << \relative { c'16 a' b a } \\ \relative { c'2 } >>

#### Accorpare le pause

In caso di voci multiple, di solito si accorpano le pause che capitano in entrambe. Per farlo si usa l’incisore `Merge_rests_engraver`.

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

Impostando la proprietà di contesto `suspendRestMerging` su `##t` è possibile disattivare temporaneamente l’accorpamento delle pause.

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

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

Il comportamento predefinito del combinatore delle parti è quello di unire due note della stessa altezza in una nota 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 `\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.

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

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 uno dei comandi elencati sotto. Tutti i comandi devono essere preceduti da `\once` per applicarli soltanto alla nota successiva dell’espressione musicale.

- `\partCombineApart` mantiene le note su due voci distinte, anche se potrebbero essere combinate in un accordo o in un unisono.
- `\partCombineChords` unisce le note in un accordo.
- `\partCombineUnisono` unisce entrambe le voci come “unisono”.
- `\partCombineSoloI` stampa soltanto la prima voce e la contrassegna come un “Solo”.
- `\partCombineSoloII` stampa soltanto la seconda voce e la contrassegna come un “Solo”.
- `\partCombineAutomatic` termina le funzioni dei comandi precedenti e ripristina il funzionamento predefinito di `\partCombine`.

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

#### 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 Polifonia con testo in comune.

#### 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 \with { instrumentName = "Standard polyphony" }

>           << \musicUp \\ \musicDown >>

>         \new Staff \with {
>           instrumentName = "PartCombine without text"
>           printPartCombineTexts = ##f
>         }

>         \partCombine \musicUp \musicDown

>         \new Staff \with { instrumentName = "PartCombine with text" }
>           \partCombine \musicUp \musicDown
>         >>
>       \layout {
>         indent = 6.0\cm
>         \context {
>           \Score
>           \override SystemStartBar.collapse-height = #30
>         }
>       }
>     }

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

#### 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 Intavolature predefinite 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 }
>     >>

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

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

#### Vedi anche

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

Frammenti: Simultaneous notes.

#### LilyPond — Guida alla Notazione v2.22.2 (ramo stabile).