]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/it/usage/external.itely
Web: Removed Duplicate lines from Authors.itexi
[lilypond.git] / Documentation / it / usage / external.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
2
3 @ignore
4     Translation of GIT committish: 2aeac5e3815effa47427dad86d6be811c7b0d8a2
5
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..
9 @end ignore
10
11 @c \version "2.14.0"
12
13 @node Programmi esterni
14 @chapter Programmi esterni
15 @translationof External programs
16
17 LilyPond può interagire con altri programmi in vari modi.
18
19 @menu
20 * Punta e clicca::
21 * LilyPond e gli editor di testo::
22 * Conversione da altri formati::
23 * Inclusione di partiture LilyPond in altri programmi::
24 * Inclusioni indipendenti::
25 @end menu
26
27
28 @node Punta e clicca
29 @section Punta e clicca
30 @translationof Point and click
31
32 @cindex punta e clicca
33
34 Il "punta e clicca" (@emph{point and click}) permette di individuare gli elementi
35 musicali nell'input cliccando su di essi nel lettore PDF.  In questo modo è più
36 facile trovare la parte dell'input responsabile di un errore nello spartito.
37
38 Quando questa funzionalità è attiva, LilyPond aggiunge dei collegamenti
39 ipertestuali al file PDF.  Questi collegamenti vengono inviati al browser web,
40 che apre un editor di testo col cursore posizionato nel punto giusto.
41
42 Perché questo procedimento funzioni è necessario configurare il lettore PDF
43 in modo che segua i collegamenti ipertestuali usando lo script @file{lilypond-invoke-editor}
44 fornito insieme a LilyPond.
45
46 Per Xpdf su UNIX, occorre inserire la seguente linea nel file
47 @file{xpdfrc}@footnote{Su UNIX, questo file si trova in
48 @file{/etc/xpdfrc} o come @file{.xpdfrc} nella propria directory home.}
49
50 @example
51 urlCommand     "lilypond-invoke-editor %s"
52 @end example
53
54 @file{lilypond-invoke-editor} è un piccolo programma di supporto.  Lancia un
55 editor per gli URI @code{textedit} e un browser web per altri URI.  Valuta
56 la variabile d'ambiente @code{EDITOR} in base a questi schemi,
57
58 @table @code
59 @item emacs
60   verrà quindi lanciato il comando
61 @example
62 emacsclient --no-wait +@var{line}:@var{column} @var{file}
63 @end example
64 @item gvim
65   verrà quindi lanciato il comando
66 @example
67 gvim --remote +:@var{line}:norm@var{column} @var{file}
68 @end example
69
70 @item nedit
71   verrà quindi lanciato il comando
72 @example
73   nc -noask +@var{line} @var{file}'
74 @end example
75 @end table
76
77 La variabile d'ambiente @code{LYEDITOR} ha la precedenza sulla variabile
78 @code{EDITOR}.  Contiene il comando per lanciare l'editor, dove @code{%(file)s},
79 @code{%(column)s}, @code{%(line)s} vengono sostituiti rispettivamente dal file,
80 dalla colonna e dalla riga.  L'impostazione
81
82 @example
83 emacsclient --no-wait +%(line)s:%(column)s %(file)s
84 @end example
85
86 @noindent
87 per @code{LYEDITOR} è equivalente alla chiamata standard emacsclient.
88
89
90 @cindex file size, output
91
92 I collegamenti "punta e clicca" appesantiscono sensibilmente i file di output.  Per
93 ridurre la dimensione dei file PDF e PS, è possibile disattivare il "punta e
94 clicca" inserendo
95
96 @example
97 \pointAndClickOff
98 @end example
99
100 @noindent
101 in un file @file{.ly}.  Il "punta e clicca" può essere abilitato esplicitamente con
102
103 @example
104 \pointAndClickOn
105 @end example
106
107 Si può disabilitare il "punta e clicca" anche con un'opzione da linea di
108 comando:
109
110 @example
111 lilypond -dno-point-and-click file.ly
112 @end example
113
114 @warning{Occorre sempre disattivare il "punta e clicca" nei file LilyPond
115 che si vogliano diffondere, per evitare di includere nel file .pdf delle informazioni
116 sui percorsi del proprio computer: questo infatti può costituire un rischio di
117 sicurezza.}
118 @node LilyPond e gli editor di testo
119 @section LilyPond e gli editor di testo
120 @translationof Text editor support
121
122 @cindex editor
123 @cindex vim
124 @cindex emacs
125 @cindex modalità, editor
126 @cindex sintassi, colorazione
127 @cindex colorazione della sintassi
128
129 Vari editor di testo hanno funzionalità specifiche per LilyPond.
130
131 @menu
132 * Modalità di Emacs::
133 * Modalità di Vim::
134 * Altri editor::
135 @end menu
136
137 @node Modalità di Emacs
138 @unnumberedsubsec Modalità di Emacs
139 @translationof Emacs mode
140
141 Emacs ha una modalità @file{lilypond-mode}, che fornisce il completamento
142 delle parole, l'indentazione, le parentesi automatiche e la colorazione
143 della sintassi specifiche di LilyPond, comode scorciatoie per la compilazione e
144 la possibilità di leggere i manuali di LilyPond usando Info.  Se @file{lilypond-mode}
145 non è installato nel tuo computer, vedi sotto.
146
147 Una modalità Emacs per inserire la musica e eseguire LilyPond è presente
148 nell'archivio dei sorgenti nella directory @file{elisp}.  Lancia @command{make
149 install} per installarla in @var{elispdir}.  Il file @file{lilypond-init.el}
150 deve essere messo in @var{load-path}@file{/site-start.d/} o aggiunto a
151 @file{~/.emacs} oppure @file{~/.emacs.el}.
152
153 Come utente normale, puoi aggiungere il percorso dei sorgenti (ad esempio @file{~/site-lisp/})
154 al tuo @var{load-path} aggiungendo la seguente riga (modificata di conseguenza)
155 al file @file{~/.emacs}
156
157 @c any reason we do not advise:  (push "~/site-lisp" load-path)
158 @example
159 (setq load-path (append (list (expand-file-name "~/site-lisp")) load-path))
160 @end example
161
162
163 @node Modalità di Vim
164 @unnumberedsubsec Modalità di Vim
165 @translationof Vim mode
166
167 Per @uref{http://@/www@/.vim@/.org,Vim}, sono disponibili le seguenti funzionalità
168 per LilyPond: un plugin di riconoscimento del tipo di file, una modalità di indentazione e di
169 evidenziazione della sintassi.  Per abilitarle, crea (o modifica) il file
170 @file{$HOME/.vimrc} in modo che contenga queste tre righe, in questo ordine:
171
172 @example
173 filetype off
174 set runtimepath+=/usr/local/share/lilypond/current/vim/
175 filetype on
176 @end example
177
178 @noindent
179 Se LilyPond non è installato nella directory @file{/usr/local/},
180 modifica il percorso in modo adeguato.  Questo argomento è trattato in
181 @rlearning{Other sources of information}.
182
183
184 @node Altri editor
185 @unnumberedsubsec Altri editor
186 @translationof Other editors
187
188 Altri editor (sia testuali che grafici) supportano LilyPond, ma i loro
189 specifici file di configurazione non sono distribuiti insieme a
190 LilyPond.  Consulta la documentazione di questi programmi per maggiori
191 informazioni.  Questi editor sono elencati in @rweb{Easier editing}.
192
193
194 @node Conversione da altri formati
195 @section Conversione da altri formati
196 @translationof Converting from other formats
197
198 È possibile inserire la musica anche importandola da altri formati.  Questo
199 capitolo documenta gli strumenti inclusi nella distribuzione che svolgono
200 questo compito.  Esistono altri strumenti che producono l'input di LilyPond, ad
201 esempio i sequencer ad interfaccia grafica e i convertitori XML.  Per maggiori
202 dettagli consulta il @uref{http://@/lilypond@/.org,sito web}.
203
204 Si tratta di programmi separati da @command{lilypond}  e sono eseguiti
205 dalla linea di comando; si veda @ref{Command-line usage} per maggiori
206 informazioni.  Se usi MacOS 10.3 o 10.4 e hai problemi a
207 eseguire alcuni di questi script, ad esempio @code{convert-ly}, vedi
208 @rweb{MacOS X}.
209
210
211 @knownissues
212 Purtroppo non abbiamo le risorse per mantenere questi programmi; prendeteli
213 @qq{così come sono}!  Accettiamo con piacere le @emph{patch}, ma ci sono
214 poche possibilità che i bug vengano risolti.
215
216 @menu
217 * Utilizzo di midi2ly::            Importare MIDI.
218 * Utilizzo di musicxml2ly::        Importare MusicXML.
219 * Utilizzo di abc2ly::             Importare ABC.
220 * Utilizzo di etf2ly::             Importare Finale.
221 * Altri formati::
222 @end menu
223
224
225
226 @node Utilizzo di midi2ly
227 @subsection Utilizzo di @command{midi2ly}
228 @translationof Invoking midi2ly
229
230 @cindex MIDI
231
232 @command{midi2ly} trasforma un file MIDI Type@tie{}1 in un file sorgente
233 di LilyPond.
234
235 Il protocollo MIDI (Music Instrument Digital Interface) è uno standard per gli
236 strumenti digitali: fornisce le specifiche per la connessione via cavo, un
237 protocollo seriale e un formato di file.  Il formato MIDI è uno standard de
238 facto per esportare la musica da altri programmi, dunque questa capacità diventa
239 utile quando si importano file creati con un programma che converta
240 direttamente in questo formato.
241
242 @command{midi2ly} converte le tracce presenti nei contesti @rinternals{Staff} e
243 i canali dei contesti @rinternals{Voice}.  Per indicare le altezze viene usata
244 la modalità relativa, mentre le durate sono precisate solo quando necessario.
245
246 È possibile registrare un file MIDI usando una tastiera digitale e poi
247 convertirlo in file @file{.ly}.  Tuttavia, la conversione da MIDI a LY non
248 è banale: l'esecuzione umana non sarà mai sufficientemente precisa dal punto di vista
249 ritmico.  Se lanciata con la quantizzazione (opzioni @option{-s} e @option{-d})
250 @command{midi2ly} cerca di compensare questi errori di tempo, ma non è
251 molto efficace.  Dunque non si raccomanda l'uso di @command{midi2ly}
252 per i file midi generati a partire da un'esecuzione umana.
253
254
255 Si lancia dalla linea di comando in questo modo:
256 @example
257 midi2ly [@var{opzione}]@dots{} @var{file-midi}
258 @end example
259
260 Attenzione: per @q{linea di comando} si intende la linea di comando
261 del sistema operativo.  Si veda @ref{Converting from other formats} per
262 maggiori informazioni su questo argomento.
263
264 @command{midi2ly} accetta le seguenti opzioni.
265
266 @table @code
267 @item -a, --absolute-pitches
268 Crea altezze assolute.
269
270 @item -d, --duration-quant=@var{DUR}
271 Quantizza la durata delle note di @var{DUR}.
272
273 @item -e, --explicit-durations
274 Crea durate esplicite.
275
276 @item -h,--help
277 Mostra una sintesi dell'utilizzo del programma.
278
279 @item -k, --key=@var{acc}[:@var{minor}]
280 Imposta la tonalità predefinita.  @math{@var{acc} > 0} imposta il numero di
281 diesis; @math{@var{acc} < 0} imposta il numero di bemolle.  Una tonalità
282 minore si indica con @code{:1}.
283
284 @item -o, --output=@var{file}
285 Scrive l'output in @var{file}.
286
287 @item -s, --start-quant=@var{DUR}
288 Quantize note starts on @var{DUR}.
289
290 @item -t, --allow-tuplet=@var{DUR}*@var{NUM}/@var{DEN}
291 Consente l'inserimento di gruppi irregolari @var{DUR}*@var{NUM}/@var{DEN}.
292
293 @item -v, --verbose
294 Mostra un output dettagliato.
295
296 @item -V, --version
297 Mostra il numero di versione.
298
299 @item -w, --warranty
300 Mostra la garanzia e il copyright.
301
302 @item -x, --text-lyrics
303 Interpreta il testo come liriche.
304 @end table
305
306
307 @knownissues
308
309 Le note sovrapposte in un arpeggio non sono rese correttamente: viene letta
310 solo la prima nota, mentre le altre vengono ignorate.  Assegna a tutte la stessa
311 durata e introduci le opportune indicazioni di fraseggio o di pedalizzazione.
312
313
314 @node Utilizzo di musicxml2ly
315 @subsection Utilizzo di @code{musicxml2ly}
316 @translationof Invoking musicxml2ly
317
318 @cindex MusicXML
319
320 @uref{http://@/www.@/musicxml@/.org/,MusicXML} è un dialetto di XML
321 che viene usato per rappresentare la notazione musicale.
322
323 @command{musicxml2ly} estrae le note, le articolazioni, la struttura della
324 partitura, il testi, etc. da file MusicXML organizzati in parti; quindi li
325 scrive in un file @file{.ly}.  Si usa dalla linea di comando.
326
327
328 Si lancia dalla linea di comando nel modo seguente,
329 @example
330 musicxml2ly [@var{opzione}]@dots{} @var{file-xml}
331 @end example
332
333 Attenzione: per @q{linea di comando} si intende la linea di comando
334 del sistema operativo.  Si veda @ref{Converting from other formats} per
335 maggiori informazioni su questo argomento.
336
337 Se il nome del file è @file{-}, @command{musicxml2ly} legge l'input
338 dalla linea di comando.
339
340 @command{musicxml2ly} accetta le seguenti opzioni:
341
342 @table @code
343 @item -a, --absolute
344 converte le altezze relative in assolute.
345
346 @item -h,--help
347 mostra una sintesi dell'utilizzo e delle opzioni.
348
349 @item -l, --language=LANG
350 usa LANG per i nomi delle altezze, ad esempio 'deutsch' per i nomi delle note
351 in tedesco.
352
353 @item --loglevel=@var{loglevel}
354 Imposta la verbosità dell'output su @var{loglevel}. I valori possibili sono @code{NONE},
355 @code{ERROR}, @code{WARNING}, @code{PROGRESS} (predefinito) e @code{DEBUG}.
356
357 @item --lxml
358 usa il pacchetto Python lxml.etree per l'analisi della sintassi XML; usa meno
359 memoria e tempo del processore.
360
361 @item --nd --no-articulation-directions
362 non converte le direzioni (@code{^}, @code{_} o @code{-}) per
363 articolazioni, dinamiche, etc.
364
365 @item --no-beaming
366 ignora le informazioni relative alle travature, impiegando la disposizione
367 automatica delle travature fornita da LilyPond.
368
369 @item -o,--output=@var{file}
370 imposta il nome del file di output su @var{file}.  Se @var{file} è @file{-}, l'output
371 sarà salvato su stdout.  Se non specificato, verrà usato @var{file-xml}@file{.ly}.
372
373 @item -r,--relative
374 converte le altezze in modalità relativa (predefinito).
375
376 @item -v, --verbose
377 Mostra un output dettagliato.
378
379 @item --version
380 Mostra informazioni sulla versione.
381
382 @item -z,--compressed
383 il file di input è un file MusicXML compresso in un archivio ZIP.
384 @end table
385
386
387 @node Utilizzo di abc2ly
388 @subsection Utilizzo di @code{abc2ly}
389 @translationof Invoking abc2ly
390
391 @warning{Questo programma non è supportato e potrebbe essere rimosso
392 dalle future versioni di LilyPond.}
393
394 @cindex ABC
395
396 ABC è un semplice formato basato su ASCII.  È descritto nel sito di ABC:
397
398 @quotation
399 @uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}.
400 @end quotation
401
402 @command{abc2ly} traduce dal formato ABC al formato LilyPond.  Viene lanciato
403 nel modo seguente:
404
405 @example
406 abc2ly [@var{opzione}]@dots{} @var{file-abc}
407 @end example
408
409 @command{abc2ly} accetta le seguenti opzioni:
410
411 @table @code
412 @item -b,--beams=None
413 preserva le regole di disposizione delle travature di ABC
414 @item -h,--help
415 mostra questo messaggio di aiuto
416 @item -o,--output=@var{file}
417 imposta il nome del file di output su @var{file}.
418 @item -s,--strict
419 imposta una modalità di interpretazione letterale per effettuare una conversione stretta
420 @item --version
421 mostra informazioni sulla versione.
422 @end table
423
424 Esiste una rudimentale funzione per aggiungere codice LilyPond nel
425 file sorgente ABC.  Se scrivi:
426
427 @example
428 %%LY voices \set autoBeaming = ##f
429 @end example
430
431 il testo che segue la parola chiave @q{voices} verrà inserito
432 nella voce in uso del file di output LilyPond.
433
434 Analogalmente,
435
436 @example
437 %%LY slyrics more words
438 @end example
439
440 fa sì che il testo che segue la parola chiave @q{slyrics} venga inserito
441 nella riga corrente del testo.
442
443
444 @knownissues
445
446 Lo standard ABC standard non è molto @q{standard}.  Per le funzionalità più
447 avanzate (ad esempio, la musica polifonica) esistono diversi tipi di convenzioni.
448
449 Un file che contiene più di un brano non può essere convertito.
450
451 ABC allinea le parole e le note all'inizio di una riga; @command{abc2ly} non
452 lo fa.
453
454 @command{abc2ly} ignora la disposizione delle travature fatta da ABC.
455
456
457 @node Utilizzo di etf2ly
458 @subsection Utilizzo di @command{etf2ly}
459 @translationof Invoking etf2ly
460
461 @warning{Questo programma non è supportato e potrebbe essere rimosso
462 dalle future versioni di LilyPond.}
463
464 @cindex ETF
465 @cindex enigma
466 @cindex Finale
467 @cindex Coda Technology
468
469 ETF (Enigma Transport Format) è un formato usato da Finale, un prodotto di Coda
470 Music Technology.  @command{etf2ly} converte parte di un file ETF
471 in un file LilyPond pronto all'uso.
472
473 Si lancia dalla linea di comando nel modo seguente.
474
475 @example
476 etf2ly [@var{opzione}]@dots{} @var{file-etf}
477 @end example
478
479 Attenzione: per @q{linea di comando} si intende la linea di comando
480 del sistema operativo.  Si veda @ref{Converting from other formats} per
481 maggiori informazioni su questo argomento.
482
483 @command{etf2ly} accetta le seguenti opzioni:
484
485 @table @code
486 @item -h,--help
487 mostra questo messaggio di aiuto
488 @item -o,--output=@var{FILE}
489 imposta il nome del file di output su @var{FILE}
490 @item --version
491 mostra informazioni sulla versione
492 @end table
493
494
495 @knownissues
496
497 La lista degli script per gestire le articolazioni è incompleta.  Le misure vuote
498 confondono @command{etf2ly}.  Le sequenze di abbellimenti non sono risolte correttamente.
499
500
501 @node Altri formati
502 @subsection Altri formati
503 @translationof Other formats
504
505 @cindex Programmi esterni, generare file LilyPond
506
507 LilyPond non supporta la conversione da altri formati, ma esistono alcuni
508 strumenti esterni che possono generare file LilyPond.  L'elenco si trova
509 in @rweb{Easier editing}.
510
511
512
513 @node Inclusione di partiture LilyPond in altri programmi
514 @section Inclusione di partiture LilyPond in altri programmi
515 @translationof LilyPond output in other programs
516
517 Questa sezione presenta dei metodi per integrare testo e musica diversi
518 dal metodo automatizzato di @command{lilypond-book}.
519
520 @menu
521 * Tante citazioni da una grande partitura::
522 * Inserire l'output di LilyPond in OpenOffice.org::
523 * Inserire l'output di LilyPond in altri programmi::
524 @end menu
525
526 @node Tante citazioni da una grande partitura
527 @unnumberedsubsec Tante citazioni da una grande partitura
528 @translationof Many quotes from a large score
529
530 Per inserire molti frammenti di una grande partitura, si può usare anche
531 la funzione di ritaglio dei sistemi; si veda @ruser{Extracting fragments of music}.
532
533
534 @node Inserire l'output di LilyPond in OpenOffice.org
535 @unnumberedsubsec Inserire l'output di LilyPond in OpenOffice.org
536 @translationof Inserting LilyPond output into OpenOffice.org
537
538 @cindex OpenOffice.org
539
540 La notazione di LilyPond può essere aggiunta a OpenOffice.org con
541 @uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
542
543
544 @node Inserire l'output di LilyPond in altri programmi
545 @unnumberedsubsec Inserire l'output di LilyPond in altri programmi
546 @translationof Inserting LilyPond output into other programs
547
548 Per inserire l'output di LilyPond in altri programmi, si usa @code{lilypond}
549 invece di @code{lilypond-book}.  Bisogna creare ogni esempio singolarmente
550 e aggiungerlo al documento; consulta la documentazione del realtivo
551 programma.  La maggior parte dei programmi può inserire l'output di LilyPond
552 in formato @file{PNG}, @file{EPS} o @file{PDF}.
553
554 Per ridurre lo spazio bianco intorno alla partitura LilyPond, si usano
555 le seguenti opzioni
556
557 @example
558 \paper@{
559   indent=0\mm
560   line-width=120\mm
561   oddFooterMarkup=##f
562   oddHeaderMarkup=##f
563   bookTitleMarkup = ##f
564   scoreTitleMarkup = ##f
565 @}
566
567 @{ c1 @}
568 @end example
569
570 Per creare file immagine utili, si usa
571
572 @example
573 EPS
574
575 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts myfile.ly
576
577 PNG
578
579 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png miofile.ly
580
581 Un file PNG transparente
582
583 lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts \
584   -dpixmap-format=pngalpha --png miofile.ly
585 @end example
586
587
588 @node Inclusioni indipendenti
589 @section @code{include} indipendenti
590 @translationof Independent includes
591
592 Alcuni hanno scritto ampi (e utili!) frammenti di codice che possono
593 essere condivisi da progetti diversi.  Questo codice potrebbe alla fine
594 entrare a far parte di LilyPond, ma finché questo non avviene occorre
595 scaricarlo e includerlo manualmente con @code{\include}.
596
597
598 @menu
599 * Articolazione MIDI::
600 @end menu
601
602
603 @node Articolazione MIDI
604 @subsection Articolazione MIDI
605 @translationof MIDI articulation
606
607 LilyPond permette di generare l'output MIDI, che consente di
608 @qq{verificare a orecchio} quanto è stato scritto.  Tuttavia l'output
609 contiene solo la dinamica, i segni di tempo espliciti, le note e le loro
610 durate.
611
612 Il progetto @emph{articulate} costituisce un tentativo di inviare al file
613 MIDI maggiori informazioni sulla partitura.  Il suo funzionamento si basa
614 sull'abbreviazione delle note prive di legatura di portamento, in
615 modo da @q{articolare} le note.  Questa riduzione dipende dai segni di
616 articolazione attaccati a una nota: staccato dimezza il valore della nota, tenuto
617 assegna alla nota la sua intera durata, e così via.  Lo script è consapevole anche dei
618 trilli e dei gruppetti; può essere esteso per elaborare altri ornamenti come i
619 mordenti.
620
621 @example
622 @uref{http://@/www@/.nicta@/.com@/.au/@/people/@/chubbp/@/articulate}
623 @end example
624
625 @knownissues
626
627 La sua principale limitazione è che può agire solo sugli elementi che
628 conosce: qualsiasi cosa che sia del semplice testo (invece di una proprietà
629 della nota) viene dunque ignorato.
630
631