1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
4 Translation of GIT committish: 88cfc9ee61dece9cffff98ab7f10318633698c39
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{How to read the manuals}.}
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{Command-line, @sourceimage{logo-linux,,,}
113 @sourceimage{logo-freebsd,,,}
114 @sourceimage{logo-macosx,,,}
115 @sourceimage{logo-windows,,,}
117 @ref{Command-line, 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
216 Glossario musicale: @rglosnamed{pitch,altezza}, @rglosnamed{interval,intervallo},
217 @rglosnamed{scale,scala}, @rglosnamed{middle C,Do centrale}, @rglosnamed{octave,ottava},
218 @rglosnamed{accidental,alterazione}.
220 LilyPond usa lettere minuscole per indicare le altezze. Le lettere da
221 @code{c} a@tie{}@code{b} denotano le altezze nella
222 @q{piccola ottava} sotto il @notation{Do centrale}. L'aggiunta dei
223 suffissi @code{'} o@tie{}@code{,} indica ottave più alte o più basse.
224 Ecco una scala che inizia con un @notation{Do centrale}, e un arpeggio:
226 @lilypond[verbatim,quote]
227 { c' d' e' f' g' a' b' c'' g c' e' g' c'' e'' g'' c''' }
230 Il modo più semplice per inserire le note è usare il modo @code{\relative}
231 (relativo). In questo modo, l'ottava viene scelta automaticamente in
232 base al principio per cui la nota che segue deve essere posizionata vicino
233 a quella precedente, ovvero deve essere posizionata nell'ottava che si trova
234 entro tre spazi di pentagramma dalla nota precedente. Per iniziare, scriveremo
235 il pezzo musicale più elementare, una @notation{scala}, in cui ogni nota
236 si trova entro una distanza di appena uno spazio di pentagramma dalla nota precedente.
238 @lilypond[verbatim,quote]
245 La nota iniziale è un @notation{Do centrale}, specificato da @code{c'}. Ogni
246 nota successiva viene posta il più vicino possibile alla nota precedente -- in
247 altre parole, la prima @code{c} è il Do più vicino al Do centrale. Questo è
248 seguito dal Re più vicino alla nota precedente. Possiamo creare melodie che
249 hanno intervalli più ampi, sempre usando soltanto il modo @code{\relative}:
251 @lilypond[verbatim,quote]
259 Nell'esempio precedente, la prima nota -- il @code{d'} con un segno @code{'} -- è
260 il Re nell'ottava che inizia dal Do centrale e va su fino al Si.
263 Se si aggiungono (o si rimuovono) apostrofi @code{'} o virgole @code{,} dalla
264 prima nota, possiamo cambiare l'ottava di partenza:
266 @lilypond[verbatim,quote]
272 Il modo relativo all'inizio può apparire disorientante, ma è il sistema più
273 semplice per inserire gran parte delle melodie. Vediamo come questo calcolo
274 relativo funziona in pratica. Se si parte da un Si, che si trova sulla linea
275 centrale in chiave di violino, si possono raggiungere un Do, un Re e un Mi
276 entro 3 spazi di pentagramma andando in su, e un La, un Sol e un Fa entro 3
277 spazi di pentagramma andando in giù. Quindi se la nota che segue il Si è
278 un Do, un Re o un Mi, si troverà sopra il Si, mentre il La, il Sol
279 o il Fa si troveranno sotto.
281 @lilypond[verbatim,quote]
283 b' c % c is 1 staff space up, so is the c above
284 b d % d is 2 up or 5 down, so is the d above
285 b e % e is 3 up or 4 down, so is the e above
286 b a % a is 6 up or 1 down, so is the a below
287 b g % g is 5 up or 2 down, so is the g below
288 b f % f is 4 up or 3 down, so is the f below
292 Accade esattamente lo stesso quando qualcuna di queste note ha un
293 diesis o un bemolle. Le @notation{Alterazioni} sono
294 @strong{completamente ignorate} nel calcolo della posizione relativa.
295 Viene fatto lo stesso conteggio dello spazio del pentagramma da
296 una nota in una qualsiasi altra posizione sul pentagramma.
298 Per inserire intervalli che sono più ampi di tre spazi di pentagramma, si può
299 alzare l'@notation{ottava} aggiungendo al nome della nota una virgoletta
300 ad apice singolo @code{'} (o apostrofo). Si può abbassare l'ottava
301 aggiungendo al nome della nota una virgola @code{,}.
303 @lilypond[verbatim,quote]
311 Per cambiare una nota di due (o più!) ottave, si usano multipli di
312 @code{''} o @code{,,} -- ma stai attento a usare due virgolette ad
313 apici semplici @code{''} e non quelle a doppi apici @code{"}@tie{}!
314 @c " - keeps quotes in order for context-sensitive editor -td
317 @unnumberedsubsubsec Durate (ritmi)
318 @translationof Duration (rhythms)
320 @cindex durate della nota
327 @cindex notazione delle durate
329 Glossario musicale: @rglosnamed{beam,coda}, @rglosnamed{duration,durata},
330 @rglosnamed{whole note,semibreve}, @rglosnamed{half note,minima}, @rglosnamed{quarter note,semiminima},
331 @rglosnamed{dotted note,nota puntata}.
333 La @notation{durata} di una nota viene indicata da un numero che segue
334 il nome della nota: @code{1} per una @notation{semibreve}, @code{2} per
335 una @notation{minima}, @code{4} per una @notation{semiminima} e
336 così via. Le @notation{Code} vengono aggiunte in automatico.
338 Se non si specifica una durata, si usa la durata precedente anche
339 per la nota successiva. La durata predefinita della prima nota è di un
342 @lilypond[verbatim,quote]
346 a16 a a a a32 a a a a64 a a a a a a a a2
350 Per creare @notation{note puntate}, aggiungi un punto @code{.} al
351 numero di durata. La durata di una nota puntata deve essere dichiarata
352 esplicitamente (cioè con un numero).
354 @lilypond[verbatim,quote]
363 @unnumberedsubsubsec Pause
367 @cindex notazione delle pause
369 Glossario musicale: @rglosnamed{rest,pausa}.
371 Una @notation{pausa} viene inserita proprio come una nota ma col nome
374 @lilypond[verbatim,quote]
382 @node Indicazione di tempo
383 @unnumberedsubsubsec Indicazione di tempo
384 @translationof Time signature
386 @cindex tempo, indicazione di
390 Glossario musicale: @rglosnamed{time signature,indicazione di tempo}.
392 Il @notation{tempo} si imposta con il comando @code{\time}:
394 @lilypond[verbatim,quote]
405 @node Indicazioni di tempo
406 @unnumberedsubsubsec Indicazioni di tempo
407 @translationof Tempo marks
409 @cindex indicazioni di tempo
410 @cindex indicazioni metronomiche
414 Glossario musicale: @rglosnamed{tempo indication,indicazione di tempo},
415 @rglosnamed{metronome,metronomo}.
417 L' @notation{indicazione di tempo} e l' @notation{indicazione metronomica} si
418 impostano col comando @code{\tempo}:
420 @lilypond[verbatim,quote]
429 \tempo "Presto" 4 = 120
436 @unnumberedsubsubsec Chiave
440 @cindex chiave di violino
447 Glossario musicale: @rglosnamed{clef,chiave}.
449 La @notation{chiave} si imposta con il comando @code{\clef}:
451 @lilypond[verbatim,quote]
466 @unnumberedsubsubsec Tutto insieme
467 @translationof All together
469 Ecco un piccolo esempio che mostra tutti questi elementi insieme:
471 @lilypond[verbatim,quote]
475 \tempo "Andante" 4 = 120
485 Guida alla notazione: @ruser{Inserimento delle altezze},
486 @ruser{Inserimento delle durate}, @ruser{Inserimento delle pause},
487 @ruser{Indicazione di tempo}, @ruser{Chiave}.
490 @node Lavorare sui file di input
491 @subsection Lavorare sui file di input
492 @translationof Working on input files
494 @cindex parentesi graffe
495 @cindex graffe, parentesi
497 @cindex commento di linea
498 @cindex linea, commento di
499 @cindex commento di blocco
500 @cindex blocco, commento di
501 @cindex sensibile alle maiuscole
502 @cindex insensibile agli spazi
504 @cindex versionamento
506 @cindex numero di versione
511 @funindex %@{ ... %@}
513 I file di input di LilyPond sono simili ai file sorgenti di molti comuni
514 linguaggi di programmazione. Contengono una dichiarazione di versione, sono
515 sensibili alle maiuscole, e in generale gli spazi bianchi vengono ignorati. Le
516 espressioni musicali si formano con parentesi graffe @w{@code{@{ @}}}, e i commenti
517 sono indicati con @code{%} o @w{@code{%@{ @dots{} %@}}}@tie{}.
519 Se le frasi precedenti ti sembrano assurde, non preoccuparti! Spiegheremo
520 cosa significano tutti questi termini:
525 @strong{Dichiarazione di versione}:
526 Ogni file LilyPond deve contenere una dichiarazione di versione. Una
527 dichiarazione di versione è una linea che indica la versione di LilyPond per la
528 quale il file è stato scritto, come nel seguente esempio:
531 \version "@w{@version{}}"
534 Per convenzione, la dichiarazione di versione viene posta all'inizio del file
537 La dichiarazione di versione è importante per almeno due ragioni. Primo,
538 permette l'aggiornamento automatico del file di input file via via che la
539 sintassi di LilyPond cambia. Secondo, indica la versione di LilyPond richiesta
540 per compilare il file.
542 Se la dichiarazione di versione è omessa dal file di input, LilyPond mostra
543 un avvertimento durante la compilazione del file.
546 @strong{Sensibile alle maiuscole}:
547 distingue tra lettere in minuscolo (es:
548 @w{@code{a, b, s, t}}) o in maiuscolo (es: @w{@code{A, B, S, T}}).
549 Le note sono in minuscolo: @w{@code{@{ c d e @}}} è un input valido;
550 @w{@code{@{ C D E @}}} causerà un messaggio di errore.
553 @strong{Insensibile agli spazi}:
554 non importa quanti spazi (o tabulazioni o nuove linee) aggiungi.
555 @w{@samp{@{ c4 d e @}}} ha lo stesso significato di
556 @w{@samp{@{ c4 @tie{} @tie{} @tie{} d e @}}} e:
564 Certo, l'esempio precedente è scomodo da leggere. Una buona regola
565 pratica è indentare i blocchi di codice con una tabulazione o due spazi:
573 Tuttavia, uno spazio bianco @emph{è} necessario per separare molti elementi
574 sintattici gli uni dagli altri. In altre parole, lo spazio bianco può essere
575 @emph{aggiunto}, ma non può essere @emph{eliminato}. Dal momento che uno
576 spazio bianco mancante può dare adito a strani errori, si consiglia di
577 inserire sempre uno spazio bianco prima e dopo ogni elemento sintattico,
578 ad esempio, prima e dopo ogni parentesi graffa.
581 @strong{Espressioni}:
582 ogni parte dell'input di LilyPond deve avere @strong{@{@tie{}parentesi@tie{}graffe@tie{}@}}
583 intorno. Queste parentesi dicono a LilyPond che l'input costituisce
584 un'espressione musicale singola, proprio come le parentesi @code{()} in
585 matematica. Per evitare ambiguità, le parentesi dovrebbero essere
586 racchiuse tra spazi, a meno che non si trovino all'inizio o alla fine di una linea.
588 Anche un comando di LilyPond seguito da un'espressione semplice in
589 parentesi (come @q{@w{@code{@bs{}relative c' @{ @dots{} @}}}}) conta come
590 un'espressione musicale singola.
593 @cindex commento di linea
594 @cindex commento di blocco
597 un commento è un appunto per il lettore umano dell'input musicale; viene
598 ignorato quando l'input viene analizzato, dunque non ha alcun effetto
599 sull'output finale. Ci sono due tipi di commenti. Il simbolo di percentuale
600 @code{%} introduce un commento di linea; tutto quello che sta dopo @code{%}
601 su quella linea verrà ignorato. Per convenzione, un commento di linea viene
602 posto @emph{sopra} il codice a cui si riferisce.
606 % questo commento si riferisce ai Si
610 Un commento di blocco segna come commento un'intera sezione di input musicale.
611 Tutto ciò che è compreso tra @code{%@{} e @code{%@}} viene ignorato.
612 Tuttavia, i commenti di blocco non si @q{annidano}. Ovvero non si può
613 inserire un commento di blocco dentro a un altro commento di blocco. Se
614 ci provi, il primo @code{%@}} interromperà @emph{entrambi} i commenti di
615 blocco. Il seguente frammento mostra gli usi possibili per i commenti:
618 % ecco le note di "Ah! Vous dirai-je, Maman"
622 Questa linea e le note sotto vengono ignorate,
623 perché si trovano in un commento di blocco.
632 @node Gestire gli errori
633 @section Gestire gli errori
634 @translationof Dealing with errors
636 @cindex risoluzione dei problemi
638 Talvolta LilyPond non genera l'output che desideri. Questa
639 sezione fornisce alcuni link che possono aiutarti a risolvere i
640 problemi che potrai incontrare.
644 * Consigli generali per la risoluzione dei problemi::
645 * Alcuni errori comuni::
648 @node Consigli generali per la risoluzione dei problemi
649 @subsection Consigli generali per la risoluzione dei problemi
650 @translationof General troubleshooting tips
652 La risoluzione dei problemi in LilyPond può essere un compito impegnativo
653 per le persone che sono abituate a un'interfaccia grafica, perché è possibile
654 creare dei file di input non validi. Quando questo accade, un approccio logico
655 è il modo migliore per identificare e risolvere il problema. Alcune linee guida
656 che ti aiutano a imparare questo sono indicate in @rprogram{Risoluzione dei problemi}.
659 @node Alcuni errori comuni
660 @subsection Alcuni errori comuni
661 @translationof Some common errors
663 @cindex errori comuni
665 Ci sono alcuni errori comuni che sono difficili da risolvere basandosi
666 soltanto sui messaggi di errore che compaiono. Questi sono
667 descritti in @rprogram{Errori comuni}.
670 @node Come leggere i manuali
671 @section Come leggere i manuali
672 @translationof How to read the manuals
674 Questa sezione spiega come leggere la documentazione in modo efficiente e
675 introduce alcune utili funzionalità interattive che sono disponibili
676 nella versione online della documentazione.
680 * Esempi cliccabili::
681 * Panoramica dei manuali::
685 @node Materiale omesso
686 @subsection Materiale omesso
687 @translationof Omitted material
689 @cindex come leggere il manuale
690 @cindex manuale, leggere
691 @cindex leggere il manuale
692 @cindex cliccabili, esempi
693 @cindex esempi cliccabili
694 @cindex consigli su come costruire i file
696 @cindex costruire i file, consigli
697 @cindex file, consigli per costruirli
699 L'input di LilyPond deve essere compreso dai segni @code{@{ @}} o da
700 @q{@w{@code{@bs{}relative @{ @dots{} @}}}}, come abbiamo visto in
701 @ref{Working on input files}. Nel resto di questo manuale alcuni
702 esempi brevi ometteranno questi segni. Per replicare questi esempi, puoi
703 copiare l'input mostrato e incollarlo tra @code{@{} e @code{@}} nel tuo
708 @dots{}inserire qui l'esempio@dots{}
712 Ricorda che i file LilyPond devono avere una dichiarazione di
713 versione (@code{\version}). Nei manuali la dichiarazione è omessa
714 perché gli esempi sono frammenti di codice e non file completi.
715 Ma dovresti prendere l'abitudine di includerla nei tuoi file.
717 @node Esempi cliccabili
718 @subsection Esempi cliccabili
719 @translationof Clickable examples
721 @warning{Queste funzionalità sono disponibili soltanto nei manuali in HTML.}
723 Molte persone imparano ad usare un programma provando e smanettando.
724 Questo è possibile anche con LilyPond. Se clicchi su un'immagine
725 nella versione HTML di questo manuale, vedrai l'esatto input
726 LilyPond usato per generare quell'immagine. Provalo su
732 c''4-\markup { \bold \huge { Clicca qui. } }
736 Tagliando e copiando quel che si trova nella sezione @qq{ly snippet},
737 puoi ricavare un modello di partenza per sperimentare. Per vedere esattamente
738 lo stesso output (larghezza della linea e tutto il resto), copia tutto da @qq{Start
739 cut-&-pastable section} alla fine del file.
744 @n ode Keyboard navigation
745 @s ubsection Keyboard navigation
747 @warning{This features is only available in the HTML manuals.}
749 @c TODO: once this is figured out, insert it here.
751 We are currently working on this feature.
755 @node Panoramica dei manuali
756 @subsection Panoramica dei manuali
757 @translationof Overview of manuals
759 La documentazione su LilyPond è vasta. I nuovi utenti talvolta
760 sono confusi su quali parti dovrebbero leggere, e ogni tanto
761 saltano la lettura di parti fondamentali.
763 @warning{Non saltare le parti importanti della
764 documentazione. Altrimenti ti risulterà molto più difficile
765 comprendere le sezioni successive.}
770 @strong{Prima di fare @emph{qualsiasi} tentativo}: leggi il @ref{Tutorial}
771 e la @ref{Common notation} del Manuale di apprendimento. Se
772 ti imbatti in termini musicali che non conosci, cercali nel @rglosnamed{Top, Glossario}.
775 @strong{Prima di tentare di scrivere un pezzo musicale completo}: leggi
776 i @ref{Fundamental concepts} del Manuale di apprendimento. Dopo puoi dare
777 un'occhiata alle sezioni rilevanti della @rusernamed{Top, Guida alla notazione}.
780 @strong{Prima di cercare di cambiare l'output predefinito}: leggi
781 @ref{Tweaking output} del Manuale di apprendimento.
784 @strong{Prima di iniziare un grande progetto}: leggi il documento
785 @rprogram{Consigli su come scrivere i file} del manuale di Uso del programma.