+@example
+"acoustic grand" "contrabass" "lead 7 (fifths)"
+"bright acoustic" "tremolo strings" "lead 8 (bass+lead)"
+"electric grand" "pizzicato strings" "pad 1 (new age)"
+"honky-tonk" "orchestral strings" "pad 2 (warm)"
+"electric piano 1" "timpani" "pad 3 (polysynth)"
+"electric piano 2" "string ensemble 1" "pad 4 (choir)"
+"harpsichord" "string ensemble 2" "pad 5 (bowed)"
+"clav" "synthstrings 1" "pad 6 (metallic)"
+"celesta" "synthstrings 2" "pad 7 (halo)"
+"glockenspiel" "choir aahs" "pad 8 (sweep)"
+"music box" "voice oohs" "fx 1 (rain)"
+"vibraphone" "synth voice" "fx 2 (soundtrack)"
+"marimba" "orchestra hit" "fx 3 (crystal)"
+"xylophone" "trumpet" "fx 4 (atmosphere)"
+"tubular bells" "trombone" "fx 5 (brightness)"
+"dulcimer" "tuba" "fx 6 (goblins)"
+"drawbar organ" "muted trumpet" "fx 7 (echoes)"
+"percussive organ" "french horn" "fx 8 (sci-fi)"
+"rock organ" "brass section" "sitar"
+"church organ" "synthbrass 1" "banjo"
+"reed organ" "synthbrass 2" "shamisen"
+"accordion" "soprano sax" "koto"
+"harmonica" "alto sax" "kalimba"
+"concertina" "tenor sax" "bagpipe"
+"acoustic guitar (nylon)" "baritone sax" "fiddle"
+"acoustic guitar (steel)" "oboe" "shanai"
+"electric guitar (jazz)" "english horn" "tinkle bell"
+"electric guitar (clean)" "bassoon" "agogo"
+"electric guitar (muted)" "clarinet" "steel drums"
+"overdriven guitar" "piccolo" "woodblock"
+"distorted guitar" "flute" "taiko drum"
+"guitar harmonics" "recorder" "melodic tom"
+"acoustic bass" "pan flute" "synth drum"
+"electric bass (finger)" "blown bottle" "reverse cymbal"
+"electric bass (pick)" "skakuhachi" "guitar fret noise"
+"fretless bass" "whistle" "breath noise"
+"slap bass 1" "ocarina" "seashore"
+"slap bass 2" "lead 1 (square)" "bird tweet"
+"synth bass 1" "lead 2 (sawtooth)" "telephone ring"
+"synth bass 2" "lead 3 (calliope)" "helicopter"
+"violin" "lead 4 (chiff)" "applause"
+"viola" "lead 5 (charang)" "gunshot"
+"cello" "lead 6 (voice)"
+@end example
+
+
+
+
+
+@c_ {Tempo}
+@node Tempo
+@subsection Tempo
+@cindex Tempo
+@cindex beats per minute
+@cindex metronome marking
+
+@cindex @code{\tempo}
+@example
+ \tempo @var{duration} = @var{perminute} @code{;}
+@end example
+
+Used to specify the tempo. For example, @code{\tempo 4 = 76;} requests
+output with 76 quarter notes per minute.
+
+
+
+
+
+@c_ {Music entry}
+@node Music entry
+@section Music entry
+@cindex Music entry
+@menu
+* Pre-defined Identifiers::
+* Point and click::
+@end menu
+
+@c_ {Music entry}
+@node Pre-defined Identifiers
+@subsection Pre-defined Identifiers
+@cindex pre-defined identifiers
+
+
+Various identifiers are defined in the initialization files to
+provide shorthands for some settings. Most of them are in
+@file{ly/declarations.ly} and @file{ly/property.ly}.
+
+@table @code
+@cindex @code{\break}
+ @item @code{\break}
+ Force a line break in music by using a large argument for the
+ keyword @code{\penalty}.
+
+@cindex @code{\nobreak}
+ @item @code{\nobreak}
+ Prevent a line break in music by using a large negative argument
+ for the keyword @code{\penalty}.
+
+@cindex @code{\shiftOff}
+ @item @code{\shiftOff}
+ Disable horizontal shifting of note heads that collide.
+
+@cindex @code{\shiftOn}
+ @item @code{\shiftOn}
+ Enable note heads that collide with other note heads to be
+ shifted horiztonally. Also @code{\shiftOnn} and @code{\shiftOnnn}
+set different shift values.
+
+@cindex @code{\stemBoth}
+ @item @code{\stemBoth}
+ Allow stems, beams, and slurs to point either upwards or
+ downwards, decided automatically by LilyPond.
+
+@cindex @code{\stemDown}
+ @item @code{\stemDown}
+ Force stems, beams, and slurs to point down.
+
+@cindex @code{\stemUp}
+ @item @code{\stemUp}
+ Force stems, beams and slurs to point up.
+
+@end table
+
+
+@c_ {Point and click}
+@node Point and click
+@subsection Point and click
+
+[todo]
+
+@c_ {Engravers}
+@node Engravers
+@section Engravers
+@cindex engravers
+@menu
+* Context definitions::
+* Notation Contexts::
+@end menu
+
+@c_ {Context definitions}
+@node Context definitions
+@subsection Context definitions
+
+@cindex context definition
+@cindex translator definition
+@cindex engraver hacking
+
+
+A notation contexts is defined by the following information
+
+@enumerate 1
+ @item A name.
+
+ @item The LilyPond modules that do the actual conversion of music to
+ notation. Each module is a so-called
+ @emph{engraver}
+@cindex engraver
+.
+
+ @item How these modules should cooperate, i.e. which ``cooperation
+ module'' should be used. This cooperation module is a special
+ type of engraver.
+
+ @item What other contexts the context can contain,
+
+ @item What properties are defined.
+@end enumerate
+
+A context definition has this syntax:
+
+@example
+
+ \translator @code{@{}
+ @var{translatorinit} @var{translatormodifierlist}
+ @code{@}}
+@end example
+
+@var{translatorinit} can be an identifier or of the form
+
+@example
+
+ \type @var{typename} @code{;}
+@end example
+
+@var{typename} is one of
+
+@table @code
+@cindex @code{Engraver_group_engraver}
+ @item @code{Engraver_group_engraver}
+ The standard cooperation engraver.
+@cindex @code{Score_engraver}
+
+ @item @code{Score_engraver}
+ This is cooperation module that should be in the top level context.
+@cindex @code{Grace_engraver_group}
+
+ @item @code{Grace_engraver_group}
+ This is a special cooperation module (resembling
+ @code{Score_engraver}) that is used to created an embedded
+ `miniscore'.
+@end table
+
+@var{translatormodifierlist} is a list of items where each item is
+one of
+
+@itemize @bullet
+ @item @code{\consists} @var{engravername} @code{;}
+ Add @var{engravername} to the list of modules in this context.
+ The order of engravers added with @code{\consists} is
+ significant.
+
+ @item @code{\consistsend} @var{engravername} @code{;}
+ Analogous to @code{\consists}, but makes sure that
+ @var{engravername} is always added to the end of the list of
+ engravers.
+
+ Some engraver types need to be at the end of the list; this
+ insures they are put there, and stay there, if a user adds or
+ removes engravers. This command is usually not needed for
+ end-users.
+
+ @item @code{\accepts} @var{contextname} @code{;}
+ Add @var{contextname} to the list of context this context can
+ contain. The first listed context is the context to create by
+ default.
+
+ @item @code{\denies}. The opposite of @code{\accepts}. Added for
+completeness, but is never used in practice.
+
+
+ @item @code{\remove} @var{engravername} @code{;}
+ Remove a previously added (with @code{\consists}) engraver.
+
+ @item @code{\name} @var{contextname} @code{;}
+ This sets name of the context, e.g. @code{Staff}, @code{Voice}. If
+ the name is not specified, the translator won't do anything.
+
+ @item @var{propname} @code{=} @var{value} @code{;}
+ A property assignment. It is allowed to use reals for
+ @var{value}.
+@end itemize
+
+In the @code{\paper} block, it is also possible to define translator
+identifiers. Like other block identifiers, the identifier can only
+be used as the very first item of a translator. In order to define
+such an identifier outside of @code{\score}, you must do