]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/it/usage/running.itely
Doc-it: update italian Learning Manual
[lilypond.git] / Documentation / it / usage / running.itely
index be3d3cf0a67955337ae19ebc159d67b5fab00c91..6d9008fa0ee03c58e7bf5ccfb0f9790c355233e4 100644 (file)
@@ -1,14 +1,14 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
 
 @ignore
-    Translation of GIT committish: ccc485525e63f68623bce1c3ca7a2d4fb6e94499
+    Translation of GIT committish: 62b428826f37228ab4644dbaabac7935c17ecdcd
 
     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.15.18"
+@c \version "2.17.6"
 
 
 @node Eseguire lilypond
@@ -55,15 +55,16 @@ obiettivi di questo manuale; si prega di consultare altra documentazione su
 questo argomento se non si conosce la linea di comando.
 
 @menu
-* Utilizzo di lilypond::
-* Opzioni della linea di comando per lilypond::
+* Utilizzo di LilyPond::
+* Opzioni di base della linea di comando per LilyPond::
+* Opzioni avanzate della linea di comando per LilyPond::
 * Variabili d'ambiente::
 * LilyPond in una gabbia chroot::
 @end menu
 
-@node Utilizzo di lilypond
+@node Utilizzo di LilyPond
 @unnumberedsubsec Utilizzo di @command{lilypond}
-@translationof Invoking lilypond
+@translationof Invoking LilyPond
 
 L'eseguibile @command{lilypond} può essere lanciato dalla linea di comando
 nel seguente modo.
@@ -100,44 +101,59 @@ produrrà come output @var{base}@file{-violin.pdf} e
 @var{base}@file{-cello-1.pdf}.
 
 
-@unnumberedsubsubsec Comandi standard da shell
+@unnumberedsubsubsec Usare LilyPond con funzionalità standard della shell
 
-Se la shell (ovvero la finestra dei comandi) utilizzata supporta le normali
-redirezioni, potrebbe essere utile usare i seguenti comandi per dirigere
-l'output di una console in un file:
+Dato che LilyPond è un'applicazione a linea di comando, si possono sfruttare
+le funzionalità della @q{shell} usata per lanciare LilyPond.
 
-@itemize
+Per esempio:
 
-@item
-@code{lilypond file.ly 1>stdout.log} per redirigere l'output normale
+@example
+lilypond *.ly
+@end example
 
-@item
-@code{lilypond file.ly 2>stderr.log} per redirigere i messaggi di errore
+@noindent
+elaborerà tutti i file LilyPond nella directory corrente.
 
-@item
-@code{lilypond file.ly &>all.log} per redirigere tutto l'output
+Potrebbe essere utile anche redirigere l'output della console (per esempio
+in un file):
 
-@end itemize
+@example
+lilypond file.ly 1> stdout.txt
+
+lilypond file.ly 2> stderr.txt
 
-Consulta la documentazione della tua shell per vedere se supporta queste
-opzioni o se la sintassi è diversa.  Nota che questi sono comandi shell
-e non hanno niente a che fare con lilypond.
+lilypond file.ly &> all.txt
+@end example
+
+@noindent
+Questi tre comandi redirigono rispettivamente l'output @q{normale}, gli
+@q{errori} o @q{tutto} in un file di testo.  Consulta la documentazione
+della tua shell, del prompt dei comandi (Windows), delle applicazioni
+Terminale o Console (MacOS X), per vedere se la redirezione dell'output
+è supportata o se la sintassi è diversa.
 
 
-@node Opzioni della linea di comando per lilypond
-@unnumberedsubsec Opzioni della linea di comando per @command{lilypond}
-@translationof Command line options for lilypond
+@node Opzioni di base della linea di comando per LilyPond
+@unnumberedsubsec Opzioni di base della linea di comando per LilyPond
+@translationof Basic command line options for LilyPond
 
 @cindex Utilizzo di @command{lilypond}
 @cindex opzioni della linea di comando per @command{lilypond}
 @cindex linea di comando, opzioni di
-@cindex switches
+@cindex switch
 
 Sono contemplate le seguenti opzioni:
 
 @table @code
 
-@item -e,--evaluate=@var{espressione}
+@item -d, --define-default=@var{variabile}=@var{valore}
+Si veda @ref{Advanced command line options for LilyPond}.
+
+@cindex Scheme, valutazione dell'espressione
+@cindex valutazione dell'espressione, Scheme
+
+@item -e, --evaluate=@var{espressione}
 Valuta l'@var{espressione} di Scheme prima di analizzare qualsiasi file @file{.ly}.
 Si possono specificare varie opzioni @option{-e}; saranno analizzate in modo
 sequenziale.
@@ -159,194 +175,104 @@ nella linea di comando, e includi
 @noindent
 in cima al file @code{.ly}.
 
