]> git.donarmstrong.com Git - lilypond.git/commitdiff
Doc-it: add chapter 4 of Notation Reference
authorFederico Bruni <fede@inventati.org>
Wed, 9 Dec 2015 12:39:26 +0000 (13:39 +0100)
committerFederico Bruni <fede@inventati.org>
Tue, 22 Dec 2015 13:38:20 +0000 (14:38 +0100)
Documentation/it/notation.tely
Documentation/it/notation/spacing.itely [new file with mode: 0644]
Documentation/it/texidocs/using-an-extra-voice-for-breaks.texidoc [new file with mode: 0644]

index ac1bec5891ddfb27c85461a0d323aa3dc51efbaf..e96fe0d6ff9665ab3d833bf5d3c0dfa7c560b70e 100644 (file)
@@ -50,7 +50,7 @@ Copyright @copyright{} 1999--2015 degli autori.
 * Notazione musicale::          Notazione usata in quasi tutti i progetti.
 * Notazione specialistica::     Notazione usata solo in contesti specifici.
 * Input e output::              Informazioni generali su input e output.
-* Spacing issues::              Impaginazione della musica sul foglio. @c Gestione dello spazio
+* Gestione dello spazio::       Impaginazione della musica sul foglio.
 * Changing defaults::           Aggiustamento dell'output. @c Modifica delle impostazioni predefinite
 
 Appendici
