]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/refman.itely
* scm/bass-figure.scm (make-bass-figure-markup): add
[lilypond.git] / Documentation / user / refman.itely
index fed292e34cb7609b7b3db94c2519cd6249050cc5..d524ac706c591cbaab5a978a0d26d713168c0bcb 100644 (file)
@@ -11,7 +11,7 @@
 @chapter Notation manual
 
 @html
-<!--- @@WEB-TITLE@@=Reference Manual --->
+<!--- @@WEB-TITLE@@=Notation manual --->
 @end html
 
 
 * Beaming::                     
 * Accidentals::                 
 * Expressive marks::            
-* Ornaments::                   
+* Articulations::               
+* Fingering instructions::      
 * Repeats::                     
 * Rhythmic music::              
 * Piano music::                 
 * Vocal music::                 
-* More stanzas::                
 * Tablatures::                  
 * Chord names::                 
-* Writing parts::               
+* Orchestral music::            
 * Ancient notation ::           
 * Contemporary notation::       
 * Tuning output::               
@@ -55,8 +55,8 @@
 * Rests::                       
 * Skips::                       
 * Durations::                   
+* Stems::                       
 * Ties::                        
-* Automatic note splitting ::   
 * Tuplets::                     
 * Easy Notation note heads ::   
 @end menu
@@ -86,7 +86,7 @@ this manual.}
 @cindex pitches
 @cindex entering notes
 
-The commonest syntax for pitch entry is used in @code{\chords} and
+The most common syntax for pitch entry is used in @code{\chords} and
 @code{\notes} mode.  In Note and Chord mode, pitches may be designated
 by names.  The notes are specified by the letters @code{a} through
 @code{g}, while the octave is formed with notes ranging from @code{c}
@@ -150,8 +150,24 @@ The verbose syntax for pitch specification is
   \pitch @var{scmpitch}
 @end example
 
+
 where @var{scmpitch} is a Scheme object of the @code{Pitch} type.
 
+@refcommands
+
+Dots are normally moved up to avoid staff lines, except in polyphonic
+situations. The following commands may be used to force a particular
+direction manually.
+
+@refcommand dotsUp 
+@refcommand dotsDown 
+@refcommand dotsBoth
+
+Notes can be hidden and unhidden with the following commands.
+
+@refcommand hideNotes 
+@refcommand unHideNotes 
+
 
 @seealso
 
@@ -183,9 +199,17 @@ ways. For more information, refer to @ref{Accidentals}.
 @subsection Chords
 
 A chord is formed by a enclosing a set of pitches in @code{<<} and
-@code{>>}.
+@code{>>}. A chord may be followed by  a duration, and a set of
+articulations, just like simple notes.
+
+Additionally, fingerings and articulations may be attached to
+individual pitches of the chord:
+
+@lilypond[singleline,verbatim,relative 1]
+  <<f-1 a-^ c-5>>
+@end lilypond
+
 
-TODO: accidental overides?
 
 @node  Rests
 @subsection Rests
@@ -331,6 +355,20 @@ Dot placement for chords is not perfect.  In some cases, dots overlap:
  <<f, c'' d e f>>4.
 @end lilypond
 
+@node Stems
+@subsection Stems
+
+Whenever a note is found,  a
+@internalsref{Stem} object is created automatically. For whole notes
+and rests, stem objects are also created, but in those cases, the stem
+is invisible.
+
+@refcommands
+
+@refcommand stemUp
+@refcommand stemDown
+@refcommand stemBoth
+
 
 @node Ties
 @subsection Ties
@@ -348,9 +386,8 @@ musical phrasing.  A tie is entered using the tilde symbol `@code{~}'.
   e' ~ e' <<c' e' g'>> ~ <<c' e' g'>>
 @end lilypond
 
-When a tie is applied to a chord, all note heads (whose pitches match) are
-connected.  If you try to tie together chords that have no common pitches,
-no ties will be created.
+When a tie is applied to a chord, all note heads whose pitches match
+are connected.  When no note heads match, no ties will be created.
 
 In its meaning a tie is just a way of extending a note duration, similar
 to the augmentation dot: the following example are two ways of notating
@@ -362,6 +399,14 @@ exactly the same concept.
 If you need to tie notes over bars, it may be easier to use automatic
 note splitting (See @ref{Automatic note splitting}).
 
+@refcommands
+
+
+@refcommand tieUp 
+@refcommand tieDown 
+@refcommand tieBoth 
+@refcommand tieDotted 
+@refcommand tieSolid
 
 @seealso 
 
@@ -381,41 +426,10 @@ off ties per @internalsref{Thread}.
 Switching staves when a tie is active, will produce a horizontal tie
 on the first note.
 
+Formatting of ties is a difficult subject. The results are often not
+optimal results.
 
-Formatting of ties is a difficult subject. LilyPond often does not
-give optimal results.
-
-
-
-@node Automatic note splitting 
-@subsection Automatic note splitting
-@c FIXME: This subsection does not belong in @ref{Note entry}.
-
-LilyPond can automatically converting long notes to tied notes.  This
-is done by replacing the @internalsref{Note_heads_engraver} by the
-@internalsref{Completion_heads_engraver}. 
-
-@lilypond[verbatim,noindent]
-\score{
-  \notes\relative c'{ \time 2/4
-  c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 
-  }
-  \paper{ \translator{
-      \ThreadContext
-      \remove "Note_heads_engraver"
-      \consists "Completion_heads_engraver"
-  } } }
-@end lilypond
-
-This engraver splits all running notes at the bar line, and inserts
-ties.  One of its uses is to debug complex scores: if the measures are
-not entirely filled, then the ties exactly show how much each measure
-is off.
-
-@refbugs
 
-Not all durations (especially those containing tuplets) can be
-represented exactly; the engraver will not insert tuplets. 
 
 @node Tuplets
 @subsection Tuplets
@@ -444,7 +458,7 @@ of their written length:
 
 The property @code{tupletSpannerDuration} specifies how long each bracket
 should last.  With this, you can make lots of tuplets while typing
-@code{\times} only once, saving you lots of typing.
+@code{\times} only once, saving lots of typing.
 
 @lilypond[fragment,  relative, singleline, verbatim]
 \property Voice.tupletSpannerDuration = #(ly:make-moment 1 4)
@@ -453,15 +467,24 @@ should last.  With this, you can make lots of tuplets while typing
 
 The format of the number is determined by the property
 @code{tupletNumberFormatFunction}.  The default prints only the
-denominator, but if you set it to the Scheme function
-@code{fraction-tuplet-formatter}, Lilypond will print @var{num}:@var{den}
+denominator, but if it is set to the Scheme function
+@code{fraction-tuplet-formatter}, @var{num}:@var{den} will be printed
 instead.
 
 
 @cindex @code{tupletNumberFormatFunction}
 @cindex tuplet formatting 
 
-See also @seeinternals{TupletBracket}.
+
+@refcommands
+
+@refcommand tupletUp  
+@refcommand tupletDown 
+@refcommand tupletBoth
+
+@seealso
+
+@seeinternals{TupletBracket}, @seeinternals{TimeScaledMusic}.
 
 @refbugs
 
@@ -474,7 +497,7 @@ tuplet brackets should be moved manually.
 @cindex easy notation
 @cindex Hal Leonard
 
-The "easyplay" note head includes a note name inside the head.  It is
+The `easyplay' note head includes a note name inside the head.  It is
 used in music aimed at beginners.
 
 @lilypond[singleline,verbatim,26pt]
@@ -504,17 +527,31 @@ produce the correct result.
 @node Easier music entry
 @section Easier music entry
 @cindex Music entry
+
+When entering music it is easy to introduce errors. This section deals
+with tricks and features of the input language that help when entering
+music, and find and correct mistakes.
+
+Some features of the input language ease entering music, for example
+the use of variables (for splitting up large pieces of music), and
+unfolded repeats for writing repetitive parts. They are described in
+other sections (see @ref{Repeats} and @ref{Assignments}), since they
+are not especially aimed at easing entry
+
+It is also possible to use external programs, for example GUI
+interfaces, or MIDI transcription programs, to enter or edit
+music. Refer to the website for more information. Finally, there are
+tools make debugging easier, by linking the input file and the output
+shown on screen. See @ref{Point and click} for more information.
+
+
 @menu
 * Relative octaves::            
 * Bar check::                   
 * Skipping corrected music::    
+* Automatic note splitting ::   
 @end menu
 
-When entering music with LilyPond, it is easy to introduce
-errors. This section deals with tricks and features that help you
-enter music, and find and correct mistakes.  It is also possible to
-use external programs to enter or edit music. Refer to the website for
-more information.
 
 
 
@@ -524,9 +561,9 @@ more information.
 @cindex relative octave specification
 
 Octaves are specified by adding @code{'} and @code{,} to pitch names.
-When you copy existing music, it is easy to accidentally put a pitch in
-the wrong octave and hard to find such an error.  To prevent these
-errors, LilyPond features octave entry.
+When you copy existing music, it is easy to accidentally put a pitch
+in the wrong octave and hard to find such an error. The relative
+octave mode prevents these errors
 
 @cindex @code{\relative}
 @example
@@ -594,11 +631,10 @@ additional @code{\relative} inside the @code{\transpose}.
 
 Whenever a bar check is encountered during interpretation, a warning
 message is issued if it does not fall at a measure boundary.  This can
-help you find errors in the input.  Depending on the value of
+help find errors in the input.  Depending on the value of
 @code{barCheckSynchronize}, the beginning of the measure will be
-relocated, so this can also be used to shorten measures.
+relocated. A bar check is entered using the bar symbol, `@code{|}'.
 
-A bar check is entered using the bar symbol, `@code{|}'.
 @example
   \time 3/4 c2 e4 | g2.
 @end example
@@ -620,8 +656,8 @@ in the next section.
 The property @code{Score.skipTypesetting} can be used to switch on and
 off typesetting completely during the interpretation phase. When
 typesetting is switched off, the music is processed much more quickly.
-You can use this to skip over the parts of a score that you have already
-checked for errors. 
+This can be used to skip over the parts of a score that have already
+been checked for errors.
 
 @lilypond[fragment,singleline,verbatim]
 \relative c'' { c8 d
@@ -631,13 +667,58 @@ checked for errors.
 c d b bes a g c2 } 
 @end lilypond
 
+@node Automatic note splitting 
+@subsection Automatic note splitting
+
+Long notes can be converted automatically to tied notes.  This is done
+by replacing the @internalsref{Note_heads_engraver} by the
+@internalsref{Completion_heads_engraver}.
+
+@example
+  \paper @{ \translator @{
+      \ThreadContext
+      \remove "Note_heads_engraver"
+      \consists "Completion_heads_engraver"
+  @} @}
+@end example
+
+For example,
+@example
+  \time 2/4
+  c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 
+@end example
+
+@lilypond[noindent]
+\score{
+  \notes\relative c'{
+  \time 2/4
+  c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 
+  }
+  \paper { \translator {
+      \ThreadContext
+      \remove "Note_heads_engraver"
+      \consists "Completion_heads_engraver"
+  } }
+  }
+@end lilypond
+
+This engraver splits all running notes at the bar line, and inserts
+ties.  One of its uses is to debug complex scores: if the measures are
+not entirely filled, then the ties exactly show how much each measure
+is off.
+
+@refbugs
+
+Not all durations (especially those containing tuplets) can be
+represented exactly; the engraver will not insert tuplets. 
+
 
 
 
 @node Staff notation
 @section Staff notation
 
-This section deals with music notation that occurs on staff level,
+This section describes with music notation that occurs on staff level,
 such as keys, clefs and time signatures.
 
 @cindex Staff notation
@@ -646,6 +727,7 @@ such as keys, clefs and time signatures.
 * Staff symbol::                
 * Key signature::               
 * Clef::                        
+* Ottava brackets::             
 * Time signature::              
 * Unmetered music::             
 * Bar lines::                   
@@ -658,28 +740,28 @@ such as keys, clefs and time signatures.
 @cindex StaffSymbol, using \property
 @cindex staff lines, setting number of
 
