Text input

“Compiling” Music

(click to enlarge)

LilyPond is a compiled system: it is run on a text file
describing the music. The resulting output is viewed on-screen or
printed. In some ways, LilyPond is more similar to a programming
language than graphical score editing software.

You do not write music by dragging notes from a graphical toolbar
and placing them on a dynamically refreshing score; you write
music by typing text. This text is interpreted (or “compiled”)
by LilyPond, which produces beautifully engraved sheet music.

People accustomed to graphical user interfaces might need to learn
a new way of working, but the results are definitely worth it!

Note: We present a quick overview of our text input – it’s not
as complicated as it sounds! Don’t worry about understanding
every detail in these examples; our beginner documentation covers
everything at a much more gradual pace.

It’s as simple as A B C

Notes are encoded with letters and numbers. Special commands are
entered with backslashes.

Alterations are made with different names: add -is for
sharp, and -es for flat (these are Dutch note names, other
languages are available). LilyPond figures out where to put
accidentals.

Pop music

Put chords and lyrics together to get a lead sheet:

Orchestral parts

The input file contains the notes of piece of music. Score and
parts can be made from a single input file, so that changing a
note always affects the score and parts. To be able to include
the same music in multiple places, the music is assigned to a
“variable” (a name).

This variable is then used in a single part (here transposed, with
condensed rests spanning several measures):

The same variable is used in the full score (here in concert
pitch):

Beginner Documentation

We realize that many users find this way of entering music a bit
odd. For this reason, we have written extensive documentation to
help new users, beginning with Learning. The Learning
Manual is the best place to start, as many questions are answered
before they come up!

Occasionally new users are unnecessarily confused by some aspects
of LilyPond’s behaviour. Please read this manual before doubting
whether LilyPond is working correctly.

Ben Lemon, a LilyPond user, has created a range of
video tutorials
on his blog and which are aimed at new users.

Easier editing environments

(click to enlarge)

LilyPond is primarily concerned with producing top-quality
engraved sheet music; creating a Graphical User Interface (GUI)
would distract us from this goal. However, there are other
projects aimed at making it easier to create LilyPond input files.

Some editing environments include syntax highlighting, automatic
command completion, and pre-made templates. Other programs
actually provide a GUI which allows direct manipulation of a
graphical score. For more information, see Easier editing.