From 98b690b03df23d45ae827340c00700be8814c156 Mon Sep 17 00:00:00 2001 From: Federico Bruni Date: Sat, 4 Jun 2011 17:28:06 +0200 Subject: [PATCH] Doc-it: add last two chapters of Usage (manual completed), plus some fixes --- Documentation/it/usage/external.itely | 619 ++++++++++ Documentation/it/usage/lilypond-book.itely | 1296 ++++++++++++++++++++ Documentation/it/usage/running.itely | 8 +- Documentation/it/usage/suggestions.itely | 164 +-- Documentation/it/usage/updating.itely | 6 +- 5 files changed, 2005 insertions(+), 88 deletions(-) create mode 100644 Documentation/it/usage/external.itely create mode 100644 Documentation/it/usage/lilypond-book.itely diff --git a/Documentation/it/usage/external.itely b/Documentation/it/usage/external.itely new file mode 100644 index 0000000000..1ff4e8eb16 --- /dev/null +++ b/Documentation/it/usage/external.itely @@ -0,0 +1,619 @@ +@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*- + +@ignore + Translation of GIT committish: 7ba0a22641cb0c7f5949d66a06d1e2e1fd0b3033 + + 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.13.36" + +@node Programmi esterni +@chapter Programmi esterni +@translationof External programs + +LilyPond può interagire con altri programmi in vari modi. + +@menu +* Punta e clicca:: +* LilyPond e gli editor di testo:: +* Conversione da altri formati:: +* Inclusione di partiture LilyPond in altri programmi:: +* Inclusioni indipendenti:: +@end menu + + +@node Punta e clicca +@section Punta e clicca +@translationof Point and click + +@cindex punta e clicca + +Il "punta e clicca" (@emph{point and click}) permette di individuare gli elementi +musicali nell'input cliccando su di essi nel lettore PDF. In questo modo è più +facile trovare la parte dell'input responsabile di un errore nello spartito. + +Quando questa funzionalità è attiva, LilyPond aggiunge dei collegamenti +ipertestuali al file PDF. Questi collegamenti vengono inviati al browser web, +che apre un editor di testo col cursore posizionato nel punto giusto. + +Perché questo procedimento funzioni è necessario configurare il lettore PDF +in modo che segua i collegamenti ipertestuali usando lo script @file{lilypond-invoke-editor} +fornito insieme a LilyPond. + +Per Xpdf su UNIX, occorre inserire la seguente linea nel file +@file{xpdfrc}@footnote{Su UNIX, questo file si trova in +@file{/etc/xpdfrc} o come @file{.xpdfrc} nella propria directory home.} + +@example +urlCommand "lilypond-invoke-editor %s" +@end example + +@file{lilypond-invoke-editor} è un piccolo programma di supporto. Lancia un +editor per gli URI @code{textedit} e un browser web per altri URI. Valuta +la variabile d'ambiente @code{EDITOR} in base a questi schemi, + +@table @code +@item emacs + verrà quindi lanciato il comando +@example +emacsclient --no-wait +@var{line}:@var{column} @var{file} +@end example +@item gvim + verrà quindi lanciato il comando +@example +gvim --remote +:@var{line}:norm@var{column} @var{file} +@end example + +@item nedit + verrà quindi lanciato il comando +@example + nc -noask +@var{line} @var{file}' +@end example +@end table + +La variabile d'ambiente @code{LYEDITOR} ha la precedenza sulla variabile +@code{EDITOR}. Contiene il comando per lanciare l'editor, dove @code{%(file)s}, +@code{%(column)s}, @code{%(line)s} vengono sostituiti rispettivamente dal file, +dalla colonna e dalla riga. L'impostazione + +@example +emacsclient --no-wait +%(line)s:%(column)s %(file)s +@end example + +@noindent +per @code{LYEDITOR} è equivalente alla chiamata standard emacsclient. + + +@cindex file size, output + +I collegamenti "punta e clicca" appesantiscono sensibilmente i file di output. Per +ridurre la dimensione dei file PDF e PS, è possibile disattivare il "punta e +clicca" inserendo + +@example +\pointAndClickOff +@end example + +@noindent +in un file @file{.ly}. Il "punta e clicca" può essere abilitato esplicitamente con + +@example +\pointAndClickOn +@end example + +Si può disabilitare il "punta e clicca" anche con un'opzione da linea di +comando: + +@example +lilypond -dno-point-and-click file.ly +@end example + +@warning{Occorre sempre disattivare il "punta e clicca" nei file LilyPond +che si vogliano diffondere, per evitare di includere nel file .pdf delle informazioni +sui percorsi del proprio computer: questo infatti può costituire un rischio di +sicurezza.} +@node LilyPond e gli editor di testo +@section LilyPond e gli editor di testo +@translationof Text editor support + +@cindex editor +@cindex vim +@cindex emacs +@cindex modalità, editor +@cindex sintassi, colorazione +@cindex colorazione della sintassi + +Vari editor di testo hanno funzionalità specifiche per LilyPond. + +@menu +* Modalità di Emacs:: +* Modalità di Vim:: +* Altri editor:: +@end menu + +@node Modalità di Emacs +@unnumberedsubsec Modalità di Emacs +@translationof Emacs mode + +Emacs ha una modalità @file{lilypond-mode}, che fornisce il completamento +delle parole, l'indentazione, le parentesi automatiche e la colorazione +della sintassi specifiche di LilyPond, comode scorciatoie per la compilazione e +la possibilità di leggere i manuali di LilyPond usando Info. Se @file{lilypond-mode} +non è installato nel tuo computer, vedi sotto. + +Una modalità Emacs per inserire la musica e eseguire LilyPond è presente +nell'archivio dei sorgenti nella directory @file{elisp}. Lancia @command{make +install} per installarla in @var{elispdir}. Il file @file{lilypond-init.el} +deve essere messo in @var{load-path}@file{/site-start.d/} o aggiunto a +@file{~/.emacs} oppure @file{~/.emacs.el}. + +Come utente normale, puoi aggiungere il percorso dei sorgenti (ad esempio @file{~/site-lisp/}) +al tuo @var{load-path} aggiungendo la seguente riga (modificata di conseguenza) +al file @file{~/.emacs} + +@c any reason we do not advise: (push "~/site-lisp" load-path) +@example +(setq load-path (append (list (expand-file-name "~/site-lisp")) load-path)) +@end example + + +@node Modalità di Vim +@unnumberedsubsec Modalità di Vim +@translationof Vim mode + +Per @uref{http://@/www@/.vim@/.org,Vim}, sono disponibili le seguenti funzionalità +per LilyPond: un plugin di riconoscimento del tipo di file, una modalità di indentazione e di +evidenziazione della sintassi. Per abilitarle, crea (o modifica) il file +@file{$HOME/.vimrc} in modo che contenga queste tre righe, in questo ordine: + +@example +filetype off +set runtimepath+=/usr/local/share/lilypond/current/vim/ +filetype on +@end example + +@noindent +Se LilyPond non è installato nella directory @file{/usr/local/}, +modifica il percorso in modo adeguato. Questo argomento è trattato in +@rlearning{Other sources of information}. + + +@node Altri editor +@unnumberedsubsec Altri editor +@translationof Other editors + +Altri editor (sia testuali che grafici) supportano LilyPond, ma i loro +specifici file di configurazione non sono distribuiti insieme a +LilyPond. Consulta la documentazione di questi programmi per maggiori +informazioni. Questi editor sono elencati in @rweb{Easier editing}. + + +@node Conversione da altri formati +@section Conversione da altri formati +@translationof Converting from other formats + +È possibile inserire la musica anche importandola da altri formati. Questo +capitolo documenta gli strumenti inclusi nella distribuzione che svolgono +questo compito. Esistono altri strumenti che producono l'input di LilyPond, ad +esempio i sequencer ad interfaccia grafica e i convertitori XML. Per maggiori +dettagli consulta il @uref{http://@/lilypond@/.org,sito web}. + +Si tratta di programmi separati da @command{lilypond} e sono eseguiti +dalla linea di comando; si veda @ref{Command-line usage} per maggiori +informazioni. Se usi MacOS 10.3 o 10.4 e hai problemi a +eseguire alcuni di questi script, ad esempio @code{convert-ly}, vedi +@rweb{MacOS X}. + + +@knownissues +Purtroppo non abbiamo le risorse per mantenere questi programmi; prendeteli +@qq{così come sono}! Accettiamo con piacere le @emph{patch}, ma ci sono +poche possibilità che i bug vengano risolti. + +@menu +* Utilizzo di midi2ly:: Importare MIDI. +* Utilizzo di musicxml2ly:: Importare MusicXML. +* Utilizzo di abc2ly:: Importare ABC. +* Utilizzo di etf2ly:: Importare Finale. +* Altri formati:: +@end menu + + + +@node Utilizzo di midi2ly +@subsection Utilizzo di @command{midi2ly} +@translationof Invoking midi2ly + +@cindex MIDI + +@command{midi2ly} trasforma un file MIDI Type@tie{}1 in un file sorgente +di LilyPond. + +Il protocollo MIDI (Music Instrument Digital Interface) è uno standard per gli +strumenti digitali: fornisce le specifiche per la connessione via cavo, un +protocollo seriale e un formato di file. Il formato MIDI è uno standard de +facto per esportare la musica da altri programmi, dunque questa capacità diventa +utile quando si importano file creati con un programma che converta +direttamente in questo formato. + +@command{midi2ly} converte le tracce presenti nei contesti @rinternals{Staff} e +i canali dei contesti @rinternals{Voice}. Per indicare le altezze viene usata +la modalità relativa, mentre le durate sono precisate solo quando necessario. + +È possibile registrare un file MIDI usando una tastiera digitale e poi +convertirlo in file @file{.ly}. Tuttavia, la conversione da MIDI a LY non +è banale: l'esecuzione umana non sarà mai sufficientemente precisa dal punto di vista +ritmico. Se lanciata con la quantizzazione (opzioni @code{-s} e @code{-d}) +@command{midi2ly} cerca di compensare questi errori di tempo, ma non è +molto efficace. Dunque non si raccomanda l'uso di @command{midi2ly} +per i file midi generati a partire da un'esecuzione umana. + + +Si lancia dalla linea di comando in questo modo: +@example +midi2ly [@var{opzione}]@dots{} @var{file-midi} +@end example + +Attenzione: per @q{linea di comando} si intende la linea di comando +del sistema operativo. Si veda @ref{Converting from other formats} per +maggiori informazioni su questo argomento. + +@command{midi2ly} accetta le seguenti opzioni. + +@table @code +@item -a, --absolute-pitches +Crea altezze assolute. + +@item -d, --duration-quant=@var{DUR} +Quantizza la durata delle note di @var{DUR}. + +@item -e, --explicit-durations +Crea durate esplicite. + +@item -h,--help +Mostra una sintesi dell'utilizzo del programma. + +@item -k, --key=@var{acc}[:@var{minor}] +Imposta la tonalità predefinita. @math{@var{acc} > 0} imposta il numero di +diesis; @math{@var{acc} < 0} imposta il numero di bemolle. Una tonalità +minore si indica con @code{:1}. + +@item -o, --output=@var{file} +Scrive l'output in @var{file}. + +@item -s, --start-quant=@var{DUR} +Quantize note starts on @var{DUR}. + +@item -t, --allow-tuplet=@var{DUR}*@var{NUM}/@var{DEN} +Consente l'inserimento di gruppi irregolari @var{DUR}*@var{NUM}/@var{DEN}. + +@item -v, --verbose +Mostra un output dettagliato. + +@item -V, --version +Mostra il numero di versione. + +@item -w, --warranty +Mostra la garanzia e il copyright. + +@item -x, --text-lyrics +Interpreta il testo come liriche. +@end table + + +@knownissues + +Le note sovrapposte in un arpeggio non sono rese correttamente: viene letta +solo la prima nota, mentre le altre vengono ignorate. Assegna a tutte la stessa +durata e introduci le opportune indicazioni di fraseggio o di pedalizzazione. + + +@node Utilizzo di musicxml2ly +@subsection Utilizzo di @code{musicxml2ly} +@translationof Invoking musicxml2ly + +@cindex MusicXML + +@uref{http://@/www.@/musicxml@/.org/,MusicXML} è un dialetto di XML +che viene usato per rappresentare la notazione musicale. + +@command{musicxml2ly} estrae le note, le articolazioni, la struttura della +partitura, il testi, etc. da file MusicXML organizzati in parti; quindi li +scrive in un file @file{.ly}. Si usa dalla linea di comando. + + +Si lancia dalla linea di comando nel modo seguente, +@example +musicxml2ly [@var{opzione}]@dots{} @var{file-xml} +@end example + +Attenzione: per @q{linea di comando} si intende la linea di comando +del sistema operativo. Si veda @ref{Converting from other formats} per +maggiori informazioni su questo argomento. + +Se il nome del file è @file{-}, @command{musicxml2ly} legge l'input +dalla linea di comando. + +@command{musicxml2ly} accetta le seguenti opzioni: + +@table @code +@item -a, --absolute +converte le altezze relative in assolute. + +@item -h,--help +mostra una sintesi dell'utilizzo e delle opzioni. + +@item -l, --language=LANG +usa LANG per i nomi delle altezze, ad esempio 'deutsch' per i nomi delle note +in tedesco. + +@item --lxml +usa il pacchetto Python lxml.etree per l'analisi della sintassi XML; usa meno +memoria e tempo del processore. + +@item --nd --no-articulation-directions +non converte le direzioni (@code{^}, @code{_} o @code{-}) per +articolazioni, dinamiche, etc. + +@item --no-beaming +ignora le informazioni relative alle travature, impiegando la disposizione +automatica delle travature fornita da LilyPond. + +@item -o,--output=@var{file} +imposta il nome del file di output su @var{file}. Se @var{file} è @file{-}, l'output +sarà salvato su stdout. Se non specificato, verrà usato @var{file-xml}@file{.ly}. + +@item -r,--relative +converte le altezze in modalità relativa (predefinito). + +@item -v, --verbose +Mostra un output dettagliato. + +@item --version +Mostra informazioni sulla versione. + +@item -z,--compressed +il file di input è un file MusicXML compresso in un archivio ZIP. +@end table + + +@node Utilizzo di abc2ly +@subsection Utilizzo di @code{abc2ly} +@translationof Invoking abc2ly + +@warning{Questo programma non è supportato e potrebbe essere rimosso +dalle future versioni di LilyPond.} + +@cindex ABC + +ABC è un semplice formato basato su ASCII. È descritto nel sito di ABC: + +@quotation +@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}. +@end quotation + +@command{abc2ly} traduce dal formato ABC al formato LilyPond. Viene lanciato +nel modo seguente: + +@example +abc2ly [@var{opzione}]@dots{} @var{file-abc} +@end example + +@command{abc2ly} accetta le seguenti opzioni: + +@table @code +@item -b,--beams=None +preserva le regole di disposizione delle travature di ABC +@item -h,--help +mostra questo messaggio di aiuto +@item -o,--output=@var{file} +imposta il nome del file di output su @var{file}. +@item -s,--strict +imposta una modalità di interpretazione letterale per effettuare una conversione stretta +@item --version +mostra informazioni sulla versione. +@end table + +Esiste una rudimentale funzione per aggiungere codice LilyPond nel +file sorgente ABC. Se scrivi: + +@example +%%LY voices \set autoBeaming = ##f +@end example + +il testo che segue la parola chiave @q{voices} verrà inserito +nella voce in uso del file di output LilyPond. + +Analogalmente, + +@example +%%LY slyrics more words +@end example + +fa sì che il testo che segue la parola chiave @q{slyrics} venga inserito +nella riga corrente del testo. + + +@knownissues + +Lo standard ABC standard non è molto @q{standard}. Per le funzionalità più +avanzate (ad esempio, la musica polifonica) esistono diversi tipi di convenzioni. + +Un file che contiene più di un brano non può essere convertito. + +ABC allinea le parole e le note all'inizio di una riga; @command{abc2ly} non +lo fa. + +@command{abc2ly} ignora la disposizione delle travature fatta da ABC. + + +@node Utilizzo di etf2ly +@subsection Utilizzo di @command{etf2ly} +@translationof Invoking etf2ly + +@warning{Questo programma non è supportato e potrebbe essere rimosso +dalle future versioni di LilyPond.} + +@cindex ETF +@cindex enigma +@cindex Finale +@cindex Coda Technology + +ETF (Enigma Transport Format) è un formato usato da Finale, un prodotto di Coda +Music Technology. @command{etf2ly} converte parte di un file ETF +in un file LilyPond pronto all'uso. + +Si lancia dalla linea di comando nel modo seguente. + +@example +etf2ly [@var{opzione}]@dots{} @var{file-etf} +@end example + +Attenzione: per @q{linea di comando} si intende la linea di comando +del sistema operativo. Si veda @ref{Converting from other formats} per +maggiori informazioni su questo argomento. + +@command{etf2ly} accetta le seguenti opzioni: + +@table @code +@item -h,--help +mostra questo messaggio di aiuto +@item -o,--output=@var{FILE} +imposta il nome del file di output su @var{FILE} +@item --version +mostra informazioni sulla versione +@end table + + +@knownissues + +La lista degli script per gestire le articolazioni è incompleta. Le misure vuote +confondono @command{etf2ly}. Le sequenze di abbellimenti non sono risolte correttamente. + + +@node Altri formati +@subsection Altri formati +@translationof Other formats + +@cindex Programmi esterni, generare file LilyPond + +LilyPond non supporta la conversione da altri formati, ma esistono alcuni +strumenti esterni che possono generare file LilyPond. L'elenco si trova +in @rweb{Easier editing}. + + + +@node Inclusione di partiture LilyPond in altri programmi +@section Inclusione di partiture LilyPond in altri programmi +@translationof LilyPond output in other programs + +Questa sezione presenta dei metodi per integrare testo e musica diversi +dal metodo automatizzato di @command{lilypond-book}. + +@menu +* Tante citazioni da una grande partitura:: +* Inserire l'output di LilyPond in OpenOffice.org:: +* Inserire l'output di LilyPond in altri programmi:: +@end menu + +@node Tante citazioni da una grande partitura +@unnumberedsubsec Tante citazioni da una grande partitura +@translationof Many quotes from a large score + +Per inserire molti frammenti di una grande partitura, si può usare anche +la funzione di ritaglio dei sistemi; si veda @ruser{Extracting fragments of music}. + + +@node Inserire l'output di LilyPond in OpenOffice.org +@unnumberedsubsec Inserire l'output di LilyPond in OpenOffice.org +@translationof Inserting LilyPond output into OpenOffice.org + +@cindex OpenOffice.org + +La notazione di LilyPond può essere aggiunta a OpenOffice.org con +@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}. + + +@node Inserire l'output di LilyPond in altri programmi +@unnumberedsubsec Inserire l'output di LilyPond in altri programmi +@translationof Inserting LilyPond output into other programs + +Per inserire l'output di LilyPond in altri programmi, si usa @code{lilypond} +invece di @code{lilypond-book}. Bisogna creare ogni esempio singolarmente +e aggiungerlo al documento; consulta la documentazione del realtivo +programma. La maggior parte dei programmi può inserire l'output di LilyPond +in formato @file{PNG}, @file{EPS} o @file{PDF}. + +Per ridurre lo spazio bianco intorno alla partitura LilyPond, si usano +le seguenti opzioni + +@example +\paper@{ + indent=0\mm + line-width=120\mm + oddFooterMarkup=##f + oddHeaderMarkup=##f + bookTitleMarkup = ##f + scoreTitleMarkup = ##f +@} + +@{ c1 @} +@end example + +Per creare un file @file{EPS}, si usa + +@example +lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts miofile.ly + +@file{PNG}: +lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png miofile.ly +@end example + + +@node Inclusioni indipendenti +@section @code{include} indipendenti +@translationof Independent includes + +Alcuni hanno scritto ampi (e utili!) frammenti di codice che possono +essere condivisi da progetti diversi. Questo codice potrebbe alla fine +entrare a far parte di LilyPond, ma finché questo non avviene occorre +scaricarlo e includerlo manualmente con @code{\include}. + + +@menu +* Articolazione MIDI:: +@end menu + + +@node Articolazione MIDI +@subsection Articolazione MIDI +@translationof MIDI articulation + +LilyPond permette di generare l'output MIDI, che consente di +@qq{verificare a orecchio} quanto è stato scritto. Tuttavia l'output +contiene solo la dinamica, i segni di tempo espliciti, le note e le loro +durate. + +Il progetto @emph{articulate} costituisce un tentativo di inviare al file +MIDI maggiori informazioni sulla partitura. Il suo funzionamento si basa +sull'abbreviazione delle note prive di legatura di portamento, in +modo da @q{articolare} le note. Questa riduzione dipende dai segni di +articolazione attaccati a una nota: staccato dimezza il valore della nota, tenuto +assegna alla nota la sua intera durata, e così via. Lo script è consapevole anche dei +trilli e dei gruppetti; può essere esteso per elaborare altri ornamenti come i +mordenti. + +@example +@uref{http://@/www@/.nicta@/.com@/.au/@/people/@/chubbp/@/articulate} +@end example + +@knownissues + +La sua principale limitazione è che può agire solo sugli elementi che +conosce: qualsiasi cosa che sia del semplice testo (invece di una proprietà +della nota) viene dunque ignorato. + + diff --git a/Documentation/it/usage/lilypond-book.itely b/Documentation/it/usage/lilypond-book.itely new file mode 100644 index 0000000000..c83f71c6d6 --- /dev/null +++ b/Documentation/it/usage/lilypond-book.itely @@ -0,0 +1,1296 @@ +@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*- + +@ignore + Translation of GIT committish: f78131595ebafac25a416671e5a4b9c8b14e79b5 + + 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.13.36" + +@c Note: keep this node named so that `info lilypond-book' brings you here. +@node lilypond-book +@chapter Eseguire @command{lilypond-book} + +Se si desidera aggiungere a un documento illustrazioni musicali, si può +semplicemente fare nello stesso modo in cui si farebbe con altri tipi di +immagini: prima si creano le immagini separatamente, in formato PostScript o +PNG, poi le si includono in un documento @LaTeX{} o HTML. + +@command{lilypond-book} offre la possibilità di automatizzare tale procedimento: questo +programma estrae i frammenti musicali dal documento, esegue @command{lilypond} +su di essi e crea un nuovo documento contenente le illustrazioni musicali così +ottenute. Le definizioni relative alla larghezza del rigo e alle dimensioni +dei caratteri vengono regolate per adeguarsi alla formattazione del documento. + +Si tratta di un programma separato da @command{lilypond} e viene lanciato +dalla linea di comando; per maggiori informazioni, si veda @ref{Command-line +usage}. Chi usa MacOS 10.3 o 10.4 e non riesce ad eseguire +@code{lilypond-book} veda @rweb{MacOS X}. + +Questo procedimento può essere applicato ai documenti @LaTeX{}, HTML, Texinfo +o DocBook. + +@cindex texinfo +@cindex latex +@cindex texinfo +@cindex texi +@cindex html +@cindex docbook +@cindex documenti, aggiungere musica ai +@cindex HTML, musica in +@cindex Texinfo, musica in +@cindex DocBook, musica in +@cindex @LaTeX{}, musica in + +@menu +* Un esempio di documento musicologico:: +* Integrare musica e testo:: +* Opzioni dei frammenti musicali:: +* Utilizzo di lilypond-book:: +* Estensioni dei nomi di file:: +* Modelli per lilypond-book:: +* Condividere l'indice:: +* Metodi alternativi per combinare testo e musica:: +@end menu + + +@node Un esempio di documento musicologico +@section Un esempio di documento musicologico +@translationof An example of a musicological document + +@cindex musicologia +Alcuni testi contengono degli esempi musicali: si tratta di +trattati musicologici, canzonieri o manuali come questo. È possibile +crearli a mano, semplicemente importando un'immagine PostScript +nell'elaboratore di testo. Tuttavia esiste una procedura automatizzata +che permette di ridurre il carico di lavoro richiesto dai documenti in +formato HTML, @LaTeX{}, Texinfo e DocBook. + +Uno script chiamato @code{lilypond-book} estrarrà i frammenti musicali, li +formatterà e restituirà la notazione risultante. Ecco un piccolo esempio +da usare con @LaTeX{}. L'esempio contiene anche del testo esplicativo, +dunque non è necessario entrare nei dettagli. + +@subheading Input + +@quotation +@verbatim +\documentclass[a4paper]{article} + +\begin{document} + +I documenti per \verb+lilypond-book+ possono combinare liberamente musica e testo. +Ad esempio, + +\begin{lilypond} +\relative c' { + c2 e2 \times 2/3 { f8 a b } a2 e4 +} +\end{lilypond} + +Le opzioni vengono specificate tra parentesi quadre. + +\begin{lilypond}[fragment,quote,staffsize=26,verbatim] + c'4 f16 +\end{lilypond} + +Se l'esempio è più grande, è possibile metterlo in un file separato e inserirlo +con \verb+\lilypondfile+. + +\lilypondfile[quote,noindent]{screech-boink.ly} + +(Se vuoi provare, sostituisci @file{screech-boink.ly} con qualsiasi file @file{.ly} +che si trovi nella stessa directory di questo file.) + +\end{document} +@end verbatim +@end quotation + +@subheading Elaborazione + +Salva il codice precedente in un file chiamato @file{lilybook.lytex}, quindi +esegui in un terminale + +@c keep space after @version{} so TeX doesn't choke +@example +lilypond-book --output=out --pdf lilybook.lytex +@emph{lilypond-book (GNU LilyPond) @version{} } +@emph{Lettura di lilybook.lytex...} +@emph{..tagliato molto output..} +@emph{Compilazione di lilybook.tex...} +cd out +pdflatex lilybook.tex +@emph{..tagliato molto output..} +xpdf lilybook.pdf +@emph{(sostituisci @command{xpdf} col tuo lettore PDF preferito)} +@end example + +L'esecuzione di @command{lilypond-book} e @command{pdflatex} crea molti file +temporanei e questo potrebbe rendere disordinata la directory di lavoro. Per +ovviare a questo inconveniente, è consigliabile usare l'opzione @code{--output=@var{dir}}. In questo +modo i file verranno salvati in una sottodirectory @file{dir} separata. + +Infine ecco il risultato dell'esempio in @LaTeX{}.@footnote{Questo +tutorial è elaborato da Texinfo, dunque l'esempio produce dei risultati +leggermente diversi nella formattazione.} Si conclude qui la parte di +tutorial. + +@page + +@subheading Output + +I documenti per \verb+lilypond-book+ possono combinare liberamente musica e testo. +Ad esempio, + +@lilypond +\relative c' { + c2 e2 \times 2/3 { f8 a b } a2 e4 +} +@end lilypond + +Le opzioni vengono specificate tra parentesi quadre. + +@lilypond[fragment,quote,staffsize=26,verbatim] +c'4 f16 +@end lilypond + +Se l'esempio è più grande, è possibile riportarlo in un file a parte e inserirlo +con \verb+\lilypondfile+. + +@lilypondfile[quote,noindent]{screech-boink.ly} + +Perché sia visibile la @code{tagline}, predefinita o personalizzata, l'intero +frammento deve essere compreso in un costrutto @code{\book @{ @}}. + +@lilypond[papersize=a8,verbatim] +\book{ + \header{ + title = "Una scala in LilyPond" + } + + \relative c' { + c d e f g a b c + } +} +@end lilypond + +@page + +@node Integrare musica e testo +@section Integrare musica e testo +@translationof Integrating music and text + +Questa sezione spiega come integrare LilyPond in vari formati di output. + +@menu +* LaTeX:: +* Texinfo:: +* HTML:: +* DocBook:: +@end menu + +@node LaTeX +@subsection @LaTeX{} + +@LaTeX{} costituisce lo standard de facto per le pubblicazioni nell'ambito +delle scienze esatte. Si basa sul motore tipografico @TeX{}, che produce la +migliore qualità tipografica possibile. + +Si veda +@uref{http://@/www@/.ctan@/.org/@/tex@/-archive/@/info/@/lshort/@/english/, +@emph{The Not So Short Introduction to @LaTeX{}}} per una panoramica +sull'uso di @LaTeX{}. + +La musica si inserisce in vari modi: + +@example +\begin@{lilypond@}[le,opzioni,vanno,qui] + CODICE LILYPOND +\end@{lilypond@} +@end example + +@noindent +oppure + +@example +\lilypondfile[le,opzioni,vanno,qui]@{@var{nomefile}@} +@end example + +@noindent +oppure + +@example +\lilypond[le,opzioni,vanno,qui]@{ CODICE LILYPOND @} +@end example + +Inoltre, @code{\lilypondversion} mostra la versione +di lilypond impiegata. +L'esecuzione di @command{lilypond-book} produce un file che può essere +ulteriormente elaborato con @LaTeX{}. + +Vediamo alcuni esempi. L'ambiente @code{lilypond} + +@example +\begin@{lilypond@}[quote,fragment,staffsize=26] + c' d' e' f' g'2 g'2 +\end@{lilypond@} +@end example + +@noindent +genera + +@lilypond[quote,fragment,staffsize=26] +c' d' e' f' g'2 g'2 +@end lilypond + +La versione breve + +@example +\lilypond[quote,fragment,staffsize=11]@{@} +@end example + +@noindent +genera + +@lilypond[quote,fragment,staffsize=11]{} + +@noindent +Attualmente non è possibile includere @code{@{} o @code{@}} all'interno di +@code{\lilypond@{@}}, dunque questo comando è utile solo se usato con +l'opzione @code{fragment}. + +La lunghezza predefinita del rigo musicale sarà regolata in base ai +comandi presenti nel preambolo del documento, ovvero la parte del documento +che precede @code{\begin@{document@}}. Il comando @command{lilypond-book} +li invia a @LaTeX{} per definire la larghezza del testo. La larghezza del +rigo nei frammenti musicali è quindi regolato in base alla larghezza del +testo. Si noti che questo algoritmo euristico può fallire facilmente; in +questi casi occorre usare l'opzione @code{line-width} nel frammento musicale. + +@cindex titoli e lilypond-book +@cindex \header nei documenti @LaTeX{} + +Ogni frammento chiamerà le seguenti macro se sono state definite +dall'utente: + +@itemize @bullet +@item @code{\preLilyPondExample} prima della musica, + +@item @code{\postLilyPondExample} dopo la musica, + +@item @code{\betweenLilyPondSystem[1]} tra i sistemi, se +@code{lilypond-book} ha diviso il frammento in più file +PostScript. Prende un parametro e riceve +tutti i file già inclusi in questo frammento. +Per impostazione predefinita inserisce semplicemente un @code{\linebreak}. +@end itemize + +@ignore +Broken stuff. :( + +@cindex Latex, feta symbols +@cindex fetachar + +To include feta symbols (such as flat, segno, etc) in a LaTeX +document, use @code{\input@{titledefs@}} + +@example +\documentclass[a4paper]@{article@} + +\input@{titledefs@} + +\begin@{document@} + +\fetachar\fetasharp + +\end@{document@} +@end example + +The font symbol names are defined in the file feta20.tex; to find +the location of this file, use the command + +@example +kpsewhich feta20.tex +@end example + +@end ignore + +@snippets + +Talvolta si ha necessità di mostrare degli elementi musicali (ad esempio le +legature di portamento e di valore) che proseguono dopo la fine del +frammento. È possibile inserirli mandando il rigo a capo e +impedendo l'inclusione del restante output di LilyPond. + +In @LaTeX{}, si definisce @code{\betweenLilyPondSystem} in modo tale che +l'inclusione di altri sistemi venga terminata una volta incluso il +numero di sistemi richiesti. Dato che @code{\betweenLilyPondSystem} viene +chiamato la prima volta @emph{dopo} il primo sistema, includere solo il primo +sistema è semplice. + +@example +\def\betweenLilyPondSystem#1@{\endinput@} + +\begin@{lilypond@}[fragment] + c'1\( e'( c'~ \break c' d) e f\) +\end@{lilypond@} +@end example + +Se serve una maggior quantità di sistemi, occorre usare un condizionale +@TeX{} prima di @code{\endinput}. In questo esempio, sostituisci @q{2} col +numero di sistemi che desideri avere nell'output. + +@example +\def\betweenLilyPondSystem#1@{ + \ifnum#1<2\else\expandafter\endinput\fi +@} +@end example + +@noindent +(Dato che @code{\endinput} arresta immediatamente l'elaborazione del file di +input corrente, occorre usare @code{\expandafter} per ritardare la chiamata di +@code{\endinput} e far sì che avvenga dopo l'esecuzione di @code{\fi}, in modo +da bilanciare la condizione @code{\if}-@code{\fi}.) + +Ricorda che la definizione di @code{\betweenLilyPondSystem} è +efficace finché @TeX{} esce dal gruppo attuale (ad esempio l'ambiente +@LaTeX{}) o è sovrascritto da un'altra definizione (che vale, in +gran parte dei casi, per il resto del documento). Per reimpostare +la definizione, si scrive + +@example +\let\betweenLilyPondSystem\undefined +@end example + +@noindent +nel sorgente @LaTeX{}. + +Si potrebbe semplificare la procedura creando una macro @TeX{} + +@example +\def\onlyFirstNSystems#1@{ + \def\betweenLilyPondSystem##1@{% + \ifnum##1<#1\else\expandafter\endinput\fi@} +@} +@end example + +@noindent +e poi specificando prima di ogni frammento la quantità di sistemi desiderata, + +@example +\onlyFirstNSystems@{3@} +\begin@{lilypond@}...\end@{lilypond@} +\onlyFirstNSystems@{1@} +\begin@{lilypond@}...\end@{lilypond@} +@end example + + +@seealso +Esistono opzioni specifiche da linea di comando per @command{lilypond-book} e +altri dettagli da conoscere quando si elaborano documenti @LaTeX{}; si veda +@ref{Invoking lilypond-book}. + + +@node Texinfo +@subsection Texinfo +@translationof Texinfo + +Texinfo è il formato standard per la documentazione del progetto GNU. Un +esempio di documento Texinfo è questo stesso manuale. Le versioni del manuale +in formato HTML, PDF e Info vengono generate da un documento Texinfo. + +Nel file di input, la musica viene indicata con + +@example +@@lilypond[options,go,here] + IL TUO CODICE LILYPOND +@@end lilypond +@end example + +@noindent +oppure + +@example +@@lilypond[le,opzioni,vanno,qui]@{ IL TUO CODICE LILYPOND @} +@end example + +@noindent +oppure + +@example +@@lilypondfile[le,opzioni,vanno,qui]@{@var{nomefile}@} +@end example + +Inoltre, @code{@@lilypondversion} mostra la versione di +lilypond impiegata. + +Quando si esegue @command{lilypond-book} su di esso, il risultato è un +file Texinfo (con estensione @file{.texi}) contenente degli elementi @code{@@image} +per l'HTML, Info e l'output per la stampa. @command{lilypond-book} genera le +immagini della musica in formati EPS e PDF per l'utilizzo nell'output per la +stampa e in formato PNG per l'utilizzo nell'output HTML e Info. + +Vediamo due piccoli esempi. Un ambiente @code{lilypond} + +@example +@@lilypond[fragment] +c' d' e' f' g'2 g' +@@end lilypond +@end example + +@noindent +genera + +@lilypond[fragment] +c' d' e' f' g'2 g' +@end lilypond + +La versione breve + +@example +@@lilypond[fragment,staffsize=11]@{@} +@end example + +@noindent +genera + +@lilypond[fragment,staffsize=11]{} + +Diversamente da @LaTeX{}, @code{@@lilypond@{...@}} non genera un'immagine +nel testo. Prende sempre un paragrafo proprio. + + +@node HTML +@subsection HTML +@translationof HTML + +La musica si inserisce in questo modo + +@example + +\key c \minor c4 es g2 + +@end example + +@noindent +@command{lilypond-book} genera quindi un file HTML con gli elementi appropriati +per le immagini dei frammenti musicali: + +@lilypond[fragment,relative=2] +\key c \minor c4 es g2 +@end lilypond + +Per le immagini in linea, si usa @code{}, dove le opzioni +sono distinte dalla musica attraverso i due punti, ad esempio + +@example +Un po' di musica in una linea di testo. +@end example + +Per includere file separati, si usa + +@example +@var{filename} +@end example + +Per una lista di opzioni da usare con gli elementi @code{lilypond} e +@code{lilypondfile}, si veda @ref{Music fragment options}. + +Inoltre, @code{} mostra la versione di +lilypond impiegata. + + +@cindex titoli in HTML +@cindex immagine di anteprima +@cindex miniatura + +@node DocBook +@subsection DocBook +@translationof DocBook + +Per inserire frammenti di codice LilyPond è una buona idea mantenere la +conformità del documento DocBook, in modo da poter usare gli editor DocBook, la +validazione, etc. Quindi non si usano elementi personalizzati, ma si +specifica una convenzione basata sugli elementi DocBook standard. + +@subheading Convenzioni comuni + +Per inserire un frammento di qualsiasi tipo si usano gli elementi @code{mediaobject} +e @code{inlinemediaobject}, in modo che il frammento possa essere formattato +in linea o meno. Le opzioni di formattazione del frammento vengono sempre +indicate nella proprietà @code{role} dell'elemento più interno (si vedano +le prossime sezioni). Gli elementi sono scelti in modo da permettere agli editor +DocBook di ottenere una formattazione ottimale. I file DocBook da +elaborare con @command{lilypond-book} devono avere estensione @file{.lyxml}. + +@subheading Includere un file LilyPond + +Si tratta del caso più semplice. Bisogna usare l'estensione @file{.ly} per +il file da includere e inserirlo come uno standard @code{imageobject}, con +la seguente struttura: + +@example + + + + + +@end example + +Nota che sei libero di usare @code{mediaobject} o @code{inlinemediaobject} +come elemento più esterno. + +@subheading Includere codice LilyPond + +È possibile includere codice LilyPond all'interno di un elemento +@code{programlisting} in cui il linguaggio sia impostato su @code{lilypond} +e con la seguente struttura: + +@example + + + +\context Staff \with @{ + \remove Time_signature_engraver + \remove Clef_engraver@} + @{ c4( fis) @} + + + +@end example + +Come si vede, l'elemento più esterno è @code{mediaobject} o +@code{inlinemediaobject} e c'è un @code{textobject} che contiene al +suo interno il @code{programlisting}. + +@subheading Elaborare il documento DocBook + +L'esecuzione di @command{lilypond-book} su un file @file{.lyxml} creerà un +documento DocBook valido con estensione @file{.xml} che potrà essere +ulteriormente elaborato. Usando +@uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, creerà automaticamente un file +PDF da questo documento. Per generare l'HTML (HTML Help, +JavaHelp etc.) si possono usare i fogli di stile DocBook XSL ufficiali; +tuttavia è possibile che sia necessario modificarli un po'. + + +@node Opzioni dei frammenti musicali +@section Opzioni dei frammenti musicali +@translationof Music fragment options + +Nelle pagine che seguono, per @q{comando LilyPond} si intende un qualsiasi +comando descritto nelle sezioni precedenti che sia gestito da @command{lilypond-book} +per produrre un frammento musicale. Per semplicità, i comandi LilyPond vengono +mostrati soltanto nella sintassi @LaTeX{}. + +Nota che la stringa delle opzioni è analizzata da sinistra a destra; se un'opzione +ricorre più di una volta, viene applicata nella sua ultima occorrenza. + +Sono disponibili le seguenti opzioni per i comandi LilyPond: + +@table @code +@item staffsize=@var{altezza} +Imposta la dimensione del pentagramma a @var{altezza}, misurata in punti. + +@item ragged-right +Produce linee con margine destro irregolare e spaziatura naturale, ovvero +viene aggiunto @code{ragged-right = ##t} al frammento LilyPond. Questa è +l'impostazione predefinita per il comando @code{\lilypond@{@}} se non è presente +un'opzione @code{line-width}. È anche l'impostazione predefinita per l'ambiente +@code{lilypond} se viene usata l'opzione @code{fragment} senza specificare +esplicitamente la larghezza della linea. + +@item noragged-right +Per i frammenti di una sola linea, fa sì che la lunghezza del rigo venga estesa +fino a coincidere con la larghezza della linea, ovvero viene aggiunto +@code{ragged-right = ##f} al frammento LilyPond. + +@item line-width +@itemx line-width=@var{dimensione}\@var{unità} +Imposta la lunghezza della linea a @var{dimensione}, usando @var{unità} come +unità di misura. @var{unità} può essere una delle seguenti stringhe: @code{cm}, +@code{mm}, @code{in} o @code{pt}. Questa opzione riguarda l'output LilyPond +(ovvero, la lunghezza del rigo del frammento musicale), non la formattazione +del testo. + +Se usato senza un argomento, imposta la lunghezza della linea a un valore +predefinito (calcolato da un algoritmo euristico). + +Se non viene assegnata un'opzione @code{line-width}, @command{lilypond-book} +cerca di indovinare un valore predefinito per gli ambienti @code{lilypond} che +non usano l'opzione @code{ragged-right}. + +@item papersize=@var{stringa} +Dove @var{stringa} è una delle dimensioni del foglio definite in @file{scm/paper.scm}, +ad esempio @code{a5}, @code{quarto}, @code{11x17} etc. + +I valori non definiti in @file{scm/paper.scm} saranno ignorati, sarà inviato +un messaggio di avviso e al frammento sarà assegnata la dimensione predefinita, +ovvero @code{a4}. + +@item notime +Non viene visualizzata l'indicazione di tempo e disabilita i segni relativi alla scansione ritmica +(segno di tempo, barre di divisione) nella partitura. + +@item fragment +Fa sì che @command{lilypond-book} aggiunga del codice boilerplate in modo che +sia possibile inserire semplicemente, ad esempio, + +@example +c'4 +@end example + +@noindent +senza @code{\layout}, @code{\score}, etc. + +@item nofragment +Non aggiunge del codice ulteriore per completare il codice LilyPond nei frammenti +musicali. Essendo l'impostazione predefinita, @code{nofragment} di norma +è ridondante. + +@item indent=@var{dimensione}\@var{unità} +Imposta l'indentazione del primo sistema musicale a @var{dimensione}, usando +@var{unità} come unità di misura. @var{unità} è una delle seguenti stringhe: +@code{cm}, @code{mm}, @code{in} o @code{pt}. Questa opzione riguarda +LilyPond, non la formattazione del testo. + +@item noindent +Imposta l'indentazione del primo sistema musicale su zero. Questa opzione +interessa LilyPond, non la formattazione del testo. L'assenza di indentazione è +l'impostazione predefinita, dunque normalmente @code{noindent} è ridondante. + +@item quote +Riduce la lunghezza della linea di un frammento musicale di @math{2*0.4}@dmn{in} +e inserisce l'output in un blocco per le citazioni. Il valore @q{0.4@dmn{in}} +può essere controllato con l'opzione @code{exampleindent}. + +@item exampleindent +Imposta la quantità di spazio con cui l'opzione @code{quote} indenta un +frammento musicale. + +@item relative +@itemx relative=@var{n} +Usa la modalità di ottava relativa. Per impostazione predefinita, le altezze delle note +sono riferite al Do@tie{}centrale. L'argomento opzionale del numero intero +specifica l'ottava della nota iniziale: il valore predefinito @code{1} è il +Do centrale. L'opzione @code{relative} funziona solo quando è impostata +l'opzione @code{fragment}, quindi @code{fragment} è implicitamente sottinteso +da @code{relative}, a prescindere dalla presenza dell'opzione @code{(no)fragment} +nel sorgente. +@end table + +LilyPond usa @command{lilypond-book} anche per produrre la propria +documentazione. A questo scopo, esistono altre opzioni più complesse +per i frammenti musicali. + +@table @code +@item verbatim +L'argomento di un comando LilyPond viene copiato nel file di output e racchiuso +in un blocco di testo, seguito da qualsiasi testo assegnato con l'opzione +@code{intertext} (non ancora implementato); quindi viene mostrata la musica +vera e propria. Questa opzione non funziona bene con @code{\lilypond@{@}} se +fa parte di un paragrafo. + +Se @code{verbatim} viene usato in un comando @code{lilypondfile}, è possibile +includere il testo di una parte soltanto del file sorgente. Se il file +sorgente ha un commento contenente @samp{begin verbatim} (senza +virgolette), la citazione del sorgente nel blocco testuale inizierà dopo +l'ultima occorrenza di tale commento; in modo analogo, la citazione del testo +sorgente si fermerà proprio prima della prima occorrenza di un commento +contenente @samp{end verbatim}, se presente. Nel seguente file sorgente di +esempio, la musica viene interpretata in modalità relativa ma il blocco +testuale non mostrerà il blocco @code{relative}, ovvero + +@example +\relative c' @{ % begin verbatim + c4 e2 g4 + f2 e % end verbatim +@} +@end example + +@noindent +mostrerà il seguente blocco testuale + +@example + c4 e2 g4 + f2 e +@end example + +@noindent +Se si desidera tradurre i commenti e i nomi delle variabili nell'output +verbatim ma non nei sorgenti, si può impostare la variabile d'ambiente +@code{LYDOC_LOCALEDIR} sul percorso di una directory; la directory deve +contenere un albero dei cataloghi di messaggio @file{.mo} che hanno +@code{lilypond-doc} come dominio. + +@item addversion +(Solo per l'output Texinfo.) Aggiunge @code{\version +@@w@{"@@version@{@}"@}} nella prima riga dell'output di @code{verbatim}. + +@item texidoc +(Solo per l'output Texinfo.) Se @command{lilypond} viene lanciato con +l'opzione @option{--header=@/texidoc} e il file da elaborare si +chiama @file{foo.ly}, verrà creato un file @file{foo.texidoc} a patto che +ci sia un campo @code{texidoc} nel blocco @code{\header}. L'opzione @code{texidoc} +fa sì che @command{lilypond-book} includa tali file, aggiungendo il loro +contenuto in forma di blocco di documentazione proprio prima del frammento +di musica. + +Se il file @file{foo.ly} contiene + +@example +\header @{ + texidoc = "Questo file mostra il funzionamento di una singola nota." +@} +@{ c'4 @} +@end example + +@noindent +e il documento Texinfo @file{test.texinfo} contiene + +@example +@@lilypondfile[texidoc]@{foo.ly@} +@end example + +@noindent +il seguente comando produce il risultato atteso + +@example +lilypond-book --pdf --process="lilypond \ + -dbackend=eps --header=texidoc" test.texinfo +@end example + +Per la maggior parte, i documenti di test di LilyPond (nella directory @file{input} +della distribuzione) sono piccoli file @file{.ly} che hanno esattamente questo +aspetto. + +Ai fini della localizzazione, se il documento Texinfo document contiene +@code{@@documentlanguage @var{LANG}} e l'header di @file{foo.ly} +contiene un campo @code{texidoc@var{LANG}}, quando si lancia @command{lilypond} +con l'opzione @option{--header=@/texidoc@var{LANG}} verrà incluso +@file{foo.texidoc@var{LANG}} invece di @file{foo.texidoc}. + +@item lilyquote +(Solo per l'output Texinfo.) Questa opzione è simile alla citazione, ma solo +il frammento musicale (e l'opzionale blocco di testo sottinteso dall'opzione +@code{verbatim}) vengono inseriti in un blocco di citazione. Questa opzione è +utile se si vuole citare (@code{quote}) il frammento musicale ma non il +blocco della documentazione @code{texidoc}. + +@item doctitle +(Solo per l'output Texinfo.) Questa opzione funziona in modo simile +all'opzione @code{texidoc}: se @command{lilypond} viene lanciato con +l'opzione @option{--header=@/doctitle} e il file da elaborare si chiama +@file{foo.ly} e contiene un campo @code{doctitle} nel blocco +@code{\header}, viene creato un file @file{foo.doctitle}. Se si usa +l'opzione @code{doctitle}, i contenuti di @file{foo.doctitle}, +che dovrebbero trovarsi su una singola linea di @var{text}, vengono inseriti +nel documento Texinfo come @code{@@lydoctitle @var{text}}. +@code{@@lydoctitle} è una macro definita nel documento Texinfo. +Lo stesso discorso relativo all'elaborazione @code{texidoc} delle lingue +localizzate si applica anche a @code{doctitle}. + +@item nogettext +(Solo per l'output Texinfo.) Non tradurre i commenti e i nomi delle +variabili nel blocco testuale del frammento citato. + +@item printfilename +Se un file di input di LilyPond viene incluso con @code{\lilypondfile}, il +nome del file viene mostrato immediatamente prima del frammento musicale. Per l'output +HTML, questo nome è un collegamento. Viene mostrata solo la base del nome del +file, ovvero viene tolta la parte che costituisce il percorso del file. + +@end table + + +@node Utilizzo di lilypond-book +@section Utilizzo di @command{lilypond-book} +@translationof Invoking lilypond-book + +@command{lilypond-book} crea un file con una delle seguenti +estensioni: @file{.tex}, @file{.texi}, @file{.html} o @file{.xml}, +a seconda del formato dell'output. Tutti i file @file{.tex}, @file{.texi} e +@file{.xml} necessitano di un'ulteriore elaborazione. + +@subheading Istruzioni specifiche di ogni formato + +@subsubheading @LaTeX{} + +Esistono due modi di elaborare il documento @LaTeX{} per la stampa o la +pubblicazione: generare direttamente un file PDF tramite PDF@LaTeX{} oppure +generare un file PostScript tramite @LaTeX{}, attraverso un traduttore da DVI a +PostScript come @command{dvips}. Il primo modo è più semplice e raccomandato@footnote{Nota +che PDF@LaTeX{} e @LaTeX{} potrebbero non essere entrambi utilizzabili per compilare +un qualsiasi documento @LaTeX{}: ecco perché vengono illustrati i due modi.}, e +indipendentemente da quello che userai, puoi convertire facilmente PostScript e +PDF con strumenti come @command{ps2pdf} e @command{pdf2ps} inclusi nel pacchetto +Ghostscript. + +Per creare un file PDF con PDF@LaTeX{}, si usa + +@example +lilypond-book --pdf tuofile.lytex +pdflatex tuofile.tex +@end example + +@cindex caratteri vettoriali +@cindex type1, carattere +@cindex dvips +@cindex utilizzo di dvips +Per produrre l'output PDF attraverso @LaTeX{}/@command{dvips}/@command{ps2pdf}, +bisogna usare questi comandi + +@example +lilypond-book tuofile.lytex +latex tuofile.tex +dvips -Ppdf tuofile.dvi +ps2pdf tuofile.ps +@end example + +@noindent +Il file @file{.dvi} creato da questa sequenza non conterrà le +teste delle note. È normale; se si seguono le istruzioni, le teste +verranno incluse nei file @file{.ps} e @file{.pdf}. + +L'esecuzione di @command{dvips} potrebbe generare dei messaggi di avviso +relativi ai caratteri; questi messaggi sono innocui e possono +essere ignorati. Se esegui @command{latex} in modalità due colonne, ricorda +di aggiungere @code{-t landscape} alle opzioni di @command{dvips}. + +@subsubheading Texinfo + +Per generare un documento Texinfo (in qualsiasi formato di output), si seguono +le normali procedure usate con Texinfo; ovvero, si lancia @command{texi2pdf} o +@command{texi2dvi} o @command{makeinfo}, a seconda del formato di output +che si vuole creare. +@ifinfo +@xref{Format with texi2dvi, , , texinfo, GNU Texinfo}, e @ref{Creating +an Info File, , , texinfo, GNU Texinfo}. +@end ifinfo +@ifnotinfo +Si veda la documentazione di Texinfo per ulteriori dettagli. +@end ifnotinfo + + +@subheading Opzioni da linea di comando + +@command{lilypond-book} accetta le seguenti opzioni da linea di comando: + +@table @code +@item -f @var{formato} +@itemx --format=@var{formato} +Specifica il tipo di documento da elaborare: @code{html}, @code{latex}, +@code{texi} (il formato predefinito) o @code{docbook}. Se manca questa opzione, +@command{lilypond-book} cerca di rilevare il formato automaticamente, si veda +@ref{Filename extensions}. Attualmente, @code{texi} è equivalente a +@code{texi-html}. + +@c This complicated detail is not implemented, comment it out -jm +@ignore +The @code{texi} document type produces a Texinfo file with music +fragments in the printed output only. For getting images in the HTML +version, the format @code{texi-html} must be used instead. +@end ignore + +@item -F @var{filtro} +@itemx --filter=@var{filtro} +Convoglia i frammenti attraverso il @var{filtro}. @code{lilypond-book} non +esegue contemporaneamente il filtro e l'elaborazione. Ad esempio, + +@example +lilypond-book --filter='convert-ly --from=2.0.0 -' mio-libro.tely +@end example + +@item -h +@itemx --help +Mostra un breve messaggio di aiuto. + +@item -I @var{dir} +@itemx --include=@var{dir} +Aggiunge @var{dir} al percorso di inclusione. @command{lilypond-book} cerca +anche dei frammenti già compilati nel percorso di inclusione e non li riscrive +nella directory di output, quindi in alcuni casi è necessario eseguire +ulteriori comandi come @command{makeinfo} o @command{latex} con le stesse +opzioni @code{-I @var{dir}}. + +@item -o @var{dir} +@itemx --output=@var{dir} +Salva i file generati nella directory @var{dir}. L'esecuzione di +@command{lilypond-book} genera tanti piccoli file che LilyPond +elaborerà. Per evitare tutto questo disordine nella directory dei +sorgenti, si usa l'opzione da linea di comando @option{--output} +e si entra in questa directory prima di eseguire @command{latex} +o @command{makeinfo}. + +@example +lilypond-book --output=out tuofile.lytex +cd out +... +@end example + +@itemx --skip-lily-check +Non si arresta se non viene trovato l'output di lilypond. Viene usata per la +documentazione Info di LilyPond, che è priva di immagini. + +@itemx --skip-png-check +Non si arresta se non vengono trovate immagini PNG per i file EPS. Viene usata +per la documentazione Info di LilyPond, che è priva di immagini. + +@itemx --lily-output-dir=@var{dir} +Scrive i file lily-XXX nella directory @var{dir}, crea un link nella +directory @code{--output}. Si usa questa opzione per risparmiare tempo nella +compilazione di documenti situati in directory diverse che condividono +molti identici frammenti. + +@itemx --info-images-dir=@var{dir} +Formatta l'output di Texinfo in modo che Info cerchi le immagini della musica +in @var{dir}. + +@itemx --latex-program=@var{prog} +Lancia l'eseguibile @command{prog} invece di @command{latex}. Questa opzione +è utile, ad esempio, se il documento è elaborato con @command{xelatex}. + +@itemx --left-padding=@var{quantità} +Crea una spaziatura corrispondente a questa quantità tra i riquadri EPS. @var{quantità} è +misurata in millimetri e il valore predefinito è 3.0. Questa opzione si usa +se i righi dello spartito oltrepassano il margine destro. + +La larghezza di un sistema molto denso può variare in base agli elementi +della notazione attaccati al margine sinistro, come i numeri di battuta e +i nomi degli strumenti. Questa opzione accorcia tutte le linee e le sposta a +a destra della stessa quantità. + +@item -P @var{comando} +@itemx --process=@var{comando} +Elabora i frammenti di LilyPond con @var{comando}. Il comando predefinito è +@code{lilypond}. @code{lilypond-book} non userà @code{--filter} e +@code{--process} contemporaneamente. + +@item --pdf +Crea file PDF da usare con PDF@LaTeX{}. + +@itemx --use-source-file-names +Salva i file di output dei frammenti con lo stesso nome, esclusa l'estensione, +dei sorgenti. Questa opzione funziona solo con i frammenti inclusi con +@code{lilypondfile} e solo se le directory indicate da @code{--output-dir} e +@code{--lily-output-dir} sono diverse. + +@item -V +@itemx --verbose +Mostra un output dettagliato. + +@item -v +@itemx --version +Mostra informazioni sulla versione. +@end table + +@knownissues + +Il comando Texinfo @code{@@pagesizes} non viene inrerpretato. Allo stesso +modo, i comandi @LaTeX{} che modificano i margini e la larghezza della linea +dopo il preambolo vengono ignorati. + +Solo il primo @code{\score} di un blocco LilyPond viene elaborato. + + +@node Estensioni dei nomi di file +@section Estensioni dei nomi di file +@translationof Filename extensions + +Si può usare qualsiasi estensione per il file di input, ma se non si usa +l'estensione raccomandata per uno specifico formato potrebbe essere +necessario specificare a mano il formato di output; per i dettagli si veda +@ref{Invoking lilypond-book}. Altrimenti, @command{lilypond-book} sceglie +automaticamente il formato di output in base all'estensione del file di input. + +@quotation +@multitable @columnfractions .2 .5 +@item @strong{estensione} @tab @strong{formato di output} +@item +@item @file{.html} @tab HTML +@item @file{.htmly} @tab HTML +@item @file{.itely} @tab Texinfo +@item @file{.latex} @tab @LaTeX{} +@item @file{.lytex} @tab @LaTeX{} +@item @file{.lyxml} @tab DocBook +@item @file{.tely} @tab Texinfo +@item @file{.tex} @tab @LaTeX{} +@item @file{.texi} @tab Texinfo +@item @file{.texinfo} @tab Texinfo +@item @file{.xml} @tab HTML +@end multitable +@end quotation + +Se si usa per il file di input la stessa estensione che @command{lilypond-book} +usa per il file di output e se il file di input è nella stessa directory +in cui lavora @command{lilypond-book}, bisogna usare l'opzione @code{--output} +per far sì che @command{lilypond-book} sia eseguito; altrimenti si ferma e +mostra un messaggio di errore simile a @qq{L'output sovrascriverebbe il file di input}. + + +@node Modelli per lilypond-book +@section Modelli per lilypond-book +@translationof lilypond-book templates + +Ecco alcuni modelli da usare con @code{lilypond-book}. Se non hai familiarità +con questo programma, consulta @ref{lilypond-book}. + +@subsection LaTeX + +Si possono includere frammenti LilyPond in un documento LaTeX. + +@example +\documentclass[]@{article@} + +\begin@{document@} + +Normale testo LaTeX. + +\begin@{lilypond@} +\relative c'' @{ + a4 b c d +@} +\end@{lilypond@} + +Altro testo LaTeX, seguito da alcune opzioni tra parentesi quadre. + +\begin@{lilypond@}[fragment,relative=2,quote,staffsize=26,verbatim] +d4 c b a +\end@{lilypond@} +\end@{document@} +@end example + +@subsection Texinfo + +Si possono includere frammenti LilyPond in Texinfo; infatti questo intero +manuale è scritto in Texinfo. + +@example +\input texinfo @c -*-texinfo-*- +@@node Top +@@top + +Testo Texinfo + +@@lilypond +\relative c' @{ + a4 b c d +@} +@@end lilypond + +Altro testo Texinfo, seguito dalle opzioni tra parentesi. + +@@lilypond[verbatim,fragment,ragged-right] +d4 c b a +@@end lilypond + +@@bye +@end example + + +@subsection html + +@example + + + + + +

+I documenti per lilypond-book possono combinare liberamente musica e testo. Ad +esempio, + +\relative c'' @{ + a4 b c d +@} + +

+ +

+Ancora un po' di Lilypond, questa volta con delle opzioni: + + +a4 b c d + +

+ + + + + +@end example + +@subsection xelatex + +@verbatim +\documentclass{article} +\usepackage{ifxetex} +\ifxetex +%elementi specifici di xetex +\usepackage{xunicode,fontspec,xltxtra} +\setmainfont[Numbers=OldStyle]{Times New Roman} +\setsansfont{Arial} +\else +%Questo può essere lasciato vuoto se non si usa pdftex +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage{mathptmx}%Times +\usepackage{helvet}%Helvetica +\fi +%Qui è possibile inserire tutti i pacchetti inclusi anche in pdftex +\usepackage[ngerman,finnish,english]{babel} +\usepackage{graphicx} + +\begin{document} +\title{Un breve documento con LilyPond e xelatex} +\maketitle + +I comandi abituali di \textbf{font} interni al \emph{testo} funzionano, +perché \textsf{sono supportati da \LaTeX{} e XeteX.} +Se vuoi usare comandi specifici come \verb+\XeTeX+, devi +includerli nuovamente in un ambiente \verb+\ifxetex+. +You can use this to print the \ifxetex \XeTeX{} command \else +XeTeX command \fi which is not known to normal \LaTeX . + +Nel testo normale si possono usare semplicemente i comandi LilyPond, come in +questo esempio: + +\begin{lilypond} +{a2 b c'8 c' c' c'} +\end{lilypond} + +\noindent +e così via. + +I tipi di carattere dei frammenti inseriti con LilyPond devono essere impostati +all'interno dei frammenti stessi. Si legga il manuale di Uso dell'applicazione per +sapere come usare lilypond-book. + +\selectlanguage{ngerman} +Auch Umlaute funktionieren ohne die \LaTeX -Befehle, wie auch alle +anderen +seltsamen Zeichen: __ ______, wenn sie von der Schriftart +unterst__tzt werden. +\end{document} +@end verbatim + + +@node Condividere l'indice +@section Condividere l'indice +@translationof Sharing the table of contents + +Queste funzioni sono già incluse nel pacchetto OrchestralLily: + +@example +@url{http://repo.or.cz/w/orchestrallily.git} +@end example + +Alcuni utenti +preferiscono esportare l'indice da lilypond e leggerlo da dentro +@LaTeX{} per la sua maggiore flessibilità nella gestione del testo. + +@subsubheading Esportare l'indice da LilyPond + +Per questo esempio si presume che lo spartito abbia vari movimenti nello stesso file +di output di lilypond. + +@smallexample +#(define (oly:create-toc-file layout pages) + (let* ((label-table (ly:output-def-lookup layout 'label-page-table))) + (if (not (null? label-table)) + (let* ((format-line (lambda (toc-item) + (let* ((label (car toc-item)) + (text (caddr toc-item)) + (label-page (and (list? label-table) + (assoc label label-table))) + (page (and label-page (cdr label-page)))) + (format #f "~a, section, 1, @{~a@}, ~a" page text label)))) + (formatted-toc-items (map format-line (toc-items))) + (whole-string (string-join formatted-toc-items ",\n")) + (output-name (ly:parser-output-name parser)) + (outfilename (format "~a.toc" output-name)) + (outfile (open-output-file outfilename))) + (if (output-port? outfile) + (display whole-string outfile) + (ly:warning (_ "Unable to open output file ~a for the TOC information") outfilename)) + (close-output-port outfile))))) + +\paper @{ + #(define (page-post-process layout pages) (oly:create-toc-file layout pages)) +@} +@end smallexample + +@subsubheading Importare l'indice in LaTeX + +In LaTeX l'intestazione deve includere: + +@c no, this doesn't require the smallexample, but since the other +@c two blocks on this page use it, I figured I might as well +@c user it here as well, for consistency. -gp +@smallexample +\usepackage@{pdfpages@} +\includescore@{nameofthescore@} +@end smallexample + +@noindent +dove @code{\includescore} viene definito in questo modo: + +@smallexample +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \includescore@{PossibleExtension@} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Read in the TOC entries for a PDF file from the corresponding .toc file. +% This requires some heave latex tweaking, since reading in things from a file +% and inserting it into the arguments of a macro is not (easily) possible + +% Solution by Patrick Fimml on #latex on April 18, 2009: +% \readfile@{filename@}@{\variable@} +% reads in the contents of the file into \variable (undefined if file +% doesn't exist) +\newread\readfile@@f +\def\readfile@@line#1@{% +@{\catcode`\^^M=10\global\read\readfile@@f to \readfile@@tmp@}% +\edef\do@{\noexpand\g@@addto@@macro@{\noexpand#1@}@{\readfile@@tmp@}@}\do% +\ifeof\readfile@@f\else% +\readfile@@line@{#1@}% +\fi% +@} +\def\readfile#1#2@{% +\openin\readfile@@f=#1 % +\ifeof\readfile@@f% +\typeout@{No TOC file #1 available!@}% +\else% +\gdef#2@{@}% +\readfile@@line@{#2@}% +\fi +\closein\readfile@@f% +@}% + + +\newcommand@{\includescore@}[1]@{ +\def\oly@@fname@{\oly@@basename\@@ifmtarg@{#1@}@{@}@{_#1@}@} +\let\oly@@addtotoc\undefined +\readfile@{\oly@@xxxxxxxxx@}@{\oly@@addtotoc@} +\ifx\oly@@addtotoc\undefined +\includepdf[pages=-]@{\oly@@fname@} +\else +\edef\includeit@{\noexpand\includepdf[pages=-,addtotoc=@{\oly@@addtotoc@}] +@{\oly@@fname@}@}\includeit +\fi +@} +@end smallexample + + +@node Metodi alternativi per combinare testo e musica +@section Metodi alternativi per combinare testo e musica +@translationof Alternate methods of mixing text and music + +Altri modi per combinare testo e musica (senza usare +@command{lilypond-book}) sono trattati in +@ref{LilyPond output in other programs}. + + diff --git a/Documentation/it/usage/running.itely b/Documentation/it/usage/running.itely index e044867c27..426ebd2920 100644 --- a/Documentation/it/usage/running.itely +++ b/Documentation/it/usage/running.itely @@ -55,14 +55,14 @@ obiettivi di questo manuale; si prega di consultare altra documentazione su questo argomento se non si conosce la linea di comando. @menu -* Invocare lilypond:: +* Utilizzo di lilypond:: * Opzioni della linea di comando per lilypond:: * Variabili d'ambiente:: * LilyPond in una gabbia chroot:: @end menu -@node Invocare lilypond -@unnumberedsubsec Invocare @command{lilypond} +@node Utilizzo di lilypond +@unnumberedsubsec Utilizzo di @command{lilypond} @translationof Invoking lilypond L'eseguibile @command{lilypond} può essere lanciato dalla linea di comando @@ -128,7 +128,7 @@ e non hanno niente a che fare con lilypond. @unnumberedsubsec Opzioni della linea di comando per @command{lilypond} @translationof Command line options for lilypond -@cindex Invocare @command{lilypond} +@cindex Utilizzo di @command{lilypond} @cindex opzioni della linea di comando per @command{lilypond} @cindex linea di comando, opzioni di @cindex switches diff --git a/Documentation/it/usage/suggestions.itely b/Documentation/it/usage/suggestions.itely index 878cf13aec..b709ffdaa8 100644 --- a/Documentation/it/usage/suggestions.itely +++ b/Documentation/it/usage/suggestions.itely @@ -1,4 +1,4 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*- @ignore Translation of GIT committish: 7ba0a22641cb0c7f5949d66a06d1e2e1fd0b3033 @@ -15,28 +15,29 @@ @translationof Suggestions for writing files Ora puoi iniziare a scrivere file di input di LilyPond più grandi -- -non più i piccoli esempi del tutorial, ma brani completi. +non più i piccoli esempi del tutorial, ma pezzi completi. Ma qual è il modo migliore di farlo? Finché LilyPond comprende i file di input e produce l'output che desideri, non importa quale aspetto abbiano i file di input. Tuttavia, -ci sono altre questioni da tenere a mente quando si scrivono +ci sono altri aspetti da tenere a mente quando si scrivono file di input di LilyPond. @itemize -@item Se fai un errore? La struttura di un file LilyPond può rendere -l'individuazione di certi errori più facile (o più difficile). - -@item Se vuoi inviare i tuoi file di input a qualcuno? E se vuoi modificare -i tuoi file di input dopo qualche anno? Alcuni file di input di LilyPond sono -comprensibili a prima vista; altri ti possono lasciare perplesso per un'ora. - -@item Se vuoi aggiornare il tuo file per poterlo usare -con una versione più recente di LilyPond? La sintassi di input cambia di -tanto in tanto mentre LilyPond si evolve. Alcune modifiche possono essere -fatte in automatico con @code{convert-ly}, ma altre potrebbero richiedere +@item Che fare in caso di errore? La struttura data a un file LilyPond può +rendere l'individuazione di certi tipi di errore più facile (o più difficile). + +@item Che fare se vuoi inviare i tuoi file di input a qualcuno? E se decidi di +modificare i tuoi file di input dopo qualche anno? Alcuni file di input di +LilyPond sono comprensibili a prima vista; altri ti possono lasciare a grattarti +la testa per un'ora. + +@item Che fare se vuoi aggiornare il tuo file per poterlo usare con una +versione più recente di LilyPond? Con l'evolversi di LilyPond, la sintassi di +input si trova soggetta a occasionali cambiamenti. Alcune modifiche possono +essere fatte in automatico con @code{convert-ly}, ma altre potrebbero richiedere un intervento manuale. I file di input di LilyPond possono essere strutturati -per poter essere aggiornati in modo più semplice (o più difficile). +in moda da essere poi aggiornati in modo più semplice (o più difficile). @end itemize @@ -45,7 +46,7 @@ per poter essere aggiornati in modo più semplice (o più difficile). * Scrivere musica esistente:: * Grandi progetti:: * Risoluzione dei problemi:: -* Make e Makefiles:: +* Make e Makefile:: @end menu @@ -53,28 +54,28 @@ per poter essere aggiornati in modo più semplice (o più difficile). @section Consigli generali @translationof General suggestions -Ecco alcuni consigli che possono aiutarti ad evitare o risolvere +Ecco alcuni consigli che possono aiutarti a evitare o risolvere i problemi: @itemize @item @strong{Includi il numero di @code{\version} in ogni file}. Nota che tutti i modelli contengono l'informazione su @code{\version}. Si consiglia vivamente di includere sempre @code{\version}, non importa quanto piccolo possa essere -il file. Per esperienza personale, è piuttosto frustrante cercare di ricordare -quale versione di LilyPond si usava alcuni anni prima. @command{convert-ly} +il file. L'esperienza personale insegna come sia frustrante cercare di ricordare +quale versione di LilyPond si usava alcuni anni prima! @command{convert-ly} richiede che si dichiari la versione di LilyPond utilizzata. @item @strong{Includi i controlli}: @ruser{Bar and bar number checks}, -@ruser{Octave checks}. Se includi i controlli ogni tanto, allora se -fai un errore lo puoi individuare più rapidamente. Cosa si intende per -@q{ogni tanto}? Dipende dalla complessità della musica. -Se la musica è molto semplice, magari solo una o due volte. Se la musica -è molto complessa, ad ogni battuta. +@ruser{Octave checks}. Includendo i controlli ogni tanto, se fai +un errore lo puoi individuare più rapidamente. Cosa si intende per +@q{ogni tanto}? Dipende dalla complessità della musica. Se la musica +è molto semplice, anche solo una volta o due. Se la musica è molto +complessa, a ogni battuta. @item @strong{Una battuta per ogni linea di testo}. Se c'è qualcosa di complicato, nella musica stessa o nell'output che desideri, di solito è preferibile scrivere una sola battuta per linea. Risparmiare spazio sullo -schermo concentrando otto battute per ogni riga non conviene affatto +schermo concentrando otto battute per ogni riga non è affatto conveniente se poi devi fare il @q{debug} dei file di input. @item @strong{Inserisci dei commenti nei file di input}. Puoi usare i numeri @@ -83,15 +84,15 @@ di battuta (ogni tanto) o dei riferimenti ai temi musicali aver bisogno dei commenti mentre scrivi il brano la prima volta, ma se due o tre anni dopo vuoi cambiare qualcosa o se vuoi dare il sorgente a un amico, sarà molto più difficile capire le tue intenzioni e la struttura del file -se non sono presenti dei commenti. +se mancano i commenti. @item @strong{Indenta le parentesi graffe}. Molti problemi sono causati -da uno squilibrio nel numero di @code{@{} e @code{@}}. +da mancata corrispondenza tra le quantità di @code{@{} e di @code{@}}. @item @strong{Esplicita le durate} all'inizio delle sezioni e delle -variabili. Se specifichi @code{c4 d e} all'inizio di un fraseggio -(innvece di @code{c d e} soltanto) puoi evitare alcuni problemi -quando riarrangi la musica successivamente. +variabili. Se specifichi @code{c4 d e} all'inizio di una frase +(invece di @code{c d e} soltanto) puoi evitare l'insorgere di problemi +al momento di rimetter mano alla musica. @item @strong{Separa le modifiche manuali (tweak)} dalle definizioni musicali. Vedi @rlearning{Ridurre l’input grazie a variabili e funzioni}, e @@ -104,14 +105,14 @@ musicali. Vedi @rlearning{Ridurre l’input grazie a variabili e funzioni}, e @section Scrivere musica esistente @translationof Typesetting existing music -Se stai scrivendo della musica da una partitura esistente (ovvero il brano -di uno spartito già scritto), +Se stai riportando della musica da una partitura esistente (ovvero il brano +contenuto in uno spartito già scritto), @itemize @item Inserisci in LilyPond le note del manoscritto (la copia fisica della musica) un sistema alla volta (ma sempre una battuta per linea di testo), -e controlla ogni sistema quando ne completi uno. Puoi usare le proprietà +e controlla ogni sistema completato. Puoi usare le proprietà @code{showLastLength} o @code{showFirstLength} per velocizzare l'elaborazione -- vedi @ruser{Skipping corrected music}. @@ -123,24 +124,25 @@ definire @code{mBreak = @{ @}} per eliminare tutte queste interruzioni di riga. Così LilyPond potrà inserire le interruzioni dove ritiene stiano meglio. -@item Quando si inserisce una parte per uno strumento traspositore in una -variabile, si consiglia di avvolgere le note tra parentesi +@item Quando si inserisce una parte per strumento traspositore all'interno +di una variabile, è consigliabile racchiudere le note tra parentesi graffe @example \transpose c altezza-naturale @{...@} @end example @noindent -(dove @code{altezza-naturale} è l'altezza dello strumento) in modo -che la musica contenuta nella variabile sia effettivamente in Do. Puoi trasporla -all'indietro quando la variabile viene usata, se richiesto, ma potresti non -desiderarlo (ad esempio quando si stampa una partitura in intonazione reale, -quando si converte una parte per trombone dalla chiave di Sol alla chiave di -basso, etc.). Errori nelle trasposizioni sono meno probabili se tutta la musica -contenuta nelle variabili è ad un'altezza costante. - -Inoltre, trasponi sempre verso/dal Do. Questo significa che le uniche altre -tonalità che userai sono le altezze naturali degli strumenti - bes +(dove @code{altezza-naturale} corrisponde all'intonazione di base dello +strumento) così che la musica contenuta nella variabile sia effettivamente +scritta in Do. La puoi presentare trasposta quando la variabile viene usata, +se necessario, ma potresti non desiderarlo (ad esempio quando si stampa una +partitura in intonazione reale, quando si traspone una parte per trombone +dalla chiave di Sol alla chiave di basso, etc.). Errori nelle trasposizioni +sono meno probabili se tutta la musica contenuta nelle variabili è ad +un'altezza costante. + +Inoltre, trasponi sempre in relazione al Do. Questo significa che le uniche +altre tonalità che userai saranno le altezze naturali degli strumenti - bes per una tromba in Si bemolle, aes per un clarinetto in La bemolle, etc. @end itemize @@ -157,8 +159,8 @@ file di input diventa vitale. @item @strong{Usa una variabile per ogni voce}, con un minimo di struttura nella definizione. La struttura della sezione -@code{\score} è la parte che più probabilmente cambierà; -la definizione di @code{violin} è molto improbabile che cambi +@code{\score} è la parte più probabilmente soggetta a cambiamenti; +è invece molto improbabile che la definizione di @code{violin} cambi in una nuova versione di LilyPond. @example @@ -176,7 +178,7 @@ g4 c'8. e16 @end example @item @strong{Separa le modifiche manuali (tweak) dalle definizioni musicali}. Questo -punto è stato menzionato prima, ma nei grandi progetti diventa di vitale +punto è stato menzionato prima; nei grandi progetti diventa di vitale importanza. Potrebbe essere necessario modificare la definizione di @code{fthenp}, ma si dovrebbe farlo una volta sola e senza toccare niente in @code{violin}. @@ -198,19 +200,19 @@ g4\fthenp c'8. e16 Prima o poi ti capiterà di scrivere un file che LilyPond non riesce a compilare. I messaggi inviati da LilyPond potrebbero aiutarti -a trovare l'errore, ma in molti casi devi fare qualche ricerca +a trovare l'errore, ma in molti casi sarà necessario fare qualche ricerca per individuare l'origine del problema. -Gli strumenti più potenti per questo scopo sono il commento della +Gli strumenti più potenti a questo riguardo sono il commento della linea singola (indicato da @code{%}) e il commento di blocco -(indicato da @code{%@{ ... %@}}). Se non sai dove sta il problema, +(indicato da @code{%@{ ... %@}}). Se non sai dove sia il problema, inizia col commentare ampie parti del file di input. Dopo aver commentato una sezione, prova a compilare di nuovo il file. Se funziona, allora il problema deve trovarsi nella parte che hai appena commentato. Se non -funziona, continua a commentare il materiale finché non hai qualcosa -che funziona. +funziona, continua a commentare il materiale finché non ottieni un codice +funzionante. -Nel caso più estremo, potresti finire con soltanto +Nel caso estremo, potresti finire con soltanto @example \score @{ @@ -226,7 +228,7 @@ Nel caso più estremo, potresti finire con soltanto @noindent (in altre parole, un file senza musica) -Se accade questo, non rinunciare. Decommenta un pezzetto -- ad esempio, +Se dovesse succedere, non rinunciare. Decommenta un pezzetto -- ad esempio, la parte di basso -- e vedi se funziona. Se non funziona, allora commenta tutta la musica del basso (ma lascia @code{\bass} in @code{\score} non commentato). @@ -240,52 +242,52 @@ bass = \relative c' @{ @} @end example -Ora inizia piano piano a decommentare la parte di +Ora inizia a decommentare mano a mano la parte di @code{bass} finché non trovi la linea che causa il problema. Un'altra tecnica di debug molto utile consiste nel creare @rweb{Esempi minimi}. -@node Make e Makefiles -@section Make e Makefiles +@node Make e Makefile +@section Make e Makefile @translationof Make and Makefiles -@cindex makefiles +@cindex makefile @cindex make Tutte le piattaforme su cui Lilypond può essere installato supportano un software chiamato @code{make}. Questo software legge un file speciale chiamato -@code{Makefile} che definisce quali file dipendono da quali altri file e quali -comandi bisogna dare al sistema operativo per produrre un file da un -altro. Ad esempio makefile può spiegare come generare +@code{Makefile} che definisce quali file dipendono da quali altri e quali +comandi occorra dare al sistema operativo per produrre un file da un +altro. Ad esempio Makefile può spiegare come generare @file{ballad.pdf} e @file{ballad.midi} da @file{ballad.ly} eseguendo Lilypond. -Ci sono situazioni in cui è una buona idea creare un @code{Makefile} +In alcune situazioni, è una buona idea creare un @code{Makefile} per il proprio progetto, per proprio comodo o come cortesia -per altri che potrebbero avere accesso ai file sorgente. +per quanti altri possano avere accesso ai file sorgente. Questo vale per i progetti molto ampi con tanti file inclusi e diverse opzioni di output (ad esempio, partitura completa, parti, partitura -del direttore, riduzione per pianoforte, etc.), o per progetti che +del direttore, riduzione per pianoforte, etc.) o per progetti che richiedono comandi difficili per la compilazione (come i progetti che -usano @code{lilypond-book}). Makefiles variano molto in complessità +usano @code{lilypond-book}). I Makefile variano molto in complessità e flessibilità, in base alle necessità e alle abilità degli autori. Il programma GNU Make è installato nelle distribuzioni GNU/Linux e su MacOS X ed è disponibile anche per Windows. Si veda il @strong{Manuale di GNU Make} per conoscere in dettaglio l'uso di -@code{make}, dato che quel che segue dà solo un'idea quel che può fare. +@code{make}, dato che quel che segue dà solo un'idea delle sue potenzialità. -I comandi per definire delle regole in un makefile cambiano in base -alla piattaforma; ad esempio le varie forme di Linux e +I comandi per definire delle regole in un Makefile cambiano in base +alla piattaforma; ad esempio le varie distribuzioni di Linux e MacOS usano @code{bash}, mentre Windows usa @code{cmd}. Nota che su -MacOS X bisogna configurare il sistema per usare l'interprete da linea -di comando. Di seguito alcuni makefile di esempio, con versioni sia per +MacOS X è necessario configurare il sistema per usare l'interprete da linea +di comando. Di seguito alcuni Makefile di esempio, con versioni sia per Linux/MacOS sia per Windows. -Il primo esempio è per un'opera per orchestra in quattro -movimenti e ha la seguente struttura di directory: +Il primo esempio è per una composizione per orchestra in quattro +movimenti e presenta una directory strutturata come segue: @example Symphony/ @@ -327,12 +329,12 @@ nella directory @file{Notes}: \include ../Notes/cello.ily @end example -Il makefile avrà i target di @code{score} (l'intero brano in partitura -completa), @code{movements} (movimenti individuali in partitura completa), -e @code{parts} (parti individuali per i musicisti). C'è anche un +Il Makefile avrà i target di @code{score} (l'intero brano in partitura +completa), @code{movements} (singoli movimenti in partitura completa), +e @code{parts} (singole parti per i musicisti). C'è anche un target @code{archive} che creerà un archivio compresso dei file sorgenti, utile per la condivisione via web o email. Ecco un esempio di -makefile per GNU/Linux e MacOS X. Dovrebbe essere salvato col +Makefile per GNU/Linux e MacOS X. Dovrebbe essere salvato col nome @code{Makefile} nella directory principale del progetto: @warning{Quando si definisce un target o una regola di pattern, le @@ -430,7 +432,7 @@ archive: @end example -Ci sono complicazioni specifiche nella piattaforma Windows. Dopo aver +Ci sono alcune complicazioni specifiche della piattaforma Windows. Dopo aver scaricato e installato GNU Make per Windows, bisogna impostare il percorso corretto nelle variabili d'ambiente di sistema perché la shell DOS possa trovare il programma Make. Per farlo, clicca col tasto destro @@ -444,7 +446,7 @@ avrà un aspetto simile: C:\Program Files\GnuWin32\bin @end example -Lo stesso makefile deve essere modificato per gestire diversi comandi +Lo stesso Makefile deve essere modificato per gestire diversi comandi shell e gli spazi che sono presenti in alcune directory predefinite di sistema. Il target @code{archive} target viene tolto perché Windows non ha il comando @code{tar}; inoltre Windows ha una diversa estensione @@ -578,10 +580,10 @@ archive: @c TODO: make this thing work on Windows -Il makefile precedente non funziona su Windows. Un'alternativa per +Il Makefile precedente non funziona su Windows. Un'alternativa per gli utenti Windows consiste nel creare un semplice file batch contenente i comandi per la compilazione. Questo file non terrà -traccia delle dipendenze come fa invece un makefile, ma almeno riduce +traccia delle dipendenze come fa invece un Makefile, ma almeno riduce il processo di compilazione a un solo comando. Salva il codice seguente come @command{build.bat} o @command{build.cmd}. Il file batch può essere eseguito nel prompt DOS o semplicemente con diff --git a/Documentation/it/usage/updating.itely b/Documentation/it/usage/updating.itely index fa6e0ec533..03049a150b 100644 --- a/Documentation/it/usage/updating.itely +++ b/Documentation/it/usage/updating.itely @@ -26,7 +26,7 @@ gran parte dei cambiamenti di sintassi tra le versioni di LilyPond. @menu * Perché la sintassi cambia?:: -* Invocare convert-ly:: +* Utilizzo di convert-ly:: * Opzioni da linea di comando per convert-ly:: * Problemi nell'eseguire convert-ly:: * Conversioni manuali:: @@ -67,8 +67,8 @@ tutti i caratteri speciali di LaTeX con i rispettivi caratteri UTF-8; è necessa aggiornare a mano i vecchi file di input di LilyPond. -@node Invocare convert-ly -@section Invocare @command{convert-ly} +@node Utilizzo di convert-ly +@section Utilizzo di @command{convert-ly} @translationof Invoking convert-ly @command{convert-ly} usa la dichiarazione @code{\version} nel file di input -- 2.39.2