-@item -f,--format=@var{formato}
-Formati di output.  Come @code{formato} si può scegliere tra
-@code{ps}, @code{pdf}, e @code{png}.
-
-Esempio: @code{lilypond -fpng @var{file}.ly}
-
-
-
-@item -d,--define-default=@var{variabile}=@var{valore}
-Imposta l'opzione interna del programma, @var{variabile}, al valore di Scheme
-@var{valore}.  Se @var{valore} non viene specificato, allora viene usato
-@var{#t}.  Per disabilitare un'opzione, si può usare il prefisso @code{no-}
-prima della @var{variabile}, ad esempio
-
-@cindex punta e clicca, linea di comando
-
-@example
--dno-point-and-click
-@end example
-
-@noindent
-è equivalente a
-@example
--dpoint-and-click='#f'
-@end example
-
-Di seguito alcune opzioni interessanti.
-
-@cindex aiuto, linea di comando
-
-@table @samp
-@item help
-L'esecuzione di @code{lilypond -dhelp} mostrerà tutte le opzioni disponibili
-di @option{-d}.
-
-@cindex paper-size, linea di comando
-
-@item paper-size
-Questa opzione imposta la dimensione predefinita del foglio,
-@example
--dpaper-size=\"letter\"
-@end example
-
-@noindent
-Nota che la stringa deve essere compresa tra virgolette precedute dal
-segno di escape ( @code{\"} ).
-@c Match " in previous line to help context-sensitive editors
-
-@cindex safe, linea di comando
-
-@item safe
-Non si fida dell'input nel file @code{.ly}.
-
-Quando la formattazione di LilyPond viene messa a disposizione tramite un server
-web, si @b{DEVE} passare l'opzione @option{--safe} o l'opzione @option{--jail}.  L'opzione
-@option{--safe} impedirà che il codice Scheme presente nell'input possa fare uno
-scempio, ad esempio
-
-@quotation
-@verbatim
-#(system "rm -rf /")
-{
-  c4^$(ly:gulp-file "/etc/passwd")
-}
-@end verbatim
-@end quotation
+@warning{Gli utenti Windows devono usare i doppi apici invece dei singoli apici.}
 
-L'opzione @option{-dsafe} serve a valutare le espressioni Scheme presenti nell'input
-in uno speciale modulo di sicurezza.  Questo modulo di sicurezza è derivato dal
-modulo GUILE @file{safe-r5rs}, ma aggiunge alcune funzioni del
-LilyPond API.  Queste funzioni sono elencate in @file{scm/safe-lily.scm}.
+@cindex output, formato
+@cindex formato, output
 
-Inoltre, la modalità sicura non permette le direttive @code{\include} e
-disabilita l'uso del backslash nelle stringhe @TeX{}.
-
-In modalità sicura, non è possibile importare le variabili di LilyPond
-in Scheme.
-
-@option{-dsafe} @emph{non} rileva il sovrautilizzo di risorse.  È ancora possibile
-far sì che il programma rimanga in sospeso per un tempo indefinito, ad esempio
-alimentando il backend con strutture di dati cicliche.  Dunque se si vuole usare
-LilyPond su un server web pubblicamente accessibile, si deve limitare il processo
-nell'uso della CPU e della memoria.
-
-La modalità sicura bloccherà la compilazione di molti utili frammenti di codice
-LilyPond.  L'opzione @option{--jail} è un'alternativa più sicura, ma richiede
-più lavoro per configurarla.
-
-@cindex formato di output, impostare il
-@item backend
-il formato di output da usare per il back-end.  Per il @code{formato} si può
-scegliere tra
-@table @code
-@item ps
-@cindex PostScript, output
- per PostScript.
-
-  I file Postscript includono i tipi di carattere TTF, Type1 e OTF.  Non vengono
-  inclusi i sottoinsiemi di questi tipi.  Se si usa un set di caratteri orientali,
-  si possono ottenere file di grosse dimensioni.
+@item -f, --format=@var{formato}
+Formati di output.  Come @code{formato} si può scegliere tra
+@code{ps}, @code{pdf} e @code{png}.
 
-@item eps
+Esempio: @code{lilypond -fpng @var{file}.ly}
 
-@cindex Postscript, incapsulato
-@cindex EPS (Encapsulated PostScript)
+@item -h, --help
+Mostra una sintesi dell'utilizzo.
 
- per PostScript incapsulato.  Invia ogni pagina (sistema) in un file
-@file{EPS} separato, senza font, e in un unico file @file{EPS} con
-tutte le pagine (sistemi) inclusi i font.
+@item -H, --header=@var{CAMPO}
+Estrae un campo dell'intestazione nel file @file{NOME.@var{CAMPO}}.
 
-Questa è la modalità predefinita di @command{lilypond-book}.
+@item -i, --init=@var{file}
+Imposta il file di inizializzazione su @var{file} (predefinito: @file{init.ly}).
 
-@item svg
+@cindex ricerca dei file
+@cindex percorso di ricerca
 
-@cindex SVG (Scalable Vector Graphics)
+@item -I, --include=@var{directory}
 
- per ottenere SVG (Scalable Vector Graphics).
+È possibile assegnare più opzioni -I.  La ricerca inizierà nella prima
+Aggiunge @var{directory} al percorso di ricerca per i file di input.
+directory definita, e se il file da includere non viene trovato
+la ricerca continuerà nelle directory seguenti.
 
- Crea un singolo file SVG, senza font incorporati, per ogni pagina
- dell'output.  Si raccomanda di installare i font Century
- Schoolbook, inclusi nell'installazione di LilyPond, per una resa
- ottimale.  In UNIX basta copiare questi font dalla directory di
- LilyPond (solitamente
- @file{/usr/share/lilypond/VERSION/fonts/otf/}) in
- @file{~/.fonts/}.  L'output SVG dovrebbe essere compatibile con qualsiasi
- editor SVG o user agent.
+@cindex gabbia chroot, esecuzione all'interno di
 
-@item scm
+@item -j, --jail=@var{utente},@var{gruppo},@var{gabbia},@var{directory}
+Esegue @command{lilypond} in una gabbia chroot.
 
-@cindex Scheme, estrazione di
+L'opzione @option{--jail} fornisce un'alternativa più flessibile a
+@option{--safe} quando la formattazione di LilyPond è messa a disposizione attraverso
+un server web o quando LilyPond esegue sorgenti provenienti dall'esterno
+(si veda @ref{Advanced command line options for LilyPond}).
 
- per estrarre i comandi di disegno grezzi e interni, basati su Scheme.
+L'opzione @option{--jail} modifica la radice di @command{lilypond} in
+@var{gabbia} appena prima di iniziare il vero processo di compilazione.  L'utente
+e il gruppo vengono poi modificati per corrispondere a quelli forniti, e la
+directory corrente viene spostata in @var{directory}.  Questa configurazione
+garantisce che non sia possibile (almeno in teoria) uscire dalla gabbia.  Si noti
+che perché @option{--jail} funzioni @command{lilypond} deve essere eseguito come root;
+di solito questo si fa in modo sicuro col comando @command{sudo}.
 
-@item null
- non produce la stampa della partitura; ha lo stesso effetto di @option{-dno-print-pages}.
-@end table
+Configurare una gabbia è una questione un po' delicata, perché bisogna essere
+sicuri che LilyPond possa trovare tutto quello di cui ha bisogno per compilare il
+sorgente @emph{dentro la gabbia}.  Una configurazione tipica comprende i seguenti
+elementi:
 
-Esempio: @code{lilypond -dbackend=svg @var{filename}.ly}
+@table @asis
 
-@item preview
-@cindex preview, linea di comando
-Genera un file di output che contiene i titoli e il primo sistema
-del brano musicale.  Se si usano i blocchi @code{\bookpart}, i titoli e il
-primo sistema di ogni @code{\bookpart} apparirà nell'output.
-I backend @code{ps}, @code{eps}, e @code{svg} supportano questa
-opzione.
+@item Impostare un filesystem distinto
+Si dovrebbe creare un filesystem separato LilyPond, così che possa essere
+montato con opzioni di sicurezza come @code{noexec}, @code{nodev}, e
+@code{nosuid}.  In questo modo è impossibile lanciare degli eseguibili o
+scrivere su un dispositivo direttamente da LilyPond.  Se non si vuole creare
+una partizione separata, si può creare un file di dimensioni ragionevoli e usarlo
+per montare un dispositivo di loop.  Un filesystem separato garantisce inoltre
+che LilyPond non possa scrivere su uno spazio maggiore di quanto permesso.
 
-@item gui
-Viene eseguito senza avvisi e redirige tutto l'output verso un file di log.
+@item Impostare un altro utente
+Per eseguire LilyPond in una gabbia si dovrebbe usare un altro utente e gruppo
+(ad esempio, @code{lily}/@code{lily}) con pochi privilegi.  Ci dovrebbe essere
+una sola directory scrivibile da questo utente, che dovrebbe essere passata in
+@var{dir}.
 
-Nota per gli utenti Windows: Per impostazione predefinita @code{lilypond.exe} mostra
-tutta l'informazione dell'elaborazione in corso nella finestra dei comandi, @code{lilypond-windows.exe}
-invece fa apparire un prompt, privo di informazioni sull'elaborazione, subito
-nella linea di comando.  In questo caso si può usare l'opzione @option{-dgui}
-per redirigere l'output verso un file di log.
+@item Preparare la gabbia
+LilyPond ha bisogno di leggere alcuni file quando viene lanciato.  Tutti questi
+file devono essere copiati nella gabbia, sotto lo stesso percorso in cui appaiono
+nel vero filesystem principale.  Si deve copiare l'intero contenuto dell'installazione
+LilyPond (ad esempio, @file{/usr/share/lilypond}).
 
-@item print-pages
-Genera tutte le pagine, come da impostazione predefinita.  @option{-dno-print-pages} è
-utile in combinazione con @option{-dpreview}.
+Se c'è un problema, il modo più semplice per individuarlo è lanciare
+LilyPond usando @command{strace}, che permetterà di scoprire quali
+file mancano.
 
+@item Eseguire LilyPond
+In una gabbia montata con @code{noexec} è impossibile eseguire qualsiasi
+programma esterno.  Dunque LilyPond deve essere eseguito con un backend che
+non richieda tale programma.  Come è già stato detto, deve essere eseguito
+con privilegi di superutente (che ovviamente perderà immediatamente),
+possibilmente con l'uso di @command{sudo}.  È una buona idea limitare il
+numero di secondi di tempo della CPU che LilyPond può usare (ad esempio con
+@command{ulimit -t}), e, se il sistema operativo lo permette, la quantità di
+memoria che può essere allocata.  Si veda anche @ref{LilyPond in chroot jail}.
 @end table
 
-
-
-@item -h,--help
-Mostra una sintesi dell'utilizzo.
-
-@item -H,--header=@var{CAMPO}
-Estrae un campo dell'intestazione nel file @file{NOME.@var{CAMPO}}.
-
-@cindex ricerca dei file
-@cindex percorso di ricerca
-@item --include, -I=@var{directory}
-Aggiunge @var{directory} al percorso di ricerca per i file di input.
-
-È possibile assegnare più opzioni -I.  La ricerca inizierà nella prima
-directory definita, e se il file da includere non viene trovato
-la ricerca continuerà nelle directory seguenti.
-
-@item -i,--init=@var{file}
-Imposta il file di inizializzazione su @var{file} (predefinito: @file{init.ly}).
-
 @cindex loglevel
-@cindex output verbosity, setting
+@cindex output dettagliato
 
-@item -l,--loglevel=@var{LIVELLO}
+@item -l, --loglevel=@var{LIVELLO}
 Imposta la verbosità dell'output della console su @var{LIVELLO}. I valori possibili sono:
 @table @code
+
 @item NONE
 Nessun output, nemmeno i messaggi di errore.
 
@@ -354,7 +280,7 @@ Nessun output, nemmeno i messaggi di errore.
 Solo i messaggi di errore, niente avvisi o messaggi di elaborazione.
 
 @item WARN
-Avvisi e nessaggi di errore, nessun messaggio di elaborazione.
+Avvisi e messaggi di errore, nessun messaggio di elaborazione.
 
 @item BASIC_PROGRESS
 Messaggi di elaborazione di base (riuscita), avvisi e errori.
@@ -367,108 +293,420 @@ Messaggi di elaborazione, avvisi, errori e ulteriori informazioni di esecuzione.
 
 @item DEBUG
 Tutti i messaggi possibili, incluso l'output verboso di debug.
+
 @end table
 
-@cindex cartella, dirigere l'output in
-@cindex nome del file di output, impostare
+@cindex directory, dirigere l'output in
+@cindex output, impostare il nome del file
+@cindex output, directory
 
-@item -o,--output=@var{FILE} or @var{CARTELLA}
+@item -o, --output=@var{FILE} o @var{CARTELLA}
 Imposta il file di output predefinito @var{FILE} oppure, se una cartella con
 quel nome esiste già, dirige l'output in @var{CARTELLA}, prendendo il nome
 del file dal file di input.  In entrambi i casi verrà aggiunto il suffisso
 appropriato (ad esempio @code{.pdf} per il pdf).
 
-
-@cindex PostScript
+@cindex PS (Postscript), output
+@cindex Postscript (PS), output
+@cindex output, PS (Postscript)
 
 @item --ps
 Genera PostScript.
 
-@cindex Portable Network Graphics (PNG)
+@cindex PNG (Portable Network Graphics), output
+@cindex output, PNG (Portable Network Graphics)
 
 @item --png
-Genera immmagini di ogni pagina in formato PNG.  Questo implica
+Genera immagini di ogni pagina in formato PNG.  Questo implica
 @option{--ps}.  La risoluzione in DPI dell'immagine può essere impostata con
 @example
 -dresolution=110
 @end example
 
-@cindex Portable Document Format (PDF)
+@cindex PDF (Portable Document Format), output
+@cindex output, PDF (Portable Document Format)
 
 @item --pdf
 Genera PDF.  Questo implica @option{--ps}.
 
+@item -v, --version
+Mostra informazioni sulla versione.
 
+@item -V, --verbose
+Aumenta la prolissità: mostra i percorsi completi di tutti i file letti e dà
+informazioni sui tempi.
 
-@item -j,--jail=@var{utente},@var{gruppo},@var{gabbia},@var{directory}
-Esegue @command{lilypond} in una gabbia chroot.
+@item -w, --warranty
+Mostra la garanzia con cui viene distribuito GNU LilyPond.  (Distribuito
+con @strong{NESSUNA GARANZIA}!)
 
-L'opzione @option{--jail} fornisce un'alternativa più flessibile a
-@option{--safe} quando la formattazione di LilyPond è messa a disposizione attraverso
-un server web o quando LilyPond esegue sorgenti provenienti dall'esterno.
+@end table
 
-L'opzione @option{--jail} modifica la radice di @command{lilypond} in
-@var{gabbia} appena prima di iniziare il vero processo di compilazione.  L'utente
-e il gruppo vengono poi modificati per corrispondere a quelli forniti, e la
-directory corrente viene spostata in @var{directory}.  Questa configurazione
-garantisce che non sia possibile (almeno in teoria) uscire dalla gabbia.  Si noti
-che perché @option{--jail} funzioni @command{lilypond} deve essere eseguito come root;
-di solito questo si fa in modo sicuro col comando @command{sudo}.
 
-Configurare una gabbia è una questione un po' delicata, perché bisogna essere
-sicuri che LilyPond possa trovare tutto quello di cui ha bisogno per compilare il
-sorgente @emph{dentro la gabbia}.  Una configurazione tipica comprende i seguenti
-elementi:
+@node Opzioni avanzate della linea di comando per LilyPond
+@unnumberedsubsec Opzioni avanzate della linea di comando per @command{lilypond}
+@translationof Advanced command line options for LilyPond
 
-@table @asis
-@item Impostare un filesystem distinto
-Si dovrebbe creare un filesystem separato LilyPond, così che possa essere
-montato con opzioni di sicurezza come @code{noexec}, @code{nodev}, e
-@code{nosuid}.  In questo modo è impossibile lanciare degli eseguibili o
-scrivere su un dispositivo direttamente da LilyPond.  Se non si vuole creare
-una partizione separata, si può creare un file di dimensioni ragionevoli e usarlo
-per montare un dispositivo di loop.  Un filesystem separato garantisce inoltre
-che LilyPond non possa scrivere su uno spazio maggiore di quanto permesso.
+@table @code
 
-@item Impostare un altro utente
-Per eseguire LilyPond in una gabbia si dovrebbe usare un altro utente e gruppo
-(ad esempio, @code{lily}/@code{lily}) con pochi privilegi.  Ci dovrebbe essere
-una sola directory scrivibile da questo utente, che dovrebbe essere passata in
-@var{dir}.
+@item -d@var{[nome-opzione]}=@var{[valore]},--define-default=@var{[nome-opzione]}=@var{[valore]}
+Imposta l'equivalente funzione interna di Scheme su @var{valore}.
 
-@item Preparare la gabbia
-LilyPond ha bisogno di leggere alcuni file quando viene lanciato.  Tutti questi
-file devono essere copiati nella gabbia, sotto lo stesso percorso in cui appaiono
-nel vero filesystem principale.  Si deve copiare l'intero contenuto dell'installazione
-LilyPond installation (ad esempio, @file{/usr/share/lilypond}).
+@example
+-dbackend=svg
+@end example
 
-Se c'è un problema, il modo più semplice per individuarlo è lanciare
-LilyPond usando @command{strace}, che permetterà di scoprire quali
-file mancano.
+Se non viene specificato un @var{valore}, viene usato il valore
+predefinito.  Per disabilitare un'opzione, si può usare il
+prefisso @code{no-} prima di @var{nome-opzione}, ad esempio
 
-@item Eseguire LilyPond
-In una gabbia montata con @code{noexec} è impossibile eseguire qualsiasi
-programma esterno.  Dunque LilyPond deve essere eseguito con un backend che
-non richieda tale programma.  Come è già stato detto, deve essere eseguito
-con privilegi di superutente (che ovviamente perderà immediatamente),
-possibilmente con l'uso di @command{sudo}.  È una buona idea limitare il
-numero di secondi di tempo della CPU che LilyPond può usare (ad esempio con @command{ulimit
--t}), e, se il sistema operativo lo permette, la quantità di memoria che
-può essere allocata.
+@cindex punta e clicca, linea di comando
+
+@example
+-dpoint-and-click=#f
+@end example
+
+@noindent
+è equivalente a
+@example
+-dno-point-and-click
+@end example
 @end table
 
+@noindent Sono supportate le seguenti opzioni insieme ai loro rispettivi
+valori predefiniti:
 
-@item -v,--version
-Mostra informazioni sulla versione.
+@multitable @columnfractions .33 .16 .51
+@item @strong{Simbolo}
+@tab @strong{Valore}
+@tab @strong{Spiegazione/Opzioni}
 
-@item -V,--verbose
-Aumenta la prolissità: mostra i percorsi completi di tutti i file letti, e dà
-informazioni sui tempi.
+@item @code{anti-alias-factor}
+@tab @code{1}
+@tab Elabora a una risoluzione più alta (usando un certo fattore) e ridimensiona
+il risultato per evitare gli @q{artefatti} nelle immagini @code{PNG}.
 
-@item -w,--warranty
-Mostra la garanzia con cui viene distribuito GNU LilyPond.  (Distribuito
-con @strong{NESSUNA GARANZIA}!)
-@end table
+@item @code{aux-files}
+@tab @code{#t}
+@tab Crea i file @code{.tex}, @code{.texi}, @code{.count} nel backend
+@code{EPS}.
+
+@item @code{backend}
+@tab @code{ps}
+@tab Seleziona il backend.  I file Postscript (predefinito) includono i tipi di
+carattere @code{TTF}, @code{Type1} e @code{OTF}.  Non vengono inclusi i sottoinsiemi
+di questi tipi.  Se si usa un set di caratteri @q{orientali}, si possono ottenere
+file di grosse dimensioni.
+
+@item
+@tab @code{eps}
+@tab Encapsulated PostScript.  Invia ogni pagina (sistema) in un file
+@file{EPS} separato, senza font, e in un unico file @file{EPS} con
+tutte le pagine (sistemi) inclusi i font.  Questa è la modalità
+predefinita di @command{lilypond-book}.
+
+@item
+@tab @code{null}
+@tab non produce la stampa della partitura; ha lo stesso
+effetto di @code{-dno-print-pages}.
+
+@item
+@tab @code{svg}
+@tab Scalable Vector Graphics.  Crea un singolo file SVG, senza font
+incorporati, per ogni pagina dell'output.  Si raccomanda di installare i
+font Century Schoolbook, inclusi nell'installazione di LilyPond, per una
+resa ottimale.  In UNIX basta copiare questi font dalla directory di
+LilyPond (solitamente @file{/usr/share/lilypond/VERSION/fonts/otf/}) in
+@file{~/.fonts/}.  C'è anche un'opzione @code{svg-woff} (sotto) per
+poter usare i file di font woff nel backend SVG.
+
+@item
+@tab @code{scm}
+@tab Estrae i comandi di disegno grezzi e interni, basati su Scheme.
+
+@item @code{check-internal-types}
+@tab @code{#f}
+@tab Controlla l'assegnazione di ogni proprietà per i tipi.
+
+@item @code{clip-systems}
+@tab @code{#f}
+@tab Genera frammenti ritagliati di una partitura.
+
+@item @code{datadir}
+@tab
+@tab Prefisso per i file di dati (sola lettura).
+
+@item @code{debug-gc}
+@tab @code{#f}
+@tab Scarica le statistiche sul debug della memoria.
+
+@item @code{debug-gc-assert-parsed-dead}
+@tab @code{#f}
+@tab Per il debug della memoria: Assicura che tutti i riferimenti agli oggetti
+analizzati siano eliminati. Questa è un'opzione interna e viene abilitata
+automaticamente da @code{`-ddebug-gc'}.
+
+@item @code{debug-lexer}
+@tab @code{#f}
+@tab Debug dell'analizzatore lessicale flex.
+
+@item @code{debug-page-breaking-scoring}
+@tab @code{#f}
+@tab Crea le partiture per diverse configurazioni di interruzione di pagina.
+
+@item @code{debug-parser}
+@tab @code{#f}
+@tab Debug dell'analizzatore bison.
+
+@item @code{debug-property-callbacks}
+@tab @code{#f}
+@tab Debug delle catene cicliche di callback.
+
+@item @code{debug-skylines}
+@tab @code{#f}
+@tab Debug skylines.
+
+@item @code{delete-intermediate-files}
+@tab @code{#t}
+@tab Cancella i file @code{.ps} intermedi e inutilizzabili creati durante
+la compilazione.
+
+@item @code{dump-cpu-profile}
+@tab @code{#f}
+@tab Scarica l'informazione sui tempi (dipendente dal sistema).
+
+@item @code{dump-profile}
+@tab @code{#f}
+@tab Scarica l'informazione sulla memoria e il tempo per ogni file.
+
+@item @code{dump-signatures}
+@tab @code{#f}
+@tab Scarica le firme dell'output di ogni sistema. Usato per testare le regressioni.
+
+@item @code{eps-box-padding}
+@tab @code{#f}
+@tab Sposta il margine sinistro della cornice EPS dell'output della quantità
+specificata (in mm).
+
+@item @code{gs-load-fonts}
+@tab @code{#f}
+@tab Carica i font attraverso Ghostscript.
+
+@item @code{gs-load-lily-fonts}
+@tab @code{#f}
+@tab Carica solo i font LilyPond attraverso Ghostscript.
+
+@item @code{gui}
+@tab @code{#f}
+@tab Esegue il programma senza stampare messaggi e redirige tutto l'output in un file di log.
+@end multitable
+
+@noindent
+@strong{Nota per gli utenti Windows:} Per impostazione predefinita @code{lilypond.exe}
+stampa tutta l'informazione sull'avanzamento nella finestra dei comandi.
+@code{lilypond-windows.exe} non lo fa e riporta un prompt, privo di
+informazioni sull'avanzamento, subito nella linea di comando.  L'opzione
+@option{-dgui} può essere usata in questo caso per redirigere l'output in
+un file di log.
+
+@multitable @columnfractions .33 .16 .51
+@item @code{help}
+@tab @code{#f}
+@tab Mostra questo aiuto.
+
+@item @code{include-book-title-preview}
+@tab @code{#t}
+@tab Include i titoli dei libri nelle immagini di anteprima.
+
+@item @code{include-eps-fonts}
+@tab @code{#t}
+@tab Include i font in file EPS con sistemi separati.
+
+@item @code{include-settings}
+@tab @code{#f}
+@tab Include il file per le impostazioni globali, questo viene incluso prima
+che la partitura sia elaborata.
+
+@item @code{job-count}
+@tab @code{#f}
+@tab Elabora in parallelo, usando il dato numero di lavori.
+
+@item @code{log-file}
+@tab @code{#f [file]}
+@tab Se la stringa @code{FOO} viene assegnata come secondo argomento,
+redirige l'output nel file @code{FOO.log}.
+
+@item @code{max-markup-depth}
+@tab @code{1024}
+@tab Massima profondità per la struttura del blocco markup. Se un blocco markup ha
+più livelli, assume che non terminerà da solo, stampa un avviso e restituisce
+al suo posto un markup vuoto.
+
+@item @code{midi-extension}
+@tab @code{"midi"}
+@tab Imposta l'estensione predefinita per il file MIDI sulla stringa specificata.
+
+@item @code{music-strings-to-paths}
+@tab @code{#f}
+@tab Converte le stringhe di testo in percorsi quando i glifi appartengono a
+un font musicale.
+
+@item @code{paper-size}
+@tab @code{\"a4\"}
+@tab Imposta la dimensione predefinita del foglio.  Nota che la stringa deve
+essere compresa tra virgolette precedute dal segno di escape.
+
+@item @code{pixmap-format}
+@tab @code{png16m}
+@tab Imposta il formato di output di GhostScript per le immagini raster.
+
+@item @code{point-and-click}
+@tab @code{#t}
+@tab Aggiunge i collegamenti @q{punta e clicca} all'output PDF e SVG. Si veda
+@ref{Point and click}.
+
+@item @code{preview}
+@tab @code{#f}
+@tab Crea immagini di anteprima oltre al normale output.
+@end multitable
+
+@noindent
+Questa opzione è supportata da tutti i backend; @code{pdf}, @code{png},
+@code{ps}, @code{eps} e @code{svg}, ma non @code{scm}.  Genera un file
+di output nella forma @code{mioFile.preview.estensione}, contenente i
+titoli e il primo sistema.  Se vengono usati i blocchi @code{\book} o
+@code{\bookpart}, i titoli di @code{\book}, @code{\bookpart} o @code{\score}
+appariranno nell'output, incluso il primo sistema di ogni blocco @code{\score}
+se la variabile @code{print-all-headers} di @code{\paper} è impostata
+su @code{#t}.
+
+Per impedire il normale output, si usano le opzioni @option{-dprint-pages} o
+@option{-dno-print-pages} in base alle proprie esigenze.
+
+@multitable @columnfractions .33 .16 .51
+@item @code{print-pages}
+@tab @code{#t}
+@tab Genera le pagine complete (predefinito).  @option{-dno-print-pages} è
+utile in combinazione con @option{-dpreview}.
+
+@item @code{profile-property-accesses}
+@tab @code{#f}
+@tab Mantiene una statistica delle chiamate di funzione @code{get_property()}.
+
+@item @code{protected-scheme-parsing}
+@tab @code{#t}
+@tab Continua se l'analizzatore coglie degli errori nel codice scheme interno
+al file di input. Se impostato su @code{#f}, in caso di errore si ferma e
+mostra la traccia di stack.
+
+@item @code{read-file-list}
+@tab @code{#f [file]}
+@tab Specifica il nome di un file che contiene una lista di file di input da
+elaborare.
+
+@item @code{relative-includes}
+@tab @code{#f}
+@tab Quando elabora un comando @code{\include}, cerca il file incluso
+in posizione relativa al file corrente (invece che in posizione assoluta).
+
+@item @code{resolution}
+@tab @code{101}
+@tab Imposta la risoluzione per generare immagini @code{PNG} su un certo
+valore (in dpi).
+
+@item @code{safe}
+@tab @code{#f}
+@tab Non si fida dell'input nel file @code{.ly}.
+@end multitable
+
+@noindent
+Quando la formattazione di LilyPond viene messa a disposizione tramite un server
+web, si @b{DEVE} passare l'opzione @option{--safe} o l'opzione @option{--jail}.  L'opzione
+@option{--safe} impedirà che il codice Scheme presente nell'input possa fare uno
+scempio, ad esempio
+
+@quotation
+@verbatim
+#(s ystem "rm -rf /")  % troppo pericoloso per scriverlo correttamente
+{
+  c4^$(ly:gulp-file "/etc/passwd") % malvagio ma non distruttivo
+}
+@end verbatim
+@end quotation
+
+L'opzione @option{-dsafe} serve a valutare le espressioni Scheme presenti nell'input
+in uno speciale modulo di sicurezza.  Questo modulo di sicurezza è derivato dal
+modulo GUILE @file{safe-r5rs}, ma aggiunge alcune funzioni del
+LilyPond API.  Queste funzioni sono elencate in @file{scm/safe-lily.scm}.
+
+Inoltre, la modalità sicura non permette le direttive @code{\include} e
+disabilita l'uso del backslash nelle stringhe @TeX{}.  In modalità sicura,
+non è possibile importare le variabili di LilyPond in Scheme.
+
+@option{-dsafe} @emph{non} rileva il sovrautilizzo di risorse.  È ancora possibile
+far sì che il programma rimanga in sospeso per un tempo indefinito, ad esempio
+alimentando il backend con strutture di dati cicliche.  Dunque se si vuole usare
+LilyPond su un server web pubblicamente accessibile, si deve limitare il processo
+nell'uso della CPU e della memoria.
+
+La modalità sicura bloccherà la compilazione di molti utili frammenti di codice
+LilyPond.
+
+L'opzione @option{--jail} è un'alternativa più sicura, ma richiede più lavoro
+per configurarla.  Si veda @ref{Basic command line options for LilyPond}.
+
+@multitable @columnfractions .33 .16 .51
+@item @code{separate-log-files}
+@tab @code{#f}
+@tab Per i file di input @code{FILE1.ly}, @code{FILE2.ly}, etc. salva i dati di
+log nei file @code{FILE1.log}, @code{FILE2.log}, @dots{}
+
+@item @code{show-available-fonts}
+@tab @code{#f}
+@tab Elenca i nomi di font disponibili.
+
+@item @code{strict-infinity-checking}
+@tab @code{#f}
+@tab Forza il blocco del programma quando si incontrano eccezioni @code{Inf} e
+@code{NaN} sui numeri in virgola mobile.
+
+@item @code{strip-output-dir}
+@tab @code{#t}
+@tab Non usa le directory dei file di input per costruire i nomi dei file
+di output.
+
+@item @code{strokeadjust}
+@tab @code{#f}
+@tab Forza l'aggiustamento del tratto da parte di PostScript.  Questa opzione
+è utile quando il PDF è generato dall'output PostScript (l'aggiustamento
+del tratto di solito è abilitato automaticamente per gli strumenti bitmap
+a bassa risoluzione).  Senza questa opzione, i lettori PDF tendono a
+produrre larghezze dei gambi molto variabili alle risoluzioni tipiche
+dei monitor.  L'opzione non produce effetti visibili sulla qualità di
+stampa e causa un notevole aumento della dimensione dei file PDF.
+
+
+@item @code{svg-woff}
+@tab @code{#f}
+@tab Usa i file di font woff nel backend SVG.
+
+@item @code{trace-memory-frequency}
+@tab @code{#f}
+@tab Registra molte volte al secondo l'uso delle celle da parte di Scheme.  Salva i
+risultati in @code{FILE.stacks} e @code{FILE.graph}.
+
+@item @code{trace-scheme-coverage}
+@tab @code{#f}
+@tab Registra la copertura dei file Scheme in @code{FILE.cov}.
+
+@item @code{verbose}
+@tab @code{#f}
+@tab Output dettagliato, ovvero livello di log DEBUG (sola lettura).
+
+@item @code{warning-as-error}
+@tab @code{#f}
+@tab Trasforma tutti i messaggi di avviso e di @q{errore di programmazione} in errori.
+@end multitable
 
 
 @node Variabili d'ambiente
@@ -507,7 +745,7 @@ più bassi usa più tempo della CPU.  Il valore predefinito è @code{70}.
 
 Configurare un server perché esegua LilyPond in una gabbia chroot è un lavoro
 complesso.  La procedura è spiegata sotto.  Gli esempi si riferiscono a
-Ubuntu Linux e potrebbero richiedere l'uso di @code{sudo} in alcune situazioni.
+Ubuntu GNU/Linux e potrebbero richiedere l'uso di @code{sudo} in alcune situazioni.
 
 @itemize
 
@@ -691,14 +929,21 @@ test.ly:2:19: error: not a duration: 5
            5 g' @}
 @end example
 
-Queste posizioni indicano la migliore ipotesi di LilyPond a proposito del
-punto in cui l'avvertimento o l'errore sono comparsi, ma (per loro
+Queste posizioni indicano il punto in cui LilyPond ritiene più probabile
+che siano apparsi l'avvertimento o l'errore, ma (per loro
 stessa natura) avvertimenti ed errori capitano quando succede qualcosa
-di imprevisto.  Se non riesci a vedere un errore nella riga indicata
-del file di input, prova a controllare una o due righe sopra la posizione
-indicata.
+di imprevisto.  Se non riesci a vedere un errore nella riga suggerita,
+prova a controllare una o due righe sopra la posizione indicata.
+
+Attenzione: l'analisi degli errori è sempre attivata nel corso dei vari
+passaggi di elaborazione.  Per esempio, se ci sono parti di input che
+sono elaborati varie volte (es: per produrre l'output midi e quello
+grafico) oppure se viene usata la stessa variabile musicale in vari
+contesti, potrebbe apparire lo stesso messaggio molteplici volte.  Anche
+la diagnosi eseguita in uno degli @q{ultimi} passaggi (es: controlli di
+battuta) può apparire varie volte.
 
-Maggiori informazioni sugli errori si trovano in @ref{Errori comuni}.
+Maggiori informazioni sugli errori si trovano in @ref{Common errors}.
 
 
 @node Errori comuni
@@ -713,10 +958,11 @@ comprese, è facile gestirle.
 @menu
 * La musica esce dalla pagina::
 * Appare un rigo in più::
-* Errore apparente in ../ly/init.ly::
 * Messaggio di errore Unbound variable %::
 * Messaggio di errore FT_Get_Glyph_Name::
 * Avvertimento sul fatto che le affinità del rigo devono solo diminuire::
+* Messaggio di errore new inaspettato::
+* Avviso ignorare troppe collisioni tra colonne di nota::
 @end menu
 
 @node La musica esce dalla pagina
@@ -739,11 +985,12 @@ linea, portando a una linea di musica estremamente compressa o
 a musica che esce dalla pagina.}
 
 La durata errata può essere trovata facilmente se si usano i controlli di
-battuta, si veda @ruser{Bar and bar number checks}.
+battuta, si veda @ruser{Controlli di battuta e del numero di battuta}.
 
 Se si vuole davvero ottenere una serie di tali misure sovrapposte
 bisogna inserire una barra di divisione invisibile nel punto in cui
-si desidera l'interruzione di linea.  Per i dettagli si veda @ruser{Bar lines}.
+si desidera l'interruzione di linea.  Per i dettagli si veda
+@ruser{Stanghette}.
 
 
 @node Appare un rigo in più
@@ -761,9 +1008,9 @@ si potrebbe pensare che il seguente codice colori di rosso tutte le teste
 delle note nel rigo, ma in realtà produce due righi, di cui il più basso
 conserva il colore nero predefinito per le teste delle note.
 
-@lilypond[quote,verbatim,relative=2]
-\override Staff.NoteHead #'color = #red
-\new Staff { a }
+@lilypond[quote,verbatim,fragment]
+\override Staff.NoteHead.color = #red
+\new Staff { a' }
 @end lilypond
 
 Questo accade perché non esiste un contesto @code{Staff} quando viene
@@ -772,66 +1019,14 @@ l'override viene applicato ad esso.  Ma poi il comando @code{\new Staff} crea
 un altro rigo separato nel quale vengono inserite le note.  Il codice
 corretto per colorare le teste di tutte le note è
 
-@lilypond[quote,verbatim,relative=2]
-\new Staff {
-  \override Staff.NoteHead #'color = #red
-  a
-}
-@end lilypond
-
-Vediamo un secondo esempio.  Se un comando @code{\relative} viene posto
-dentro un comando @code{\repeat}, vengono generati due righi, il secondo
-spostato orizzontalmente rispetto al primo, perché il comando @code{\repeat}
-genera due blocchi @code{\relative}, ognuno dei quali crea implicitamente i
-blocchi @code{Staff} e @code{Voice}.
-
-@lilypond[quote,verbatim]
-\repeat unfold 2 {
-  \relative c' { c4 d e f }
-}
-@end lilypond
-
-Per correggere il problema basta istanziare esplicitamente il contesto
-@code{Voice}:
-
 @lilypond[quote,verbatim]
-\new Voice {
-  \repeat unfold 2 {
-    \relative c' { c4 d e f }
-  }
+\new Staff {
+  \override Staff.NoteHead.color = #red
+  a'
 }
 @end lilypond
 
 
-@node Errore apparente in ../ly/init.ly
-@unnumberedsubsec Errore apparente in @code{../ly/init.ly}
-@translationof Apparent error in ../ly/init.ly
-
-Possono apparire diversi strani messaggi di errore relativi a errori di
-sintassi in @file{../ly/init.ly} se il file di input non ha una forma corretta,
-ad esempio se contiene delle parentesi o delle virgolette non chiuse
-correttamente.
-
-L'errore più comune è la mancanza di una parentesi graffa, (@code{@}}), alla fine
-di un blocco @code{score}.  In questo caso la soluzione è ovvia: controlla
-che il blocco @code{score} sia chiuso correttamente.  La struttura corretta
-di un file di input è descritta in @rlearning{Come funzionano i file di input di LilyPond}.
-Per evitare questi errori conviene usare un editor che evidenzi automaticamente
-le parentesi e le graffe corrispondenti.
-
-Un'altra causa frequente di errore è la mancanza di uno spazio tra l'ultima
-sillaba di un blocco di testo (lyrics) e la parentesi graffa che chiude il
-blocco, (@code{@}}).  Senza questa separazione, la graffa viene considerata
-come parte della sillaba.  Si consiglia di assicurarsi sempre che ci sia
-uno spazio prima e dopo @emph{ogni} parentesi graffa.  Per comprendere l'importanza
-di questo quando si usa il testo, si veda @ruser{Entering lyrics}.
-
-Questo messaggio di errore può apparire anche nel caso in cui sia omessa la
-virgoletta di chiusura, (@code{"}).  In questo caso il messaggio di errore
-@c keep "-matching straight in fancy editors
-dovrebbe dare un numero di riga vicino alla riga sbagliata.  La virgoletta
-non chiusa sarà solitamente una o due righe sopra.
-
 @node Messaggio di errore Unbound variable %
 @unnumberedsubsec Messaggio di errore Unbound variable %
 @translationof Error message Unbound variable %
@@ -865,9 +1060,95 @@ messaggi di avvertimento facendo in modo che uno dei contesti si comporti
 come un rigo inserendo
 
 @example
-\override VerticalAxisGroup #'staff-affinity = ##f
+\override VerticalAxisGroup.staff-affinity = ##f
 @end example
 
 @noindent
 all'inizio del contesto.  Per dettagli si veda @qq{Spacing of non-staff lines} in
 @ruser{Flexible vertical spacing within systems}.
+
+@node Messaggio di errore new inaspettato
+@unnumberedsubsec Messaggio di errore @code{@bs{}new} inaspettato
+@translationof Error message unexpected new
+
+Un blocco @code{\score} deve contenere una @emph{singola} espressione musicale.
+Se invece contiene vari @code{\new Staff}, @code{\new StaffGroup} o simili
+contesti introdotti con @code{\new} senza che questi siano racchiusi tra
+parentesi graffe, @code{@{ @dots{} @}}, o doppie parentesi uncinate, @code{<< @dots{} >>},
+ovvero così:
+
+@example
+\score @{
+  % Invalido! Genera l'errore: errore di sintassi, \new inaspettato
+  \new Staff @{ @dots{} @}
+  \new Staff @{ @dots{} @}
+@}
+@end example
+
+@noindent
+verrà generato questo messaggio di errore.
+
+Per evitare l'errore, è sufficiente racchiudere tutti i blocchi @code{\new} tra
+parentesi graffe o doppie parentesi uncinate.
+
+Se si usano le parentesi graffe, i blocchi @code{\new} appariranno in
+modo sequenziale:
+
+@lilypond[quote,verbatim]
+\score {
+  {
+    \new Staff { a' a' a' a' }
+    \new Staff { g' g' g' g' }
+  }
+}
+@end lilypond
+
+@noindent
+ma è più probabile che si debbano usare le doppie parentesi uncinate in modo
+che i nuovi righi siano avviati in parallelo, ovvero contemporaneamente:
+
+@lilypond[quote,verbatim]
+\score {
+  <<
+    \new Staff { a' a' a' a' }
+    \new Staff { g' g' g' g' }
+  >>
+}
+@end lilypond
+
+@node Avviso ignorare troppe collisioni tra colonne di nota
+@unnumberedsubsec Avviso ignorare troppe collisioni tra colonne di nota
+@translationof Warning ignoring too many clashing note columns
+
+Se note appartenenti a due voci diverse con gambi nella stessa
+direzione si trovano nello stesso momento musicale, e per le voci
+non è stato specificato alcun spostamento, quando si compila il
+file apparirà il messaggio di avviso
+@samp{avviso: ignorare troppe collisioni tra colonne di nota}.
+Tale avviso apparirà anche quando le note non hanno gambi visibili,
+come nel caso delle semibrevi, se i gambi di note più brevi della
+stessa altezza sono nella stessa direzione.
+
+Ricorda che la direzione del gambo, a meno che non sia specificata, per
+esempio tramite @code{\voiceOne}, etc., dipende dalla posizione della
+nota sul rigo.  Dunque se la direzione del gambo non è specificata, l'avviso
+apparirà solo quando i gambi si trovano nella stessa direzione, ovvero
+quando le note si trovano nella stessa metà del rigo.
+
+Si possono evitare questi avvisi mettendo le note in voci in cui siano
+indicate le direzioni dei gambi e gli spostamenti, per esempio usando
+@code{\voiceOne}, etc.
+
+Le note delle voci con un numero maggiore di due, @code{\voiceThree} etc., sono
+spostate automaticamente per avitare la collisione tra colonne di note.  Ciò
+causa uno spostamento visibile delle note con gambo, mentre le semibrevi
+non sono spostate visibilmente, a meno che non si verifichi una reale collisione
+tra teste di nota oppure quando le voci si incrociano rispetto al loro ordine
+naturale (quando le note di @code{\voiceThree} sono più alte di quelle di
+@code{\voiceOne}, etc.)
+
+@seealso
+@rlearning{Definire esplicitamente le voci},
+@rlearning{Esempio musicale},
+@ruser{Polifonia su un singolo rigo},
+@ruser{Risoluzione delle collisioni}.