GNU LilyPond
|
GNU LilyPond is a free software program for engraving sheet music. It uses a simple ASCII notation for music, which is then compiled into TeX with embedded PostScript. The PostScript output can then be used to produce printable files or images. Lilypond can also automatically generate MIDI files from music specified in the LilyPond format.
Lilypond-screenshot-adeste.png
Unlike programs such as Finale and Sibelius, which feature a graphical user interface for entering notes, LilyPond focuses on producing beautiful output, comparable to professionally engraved scores. Some graphical music notation programs, such as Rosegarden and NoteEdit, can export files directly to LilyPond format.
The Mutopia project, which distributes free sheet music, uses LilyPond to typeset its music. WikiTeX, a MediaWiki interface, supports editing LilyPond notation directly in wiki articles.
Contents |
Example of Lilypond input file
Lines beginning with percent sign are comments.
% Theme to "Fire Breathers", a homebrew NES game % under development. Composed by Urpo Lankinen. % Note: The composer has made this source code available % to Wikipedia under the GFDL license. Other versions outside % Wikipedia are typically under CC BY-SA license. % This file uses Finnish note names (for example, where % Americans use "F#" and "Bb", Finns use "Fis" and "B"). % Danish note names are used by default. \include "suomi.ly" % The header part is used to control the texts added to the final output. \header { title = "Theme to ``Fire Breathers!''" instrument = "For the 2A03 or SID" composer = "Urpo Lankinen" enteredby = "Urpo Lankinen" date = "June 2004" } Melody = \notes \relative c'' { \clef treble \time 3/4 \key a \minor % The piece starts with a quarter-note partial bar, "\partial 4" % tells so to 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 "|." } % This is the second voice. SecondVoice = \notes \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 "|." } % In lilypond, melodies, lyrics, chords, can be written % easily and can always be *reused* elsewhere! Here, are % three different accompaniment patterns, which are used % throughout the accompaniment melody. AccompA = \notes \relative c { a4 e'8 a, e' a, | } AccompB = \notes \relative c { g4 d'8 g, d' g, | } AccompC = \notes \relative c { e,4 h'8 e, h' e, | } Accompaniment = \notes \relative c { \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 "|." } % The score block is used to define what is actually present % in the composition, and how is it going to be printed. \score { << \new Staff \Melody \new Staff \Accompaniment \new Staff \SecondVoice >> \paper { indent = 0 } \midi { \tempo 4 = 120 } }
Corresponding output
Missing image
Lilypond_example.png
Rendered output
See also
External links
- Official LilyPond website (http://lilypond.org/)
- The LilyPond Wiki (http://afavant.elte.hu/lywiki/FrontPage)
- Lilypond-based Musical Scores Archive (http://www.mutopiaproject.org/)
- Denemo, a GUI for LilyPond (http://www.gnu.org/software/denemo/denemo.html).de:GNU LilyPond