-Staff is a the general name for Notes, dynamic signs, etc. are grouped
+Notes, dynamic signs, etc. are grouped
 with a set of horizontal lines, into a staff (plural `staves'). In our
-system, these lines are drawn using a separate graphical object called
+system, these lines are drawn using a separate layout object called
 staff symbol.  
 
 This object is created whenever a @internalsref{Staff} context is
-created.  You cannot change the appearance of the staff symbol by
+created.  The appearance of the staff symbol cannot be changed by
 using @code{\override} or @code{\set}.  At the moment that
-@code{\property Staff} is interpreted, a Staff context is made, and
-the @internalsref{StaffSymbol} is created before any @code{\override} is
-effective. You can deal with this either overriding properties in a
+@code{\property Staff} is interpreted, a @internalsref{Staff} context
+is made, and the @internalsref{StaffSymbol} is created before any
+@code{\override} is effective. Properties can be changed in a
 @code{\translator} definition, or by using @code{\outputproperty}.
 
 @refbugs
 
-If you end a staff halfway a piece, the staff symbol may not end
+If a staff is ended halfway a piece, the staff symbol may not end
 exactly on the barline.
 
 
 @node Key signature
 @subsection Key signature
-@cindex Key
+@cindex Key signature
 
 @cindex @code{\key}
 
@@ -716,10 +798,14 @@ This command sets the context property
 @internalsref{Staff}.@code{keySignature}.  Non-standard key signatures
 can be specified by setting this property directly.
 
+@refbugs
+
+The ordering of a key restoration (alterations that change back to
+natural) is wrong when combined with a repeat barline.
 
 @seealso
 
-@internalsref{KeyChangeEvent}, @internalsref{KeySignature}
+@internalsref{KeyChangeEvent}, @internalsref{KeySignature}.
 
 @cindex @code{keySignature}
 
@@ -766,9 +852,9 @@ G clef on 2nd line
 @end table
 
 By adding @code{_8} or @code{^8} to the clef name, the clef is
-transposed one octave down or up, respectively.   You have to
-enclose @var{clefname} in quotes if you use underscores or digits in the
-name. For example,
+transposed one octave down or up, respectively.  @var{clefname} must
+be enclosed in quotes when it contains underscores or digits. For
+example,
 @example
        \clef "G_8"
 @end example
@@ -784,6 +870,37 @@ The object for this symbol is @internalsref{Clef}.
 
 
 
+@node Ottava brackets
+@subsection Ottava brackets
+
+``Ottava'' brackets introduce an extra transposition of an octave for
+the staff. They are created by invoking the function
+@code{set-octavation}
+
+@cindex ottava
+@cindex 15ma
+@cindex octavation
+
+@lilypond[verbatim,fragment]
+\relative c''' {
+  a2 b
+  #(set-octavation 1)
+  a b 
+  #(set-octavation 0)
+  a b }
+@end lilypond
+
+Internally the @code{set-octavation} sets @code{ottavation} (eg. to
+@code{"8va"}) and @code{centralCPosition} properties.
+
+@seealso
+
+@internalsref{OttavaBracket}
+
+@refbugs
+
+@code{set-octavation} will get confused when clef changes happen
+during an octavation bracket.
 
 @node Time signature
 @subsection Time signature
@@ -811,10 +928,10 @@ See @inputfileref{input/test,time.ly} for more examples.
 
 This command sets the property @code{timeSignatureFraction},
 @code{beatLength} and @code{measureLength} in the @code{Timing}
-context, which is normally aliased to @internalsref{Score}.  The property
-@code{timeSignatureFraction} determine where bar lines should be
-inserted, and how automatic beams should be generated.  Changing the
-value of @code{timeSignatureFraction} also causes a time signature
+context, which is normally aliased to @internalsref{Score}.  The
+property @code{timeSignatureFraction} determines where bar lines
+should be inserted, and how automatic beams should be generated.
+Changing the value of @code{timeSignatureFraction} also causes the
 symbol to be printed.
 
 More options are available through the Scheme function
@@ -885,6 +1002,12 @@ music (e.g. cadenzas), this is not desirable.  By setting
 @code{Score.timing} to false, this automatic timing can be switched
 off.
 
+
+@refcommands
+
+@refcommand cadenzaOn 
+@refcommand cadenzaOff 
+
 @node Bar lines
 @subsection Bar lines
 @cindex Bar lines
@@ -899,8 +1022,8 @@ repeats. Line breaks may only happen on barlines.
 
 @syntax
 
-Bar lines are inserted automatically, but if you need a special type
-of barline, you can force one using the @code{\bar} command:
+Bar lines are inserted automatically.  Special types
+of barlines can be forced with the @code{\bar} command:
 @lilypond[relative=1,fragment,verbatim]
    c4 \bar "|:" c4
 @end lilypond
@@ -967,8 +1090,7 @@ are called @internalsref{BarLine}, the bar lines that span staffs are
 
 The easiest way to enter fragments with more than one voice on a staff
 is to split chords using the separator @code{\\}.  You can use it for
-small, short-lived voices (make a chord of voices) or for single
-chords:
+small, short-lived voices or for single chords:
 
 @lilypond[verbatim,fragment]
 \context Voice = VA \relative c'' {
@@ -994,14 +1116,15 @@ a stem directions and horizontal shift for each part.
 @end lilypond
 
 Normally, note heads with a different number of dots are not merged, but
-if you set the object property @code{merge-differently-dotted}, they are:
+when  the object property @code{merge-differently-dotted} is set in
+the @internalsref{NoteCollision} object, they are:
 @lilypond[verbatim,fragment,singleline]
-\relative c' \context Voice < {
+\relative c'' \context Voice < {
      g8 g8 
      \property Staff.NoteCollision \override
         #'merge-differently-dotted = ##t
      g8 g8
-  } \\ { [g8. f16] [g8. f16] } 
+  } \\ { g8.-[ f16-] g8.-[ f16-] } 
   >
 @end lilypond
 
@@ -1017,10 +1140,34 @@ Similarly, you can merge half note heads with eighth notes, by setting
 
 LilyPond also vertically shifts rests that are opposite of a stem. 
 
+
 @lilypond[singleline,fragment,verbatim]
 \context Voice < c''4 \\  r4 >
 @end lilypond
 
+
+@refcommands
+
+
+
+@refcommand oneVoice 
+@refcommand voiceOne 
+@refcommand voiceTwo 
+@refcommand voiceThree 
+@refcommand voiceFour 
+
+The following commands specify in what chords of the current voice
+should be shifted: the outer voice has @code{\shiftOff}, and the inner
+voices have @code{\shiftOn}, @code{\shiftOnn}, etc.
+
+
+@refcommand shiftOn
+@refcommand shiftOnn  
+@refcommand shiftOnnn  
+@refcommand shiftOff  
+
+
+
 @seealso
 
 The objects responsible for resolving collisions are
@@ -1034,10 +1181,10 @@ also example files @inputfileref{input/regression,collision-dots.ly},
 
 @refbugs
 
-Resolving collisions is a very intricate subject, and LilyPond only
-handles a few situations. When it cannot cope, you are advised to use
-@code{force-hshift} of the @internalsref{NoteColumn} object and pitched
-rests to override typesetting decisions.
+Resolving collisions is a intricate subject, and only a few situations
+are handled. When LilyPond cannot cope, the @code{force-hshift}
+property of the @internalsref{NoteColumn} object and pitched rests can
+be used to override typesetting decisions.
 
 @node Beaming
 @section Beaming
@@ -1049,11 +1196,13 @@ the metrum. They are inserted automatically in most cases.
 \time 2/4 c8 c c c \time 6/8 c c c c8. c16  c8
 @end lilypond
 
-If you are not satisfied with the automatic beaming, you can enter the
-beams explicitly. If you have beaming patterns that differ from the
-defaults, you can also set your own.
+When these automatic decisions are not good enough, beaming can be
+entered explicitly. It is also possible to define  beaming patterns
+that differ from the defaults.
+
+@seealso
 
-See also @internalsref{Beam}.
+@internalsref{Beam}. 
 
 
 @cindex Automatic beams
@@ -1078,8 +1227,8 @@ using @code{[} and @code{]}.
 Normally, beaming patterns within a beam are determined automatically.
 When this mechanism fouls up, the properties
 @code{Voice.stemLeftBeamCount} and @code{Voice.stemRightBeamCount} can
-be used to control the beam subdivision on a stem.  If you set either
-property, its value will be used only once, and then it is erased.
+be used to control the beam subdivision on a stem.  If either property
+is set, its value will be used only once, and then it is erased.
 
 @lilypond[fragment,relative,verbatim]
   \context Staff {
@@ -1100,9 +1249,8 @@ same effect as twiddling with @code{stemLeftBeamCount} and
         c16-[ c c c c c c c-]
         \property Voice.subdivideBeams = ##t
         c16-[ c c c c c c c-]
-        c32-[ c c c c c c c c c c c c c c c-]
         \property Score.beatLength = #(ly:make-moment 1 8)
-        c32-[ c c c c c c c c c c c c c c c-]
+        c16-[ c c c c c c c-]
 @end lilypond
 @cindex subdivideBeams
 
@@ -1156,7 +1304,7 @@ Some beams should be horizontal. These are so-called concave beams.
 @cindex automatic beams, tuning
 @cindex tuning automatic beaming
 
-[TODO: use \applycontext]
+@c [TODO: use \applycontext]
 
 In normal time signatures, automatic beams can start on any note but can
 only end in a few positions within the measure: beams can end on a beat,
@@ -1177,8 +1325,8 @@ whether the rule applies to begin or end-points.  The quantity
 signature (wildcards, `@code{* *}' may be entered to designate all time
 signatures).
 
-For example, if you want automatic beams to end on every quarter note,
-you can use the following:
+For example, if automatic beams should end on every quarter note, use
+the following:
 @example
 \property Voice.autoBeamSettings \override
     #'(end * * * *) = #(ly:make-moment 1 4)
@@ -1196,7 +1344,7 @@ In 4/4 time signature, this means that automatic beams could end only on
 3/8 and on the fourth beat of the measure (after 3/4, that is 2 times
 3/8 has passed within the measure).
 
-You can also restrict rules to specific time signatures. A rule that
+Rules can also be restricted to specific time signatures. A rule that
 should only be applied in @var{N}/@var{M} time signature is formed by
 replacing the second asterisks by @var{N} and @var{M}. For example, a
 rule for 6/8 time exclusively looks like
@@ -1205,11 +1353,11 @@ rule for 6/8 time exclusively looks like
     #'(begin * * 6 8) =  ... 
 @end example
 
-If you want a rule to apply to certain types of beams, you can use the
-first pair of asterisks. Beams are classified according to the shortest
-note they contain. For a beam ending rule that only applies to beams
-with 32nd notes (and no shorter notes), you would use @code{(end 1
-32 * *)}.
+If a rule should be to applied only to certain types of beams, use the
+first pair of asterisks. Beams are classified according to the
+shortest note they contain. For a beam ending rule that only applies
+to beams with 32nd notes (and no shorter notes), use @code{(end 1 32 *
+*)}.
 
 If a score ends while an automatic beam has not been ended and is still
 accepting notes, this last beam will not be typeset at all.