diff --git a/Documentation/it/notation/spacing.itely b/Documentation/it/notation/spacing.itely
new file mode 100644 (file)
index 0000000..c7de10a
--- /dev/null
@@ -0,0 +1,3643 @@
+@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
+
+@ignore
+    Translation of GIT committish: 410fe169a1eeff173aed62d85b79686532b379ff
+
+    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.19.22"
+
+@c Translators: Federico Bruni
+@c Translation checkers:
+
+@ignore
+GDP TODO list
+
+Negative numbers are allowed:
+> Are you sure? The following works well
+> \paper{
+>   first-page-number = -2
+> }
+> and prints page number -1 on the second page, for example.
+
+
+Clarify
+http://code.google.com/p/lilypond/issues/detail?id=68
+
+@end ignore
+
+
+@node Gestione dello spazio
+@chapter Gestione dello spazio
+@translationof Spacing issues
+
+La formattazione globale del foglio è determinata da tre fattori: la
+formattazione della pagina, le interruzioni di linea e la spaziatura.
+Ciascun fattore influenza l'altro. La scelta della spaziatura determina
+la densità con cui vengono disposti i sistemi musicali, che a sua volta
+influenza la scelta delle interruzioni di linea e quindi infine quante
+pagine occupa un brano.
+
+Generalmente, questa procedura si svolge in quattro stadi. Inizialmente
+vengono scelte le distanze flessibili (@q{springs}), in base alle
+durate.  Poi vengono tentate tutte le possibili combinazioni per le
+interruzioni di linea e viene calcolato un punteggio @q{negativo} per
+ciascuna di esse. Quindi viene calcolata l'altezza di ogni possibile
+sistema. Infine viene scelta una combinazione di interruzioni di linea
+e di interruzioni di pagina che assicuri che la spaziatura verticale e
+quella orizzontale non siano né troppo compresse né troppo allungate.
+
+Due tipi di blocchi possono contenere le impostazioni di formattazione:
+@code{\paper @{@dots{}@}} e @code{\layout @{@dots{}@}}.  Il blocco
+@code{\paper} contiene le impostazioni di formattazione della pagina
+da applicare a tutte le partiture di un libro o di una parte,
+come l'altezza del foglio o se stampare o meno i numeri di pagina, etc.
+(vedi @ref{Page layout}).  Il blocco @code{\layout} contiene le impostazioni
+di formattazione della partitura, come il numero di sistemi da usare o lo
+spazio tra i gruppi di righi, etc. (vedi @ref{Score layout}).
+
+@menu
+* Formattazione della pagina::
+* Formattazione della partitura::
+* Interruzioni::
+* Spaziatura verticale::
+* Spaziatura orizzontale::
+* Riduzione del numero di pagine di una partitura::
+@end menu
+
+
+@node Formattazione della pagina
+@section Formattazione della pagina
+@translationof Page layout
+
+Questa sezione tratta le opzioni di formattazione della pagina per il
+blocco @code{\paper}.
+
+@menu
+* Il blocco paper::
+* Formato carta e ridimensionamento automatico::
+* Variabili paper della spaziatura verticale fissa::
+* Variabili paper della spaziatura verticale flessibile::
+* Variabili paper della spaziatura orizzontale::
+* Altre variabili di paper::
+@end menu
+
+
+@node Il blocco paper
+@subsection Il blocco @code{@bs{}paper}
+@translationof The paper block
+
+I blocchi @code{\paper} possono essere posizionati in tre punti diversi, in
+modo da formare una gerarchia discendente di blocchi @code{\paper}:
+
+@itemize
+
+@item
+All'inizio del file di input, prima di tutti i blocchi @code{\book},
+@code{\bookpart} e @code{\score}.
+
+@item
+Dentro un blocco @code{\book} ma fuori da tutti i blocchi
+@code{\bookpart} e @code{\score} in esso racchiusi.
+
+@item
+Dentro un blocco @code{\bookpart} ma fuori da tutti i blocchi
+@code{\score} in esso racchiusi.
+
+@end itemize
+
+Non è possibile inserire un blocco @code{\paper} in un blocco @code{\score}.
+
+I valori dei campi vengono filtrati dall'alto verso il basso attraverso
+questa gerarchia: i valori impostati nei livelli più alti della
+gerarchia persistono finché non sono sovrascritti da un valore
+impostato in un livello più basso.
+
+Vari blocchi @code{\paper} possono apparire in ognuno di questi livelli, per
+esempio come parti di vari file inclusi con @code{\include}.  In questo caso,
+i campi di ciascun livello vengono combinati e i valori riscontrati per
+ultimi avranno la precedenza in caso di campi duplicati.
+
+Le impostazioni che possono apparire in un blocco @code{\paper} comprendono:
+
+@itemize
+
+@item
+la funzione scheme @code{set-paper-size},
+
+@item
+le variabili @code{\paper} per personalizzare la formattazione della pagina e
+
+@item
+le definizioni di markup usate per personalizzare la formattazione di intestazioni,
+piè di pagina e titoli.
+
+@end itemize
+
+La funzione @code{set-paper-size} è trattata nella prossima
+sezione, @ref{Paper size and automatic scaling}.  Le variabili
+@code{\paper} che si occupano della formattazione della pagina sono
+trattate in sezioni successive.  Le definizioni di markup relative a
+intestazioni, piè di pagina e titoli sono trattate in
+@ref{Custom titles headers and footers}.
+
+La maggior parte delle variabili @code{\paper} funzionano soltanto in
+un blocco @code{\paper}.  Le poche che funzionano anche in un blocco
+@code{\layout} sono elencate in
+@ref{The layout block,,Il blocco @code{@bs{}layout}}.
+
+Se non indicato diversamente, tutte le variabili @code{\paper} che
+corrispondono a distanze sulla pagina sono misurate in millimetri,
+a meno che un'unità di misura diversa non sia specificata dall'utente.
+Per esempio, la seguente dichiarazione imposta @code{top-margin} su
+dieci millimetri:
+
+@example
+\paper @{
+  top-margin = 10
+@}
+@end example
+
+Per impostarla su @code{0.5} pollici, usare il suffisso di
+unità @code{\in} (inch = pollice):
+
+@example
+\paper @{
+  top-margin = 0.5\in
+@}
+@end example
+
+I suffissi di unità disponibili sono @code{\mm}, @code{\cm},
+@code{\in} e @code{\pt}.  Queste unità sono semplici valori utili
+per convertire dai millimetri e sono definite in
+@file{ly/paper-defaults-init.ly}.  Solo per chiarezza, quando
+si usano i millimetri, di solito si usa il suffisso @code{\mm},
+anche se non è tecnicamente necessario.
+
+È anche possibile definire i valori di @code{\paper} con Scheme.
+L'equivalente Scheme dell'esempio precedente è:
+
+@example
+\paper @{
+  #(define top-margin (* 0.5 in))
+@}
+@end example
+
+@seealso
+Guida alla notazione:
+@ref{Paper size and automatic scaling},
+@ref{Custom titles headers and footers},
+@ref{The layout block,,Il blocco @code{@bs{}layout}}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+
+@node Formato carta e ridimensionamento automatico
+@subsection Formato carta e ridimensionamento automatico
+@translationof Paper size and automatic scaling
+
+@cindex formato carta
+@cindex formato pagina
+@cindex carta, formato
+@cindex pagina, formato
+
+@funindex \paper
+
+@menu
+* Impostare il formato carta::
+* Ridimensionamento automatico al formato carta::
+@end menu
+
+
+@node Impostare il formato carta
+@unnumberedsubsubsec Impostare il formato carta
+@translationof Setting the paper size
+
+@q{A4} è il valore predefinito quando non viene impostato esplicitamente
+alcun formato carta. Esistono due funzioni che permettono di cambiare
+formato:
+
+@table @code
+@item set-default-paper-size
+
+@example
+#(set-default-paper-size "quarto")
+@end example
+
+che deve sempre trovarsi nel livello superiore, e
+
+@item set-paper-size
+
+@example
+\paper @{
+  #(set-paper-size "tabloid")
+@}
+@end example
+
+che deve sempre trovarsi in un blocco @code{\paper}.
+@end table
+
+La funzione @code{set-default-paper-size}, se usata nel livello superiore,
+deve precedere qualsiasi blocco @code{\paper}.
+@code{set-default-paper-size} imposta il formato di tutte le pagine,
+mentre @code{set-paper-size} imposta il formato soltanto di quelle
+pagine a cui è applicato il blocco @code{\paper}.  Per esempio, se il
+blocco @code{\paper} si trova all'inizio del file, applicherà il formato
+a tutte le pagine.  Se il blocco @code{\paper} si trova dentro un blocco
+@code{\book}, il formato verrà applicato a quel libro soltanto.
+
+Quando si usa la funzione @code{set-paper-size}, questa deve essere
+posta @emph{prima} di qualsiasi altra funzione usata nello stesso blocco
+@code{\paper}.  Vedi @ref{Automatic scaling to paper size}.
+
+I formati carta sono definiti in @file{scm/paper.scm}, e sebbene sia
+possibile aggiungere formati personalizzati in questo file, tali aggiunte
+verrebbero sovrascritte da successivi aggiornamenti del software. I formati
+disponibili sono elencati in @ref{Predefined paper sizes}.
+
+@c An appendix entry exists for paper sizes but is not auto-generated
+
+È tuttavia possibile aggiungere un formato personalizzato nel file di
+input per poi utilizzarlo con @code{set-default-paper-size} o
+@code{set-paper-size}:
+
+@example
+#(set! paper-alist (cons '("mio formato" . (cons (* 15 in) (* 3 in))) paper-alist))
+
+\paper @{
+  #(set-paper-size "mio formato")
+@}
+@end example
+
+Si può usare qualsiasi unità di misura: @code{in} (inch, o pollici), @code{cm}
+(centimetri) e @code{mm} (millimetri).
+
+@cindex formato carta, orientamento
+@cindex pagina, orientamento
+@cindex formato carta, orizzontale (landscape)
+
+Aggiungendo il simbolo @code{'landscape} alla funzione del formato, le pagine
+vengono ruotate di 90 gradi e le linee occupano il maggior spazio a disposizione.
+
+@example
+#(set-default-paper-size "a6" 'landscape)
+@end example
+
+Appendendo @samp{landscape} (orizzontale) al nome del formato, è possibile
+scambiare le dimensioni della carta @emph{senza} ruotare la stampa
+(come quando si stampa in formato cartolina o si creano dei file
+grafici da includere invece di un documento indipendente):
+
+@example
+#(set-default-paper-size "a6landscape")
+@end example
+
+Quando il formato termina con un esplicito @samp{landscape} (orizzontale) o
+@samp{portrait} (verticale), la presenza di un simbolo @code{'landscape}
+influisce @emph{solo} sull'orientamento della stampa, non sul formato
+usato per la formattazione.
+
+@seealso
+Guida alla notazione:
+@ref{Automatic scaling to paper size},
+@ref{Predefined paper sizes}.
+
+File installati:
+@file{scm/paper.scm}.
+
+
+@node Ridimensionamento automatico al formato carta
+@unnumberedsubsubsec Ridimensionamento automatico al formato carta
+@translationof Automatic scaling to paper size
+
+Se il formato viene cambiato con una delle funzioni scheme
+(@code{set-default-paper-size} o @code{set-paper-size}), i
+valori di diverse variabili @code{\paper} sono automaticamente
+ricalcolati in base alla nuova dimensione.  Per aggirare il ridimensionamento
+automatico di una certa variabile, impostare la variabile dopo aver
+impostato il formato.  Fare attenzione al fatto che il ridimensionamento
+automatico non viene attivato se si impostano le variabili
+@code{paper-height} o @code{paper-width}, anche se
+@code{paper-width} può influenzare altri valori (ma questo
+è un argomento diverso dal ridimensionamento ed è trattato in seguito).  Le
+funzioni @code{set-default-paper-size} e @code{set-paper-size} sono
+descritte in @ref{Setting the paper size}.
+
+Le dimensioni verticali interessate dal ridimensionamento automatico
+sono @code{top-margin} e @code{bottom-margin} (vedi
+@ref{Fixed vertical spacing paper variables,,Variabili fisse della spaziatura verticale di @code{@bs{}paper}}).
+Le dimensioni orizzontali interessate dal ridimensionamento automatico
+sono @code{left-margin}, @code{right-margin}, @code{inner-margin},
+@code{outer-margin}, @code{binding-offset}, @code{indent} e @code{short-indent} (vedi
+@ref{Horizontal spacing paper variables,,Variabili della spaziatura orizzontale di @code{@bs{}paper}}).
+
+I valori predefiniti di queste dimensioni sono impostati in
+@file{ly/paper-defaults-init.ly} e salvati in variabili interne
+chiamate @code{top-margin-default}, @code{bottom-margin-default}, etc.
+Questi valori si riferiscono al formato predefinito @code{a4}.
+Per riferimento, nel formato @code{a4} il valore di @code{paper-height} è
+@code{297\mm} e quello di @code{paper-width} è @code{210\mm}.
+
+@seealso
+Guida alla notazione:
+@ref{Fixed vertical spacing paper variables,,Variabili fisse della spaziatura verticale di @code{@bs{}paper}},
+@ref{Horizontal spacing paper variables,,Variabili della spaziatura orizzontale di @code{@bs{}paper}}.
+
+File installati:
+@file{ly/paper-defaults-init.ly},
+@file{scm/paper.scm}.
+
+
+@node Variabili paper della spaziatura verticale fissa
+@subsection Variabili @code{@bs{}paper} della spaziatura verticale fissa
+@translationof Fixed vertical spacing paper variables
+
+@warning{Alcune dimensioni definite nel blocco @code{@bs{}paper} sono
+ridimensionate automaticamente in base al formato carta, portando a
+possibili risultati imprevisti. Vedi
+@ref{Automatic scaling to paper size}.}
+
+I valori predefiniti (prima del ridimensionamento) sono definiti in
+@file{ly/paper-defaults-init.ly}.
+
+@table @code
+@item paper-height
+@funindex paper-height
+
+L'altezza della pagina (valore predefinito: non impostata).  Il ridimensionamento
+automatico di alcune dimensioni verticali non è influenzato da questa.
+
+@item top-margin
+@funindex top-margin
+
+Il margine tra il punto più alto della pagina e il punto più alto
+dell'area di stampa.  Se il formato viene modificato, il valore
+predefinito di questa dimensione viene ridimensionato di conseguenza.
+
+@item bottom-margin
+@funindex bottom-margin
+
+Il margine tra il punto più basso dell'area di stampa e il punto
+più basso della pagina.  Se il formato viene modificato, il valore
+predefinito di questa dimensione viene ridimensionato di conseguenza.
+
+@item ragged-bottom
+@funindex ragged-bottom
+
+Se impostato su vero, i sistemi avranno la loro naturale spaziatura.
+Non saranno giustificati, ovvero non saranno né compressi né allungati
+verticalmente per stare nella pagina.
+
+@item ragged-last-bottom
+@funindex ragged-last-bottom
+
+Se impostato su falso, l'ultima pagina, e l'ultima pagina
+di ogni sezione creata con un blocco @code{\bookpart}, saranno
+giustificate verticalmente come nelle pagine precedenti.
+
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Automatic scaling to paper size}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@knownissues
+I titoli (definiti nel blocco @code{\header}) sono considerati
+un sistema, dunque @code{ragged-bottom} e @code{ragged-last-bottom}
+aggiungeranno spazio tra i titoli e il primo sistema della partitura.
+
+Formati carta definiti esplicitamente sovrascriveranno qualsiasi
+impostazione di margine superiore o inferiore definito dall'utente.
+
+
+@node Variabili paper della spaziatura verticale flessibile
+@subsection Variabili @code{@bs{}paper} della spaziatura verticale flessibile
+@translationof Flexible vertical spacing paper variables
+
+Nella maggior parte dei casi è preferibile che le distanze verticali
+tra certi elementi (come margini, titoli, sistemi e partiture
+separate) siano flessibili, così che siano ben compresse o allungate
+a seconda della situazione.  Sono disponibili diverse variabili
+@code{\paper} (elencate sotto) per regolare il comportamento di
+allungamento di queste dimensioni.
+
+Nota bene che le variabili @code{\paper} trattate in questa sezione
+non regolano la spaziatura dei righi dei singoli sistemi.
+La spaziatura interna ai sistemi è controllata dalle proprietà
+del grob, solitamente inserite in un blocco @code{\score} o
+@code{\layout} e non in un blocco @code{\paper}.  Vedi
+@ref{Flexible vertical spacing within systems}.
+
+@menu
+* Struttura delle liste associative flessibili della spaziatura verticale::
+* Elenco delle variabili paper flessibili della spaziatura verticale::
+@end menu
+
+
+@node Struttura delle liste associative flessibili della spaziatura verticale
+@unnumberedsubsubsec Struttura delle liste associative flessibili della spaziatura verticale
+@translationof Structure of flexible vertical spacing alists
+
+Ognuna delle variabili @code{\paper} flessibili della spaziatura verticale
+è una lista associativa (alist) composta da quattro @emph{elementi}:
+
+@itemize
+
+@item
+@code{basic-distance} -- la distanza verticale, misurata in
+spazi rigo, tra i @emph{punti di riferimento} dei due
+elementi, quando non si verificano collisioni e non sono
+attivi allungamenti o compressioni.  Il punto di riferimento
+di un markup (un titolo o un markup di un livello superiore)
+è il suo punto più alto, mentre quello di un sistema è il
+centro verticale del più vicino @code{StaffSymbol}, anche se
+una linea diversa da un rigo (come un contesto @code{Lyrics}) si
+trova nel mezzo.  Valori di @code{basic-distance} inferiori a quelli
+di @code{padding} o @code{minimum-distance} non hanno senso, dato che
+la distanza risultante non sarà mai inferiore a quella definita per
+@code{padding} o @code{minimum-distance}.
+
+@item
+@code{minimum-distance} -- la minima distanza verticale consentita,
+misurata in spazi rigo, tra i punti di riferimento dei due
+elementi, quando la compressione è attiva.  Valori di
+@code{minimum-distance} inferiori a quelli di @code{padding} non
+hanno senso, perché la distanza risultante non sarà mai inferiore
+a quella definita per @code{padding.}
+
+@c TODO: explain skylines somewhere and xref to it from here.
+
+@item
+@code{padding} -- la quantità minima di spazio verticale libero
+tra i profili (@emph{skyline}) dei due elementi, misurata in
+spazi rigo.
+
+@item
+@code{stretchability} -- una misura, priva di unità di misura,
+della relativa propensione della dimensione a allungarsi.  Se
+pari a zero, la distanza non si allungherà (a meno che non ci
+siano delle collisioni).  Se positiva, il significato del valore
+di @code{stretchability} di una certa dimensione sta nella sua
+relazione con i valori di @code{stretchability} delle altre
+dimensioni.  Per esempio, se una dimensione ha un valore di
+@code{stretchability} doppio rispetto a un'altra, si allungherà
+il doppio.
+I valori devono essere non negativi e finiti.  Il valore @code{+inf.0} causa un
+errore di programmazione e viene ingorato, ma si può usare @code{1.0e7} per
+ottenere un'elasticità allungabile quasi all'infinito. Se non impostata, il
+valore predefinito equivale a quello di @code{basic-distance}.  Nota che la
+propensione della dimensione a @emph{comprimersi} non può essere impostata
+direttamente dall'utente ed è uguale a
+(@code{basic-distance}@tie{}@minus{}@tie{}@code{minimum-distance}).
+
+@end itemize
+
+Se in una pagina lo spazio verticale non è giustificato (ovvero con
+@code{ragged-bottom} impostato su vero) la distanza risultante è
+data dal valore più grande assegnato a una di queste tre proprietà:
+
+@itemize
+
+@item
+@code{basic-distance},
+
+@item
+@code{minimum-distance} e
+
+@item
+@code{padding} con l'aggiunta della più piccola distanza necessaria a
+eliminare collisioni.
+
+@end itemize
+
+In caso di partiture con molte pagine in cui l'ultima pagina non è
+giustificata (ovvero con @code{ragged-last-bottom} impostato su vero),
+l'ultima pagina usa la stessa spaziatura della pagina precedente,
+purché ci sia abbastanza spazio.
+
+I metodi specifici per modificare le liste associative (alist) sono
+trattati in @ref{Modifying alists}.  L'esempio seguente illustra i
+due modi in cui queste possono essere modificate.  La prima dichiarazione
+aggiorna un elemento-valore individualmente, mentre la seconda ridefinisce
+completamente la variabile:
+
+@example
+\paper @{
+  system-system-spacing.basic-distance = #8
+  score-system-spacing =
+    #'((basic-distance . 12)
+       (minimum-distance . 6)
+       (padding . 1)
+       (stretchability . 12))
+@}
+@end example
+
+
+@node Elenco delle variabili paper flessibili della spaziatura verticale
+@unnumberedsubsubsec Elenco delle variabili @code{@bs{}paper} flessibili della spaziatura verticale
+@translationof List of flexible vertical spacing paper variables
+
+I nomi di queste variabili hanno il formato
+@code{@var{superiore}-@var{inferiore}-spacing}, dove @code{@var{superiore}}
+e @code{@var{inferiore}} indicano gli elementi di cui stabilire la
+distanza.  Ogni distanza viene misurata tra i punti di riferimento
+dei due elementi (vedi la descrizione precedente della struttura della
+lista associativa). Nei nomi di queste variabili il termine @q{@code{markup}}
+si riferisce sia ai @emph{titoli} (@code{bookTitleMarkup} o
+@code{scoreTitleMarkup}) sia ai @emph{markup di livello superiore} (vedi
+@ref{File structure}).  Tutte le distanze sono misurate in spazi rigo.
+
+Le impostazioni predefinite sono definite in @file{ly/paper-defaults-init.ly}.
+
+@c TODO: Where do headers/footers fit in? -mp
+
+@table @code
+@item markup-system-spacing
+@funindex markup-system-spacing
+
+la distanza tra il testo (titolo o markup di livello superiore) e il sistema
+che lo segue.
+
+@item score-markup-spacing
+@funindex score-markup-spacing
+
+la distanza tra l'ultimo sistema di un brano e il testo (titolo o
+markup di livello superiore) che lo segue.
+
+@item score-system-spacing
+@funindex score-system-spacing
+
+la distanza tra l'ultimo sistema di un brano e il primo sistema
+del brano successivo, quando non c'è alcun testo (titolo o
+markup di livello superiore) tra di loro.
+
+@item system-system-spacing
+@funindex system-system-spacing
+
+la distanza tra due sistemi di uno stesso brano.
+
+@item markup-markup-spacing
+@funindex markup-markup-spacing
+
+la distanza tra due testi (titoli o markup di livello superiore).
+
+@item last-bottom-spacing
+@funindex last-bottom-spacing
+
+la distanza tra l'ultimo sistema o l'ultimo markup di livello superiore di
+una pagina e la fine dello spazio stampabile (ovvero la parte superiore
+del margine inferiore).
+
+@item top-system-spacing
+@funindex top-system-spacing
+
+la distanza tra l'inizio dello spazio stampabile (ovvero la parte
+inferiore del margine superiore) e il primo sistema di una pagina, quando
+non c'è alcun testo (titolo o markup di livello superiore) tra di loro.
+
+@item top-markup-spacing
+@funindex top-markup-spacing
+
+la distanza tra l'inizio dello spazio stampabile (ovvero la parte
+inferiore del margine superiore) e il primo testo (titolo o markup di
+livello superiore) di una pagina, quando non c'è alcun sistema tra i due.
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Flexible vertical spacing within systems}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Variabili paper della spaziatura orizzontale
+@subsection Variabili @code{@bs{}paper} della spaziatura orizzontale
+@translationof Horizontal spacing paper variables
+
+@warning{Alcune dimensioni in @code{@bs{}paper} sono ridimensionate
+automaticamente in base al formato carta, producendo talvolta un
+risultato inatteso. Vedi @ref{Automatic scaling to paper size}.}
+
+@menu
+* Variabili paper per larghezze e margini::
+* Variabili paper per la modalità due pagine per foglio::
+* Variabili paper per spostamenti e indentazioni::
+@end menu
+
+
+@node Variabili paper per larghezze e margini
+@unnumberedsubsubsec Variabili @code{@bs{}paper} per larghezze e margini
+@translationof paper variables for widths and margins
+
+I valori predefiniti (prima del ridimensionamento) non elencati qui si
+trovano in @file{ly/paper-defaults-init.ly}.
+
+@table @code
+
+@item paper-width
+@funindex paper-width
+
+Larghezza della pagina (non impostata inizialmente).  @code{paper-width},
+pur non avendo effetto sul ridimensionamento automatico di alcune dimensioni
+orizzontali, influenza la variabile @code{line-width}.  Se sono impostate
+sia @code{paper-width} che @code{line-width}, saranno modificate anche
+@code{left-margin} e @code{right-margin}. Vedi anche @code{check-consistency}.
+
+@item line-width
+@funindex line-width
+
+Se specificata in un blocco @code{\paper} definisce la lunghezza orizzontale
+disponibile per i righi musicali nei sistemi non indentati.  Se non specificata,
+la larghezza della linea (@code{line-width}) del foglio è determinata dalla sottrazione
+@code{(paper-width@tie{}@minus{}@tie{}left-margin@tie{}@minus{}@tie{}right-margin)}.
+Se @code{line-width} è specificata nel blocco @code{\paper} e entrambi i margini,
+@code{left-margin} e @code{right-margin}, non lo sono, questi saranno aggiornati
+in modo da centrare i sistemi sulla pagina automaticamente.
+Vedi anche @code{check-consistency}.
+
+Le variabili @code{line-width} per i singoli brani possono essere specificate
+nel blocco @code{\layout} di ogni brano, ovvero dentro un blocco @code{\score}.
+Questi valori regolano la larghezza delle linee prodotte brano per brano.  Se
+@code{line-width} non viene specificata per un brano, il suo valore predefinito
+coincide con la larghezza della linea del foglio, ovvero col valore della
+variabile @code{line-width} del blocco @code{\paper}.  Impostando
+@code{line-width} per un brano in particolare, ovvero all'interno di un blocco
+@code{\score}, i margini del foglio non vengono modificati. Le linee del rigo,
+la cui lunghezza è determinata dalla variabile @code{line-width} del brano, sono
+allineate a sinistra all'interno dello spazio definito dalla variabile
+@code{line-width} del foglio. Se le variabili @code{line-width} del brano e del
+foglio sono uguali, le linee del rigo si estenderanno esattamente dal margine
+sinistro al margine destro, ma se quella del brano è maggiore di quella del
+foglio le linee del rigo andranno oltre il margine destro.
+
+@item left-margin
+@funindex left-margin
+
+Margine tra il bordo sinistro della pagina e l'inizio delle linee
+del rigo nei sistemi non indentati.  Se il formato è modificato, il valore
+predefinito di questa dimensione viene ridimensionato proporzionalmente.  Se
+@code{left-margin} non è impostato, e sono impostati sia @code{line-width} che
+@code{right-margin}, allora @code{left-margin} equivale alla differenza
+@code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}right-margin)}.
+Se è impostata soltanto @code{line-width}, entrambi i margini sono impostati su
+@code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)},
+e di conseguenza i sistemi sono centrati sulla pagina.  Vedi anche
+@code{check-consistency}.
+
+@item right-margin
+@funindex right-margin
+
+Margine tra il bordo destro della pagina e la fine delle linee
+del rigo in sistemi giustificati.  Se il formato è modificato, il valore
+predefinito di questa dimensione viene ridimensionato proporzionalmente.  Se
+@code{right-margin} non è impostato, e sono impostati sia @code{line-width} che
+@code{left-margin}, allora @code{right-margin} equivale a
+@code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}left-margin)}.
+Se è impostata soltanto @code{line-width}, entrambi i margini sono impostati su
+@code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)},
+e di conseguenza i sistemi sono centrati sulla pagina.  Vedi anche
+@code{check-consistency}.
+
+@item check-consistency
+@funindex check-consistency
+
+Se impostata su vero (valore predefinito), appare un avvertimento nella
+console se la somma di @code{left-margin}, @code{line-width} e
+@code{right-margin} non corrisponde esattamente a @code{paper-width}, e a
+ciascuna di queste variabili (eccetto @code{paper-width}) sarà assegnato il suo
+valore predefinito (ridimensionato in base al formato, se richiesto).  Se
+impostato su falso, qualsiasi incongruenza viene ignorata e i sistemi potrebbero
+andare oltre il bordo della pagina.
+
+@item ragged-right
+@funindex ragged-right
+
+Se impostato su vero, i sistemi non occuperanno interamente la larghezza
+della linea, ovvero non saranno giustificati.  Termineranno invece alla loro
+lunghezza orizzontale naturale.  Valori predefiniti: @code{#t} (true = vero)
+per i brani con un unico sistema, e @code{#f} (false = falso) per i brani
+con due o più sistemi.  Questa variabile può essere impostata anche in
+un blocco @code{\layout}.
+
+@item ragged-last
+@funindex ragged-last
+
+Se impostata su vero, l'ultimo sistema del brano non occuperà interamente
+la larghezza della linea, ovvero non sarà giustificato.  Terminerà invece
+alla sua lunghezza orizzontale naturale.  Valore predefinito: @code{#f} (false = falso).
+Questa variabile può essere impostata anche in un blocco @code{\layout}.
+
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Automatic scaling to paper size}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+@knownissues
+Formati carta definiti esplicitamente sovrascriveranno qualsiasi margine
+destro o sinistro definito dall'utente.
+
+
+@node Variabili paper per la modalità due pagine per foglio
+@unnumberedsubsubsec Variabili @code{@bs{}paper} per la modalità due pagine per foglio
+@translationof paper variables for two-sided mode
+
+I valori predefiniti (prima del ridimensionamento) sono definiti in
+@file{ly/paper-defaults-init.ly}.
+
+@table @code
+
+@item two-sided
+@funindex two-sided
+
+@cindex rilegatura
+@cindex margine di rilegatura
+
+Se impostata su vero, vengono usati @code{inner-margin}, @code{outer-margin} e
+@code{binding-offset} per determinare i margini a seconda che il numero di
+pagina sia dispari o pari.  Questa variabile sovrascrive @code{left-margin}
+e @code{right-margin}.
+
+@item inner-margin
+@funindex inner-margin
+
+Margine del lato interno di tutte le pagine se queste fanno parte
+di un libro.  Se il formato è modificato, il valore predefinito di questa
+dimensione viene ridimensionato proporzionalmente.  Funziona soltanto con
+@code{two-sided} impostato su vero.
+
+@item outer-margin
+@funindex outer-margin
+
+È il margine del lato esterno di tutte le pagine se queste fanno parte
+di un libro.  Se il formato è modificato, il valore predefinito di questa
+dimensione viene ridimensionato proporzionalmente.  Funziona soltanto con
+@code{two-sided} impostato su vero.
+
+@item binding-offset
+@funindex binding-offset
+
+Quantità di spazio da aggiungere a @code{inner-margin} per assicurarsi che
+niente sia nascosto dalla rilegatura.  Se il formato è modificato, il valore
+predefinito di questa dimensione viene ridimensionato proporzionalmente.
+Funziona soltanto con @code{two-sided} impostato su vero.
+
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Automatic scaling to paper size}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+
+@node Variabili paper per spostamenti e indentazioni
+@unnumberedsubsubsec Variabili @code{@bs{}paper} per spostamenti e indentazioni
+@translationof paper variables for shifts and indents
+
+I valori predefiniti (prima del ridimensionamento) non elencati qui sono
+visibili in @file{ly/paper-defaults-init.ly}.
+
+@table @code
+
+@item horizontal-shift
+@funindex horizontal-shift
+
+@c This default value is buried in the middle of page.scm.  -mp
+
+È la quantità di spazio di cui spostare a destra tutti i sistemi (inclusi
+i titoli e i separatori dei sistemi).  Valore predefinito: @code{0.0\mm}.
+
+@item indent
+@funindex indent
+
+Livello di indentazione del primo sistema di un brano.
+Se il formato è modificato, il valore predefinito di questa dimensione viene
+ridimensionato proporzionalmente.  Lo spazio compreso in @code{line-width}
+disponibile per il primo sistema è ridotto di questa quantità.  @code{indent}
+può essere specificato anche in blocchi @code{\layout} per impostare
+l'indentazione brano per brano.
+
+@item short-indent
+@funindex short-indent
+
+Livello di indentazione di tutti i sistemi di un brano eccetto
+il primo sistema.  Se il formato è modificato, il valore predefinito di
+questa dimensione viene ridimensionato proporzionalmente.  Lo spazio
+compreso in @code{line-width} disponibile per tutti i sistemi tranne il
+primo è ridotto di questa quantità.  @code{short-indent} può essere specificato
+anche in blocchi @code{\layout} per impostare le brevi indentazioni brano per brano.
+
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Automatic scaling to paper size}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Altre variabili di paper
+@subsection Altre variabili di @code{@bs{}paper}
+@translationof Other paper variables
+
+@menu
+* Variabili di paper per l'interruzione di linea::
+* Variabili di paper per l'interruzione di pagina::
+* Variabili di paper per la numerazione delle pagine::
+* Svariate variabili di paper::
+@end menu
+
+
+@node Variabili di paper per l'interruzione di linea
+@unnumberedsubsubsec Variabili di @code{@bs{}paper} per l'interruzione di linea
+@translationof paper variables for line breaking
+
+@table @code
+
+@item max-systems-per-page
+@funindex max-systems-per-page
+
+Il numero massimo di sistemi che saranno disposti in una pagina.  Attualmente
+ciò è supportanto soltanto dall'algoritmo @code{ly:optimal-breaking}.
+Valore predefinito: non impostato.
+
+@item min-systems-per-page
+@funindex min-systems-per-page
+
+Il numero minimo di sistemi che saranno disposti in una pagina.  Ciò
+potrebbe riempire troppo le pagine, se il numero è troppo grande.  Attualmente
+ciò è supportanto soltanto dall'algoritmo @code{ly:optimal-breaking}.
+Valore predefinito: non impostato.
+
+@item systems-per-page
+@funindex systems-per-page
+
+Il numero di sistemi da disporre in una pagina.  Attualmente
+ciò è supportanto soltanto dall'algoritmo @code{ly:optimal-breaking}.
+Valore predefinito: non impostato.
+
+@item system-count
+@funindex system-count
+
+Il numero di sistemi da usare per un brano.  Valore predefinito: non impostato.
+Questa variabile può essere impostata anche in un blocco @code{\layout}.
+
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Line breaking}.
+
+
+@node Variabili di paper per l'interruzione di pagina
+@unnumberedsubsubsec Variabili di @code{@bs{}paper} per l'interruzione di pagina
+@translationof paper variables for page breaking
+
+I valori predefiniti non elencati qui sono visibili in
+@file{ly/paper-defaults-init.ly}
+
+@table @code
+
+@item page-breaking
+@funindex page-breaking
+
+L'algoritmo di interruzione di pagina da usare.  Le opzioni sono
+@code{ly:minimal-breaking}, @code{ly:page-turn-breaking},
+@code{ly:one-line-breaking} e @code{ly:optimal-breaking}
+(predefinito).
+
+@item page-breaking-system-system-spacing
+@funindex page-breaking-system-system-spacing
+
+Induce il sistema di interruzione di pagina a credere che
+@code{system-system-spacing} sia impostato in modo diverso dal
+modo in cui è impostato realmente.  Per esempio, se
+@code{page-breaking-system-system-spacing #'padding} è impostato su un
+valore molto più grande di @code{system-system-spacing #'padding}, il
+sistema di interruzione di pagina disporrà meno sistemi su ciascuna
+pagina.  Valore predefinito: non impostato.
+
+@item page-count
+@funindex page-count
+
+Il numero di pagine da usare per un brano, non impostato.
+
+@end table
+
+Le variabili seguenti sono attive soltanto quando @code{page-breaking}
+è impostato su @code{ly:page-turn-breaking}.  Le interruzioni di pagina
+vengono quindi scelte per minimizzare il numero di voltate di pagina.
+Dato che le voltate di pagina si rendono necessarie quando si passa da
+una pagina con numero dispari a una con numero pari, verrà solitamente
+favorita una formattazione in cui l'ultima pagina abbia un numero dispari.
+I punti preferiti per le voltate di pagina possono essere indicati
+manualmente col comando @code{\allowPageTurn} o automaticamente
+includendo l'incisore @code{Page_turn_engraver} (vedi @ref{Optimal page turning}).
+
+Se le scelte disponibili per avere voltate di pagina adeguate sono
+insufficienti, LilyPond potrebbe inserire una pagina vuota all'interno
+di un brano o tra i brani (se ce ne sono almeno due), oppure potrebbe
+terminare un brano su una pagina pari.  Aumentando i valori delle
+seguenti tre variabili diminuisce la probabilità che queste entrino
+in azione.
+
+I valori sono penalità: maggiore il valore, minore la probabilità
+che si verifichi l'azione associata rispetto alle altre scelte.
+
+@table @code
+
+@item blank-page-penalty
+@funindex blank-page-penalty
+
+La penalità per avere una pagina vuota nel mezzo di un brano.  Se il
+valore di @code{blank-page-penalty} è grande ed è selezionato
+@code{ly:page-turn-breaking}, sarà meno probabile che LilyPond
+insersica una pagina nel mezzo del brano.  Aggiungerà invece
+maggior spazio tra i sistemi per occupare la pagina vuota e
+quella successiva.  Valore predefinito: 5.
+
+@item blank-last-page-penalty
+@funindex blank-last-page-penalty
+
+La penalità per terminare il brano su una pagina pari.  Se il
+valore di @code{blank-last-page-penalty} è grande ed è selezionato
+@code{ly:page-turn-breaking}, sarà meno probabile che LilyPond
+produca una partitura in cui l'ultima pagina sia pari.  Regolerà
+invece la spaziatura in modo da usare una pagina in più o in meno.
+Valore predefinito: 0.
+
+@item blank-after-score-page-penalty
+@funindex blank-after-score-page-penalty
+
+La penalità per avere una pagina vuota dopo la fine di un brano e
+prima di quello successivo.  Il valore predefinito è inferiore a
+@code{blank-page-penalty}, in modo che siano inserite preferibilmente
+pagine vuote al termine di un brano piuttosto che nel mezzo di un brano.
+Valore predefinito: 2.
+
+@end table
+
+
+@seealso
+Guida alla notazione:
+@ref{Page breaking},
+@ref{Optimal page breaking},
+@ref{Optimal page turning},
+@ref{Minimal page breaking},
+@ref{One-line page breaking}.
+
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+
+@node Variabili di paper per la numerazione delle pagine
+@unnumberedsubsubsec Variabili di @code{@bs{}paper} per la numerazione delle pagine
+@translationof paper variables for page numbering
+
+I valori predefiniti non elencati qui sono visibili in
+@file{ly/paper-defaults-init.ly}
+
+@table @code
+
+@cindex numeri di pagina, numerazione automatica
+@item auto-first-page-number
+@funindex auto-first-page-number
+
+L'algoritmo di interruzione di pagina si comporta diversamente a seconda
+che il numero della prima pagina sia dispari o pari.  Se questa variabile
+è impostata su vero, l'algoritmo di interruzione di pagina
+deciderà se iniziare con un numero dispari o un numero pari.  Quindi il
+numero della prima pagina resterà lo stesso o aumenterà di uno.
+Valore predefinito: @code{#f} (falso).
+
+@cindex numeri di pagina, indicare il primo
+@item first-page-number
+@funindex first-page-number
+
+Il valore del numero di pagina della prima pagina.
+
+@item print-first-page-number
+@funindex print-first-page-number
+
+Se impostato su vero, appare il numero di pagina sulla prima pagina.
+
+@cindex numeri di pagina, sopprimere
+@item print-page-number
+@funindex print-page-number
+
+Se impostato su falso, non apparirano i numeri di pagina.
+
+@cindex numeri di pagina in numeri romani
+@item page-number-type
+@funindex page-number-type
+
+Il tipo di numero usato per numerare le pagine.  Le opzioni possibili
+sono @code{roman-lower}, @code{roman-upper} e @code{arabic}.
+Valore predefinito: @code{'arabic}.
+
+@end table
+
+@seealso
+File installati:
+@file{ly/paper-defaults-init.ly}.
+
+@knownissues
+I numeri di pagina dispari sono sempre sulla destra.  Se la musica
+deve iniziare a pagina 1, ci deve essere una pagina vuota sulla
+seconda di copertina in modo che pagina 1 sia sul lato destro.
+
+
+@node Svariate variabili di paper
+@unnumberedsubsubsec Svariate variabili di @code{@bs{}paper}
+@translationof Miscellaneous paper variables
+
+@table @code
+
+@item page-spacing-weight
+@funindex page-spacing-weight
+
+L'importanza della spaziatura (verticale) e della linea (orizzontale)
+della pagina.  Valori più grandi renderanno la spaziatura della pagina
+più importante.  Valore predefinito: @code{10}.
+
+@item print-all-headers
+@funindex print-all-headers
+
+Se impostato su vero, appariranno nell'output tutte le intestazioni di
+ciascun blocco @code{\score}.  Di norma appaiono soltanto le variabili
+@code{piece} e @code{opus}.  Valore predefinito: @code{#f}.
+
+@item system-separator-markup
+@funindex system-separator-markup
+
+Un oggetto markup inserito tra i sistemi, spesso usato per le
+partiture orchestrali.  Valore predefinito: non impostato.  È
+disponibile il comando markup @code{\slashSeparator}, definito
+in @file{ly/titling-init.ly}, che fornisce un ragionevole valore
+predefinito, per esempio:
+
+@lilypond[quote,verbatim,noragged-right,line-width=30\mm]
+#(set-default-paper-size "a8")
+
+\book {
+  \paper {
+    system-separator-markup = \slashSeparator
+  }
+  \header {
+    tagline = ##f
+  }
+  \score {
+    \relative { c''1 \break c1 \break c1 }
+  }
+}
+@end lilypond
+
+@end table
+
+@seealso
+File installati:
+@file{ly/titling-init.ly}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@knownissues
+L'intestazione di pagina predefinita pone sulla stessa linea il numero di
+pagina e il campo @code{instrument} del blocco @code{\header}.
+
+
+@node Formattazione della partitura
+@section Formattazione della partitura
+@translationof Score layout
+
+Questa sezione tratta le opzioni di formattazione della partitura disponibili
+nel blocco @code{\layout}.
+
+@menu
+* Il blocco layout::
+* Impostare la dimensione del rigo::
+@end menu
+
+
+@node Il blocco layout
+@subsection Il blocco @code{@bs{}layout}
+@translationof The layout block
+
+@funindex \layout
+
+Mentre il blocco @code{\paper} contiene le impostazioni relative
+alla formattazione della pagina per l'intero documento, il blocco
+@code{\layout} contiene impostazioni di formattazione specifica
+di un brano.  Per impostare globalmente le opzioni di formattazione
+del brano, inserirle in un blocco @code{\layout} del livello superiore.
+Per impostare le impostazioni di formattazione per un singolo brano, inserirle
+in un blocco @code{\layout} racchiuso in un blocco @code{\score}, dopo la
+musica.  Le impostazioni che possono apparire in un blocco
+@code{\layout} includono:
+
+@itemize
+@item la funzione scheme @code{layout-set-staff-size},
+@item le modifiche di contesto nei blocchi @code{\context} e
+@item le variabili @code{\paper} che agiscono sulla formattazione del brano.
+@end itemize
+
+La funzione @code{layout-set-staff-size} è spiegata nella prossima
+sezione, @ref{Setting the staff size}.  Le modifiche di contesto sono
+trattate in un capitolo separato; vedi @ref{Modifying context plug-ins} e
+@ref{Changing context default settings}.
+
+Le variabili @code{\paper} che possono apparire in un blocco @code{\layout},
+con valori predefiniti presi dal blocco @code{\paper}, sono:
+
+@itemize
+
+@item
+@code{line-width}, @code{ragged-right} e @code{ragged-last}
+(vedi @ref{paper variables for widths and margins,,variabili @code{@bs{}paper} per larghezze e margini})
+
+@item
+@code{indent} e @code{short-indent}
+(vedi @ref{paper variables for shifts and indents,,variabili @code{@bs{}paper} per spostamenti e indentazioni})
+
+@item
+@code{system-count}
+(vedi @ref{paper variables for line breaking,,variabili @code{@bs{}paper} per l'interruzione di linea})
+
+@end itemize
+
+Ecco un esempio di blocco @code{\layout}:
+
+@example
+\layout @{
+  indent = 2\cm
+  \context @{
+    \StaffGroup
+    \override StaffGrouper.staff-staff-spacing.basic-distance = #8
+  @}
+  \context @{
+    \Voice
+    \override TextScript.padding = #1
+    \override Glissando.thickness = #3
+  @}
+@}
+@end example
+
+Si possono inserire molteplici blocchi @code{\layout} come espressioni
+di livello superiore.  Ciò può essere utile, per esempio, se impostazioni
+diverse sono salvate in file separati e incluse facoltativamente.
+Internamente, quando un blocco @code{\layout} viene elaborato, viene fatta
+una copia della configurazione del blocco @code{\layout} corrente, poi
+qualsiasi modifica apportata nel blocco viene applicata e il risultato
+viene salvato come la nuova configurazione corrente.  Dalla prospettiva
+dell'utente, i blocchi @code{\layout} sono combinati, ma in situazioni di
+conflitto (ovvero quando viene modificata la stessa proprietà in blocchi
+diversi) hanno precedenza le definizioni più recenti.
+
+Per esempio, se questo blocco
+
+@example
+\layout @{
+  \context @{
+    \Voice
+    \override TextScript.color = #magenta
+    \override Glissando.thickness = #1.5
+  @}
+@}
+@end example
+
+viene posto dopo quello dell'esempio precedente, le sovrascritture di
+@code{'padding} e @code{'color} per @code{TextScript} sono combinate, mentre
+quella più recente di @code{'thickness} per @code{Glissando} sostituisce
+(o nasconde) quella precedente.
+
+I blocchi @code{\layout} possono essere assegnati a delle variabili per
+poterli riusare successivamente, ma il modo in cui ciò funziona è
+leggermente ma significativamente diverso rispetto a scriverle davvero.
+
+Se una variabile è definita in questo modo,
+
+@example
+layoutVariable = \layout @{
+  \context @{
+    \Voice
+    \override NoteHead.font-size = #4
+  @}
+@}
+@end example
+
+manterrà la configurazione attuale di @code{\layout} con l'aggiunta
+della sovrascrittura @code{NoteHead.font-size}, ma questa combinazione
+@emph{non} è salvata come la nuova configurazione corrente.  Attenzione
+al fatto che la @qq{configurazione corrente} viene letta quando la variabile
+è definita e non quando viene usata, dunque il contenuto della variabile
+dipende dalla sua posizione nel file di input.
+
+La variabile può quindi essere usata all'interno di un altro
+blocco @code{\layout}, per esempio:
+
+@example
+\layout @{
+  \layoutVariable
+  \context @{
+    \Voice
+    \override NoteHead.color = #red
+  @}
+@}
+@end example
+
+Un blocco @code{\layout} che contiene una variabile, come nell'esempio
+precedente, @emph{non} copia la configurazione corrente bensì usa il
+contenuto di @code{\layoutVariable} come configurazione di base per
+altre aggiunte.  Ciò significa che qualsiasi modifica definita tra la
+definizione della variabile e il momento in cui essa viene usata è perduta.
+
+Se @code{layoutVariable} è definita (o inclusa con @code{\include}) subito
+prima di essere usata, il suo contenuto comprende soltanto la configurazione
+corrente più le sovrascritture definite al suo interno.  Quindi nell'esempio
+precedente che illustra l'uso di @code{\layoutVariable} il blocco @code{\layout}
+finale conterrebbe:
+
+@example
+  TextScript.padding = #1
+  TextScript.color = #magenta
+  Glissando.thickness = #1.5
+  NoteHead.font-size = #4
+  NoteHead.color = #red
+@end example
+
+più le sovrascritture @code{indent} e @code{StaffGrouper}.
+
+Ma se la variabile fosse già stata definita prima del primo blocco
+@code{\layout}, la configurazione corrente conterrebbe soltanto
+
+@example
+  NoteHead.font-size = #4 % (scritta nella definizione della variabile)
+  NoteHead.color = #red % (aggiunta dopo l'uso della variabile)
+@end example
+
+Se ben organizzate, le variabili @code{\layout} possono essere un
+valido strumento per strutturare le formattazioni dei sorgenti, e anche
+per ripristinare la configurazione di @code{\layout} a uno stato conosciuto.
+
+@seealso
+Guida alla notazione:
+@ref{Changing context default settings}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Impostare la dimensione del rigo
+@subsection Impostare la dimensione del rigo
+@translationof Setting the staff size
+
+@cindex tipo di carattere, impostare la dimensione
+@cindex rigo, impostare la dimensione
+@funindex layout file
+@funindex magnification->font-size
+@funindex magstep
+@funindex set-global-staff-size
+@funindex layout-set-staff-size
+
+La dimensione del rigo (in inglese @strong{staff size}) è 20 punti, che
+corrispondono a un'altezza del rigo di 7.03mm (un punto è uguale a 100/7227
+di un pollice o a 2540/7227 mm).  La dimensione del rigo può essere
+modificata in tre modi:
+
+@enumerate
+
+@item
+Per impostare la dimensione del rigo globalmente per tutti i brani di un
+file (o di un blocco @code{\book}, per essere precisi), usare
+@code{set-global-staff-size}:
+
+@example
+#(set-global-staff-size 14)
+@end example
+
+@noindent
+L'esempio precedente imposta la dimensione del rigo globale a 14pt (4.92mm) e
+ridimensiona proporzionalmente tutti i tipi di carattere.
+
+@item
+Per impostare la dimensione del rigo di una singola partitura in un libro, usare
+@code{layout-set-staff-size} all'interno del blocco @code{\layout} di quel brano:
+
+@example
+\score @{
+  @dots{}
+  \layout @{
+    #(layout-set-staff-size 14)
+  @}
+@}
+@end example
+
+@item
+Per impostare la dimensione del rigo di un singolo rigo di un sistema, usare
+il comando @code{\magnifyStaff}.  Per esempio, le partiture di musica da camera
+incise in modo tradizionale spesso usavano righi per pianoforte di 7mm mentre
+gli altri righi erano solitamente tra 3/5 e 5/7 più grandi (tra 60% e 71%).
+Per ottenere la proporzione 5/7, usare:
+
+@example
+\score @{
+  <<
+    \new Staff \with @{
+      \magnifyStaff #5/7
+    @} @{ @dots{} @}
+    \new PianoStaff @{ @dots{} @}
+  >>
+@}
+@end example
+
+Se si desidera una dimensione del tipo di carattere (@code{fontSize}) ben
+precisa, si può usare la seguente forma:
+
+@example
+\score @{
+  <<
+    \new Staff \with @{
+      \magnifyStaff #(magstep -3)
+    @} @{ @dots{} @}
+    \new PianoStaff @{ @dots{} @}
+  >>
+@}
+@end example
+
+Per emulare l'aspetto delle partiture incise coi metodi tradizionali, è meglio
+evitare di ridurre lo spessore delle linee del rigo.
+
+@end enumerate
+
+
+@subheading Corpo automatico dei tipi di carattere a dimensioni diverse
+
+Il tipo di carattere Feta fornisce simboli musicali in otto dimensioni
+diverse.  Ogni tipo di carattere è calibrato per una specifica dimensione
+del rigo: via via che la dimensione del rigo diventa più piccola, il corpo
+del carattere diventa più grosso, per abbinarsi alle linee del rigo più
+spesse.  Le dimensioni del carattere consigliate sono elencate nella
+seguente tabella:
+
+@multitable @columnfractions .15 .2 .22 .2
+@item @b{nome del tipo di carattere} @tab @b{altezza del rigo (pt)} @tab @b{altezza del rigo (mm)} @tab @b{uso}
+@item feta11 @tab 11.22 @tab 3.9 @tab partiture tascabili
+@item feta13 @tab 12.60 @tab 4.4 @tab
+@item feta14 @tab 14.14 @tab 5.0 @tab
+@item feta16 @tab 15.87 @tab 5.6 @tab
+@item feta18 @tab 17.82 @tab 6.3 @tab canzonieri
+@item feta20 @tab 20    @tab 7.0 @tab parti standard
+@item feta23 @tab 22.45 @tab 7.9 @tab
+@item feta26 @tab 25.2  @tab 8.9 @tab @c modern rental material?
+@end multitable
+
+@seealso
+Guida alla notazione:
+@ref{Selecting notation font size}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@knownissues
+@code{layout-set-staff-size} non modifica la distanza tra le linee del rigo.
+
+
+@node Interruzioni
+@section Interruzioni
+@translationof Breaks
+
+@menu
+* Interruzioni di linea::
+* Interruzioni di pagina::
+@end menu
+
+
+@node Interruzioni di linea
+@subsection Interruzioni di linea
+@translationof Line breaking
+
+@funindex \break
+@funindex \noBreak
+@funindex \autoBreaksOff
+@funindex \autoBreaksOn
+@funindex \autoLineBreaksOff
+@funindex \autoLineBreaksOn
+@cindex manual line breaks
+@cindex breaking lines
+
+Le interruzioni di linea di solito sono determinate automaticamente.  Sono
+decise in modo che le linee non sembrino né fitte né troppo spaziate, e che
+le linee consecutive abbiano una densità simile.
+
+Per forzare manualmente un'interruzione di linea dopo una stanghetta, usare
+il comando @code{\break}:
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'' {
+  c4 c c c | \break
+  c4 c c c |
+}
+@end lilypond
+
+Per impostazione predefinita, un comando @code{\break} nel mezzo di una
+misura viene ignorato e apparirà un avvertimento nella console.  Per forzare
+un'interruzione di linea nel mezzo di una misura, aggiungere una stanghetta
+invisibile con @w{@samp{\bar ""}}:
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'' {
+  c4 c c
+  \bar "" \break
+  c |
+  c4 c c c |
+}
+@end lilypond
+
+Un @code{\break} successivo a una stanghetta viene ignorato se la
+misura precedente termina nel mezzo di una nota, come quando un
+gruppo irregolare inizia e termina in misure diverse.  Per far sì
+che i comandi @code{\break} funzionino in queste situazioni, togliere
+l'incisore @code{Forbid_line_break_engraver} dal contesto @code{Voice}.
+@c TODO: frase originale non chiara - fb
+Nota che le interruzioni di linea forzate manualmente devono essere
+aggiunte in parallelo con la musica:
+
+@lilypond[quote,ragged-right,verbatim]
+\new Voice \with {
+  \remove "Forbid_line_break_engraver"
+} \relative {
+  <<
+    { c''2. \tuplet 3/2 { c4 c c } c2. | }
+    { s1 | \break s1 | }
+  >>
+}
+@end lilypond
+
+Analogalmente, le interruzioni di linea sono normalmente proibite quando le
+travature oltrepassano una stanghetta.  Tale comportamento può essere
+modificato impostando @code{\override Beam.breakable = ##t}:
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'' {
+  \override Beam.breakable = ##t
+  c2. c8[ c | \break
+  c8 c] c2. |
+}
+@end lilypond
+
+Il comando @code{\noBreak} vieta un'interruzione di linea sulla
+stanghetta in cui è inserito.
+
+In una partitura, l'interruzione di linea automatica è vietata per
+la musica compresa tra i comandi @code{\autoLineBreaksOff} e
+@code{\autoLineBreaksOn}.  Per impedire anche le interruzioni di
+pagina, usare i comandi @code{\autoBreaksOff} e @code{\autoBreaksOn}.
+Le interruzioni manuali non sono interessate da questi comandi.
+Nota che bloccare le interruzioni di linea automatiche potrebbe
+far andare la musica oltre il margine destro se questa non può
+essere contenuta in una linea.
+
+Le interruzioni di linea automatiche (ma non le interruzioni di pagina)
+possono essere abilitate per singole stanghette usando
+@code{\once \autoLineBreaksOn} all'inizio di una stanghetta.
+Ciò identifica un'interruzione di linea permessa, invece che forzata.
+
+Le impostazioni fondamentali che influenzano la spaziatura della linea
+sono @code{indent} e @code{line-width}, impostate nel blocco
+@code{\layout}: regolano l'indentazione della prima linea e la
+lunghezza delle linee.
+
+Se @code{ragged-right} è impostato su vero nel blocco @code{\layout}, allora
+i sistemi terminano alla loro naturale lunghezza orizzontale, invece di
+essere allungati orizzontalmente per riempire l'intera linea.  Ciò è
+utile per brevi frammenti e per verificare quanto è stretta la spaziatura
+naturale.
+
+@c TODO Check and add para on default for ragged-right
+
+L'opzione @code{ragged-last} è simile a @code{ragged-right}, ma agisce
+soltanto sull'ultima linea del brano.
+
+@example
+\layout @{
+  indent = 0\mm
+  line-width = 150\mm
+  ragged-last = ##t
+@}
+@end example
+
+@cindex interruzioni di linea regolari
+@cindex musica a quattro battute
+
+Per inserire interruzioni di linea a intervalli regolari usare @code{\break}
+separato da pause spaziatrici e ripetuto con @code{\repeat}.  Per esempio,
+per interrompere le seguenti 28 misure (considerando un tempo di 4/4) esattamente
+ogni 4 misure, usare:
+
+@example
+<<
+  \repeat unfold 7 @{
+    s1 \noBreak s1 \noBreak
+    s1 \noBreak s1 \break
+  @}
+  @{ @var{la vera musica@dots{}} @}
+>>
+@end example
+
+
+@predefined
+@code{\break},
+@code{\noBreak},
+@code{\autoBreaksOff},
+@code{\autoBreaksOn},
+@code{\autoLineBreaksOff},
+@code{\autoLineBreaksOn}.
+@endpredefined
+
+@snippets
+
+@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
+{using-an-extra-voice-for-breaks.ly}
+
+@seealso
+Guida alla notazione:
+@ref{paper variables for line breaking}
+@ref{The layout block}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+Guida al funzionamento interno:
+@rinternals{LineBreakEvent}.
+
+@knownissues
+
+L'inserimento dei comandi @code{\autoLineBreaksOff} o @code{\autoBreaksOff}
+prima della musica produrrà dei messaggi di errore.  Inserire sempre questi
+comandi dopo la musica.
+
+
+@node Interruzioni di pagina
+@subsection Interruzioni di pagina
+@translationof Page breaking
+
+Questa sezione descrive i diversi metodi di interruzione di pagina e
+spiega come modificarli.
+
+@menu
+* Interruzione di pagina manuale::
+* Interruzione di pagina ottimale::
+* Interruzione di pagina minimale::
+* Interruzione di pagina su una linea::
+* Voltata di pagina ottimale::
+@end menu
+
+
+@node Interruzione di pagina manuale
+@unnumberedsubsubsec Interruzione di pagina manuale
+@translationof Manual page breaking
+
+@funindex \pageBreak
+@funindex \noPageBreak
+@funindex \autoPageBreaksOn
+@funindex \autoPageBreaksOff
+@cindex page breaking, manual
+
+L'interruzione di pagina predefinita può essere sovrascritta con i
+comandi @code{\pageBreak} o @code{\noPageBreak}.  Questi comandi,
+analoghi a @code{\break} e @code{\noBreak}, devono essere
+inseriti dopo una stanghetta e forzano o proibiscono l'interruzione
+di pagina in quel punto.  Ovviamente il comando @code{\pageBreak}
+forza anche un'interruzione di linea.
+
+I comandi @code{\pageBreak} e @code{\noPageBreak} possono essere
+inseriti anche nel livello superiore, tra le partiture e i testi
+(nel blocco @code{markup}) di livello superiore.
+
+In un brano, le interruzioni di pagina automatiche sono vietate per
+la musica compresa tra i comandi @code{\autoPageBreaksOff} e
+@code{\autoPageBreaksOn}.  Le interruzioni di pagina manuali non
+sono interessate da questi comandi.
+
+Esistono impostazioni analoghe a @code{ragged-right} e
+@code{ragged-last} che hanno lo stesso effetto sulla spaziatura
+verticale.  Se @code{ragged-bottom} è impostato su @code{#t}, i
+sistemi non saranno giustificati verticalmente.  Quando
+@code{ragged-last-bottom} è impostato su @code{#t} (valore
+predefinito), è permesso dello spazio vuoto in fondo all'ultima
+pagina (o in fondo all'ultima pagina di ciascun
+@code{\bookpart}).  Vedi
+@ref{Fixed vertical spacing paper variables,,Variabili fisse della spaziatura verticale di @code{@bs{}paper}}.
+
+Le interruzioni di pagina sono calcolate dalla funzione @code{page-breaking}.
+LilyPond fornisce tre algoritmi per calcolare le interruzioni di pagina:
+@code{ly:optimal-breaking}, @code{ly:page-turn-breaking} e
+@code{ly:minimal-breaking}.  Quello predefinito è
+@code{ly:optimal-breaking}, ma il valore può essere modificato nel
+blocco @code{\paper}:
+
+@example
+\paper @{
+  page-breaking = #ly:page-turn-breaking
+@}
+@end example
+
+@funindex \bookpart
+
+Quando un libro ha molte partiture e pagine, il problema delle interruzioni
+di pagina potrebbe essere difficile da risolvere e richiedere lunghi tempi
+di elaborazione e molta memoria.  Per semplificare il processo di interruzione
+delle pagine, si usano i blocchi @code{\bookpart} per dividere il libro in
+varie parti: in questo modo l'interruzione di pagina si verifica separatamente
+in ciascuna parte.  Si possono anche usare algoritmi di interruzione di
+pagina diversi per le diverse parti del libro.
+
+@example
+\bookpart @{
+  \header @{
+    subtitle = "Prefazione"
+  @}
+  \paper @{
+     %% In una parte contenente soprattutto testo,
+     %% ly:minimal-breaking potrebbe essere preferibile
+     page-breaking = #ly:minimal-breaking
+  @}
+  \markup @{ @dots{} @}
+  @dots{}
+@}
+\bookpart @{
+  %% In questa parte, contenente musica, si usa l'algoritmo di
+  %% interruzione di pagina ottimale.
+  \header @{
+    subtitle = "Primo movimento"
+  @}
+  \score @{ @dots{} @}
+  @dots{}
+@}
+@end example
+
+
+@predefined
+@code{\pageBreak},
+@code{\noPageBreak},
+@code{\autoPageBreaksOn},
+@code{\autoPageBreaksOff}.
+@endpredefined
+
+@seealso
+Guida alla notazione:
+@ref{paper variables for page breaking}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@knownissues
+
+Il prefisso @code{\once} non funziona con i comandi @code{\autoPageBreaksOn}
+e @code{\autoPageBreaksOff}.  Se l'interruzione di pagina automatica è
+disabilitata e poi viene abilitata per permettere un'interruzione di
+pagina, deve restare attiva per alcune battute (il numero preciso di
+battute dipende dalla partitura) prima di essere disattivata, altrimenti
+la possibilità di interrompere la pagina non verrà considerata.
+
+
+@node Interruzione di pagina ottimale
+@unnumberedsubsubsec Interruzione di pagina ottimale
+@translationof Optimal page breaking
+
+@funindex ly:optimal-breaking
+
+La funzione @code{ly:optimal-breaking} è il metodo predefinito di LilyPond
+per determinare le interruzioni di pagina.  Tenta di individuare un'interruzione
+di pagina che minimizzi la densità e l'allungamento, sia orizzontalmente che
+verticalmente.  Diversamente da @code{ly:page-turn-breaking}, non prende in
+considerazione le voltate di pagina.
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Interruzione di pagina minimale
+@unnumberedsubsubsec Interruzione di pagina minimale
+@translationof Minimal page breaking
+
+@funindex ly:minimal-breaking
+
+La funzione @code{ly:minimal-breaking} fa dei calcoli minimi
+per valutare l'interruzione di pagina: riempie una pagina col
+maggior numero possibile di sistemi prima di passare a quella
+successiva.  Dunque potrebbe essere preferibile per le partiture
+con molte pagine, per le quali le altre funzioni di interruzione
+di pagina potrebbero essere troppo lente o richiedere troppa
+memoria, o con molto testo.  Si abilita con:
+
+@example
+\paper @{
+  page-breaking = #ly:minimal-breaking
+@}
+@end example
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Interruzione di pagina su una linea
+@unnumberedsubsubsec Interruzione di pagina su una linea
+@translationof One-line page breaking
+
+@funindex ly:one-line-breaking
+
+La funzione @code{ly:one-line-breaking} è un algoritmo di interruzione
+di pagina per uso speciale in quanto pone ogni brano su una sola pagina e
+una singola linea.  Tale funzione non fa apparire titoli e margini,
+viene mostrato solo il brano musicale.
+
+La larghezza della pagina sarà regolata in modo che il brano più
+lungo stia su una sola linea.  In particolare, le variabili @code{paper-width},
+@code{line-width} e @code{indent} del blocco @code{\paper} saranno
+ignorati, sebbene @code{left-margin} e @code{right-margin} saranno
+comunque considerati.  L'altezza della pagina resterà invariata.
+
+
+@node Voltata di pagina ottimale
+@unnumberedsubsubsec Voltata di pagina ottimale
+@translationof Optimal page turning
+
+@funindex ly:page-turn-breaking
+
+È spesso necessario trovare una configurazione delle interruzioni di
+pagina in cui ci sia una pausa al termine di ogni due pagine.
+In questo modo il musicista può voltare la pagina senza perdere
+le note.  La funzione @code{ly:page-turn-breaking} tenta di trovare
+un'interruzione di pagina che minimizzi densità e allungamento, ma
+con l'ulteriore restrizione che le voltate di pagina sono permesse
+solo in punti specifici.
+
+Ci sono due passi da seguire per usare questa funzione.  Prima
+occorre abilitarla nel blocco @code{\paper}, come è spiegato in
+@ref{Page breaking}.  Poi bisogna indicare alla funzione dove
+sono permesse le interruzioni di pagina.
+
+Ci sono due modi per fare il secondo passo.  Si può specificare
+manualmente ogni potenziale voltata di pagina, inserendo
+@code{\allowPageTurn} nei punti adatti del file di input.
+
+Oppure, se ciò è troppo noioso, si può aggiungere l'incisore
+@code{Page_turn_engraver} a un contesto Staff o Voice.  L'incisore
+@code{Page_turn_engraver} analizzerà il contesto in cerca di sezioni
+senza note (non cerca pause, bensì l'assenza di note, in modo che
+la polifonia su un singolo rigo con pause in una delle parti non
+confonda @code{Page_turn_engraver}).  Quando trova una sezione
+senza note abbastanza lunga, @code{Page_turn_engraver} inserirà il
+comando @code{\allowPageTurn} nella stanghetta finale di quella
+sezione, a meno che non ci sia una stanghetta @q{speciale} (come
+una doppia stanghetta), nel qual caso il comando @code{\allowPageTurn}
+sarà inserito nella stanghetta finale @qq{speciale} della sezione.
+
+@funindex minimumPageTurnLength
+L'incisore @code{Page_turn_engraver} legge la proprietà di contesto
+@code{minimumPageTurnLength} per determinare quanto deve essere lunga
+una sezione senza note prima che una voltata di pagina sia considerata.
+Il valore predefinito di @code{minimumPageTurnLength} è
+@code{(ly:make-moment 1/1)}.  Per disabilitare le voltate di pagina,
+impostarla su un valore @qq{molto grande}.
+
+@example
+\new Staff \with @{ \consists "Page_turn_engraver" @}
+@{
+  a4 b c d |
+  R1 | % voltata di pagina permessa qui
+  a4 b c d |
+  \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2)
+  R1 | % voltata di pagina non permessa qui
+  a4 b r2 |
+  R1*2 | % voltata di pagina permessa qui
+  a1
+@}
+@end example
+
+@funindex minimumRepeatLengthForPageTurn
+In caso di ripetizioni con finali alternativi, @code{Page_turn_engraver}
+permetterà una voltata di pagina durante la ripetizione soltanto se c'è
+abbastanza tempo all'inizio e alla fine della ripetizione per voltare
+indietro la pagina.  Se la ripetizione è molto breve, si può usare
+@code{Page_turn_engraver} anche per disabilitare le voltate impostando
+un valore per la proprietà di contesto @code{minimumRepeatLengthForPageTurn},
+dato che @code{Page_turn_engraver} consente le voltate soltanto nelle ripetizioni
+la cui durata sia maggiore di questo valore.
+
+I comandi per le voltate di pagina (@code{\pageTurn}, @code{\noPageTurn}
+e @code{\allowPageTurn}), possono essere usati anche nel livello superiore,
+nei blocchi markup di livello superiore e tra una partitura e l'altra.
+
+@predefined
+@funindex \pageTurn
+@code{\pageTurn},
+@funindex \noPageTurn
+@code{\noPageTurn},
+@funindex \allowPageTurn
+@code{\allowPageTurn}.
+@endpredefined
+
+@seealso
+Guida alla notazione:
+@ref{paper variables for line breaking}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@knownissues
+Usare soltanto un incisore @code{Page_turn_engraver} per partitura.  Se ce
+n'è più d'uno, interferiranno uno con l'altro.
+
+
+@seealso
+Guida alla notazione:
+@ref{Vertical spacing}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Spaziatura verticale
+@section Spaziatura verticale
+@translationof Vertical spacing
+
+@cindex vertical spacing
+@cindex spacing, vertical
+
+La spaziatura verticale è regolata da tre elementi: la quantità di
+spazio disponibile (ovvero il formato e i margini), la quantità di
+spazio tra i sistemi e la quantità di spazio tra i righi di un
+sistema.
+
+@menu
+* Spaziatura verticale flessibile all'interno dei sistemi::
+* Posizionamento esplicito di righi e sistemi::
+* Elusione delle collisioni verticali::
+@end menu
+
+
+@node Spaziatura verticale flessibile all'interno dei sistemi
+@subsection Spaziatura verticale flessibile all'interno dei sistemi
+@translationof Flexible vertical spacing within systems
+
+@cindex distanza tra i righi
+@cindex righi, distanza
+@cindex spazio tra i righi
+@cindex spazio dentro i sistemi
+
+Tre meccanismi distinti regolano la spaziatura verticale flessibile
+all'interno dei sistemi, uno per ognuna delle seguenti categorie:
+
+@itemize
+
+@item
+@emph{righi non raggruppati},
+
+@item
+@emph{righi raggruppati} (righi con un gruppo come
+@code{ChoirStaff}, etc.), e
+
+@item
+@emph{linee che non sono righi} (come @code{Lyrics}, @code{ChordNames},
+etc.).
+
+@end itemize
+
+@c TODO: Clarify this.  This almost implies that non-staff lines
+@c       have NO effect on the spacing between staves.  -mp
+
+L'altezza di ogni sistema è determinata in due fasi.  Prima vengono
+spaziati tutti i righi in base alla quantità di spazio disponibile.
+Poi le linee che non sono righi sono distribuite tra i righi.
+
+Nota che i meccanismi di spaziatura trattati in questa sezione regolano
+soltanto la spaziatura verticale dei righi e delle linee (che non sono
+righi) all'interno di singoli sistemi.  La spaziatura verticale tra
+sistemi, partiture, testi e margini separati è regolata dalle variabili
+@code{\paper} trattate in
+@ref{Flexible vertical spacing paper variables,,Variabili @code{@bs{}paper} della spaziatura verticale flessibile}.
+
+@menu
+* Proprietà della spaziatura dentro un sistema::
+* Spaziatura dei righi non raggruppati::
+* Spaziatura dei righi raggruppati::
+* Spaziatura delle linee che non sono righi::
+@end menu
+
+
+@node Proprietà della spaziatura dentro un sistema
+@unnumberedsubsubsec Proprietà della spaziatura dentro un sistema
+@translationof Within-system spacing properties
+
+@funindex staff-affinity
+@funindex staffgroup-staff-spacing
+@funindex staff-staff-spacing
+@funindex nonstaff-unrelatedstaff-spacing
+@funindex nonstaff-relatedstaff-spacing
+@funindex nonstaff-nonstaff-spacing
+@funindex default-staff-staff-spacing
+@funindex minimum-Y-extent
+@funindex extra-offset
+@funindex self-alignment-X
+@funindex X-offset
+@funindex VerticalAxisGroup
+
+I meccanismi di spaziatura verticale dentro un sistema sono regolati da
+due gruppi di proprietà dei grob.  Il primo gruppo è associato al grob
+@code{VerticalAxisGroup}, creato da tutti i righi e tutte le linee che
+non sono righi.  Il secondo gruppo è associato al grob
+@code{StaffGrouper}, che può essere creato da gruppi di righi, ma
+solo se richiamato esplicitamente.  Queste proprietà sono descritte
+una per una alla fine di questa sezione.
+
+Il nome di queste proprietà (con l'eccezione di @code{staff-affinity})
+hanno il formato @code{@var{elemento1}-@var{elemento2}-spacing}, dove
+@code{@var{elemento1}} e @code{@var{elemento2}} sono gli elementi di
+cui determinare la distanza.  Nota che @code{@var{elemento2}} non è
+necessariamente sotto @code{@var{elemento1}}; per esempio,
+@code{nonstaff-relatedstaff-spacing} prenderà le misure verso l'alto a
+partire dalla linea che non è un rigo (nonstaff) se
+@code{staff-affinity} è impostato su @code{UP}.
+
+Ogni distanza è calcolata tra i @emph{punti di riferimento} dei due
+elementi.  Il punto di riferimento di un rigo è il centro verticale
+del suo @code{StaffSymbol} (ovvero la linea centrale se
+@code{line-count} (il numero di linee) è dispari; lo spazio centrale
+se @code{line-count} è pari).  I punti di riferimento per ciascuna linea
+che non è un rigo sono elencati nella seguente tabella:
+
+@multitable {Non-staff line} {Reference point}
+@headitem Linea non-rigo     @tab Punto di riferimento
+@item @code{ChordNames}      @tab linea di base
+@item @code{NoteNames}       @tab linea di base
+@item @code{Lyrics}          @tab linea di base
+@item @code{Dynamics}        @tab metà altezza di @q{m}
+@item @code{FiguredBass}     @tab punto più alto
+@item @code{FretBoards}      @tab linea più alta
+@end multitable
+
+Nell'immagine seguente, le linee orizzontali indicano le posizioni di
+questi punti di riferimento:
+
+@lilypond[quote,noragged-right,line-width=110\mm]
+#(define zero-space '((padding . -inf.0) (basic-distance . 0)))
+
+alignToZero = \with {
+  \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
+  \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
+  \override VerticalAxisGroup.staff-affinity = #DOWN
+  \remove Text_engraver % impedisce di averne due
+  \consists Text_engraver
+}
+lowerCaseChords = \with {
+  chordNameLowercaseMinor = ##t
+}
+labelContext =
+#(define-music-function
+     (context)
+     (string?)
+     #{ s1*0^\markup { \upright {\typewriter #context } } #})
+
+\layout {
+  \context { \Dynamics    \alignToZero }
+  \context { \FiguredBass \alignToZero }
+  \context { \Lyrics      \alignToZero }
+  \context { \NoteNames   \alignToZero }
+  \context { \ChordNames  \alignToZero \lowerCaseChords }
+  \context { \FretBoards  \alignToZero }
+  \context { \Score
+    \omit BarLine
+    \override DynamicText.self-alignment-X = #-1
+    \override FretBoard.X-offset = #1.75
+    \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
+    \textLengthOn
+    \omit TimeSignature
+  }
+}
+
+%% Questi contesti hanno punti di riferimento nella linea di base:
+%%   ChordNames, NoteNames, and Lyrics
+<<
+  \new ChordNames { \chords { \labelContext "ChordNames"  g1:m } }
+  \new NoteNames { s1 |\labelContext "NoteNames"  g1 | }
+  \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
+  \new RhythmicStaff \with { instrumentName = #"linea di base " } s1*3
+>>
+
+%% Il punto di riferimento per Dynamics è la linea centrale della 'm' nel tipo di carattere
+<<
+  \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
+  \new RhythmicStaff \with { instrumentName = #"metà altezza " } s1*3
+>>
+
+%% Il punto di riferimento per FiguredBass è il suo punto più alto
+<<
+  \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
+  \new RhythmicStaff \with { instrumentName = #"punto più alto " } s1
+>>
+
+%% Il punto di riferimento per FretBoards è la linea più alta
+\include "predefined-guitar-fretboards.ly"
+<<
+  \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
+  \new RhythmicStaff \with { instrumentName = #"linea più alta " } s1
+>>
+@end lilypond
+
+Tutte le proprietà di spaziatura verticale del grob (eccetto
+@code{staff-affinity}) usano la stessa struttura della lista
+associativa usata dalle variabili di spaziatura di @code{\paper}
+trattate in
+@ref{Flexible vertical spacing paper variables,,Variabili @code{@bs{}paper} della spaziatura verticale flessibile}.
+Metodi specifici per modificare queste liste sono spiegati in
+@ref{Modifying alists}.  Le proprietà dei grob devono essere
+modificate con un comando @code{\override} dentro un blocco
+@code{\score} o @code{\layout} e non in un blocco
+@code{\paper}.
+
+L'esempio seguente illustra i due modi con cui si possono modificare
+queste liste associative (alist).  La prima dichiarazione trasforma un
+elemento-valore singolarmente, mentre la seconda ridefinisce
+completamente la proprietà:
+
+@example
+\new Staff \with @{
+  \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
+@} @{ @dots{} @}
+
+\new Staff \with @{
+  \override VerticalAxisGroup.default-staff-staff-spacing =
+    #'((basic-distance . 10)
+       (minimum-distance . 9)
+       (padding . 1)
+       (stretchability . 10))
+@} @{ @dots{} @}
+@end example
+
+Per cambiare le impostazioni di spaziatura globalmente, inserirle in
+un blocco @code{\layout}:
+
+@example
+\layout @{
+  \context @{
+    \Staff
+    \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
+  @}
+@}
+@end example
+
+Le impostazioni predefinite delle proprietà di spaziatura verticale dei
+grob sono elencate in @rinternals{VerticalAxisGroup} e
+@rinternals{StaffGrouper}.  Le modifiche predefinite con @code{\override}
+per tipologie specifiche di linee che non sono righi sono elencate
+nelle descrizioni del relativo contesto in @rinternals{Contexts}.
+
+
+@subsubheading Proprietà del grob @code{VerticalAxisGroup}
+
+Le proprietà di @code{VerticalAxisGroup} sono solitamente modificate
+con un @code{\override} nel livello @code{Staff} (o equivalente).
+
+@table @code
+@item staff-staff-spacing
+
+Usata per determinare la distanza tra il rigo corrente e il rigo
+inferiore nello stesso sistema, anche se tra i due si trovano una o
+più linee che non sono righi (come @code{Lyrics}).
+Non è applicata all'ultimo rigo di un sistema.
+
+Inizialmente, la proprietà @code{staff-staff-spacing} di un
+@code{VerticalAxisGroup} è una funzione Scheme che applica le
+proprietà di @code{StaffGrouper} se il rigo fa parte di un
+gruppo, o la proprietà @code{default-staff-staff-spacing} del rigo
+altrimenti.  Questo permette ai righi di essere spaziati diversamente
+quando sono raggruppati.  Per ottenere una spaziatura uniforme
+indipendentemente dal raggruppamento, questa funzione può essere
+sostituita da un alist di spaziatura flessibile, usando la forma
+di override che ridefinisce completamente la variabile, come mostrato
+prima.
+
+@item default-staff-staff-spacing
+Un alist di spaziatura flessibile che definisce la proprietà
+@code{staff-staff-spacing} usata per i righi isolati, a meno che
+@code{staff-staff-spacing} non sia stata impostata esplicitamente
+con un @code{\override}.
+
+@item staff-affinity
+La direzione del rigo da usare per spaziare la linea che non è un rigo.
+Le opzioni sono @code{UP} (su), @code{DOWN} (giù) e
+@code{CENTER} (centro).  Se impostata su @code{CENTER}, la linea
+fuori dal rigo si troverà in un punto equidistante tra i due righi
+più vicini su qualunque lato, a meno che delle collisioni o altre
+costrizioni di spazio non lo impediscano.  Linee (che non sono righi)
+adiacenti dovrebbero avere un valore di @code{staff-affinity} che
+non cresce: per esempio, una linea che non è un rigo impostata su
+@code{UP} non deve seguire immediatamente una linea impostata su
+@code{DOWN}.  Linee che non sono righi in cima a un sistema devono usare
+@code{DOWN}; quelle in fondo @code{UP}.  Impostando
+@code{staff-affinity} per un rigo, questo sarà trattato come
+una linea che non è un rigo.  Impostando @code{staff-affinity} su @code{#f},
+una linea che non è un rigo sarà trattata come un rigo.  Impostando
+@code{staff-affinity} su @code{UP}, @code{CENTER} o @code{DOWN},
+un rigo verrà spaziato come se fosse una linea che non è un rigo.
+
+@item nonstaff-relatedstaff-spacing
+La distanza fra la linea (che non è un rigo) corrente e il rigo più
+vicino nella direzione di @code{staff-affinity}, se non ci sono
+linee che non sono righi tra le due e @code{staff-affinity} è
+impostato su @code{UP} o @code{DOWN}.  Se @code{staff-affinity} è
+impostato su @code{CENTER}, viene usato @code{nonstaff-relatedstaff-spacing}
+per i righi più vicini su @emph{entrambi} i lati, anche se appaiono
+altre linee tra quella corrente e uno qualsiasi dei righi.  Ciò
+significa che il posizionamento di una linea dipende sia dai righi
+che dalle linee circostanti.  Impostando la proprietà @code{stretchability}
+di uno di questi tipi di spaziatura su un piccolo valore, quella spaziatura
+sarà dominante.  Impostando @code{stretchability} su un grande valore, quella
+spaziatura avrà poco effetto.
+
+@item nonstaff-nonstaff-spacing
+La distanza fra la linea (che non è un rigo) corrente e quella successiva
+nella direzione di @code{staff-affinity}, se entrambe sono sullo stesso
+lato del rigo in questione e se @code{staff-affinity} è impostata su
+@code{UP} o @code{DOWN}.
+
+@item nonstaff-unrelatedstaff-spacing
+La distanza fra la linea (che non è un rigo) corrente e il rigo nella
+direzione opposta rispetto a @code{staff-affinity}, se non ci sono
+altre linee tra i due e se @code{staff-affinity} è impostato su
+@code{UP} o @code{DOWN}.  Ciò può servire, per esempio, a imporre
+un padding minimo tra una linea @code{Lyrics} e il rigo al quale non
+appartiene.
+@end table
+
+
+@subsubheading Proprietà del grob @code{StaffGrouper}
+
+Le proprietà di @code{StaffGrouper} sono solitamente modificate con un
+@code{\override} nel livello @code{StaffGroup} (o livello equivalente).
+
+@table @code
+@item staff-staff-spacing
+La distanza tra righi consecutivi del gruppo di righi
+corrente.  La proprietà @code{staff-staff-spacing} del grob
+@code{VerticalAxisGroup} di un singolo rigo può essere
+sovrascritta con varie impostazioni di spaziatura per quel rigo.
+
+@item staffgroup-staff-spacing
+La distanza tra l'ultimo rigo del gruppo di righi corrente e
+il rigo immediatamente successivo nello stesso sistema, anche se
+tra i due righi ci sono una o più linee che non sono righi (come
+@code{Lyrics}).  Non è applicata al rigo inferiore di un sistema.  La
+proprietà @code{staff-staff-spacing} del grob @code{VerticalAxisGroup}
+di un singolo rigo può essere sovrascritta con varie impostazioni di
+spaziatura per quel rigo.
+@end table
+
+@seealso
+Guida alla notazione:
+@ref{Flexible vertical spacing paper variables,,Variabili @code{@bs{}paper} della spaziatura verticale flessibile},
+@ref{Modifying alists}.
+
+File installati:
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
+
+Guida al funzionamento interno:
+@rinternals{Contexts},
+@rinternals{VerticalAxisGroup},
+@rinternals{StaffGrouper}.
+
+
+@node Spaziatura dei righi non raggruppati
+@unnumberedsubsubsec Spaziatura dei righi non raggruppati
+@translationof Spacing of ungrouped staves
+
+I @emph{righi} (come @code{Staff}, @code{DrumStaff},
+@code{TabStaff}, etc.) sono contesti che possono contenere uno o
+più contesti voce, ma non possono contenere altri righi.
+
+Le seguenti proprietà influenzano la spaziatura di righi @emph{non raggruppati}:
+
+@itemize
+@item Proprietà di @code{VerticalAxisGroup}:
+@itemize
+@item @code{default-staff-staff-spacing}
+@item @code{staff-staff-spacing}
+@end itemize
+@end itemize
+
+Queste proprietà del grob sono state descritte una a una in precedenza; vedi
+@ref{Within-system spacing properties}.
+
+Altre proprietà entrano in gioco per i righi che sono parte di un gruppo;
+vedi @ref{Spacing of grouped staves}.
+
+L'esempio seguente mostra come la proprietà @code{default-staff-staff-spacing}
+possa influenzare la spaziatura di righi non raggruppati.  Le stesse
+modifiche applicate a @code{staff-staff-spacing} avrebbero lo stesso
+effetto, ma verrebbero applicate anche nel caso in cui i righi siano
+combinati in uno o più gruppi.
+
+@lilypond[verbatim,quote,staffsize=16]
+\layout {
+  \context {
+    \Staff
+    \override VerticalAxisGroup.default-staff-staff-spacing =
+      #'((basic-distance . 8)
+         (minimum-distance . 7)
+         (padding . 1))
+  }
+}
+
+<<
+  % Questa nota molto bassa ha bisogno di più spazio di quanto 'basic-distance
+  % possa fornirne, dunque la distanza tra questo rigo e quello successivo
+  % è determinato da 'padding.
+  \new Staff { b,2 r | }
+
+  % Qui 'basic-distance fornisce abbastanza spazio, e non c'è bisogno
+  % di comprimere lo spazio (verso 'minimum-distance) per far spazio
+  % per qualcos'altro sulla pagina, dunque la distanza tra questo
+  % rigo e quello successivo è determinato da 'basic-distance.
+  \new Staff { \clef bass g2 r | }
+
+  % Impostando 'padding su un valore negativo, è possibile far sì che
+  % i righi entrino in collisione.  Il più basso valore accettabile per
+  % 'basic-distance è 0.
+  \new Staff \with {
+    \override VerticalAxisGroup.default-staff-staff-spacing =
+      #'((basic-distance . 3.5)
+         (padding . -10))
+  } { \clef bass g2 r | }
+  \new Staff { \clef bass g2 r | }
+>>
+@end lilypond
+
+@seealso
+File installati:
+@file{scm/define-grobs.scm}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+Guida al funzionamento interno:
+@rinternals{VerticalAxisGroup}.
+
+
+@node Spaziatura dei righi raggruppati
+@unnumberedsubsubsec Spaziatura dei righi raggruppati
+@translationof Spacing of grouped staves
+
+Nelle partiture orchestrali e in alte grosse partiture, di norma i righi
+vengono raggruppati.  Lo spazio tra i gruppi è più ampio dello spazio
+tra i righi dello stesso gruppo.
+
+I @emph{gruppi di righi} (come @code{StaffGroup}, @code{ChoirStaff},
+etc.) sono contesti che possono contenere uno o più righi
+simultaneamente.
+
+Le seguenti proprietà influenzano la spaziatura dei righi nei gruppi:
+
+@itemize
+@item Proprietà di @code{VerticalAxisGroup}:
+@itemize
+@item @code{staff-staff-spacing}
+@end itemize
+@item Proprietà di @code{StaffGrouper}:
+@itemize
+@item @code{staff-staff-spacing}
+@item @code{staffgroup-staff-spacing}
+@end itemize
+@end itemize
+
+Queste proprietà dei grob sono descritte una a una in una sezione precedente; vedi
+@ref{Within-system spacing properties}.
+
+L'esempio seguente mostra come le proprietà del grob
+@code{StaffGrouper} possano influenzare la spaziatura dei righi raggruppati:
+
+@lilypond[verbatim,quote,staffsize=16]
+\layout {
+  \context {
+    \Score
+    \override StaffGrouper.staff-staff-spacing.padding = #0
+    \override StaffGrouper.staff-staff-spacing.basic-distance = #1
+  }
+}
+
+<<
+  \new PianoStaff \with {
+    \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
+  } <<
+    \new Staff { c'1 }
+    \new Staff { c'1 }
+  >>
+
+  \new StaffGroup <<
+    \new Staff { c'1 }
+    \new Staff { c'1 }
+  >>
+>>
+@end lilypond
+
+@seealso
+File installati:
+@file{scm/define-grobs.scm}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+Guida al funzionamento interno:
+@rinternals{VerticalAxisGroup},
+@rinternals{StaffGrouper}.
+
+
+@node Spaziatura delle linee che non sono righi
+@unnumberedsubsubsec Spaziatura delle linee che non sono righi
+@translationof Spacing of non-staff lines
+
+Le @emph{linee che non sono righi} (come @code{Lyrics}, @code{ChordNames},
+etc.) sono contesti i cui oggetti della formattazione sono disposti come se
+fossero su dei righi (ovvero su linee orizzontali all'interno dei sistemi).
+Precisamente, le linee che non sono righi sono contesti non-rigo che contengono
+l'incisore @rinternals{Axis_group_engraver}.
+
+Le seguenti proprietà influenzano la spaziatura delle linee che non sono righi:
+
+@itemize
+@item Proprietà di @code{VerticalAxisGroup}:
+@itemize
+@item @code{staff-affinity}
+@item @code{nonstaff-relatedstaff-spacing}
+@item @code{nonstaff-nonstaff-spacing}
+@item @code{nonstaff-unrelatedstaff-spacing}
+@end itemize
+@end itemize
+
+Queste proprietà del grob sono descritte una a una in una sezione
+precedente, vedi @ref{Within-system spacing properties}.
+
+L'esempio seguente mostra come la proprietà
+@code{nonstaff-nonstaff-spacing} influenza la spaziatura di linee
+che non sono un rigo consecutive.  Impostando l'elemento
+@code{stretchability} su un valore molto alto, il testo vocale
+riesce a allungarsi molto più del solito:
+
+@lilypond[verbatim,quote,staffsize=16]
+\layout {
+  \context {
+    \Lyrics
+    \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
+  }
+}
+
+\new StaffGroup
+<<
+  \new Staff \with {
+    \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
+  } { c'1 }
+  \new Lyrics \with {
+    \override VerticalAxisGroup.staff-affinity = #UP
+  } \lyricmode { up }
+  \new Lyrics \with {
+    \override VerticalAxisGroup.staff-affinity = #CENTER
+  } \lyricmode { center }
+  \new Lyrics \with {
+    \override VerticalAxisGroup.staff-affinity = #DOWN
+  } \lyricmode { down }
+  \new Staff { c'1 }
+>>
+@end lilypond
+
+@seealso
+File installati:
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+@c @lsr{spacing,page-spacing.ly},
+@c @lsr{spacing,alignment-vertical-spacing.ly}.
+
+Guida al funzionamento interno:
+@rinternals{Contexts},
+@rinternals{VerticalAxisGroup}.
+
+
+@node Posizionamento esplicito di righi e sistemi
+@subsection Posizionamento esplicito di righi e sistemi
+@translationof Explicit staff and system positioning
+
+Un modo per comprendere i meccanismi di spaziatura verticale
+appena spiegati è di considerarli come un insieme di impostazioni
+che regolano la quantità di @emph{padding} verticale tra righi
+e tra sistemi.
+
+È possibile gestire la spaziatura verticale in un modo diverso
+usando @code{NonMusicalPaperColumn.line-break-system-details}.
+Mentre i meccanismi di spaziatura verticale flessibile specificano
+il padding verticale, @code{NonMusicalPaperColumn.line-break-system-details}
+indica precisamente le posizioni verticali esatte sulla pagina.
+
+@code{NonMusicalPaperColumn.line-break-system-details} accetta una
+lista associativa di tre diverse impostazioni:
+
+@itemize
+@item @code{X-offset}
+@item @code{Y-offset}
+@item @code{alignment-distances}
+@end itemize
+
+Le modifiche del grob con @code{\override}, incluse quelle per @code{NonMusicalPaperColumn}
+come nell'esempio successivo, possono trovarsi in uno di questi tre diversi
+punti del file di input:
+
+@itemize
+@item direttamente in mezzo alle note
+@item in un blocco @code{\context}
+@item nel blocco @code{\with}
+@end itemize
+
+Quando si modifica @code{NonMusicalPaperColumn}, si usa il solito
+comando @code{\override} nei blocchi @code{\context} e nel blocco
+@code{\with}.  Invece quando si modifica
+@code{NonMusicalPaperColumn} in mezzo alle note,
+si usa il comando speciale @code{\overrideProperty}.  Ecco alcuni
+esempi di modifiche di @code{NonMusicalPaperColumn} col comando
+speciale @code{\overrideProperty}:
+
+@example
+\overrideProperty NonMusicalPaperColumn.line-break-system-details
+  #'((X-offset . 20))
+
+\overrideProperty NonMusicalPaperColumn.line-break-system-details
+  #'((Y-offset . 40))
+
+\overrideProperty NonMusicalPaperColumn.line-break-system-details
+  #'((X-offset . 20)
+     (Y-offset . 40))
+
+\overrideProperty NonMusicalPaperColumn.line-break-system-details
+  #'((alignment-distances . (15)))
+
+\overrideProperty NonMusicalPaperColumn.line-break-system-details
+  #'((X-offset . 20)
+     (Y-offset . 40)
+     (alignment-distances . (15)))
+@end example
+
+Per comprendere come funziona ognuna di queste impostazioni, iniziamo
+vedendo un esempio che non contiene alcuna modifica.
+
+@c \book { } is required in these examples to ensure the spacing
+@c overrides can be seen between systems. -np
+
+@lilypond[verbatim,quote,staffsize=16]
+\header { tagline = ##f }
+\paper { left-margin = 0\mm }
+\book {
+  \score {
+    <<
+      \new Staff <<
+        \new Voice {
+          s1*5 \break
+          s1*5 \break
+          s1*5 \break
+        }
+        \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
+      >>
+      \new Staff {
+        \repeat unfold 15 { d'4 d' d' d' }
+      }
+    >>
+  }
+}
+@end lilypond
+
+Questa partitura isola l'informazione sulle interruzioni di linea e di pagina
+in una voce apposita.  Questa tecnica di creare una voce per le interruzioni
+permette di tenere la formattazione separata dalla musica via via che il
+nostro esempio diventa più complicato.  Vedi @ref{Breaks}.
+
+I @code{\break} espliciti dividono proporzionalmente la musica in cinque
+misure per linea.  La spaziatura verticale è quella predefinita di
+LilyPond.  Per impostare esplicitamente il punto di inizio verticale di
+ogni sistema, possiamo impostare la coppia @code{Y-offset} dell'attributo
+@code{line-break-system-details} del grob @code{NonMusicalPaperColumn}:
+
+@lilypond[verbatim,quote,staffsize=16]
+\header { tagline = ##f }
+\paper { left-margin = 0\mm }
+\book {
+  \score {
+    <<
+      \new Staff <<
+        \new Voice {
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 0))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 40))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 60))
+          s1*5 \break
+        }
+        \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
+      >>
+      \new Staff {
+        \repeat unfold 15 { d'4 d' d' d' }
+      }
+    >>
+  }
+}
+@end lilypond
+
+Nota che @code{line-break-system-details} accetta una lista associativa di
+molti valori, ma ne abbiamo impostato solo uno in questo esempio.  Nota
+anche che la proprietà @code{Y-offset} qui determina la posizione verticale
+esatta sulla pagina in cui ogni nuovo sistema verrà visualizzato.
+
+Ora che abbiamo impostato esplicitamente il punto di inizio verticale di
+ogni sistema, possiamo impostare manualmente anche le distanze verticali
+tra i righi.  Per farlo usiamo la sottoproprietà @code{alignment-distances}
+di @code{line-break-system-details}.
+
+@lilypond[verbatim,quote,staffsize=16]
+\header { tagline = ##f }
+\paper { left-margin = 0\mm }
+\book {
+  \score {
+    <<
+      \new Staff <<
+        \new Voice {
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 20)
+               (alignment-distances . (10)))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 60)
+               (alignment-distances . (15)))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+          #'((Y-offset . 85)
+             (alignment-distances . (20)))
+          s1*5 \break
+        }
+        \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
+      >>
+      \new Staff {
+        \repeat unfold 15 { d'4 d' d' d' }
+      }
+    >>
+  }
+}
+@end lilypond
+
+Nota che qui assegnamo due valori diversi all'attributo
+@code{line-break-system-details} del grob
+@code{NonMusicalPaperColumn}.  Sebbene l'attributo alist
+@code{line-break-system-details} accetti molti altri parametri di
+spaziatura (inclusa, per esempio, una coppia corrispondente
+di @code{X-offset}), è sufficiente impostare soltanto le coppie @code{Y-offset}
+e @code{alignment-distances} per regolare il punto di inizio verticale di
+ogni sistema e ogni rigo.  Infine nota che @code{alignment-distances}
+specifica il posizionamento verticale dei righi ma non dei gruppi di righi.
+
+@lilypond[verbatim,quote,staffsize=16]
+\header { tagline = ##f }
+\paper { left-margin = 0\mm }
+\book {
+  \score {
+    <<
+      \new Staff <<
+        \new Voice {
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 0)
+               (alignment-distances . (30 10)))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 60)
+               (alignment-distances . (10 10)))
+          s1*5 \break
+          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
+            #'((Y-offset . 100)
+               (alignment-distances . (10 30)))
+          s1*5 \break
+        }
+        \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
+      >>
+      \new StaffGroup <<
+        \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
+        \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
+      >>
+    >>
+  }
+}
+@end lilypond
+
+Alcuni punti da considerare:
+
+@itemize
+@item Quando si usa @code{alignment-distances}, il testo vocale e altre linee
+che non sono righi non contano come rigo.
+
+@item Le unità dei numeri assegnati a @code{X-offset},
+@code{Y-offset} e @code{alignment-distances} sono interpretati come
+multipli della distanza tra linee del rigo adiacenti.  Valori positivi
+spostano in su righi e testo, valori negativi li spostano in giù.
+
+@item Dato che le impostazioni di @code{NonMusicalPaperColumn.line-break-system-details}
+illustrate qui permettono il posizionamento di righi e sistemi ovunque
+sulla pagina, è possibile violare i confini del foglio o dei margini o
+perfino sovrapporre righi e sistemi uno sopra l'altro.  Ciò può essere
+evitato assegnando valori ragionevoli a queste diverse impostazioni.
+@end itemize
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Elusione delle collisioni verticali
+@subsection Elusione delle collisioni verticali
+@translationof Vertical collision avoidance
+
+@funindex outside-staff-priority
+@funindex outside-staff-padding
+@funindex outside-staff-horizontal-padding
+
+Intuitivamente, ci sono alcuni oggetti della notazione musicale che
+appartengono al rigo e altri che devono essere disposti fuori dal
+rigo.  Gli oggetti esterni al rigo comprendono i numeri di chiamata,
+il testo e le dinamiche (d'ora in avanti tutti questi elementi saranno
+chiamati oggetti esterni al rigo).  La regola di LilyPond per il
+posizionamento verticale degli oggetti esterni al rigo è di disporli
+il più vicino possibile al rigo ma non così vicino da farli collidere
+con un altro oggetto.
+
+LilyPond usa la proprietà @code{outside-staff-priority} per determinare
+se un grob è un oggetto fuori dal rigo: se @code{outside-staff-priority}
+è un numero, il grob è un oggetto esterno al rigo.  @code{outside-staff-priority}
+indica a LilyPond anche in quale ordine disporre gli oggetti.
+
+LilyPond posiziona prima tutti gli oggetti che non sono esterni al
+rigo.  Quindi ordina gli oggetti esterni al rigo in base al loro valore
+di @code{outside-staff-priority} (in ordine crescente).  Uno per volta, LilyPond
+prende gli oggetti esterni al rigo e li dispone in modo che non entrino in
+collisione con alcun oggetto che sia già stato disposto.  Ovvero, se due
+grob esterni al rigo si contendono lo stesso spazio, quello col valore
+di @code{outside-staff-priority} più basso sarà posto più vicino al rigo.
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'' {
+  c4_"Testo"\pp
+  r2.
+  \once \override TextScript.outside-staff-priority = #1
+  c4_"Testo"\pp % stavolta il testo sarà più vicino al rigo
+  r2.
+  % impostando outside-staff-priority su un non-numero,
+  % disabilitiamo l'elusione automatica delle collisioni
+  \once \override TextScript.outside-staff-priority = ##f
+  \once \override DynamicLineSpanner.outside-staff-priority = ##f
+  c4_"Testo"\pp % qui entrano in collisione
+}
+@end lilypond
+
+Il padding verticale intorno agli oggetti esterni al rigo
+può essere regolato con @code{outside-staff-padding}.
+
+@lilypond[quote,ragged-right,verbatim,staffsize=18]
+\relative {
+  \once \override TextScript.outside-staff-padding = #0
+  a'4-"outside-staff-padding = #0"
+  \once \override TextScript.outside-staff-padding = #3
+  d-"outside-staff-padding = #3"
+  c-"outside-staff-padding predefinito"
+  b-"outside-staff-padding predefinito"
+  R1
+}
+@end lilypond
+
+
+Per impostazione predefinita, gli oggetti esterni al rigo sono disposti
+in modo da evitare la collisione orizzontale con grob posizionati
+precedentemente.  Ciò può portare a situazioni in cui gli oggetti
+sono posizionati uno vicino all'altro orizzontalmente.
+Come è dimostrato nell'esempio successivo, impostando @code{outside-staff-horizontal-padding}
+si aumenta la spaziatura orizzontale richiesta e in questo caso si sposta
+in su il testo per impedire che si avvicini troppo ai tagli addizionali.
+
+@lilypond[quote,ragged-right,verbatim]
+\relative {
+  c''4^"Parola" c c''2
+  R1
+  \once \override TextScript.outside-staff-horizontal-padding = #1
+  c,,4^"Parola" c c''2
+}
+@end lilypond
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Spaziatura orizzontale
+@section Spaziatura orizzontale
+@translationof Horizontal spacing
+
+@cindex spaziatura orizzontale
+@cindex orizzontale, spaziatura
+
+@menu
+* Panoramica sulla spaziatura orizzontale::
+* Nuova spaziatura nel corso di un brano::
+* Modifica della spaziatura orizzontale::
+* Larghezza della linea::
+* Notazione proporzionale::
+@end menu
+
+
+@node Panoramica sulla spaziatura orizzontale
+@subsection Panoramica sulla spaziatura orizzontale
+@translationof Horizontal spacing overview
+
+Il motore della spaziatura traduce le differenze delle durate delle
+note in distanze allungabili (@q{springs}) di diversa lunghezza.  Durate
+più lunghe occupano più spazio, quelle più brevi ne occupano meno.
+Le durate più brevi occupano una quantità fissa di spazio (regolata da
+@code{shortest-duration-space} nell'oggetto @rinternals{SpacingSpanner}).
+Più lunga è la durata, più spazio occupa: raddoppiando una durata
+si aggiunge spazio alla nota di una quantità pari al valore di
+@code{spacing-increment}.
+
+Per esempio, il brano seguente contiene molte minime, semiminime e
+crome; la croma (1/8) è seguita da 1 Larghezza della Testa di Nota (LTN).
+La semiminima (1/4) è seguita da 2 LTN, la minima (1/2) da 3 LTN, etc.
+
+@lilypond[quote,verbatim]
+\relative c' {
+  c2 c4. c8
+  c4. c8 c4. c8
+  c8 c c4 c c
+}
+@end lilypond
+
+Solitamente, @code{spacing-increment} è impostato su 1.2 di spazio rigo, che
+equivale all'incirca alla larghezza della testa di nota, e
+@code{shortest-duration-space} è impostato su 2.0, che significa che
+la nota più breve occupa 2.4 di spazio rigo (2 volte @code{spacing-increment})
+di spazio orizzontale.  Questo spazio è calcolato dal margine sinistro
+del simbolo, dunque le note più brevi sono generalmente seguite da
+un LTN di spazio.
+
+Se si seguisse esattamente la procedura descritta, aggiungendo una
+sola biscroma (1/32) a un brano che usa solo crome e semicrome, la
+spaziatura orizzontale dell'intero brano sarebbe troppo larga.  Infatti
+la nota più breve non è più una semicroma ma una biscroma, aggiungendo
+quindi 1 LTN a ogni nota.  Per impedire ciò, la durata più breve per
+la spaziatura non è la nota più breve, bensì la che ricorre più
+frequentemente nel brano.
+
+La durata più breve più comune viene individuata nel modo seguente.  In ogni
+misura viene determinata la durata più breve e quella più frequente viene
+scelta come base per la spaziatura, con la condizione che tale durata debba
+essere sempre uguale o inferiore a una nota di un ottavo.
+
+Tali durate possono anche essere personalizzate.  Impostando
+@code{common-shortest-duration} in @rinternals{SpacingSpanner}, si
+imposta la durata di base per la spaziatura.  La durata massima per
+essa (solitamente un ottavo), si imposta con @code{base-shortest-duration}.
+
+@funindex common-shortest-duration
+@funindex base-shortest-duration
+@funindex stem-spacing-correction
+@funindex spacing
+
+Note ancora più brevi della nota più breve più comune sono seguite
+da uno spazio proporzionale alla loro durata rispetto a essa.  Dunque
+se aggiungessimo solo alcuni sedicesimi all'esempio precedente, sarebbero
+seguiti dalla metà di LTN:
+
+@lilypond[quote,verbatim]
+\relative { c''2 c4. c8 | c4. c16[ c] c4. c8 | c8 c c4 c c }
+@end lilypond
+
+
+Nel saggio @emph{Essay on automated music engraving}, è spiegato che
+le direzioni del gambo influenzano la spaziatura (vedi
+@ressay{Optical spacing}).  Ciò è regolato dalla proprietà
+@code{stem-spacing-correction} nell'oggetto
+@rinternals{NoteSpacing}.  Questi oggetti sono generati per ogni
+contesto @rinternals{Voice}.  L'oggetto @code{StaffSpacing}
+(generato nel contesto @rinternals{Staff}) contiene la stessa
+propreità per regolare la spaziatura tra gambo e stanghetta.  L'esempio
+seguente mostra queste correzioni, una volta con le impostazioni predefinite
+e una volta con correzioni esagerate:
+
+@lilypond[quote,ragged-right]
+\fixed c' {
+  c4 e'4 e4 b4 |
+  b4 e'4 b4 e'4 |
+  \override Staff.NoteSpacing.stem-spacing-correction = #1.5
+  \override Staff.StaffSpacing.stem-spacing-correction = #1.5
+  c4 e'4 e4 b4 |
+  b4 e'4 b4 e'4 |
+}
+@end lilypond
+
+LilyPond supporta la notazione proporzionale, vedi @ref{Proportional notation}.
+
+@seealso
+Essay on automated music engraving:
+@ressay{Optical spacing}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+Guida al funzionamento interno:
+@rinternals{SpacingSpanner},
+@rinternals{NoteSpacing},
+@rinternals{StaffSpacing},
+@rinternals{NonMusicalPaperColumn}.
+
+@knownissues
+Non esiste un modo semplice per modificare manualmente la spaziatura.  Per
+aggirare il problema si può inserire dell'ulteriore spazio in una partitura,
+regolando il valore di padding di quanto è necessario:
+
+@example
+ \override Score.NonMusicalPaperColumn.padding = #10
+@end example
+
+Non esiste alcun trucco per diminuire la quantità di spazio.
+
+
+@c traduzione del titolo non letterale ma più chiara
+@node Nuova spaziatura nel corso di un brano
+@subsection Nuova spaziatura nel corso di un brano
+@translationof New spacing area
+
+@funindex \newSpacingSection
+@cindex nuova spaziatura nel corso di un brano
+@cindex spaziatura nuova nel corso di un brano
+@cindex note, spaziatura orizzontale
+
+Nuove sezioni con parametri di spaziatura diversi possono essere iniziati
+con @code{newSpacingSection}.  Ciò può essere utile quando ci sono sezioni
+con nozioni diverse di note lunghe e brevi.
+
+Nell'esempio seguente, il cambio di indicazione di tempo introduce una
+nuova sezione, quindi i sedicesimi hanno automaticamente una spaziatura
+un po' più larga.
+
+@lilypond[verbatim,quote]
+\relative c' {
+  \time 2/4
+  c4 c8 c
+  c8 c c4 c16[ c c8] c4
+  \newSpacingSection
+  \time 4/16
+  c16[ c c8]
+}
+@end lilypond
+
+Il comando @code{\newSpacingSection} crea un nuovo oggetto
+@code{SpacingSpanner} in quel momento musicale.
+Se gli aggiustamenti automatici della spaziatura non producono la
+spaziatura richiesta, si possono applicare degli @code{\override}
+manuali alle sue proprietà.  Questi devono essere applicati nello
+stesso momento musicale del comando @code{\newSpacingSection} stesso.
+Avranno effetto sulla spaziatura di tutta la musica seguente finché
+le proprietà non vengono cambiate in una nuova sezione.  Per esempio:
+
+@lilypond[verbatim,quote]
+\relative c' {
+  \time 4/16
+  c16[ c c8]
+  \newSpacingSection
+  \override Score.SpacingSpanner.spacing-increment = #2
+  c16[ c c8]
+  \newSpacingSection
+  \revert Score.SpacingSpanner.spacing-increment
+  c16[ c c8]
+}
+@end lilypond
+
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+Guida al funzionamento interno:
+@rinternals{SpacingSpanner}.
+
+
+@node Modifica della spaziatura orizzontale
+@subsection Modifica della spaziatura orizzontale
+@translationof Changing horizontal spacing
+
+La spaziatura orizzontale può essere modificata tramite la proprietà
+@code{base-shortest-duration}.  Nel prossimo esempio confrontiamo
+la stessa musica, prima senza cambiare la proprietà e poi cambiandola.
+Valori più grandi di @code{ly:make-moment} produrranno musica più densa.
+Nota che @code{ly:make-moment} constituisce una durata, dunque
+@code{1 4} è una durata più lunga di @code{1 16}.
+
+@lilypond[verbatim,line-width=12\cm]
+\score {
+  \relative {
+    g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
+    g4 e e2 | f4 d d2 | c4 e g g | c,1 |
+    d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
+    g4 e e2 | f4 d d2 | c4 e g g | c,1 |
+  }
+}
+@end lilypond
+
+@lilypond[verbatim,line-width=12\cm]
+\score {
+  \relative {
+    g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
+    g4 e e2 | f4 d d2 | c4 e g g | c,1 |
+    d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
+    g4 e e2 | f4 d d2 | c4 e g g | c,1 |
+  }
+  \layout {
+    \context {
+      \Score
+      \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
+    }
+  }
+}
+@end lilypond
+
+
+@snippets
+
+L'impostazione predefinita prevede che la spaziatura nei gruppi irregolari
+dipenda da vari fattori diversi dalla durata (come alterazioni, cambi di
+chiave, etc).  Per ignorare tali simboli e forzare la spaziatura perché
+sia uniforme, usare @code{Score.SpacingSpanner.uniform-stretching}.  Questa
+proprietà può essere modificata soltanto all'inizio di una partitura:
+
+@lilypond[quote,ragged-right,verbatim]
+\score {
+  <<
+    \new Staff {
+      \tuplet 5/4 { c8 c c c c } c8 c c c
+    }
+    \new Staff {
+      c8 c c c \tuplet 5/4 { c8 c c c c }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      \override SpacingSpanner.uniform-stretching = ##t
+    }
+  }
+}
+@end lilypond
+
+Se si imposta @code{strict-note-spacing}, la spaziatura tra le note non tiene
+conto di chiavi, stanghette e abbellimenti:
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\override Score.SpacingSpanner.strict-note-spacing = ##t
+\new Staff \relative {
+  c''8[ c \clef alto c \grace { c16 c } c8 c c]  c32[ c] }
+@end lilypond
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Larghezza della linea
+@subsection Larghezza della linea
+@translationof Line width
+
+@cindex interruzioni di pagina
+@cindex pagina, interruzioni
+
+@funindex indent
+@funindex line-width
+@funindex ragged-right
+@funindex ragged-last
+
+@c Although line-width can be set in \layout, it should be set in paper
+@c block, to get page layout right.
+@c Setting indent in \paper block makes not much sense, but it works.
+
+@c Bit verbose and vague, use examples?
+Le impostazioni fondamentali che influenzano la spaziatura sono @code{indent} e
+@code{line-width}, impostate nel blocco @code{\layout}.  Regolano l'indentazione
+della prima linea musicale e la lunghezza delle linee.
+
+Se @code{ragged-right} è impostato su vero nel blocco @code{\layout}, i sistemi
+terminano alla loro naturale lunghezza orizzontale, invece di essere espansi
+orizzontalmente per riempire tutta la linea.  Ciò è utile in caso di brevi
+frammenti e per verificare quanto è compatta la spaziatura naturale.  L'impostazione
+predefinita è solitamente falso, ma se la partitura ha un solo sistema il
+valore predefinito è vero.
+
+@cindex formattazione della pagina
+@cindex spaziatura verticale
+@cindex verticale, spaziatura
+
+L'opzione @code{ragged-last} è simile a @code{ragged-right}, ma ha effetto
+soltanto sull'ultima linea del brano.  Nessune restrizioni vengono poste su
+quella linea.  Il risultato è simile alla formattazione dei paragrafi di testo.
+In un paragrafo l'ultima linea occupa la sua naturale lunghezza orizzontale.
+@c Note that for text there are several options for the last line.
+@c While Knuth TeX uses natural length, lead typesetters use the same
+@c stretch as the previous line.  eTeX uses \lastlinefit to
+@c interpolate between both these solutions.
+
+@example
+\layout @{
+  indent = #0
+  line-width = #150
+  ragged-last = ##t
+@}
+@end example
+
+@seealso
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Notazione proporzionale
+@subsection Notazione proporzionale
+@translationof Proportional notation
+
+LilyPond supporta la notazione proporzionale, un tipo di spaziatura orizzontale
+in cui ogni nota occupa una quantità di spazio orizzontale esattamente
+equivalente alla sua durata musicale.  Questo tipo di spaziatura proporzionale
+può essere paragonata alla spaziatura orizzontale su carta quadrettata.  Alcune
+partiture della fine del ventesimo secolo e dell'inizio del ventunesimo usano
+la notazione proporzionale per chiarire relazioni ritmiche complesse o per
+agevolare il posizionamento della linea del tempo o di altri elementi
+grafici direttamente nella partitura.
+
+LilyPond supporta cinque diverse impostazioni per la notazione proporzionale,
+che possono essere usate insieme o da sole:
+
+@itemize
+@item @code{proportionalNotationDuration}
+@item @code{uniform-stretching}
+@item @code{strict-note-spacing}
+@item @code{\remove "Separating_line_group_engraver"}
+@item @code{\override PaperColumn.used = ##t}
+@end itemize
+
+Nell'esempio seguente analizziamo queste cinque diverse impostazioni di
+notazione proporzionale e valutiamo come esse interagiscono tra loro.
+
+Iniziamo con l'esempio seguente di una misura, che usa la spaziatura
+classica con la giustificazione del rigo disattivata.
+
+@c The initial pitch is not necessary as long as RhythmicStaff is
+@c not preceded by other material in the score, but we don't want
+@c to explain that.
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+  >>
+}
+@end lilypond
+
+La minima all'inizio della misura occupa uno spazio molto inferiore alla metà
+dello spazio orizzontale della misura.  Ugualmente, i sedicesimi e le quintine
+di sedicesimi alla fine della battuta insieme occupano molto più spazio della
+metà dello spazio orizzontale della misura.
+
+Nell'incisione tipografica classica, questa spaziatura è solitamente proprio
+ciò che si desidera, perché è possibile prendere in prestito dello spazio
+orizzontale dalla minima e economizzare lo spazio orizzontale complessivo
+della misura.
+
+D'altra parte, se vogliamo inserire una linea del tempo con tacche o altri
+elementi grafici sopra o sotto la partitura, abbiamo bisogno della notazione
+proporzionale.  Per attivarla si usa l'impostazione proportionalNotationDuration.
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+  >>
+ \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/20)
+    }
+  }
+}
+@end lilypond
+
+La minima all'inizio della misura e le note più veloci nella seconda
+metà della misura ora occupano la stessa quantità di spazio orizzontale.
+Potremmo inserire una linea del tempo con tacche o un'immagine
+grafica sopra o sotto questo esempio.
+
+L'impostazione @code{proportionalNotationDuration} è un'impostazione di
+contesto che si trova in @code{Score}.  Ricordiamo che le impostazioni di
+contesto possono apparire in tre luoghi del file di input: in un blocco
+@code{\with}, in un blocco @code{\context} o direttamente in mezzo alle
+note preceduta dal comando @code{\set}.  Come per tutte le impostazioni di
+contesto, l'utente può scegliere in quale di questi tre luoghi impostare
+@code{proportionalNotationDuration}.
+
+L'impostazione @code{proportionalNotationDuration} prende un solo argomento,
+che è la durata di riferimento in base alla quale tutta la musica verrà
+spaziata.  La funzione Scheme di LilyPond @code{make-moment} prende due
+argomenti: un numeratore e un denominatore che insieme esprimono una qualche
+frazione di una nota intera.  La funzione di chiamata @code{(ly:make-moment 1/20)}
+produce quindi una durata di riferimento di un ventesimo di nota.  Sono ammessi
+anche valori come @code{(ly:make-moment 1/16)}, @code{(ly:make-moment 1/8)} e
+@code{(ly:make-moment 3/97)}.
+
+Come scegliamo la durata di riferimento corretta da passare a
+@code{proportionalNotationDuration}?  Solitamente attraverso un processo di
+prova e errore, iniziando con una durata vicina alla più veloce (o piccola)
+durata del brano.  Durate di riferimento più piccole determinano una spaziatura
+della musica più larga; quelle più grandi causano una spaziatura più stretta.
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/8)
+    }
+  }
+}
+
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/16)
+    }
+  }
+}
+
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/32)
+    }
+  }
+}
+@end lilypond
+
+Nota che una durata di riferimento troppo grande -- come la nota di
+un ottavo, sopra -- determina una spaziatura della musica troppo stretta
+e può causare collisioni tra le teste di nota.  Fare attenzione anche al
+fatto che la notazione proporzionale in generale occupa più spazio orizzontale
+della spaziatura classica.  Insomma, la spaziatura proporzionale fornisce
+chiarezza ritmica al costo dello spazio orizzontale.
+
+Ora vediamo come spaziare in modo ottimale i gruppi irregolari sovrapposti.
+
+Iniziamo esaminando cosa succede al nostro esempio di partenza, con la
+spaziatura classica, quando aggiungiamo un secondo rigo con un diverso
+tipo di gruppo irregolare.
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+    \new RhythmicStaff {
+      \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
+    }
+  >>
+}
+@end lilypond
+
+La spaziatura è pessima perché le note del rigo inferiore spaziate a distanze
+uguali non si allungano in modo uniforme.  Le incisioni classiche contengono
+pochissime terzine complesse e quindi le regole di incisione classica possono
+generare questo tipo di risultato.  Impostando @code{proportionalNotationDuration}
+ciò viene corretto.
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+    \new RhythmicStaff {
+      \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/20)
+    }
+  }
+}
+@end lilypond
+
+Ma se osserviamo con attenzione possiamo vedere che le note della seconda
+metà della nonina hanno una spaziatura leggermente più larga delle note
+della prima parte della nonina.  Per assicurare un allungamento uniforme,
+attiviamo @code{uniform-stretching}, una proprietà di
+@code{SpacingSpanner}.
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+  <<
+    \new RhythmicStaff {
+      c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
+    }
+    \new RhythmicStaff {
+      \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
+    }
+  >>
+  \layout {
+    \context {
+      \Score
+      proportionalNotationDuration = #(ly:make-moment 1/20)
+      \override SpacingSpanner.uniform-stretching = ##t
+    }
+  }
+}
+@end lilypond
+
+Il nostro esempio di due righi ora ha una spaziatura esatta, le relazioni
+ritmiche sono visivamente chiare e possiamo includere una linea del tempo
+con tacche o altro elemento grafico, se lo vogliamo.
+
+Nota che la notazione proporzionale di LilyPond si aspetta che tutte le
+partiture proporzionali impostino l'attributo 'uniform-stretching di
+SpacingSpanner su @code{##t}.  Impostare proportionalNotationDuration senza
+impostare anche l'attributo 'uniform-stretching di SpacingSpanner su
+@code{##t} farà sì, per esempio, che le pause invisibili occupino una quantità
+scorretta di spazio orizzontale.
+
+SpacingSpanner è un grob astratto che si trova nel contesto Score.
+Come per le impostazioni di proportionalNotationDuration, le modifiche
+@code{\override} a SpacingSpanner si possono trovare in uno dei tre diversi
+punti del file di input – nel blocco \with del brano, nel blocco \context
+del brano o direttamente in mezzo alle note.
+
+Per impostazione predefinita, esiste un solo @code{SpacingSpanner} per
+@code{Score}.  Ciò significa che @code{uniform-stretching} è attivato o
+disattivato per l'intera partitura.  Possiamo tuttavia modificare tale
+comportamento e attivare diverse funzionalità di spaziatura in punti
+diversi del brano.  Per farlo si usa il comando @code{\newSpacingSection}.
+Maggiori informazioni in @ref{New spacing area}.
+
+Ora esaminiamo gli effetti dell'incisore @code{Separating_line_group_engraver} e
+vediamo perché le partiture proporzionali solitamente tolgano questo incisore.
+L'esempio seguente mostra che c'è un piccolo spazio @qq{introduttivo} proprio
+prima della prima nota di ogni sistema.
+
+@lilypond[quote,verbatim,ragged-right]
+\paper {
+  indent = #0
+}
+
+\new Staff {
+  c'1
+  \break
+  c'1
+}
+@end lilypond
+
+
+L'ampiezza di questo spazio introduttivo è la stessa sia dopo un'indicazione di
+tempo che dopo un'armatura di chiave o una chiave.
+È l'incisore @code{Separating_line_group_engraver} a causare questo spazio.
+Togliendolo lo spazio diventa zero.
+
+@lilypond[quote,verbatim,ragged-right]
+\paper {
+  indent = #0
+}
+
+\new Staff \with {
+  \remove "Separating_line_group_engraver"
+} {
+  c'1
+  \break
+  c'1
+}
+@end lilypond
+
+Nella notazione proporzionale gli elementi non musicali come le indicazioni di
+tempo, le armature di chiave, le chiavi e le alterazioni sono problematiche.
+Nessuna di queste infatti ha una durata ritmica, ma tutte occupano spazio
+orizzontale.  Questi problemi sono affrontati diversamente dalle varie
+partiture proporzionali.
+
+È possibile evitare i problemi di spaziatura dovuti alle armature di
+chiave semplicemente omettendole.  Questa è un'opzione valida dato che
+la maggior parte delle partiture proporzionali sono di musica contemporanea.
+Lo stesso potrebbe valere per le indicazioni di tempo, specialmente per quelle
+partiture che includono una linea del tempo o altri elementi grafici.  Ma queste
+partiture sono un'eccezione e la maggior parte delle partiture proporzionali
+hanno almeno qualche indicazione di tempo.  Le chiavi e le alterazioni sono
+ancora più fondamentali.
+
+Dunque quali strategie adottare per spaziare elementi non musicali nel contesto
+di musica proporzionale?  Una valida opzione è la proprietà @code{strict-note-spacing}
+di @code{SpacingSpanner}.  Confrontiamo i seguenti due righi:
+
+@lilypond[quote,verbatim,ragged-right]
+\new Staff {
+  \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
+  c''8 8 8 \clef alto d'2 2
+}
+
+\new Staff {
+  \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
+  \override Score.SpacingSpanner.strict-note-spacing = ##t
+  c''8 8 8 \clef alto d'2 2
+}
+@end lilypond
+
+Entrambi sono proporzionali, ma la spaziatura del primo è troppo
+larga a causa del cambio di chiave.  La spaziatura del secondo
+resta invece stretta, perché è attivato strict-note-spacing.
+Attivando strict-note-spacing, la larghezza di indicazioni di tempo,
+armature di chiave, chiavi e alterazioni non ha alcun ruolo
+nell'algoritmo di spaziatura.
+
+Oltre alle impostazioni che abbiamo visto, ce ne sono altre che appaiono
+frequentemente nelle partiture proporzionali, tra cui:
+
+@itemize
+@item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
+@item @code{\set tupletFullLength = ##t}
+@item @code{\override Beam.breakable = ##t}
+@item @code{\override Glissando.breakable = ##t}
+@item @code{\override TextSpanner.breakable = ##t}
+@item @code{\remove "Forbid_line_break_engraver" nel contesto Voice}
+@end itemize
+
+Queste impostazioni spaziano in modo conciso gli abbellimenti, estendono le
+parentesi dei gruppi irregolari per contrassegnare i punti di inizio e di
+fine del ritmo, e permettono agli elementi che si estendono orizzontalmente
+di andare oltre i sistemi e le pagine.  Consultare le sezioni del manuale
+per queste impostazioni.
+
+@seealso
+Guida alla notazione:
+@ref{New spacing area}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Riduzione del numero di pagine di una partitura
+@section Riduzione del numero di pagine di una partitura
+@translationof Fitting music onto fewer pages
+
+Talvolta può capitare di avere uno o due righi su una seconda
+(o terza, o quarta@dots{}) pagina.  Ciò è fastidioso, specialmente
+se c'è molto spazio nelle pagine precedenti.
+
+Quando si studiano i problemi di formattazione, uno strumento irrinunciabile
+è @code{annotate-spacing}, un comando che mostra i valori delle diverse
+variabili di spaziatura.  Maggiori dettagli nella prossima sezione,
+@ref{Displaying spacing}.
+
+@menu
+* Visualizzare la spaziatura::
+* Modificare la spaziatura::
+@end menu
+
+
+@node Visualizzare la spaziatura
+@subsection Visualizzare la spaziatura
+@translationof Displaying spacing
+
+@funindex annotate-spacing
+@cindex spaziatura, visualizzazione della formattazione
+
+Per visualizzare graficamente le dimensioni delle varibili della formattazione
+verticale che possono essere modificate per formattare la pagina, impostare
+@code{annotate-spacing} nel blocco @code{\paper}:
+
+@lilypond[verbatim,quote,papersize=a6landscape]
+\book {
+  \score { { c4 } }
+  \paper { annotate-spacing = ##t }
+}
+@end lilypond
+
+
+@noindent
+Tutte le dimensioni della formattazione sono visualizzate in spazi rigo,
+indipendentemente dalle unità di misura specificate nei blocchi
+@code{\paper} o @code{\layout}.  Nell'esempio qui sopra, l'altezza
+del foglio (@code{paper-height}) ha un valore di 59.75 spazi
+rigo (@code{staff-space}), e la dimensione del rigo (@code{staff-size}) è
+pari a 20 punti (il valore predefinito).  Nota che:
+
+@multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
+
+@item 1 punto
+@tab = (25.4/72.27) mm
+
+@item 1 staff-space
+@tab = (@code{staff-size})/4 pts
+@item
+@tab = (@code{staff-size})/4 * (25.4/72.27) mm
+
+@end multitable
+
+@noindent
+In questo caso, uno @code{staff-space} è uguale all'incirca a
+1.757mm.  Dunque i 59.75 @code{staff-space} di @code{paper-height}
+corrispondono a 105 millimetri, pari all'altezza del formato @code{a6}
+in orientamento orizzontale.  Le coppie (@var{a},@var{b}) sono
+intervalli, dove @var{a} è l'estremo inferiore e @var{b} l'estremo
+superiore dell'intervallo.
+
+@seealso
+Guida alla notazione:
+@ref{Setting the staff size}.
+
+Frammenti:
+@rlsr{Spacing}.
+
+
+@node Modificare la spaziatura
+@subsection Modificare la spaziatura
+@translationof Changing spacing
+
+L'output di @code{annotate-spacing} svela le dimensioni verticali molto
+dettagliatamente.  Maggiori informazioni su come modificare i margini e
+altre variabili di formattazione si trovano in @ref{Page layout}.
+
+Oltre ai margini, ci sono altre opzioni utili per salvare spazio:
+
+@itemize
+@item
+Forzare i sistemi perché si avvicinino il più possibile (per far
+entrare più sistemi possibile in una pagina) mentre sono spaziati in
+modo da non lasciare spazio bianco in fondo alla pagina.
+
+@example
+\paper @{
+  system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
+  ragged-last-bottom = ##f
+  ragged-bottom = ##f
+@}
+@end example
+
+@item
+Forzare il numero dei sistemi.  Ciò può essere utile in due modi.  Il
+semplice impostare un valore, persino lo stesso valore del numero di
+sistemi disposti senza modificare la variabile, può far sì che più
+sistemi riescano a entrare in ogni pagina, perché viene saltato il
+passaggio di valutazione, dando un valore più adatto per ogni pagina.
+Inoltre, forzare davvero una riduzione nel numero di sistemi può far
+risparmiare un'ulteriore pagina.  Per esempio, se la formattazione
+predefinita ha 11 sistemi, la seguente impostazione forzerà la
+formattazione con 10 sistemi.
+
+@example
+\paper @{
+  system-count = #10
+@}
+@end example
+
+@item
+Forzare il numero delle pagine.  Per esempio, la seguente impostazione
+forzerà la formattazione in due pagine.
+
+@example
+\paper @{
+  page-count = #2
+@}
+@end example
+
+@item
+Evitare (o ridurre) gli oggetti che aumentano la dimensione verticale di
+un sistema.  Per esempio, le parentesi delle volte per i finali alternativi
+richiedono ulteriore spazio.  Se questi finali si estendono per due sistemi,
+occupano più spazio che se fossero sullo stesso sistema.  Altro esempio: le
+dinamiche che @qq{spuntano fuori} da un sistema possono essere avvicinate al
+rigo:
+
+@lilypond[verbatim,quote]
+\relative e' {
+  e4 c g\f c
+  e4 c g-\tweak X-offset #-2.7 \f c
+}
+@end lilypond
+
+@item
+Modificare la spaziatura orizzontale tramite @code{SpacingSpanner}.  Maggiori
+informazioni in @ref{Changing horizontal spacing}.  L'esempio seguente mostra
+la spaziatura predefinita:
+
+@lilypond[verbatim,quote]
+\score {
+  \relative {
+    g'4 e e2 |
+    f4 d d2 |
+    c4 d e f |
+    g4 g g2 |
+    g4 e e2 |
+  }
+}
+@end lilypond
+
+@noindent
+L'esempio successivo modifica @code{common-shortest-duration} da un
+valore di @code{1/4} a uno di @code{1/2}.  La nota di un quarto è la
+durata più comune e più breve in questo esempio, dunque rendendola più
+lunga si verifica un effetto @qq{compressione}:
+
+@lilypond[verbatim,quote]
+\score {
+  \relative {
+    g'4 e e2 |
+    f4 d d2 |
+    c4 d e f |
+    g4 g g2 |
+    g4 e e2 |
+  }
+  \layout {
+    \context {
+      \Score
+      \override SpacingSpanner.common-shortest-duration =
+        #(ly:make-moment 1/2)
+    }
+  }
+}
+@end lilypond
+
+@noindent
+La proprietà @code{common-shortest-duration} non può essere modificata in
+modo dinamico, quindi deve essere sempre posta in un blocco @code{\context}
+così che sia applicata all'intera partitura.
+
+@end itemize
+
+@seealso
+Guida alla notazione:
+@ref{Page layout},
+@ref{Changing horizontal spacing}.
+
+Frammenti:
+@rlsr{Spacing}.
+
diff --git a/Documentation/it/texidocs/using-an-extra-voice-for-breaks.texidoc b/Documentation/it/texidocs/using-an-extra-voice-for-breaks.texidoc
new file mode 100644 (file)
index 0000000..0423bed
--- /dev/null
@@ -0,0 +1,14 @@
+%% Translation of GIT committish: a51b7ab55aed341ffd8af27a357212ed7ef528b9
+  texidocit = "
+Spesso è più facile gestire l'informazione sulle interruzioni di linea
+e di pagina tenendola separata dalla musica grazie a un'ulteriore voce
+che contenga solo pause spaziatrici e i comandi
+@code{\\break}, @code{\\pageBreak} e altre informazioni di formattazione.
+
+Questo modello diventa utile specialmente quando si modifica
+@code{line-break-system-details} e altre utili ma lunghe
+proprietà di @code{NonMusicalPaperColumnGrob}.
+
+"
+  doctitleit = "Usare una voce apposita per le interruzioni"
+