1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
4 Translation of GIT committish: d378daa101069ce6497292b0f4a7f6ce2e9b51f0
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
11 @include included/generating-output.itexi
18 Questo capitolo fornisce un'introduzione di base all'uso di LilyPond.
22 * Come scrivere i file di input::
23 * Gestire gli errori::
24 * Come leggere i manuali::
27 @node Compilare un file
28 @section Compilare un file
29 @translationof Compiling a file
38 @node Inserire l'input
39 @subsection Inserire l'input
40 @translationof Entering input
43 @cindex esempio iniziale
44 @cindex esempio, iniziale
45 @cindex maiuscole, sensibile alle
51 @qq{Compilazione} è il termine usato per indicare l'elaborazione di un
52 file di input in formato LilyPond per produrre uno o più file di output. I
53 file di output generalmente sono PDF (per la stampa e la visualizzazione),
54 MIDI (per la riproduzione audio) e PNG (per l'utilizzo online). I file di
55 input di LilyPond sono semplici file di testo.
57 Questo esempio mostra un semplice file di input:
60 \version "@w{@version{}}"
68 @c in this case we don't want verbatim
75 @warning{Le note e i testi nel file LilyPond devono essere sempre
76 scritti tra @w{@strong{@{ parentesi graffe @}}}. Per evitare ambiguità, le
77 parentesi dovrebbero essere delimitate da degli spazi, a meno che non si
78 trovino all'inizio o alla fine di una linea. Può darsi che in alcuni esempi
79 di questo manuale le parentesi verranno omesse, ma non dimenticarle
80 nella tua musica! Per maggiori informazioni sull'aspetto degli esempi
81 nel manuale, si veda @ref{Come leggere i manuali}.}
83 Inoltre, l'input di LilyPond è @strong{sensibile alle maiuscole}.
84 @w{@samp{@{ c d e @}}} è un input valido; @w{@samp{@{ C D E @}}} invece
85 produrrà un messaggio di errore.
89 @node Generare l'output
90 @unnumberedsubsubsec Generare l'output
91 @translationof Producing output
93 @c TODO: move index entries
95 @cindex vedere la musica
96 @cindex editor di testo
98 Come generare l'output di LilyPond dipende dal tuo sistema operativo e dai
104 @ref{MacOS X, @sourceimage{logo-macosx,,,}}
105 @ref{MacOS X, MacOS X} (grafico)
108 @ref{Windows, @sourceimage{logo-windows,,,}}
109 @ref{Windows, Microsoft Windows} (grafico)
112 @ref{Linea di comando, @sourceimage{logo-linux,,,}
113 @sourceimage{logo-freebsd,,,}
114 @sourceimage{logo-macosx,,,}
115 @sourceimage{logo-windows,,,}
117 @ref{Linea di comando, Tutti i sistemi operativi} (linea di comando)
121 Si noti che sono disponibili molti altri editor di testo con
122 un miglior supporto per LilyPond. Per maggiori informazioni, si veda
123 @rweb{Editing facilitato}.
125 @warning{La prima volta che si esegue LilyPond la compilazione potrà richiedere
126 uno o due minuti perché tutti i font di sistema devono essere prima
127 analizzati. In seguito, LilyPond sarà molto più veloce!}
132 @cindex eseguire LilyPond in MacOS X
133 @cindex MacOS X, eseguire LilyPond
141 @cindex eseguire LilyPond in Windows
142 @cindex Windows, eseguire LilyPond
147 @node Linea di comando
148 @subsection Linea di comando
149 @translationof Command-line
151 @cindex eseguire LilyPond in Unix
152 @cindex Unix, eseguire LilyPond
157 @node Come scrivere i file di input
158 @section Come scrivere i file di input
159 @translationof How to write input files
161 Questa sezione introduce le basi della sintassi di LilyPond e ha l'obiettivo
162 di aiutarti ad iniziare a scrivere i file di input.
165 * Notazione semplice::
166 * Lavorare sui file di input::
169 @node Notazione semplice
170 @subsection Notazione semplice
171 @translationof Simple notation
173 @cindex notazione semplice
174 @cindex notazione, semplice
180 * Indicazione di tempo::
181 * Indicazioni di tempo::
186 LilyPond aggiungerà automaticamente alcuni elementi della notazione. Nell'esempio
187 seguente, abbiamo specificato soltanto quattro note, ma LilyPond
188 ha aggiunto una chiave, il tempo e le durate.
190 @lilypond[verbatim,quote]
197 Questo comportamento può essere modificato, ma nella maggior parte dei
198 casi questi valori sono utili.
202 @unnumberedsubsubsec Altezze
203 @translationof Pitches
206 @cindex modo relativo
209 @cindex alterazioni e modo relativo
210 @cindex modo relativo, e alterazioni
217 Glossario musicale: @rglosnamed{pitch,altezza}, @rglosnamed{interval,intervallo},
218 @rglosnamed{scale,scala}, @rglosnamed{middle C,Do centrale}, @rglosnamed{octave,ottava},
219 @rglosnamed{accidental,alterazione}.
221 Il modo più semplice per inserire le note è usare il modo @code{\relative}
222 (relativo). In questo modo, l'ottava viene scelta automaticamente in
223 base al principio per cui la nota che segue deve essere posizionata vicino
224 a quella precedente, ovvero deve essere posizionata nell'ottava che si trova
225 entro tre spazi di pentagramma dalla nota precedente. Per iniziare, scriveremo
226 il pezzo musicale più elementare, una @notation{scala}, in cui ogni nota
227 si trova entro una distanza di appena uno spazio di pentagramma dalla nota precedente.
229 @lilypond[verbatim,quote]
230 % set the starting point to middle C
237 La nota iniziale è un @notation{Do centrale}. Ogni nota successiva viene
238 posta il più vicino possibile alla nota precedente -- in altre parole, la prima
239 @code{c} è il Do più vicino al Do centrale. Questo è seguito dal Re
240 più vicino alla nota precedente. Possiamo creare melodie che hanno
241 intervalli più ampi, sempre usando soltanto il modo @code{\relative}:
243 @lilypond[verbatim,quote]
251 Non è necessario che la prima nota della melodia inizi con
252 la nota che specifica l'altezza iniziale. Nell'esempio
253 precedente, la prima nota -- il @code{Re} -- è il Re più vicino al
256 Se si aggiungono (o si rimuovono) apostrofi @code{'} o virgole @code{,} dal
257 comando @q{@w{@code{@bs{}relative c'}}}, possiamo cambiare l'ottava di
260 @lilypond[verbatim,quote]
261 % one octave above middle C
267 Il modo relativo all'inizio può apparire disorientante, ma è il sistema più
268 semplice per inserire gran parte delle melodie. Vediamo come questo calcolo
269 relativo funziona in pratica. Se si parte da un Si, che si trova sulla linea
270 centrale in chiave di violino, si possono raggiungere un Do, un Re e un Mi
271 entro 3 spazi di pentagramma andando in su, e un La, un Sol e un Fa entro 3
272 spazi di pentagramma andando in giù. Quindi se la nota che segue il Si è
273 un Do, un Re o un Mi, si troverà sopra il Si, mentre il La, il Sol
274 o il Fa si troveranno sotto.
276 @lilypond[verbatim,quote]
278 b' c % c is 1 staff space up, so is the c above
279 b d % d is 2 up or 5 down, so is the d above
280 b e % e is 3 up or 4 down, so is the e above
281 b a % a is 6 up or 1 down, so is the a below
282 b g % g is 5 up or 2 down, so is the g below
283 b f % f is 4 up or 3 down, so is the f below
287 Accade esattamente lo stesso quando qualcuna di queste note ha un
288 diesis o un bemolle. Le @notation{Alterazioni} sono
289 @strong{completamente ignorate} nel calcolo della posizione relativa.
290 Viene fatto lo stesso conteggio dello spazio del pentagramma da
291 una nota in una qualsiasi altra posizione sul pentagramma.
293 Per inserire intervalli che sono più ampi di tre spazi di pentagramma, si può
294 alzare l'@notation{ottava} aggiungendo al nome della nota una virgoletta
295 ad apice singolo @code{'} (o apostrofo). Si può abbassare l'ottava
296 aggiungendo al nome della nota una virgola @code{,}.
298 @lilypond[verbatim,quote]
306 Per cambiare una nota di due (o più!) ottave, si usano multipli di
307 @code{''} o @code{,,} -- ma stai attento a usare due virgolette ad
308 apici semplici @code{''} e non quelle a doppi apici @code{"}@tie{}!
309 @c " - keeps quotes in order for context-sensitive editor -td
312 @unnumberedsubsubsec Durate (ritmi)
313 @translationof Duration (rhythms)
315 @cindex durate della nota
322 @cindex notazione delle durate
324 Glossario musicale: @rglosnamed{beam,coda}, @rglosnamed{duration,durata},
325 @rglosnamed{whole note,semibreve}, @rglosnamed{half note,minima}, @rglosnamed{quarter note,semiminima},
326 @rglosnamed{dotted note,nota puntata}.
328 La @notation{durata} di una nota viene indicata da un numero che segue
329 il nome della nota: @code{1} per una @notation{semibreve}, @code{2} per
330 una @notation{minima}, @code{4} per una @notation{semiminima} e
331 così via. Le @notation{Code} vengono aggiunte in automatico.
333 Se non si specifica una durata, si usa la durata precedente anche
334 per la nota successiva. La durata predefinita della prima nota è di un
337 @lilypond[verbatim,quote]
341 a16 a a a a32 a a a a64 a a a a a a a a2
345 Per creare @notation{note puntate}, aggiungi un punto @code{.} al
346 numero di durata. La durata di una nota puntata deve essere dichiarata
347 esplicitamente (cioè con un numero).
349 @lilypond[verbatim,quote]
358 @unnumberedsubsubsec Pause
362 @cindex notazione delle pause
364 Glossario musicale: @rglosnamed{rest,pausa}.
366 Una @notation{pausa} viene inserita proprio come una nota ma col nome
369 @lilypond[verbatim,quote]
377 @node Indicazione di tempo
378 @unnumberedsubsubsec Indicazione di tempo
379 @translationof Time signature
381 @cindex tempo, indicazione di
386 Glossario musicale: @rglosnamed{time signature,indicazione di tempo}.
388 Il @notation{tempo} si imposta con il comando @code{\time}:
390 @lilypond[verbatim,quote]
401 @node Indicazioni di tempo
402 @unnumberedsubsubsec Indicazioni di tempo
403 @translationof Tempo marks
405 @cindex indicazioni di tempo
406 @cindex indicazioni metronomiche
411 Glossario musicale: @rglosnamed{tempo indication,indicazione di tempo},
412 @rglosnamed{metronome,metronomo}.
414 L' @notation{indicazione di tempo} e l' @notation{indicazione metronomica} si
415 impostano col comando @code{\tempo}:
417 @lilypond[verbatim,quote]
426 \tempo "Presto" 4 = 120
433 @unnumberedsubsubsec Chiave
437 @cindex chiave di violino
445 Glossario musicale: @rglosnamed{clef,chiave}.
447 La @notation{chiave} si imposta con il comando @code{\clef}:
449 @lilypond[verbatim,quote]
464 @unnumberedsubsubsec Tutto insieme
465 @translationof All together
467 Ecco un piccolo esempio che mostra tutti questi elementi insieme:
469 @lilypond[verbatim,quote]
473 \tempo "Andante" 4 = 120
483 Guida alla notazione: @ruser{Inserimento delle altezze},
484 @ruser{Inserimento delle durate}, @ruser{Inserimento delle pause},
485 @ruser{Indicazione di tempo}, @ruser{Chiave}.
488 @node Lavorare sui file di input
489 @subsection Lavorare sui file di input
490 @translationof Working on input files
492 @cindex parentesi graffe
493 @cindex graffe, parentesi
495 @cindex commento di linea
496 @cindex linea, commento di
497 @cindex commento di blocco
498 @cindex blocco, commento di
499 @cindex sensibile alle maiuscole
500 @cindex insensibile agli spazi
502 @cindex versionamento
504 @cindex numero di versione
509 @funindex %@{ ... %@}
511 I file di input di LilyPond sono simili ai file sorgenti di molti comuni
512 linguaggi di programmazione. Contengono una dichiarazione di versione, sono
513 sensibili alle maiuscole, e in generale gli spazi bianchi vengono ignorati. Le
514 espressioni musicali si formano con parentesi graffe @w{@code{@{ @}}}, e i commenti
515 sono indicati con @code{%} o @w{@code{%@{ @dots{} %@}}}@tie{}.
517 Se le frasi precedenti ti sembrano assurde, non preoccuparti! Spiegheremo
518 cosa significano tutti questi termini:
523 @strong{Dichiarazione di versione}:
524 Ogni file LilyPond deve contenere una dichiarazione di versione. Una
525 dichiarazione di versione è una linea che indica la versione di LilyPond per la
526 quale il file è stato scritto, come nel seguente esempio:
529 \version "@w{@version{}}"
532 Per convenzione, la dichiarazione di versione viene posta all'inizio del file
535 La dichiarazione di versione è importante per almeno due ragioni. Primo,
536 permette l'aggiornamento automatico del file di input file via via che la
537 sintassi di LilyPond cambia. Secondo, indica la versione di LilyPond richiesta
538 per compilare il file.
540 Se la dichiarazione di versione è omessa dal file di input, LilyPond mostra
541 un avvertimento durante la compilazione del file.
544 @strong{Sensibile alle maiuscole}:
545 distingue tra lettere in minuscolo (es:
546 @w{@code{a, b, s, t}}) o in maiuscolo (es: @w{@code{A, B, S, T}}).
547 Le note sono in minuscolo: @w{@code{@{ c d e @}}} è un input valido;
548 @w{@code{@{ C D E @}}} causerà un messaggio di errore.
551 @strong{Insensibile agli spazi}:
552 non importa quanti spazi (o tabulazioni o nuove linee) aggiungi.
553 @w{@samp{@{ c4 d e @}}} ha lo stesso significato di
554 @w{@samp{@{ c4 @tie{} @tie{} @tie{} d e @}}} e:
562 Certo, l'esempio precedente è scomodo da leggere. Una buona regola
563 pratica è indentare i blocchi di codice con una tabulazione o due spazi:
571 Tuttavia, uno spazio bianco @emph{è} necessario per separare molti elementi
572 sintattici gli uni dagli altri. In altre parole, lo spazio bianco può essere
573 @emph{aggiunto}, ma non può essere @emph{eliminato}. Dal momento che uno
574 spazio bianco mancante può dare adito a strani errori, si consiglia di
575 inserire sempre uno spazio bianco prima e dopo ogni elemento sintattico,
576 ad esempio, prima e dopo ogni parentesi graffa.
579 @strong{Espressioni}:
580 ogni parte dell'input di LilyPond deve avere @strong{@{@tie{}parentesi@tie{}graffe@tie{}@}}
581 intorno. Queste parentesi dicono a LilyPond che l'input costituisce
582 un'espressione musicale singola, proprio come le parentesi @code{()} in
583 matematica. Per evitare ambiguità, le parentesi dovrebbero essere
584 racchiuse tra spazi, a meno che non si trovino all'inizio o alla fine di una linea.
586 Anche un comando di LilyPond seguito da un'espressione semplice in
587 parentesi (come @q{@w{@code{@bs{}relative c' @{ @dots{} @}}}}) conta come
588 un'espressione musicale singola.
591 @cindex commento di linea
592 @cindex commento di blocco
595 un commento è un appunto per il lettore umano dell'input musicale; viene
596 ignorato quando l'input viene analizzato, dunque non ha alcun effetto
597 sull'output finale. Ci sono due tipi di commenti. Il simbolo di percentuale
598 @code{%} introduce un commento di linea; tutto quello che sta dopo @code{%}
599 su quella linea verrà ignorato. Per convenzione, un commento di linea viene
600 posto @emph{sopra} il codice a cui si riferisce.
604 % questo commento si riferisce ai Si
608 Un commento di blocco segna come commento un'intera sezione di input musicale.
609 Tutto ciò che è compreso tra @code{%@{} e @code{%@}} viene ignorato.
610 Tuttavia, i commenti di blocco non si @q{annidano}. Ovvero non si può
611 inserire un commento di blocco dentro a un altro commento di blocco. Se
612 ci provi, il primo @code{%@}} interromperà @emph{entrambi} i commenti di
613 blocco. Il seguente frammento mostra gli usi possibili per i commenti:
616 % ecco le note di "Ah! Vous dirai-je, Maman"
620 Questa linea e le note sotto vengono ignorate,
621 perché si trovano in un commento di blocco.
630 @node Gestire gli errori
631 @section Gestire gli errori
632 @translationof Dealing with errors
634 @cindex risoluzione dei problemi
636 Talvolta LilyPond non genera l'output che desideri. Questa
637 sezione fornisce alcuni link che possono aiutarti a risolvere i
638 problemi che potrai incontrare.
642 * Consigli generali per la risoluzione dei problemi::
643 * Alcuni errori comuni::
646 @node Consigli generali per la risoluzione dei problemi
647 @subsection Consigli generali per la risoluzione dei problemi
648 @translationof General troubleshooting tips
650 La risoluzione dei problemi in LilyPond può essere un compito impegnativo
651 per le persone che sono abituate a un'interfaccia grafica, perché è possibile
652 creare dei file di input non validi. Quando questo accade, un approccio logico
653 è il modo migliore per identificare e risolvere il problema. Alcune linee guida
654 che ti aiutano a imparare questo sono indicate in @rprogram{Risoluzione dei problemi}.
657 @node Alcuni errori comuni
658 @subsection Alcuni errori comuni
659 @translationof Some common errors
661 @cindex errori comuni
663 Ci sono alcuni errori comuni che sono difficili da risolvere basandosi
664 soltanto sui messaggi di errore che compaiono. Questi sono
665 descritti in @rprogram{Errori comuni}.
668 @node Come leggere i manuali
669 @section Come leggere i manuali
670 @translationof How to read the manuals
672 Questa sezione spiega come leggere la documentazione in modo efficiente e
673 introduce alcune utili funzionalità interattive che sono disponibili
674 nella versione online della documentazione.
678 * Esempi cliccabili::
679 * Panoramica dei manuali::
683 @node Materiale omesso
684 @subsection Materiale omesso
685 @translationof Omitted material
687 @cindex come leggere il manuale
688 @cindex manuale, leggere
689 @cindex leggere il manuale
690 @cindex cliccabili, esempi
691 @cindex esempi cliccabili
692 @cindex consigli su come costruire i file
694 @cindex costruire i file, consigli
695 @cindex file, consigli per costruirli
697 L'input di LilyPond deve essere compreso dai segni @code{@{ @}} o da
698 @q{@w{@code{@bs{}relative c'' @{ @dots{} @}}}}, come abbiamo visto in @ref{Lavorare
699 sui file di input}. Nel resto di questo manuale gran parte degli esempi
700 ometterà questi segni. Per replicare gli esempi, puoi copiare
701 e incollare l'input mostrato, ma @strong{devi} aggiungere
702 @q{@w{@code{@bs{}relative c'' @{ @dots{} @}}}} in questo modo:
706 @dots{}inserire qui l'esempio@dots{}
710 Perché omettere le parentesi? Gran parte degli esempi in questo manuale
711 possono essere inseriti nel mezzo di un pezzo più ampio. Per questi esempi,
712 non ha senso includere @q{@w{@code{@bs{}relative c'' @{ @dots{} @}}}} --
713 non si deve mettere un @code{\relative} dentro un altro
714 @code{\relative}! Se includessimo @q{@w{@code{@bs{}relative c'' @{ @dots{} @}}}}
715 in ogni esempio, non potresti copiare un piccolo esempio della
716 documentazione e incollarlo dentro a un tuo brano più
717 esteso. La maggior parte delle persone vuole aggiungere del materiale a
718 un brano esistente, per questo abbiamo strutturato il manuale in questo modo.
720 Ricorda che i file LilyPond devono avere una dichiarazione di
721 versione (@code{\version}). Nei manuali la dichiarazione è omessa
722 perché gli esempi sono frammenti di codice e non file completi.
723 Ma dovresti prendere l'abitudine di includerla nei tuoi file.
725 @node Esempi cliccabili
726 @subsection Esempi cliccabili
727 @translationof Clickable examples
729 @warning{Queste funzionalità sono disponibili soltanto nei manuali in HTML.}
731 Molte persone imparano ad usare un programma provando e smanettando.
732 Questo è possibile anche con LilyPond. Se clicchi su un'immagine
733 nella versione HTML di questo manuale, vedrai l'esatto input
734 LilyPond usato per generare quell'immagine. Provalo su
740 c''4-\markup { \bold \huge { Clicca qui. } }
744 Tagliando e copiando quel che si trova nella sezione @qq{ly snippet},
745 puoi ricavare un modello di partenza per sperimentare. Per vedere esattamente
746 lo stesso output (larghezza della linea e tutto il resto), copia tutto da @qq{Start
747 cut-&-pastable section} alla fine del file.
752 @n ode Keyboard navigation
753 @s ubsection Keyboard navigation
755 @warning{This features is only available in the HTML manuals.}
757 @c TODO: once this is figured out, insert it here.
759 We are currently working on this feature.
763 @node Panoramica dei manuali
764 @subsection Panoramica dei manuali
765 @translationof Overview of manuals
767 La documentazione su LilyPond è vasta. I nuovi utenti talvolta
768 sono confusi su quali parti dovrebbero leggere, e ogni tanto
769 saltano la lettura di parti fondamentali.
771 @warning{Non saltare le parti importanti della
772 documentazione. Altrimenti ti risulterà molto più difficile
773 comprendere le sezioni successive.}
778 @strong{Prima di fare @emph{qualsiasi} tentativo}: leggi il @ref{Tutorial}
779 e la @ref{Notazione comunemente utilizzata} del Manuale di apprendimento. Se
780 ti imbatti in termini musicali che non conosci, cercali nel @rglosnamed{Top, Glossario}.
783 @strong{Prima di tentare di scrivere un pezzo musicale completo}: leggi
784 i @ref{Concetti fondamentali} del Manuale di apprendimento. Dopo puoi dare
785 un'occhiata alle sezioni rilevanti della @rusernamed{Top, Guida alla notazione}.
788 @strong{Prima di cercare di cambiare l'output predefinito}: leggi
789 @ref{Tweaking output} del Manuale di apprendimento.
792 @strong{Prima di iniziare un grande progetto}: leggi il documento
793 @rprogram{Consigli su come scrivere i file} del manuale di Uso del programma.