@@ -1223,12 +1371,17 @@ For melodies that have lyrics, you may want to switch off
 automatic beaming. This is done by setting @code{Voice.autoBeaming} to
 @code{#f}. 
 
+@refcommands
+
+@refcommand autoBeamOff 
+@refcommand autoBeamOn 
+
 
 @refbugs
 
 It is not possible to specify beaming parameters for beams with mixed
 durations, that differ from the beaming parameters of all separate
-durations, i.e., you'll have to specify manual beams to get:
+durations, i.e., you will have to specify manual beams to get:
 
 @lilypond[singleline,fragment,relative,noverbatim,quote]
   \property Voice.autoBeamSettings
@@ -1249,24 +1402,24 @@ inserts accidentals before the running notes.
 
 @menu
 * Using the predefined accidental variables::  
-* Defining your own accidental typesettings::  
+* Customized accidental rules::  
 @end menu
 
 @node Using the predefined accidental variables
 @subsection Using the predefined accidental variables
 
 The constructs for describing the accidental typesetting rules are
-quite hairy, so non-experts should stick to the variables defined in
-@file{ly/property-init.ly}.
+quite hairy, so non-experts should stick to the variables
+defined in @file{ly/property-init.ly}.
 @cindex @file{property-init.ly}
 
-The variables set properties in the ``Current'' context (see @ref{Context
-properties}). This means that the variables shuold normally be added
-right after the creation of the context in which the accidental
-typesetting described by the variable is to take effect. I.e. if you
-want to use piano-accidentals in a pianostaff then you issue
-@code{\pianoAccidentals} first thing after the creation of the piano
-staff:
+The variables set properties in the ``Current'' context (see
+@ref{Context properties}). This means that the variables should
+normally be added right after the creation of the context in which the
+accidental typesetting described by the variable is to take
+effect. For example, if you want to use piano-accidentals in a piano
+staff then issue @code{\pianoAccidentals} first thing after the
+creation of the piano staff:
 @example
 \score @{
     \notes \relative c'' <
@@ -1406,8 +1559,8 @@ some of them are typeset as cautionaries.
 @end lilypond
 @end table
 
-@node Defining your own accidental typesettings
-@subsection Defining your own accidental typesettings
+@node Customized accidental rules
+@subsection  Customized accidental rules
 
 This section must be considered gurus-only, and hence it must be
 sufficient with a short description of the system and a reference to
@@ -1430,10 +1583,23 @@ voices in the same staff share accidentals, but staves do not.
       immediately, and if @var{lazyness} is @code{#t} then the accidental
       lasts forever.
 
-[TODO: should use  +infinity for this case?]
+@c [TODO: should use  +infinity for this case?]
 
 @end table
 
+@refcommands
+
+@refcommand defaultAccidentals 
+@refcommand voiceAccidentals 
+@refcommand modernAccidentals 
+@refcommand modernCautionaries 
+@refcommand modernVoiceAccidentals 
+@refcommand modernVoiceCautionaries 
+@refcommand pianoAccidentals 
+@refcommand pianoCautionaries 
+@refcommand noResetKey 
+@refcommand forgetAccidentals 
+
 @seealso
 
 @internalsref{Accidental_engraver}, @internalsref{Accidental},
@@ -1469,12 +1635,11 @@ for the problematic notes.
 @node Expressive marks
 @section Expressive marks
 
-
 @menu
 * Slurs ::                      
 * Phrasing slurs::              
 * Breath marks::                
-* Tempo::                       
+* Metronome marks::             
 * Text spanners::               
 * Analysis brackets::           
 @end menu
@@ -1489,7 +1654,7 @@ A slur indicates that notes are to be played bound or @emph{legato}.
 
 They are entered using parentheses:
 @lilypond[fragment,verbatim,center]
-  f'-( g'-)-( a'-) [a'8 b'-(-] a'4 g'2 f'4-)
+  f'-( g'-)-( a'-) a'8-[ b'-(-] a'4 g'2 f'4-)
   <<c' e'>>2-( <<b d'>>2-)
 @end lilypond
 
@@ -1523,6 +1688,15 @@ stems might look better:
   d,32-( d'4 d8..-)
 @end lilypond
 
+@refcommands
+
+
+@refcommand slurUp   
+@refcommand slurDown 
+@refcommand slurBoth 
+@refcommand slurDotted 
+@refcommand slurSolid 
+
 @seealso
 
 @seeinternals{Slur}, @internalsref{SlurEvent}.
@@ -1552,15 +1726,20 @@ respectively.
 @end lilypond
 
 Typographically, the phrasing slur behaves almost exactly like a
-normal slur.  Although they behave similar to normal slurs, phrasing
-slurs count as different objects.  A @code{\slurUp} will have no
-effect on a phrasing slur; instead, you should use
-@code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
+normal slur.  However, they are treated as different objects.  A
+@code{\slurUp} will have no effect on a phrasing slur; instead, you
+should use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
 @code{\phrasingSlurBoth}.
 
 The commands @code{\slurUp}, @code{\slurDown}, and @code{\slurBoth}
 will only affect normal slurs and not phrasing slurs.
 
+@refcommands
+
+@refcommand phrasingSlurUp   
+@refcommand phrasingSlurDown 
+@refcommand phrasingSlurBoth 
+
 @seealso
 
 See also @internalsref{PhrasingSlur},
@@ -1569,7 +1748,7 @@ See also @internalsref{PhrasingSlur},
 @refbugs
 
 Phrasing slurs have the same limitations in their formatting as normal
-slurs.
+slurs. Putting phrasing slurs over rests leads to spurious warnings.
 
 @node Breath marks
 @subsection Breath marks
@@ -1582,7 +1761,7 @@ c'4 \breathe d4
 @end lilypond
 
 The glyph of the breath mark can be tweaked by overriding the
-@code{text} property of the @code{BreathingSign} grob with the name of
+@code{text} property of the @code{BreathingSign} layout object with the name of
 any glyph of @ref{The Feta font}.  For example,
 @lilypond[fragment,verbatim,relative]
 c'4
@@ -1597,59 +1776,49 @@ d4
 @inputfileref{input/regression,breathing-sign.ly}.
 
 
-@node Tempo
-@subsection Tempo
+@node Metronome marks
+@subsection Metronome marks
+
 @cindex Tempo
 @cindex beats per minute
 @cindex metronome marking
 
 Metronome settings can be entered as follows:
-
-@cindex @code{\tempo}
-@example
+@example 
   \tempo @var{duration} = @var{perminute} 
 @end example
 
-For example, @code{\tempo 4 = 76} requests output with 76 quarter notes
-per minute.
+In the MIDI output, they are interpreted as a tempo change, and in the
+paper output, a metronome marking is printed
+@cindex @code{\tempo}
+@lilypond[fragment,verbatim]
+  \tempo 8.=120 c''1
+@end lilypond
 
 @seealso
 
 @internalsref{TempoEvent}
   
-@refbugs
-  
-The tempo setting is not printed, but is only used in the MIDI
-output. You can trick lily into producing a metronome mark,
-though. Details are in @ref{Text markup}.
-
-[TODO: make note markup.]
 
 
 @node Text spanners
 @subsection Text spanners
 @cindex Text spanners
 
-Some textual indications, e.g. @i{rallentando} or @i{accelerando}, are
-often extended over many measures. This is indicated by following the
-text with a dotted line.  You can create such texts using text
-spanners. The syntax is as follows:
-@example
- \startTextSpan
- \stopTextSpan
-@end example
+Some performance indications, e.g. @i{rallentando} or @i{accelerando},
+are written as texts, and extended over many measures with dotted
+lines.  You can create such texts using text spanners: attach
+@code{\startTextSpan} and @code{\stopTextSpan} to the
+start and ending note of the spanner. 
+
 The string to be printed, as well as the style, is set through object
 properties.
 
-An application is to fake octavation indications.
-
 @lilypond[fragment,relative,verbatim]
- \relative c' {  a''' b c a
-  \property Voice.TextSpanner \set #'type = #'dotted-line
-  \property Voice.TextSpanner \set #'edge-height = #'(0 . 1.5)
-  \property Voice.TextSpanner \set #'edge-text = #'("8va " . "")
-  \property Staff.centralCPosition = #-13
-  a-\startTextSpan b c a-\stopTextSpan }
+ \relative c' {  c1 
+  \property Voice.TextSpanner \set #'direction = #-1
+  \property Voice.TextSpanner \set #'edge-text = #'("rall " . "")
+  c2-\startTextSpan b c-\stopTextSpan a }
 @end lilypond
 
 
@@ -1670,14 +1839,14 @@ Brackets are used in musical analysis to indicate structure in musical
 pieces. LilyPond supports a simple form of nested horizontal brackets.
 To use this, add the @internalsref{Horizontal_bracket_engraver} to
 @internalsref{Staff} context.  A bracket is started with
-@code{\groupOpen} and closed with @code{\groupClose}. 
+@code{\startGroup} and closed with @code{\stopGroup}. 
 
 @lilypond[singleline,verbatim]
 \score { \notes \relative c'' {  
-       c4-\groupOpen-\groupOpen
-       c4-\groupClose
-       c4-\groupOpen
-        c4-\groupClose-\groupClose
+       c4-\startGroup-\startGroup
+       c4-\stopGroup
+       c4-\startGroup
+        c4-\stopGroup-\stopGroup
   }
   \paper { \translator {
            \StaffContext \consists "Horizontal_bracket_engraver"
@@ -1695,23 +1864,10 @@ Bracket endings should be angled/slanted. (TODO)
  
 
 
-@node Ornaments
-@section Ornaments
-@cindex Ornaments
-
-[TODO: ornaments vs. expressive marks]
-
-@menu
-* Articulations::               
-* Text scripts::                
-* Grace notes::                 
-* Glissando ::                  
-* Dynamics::                    
-@end menu
 
 
 @node Articulations
-@subsection Articulations
+@section Articulations
 @cindex Articulations
 
 @cindex articulations
@@ -1720,7 +1876,7 @@ Bracket endings should be angled/slanted. (TODO)
 
 A variety of symbols can appear above and below notes to indicate
 different characteristics of the performance. They are added to a note
-by adding a dash and the the character signifying the
+by adding a dash and  the character signifying the
 articulation. They are demonstrated here.
 
 @lilypondfile[notexidoc]{script-abbreviations.ly}
@@ -1733,6 +1889,8 @@ put them up:
 @end lilypond
 
 
+
+
 Other symbols can be added using the syntax
 @var{note}@code{-\}@var{name}. Again, they can be forced up or down
 using @code{^} and @code{_}.
@@ -1769,10 +1927,32 @@ using @code{^} and @code{_}.
 @lilypondfile[notexidoc]{script-chart.ly}
 
 
+@refcommands
+
+@refcommand scriptUp  
+@refcommand scriptDown 
+@refcommand scriptBoth
+
+@seealso
+
+@internalsref{ScriptEvent}, @internalsref{Script}.
+
+@refbugs
+
+All of these note ornaments appear in the printed output but have no
+effect on the MIDI rendering of the music.
+
+
+@node Fingering instructions
+@section Fingering instructions
+
 @cindex fingering
 
-Fingering instructions can also be entered in this shorthand. For
-finger changes, use markup texts:
+Fingering instructions can be entered using
+@example
+  @var{note}-@var{digit}
+@end example
+For finger changes, use markup texts:
 @c
 @lilypond[verbatim, singleline, fragment]
       c'4-1 c'4-2 c'4-3 c'4-4
@@ -1784,26 +1964,37 @@ finger changes, use markup texts:
 @cindex superscript
 @cindex subscript
 
+You can use the thumb-script to indicate that a note should be
+played with your thumb (used in cello music):
+
+@lilypond[verbatim, singleline, fragmnt]
+      <<a' a''-3>>8-(_\thumb-[ <<b' b''-3>>-)_\thumb
+      <<c'' c'''-3>>-(_\thumb <<d'' d'''-3>>-)_\thumb-]
+@end lilypond
+
+Fingering for chords can be notated like this:
+
 @lilypond[verbatim,singleline,fragment,relative=1]
         << c-1  e-2 g-3 b-5 >> 4
        \property Voice.fingerHorizontalDirection = #LEFT
        << c-1  es-3 g-5 >> 4
        \property Voice.fingerHorizontalDirection = #RIGHT
-       << c-1  e-2 g-3 b-5 >> 4-\arpeggio
+       << c-1  e-2 g-3 b-5 >>4
        \property Voice.fingerHorizontalDirection = #LEFT
-       << c_1  e-2 g-3 b^5 >> 4
+       << c_1  e-2 g-3 b^5 >>4
 @end lilypond
         
 @seealso
 
-@internalsref{ScriptEvent}, 
-@internalsref{Script}, @internalsref{FingerEvent} and @internalsref{Fingering}.
-
-@refbugs
+@internalsref{FingerEvent} and @internalsref{Fingering}.
 
-All of these note ornaments appear in the printed output but have no
-effect on the MIDI rendering of the music.
 
+@menu
+* Text scripts::                
+* Grace notes::                 
+* Glissando ::                  
+* Dynamics::                    
+@end menu
 
 @node Text scripts
 @subsection Text scripts
@@ -1835,15 +2026,13 @@ commands will not work with direct PostScript output.
 @node Grace notes
 @subsection Grace notes
 
-
-
 @cindex @code{\grace}
 @cindex ornaments
 @cindex grace notes
 
 Grace notes are ornaments that are written out
 
-@lilypond[relative=2,verbatim,ifragment] c4 \grace c16 c4 \grace {
+@lilypond[relative=2,verbatim,fragment] c4 \grace c16 c4 \grace {
 [c16 d16] } c4
 @end lilypond
 
@@ -1860,7 +2049,7 @@ example is shown here with timing tuples.
 @lilypond[]
 \score { \notes \relative c''{ 
   c4^"(0,0)"  \grace c16_" "_"(1/4,-1/16)"  c4^"(1/4,0)"  \grace {
-  [c16_"(2/4,-1/8)"  d16^"(2/4,-1/16)" ] } c4_" "_"(2/4,0)"
+  c16_"(2/4,-1/8)"-[  d16^"(2/4,-1/16)" ] } c4_" "_"(2/4,0)"
   }
 \paper {  linewidth = 8.\cm }
 }
@@ -1878,14 +2067,13 @@ staves.
 
 Unbeamed eighth notes and shorter by default have a slash through the
 stem. This can be controlled with object property @code{stroke-style} of
-@internalsref{Stem}. The change in formatting is accomplished by
-inserting @code{\startGraceMusic} before handling the grace notes, and
-@code{\stopGraceMusic} after finishing the grace notes.
-You can add to these definitions to globally change grace note
-formatting. The standard definitions are in @file{ly/grace-init.ly}.
-
-[TODO discuss Scheme functionality.]
+@internalsref{Stem}. For proper  matching of override and reverts of
+such properties, it is necessary to use a Scheme function.
 
+The following fragment overrides the default formatting Grace style stems.
+@example
+  #(add-to-grace-init "Voice" 'Stem  'stroke-style '())
+@end example
 
 The @code{\override} is carefully matched with a @code{\revert}.
 
@@ -1894,7 +2082,7 @@ The @code{\override} is carefully matched with a @code{\revert}.
 
 @lilypond[fragment,verbatim]
 \relative c'' \context Voice {
-  \grace c8 c4 \grace { [c16 c16] } c4
+  \grace c8 c4 \grace { c16-[ c16-] } c4
   \grace { 
     \property Voice.Stem \override #'stroke-style = #'() 
     c16 
@@ -1903,17 +2091,17 @@ The @code{\override} is carefully matched with a @code{\revert}.
 }
 @end lilypond
 
-
-
 If you want to end a note with a grace note, then the standard trick
 is to put the grace notes before a phantom ``space note'', e.g.
 @lilypond[fragment,verbatim, relative=2]
 \context Voice {
     < { d1^\trill ( }
-     { s2 \grace { [c16 d] } } >
+     { s2 \grace { c16-[ d-] } } >
    )c4
 }
 @end lilypond
+By adjusting the duration of the skip note (here it is a half-note),
+the space between the main-note and the grace is adjusted.
 
 A @code{\grace} section has some default values, and LilyPond will
 use those default values unless you specify otherwise inside the
@@ -1927,16 +2115,15 @@ second bars in this example:
 \relative c'' \context Voice {
     \slurUp
     \grace {
-        a4 ( }
-    ) a4 a4 () a2
+        a4-( }
+    ) a4 a4-( a2-)
     \slurBoth
 
     \grace {
         \slurUp
-        a4 ( }
-    ) a4 a4 () a2
+        a4-( }
+    ) a4 a4-( a2-)
     \slurBoth
-
 }
 @end lilypond
 
@@ -1949,6 +2136,10 @@ second bars in this example:
 
 Grace notes cannot be used in the smallest size (@file{paper11.ly}).
 
+A score that starts with an @code{\grace} section needs an explicit
+@code{\context Voice} declaration, otherwise the main note and grace
+note end up on different staffs.
+
 Grace note synchronization can also lead to surprises. Staff notation,
 such as key signatures, barlines, etc. are also synchronized. Take
 care when you mix staves with grace notes and staves without.
@@ -1963,6 +2154,9 @@ expressions.  Nesting, juxtaposing, or ending sequential music with a
 grace section is not supported, and might produce crashes or other
 errors.
 
+Overriding settings for grace music using @code{add-to-grace-init}
+cannot be done in a modular way.
+
 
 @node Glissando 
 @subsection Glissando
@@ -2044,14 +2238,15 @@ A crescendo mark is started with @code{\cr} and terminated with
 crescendo can be started with @code{\<} and a decrescendo can be
 started with @code{\>}.  Either one can be terminated with @code{\!}.
 Because these marks are bound to notes, if you must use spacer notes
-if marks during one note are needed.
+if multiple marks during one note are needed.
 
 @lilypond[fragment,verbatim,center,quote]
   c''-\< c''-\!   d''-\decr e''-\rced 
   < f''1 { s4 s4-\< s4-\! \>  s4-\! } >
 @end lilypond
 This may give rise to very short hairpins. Use @code{minimum-length}
-in @internalsref{Voice}.@internalsref{HairPin} to lengthen these, e.g.
+in @internalsref{Voice}.@internalsref{HairPin} to lengthen them, for
+example:
 
 @example
  \property Staff.Hairpin \override #'minimum-length = #5
@@ -2079,6 +2274,15 @@ You can also supply your own texts:
 
 @cindex diminuendo
 
+
+@refcommands
+
+@refcommand dynamicUp  
+@refcommand dynamicDown 
+@refcommand dynamicBoth 
+
+@cindex direction, of dynamics
+
 @seealso
 
 @internalsref{CrescendoEvent}, @internalsref{DecrescendoEvent},
@@ -2090,12 +2294,7 @@ handled by the @internalsref{DynamicLineSpanner} object.
 
 If you want to adjust padding or vertical direction of the dynamics,
 you must set properties for the @internalsref{DynamicLineSpanner}
-object. Predefined variables to set the vertical direction are
-@code{\dynamicUp} and  @code{\dynamicDown}.
-
-@cindex direction, of dynamics
-@cindex @code{\dynamicDown}
-@cindex @code{\dynamicUp}
+object.
 
 
 @node Repeats
@@ -2105,9 +2304,13 @@ object. Predefined variables to set the vertical direction are
 @cindex repeats
 @cindex @code{\repeat}
 
-To specify repeats, use the @code{\repeat} keyword.  Since repeats
-should work differently when played or printed, there are a few
-different variants of repeats.
+
+Repetition is a central concept in music, and multiple notations exist
+for repetitions. In LilyPond, most of these notations can be captured
+in a uniform syntax. One of the advantages is, all these repetitions
+can be rendered in MIDI accurately.
+
+The following types of repetition are supported:
 
 @table @code
 @item unfold
@@ -2145,10 +2348,6 @@ Make beat or measure repeats. These look like percent signs.
 @node Repeat syntax
 @subsection Repeat syntax
 
-
-Repetition is a central concept in music, and multiple notations exist
-for repetitions.
-
 @syntax
 
 LilyPond has one syntactic construct for specifying different types of
@@ -2196,7 +2395,7 @@ With alternative endings:
 
 @refbugs
 
- If you do a nested repeat like
+If you do a nested repeat like
 
 @example 
 \repeat @dots{}
@@ -2207,8 +2406,8 @@ With alternative endings:
 @noindent
 then it is ambiguous to which @code{\repeat} the @code{\alternative}
 belongs. This ambiguity is resolved by always having the
-@code{\alternative} belong to the inner @code{\repeat}.  This
-ambiguity may also be resolved by using braces.
+@code{\alternative} belong to the inner @code{\repeat}.  For clarity,
+it is advisable to use braces in such situations.
 @cindex ambiguity
 
 @node Repeats and MIDI
@@ -2225,7 +2424,8 @@ example file @inputfileref{input/test,unfold-all-repeats.ly}.
 Timing information is not remembered at the start of an alternative,
 so you have to reset timing information after a repeat, e.g. using a
 bar-check (See @ref{Bar check}), setting @code{Score.measurePosition}
-or entering @code{\partial}.  Slurs or ties are also not repeated.
+or entering @code{\partial}.  Similarly, slurs or ties are also not
+repeated.
 
 
 @node Manual repeat commands
@@ -2310,7 +2510,7 @@ length is omitted, then then the last value (stored in
   c'2:8 c':32 | c': c': |
 @end lilypond
 
-[TODO : stok is te kort bij 32en]
+@c [TODO : stok is te kort bij 32en]
 
 @refbugs
 
@@ -2343,15 +2543,14 @@ patterns that divide the measure length are replaced by slashes.
 
 @refbugs
 
-You cannot nest percent repeats, e.g. by filling in the first measure
-with slashes, and repeating that measure with percents.
+Single measure and double measure percent-repeats cannot be nested.
 
 @node Rhythmic music
 @section Rhythmic music
 
-Sometimes you might want to show only the rhythm of a melody.  This can
-be done with the rhythmic staff. All pitches of notes on such a staff
-are squashed, and the  staff itself  looks has  a single staff line:
+Sometimes you might want to show only the rhythm of a melody.  This
+can be done with the rhythmic staff. All pitches of notes on such a
+staff are squashed, and the staff itself has a single line:
 
 @lilypond[fragment,relative,verbatim]
   \context RhythmicStaff {
@@ -2376,14 +2575,13 @@ position refers to a specific piece of percussion.
 
 @syntax
 
-LilyPond is has a set of Scheme functions that can be used to typeset
-percussion staves. The system is based on the general MIDI
-drum-pitches.  Include @file{ly/drumpitch-init.ly} to use drum
-pitches. This file defines the pitches from the Scheme variable
-@code{drum-pitch-names}, the definition of which can be read in
-@file{scm/drums.scm}.  Each piece of percussion has a full name and an
-abbreviated name, and both the full name or the abbreviation may be
-used in input files.
+Percussion staves are typeset with help of a set of Scheme
+functions. The system is based on the general MIDI drum-pitches.
+Include @file{ly/drumpitch-init.ly} to use drum pitches. This file
+defines the pitches from the Scheme variable @code{drum-pitch-names},
+the definition of which can be read in @file{scm/drums.scm}.  Each
+piece of percussion has a full name and an abbreviated name, and both
+the full name or the abbreviation may be used in input files.
 
 To typeset the music on a staff apply the function @code{drums->paper}
 to the percussion music. This function takes a list of percussion
@@ -2441,7 +2639,7 @@ mus = \notes  { cymc cyms cymr hh hhc hho hhho hhp cb hc
 }
 @end lilypond
 
-Scheme supports six different toms.  When there fewer toms, simply
+The drum scheme supports six different toms.  When there fewer toms, simply
 select the toms that produce the desired result, i.e., to get toms on
 the three middle lines you use @code{tommh}, @code{tomml} and
 @code{tomfh}.
@@ -2450,6 +2648,7 @@ Because general MIDI does not contain rimshots the sidestick is used
 for this purpose instead.
 @item 'timbales
 To typeset timbales on a two line staff.
+
 @lilypond[singleline]
 \include "drumpitch-init.ly"
 nam = \lyrics { timh ssh timl ssl cb }
@@ -2481,6 +2680,7 @@ mus = \notes  { timh ssh timl ssl cb s16 }
 @end lilypond
 @item 'congas
 To typeset congas on a two line staff.
+
 @lilypond[singleline]
 \include "drumpitch-init.ly"
 nam = \lyrics { cgh cgho cghm ssh cgl cglo cglm ssl }
@@ -2511,6 +2711,7 @@ mus = \notes  { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
 @end lilypond
 @item 'bongos
 To typeset bongos on a two line staff.
+
 @lilypond[singleline]
 \include "drumpitch-init.ly"
 nam = \lyrics { boh boho bohm ssh bol bolo bolm ssl }
@@ -2574,7 +2775,7 @@ If you do not like any of the predefined lists you can define your own
 list at the top of your file:
 
 @lilypond[singleline, verbatim]
-#(define mydrums `(
+#(set-drum-kit 'mydrums `(
         (bassdrum     default   #f        ,(ly:make-pitch -1 2 0))
         (snare        default   #f        ,(ly:make-pitch 0 1 0))
         (hihat        cross     #f        ,(ly:make-pitch 0 5 0))
@@ -2674,7 +2875,7 @@ handle this cross-staffing behavior.  In this section we discuss the
 * Manual staff switches::       
 * Pedals::                      
 * Arpeggio::                    
-* Voice follower lines::        
+* Staff switch lines::          
 @end menu 
 
 @refbugs
@@ -2786,7 +2987,7 @@ c'4-\sustainUp-\sustainDown
  f'4 g'4 a'4-\sustainUp
 @end lilypond
 
-The default '*Ped' style for sustain and damper pedals corresponds to
+The default `*Ped' style for sustain and damper pedals corresponds to
 @code{\pedal-type = #'text}. However, @code{mixed} is the default style
 for a sostenuto pedal:
 
@@ -2862,18 +3063,20 @@ arpeggiate the chord. To draw these brackets, set the
        <<c' e g c>>-\arpeggio
 @end lilypond
 
+@refcommands
+
+@refcommand arpeggioBracket 
+@refcommand arpeggio
 
 @refbugs
 
 It is not possible to mix connected arpeggios and unconnected
 arpeggios in one @internalsref{PianoStaff} at the same time.
 
-@node  Voice follower lines
-@subsection Voice follower lines
+@node  Staff switch lines
+@subsection Staff switch lines
 
 
-[TODO: invent better name]
-
 @cindex follow voice
 @cindex staff switching
 @cindex cross staff
@@ -2898,151 +3101,231 @@ can be printed automatically. This is enabled if the property
 
 The associated object is @internalsref{VoiceFollower}.
 
+@refcommands
+
+@refcommand showStaffSwitch 
+@refcommand hideStaffSwitch 
+
 
 @node Vocal music
 @section Vocal music
 
-For a discussion of how to put lyrics into a score, see section
-@code{Printing lyrics} in the tutorial.
+This section discusses how to enter, and print lyrics.
 
-@cindex context variables
-@cindex setting context variables
-An interpretation context has variables that tune its behavior.  These
-variables are also called @emph{properties}.  The @code{autoBeaming}
-variable in a @code{Staff} controls whether 8th and shorter notes are
-beamed automatically. Setting the variable to @code{##f}, which is the
-boolean value @var{false}, turns it off.
+@menu
+* Entering lyrics::             
+* The Lyrics context::          
+* More stanzas::                
+* Ambitus::                     
+@end menu
 
+@node Entering lyrics
+@subsection Entering lyrics
 
-This will create an extender, which is a line
-that extends over the entire duration of the lyric.  This line will
-run all the way to the start of the next lyric, so you may want to
-shorten it by using a blank lyric (using @code{_}).
 
-@cindex lyric mode
+@cindex lyrics
 @cindex @code{\lyrics}
+@cindex punctuation
 
- To get them printed, you must do two
-things: indicate that lyrics   are entered with @code{\lyrics}, and
-indicate that this type of music must be interpreted as texts (and not
-notes). This is done with @code{\context Lyrics}. 
+Lyrics are entered in a special input mode. This mode is is introduced
+by the keyword @code{\lyrics}.  In this mode you can enter lyrics, with
+punctuation and accents without any hassle.  Syllables are entered like
+notes, but with pitches replaced by text.  For example,
+@example
+  \lyrics @{ Twin-4 kle4 twin- kle litt- le star2 @}
+@end example
+
+A word in Lyrics mode begins with: an alphabetic character, @code{_},
+@code{?}, @code{!}, @code{:}, @code{'}, the control characters @code{^A}
+through @code{^F}, @code{^Q} through @code{^W}, @code{^Y}, @code{^^},
+any 8-bit character with ASCII code over 127, or a two-character
+combination of a backslash followed by one of @code{`}, @code{'},
+@code{"}, or @code{^}.
+
+Subsequent characters of a word can be any character that is not a digit
+and not white space.  One important consequence of this is that a word
+can end with @code{@}}. The following example is usually a bug. The
+syllable includes a @code{@}}, and hence the opening brace is not balanced.
+@example
+  \lyrics @{ twinkle@}
+@end example
+which may be confusing. 
 
-You can enter lyrics in a special input mode of LilyPond. This mode is
-called Lyrics mode, and it is introduced by the keyword
-@code{\lyrics}.  In this mode you can enter lyrics, with punctuation
-and accents without any hassle.  Syllables are entered like notes, but
-with pitches replaced by text.  For example,
+@cindex @code{\property}, in @code{\lyrics}
+Similarly, a  period following a alphabetic sequence, is included in the
+resulting string. As a consequence, spaces must be inserted around
+@code{\property} commands:
 @example
-  Twin- kle twin- kle
+  \property Lyrics . LyricText \set #'font-shape = #'italic
 @end example
 
+@cindex @code{_}
+@cindex spaces, in lyrics
+@cindex quotes, in lyrics
 
+Any @code{_} character which appears in an unquoted word is converted
+to a space.  This provides a mechanism for introducing spaces into words
+without using quotes.  Quoted words can also be used in Lyrics mode to
+specify words that cannot be written with the above rules:
 
+@example
+  \lyrics @{ He said: "\"Let" my peo ple "go\"" @}
+@end example
 
-You can use ordinary hyphens at the end of a syllable, i.e.
+@cindex hyphens
+Hyphens can be entered as ordinary hyphens at the end of a syllable, i.e.
 @example
         soft- ware
 @end example
-but then the hyphen will be attached to the end of the first syllable.
-If you want them centered between syllables you can use the special
-`@code{-}@code{-}' lyric as a separate word between syllables.  The
-hyphen will have variable length depending on the space between
-the syllables and it will be centered between the syllables.
 
+These will be attached to the end of the first syllable.
 
+Centered hyphens are entered using the special `@code{-}@code{-}' lyric
+as a separate word between syllables.  The hyphen will have variable
+length depending on the space between the syllables and it will be
+centered between the syllables.
 
+@cindex melisma
+@cindex extender
 
-Normally the notes that you enter are transformed into note heads.
-Note heads alone make no sense. They need surrounding information: a
-key signature, a clef, staff lines, etc.  They need @emph{context}.
-In LilyPond, these symbols are created by objects called
-`interpretation contexts'.  Interpretation contexts exist for
-generating notation (`notation context') and for generating sound
-(`performance context').  These objects only exist while LilyPond is
-executing.  For lyrics, the command
-@example
-  \context Lyrics
-@end example
-must be used to interpret a set of syllables as lyrics.
+When a lyric is sung over many notes (this is called a melisma), this is
+indicated with a horizontal line centered between a syllable and the
+next one. Such a line is called an extender line, and it is entered as
+@code{__}.
+
+@seealso
 
+@internalsref{LyricEvent}, @internalsref{HyphenEvent},
+@internalsref{ExtenderEvent}.
 
+@refbugs
+
+The definition of lyrics mode is too complex. 
 
-@cindex context
-@cindex interpretation context
-@cindex notation context
+@node The Lyrics context
+@subsection  The Lyrics context
 
+Lyrics are printed by interpreting them in @internalsref{Lyrics}
+context:
+@example
+ \context Lyrics \lyrics @dots{}
+@end example
 
+@cindex automatic syllable durations
+@cindex @code{\addlyrics}
+@cindex lyrics and melodies
 
-The melody and the lyrics can be combined with the @code{\addlyrics}:
+This will place the lyrics according to the durations that were
+entered. The lyrics can also be aligned under a given melody
+automatically.  In this case, it is no longer necessary to enter the
+correct duration for each syllable.  This is achieved by combining the
+melody and the lyrics with the @code{\addlyrics} expression
 @example
 \addlyrics
-  \notes \relative c' @dots{}
-  \context Lyrics \lyrics @dots{} 
+  \notes @dots{}
+  \context Lyrics @dots{} 
+@end example
+
+@cindex staff order, with @code{\addlyrics}
+
+Normally, this will put the lyrics below the staff. For different or
+more complex orderings, the best way is to setup the hierarchy of
+staffs and lyrics first, e.g.
+@example
+\context ChoirStaff \notes <
+  \context Lyrics = LA @{ s1 @}
+  \context Staff = SA @{ s1 @}
+  \context Lyrics = LB @{ s1 @}
+  \context Staff = SB @{ s1 @}
+>
 @end example
+and then combine the appropriate melodies and lyric lines:
+@example
+  \addlyrics
+    \context Staff = SA @emph{the music}
+    \context Lyrics = LA @emph{the lyrics}
+@end example
+
+putting both together, you would get
+@example
+\context ChoirStaff \notes <
+  \context Lyrics = LA @dots{}
+  \context Staff = SB @dots{}
+  \addlyrics @dots{}
+>
+@end example
+
+@cindex SATB
+@cindex choral score
 
-[TODO: Move lyrics section from tutorial to here?]
+An example of a  SATB score setup is in the file
+@inputfileref{input/template,satb}.
 
-See also the sections on @ref{Slurs} and @ref{Breath marks}.
+@seealso
 
-[TODO: Move slurs / breath marks section to here?]
+@internalsref{LyricCombineMusic}, @internalsref{Lyrics},
+@inputfileref{input/template,satb}.
 
-[TODO: Write subsection upon usage of ChoirStaff.]
+@refbugs
 
+@code{\addlyrics} is not automatic enough: melismata are not detected
+automatically, and melismata are not stopped when they hit a rest.  A
+melisma on the last note in a melody is not printed.
 
 
 @node More stanzas
-@section More stanzas
+@subsection More stanzas
 
 
-@cindex phrasing
+@cindex phrasing, in lyrics
 
-If you have multiple stanzas printed underneath each other, the vertical
-groups of syllables should be aligned around punctuation.  LilyPond can
-do this if you tell it which lyric lines belong to which melody.
-We show how you can do this by showing how you could print a frivolous
-fragment of a fictional Sesame Street duet. 
+When multiple stanzas are printed underneath each other, the vertical
+groups of syllables should be aligned around punctuation.  This can be
+done automatically when corresponding lyric lines and melodies are
+marked.
 
-@lilypond[singleline,verbatim]
-\score {
-\addlyrics
-  \notes \relative c'' \context Voice = duet { \time 3/4
-     g2 e4 a2 f4 g2.  }
-  \lyrics \context Lyrics <
-  \context LyricsVoice = "duet-1" {
-    \property LyricsVoice . stanza = "Bert"
-    Hi, my name is bert.    }
-  \context LyricsVoice = "duet-2" {
-    \property LyricsVoice . stanza = "Ernie" 
-    Ooooo, ch\'e -- ri, je t'aime. }
-  >
-}
-@end lilypond
-
-To this end, give the Voice context an identity, and set the
-LyricsVoice to a name starting with that identity followed by a dash.
-In the following example, the Voice identity is @code{duet},
+To this end, give the @internalsref{Voice} context an identity,
 @example
 \context Voice = duet @{
      \time 3/4
      g2 e4 a2 f4 g2.  @}
 @end example
-and the
-identities of the LyricsVoices are @code{duet-1} and @code{duet-2}.
+
+Then set the @internalsref{LyricsVoice} contexts to names starting with
+that identity followed by a dash.  In the preceding example, the
+@internalsref{Voice} identity is @code{duet}, so the identities of the
+@internalsref{LyricsVoices} are marked @code{duet-1} and @code{duet-2}.
 @example
   \context LyricsVoice = "duet-1" @{
     Hi, my name is bert. @}
   \context LyricsVoice = "duet-2" @{
     Ooooo, ch\'e -- ri, je t'aime. @}
 @end example
-The convention for naming @code{LyricsVoice} and @code{Voice} must
-also be used to get melismata on rests correct.
+The convention for naming @internalsref{LyricsVoice} and
+@internalsref{Voice} must also be used to get melismata on rests
+correct.
 
+The complete example is shown here.
+@lilypond[singleline,verbatim]
+\score {
+\addlyrics
+  \notes \relative c'' \context Voice = duet { \time 3/4
+     g2 e4 a2 f4 g2.  }
+  \lyrics \context Lyrics <
+  \context LyricsVoice = "duet-1" {
+    \property LyricsVoice . stanza = "Bert"
+    Hi, my name is bert.    }
+  \context LyricsVoice = "duet-2" {
+    \property LyricsVoice . stanza = "Ernie" 
+    Ooooo, ch\'e -- ri, je t'aime. }
+  >
+}
+@end lilypond
 
-We add the names of the singers.  This can be done by setting
+Stanza numbers, or the names of the singers can be added by setting
 @code{LyricsVoice.Stanza} (for the first system) and
-@code{LyricsVoice.stz} for the following systems.   You must
-surround dots with spaces in @code{\lyrics} mode.
+@code{LyricsVoice.stz} for the following systems.  Notice how dots are
+surrounded with spaces in @code{\lyrics} mode.
 
 @example
     \property LyricsVoice . stanza = "Bert"
@@ -3050,17 +3333,9 @@ surround dots with spaces in @code{\lyrics} mode.
     \property LyricsVoice . stanza = "Ernie" 
 @end example
 
-
-
-
-For entering quotes in Lyrics mode, use the following
-@example
-"\"God\"" is "`King'"
-@end example
-
 You can use empty syllables, e.g. @code{_4} or @code{" "4} to enter
 lyrics. This can confuse the LilyPond -- for example, this might put
-(empty) lyrics under rests. To remedy this, use @code{\skip}.
+(empty) lyrics under rests. To remedy this, use @code{\skip} instead.
 
 
 
@@ -3084,10 +3359,6 @@ making or a music identifier @code{\foo} containing the syllable
 @end example
 
 
-@menu
-* Ambitus::                     
-@end menu
-
 @node Ambitus
 @subsection Ambitus
 @cindex ambitus
@@ -3255,12 +3526,12 @@ g.
   > 
 @end lilypond
 
-Finally, it is possible to change the Scheme function to format the
-tablature note text. The default is
-@var{fret-number-tablature-format}, which uses the fret number. For
-some instruments that do not use this notation, you can create a
-special tablature formatting function. This function takes three
-argument: the string number, the string tuning and the note pitch.
+It is possible to change the Scheme function to format the tablature
+note text. The default is @code{fret-number-tablature-format}, which
+uses the fret number. For instruments that do not use this notation,
+you can create a special tablature formatting function. This function
+takes three argument: the string number, the string tuning and the
+note pitch.
 
 @refbugs
 
@@ -3269,10 +3540,16 @@ such as bend are not yet supported.
 
 
 @node Chord names
-@section Chord namess
+@section Chord names
 @cindex Chords
 
-LilyPond has support for both entering and printing chords. 
+LilyPond has support for both entering and printing named chords.
+These chords are internally represented as a set of pitches. Therefore
+they can be entered by name and printed as notes, entered as notes and
+printed as chord names, or (the most common case) entered them by
+name, and print them as name. The following fragment shows these
+options:
+
 @lilypond[verbatim,singleline]
 twoWays = \notes \transpose c c' {
   \chords {
@@ -3289,14 +3566,9 @@ twoWays = \notes \transpose c c' {
 @end lilypond
 
 This example also shows that the chord printing routines do not try to
-be intelligent. If you enter @code{f bes d}, it does not interpret
-this as an inversion.
+be intelligent. The chord @code{f bes d}, is not interpreted as an
+inversion.
 
-Chords are represented as a set of pitches. They are internally
-stored as simultaneous music expressions. This means you can enter
-chords by name and print them as notes, enter them as notes and print
-them as chord names, or (the most common case) enter them by name, and
-print them as name.
 
 @menu
 * Chords mode::                 
@@ -3433,18 +3705,18 @@ and subtractions, so articulation scripts cannot be entered.
 @cindex chord names
 @cindex chords
 
-For displaying printed chord names, use the @internalsref{ChordNames} context.
-The chords may be entered either using the notation described above, or
-directly using simultaneous music.
+For displaying printed chord names, use the @internalsref{ChordNames}
+context.  The chords may be entered either using the notation
+described above, or directly using @code{<<} and @code{>>}.
 
 @lilypond[verbatim,singleline]
 scheme = \notes {
-  \chords {a1 b c} <<d f g>>  <<e g b>>
+  \chords {a1 b c} <<d' f' g'>>  <<e' g' b'>>
 }
 \score {
   \notes<
     \context ChordNames \scheme
-    \context Staff \transpose c c' \scheme
+    \context Staff \scheme
   >
 }
 @end lilypond
@@ -3472,22 +3744,26 @@ scheme = \chords {
 The default chord name layout is a system for Jazz music, proposed by
 Klaus Ignatzek (See @ref{Literature}).
 
-[TODO: add description for banter other jazz.]
-
 The Ignatzek chord name formatting can be tuned in a number of ways
 through the following properties:
 @table @code
+
+@cindex chordNameExceptions
 @item chordNameExceptions
 This is a list that contains the chords that have special formatting.
 For an example, see
 @inputfileref{input/regression,chord-name-exceptions.ly}.
+@cindex exceptions, chord names.
 
+
+@cindex majorSevenSymbol
 @item majorSevenSymbol
 This property contains the markup object used for the 7th step, when
-it is major. Predefined options are @code{whiteTriangleMarkup},
+it is major. Predefined options are @code{whiteTriangleMarkup} and
 @code{blackTriangleMarkup}.  See
 @inputfileref{input/regression,chord-name-major7.ly} for an example.
 
+@cindex chordNameSeparator
 @item chordNameSeparator
 Different parts of a chord name are normally separated by a
 slash. By setting @code{chordNameSeparator}, you can specify other
@@ -3500,24 +3776,47 @@ separators, e.g.
       c:7sus4 }
 @end lilypond
 
+@cindex chordRootNamer
 @item chordRootNamer
 The root of a chord is usually printed as a letter with an optional
 alteration. The transformation from pitch to letter is done by this
-function.  An application of setting this function, is providing chord
-names with german notation for the root.
+function.  Special note names (for example, the German ``H'' for a
+B-chord) can be produced by storing a new function in this property.
 
+@cindex chordNoteNamer
 @item chordNoteNamer
 The default is to print single notes (as for instance the bass note)
-using the chordRootNamer. However, by setting this function to a non-null
+using the @code{chordRootNamer}. However, by setting this function to a non-null
 value you can specify a different function. I.e. you could use letters
 in lower case for the base note.
 
 @end table
 
+
+There are also two other chord name schemes implemented: an alternate
+Jazz chord notation, and a systematic scheme called Banter chords. The
+alternate jazz notation is also shown on the chart in @ref{Chord name
+chart}.  Turning on these styles is described in the input file
+@inputfileref{input/test/,chord-names-jazz.ly}.
+
+@cindex Banter
+@cindex jazz chords
+@cindex chords, jazz  
+
+
+@refcommands
+
+@refcommand germanChords 
+@refcommand semiGermanChords 
+
+
+
+
 @seealso
 
 @inputfileref{input/regression,chord-name-major7.ly},
 @inputfileref{input/regression,chord-name-exceptions.ly},
+@inputfileref{input/test,chord-names-jazz.ly},
 @inputfileref{input/test,chord-names-german.ly},
 @file{scm/chords-ignatzek.scm}, @file{scm/chord-entry.scm}
 
@@ -3532,26 +3831,51 @@ may result in strange chord names when chords are entered with the
 
 
 
-@node Writing parts
-@section Writing parts
+@node Orchestral music
+@section Orchestral music
 
-Orchestral music involves some special notation, both in the full score,
-as in the individual parts. This section explains how to tackle common
-problems in orchestral music.
+@cindex  Writing parts
+
+Orchestral music involves some special notation, both in the full
+score and the individual parts. This section explains how to tackle
+some common problems in orchestral music.
 
 
 
 @menu
+* Multiple staff contexts::     
 * Rehearsal marks::             
 * Bar numbers::                 
 * Instrument names::            
 * Transpose::                   
 * Multi measure rests::         
 * Automatic part combining::    
-* Hara kiri staves::            
+* Frenched scores::             
 * Sound output for transposing instruments::  
 @end menu
 
+@node Multiple staff contexts
+@subsection Multiple staff contexts
+
+Polyphonic scores consist of many staffs. These staffs can be
+constructed in three different ways:
+@itemize @bullet
+@item The group is started with a brace at the left. This is done with the
+@internalsref{GrandStaff} context.
+@item The group is started with a bracket. This is done with the
+@internalsref{StaffGroup} context
+@item The group is  started with a vertical line. This is the default
+for the score.
+@end itemize
+
+@cindex Staff, multiple
+@cindex bracket, vertical
+@cindex brace, vertical
+@cindex grand staff
+@cindex staff group
+
+
+
 
 @node Rehearsal marks
 @subsection Rehearsal marks
@@ -3626,15 +3950,15 @@ whose source is available as
 @lilypondfile[notexidoc]{bar-number-every-fifth.ly}
 
 The start of that numbering can also be reset, as demonstrated in
-@inputfileref{input/test,bar-number-every-5-reset.ly}.
+@inputfileref{input/test,bar-number-every-five-reset.ly}.
 
-@lilypondfile[notexidoc]{bar-number-every-5-reset.ly}
+@lilypondfile[notexidoc]{bar-number-every-five-reset.ly}
 
 
 @seealso
 
 @internalsref{BarNumber}.
-@inputfileref{input/test,bar-number-every-5-reset.ly}.
+@inputfileref{input/test,bar-number-every-five-reset.ly}.
 @inputfileref{input/test,bar-number-every-fifth.ly}
 
 @refbugs
@@ -3732,7 +4056,8 @@ you must put @code{\transpose} outside of @code{\relative}, since
 
 @node  Multi measure rests
 @subsection Multi measure rests
-@cindex Multi measure rests
+@cindex multi measure rests
+@cindex Rests, multi measure
 
 @cindex @code{R}
 
@@ -3772,7 +4097,7 @@ two whole notes), regardless of the time signature.
 @cindex fermata on multi-measure rest
 
 Texts can be added to multi-measure rests by using the
-@var{note}-@code{markup} syntax.  In this case, the number is
+@var{note}-@code{markup} syntax (see @ref{Text markup}).  In this case, the number is
 replaced. If you need both texts and the number, you must add the
 number by hand. A variable (@code{\fermataMarkup}) is provided for
 adding fermatas.
@@ -3792,9 +4117,9 @@ adding fermatas.
 @internalsref{MultiMeasureRestEvent},
 @internalsref{MultiMeasureTextEvent},
 @internalsref{MultiMeasureRestMusicGroup},
-@internalsref{MultiMeasureRest}.
+@internalsref{MultiMeasureRest}
 
-The graphical object @internalsref{MultiMeasureRestNumber} is for the
+The layout object @internalsref{MultiMeasureRestNumber} is for the
 default number, and @internalsref{MultiMeasureRestText} for user
 specified texts.
 
@@ -3813,8 +4138,9 @@ Be careful when entering multimeasure rests followed by whole notes,
 @example
  R1*4 cis cis 
 @end example
-will enter two notes lasting four measures each. The result will look
-ok, but the bar numbering will be off.
+will enter two notes lasting four measures each. When @code{skipBars}
+is set, then the result will look OK6, but the bar numbering will be
+off.
 
 @node Automatic part combining
 @subsection Automatic part combining
@@ -3849,7 +4175,7 @@ polyphony.
   \context Staff <
     \context Voice=one \partcombine Voice
       \context Thread=one \relative c'' {
-        g a () b r
+        g a-( b-) r
       }
       \context Thread=two \relative c'' {
         g r4 r f
@@ -3907,32 +4233,29 @@ measure.
   >
 @end lilypond
 
-The part combiner is slated to be rewritten [TODO: explain why] .
+The part combiner is slated to be rewritten [TODO: explain why].
 
 @cindex @code{Thread_devnull_engraver}
 @cindex @code{Voice_engraver}
 @cindex @code{A2_engraver}
 
-@node Hara kiri staves
-@subsection Hara kiri staves
+@node Frenched scores
+@subsection Frenched scores
 
 In orchestral scores, staff lines that only have rests are usually removed.
 This saves some space. This style is called `French Score'. 
 
 @syntax
 
-This is supported through the hara kiri@footnote{Hara kiri is the
-vulgar name for Seppuku, is the ritual suicide of the Japanese
-Samourai warriors.} staff. This staff commits suicide when it finds
-itself to be empty after the line-breaking process.  It will not
-disappear when it contains normal rests, you must use multi measure
-rests.
+This is supported through the @code{RemoveEmptyStaff}. This staff is
+removed when it turns out empty (or containing multimeasure rests)
+after the line-breaking process.
 
 For @internalsref{Lyrics}, @internalsref{LyricsVoice},
-@internalsref{ChordNames} and @internalsref{FiguredBass}, hara-kiri is
-switched on by default. For normal staffs, hara kiri is available as a
+@internalsref{ChordNames} and @internalsref{FiguredBass}, this is
+switched on by default. For normal staffs, it is available as a
 specialized @internalsref{Staff} context, with the name variable
-@code{\HaraKiriStaffContext}.  Observe how the second staff in this
+@code{\RemoveEmptyStaffContext}.  Observe how the second staff in this
 example disappears in the second line.
 
 @lilypond[verbatim]
@@ -3943,7 +4266,7 @@ example disappears in the second line.
   >
   \paper {
     linewidth = 6.\cm 
-    \translator { \HaraKiriStaffContext }
+    \translator { \RemoveEmptyStaffContext }
   }
 }
 @end lilypond
@@ -3975,7 +4298,7 @@ output.
 @cindex Petrucci
 @cindex mensural
 
-[TODO: write introduction on ancient notation]
+@c [TODO: write introduction on ancient notation]
 
 @menu
 * Ancient note heads::          
@@ -4019,29 +4342,6 @@ arbitrary line, as described in section @ref{Clef}.  The note printed
 to the right side of each clef in the example column denotes the
 @code{c'} with respect to that clef.
 
-@c --- This should go somewhere else: ---
-@c @item modern style G clef (glyph: @code{clefs-G})
-@c
-@c Supported clefs:
-@c @code{treble}, @code{violin}, @code{G}, @code{G2}, @code{french}
-@c
-@c @lilypond[26pt]{\property Staff.TimeSignature \set #'transparent = ##t \clef "G" c'}
-@c
-@c @item modern style F clef (glyph: @code{clefs-F})
-@c
-@c Supported clefs:
-@c @code{varbaritone}, @code{bass}, @code{F}, @code{subbass}
-@c
-@c @lilypond{\property Staff.TimeSignature \set #'transparent = ##t \clef "F" c'}
-@c
-@c @item modern style C clef (glyph: @code{clefs-C})
-@c
-@c Supported clefs:
-@c @code{soprano}, @code{mezzosoprano}, @code{alto}, @code{C},
-@c @code{tenor}, @code{baritone}
-@c
-@c @lilypond{\property Staff.TimeSignature \set #'transparent = ##t \clef "C" c'}
-
 @multitable @columnfractions  .3 .3 .3 .1
 
 @item
@@ -4061,50 +4361,29 @@ modern style mensural C clef @tab
 @end lilypond
 
 @item
-@code{clefs-petrucci_c1} @tab
-petrucci style mensural C clef (specifically for use on 1st staffline) @tab
-@code{petrucci_c1} @tab
-@lilypond[relative 0, notime]
-\property Staff.TimeSignature \set #'transparent = ##t
-\clef "petrucci_c1" c
-@end lilypond
-
-@item
-@code{clefs-petrucci_c2} @tab
-petrucci style mensural C clef (specifically for use on 2nd staffline) @tab
-@code{petrucci_c2} @tab
+@code{clefs-petrucci_c1}
+@code{clefs-petrucci_c2}
+@code{clefs-petrucci_c3}
+@code{clefs-petrucci_c4}
+@code{clefs-petrucci_c5}
+
+@tab
+petrucci style mensural C clefs, for use  on different  stafflines
+(the examples shows the 2nd staffline C clef).
+
+@tab
+@code{petrucci_c1}
+@code{petrucci_c2}
+@code{petrucci_c3}
+@code{petrucci_c4}
+@code{petrucci_c5}
+
+@tab
 @lilypond[relative 0, notime]
 \property Staff.TimeSignature \set #'transparent = ##t
 \clef "petrucci_c2" c
 @end lilypond
 
-@item
-@code{clefs-petrucci_c3} @tab
-petrucci style mensural C clef (specifically for use on 3rd staffline) @tab
-@code{petrucci_c3} @tab
-@lilypond[relative 0, notime]
-\property Staff.TimeSignature \set #'transparent = ##t
-\clef "petrucci_c3" c
-@end lilypond
-
-@item
-@code{clefs-petrucci_c4} @tab
-petrucci style mensural C clef (specifically for use on 4th staffline) @tab
-@code{petrucci_c4} @tab
-@lilypond[relative 0, notime]
-\property Staff.TimeSignature \set #'transparent = ##t
-\clef "petrucci_c4" c
-@end lilypond
-
-@item
-@code{clefs-petrucci_c5} @tab
-petrucci style mensural C clef (specifically for use on 5th staffline) @tab
-@code{petrucci_c5} @tab
-@lilypond[relative 0, notime]
-\property Staff.TimeSignature \set #'transparent = ##t
-\clef "petrucci_c5" c
-@end lilypond
-
 @item
 @code{clefs-petrucci_f} @tab
 petrucci style mensural F clef @tab
@@ -4360,13 +4639,12 @@ supported are @code{vaticana}, @code{medicaea}, @code{hufnagel} and
 If the boolean property @code{adjust-if-on-staffline} is set to
 @code{#t} (which it is by default), lily typesets slightly different
 variants of the custos glyph, depending on whether the custos, is
-typeset on or between stafflines.  The idea is that the glyph will
+typeset on or between stafflines.   The glyph will
 optically fit well into the staff, with the appendage on the right of
 the custos always ending at the same vertical position between two
 stafflines regardless of the pitch.  If you set
-@code{adjust-if-on-staffline} to @code{#f}, then lily takes regardless
-of the pitch always a glyph that is a compromise of the former two
-variants.
+@code{adjust-if-on-staffline} to @code{#f}, then
+a compromise between both forms is  used.
 
 Just like stems can be attached to noteheads in two directions
 @emph{up} and @emph{down}, each custos glyph is available with its
@@ -4469,14 +4747,15 @@ square bracket above the ligature.
 }
 @end lilypond
 
-To select a specific style of ligatures, a proper ligature engraver has
-to be added to the @internalsref{Voice} context, as explained in the
-following subsections.  Currently, Lilypond only supports white mensural
-ligatures with certain limitations.  Support for Editio Vaticana will be
-added in the future.
+To select a specific style of ligatures, a proper ligature engraver
+has to be added to the @internalsref{Voice} context, as explained in
+the following subsections.  Currently, only white mensural ligatures
+are supported with certain limitations.  Support for Editio Vaticana
+will be added in the future.
 
 @menu
 * White mensural ligatures::    
+* Gregorian square neumes ligatures::  
 @end menu
 
 @node White mensural ligatures
@@ -4490,19 +4769,40 @@ implementation is still experimental; it currently may output strange
 warnings or even crash in some cases or produce weird results on more
 complex ligatures.  To engrave white mensural ligatures, in the paper
 block the @internalsref{Mensural_ligature_engraver} has to be put into
-the @internalsref{Voice} context (and you probably want to remove the
-@internalsref{Ligature_bracket_engraver}).  There is no additional
-input language to describe the shape of a white mensural ligature.
-The shape is rather determined solely from the pitch and duration of
-the enclosed notes.  While this approach may take a new user a while
-to get accustomed, it has the great advantage that the full musical
-information of the ligature is known internally.  This is not only
-required for correct MIDI output, but also allows for automatic
-transcription of the ligatures.
+the @internalsref{Voice} context, and remove the
+@internalsref{Ligature_bracket_engraver}:
+
+@example
+    \paper @{
+       \translator @{
+           \VoiceContext
+           \remove Ligature_bracket_engraver
+           \consists Mensural_ligature_engraver
+       @}
+    @}
+@end example
+
+There is no additional input language to describe the shape of a
+white mensural ligature.  The shape is rather determined solely from
+the pitch and duration of the enclosed notes.  While this approach may
+take a new user a while to get accustomed, it has the great advantage
+that the full musical information of the ligature is known internally.
+This is not only required for correct MIDI output, but also allows for
+automatic transcription of the ligatures.
 
 Example:
 
-@lilypond[singleline,verbatim]
+@example
+       \property Score.timing = ##f
+       \property Score.defaultBarType = "empty"
+       \property Voice.NoteHead \set #'style = #'neo_mensural
+       \property Staff.TimeSignature \set #'style = #'neo_mensural
+       \clef "petrucci_g"
+       \[ g\longa c\breve a\breve f\breve d'\longa \]
+       s4
+       \[ e1 f1 a\breve g\longa \]
+@end example
+@lilypond[singleline]
 \score {
     \notes \transpose c c' {
        \property Score.timing = ##f
@@ -4543,79 +4843,1707 @@ to the following:
 }
 @end lilypond
 
-@node Figured bass
-@subsection Figured bass
-
-@cindex Basso continuo
+@node Gregorian square neumes ligatures
+@subsubsection Gregorian square neumes ligatures
 
-@c TODO: musicological blurb about FB
+@cindex Square neumes ligatures
+@cindex Gregorian square neumes ligatures
 
-@syntax
+Gregorian square neumes notation (following the style of the Editio
+Vaticana) is under heavy development, but not yet really usable for
+production purposes.  Core ligatures can already be typeset, but
+essential issues for serious typesetting are still under development,
+such as (among others) horizontal alignment of multiple ligatures,
+lyrics alignment and proper accidentals handling.  Still, this section
+gives a sneak preview of what Gregorian chant may look like once it
+will work.
 
-LilyPond has limited support for figured bass:
+The following table contains the extended neumes table of the 2nd
+volume of the Antiphonale Romanum (@emph{Liber Hymnarius}), published
+1983 by the monks of Solesmes.
 
-@lilypond[verbatim,fragment]
-<
- \context Voice \notes { \clef bass dis4  c d ais}
- \context FiguredBass
-   \figures {
-    < 6 >4 < 7 >8 < 6+ [_!] >
-    < 6 >4 <6 5 [3+] >
-   }
- >
-@end lilypond
+@multitable @columnfractions .4 .2 .2 .2
 
-The support for figured bass consists of two parts: there is an input
-mode, introduced by @code{\figures}, where you can enter bass figures
-as numbers, and there is a context called @internalsref{FiguredBass}
-that takes care of making @internalsref{BassFigure} objects.
+@item
+@b{Neuma aut@*Neumarum Elementa} @tab
+@b{Figurae@*Rectae} @tab
+@b{Figurae@*Liquescentes Auctae} @tab
+@b{Figurae@*Liquescentes Deminutae}
 
-In figures input mode, a group of bass figures is delimited by
-@code{<} and @code{>}. The duration is entered after the @code{>}.
-@example
-       <4 6>
-@end example
-@lilypond[fragment]
-\context FiguredBass
-\figures { <4 6> }
-@end lilypond
+@c TODO: \paper block is identical in all of the below examples.
+@c Therefore, it should somehow be included rather than duplicated all
+@c the time. --jr
 
-Accidentals are added to the numbers if you alterate them by
-appending @code{-}, @code{!}  and @code{+}.
+@c why not make identifiers in ly/engraver-init.ly? --hwn
 
-@example
-  <4- 6+ 7!>
-@end example
-@lilypond[fragment]
-  \context FiguredBass
-    \figures { <4- 6+ 7!> }
-@end lilypond
+@c Because it's just used to typeset plain notes without
+@c a staff for demonstration purposes rather than something
+@c special of Gregorian chant notation. --jr
 
-Spaces or dashes may be inserted by using @code{_}. Brackets are
-introduced with @code{[} and @code{]}.
+@item
+@code{1. Punctum}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.5cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Punctum
+        \[ b \]
+        \noBreak s^\markup {"a"} \noBreak
 
-@example
-       < [4 6] 8 [_ 12]>
-@end example
-@lilypond[fragment]
- \context FiguredBass
-\figures { < [4 6] 8 [_ 12]> }
+        % Punctum Inclinatum
+        \[ \inclinatum b \]
+        \noBreak s^\markup {"b"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
 @end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.5cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Punctum Auctum Ascendens
+        \[ \auctum \ascendens b \]
+        \noBreak s^\markup {"c"} \noBreak
 
-Although the support for figured bass may superficially resemble chord
-support, it works much simpler.  The @code{\figures} mode simply
-stores the numbers , and @internalsref{FiguredBass} context prints
-them as entered. There is no conversion to pitches, and no
-realizations of the bass are played in the MIDI file.
+        % Punctum Auctum Descendens
+        \[ \auctum \descendens b \]
+        \noBreak s^\markup {"d"} \noBreak
 
-Internally, the code produces markup texts. You can use any of the
-markup text properties to override formatting. For example, the
-vertical spacing of the figures may be set with @code{baseline-skip}.
+        % Punctum Inclinatum Auctum
+        \[ \inclinatum \auctum b \]
+        \noBreak s^\markup {"e"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Punctum Inclinatum Parvum
+        \[ \inclinatum \deminutum b \]
+        \noBreak s^\markup {"f"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
 
-@seealso
+@item
+@code{2. Virga}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Virga
+        \[ \virga b \]
+        \noBreak s^\markup {"g"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@tab
 
-@internalsref{BassFigureEvent} music, @internalsref{BassFigure} grob,
-@internalsref{FiguredBass} context
+@item
+@code{3. Apostropha vel Stropha}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Stropha
+        \[ \stropha b \]
+        \noBreak s^\markup {"h"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Stropha Aucta
+        \[ \stropha \auctum b \]
+        \noBreak s^\markup {"i"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+
+@item
+@code{4. Oriscus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Oriscus
+        \[ \oriscus b \]
+        \noBreak s^\markup {"j"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@tab
+
+@item
+@code{5. Clivis vel Flexa}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Clivis vel Flexa
+        \[ b \flexa g \]
+        s^\markup {"k"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Clivis Aucta Descendens
+        \[ b \flexa \auctum \descendens g \]
+        \noBreak s^\markup {"l"} \noBreak
+
+        % Clivis Aucta Ascendens
+        \[ b \flexa \auctum \ascendens g \]
+        \noBreak s^\markup {"m"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Cephalicus
+        \[ b \flexa \deminutum g \]
+        s^\markup {"n"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{6. Podatus vel Pes}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Podatus vel Pes
+        \[ g \pes b \]
+        s^\markup {"o"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Pes Auctus Descendens
+        \[ g \pes \auctum \descendens b \]
+        \noBreak s^\markup {"p"} \noBreak
+
+        % Pes Auctus Ascendens
+        \[ g \pes \auctum \ascendens b \]
+        \noBreak s^\markup {"q"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Epiphonus
+        \[ g \pes \deminutum b \]
+        s^\markup {"r"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{7. Pes Quassus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Pes Quassus
+        \[ \oriscus g \pes \virga b \]
+        s^\markup {"s"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Pes Quassus Auctus Descendens
+        \[ \oriscus g \pes \auctum \descendens b \]
+        s^\markup {"t"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+
+@item
+@code{8. Quilisma Pes}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Quilisma Pes
+        \[ \quilisma g \pes b \]
+        s^\markup {"u"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Quilisma Pes Auctus Descendens
+        \[ \quilisma g \pes \auctum \descendens b \]
+        s^\markup {"v"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+
+@item
+@code{9. Podatus Initio Debilis}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Pes Initio Debilis
+        \[ \deminutum g \pes b \]
+        s^\markup {"w"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Pes Auctus Descendens Initio Debilis
+        \[ \deminutum g \pes \auctum \descendens b \]
+        s^\markup {"x"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+
+@item
+@code{10. Torculus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus
+        \[ a \pes b \flexa g \]
+        s^\markup {"y"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus Auctus Descendens
+        \[ a \pes b \flexa \auctum \descendens g \]
+        s^\markup {"z"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus Deminutus
+        \[ a \pes b \flexa \deminutum g \]
+        s^\markup {"A"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{11. Torculus Initio Debilis}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus Initio Debilis
+        \[ \deminutum a \pes b \flexa g \]
+        s^\markup {"B"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus Auctus Descendens Initio Debilis
+        \[ \deminutum a \pes b \flexa \auctum \descendens g \]
+        s^\markup {"C"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Torculus Deminutus Initio Debilis
+        \[ \deminutum a \pes b \flexa \deminutum g \]
+        s^\markup {"D"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{12. Porrectus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Porrectus
+        \[ a \flexa g \pes b \]
+        s^\markup {"E"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Porrectus Auctus Descendens
+        \[ a \flexa g \pes \auctum \descendens b \]
+        s^\markup {"F"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Porrectus Deminutus
+        \[ a \flexa g \pes \deminutum b \]
+        s^\markup {"G"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{13. Climacus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Climacus
+        \[ \virga b \inclinatum a \inclinatum g \]
+        s^\markup {"H"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Climacus Auctus
+        \[ \virga b \inclinatum a \inclinatum \auctum g \]
+        s^\markup {"I"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Climacus Deminutus
+        \[ \virga b \inclinatum a \inclinatum \deminutum g \]
+        s^\markup {"J"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{14. Scandicus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Scandicus
+        \[ g \pes a \virga b \]
+        s^\markup {"K"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Scandicus Auctus Descendens
+        \[ g \pes a \pes \auctum \descendens b \]
+        s^\markup {"L"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Scandicus Deminutus
+        \[ g \pes a \pes \deminutum b \]
+        s^\markup {"M"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+
+@item
+@code{15. Salicus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Salicus
+        \[ g \oriscus a \pes \virga b \]
+        s^\markup {"N"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Salicus Auctus Descendens
+        \[ g \oriscus a \pes \auctum \descendens b \]
+        s^\markup {"O"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+
+@item
+@code{16. Trigonus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
+\include "gregorian-init.ly"
+\score {
+    \notes \transpose c c' {
+        % Trigonus
+        \[ \stropha b \stropha b \stropha a \]
+        s^\markup {"P"}
+    }
+    \paper {
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator {
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            StaffSymbol \set #'transparent = ##t
+            \remove "Time_signature_engraver"
+            \remove "Bar_engraver"
+            minimumVerticalExtent = ##f
+        }
+        \translator {
+            \VoiceContext
+            \remove Ligature_bracket_engraver
+            \consists Vaticana_ligature_engraver
+            NoteHead \set #'style = #'vaticana_punctum
+            Stem \set #'transparent = ##t
+        }
+    }
+}
+@end lilypond
+@tab
+@tab
+
+@end multitable
+
+
+Unlike most other neumes notation systems, the input language for
+neumes does not necessarily reflect directly the typographical
+appearance, but is designed to solely focuse on musical meaning.  For
+example, @code{\[ a \pes b \flexa g \]} produces a Torculus consisting
+of three Punctum heads, while @code{\[ a \flexa g \pes b \]} produces
+a torculus with a curved flexa shape and only a single Punctum head.
+There is no command to explicitly typeset the curved flexa shape; the
+decision of when to typeset a curved flexa shape is purely taken from
+the musical input.  The idea of this approach is to separate the
+musical aspects of the input from the notation style of the output.
+This way, the same input can be reused to typeset the same music in a
+different style of Gregorian chant notation such as Hufnagel (also
+known as German gothic neumes) or Medicaea (kind of a very simple
+forerunner of the Editio Vaticana).  As soon as Hufnagel ligature
+engraver and Medicaea ligature engraver will have been implemented, it
+will be as simple as replacing the ligature engraver in the
+VoiceContext to get the desired notation style from the same input.
+
+The following table shows the code fragments that produce the
+ligatures in the above neumes table.  The letter in the first column
+in each line of the below table indicates to which ligature in the
+above table it refers.  The second column gives the name of the
+ligature.  The third column shows the code fragment that produces this
+ligature, using @code{g}, @code{a} and @code{b} as example pitches.
+
+@multitable @columnfractions .1 .4 .5
+
+@item
+@b{#} @tab
+@b{Name} @tab
+@b{Input Language}
+
+@item
+a @tab
+Punctum @tab
+@code{\[ b \]}
+
+@item
+b @tab
+Punctum Inclinatum @tab
+@code{\[ \inclinatum b \]}
+
+@item
+c @tab
+Punctum Auctum Ascendens @tab
+@code{\[ \auctum \ascendens b \]}
+
+@item
+d @tab
+Punctum Auctum Descendens @tab
+@code{\[ \auctum \descendens b \]}
+
+@item
+e @tab
+Punctum Inclinatum Auctum @tab
+@code{\[ \inclinatum \auctum b \]}
+
+@item
+f @tab
+Punctum Inclinatum Parvum @tab
+@code{\[ \inclinatum \deminutum b \]}
+
+@item
+g @tab
+Virga @tab
+@code{\[ \virga b \]}
+
+@item
+h @tab
+Stropha @tab
+@code{\[ \stropha b \]}
+
+@item
+i @tab
+Stropha Aucta @tab
+@code{\[ \stropha \auctum b \]}
+
+@item
+j @tab
+Oriscus @tab
+@code{\[ \oriscus b \]}
+
+@item
+k @tab
+Clivis vel Flexa @tab
+@code{\[ b \flexa g \]}
+
+@item
+l @tab
+Clivis Aucta Descendens @tab
+@code{\[ b \flexa \auctum \descendens g \]}
+
+@item
+m @tab
+Clivis Aucta Ascendens @tab
+@code{\[ b \flexa \auctum \ascendens g \]}
+
+@item
+n @tab
+Cephalicus @tab
+@code{\[ b \flexa \deminutum g \]}
+
+@item
+o @tab
+Podatus vel Pes @tab
+@code{\[ g \pes b \]}
+
+@item
+p @tab
+Pes Auctus Descendens @tab
+@code{\[ g \pes \auctum \descendens b \]}
+
+@item
+q @tab
+Pes Auctus Ascendens @tab
+@code{\[ g \pes \auctum \ascendens b \]}
+
+@item
+r @tab
+Epiphonus @tab
+@code{\[ g \pes \deminutum b \]}
+
+@item
+s @tab
+Pes Quassus @tab
+@code{\[ \oriscus g \pes \virga b \]}
+
+@item
+t @tab
+Pes Quassus Auctus Descendens @tab
+@code{\[ \oriscus g \pes \auctum \descendens b \]}
+
+@item
+u @tab
+Quilisma Pes @tab
+@code{\[ \quilisma g \pes b \]}
+
+@item
+v @tab
+Quilisma Pes Auctus Descendens @tab
+@code{\[ \quilisma g \pes \auctum \descendens b \]}
+
+@item
+w @tab
+Pes Initio Debilis @tab
+@code{\[ \deminutum g \pes b \]}
+
+@item
+x @tab
+Pes Auctus Descendens Initio Debilis @tab
+@code{\[ \deminutum g \pes \auctum \descendens b \]}
+
+@item
+y @tab
+Torculus @tab
+@code{\[ a \pes b \flexa g \]}
+
+@item
+z @tab
+Torculus Auctus Descendens @tab
+@code{\[ a \pes b \flexa \auctum \descendens g \]}
+
+@item
+A @tab
+Torculus Deminutus @tab
+@code{\[ a \pes b \flexa \deminutum g \]}
+
+@item
+B @tab
+Torculus Initio Debilis @tab
+@code{\[ \deminutum a \pes b \flexa g \]}
+
+@item
+C @tab
+Torculus Auctus Descendens Initio Debilis @tab
+@code{\[ \deminutum a \pes b \flexa \auctum \descendens g \]}
+
+@item
+D @tab
+Torculus Deminutus Initio Debilis @tab
+@code{\[ \deminutum a \pes b \flexa \deminutum g \]}
+
+@item
+E @tab
+Porrectus @tab
+@code{\[ a \flexa g \pes b \]}
+
+@item
+F @tab
+Porrectus Auctus Descendens @tab
+@code{\[ a \flexa g \pes \auctum \descendens b \]}
+
+@item
+G @tab
+Porrectus Deminutus @tab
+@code{\[ a \flexa g \pes \deminutum b \]}
+
+@item
+H @tab
+Climacus @tab
+@code{\[ \virga b \inclinatum a \inclinatum g \]}
+
+@item
+I @tab
+Climacus Auctus @tab
+@code{\[ \virga b \inclinatum a \inclinatum \auctum g \]}
+
+@item
+J @tab
+Climacus Deminutus @tab
+@code{\[ \virga b \inclinatum a \inclinatum \deminutum g \]}
+
+@item
+K @tab
+Scandicus @tab
+@code{\[ g \pes a \virga b \]}
+
+@item
+L @tab
+Scandicus Auctus Descendens @tab
+@code{\[ g \pes a \pes \auctum \descendens b \]}
+
+@item
+M @tab
+Scandicus Deminutus @tab
+@code{\[ g \pes a \pes \deminutum b \]}
+
+@item
+N @tab
+Salicus @tab
+@code{\[ g \oriscus a \pes \virga b \]}
+
+@item
+O @tab
+Salicus Auctus Descendens @tab
+@code{\[ g \oriscus a \pes \auctum \descendens b \]}
+
+@item
+P @tab
+Trigonus @tab
+@code{\[ \stropha b \stropha b \stropha a \]}
+
+@end multitable
+
+@refbugs
+
+Scandicus Deminutus: Punctum Auctum Ascendens overlaps with
+Semivocalis head; this looks awful.
+
+Trigonus: apply equal spacing, regardless of pitch.
+
+@node Figured bass
+@subsection Figured bass
+
+@cindex Basso continuo
+
+@c TODO: musicological blurb about FB
+
+@syntax
+
+LilyPond has limited support for figured bass:
+
+@lilypond[verbatim,fragment]
+<
+ \context Voice \notes { \clef bass dis4  c d ais}
+ \context FiguredBass
+   \figures {
+    < 6 >4 < 7 >8 < 6+ [_!] >
+    < 6 >4 <6 5 [3+] >
+   }
+ >
+@end lilypond
+
+The support for figured bass consists of two parts: there is an input
+mode, introduced by @code{\figures}, where you can enter bass figures
+as numbers, and there is a context called @internalsref{FiguredBass}
+that takes care of making @internalsref{BassFigure} objects.
+
+In figures input mode, a group of bass figures is delimited by
+@code{<} and @code{>}. The duration is entered after the @code{>}.
+@example
+       <4 6>
+@end example
+@lilypond[fragment]
+\context FiguredBass
+\figures { <4 6> }
+@end lilypond
+
+Accidentals are added to the numbers if you alterate them by
+appending @code{-}, @code{!}  and @code{+}.
+
+@example
+  <4- 6+ 7!>
+@end example
+@lilypond[fragment]
+  \context FiguredBass
+    \figures { <4- 6+ 7!> }
+@end lilypond
+
+Spaces or dashes may be inserted by using @code{_}. Brackets are
+introduced with @code{[} and @code{]}.
+
+@example
+       < [4 6] 8 [_ 12]>
+@end example
+@lilypond[fragment]
+ \context FiguredBass
+\figures { < [4 6] 8 [_ 12]> }
+@end lilypond
+
+Although the support for figured bass may superficially resemble chord
+support, it works much simpler.  The @code{\figures} mode simply
+stores the numbers , and @internalsref{FiguredBass} context prints
+them as entered. There is no conversion to pitches, and no
+realizations of the bass are played in the MIDI file.
+
+Internally, the code produces markup texts. You can use any of the
+markup text properties to override formatting. For example, the
+vertical spacing of the figures may be set with @code{baseline-skip}.
+
+@seealso
+
+@internalsref{BassFigureEvent} music, @internalsref{BassFigure} object,
+@internalsref{FiguredBass} context
 
 @refbugs
 
@@ -4630,7 +6558,7 @@ vocabulary. With this expansion, many innovations in musical notation
 have been tried. For a comprehensive overview, refer to @cite{Stone
 1980} (see @ref{Literature}). In general, the use of new, innovative
 notation makes a piece harder to understand and perform and its use
-should be avoided if possible.  For this reason, support for
+should therefore be avoided if possible.  For this reason, support for
 contemporary notation in LilyPond is limited.
 
 
@@ -4669,15 +6597,13 @@ reasonable to specify a cluster as the envelope of a set of notes.
 
 @syntax
 
-A cluster is engraved as the envelope of a set of notes. The starting
-note is marked with @code{\startCluster}, and the ending note with
-@code{\stopCluster}, e.g.,
-
-@example
-  c4-\startCluster
-     ...
-  f4-\stopCluster 
-@end example
+A cluster is engraved as the envelope of a set of
+cluster-notes. Cluster notes are created by applying the function
+@code{notes-to-clusters} to a sequence of chords, eg.
+@c
+@lilypond[relative 2]
+    \apply #notes-to-clusters {  << c e >> <<b f'>>  }
+@end lilypond
 
 The following example (from
 @inputfileref{input/regression,cluster.ly}) shows what the result
@@ -4693,14 +6619,12 @@ ordinary notes and clusters.
 
 @seealso
 
-@internalsref{Cluster}, @inputfileref{input/regression,cluster.ly},
-@internalsref{Cluster_engraver}, @internalsref{ClusterEvent}.
+@internalsref{ClusterSpanner}, @internalsref{ClusterSpannerBeacon},
+@inputfileref{input/regression,cluster.ly},
+@internalsref{Cluster_engraver}, @internalsref{ClusterNoteEvent}.
 
 @refbugs
 
-When a cluster is active, note heads must be switched off manually using
-@code{\hideNotes}. 
-
 Music expressions like @code{< @{ g8 e8 @} a4 >} are not printed
 accurately.  Use @code{<<g a>>8 <<e a>>8} instead.
 
@@ -4755,10 +6679,9 @@ such as fermatas to a @code{\notes@{@}} block.
 @node Tuning output
 @section Tuning output
 
-As much formatting as possible is performed
-automatically. Nevertheless, there are situations where LilyPond needs
-some help, or where you want to override its decisions. In this
-section we discuss ways to do just that.
+There are situations where default layout decisions are not
+sufficient.  In this section we discuss ways to override these
+defaults.
 
 Formatting is internally done by manipulating so called objects (graphic
 objects). Each object carries with it a set of properties (object
@@ -4773,12 +6696,15 @@ object, and set a object property in that object.
 
 @menu
 * Tuning objects ::             
+* Constructing a tweak::        
 * Applyoutput::                 
 * Outputproperty::              
 * Font selection::              
 * Text markup::                 
 @end menu
 
+
+
 @node Tuning objects 
 @subsection Tuning objects 
 
@@ -4786,11 +6712,11 @@ object, and set a object property in that object.
 
 The definition of an object is actually a list of default object
 properties. For example, the definition of the Stem object (available
-in @file{scm/grob-description.scm}), includes the following definitions for
+in @file{scm/define-grobs.scm}), includes the following definitions for
 @internalsref{Stem}
 
 @example
-        (thickness . 0.8)
+        (thickness . 1.3)
         (beamed-lengths . (0.0 2.5 2.0 1.5))
         (Y-extent-callback . ,Stem::height)
         @var{...}
@@ -4798,7 +6724,7 @@ in @file{scm/grob-description.scm}), includes the following definitions for
 
 
 By adding variables on top of these existing definitions, the system
-defaults is overriden, and the appearance of a graphical objects is
+default is overridden, and the appearance of a layout objects is
 altered.
 
 @syntax
@@ -4808,11 +6734,11 @@ Changing a variable for only   one object is commonly achieved with
 @code{\once}:
 
 @example
-\once \property @var{context}.@var{grobname}
+\once \property @var{context}.@var{objectname}
   \override @var{symbol} = @var{value}
 @end example
 Here @var{symbol} is a Scheme expression of symbol type, @var{context}
-and @var{grobname} is a string and @var{value} is a Scheme expression.
+and @var{objectname} is a string and @var{value} is a Scheme expression.
 This command applies a setting only during one moment in the score.
 
 In the following example, only one @internalsref{Stem} object is
@@ -4829,16 +6755,16 @@ changed from its original setting:
 For changing more objects, the same command, without @code{\once} can
 be used.
 @example
-\property @var{context}.@var{grobname} \override @var{symbol} = @var{value}
+\property @var{context}.@var{objectname} \override @var{symbol} = @var{value}
 @end example
 This command adds @code{@var{symbol} = @var{value}} to the definition
-of @var{grobname} in the context @var{context}, and this definition
+of @var{objectname} in the context @var{context}, and this definition
 stays in place until it is removed.
 
 An existing definition may be removed by the following command
 @c
 @example
-\property @var{context}.@var{grobname} \revert @var{symbol}
+\property @var{context}.@var{objectname} \revert @var{symbol}
 @end example
 @c
 All @code{\override} and @code{\revert} commands should be balanced.
@@ -4846,7 +6772,7 @@ The @code{\set} shorthand, performs a revert followed by an override,
 and is often more convenient to use
 
 @example
-\property @var{context}.@var{grobname} \set @var{symbol} = @var{value}
+\property @var{context}.@var{objectname} \set @var{symbol} = @var{value}
 @end example
 
 Some examples: 
@@ -4858,20 +6784,20 @@ c'4
 @end lilypond
 
 The following example gives exactly the same result as the previous
-one (assuming the system default for stem thickness is 0.8).
+one (assuming the system default for stem thickness is 1.3).
 @c
 @lilypond[verbatim,quote]
   c'4 \property Voice.Stem \set #'thickness = #4.0
   c'4
-  c'4 \property Voice.Stem \set #'thickness = #0.8
+  c'4 \property Voice.Stem \set #'thickness = #1.3
   c'4
 @end lilypond
 
-If you revert a setting which was not set in the first place, then it
-has no effect. However, if the setting was set as a system default, it
-may remove the default value, and this may give surprising results,
+Reverting a setting which was not set in the first place has no
+effect. However, if the setting was set as a system default, this may
+remove the default value, and this may give surprising results,
 including crashes.  In other words, @code{\override} and
-@code{\revert}, must be carefully balanced.
+@code{\revert} must be carefully balanced.
 
 These are examples of correct nesting of @code{\override}, @code{\set},
 @code{\revert}. 
@@ -4914,15 +6840,169 @@ work, and may cause crashes or other anomalous behavior.
 
 @internalsref{OverrideProperty}, @internalsref{RevertProperty},
 @internalsref{PropertySet}, @internalsref{backend properties},
-@internalsref{All Graphical Objects}.
+@internalsref{All layout objects}.
 
 
 @refbugs
 
-LilyPond will hang or crash if @var{value} contains cyclic references.
-The backend is not very strict in type-checking object properties. If you
-@code{\revert} properties that are expected to be set by default,
-LilyPond may crash.
+The backend is not very strict in type-checking object properties.
+Cyclic references in @var{value} cause hangs and/or crashes.
+Similarly, reverting properties that are system defaults may also lead
+to crashes.
+
+@node Constructing a tweak
+@subsection Constructing a tweak
+
+
+@cindex internal documentation
+@cindex finding graphical objects
+@cindex graphical object descriptions 
+@cindex tweaking
+@cindex @code{\override}
+@cindex @code{\set}
+@cindex internal documentation
+
+
+
+Using @code{\override} and @code{\set}, requires three pieces of
+information: the name of the layout object, the context and the name
+of the property.  We demonstrate how to glean this information from
+the notation manual and the generated documentation.
+
+The generated documentation is a set of HTML pages which should be
+included if you installed a binary distribution, typically in
+@file{/usr/share/doc/lilypond}.  They are also available on the web:
+go to the @uref{LilyPond website,http://lilypond.org}, click
+``Documentation: Index'' on the side bar, look in the ``Information
+for users'' section, and click on ``Documentation of internals.''  It
+is advisable to bookmark either the local HTML files if possilbe. They
+will load faster than the ones on the web.  If you use the version
+from the web, you must check whether the documentation matches the
+program version: the documentation is generated from the definitions
+that the program uses, and therefore it is strongly tied to the
+LilyPond version.
+
+
+@c  [TODO: revise for new site.]
+
+Suppose we want to move the fingering indication in the fragment below
+
+@lilypond[relative=2]
+c-2
+\stemUp
+f
+@end lilypond
+
+If you visit the documentation of @code{Fingering} (in @ref{Fingering
+instructions}), you will notice that it says
+
+@quotation
+@seealso
+
+@internalsref{FingerEvent} and @internalsref{Fingering}.
+@end quotation
+
+This implies that the fingerings, once entered, are internally stored
+as @code{FingerEvent} music objects. When printed, a @code{Fingering}
+layout object is created for every @code{FingerEvent}.
+
+@ifhtml
+When we follow the link of @internalsref{Fingering},
+@end ifhtml
+@ifnothtml
+When we look up @internalsref{Fingering} in the generated
+documentation,
+@end ifnothtml
+we see a list of interfaces. The Fingering object has a number of
+different functions, and each of those is captured in an interface.
+
+The @code{Fingering} object has a fixed size
+(@internalsref{item-interface}), the symbol is a piece of text
+(@internalsref{text-interface}), whose font can be set
+(@internalsref{font-interface}).  It is centered horizontally
+(@internalsref{self-alignment-interface}), it is placed next to other
+objects (@internalsref{side-position-interface}) vertically, and its
+placement is coordinated with other scripts
+(@internalsref{text-script-interface}).  It also has the standard
+@internalsref{grob-interface} (grob stands for Graphical object)
+@cindex grob
+@cindex graphical object
+@cindex layout object
+@cindex object, layout 
+with all the variables that come with
+it.  Finally, it denotes a fingering instruction, so it has
+@internalsref{finger-interface}.
+
+For the vertical placement, we have to look under
+@code{side-position-interface}.
+@quotation
+ side-position-interface
+
+  Position a victim object (this one) next to other objects (the
+  support).  In this case, the direction signifies where to put the
+  victim object relative to the support (left or right, up or down?)
+@end quotation
+below this description, the variable @code{padding} is described as
+@quotation
+@table @code
+@item padding
+ (dimension, in staff space)
+
+   add this much extra space between objects that are next to each
+other. Default value: @code{0.6}
+@end table
+@end quotation
+
+By increasing the value of @code{padding}, we can move away the
+fingering.  The following command inserts 3 staff spaces of white
+between the note and the fingering
+@example
+\once \property Voice.Fingering \set #'padding = #3
+@end example
+
+Before the object is created, we get
+@lilypond[relative=2,fragment]
+\once \property Voice.Fingering
+  \set #'padding = #3
+c-2
+\stemUp
+f
+@end lilypond
+
+The context name @code{Voice} in the example above can be determined
+as follows. In the documentation for @internalsref{Fingering}, it says
+@quotation
+Fingering grobs are created by: @internalsref{Fingering_engraver}
+@end quotation
+
+Clicking @code{Fingering_engraver} shows the documentation of
+the module responsible for interpreting the fingering instructions and
+translating them to a @code{Fingering} object.  Such a module is called
+an @emph{engraver}.  The documentation of the @code{Fingering_engraver}
+says
+@example
+Fingering_engraver is part of contexts: Voice and TabVoice
+@end example
+so tuning the settings for Fingering should be done using either
+@example
+  \property Voice.Fingering \set @dots{}
+@end example
+or
+@example
+  \property TabVoice.Fingering \set @dots{}
+@end example
+
+Since the @code{TabVoice} is only used for tab notation, we see that
+the first guess @code{Voice} was indeed correct.
+
+Of course, the tweak may also done in a larger context than
+@code{Voice}, for example, @internalsref{Staff} or
+@internalsref{Score}.
+
+The internals document also contains alphabetical lists of
+@internalsref{All contexts}, @internalsref{All layout objects} and
+@internalsref{All music types}, so you can also find which objects to
+tweak by browsing the internals document.
 
 
 @node Applyoutput
@@ -4935,17 +7015,17 @@ syntax is
 @end example
 where @var{proc} is a Scheme function, taking four arguments.
 
-When interpreted, the function @var{proc} is called for every grob found
+When interpreted, the function @var{proc} is called for every layout object found
 in the context, with the following arguments:
 @itemize @bullet
-@item the grob itself
-@item the context where the grob was created
+@item the layout object itself
+@item the context where the layout object was created
 @item the context where @code{\applyoutput} is processed.
 @end itemize
 
-In addition, the cause of the grob, i.e.  the music expression or object
-that was responsible for creating the object, is in the object property
-@code{cause}.  For example, for a note head, this is a
+In addition, the cause of the layout object, i.e.  the music
+expression or object that was responsible for creating it, is in the
+object property @code{cause}.  For example, for a note head, this is a
 @internalsref{NoteHead} event, and for a @internalsref{Stem} object,
 this is a @internalsref{NoteHead} object.
 
@@ -5026,9 +7106,8 @@ All three mechanisms work for every object that supports
 @item font-family
  A symbol indicating the general class of the typeface.  Supported are
 @code{roman} (Computer Modern), @code{braces} (for piano staff
-braces), @code{music} (the standard music font), @code{ancient} (the
-ancient notation font) @code{dynamic} (font for dynamic signs) and
-@code{typewriter}. 
+braces), @code{music} (the standard music font, including ancient
+glyphs), @code{dynamic} (for dynamic signs) and @code{typewriter}.
   
 @item font-shape
   A symbol indicating the shape of the font, there are typically several
@@ -5046,8 +7125,8 @@ and @code{bold}.
   height, and relative size +1 corresponds to 23 pt staff height.
 
    There are small differences in design between fonts designed for
-different sizes, hence font-relative-size is the preferred way to
-change a font size.
+different sizes, hence @code{font-relative-size} is preferred over
+@code{font-magnification} for changing font sizes.
 
 
 @item font-design-size
@@ -5069,7 +7148,13 @@ to override default setting, which are always present. For example:
 
 @cindex @code{font-style}
 
+@refcommands
 
+The following commands set @code{fontSize} for the current voice.
+
+@refcommand tiny  
+@refcommand small  
+@refcommand normalsize
 
 @refbugs
 
@@ -5204,6 +7289,12 @@ See @ref{The Feta font} for  a complete listing of the possible glyphs.
 This produces a single character, e.g. @code{\char #65} produces the 
 letter 'A'.
 
+@item \note
+@cindex \note @var{log} @var{dots} @var{dir}
+
+This produces a note with a stem pointing in @var{dir} direction, with
+duration log @var{log} and @var{dots} augmentation dots.
+
 @item \hspace #@var{amount}
 @cindex \hspace
 This produces a invisible object taking horizontal space.
@@ -5244,7 +7335,7 @@ A \magnify #1.1 @{ A @} A
 This overrides a  formatting property for its argument. The argument
 should be a key/value pair, e.g.
 @example
-m \override #'(font-family . math) m m
+  m \override #'(font-family . math) m m
 @end example
 @end table
 
@@ -5261,30 +7352,11 @@ their center lines.
  c1^\markup { \line << a b c >> }
 @end lilypond
 
-The markup mechanism is very flexible and extensible.  Refer to
+The markup mechanism is extensible.  Refer to
 @file{scm/new-markup.scm} for more information on extending the markup
 mode.
 
-@cindex metronome mark
-
-One practical application of complicated markup is to fake a metronome
-marking:
 
-@lilypond[verbatim]
-eighthStem = \markup \combine
-       \musicglyph #"flags-stem"
-       \translate #'(0.0 . 3.5) \musicglyph #"flags-u3"
-eighthNote = \markup
-       \override #'(word-space . 0.0)
-       { \musicglyph #"noteheads-2"
-         \translate #'(-0.05 . 0.1) \eighthStem }
-
-\score {
-  \notes\relative c'' {
-    a1^\markup { \magnify #0.9 \eighthNote " = 64" }
-  }
-}
-@end lilypond
 
 @seealso
 
@@ -5309,16 +7381,16 @@ The global layout determined by three factors: the page layout, the
 line breaks and the spacing. These all influence each other. The
 choice of spacing determines how densely each system of music is set,
 which influences where line breaks breaks are chosen, and thus
-ultimately how many pages a piece of music takes. In this section we
-will explain how the lilypond spacing engine works, and how you can
-tune its results.
+ultimately how many pages a piece of music takes. In this section, the
+algorithm for spacing music is explained, and how spacing can be
+tuned.
 
 Globally spoken, this procedure happens in three steps: first,
 flexible distances (``springs'') are chosen, based on durations. All
 possible line breaking combination are tried, and the one with the
 best results---a layout that has uniform density and requires as
 little stretching or cramping as possible---is chosen. When the score
-is processed by @TeX{}, page are filled with systems, and page breaks
+is processed by @TeX{}, each page is filled with systems, and page breaks
 are chosen whenever the page gets full.
 
 
@@ -5364,11 +7436,11 @@ staff can be made larger at the bottom by setting it to @code{(-6
 
 The piano staves are handled a little differently: to make cross-staff
 beaming work correctly, it necessary that the distance between staves
-is fixed.  This is also done with a @internalsref{VerticalAlignment}
-object, created in @internalsref{PianoStaff}. In this object the
-distance between the staves is fixed by setting
-@code{forced-distance}. If you want to override this, use a
-@code{\translator} block as follows:
+is fixed beforehand.  This is also done with a
+@internalsref{VerticalAlignment} object, created in
+@internalsref{PianoStaff}. In this object the distance between the
+staves is fixed by setting @code{forced-distance}. If you want to
+override this, use a @code{\translator} block as follows:
 @example
   \translator @{
     \PianoStaffContext
@@ -5398,7 +7470,7 @@ duration adds a fixed amount (this amount is controlled by
 @code{spacing-increment}) of space to the note.
 
 For example, the following piece contains lots of half, quarter and
-8th notes, the eighth note is followed by 1 note head width (NHW). The
+8th notes, the eighth note is followed by 1 note head width (NHW). 
 The quarter note is followed by 2 NHW, the half by 3 NHW, etc.
 @lilypond[fragment, verbatim, relative=1] c2 c4. c8 c4. c8 c4. c8 c8
 c8 c4 c4 c4
@@ -5423,7 +7495,7 @@ only a few 16th notes to the example above, they would be followed by
 half a NHW:
 
 @lilypond[fragment, verbatim, relative=2]
- c2 c4. c8 c4. [c16 c] c4. c8 c8 c8 c4 c4 c4
+ c2 c4. c8 c4. c16-[ c-] c4. c8 c8 c8 c4 c4 c4
 @end lilypond
 
 The most common shortest duration is determined as follows: in every
@@ -5447,7 +7519,7 @@ spacing. This is controlled with @code{stem-spacing-correction}
 property in @internalsref{NoteSpacing}, which are generated for every
 @internalsref{Voice} context. The @code{StaffSpacing} object
 (generated at @internalsref{Staff} context) contains the same property
-for controlling the stem/barline spacing. In the following example
+for controlling the stem/barline spacing. The following example
 shows these corrections, once with default settings, and once with
 exaggerated corrections.
 
@@ -5467,7 +7539,7 @@ exaggerated corrections.
 
 @cindex SpacingSpanner, overriding properties
 
-Properties of the  @internalsref{SpacingSpanner} must be overriden
+Properties of the  @internalsref{SpacingSpanner} must be overridden
 from the @code{\paper} block, since the @internalsref{SpacingSpanner}
 is created before any @code{\property} statements are interpreted.
 @example
@@ -5502,14 +7574,14 @@ There is no convenient mechanism to manually override spacing.
 @cindex @code{paper} file
 
 The Feta font provides musical symbols at seven different sizes.
-These fonts are 11 point, 13 point, 16 point, 19 pt, 20 point, 23
-point, and 26 point.  The point size of a font is the height of the
-five lines in a staff when displayed in the font.
+These fonts are 11 point, 13 point, 16 point, 20 point, 23 point, and
+26 point.  The point size of a font is the height of the corresponding
+staff (excluding line thicknesses).
 
 Definitions for these sizes are the files @file{paperSZ.ly}, where
-@code{SZ} is one of 11, 13, 16, 19, 20, 23 and 26.  If you include any
+@code{SZ} is one of 11, 13, 16, 20, 23 and 26.  If you include any
 of these files, the variables @code{paperEleven},
-@code{paperThirteen}, @code{paperSixteen}, @code{paperNineteen},
+@code{paperThirteen}, @code{paperSixteen}, 
 @code{paperTwenty}, @code{paperTwentythree}, and @code{paperTwentysix}
 are defined respectively.  The default @code{\paper} block is also
 set. These files should be imported at toplevel, i.e.
@@ -5581,15 +7653,16 @@ spacing is.
 @cindex page layout
 @cindex vertical spacing
 
-The page layout process happens outside lilypond: variables
-controlling page layout are passed to the output, and are further
-interpreted by @code{ly2dvi}. @code{ly2dvi} responds to the following
-variables in the @code{\paper} block.  The variable @code{textheight}
-sets the total height of the music on each page.  The spacing between
-systems is controlled with @code{interscoreline}, its default is 16pt.
-The distance between the score lines will stretch in order to fill the
-full page @code{interscorelinefill} is set to a positive number.  In
-that case @code{interscoreline} specifies the minimum spacing.
+The page layout process happens outside the LilyPond formatting
+engine: variables controlling page layout are passed to the output,
+and are further interpreted by @code{ly2dvi}. @code{ly2dvi} responds
+to the following variables in the @code{\paper} block.  The variable
+@code{textheight} sets the total height of the music on each page.
+The spacing between systems is controlled with @code{interscoreline},
+its default is 16pt.  The distance between the score lines will
+stretch in order to fill the full page @code{interscorelinefill} is
+set to a positive number.  In that case @code{interscoreline}
+specifies the minimum spacing.
 
 @cindex @code{textheight}
 @cindex @code{interscoreline}
@@ -5611,6 +7684,7 @@ the @file{.tex} output to instruct @TeX{} where to break pages.  This
 is done by setting the @code{between-systems-strings} on the
 @internalsref{NonMusicalPaperColumn} where the system is broken.
 An example is shown in @inputfileref{input/regression,between-systems.ly}.
+The predefined command @code{\newpage} also does this.
 
 @cindex paper size
 @cindex page size
@@ -5632,6 +7706,11 @@ will set the paper variables @code{hsize} and @code{vsize} (used by
 Lilypond and @code{ly2dvi})
 
 
+@refcommands
+
+@refcommand newpage 
+
+
 @seealso
 
 @ref{Invoking ly2dvi},
@@ -5653,25 +7732,21 @@ choose sensible page breaks in multi-page pieces.
 Entered music can also be converted to MIDI output.  The performance
 is good enough for proof-hearing the music for errors.
 
-
 Ties, dynamics and tempo changes are interpreted.  Dynamic marks,
 crescendi and decrescendi translate into MIDI volume levels.  Dynamic
 marks translate to a fixed fraction of the available MIDI volume
-range, crescendi and decrescendi make the the volume vary linearly
-between their two extremities.  The fractions be adjusted by
+range, crescendi and decrescendi make the volume vary linearly between
+their two extremities.  The fractions be adjusted by
 @code{dynamicAbsoluteVolumeFunction} in @internalsref{Voice} context.
-
-For each type of musical instrument (that MIDI supports), a volume range
-can be defined.  This gives you basic equalizer control, which can
-enhance the quality of the MIDI output remarkably.  The equalizer
-can be controlled by setting @code{instrumentEqualizer}.
-
-Both loudness controls are combined to produce the final  MIDI volume. 
+For each type of MIDI instrument, a volume range can be defined.  This
+gives you basic equalizer control, which can enhance the quality of
+the MIDI output remarkably.  The equalizer can be controlled by
+setting @code{instrumentEqualizer}.
 
 @refbugs
 
 Many musically interesting effects, such as swing, articulation,
-slurring, etc., are translated to MIDI.
+slurring, etc., are not translated to MIDI.
 
 
 @menu
@@ -5690,8 +7765,8 @@ simpler.  The @code{\midi} block can contain:
 @cindex MIDI block
 
 @itemize @bullet
-  @item  a @code{\tempo} definition
-  @item  context definitions
+  @item a @code{\tempo} definition
+  @item context definitions
 @end itemize
 
 Assignments in the @code{\midi} block are not allowed.