GNU LilyPond
Da Wikipedia, l'enciclopedia libera.
GNU LilyPond | |
---|---|
Sviluppatore | GNU Lilypond developers |
Ultima versione | 2.10.5 / 24 dicembre 2006 |
OS | multipiattaforma |
Genere | Scrittura musicale |
Licenza | GPL |
Sito web | lilypond.org |
GNU LilyPond è un software libero per la scrittura musicale, disponibile per tutti i sistemi operativi. Utilizza una semplice notazione testuale per la musica, che viene poi compilata in PDF (attraverso PostScript, SVG, PNG e altri formati. LilyPond può anche generare un file MIDI.
A differenza di altri diffusi software come Finale e Sibelius, LilyPond non possiede un'Interfaccia Grafica integrata per la creazione degli spartiti. Ha, comunque, lo stesso obiettivo di produrre un output comparabile agli spartiti stampati professionalmente. Alcuni programmi grafici di notazione musicale esportano files in formato LilyPond.
Uno dei principali successi di LilyPond è quello di produrre spartiti di una qualità insolitamente alta, che sono disegnati segundo le regole di scrittura tradizionali, dell'epoca in cui gli spartiti erano fatti a mano. Spesso gli spartiti prodotti con LilyPond vengono considerati migliori di quelli fatti con programmi commerciali, nonostante questi ultimi siano molto migliorati negli ultimi anni.
Indice |
[modifica] Progetti web che utilizzano LilyPond
Ci sono diversi progetti web che utilizzano LilyPond (anche per il fatto che è facilmente integrabile in pagine web):
- Il progetto Mutopia, che raccoglie e distribuisce musica libera utilizza LilyPond come formato di distribuzione.
- Musipedia, un'enciclopedia online della musica, utilizza LilyPond per inserire e visualizzare gli spartiti.
- Il software MediaWiki, sul quale Wikipedia si basa, ha un'interfaccia chiamata WikiTeX che tra le altre cose permette l'inserimento di musica negli articoli attraverso il formato di LilyPond.
[modifica] Esempio di file di input per LilyPond
I testi dopo il simbolo di percento (%) sono commenti. Il doppio percento è utilizzato per migliorare la legibilità.
In LilyPond le note sono inserite come sequenza di nota (notazione olandese: abcdefg), altezza e durata. L'altezza è rappresentata da apostrofi (') o virgole (,) che indicano un'ottava superiore o inferiore alla base ognuno. Ad esempio a'4
è un La (A nella notazione olandese è il La), un'ottava sopra la base, lunga un quarto. Una curiosa nota sulla sintassi è il fatto che qualunque altro modificatore della nota, che di norma viene scritto prima della nota stessa, in LilyPond va scritto dopo.
In LilyPond ci sono due modi di introdurre l'altezza di una nota: assoluta o relativa. In maniera assoluta, per ogni nota va specificata l'altezza relativa alla base, mentre in maniera relativa, quando la melodia rientra in dei limiti, le not senza altezza specificata vengono considerate "vicine" alle note che le precedono, e quindi l'altezza va specificata solo se la nota dista più di mezza ottava dalla precedente. L'esempio che segue utilizza il modo relativo.
L'unica codifica che LilyPond comprende è l'UTF-8. Questa codifica permette di inserire qualunque alfabeto esistente (e anche qualcuno non esistente...) in uno stesso file. La prima linea dell'esempio dice ad Emacs di utilizzare questa codifica. Se usate un altro editor, assicuratevi che utilizzi l'UTF-8, altrimenti qualunque cosa (a parte l'ASCII) non funzionerà.
#!lilypond firebreathers.ly -*- coding: utf-8; -*- %% Tema per "Fire Breathers", un gioco in contino sviluppo %% Composto da Urpo Lankinen. %% Nota: il compositore ha reso disponibile questo codice sorgente %% a Wikipedia sotto licenza GFDL. Le versioni al di fuori di Wikipedia %% Sono tipicamente sotto CC BY-SA. %% Questo file utilizza la notazione finnica (ad esempio, dove %% gli americani utilizzano "F#" e "Bb", i Finnici utilizzano "Fis" e "B"). %% I nomi olandesi sono utilizzati di default. \include "suomi.ly" %% Helper opzionale di aggiornamento del linguaggio \version "2.6.0" %% Il blocco Header definisce i titoli \header { title = "Theme to ``Fire Breathers!''" instrument = "For the 2A03 or SID" composer = "Urpo Lankinen" enteredby = "Urpo Lankinen" updatedby = "Jan Nieuwenhuizen" date = "June 2005" } Melody = \relative c'' { \clef treble \time 3/4 \key a \minor %% Il pezzo inizia con una battuta parziale lunga un quarto, "\partial 4" %% lo dice a LilyPond. \partial 4 a4 | e'4.( d8[ c]) r8 | d4.( c8[ h]) r8 | a2. | e2 a4 | e'4.( d8[ c]) r8 | d4.( e8[ f]) r8 | e2. | r2 e4 | f4.( e8[ d]) r8 | d4.( c8[ h]) r8 | a2. | e2 a4 | e'4.( d8[ c]) r8 | d4.( c8[ h]) r8 | a2. ~ a2 r4 | \bar "|." } %% Questa è la seconda voce SecondVoice = \relative c { \clef bass \time 3/4 \key a \minor \partial 4 r4 | e2. | d2. | a2. | e2 a4 | e'2. | d2 f4 | e2. | r2. | f2. | d2. | a2. | e2 a4 | e'2. | d2 h4 | a2. ~ a2 r4 | \bar "|." } %% Le melodie, le parole e gli accordi possono essere assegnati a %% variabili e in seguito riutilizzate da altre parti. Qui ci sono %% tre diversi pezzi di accompagnamento, che vengono poi utilizzati %% nella melodia di accompagnamento AccompA = \relative c { a4 e'8 a, e' a, | } AccompB = \relative c { g4 d'8 g, d' g, | } AccompC = \relative c { e,4 h'8 e, h' e, | } Accompaniment = { \clef bass \time 3/4 \key a \minor \partial 4 r4 | \AccompA \AccompB \AccompA \AccompA \AccompA \AccompB \AccompA \AccompA \AccompC \AccompC \AccompA \AccompA \AccompA \AccompB \AccompA | a2 r4 | \bar "|." } %% La definizione della musica. << \new Staff \Melody \new Staff \Accompaniment \new Staff \SecondVoice >>
[modifica] Output corrispondente
[modifica] Collegamenti esterni
- (EN, NL, FR) sito ufficiale
- (EN) LilyPond Forum - ospitato da Nabble archivia le mailing list di LilyPond in un forum con funzioni di ricerca.
- (EN) The LilyPond Wiki
- (EN) Mutopia - archivio di spartiti Lilypond
- (EN) Denemo, interfaccia grafica per LilyPond.
- (EN) Musipedia, un'enciclopedia collaboativa sulla musica che utilizza LilyPond