GNU LilyPond is a program that typesets music sheets in a very very beautiful way (and also produces MIDI files if so desired). It uses TeX as the typesetting engine.

See http://www.gnu.org/software/lilypond/ for more information.

There are various ways for creating Lilypond files; There's a crude conversion program included, called "midi2ly", and also there's a GUI editor (uses GTK+) called Denemo.

Example of LilyPond language (Mutopia): This is the "Join us now and share the software" song (Free Software Song), popular as "sung" by Richard M. Stallman.

%{
Copyright \copyright 1993 Richard Stallman

Verbatim copying and distribution of this entire score is permitted
in any medium, provided this notice is preserved.

Typeset by David Madore using GNU Lilypond.
%}

first_voice = \notes \relative c' {
        \time 7/4;
        \clef violin;
        d'2 c4 b2 a2
        b2 c4 b4 a4 g2
        g2. a2. b4
        c2. b2 b4 d4
        a2. a1
        c2 d4 c4 b2.
        d2 c4 b2 a2
        b2 c4 b4 a4 g2
        g2. a2. b4
        c2. b2 b4 d4
        a2. a1
        a1..
}

second_voice = \notes \relative c' {
        \time 7/4;
        \clef violin;
        b'2 a4 g2 d2
        g2 g4 g2 d2
        g2. g1
        g2. g2 g2
        d2. d1
        g1..
        b2 a4 g2 d2
        g2 g4 g2 d2
        g2. g1
        g2. g2 g2
        d2. d1
        e1..
}

words_one = \lyrics {
        Join2 us4 now2 and2
        share2 the4 so-4 -4 -ftware;2
        You'll2. be-2. -4
        free,2. ha-2 -cke-4 -rs,4
        you'll2. be1
        free2 -4 -4 -.2.
        Join2 us4 now2 and2
        share2 the4 so-4 -4 -ftware;2
        You'll2. be-2. -4
        free,2. ha-2 -cke-4 -rs,4
        you'll2. be1
        free.1..
}

words_two = \lyrics {
        Hoar-2 -ders4 may2 get2
        piles2 of4 mo-4 -4 -ney,2
        That2. i-2. -s4
        true,2. ha-2 -cke-4 -rs,4
        that2. is1
        true2 -4 -4 -.2.
        But2 they4 can-2 -not2
        help2 their4 neigh-4 -4 -bors;2
        That's2. no-2. -t,4
        good,2. ha-2 -cke-4 -rs,4
        that's2. not1
        good.1..
}

words_three = \lyrics {
        When2 we4 have2 e-2
        -nough2 free4 so-4 -4 -ftware2
        At2. ou-2. -r,4
        call,2. ha-2 -cke-4 -rs,4
        at2. our1
        ca-2 -4 -4 -ll,2.
        We'll2 kick4 out2 those2
        dir-2 -ty4 li-4 -cen-4 -ces2
        E-2. -ve-2. -r,4
        more,2. ha-2 -cke-4 -rs,4
        E-2. -ver1
        more.1..
}

\score {
        <
                \type Staff = first_staff >
                        \property Staff.instrument = "whistle"
                        \first_voice
                >
                \type Lyrics = lyric_line < \words_one >
                \type Lyrics = lyric_line < \words_two >
                \type Lyrics = lyric_line < \words_three >
                \type Staff = second_staff <
                        \property Staff.instrument = "orchestral strings"
                        \second_voice
                >
        >
        \paper { }
        \midi { \tempo 2 = 75; }
}

Log in or register to write something here or to contact authors.