]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/instrument-notation.itely
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / Documentation / user / instrument-notation.itely
index 0e2f2af152b1b23ee23066c524c72b85d0d982fd..30f112dcc4c8fbfe6b6677f7fa28922e1dd6fc21 100644 (file)
@@ -1,7 +1,7 @@
-@c -*- coding: latin-1; mode: texinfo; -*-
+@c -*- coding: utf-8; mode: texinfo; -*-
 @c This file is part of lilypond.tely
 
-@c A menu is needed before every deeper *section nesting of @node's; run 
+@c A menu is needed before every deeper *section nesting of @node's; run
 @c     M-x texinfo-all-menus-update
 @c to automatically fill in these menus before saving changes
 
@@ -15,7 +15,8 @@ This chapter explains how to use notation for specific instruments.
 * Chord names::                 
 * Vocal music::                 
 * Rhythmic music::              
-* Tablatures::                  
+* Guitar::                      
+* Bagpipe::                     
 * Ancient notation::            
 * Other instrument specific notation::  
 @end menu
@@ -28,13 +29,10 @@ This chapter explains how to use notation for specific instruments.
 Piano staves are two normal staves coupled with a brace.  The staves
 are largely independent, but sometimes voices can cross between the
 two staves.  The same notation is also used for harps and other key
-@c Is this `harp' or `harpsichord'?
-@c    both.  -gp
 instruments.  The @internalsref{PianoStaff} is especially built to
 handle this cross-staffing behavior.  In this section we discuss the
 @internalsref{PianoStaff} and some other pianistic peculiarities.
 
-
 @menu
 * Automatic staff changes::     
 * Manual staff switches::       
@@ -91,8 +89,8 @@ The autochanger switches on basis of the pitch (middle C is the turning
 point), and it looks ahead skipping over rests to switch in
 advance.  Here is a practical example
 
-@lilypond[quote,verbatim,raggedright]
-\context PianoStaff
+@lilypond[quote,verbatim,ragged-right]
+\new PianoStaff
   \autochange \relative c'
   {
     g4 a b c d r4 a g
@@ -116,12 +114,6 @@ quality output, staff switches should be specified manually.
 
 @code{\autochange} cannot be inside @code{\times}.
 
-Internally, the @code{\partcombine} interprets both arguments as
-@code{Voice}s named @code{one} and @code{two}, and then decides when
-the parts can be combined.  Consequently, if the arguments switch to
-differently named @internalsref{Voice} contexts, the events in those
-will be ignored.
-
 
 @node Manual staff switches
 @subsection Manual staff switches
@@ -143,10 +135,10 @@ usually the setup for a score will start with a setup of the staves,
 
 @example
 <<
-  \context Staff = up @{
+  \new Staff = "up" @{
     \skip 1 * 10  % @emph{keep staff alive}
     @}
-  \context Staff = down @{
+  \new Staff = "down" @{
     \skip 1 * 10  % @emph{idem}
     @}
 >>
@@ -156,7 +148,7 @@ usually the setup for a score will start with a setup of the staves,
 and the @context{Voice} is inserted afterwards
 
 @example
-\context Staff = down
+\new Staff = down
   \new Voice @{ @dots{} \change Staff = up @dots{} @}
 @end example
 
@@ -174,7 +166,7 @@ Piano pedal instruction can be expressed by attaching
 @code{\treCorde}, @code{\sostenutoDown} and @code{\sostenutoUp} to a
 note or chord
 
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 c'4\sustainDown c'4\sustainUp
 @end lilypond
 
@@ -187,7 +179,7 @@ information.
 Pedals can also be indicated by a sequence of brackets, by setting the
 @code{pedalSustainStyle} property to bracket objects
 
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
 \set Staff.pedalSustainStyle = #'bracket
 c\sustainDown d e
 b\sustainUp\sustainDown
@@ -198,7 +190,7 @@ A third style of pedal notation is a mixture of text and brackets,
 obtained by setting the @code{pedalSustainStyle} property to
 @code{mixed}
 
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
 \set Staff.pedalSustainStyle = #'mixed
 c\sustainDown d e
 b\sustainUp\sustainDown
@@ -209,7 +201,7 @@ The default `*Ped.' style for sustain and damper pedals corresponds to
 style @code{#'text}.  The sostenuto pedal uses @code{mixed} style by
 default.
 
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
 c\sostenutoDown d e c, f g a\sostenutoUp
 @end lilypond
 
@@ -220,11 +212,15 @@ For fine-tuning the appearance of a pedal bracket, the properties
 modified.  For example, the bracket may be extended to the right edge
 of the note head
 
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
 \override Staff.PianoPedalBracket #'shorten-pair = #'(0 . -1.0)
 c\sostenutoDown d e c, f g a\sostenutoUp
 @end lilypond
 
+@seealso
+
+In this manual: @ref{Laissez vibrer ties}
+
 @node Staff switch lines
 @subsection Staff switch lines
 
@@ -233,21 +229,21 @@ c\sostenutoDown d e c, f g a\sostenutoUp
 @cindex staff switching
 @cindex cross staff
 
-@cindex @code{followVoice}
+@findex followVoice
 
 Whenever a voice switches to another staff, a line connecting the notes
 can be printed automatically.  This is switched on by setting
 @code{followVoice} to true
 
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
 \new PianoStaff <<
-  \context Staff=one {
+  \new Staff="one" {
     \set followVoice = ##t
     c1
     \change Staff=two
     b2 a
   }
-  \context Staff=two { \clef bass \skip 1*2 }
+  \new Staff="two" { \clef bass \skip 1*2 }
 >>
 @end lilypond
 
@@ -257,9 +253,9 @@ Program reference: @internalsref{VoiceFollower}.
 
 @refcommands
 
-@cindex @code{\showStaffSwitch}
+@findex \showStaffSwitch
 @code{\showStaffSwitch},
-@cindex @code{\hideStaffSwitch}
+@findex \hideStaffSwitch
 @code{\hideStaffSwitch}.
 
 
@@ -270,10 +266,10 @@ Chords that cross staves may be produced by increasing the length
 of the stem in the lower staff, so it reaches the stem in the upper
 staff, or vice versa.
 
-@lilypond[raggedright,verbatim,quote]
+@lilypond[ragged-right,verbatim,quote]
 stemExtend = \once \override Stem #'length = #22
 noFlag = \once \override Stem #'flag-style = #'no-flag
-\context PianoStaff <<
+\new PianoStaff <<
   \new Staff {
     \stemDown \stemExtend
     f'4
@@ -288,6 +284,7 @@ noFlag = \once \override Stem #'flag-style = #'no-flag
 @end lilypond
 
 
+
 @node Chord names
 @section Chord names
 
@@ -310,7 +307,7 @@ entered by name.  Internally, the chords are represented as a set of
 pitches, so they can be transposed
 
 
-@lilypond[quote,raggedright,verbatim,raggedright]
+@lilypond[quote,ragged-right,verbatim,ragged-right]
 twoWays = \transpose c c' {
   \chordmode {
     c1 f:sus4 bes/f
@@ -320,14 +317,21 @@ twoWays = \transpose c c' {
   <f bes d'>
 }
 
-<< \context ChordNames \twoWays
-   \context Voice \twoWays >>
+<< \new ChordNames \twoWays
+   \new Voice \twoWays >>
 @end lilypond
 
 This example also shows that the chord printing routines do not try to
 be intelligent.  The last chord (@code{f bes d}) is not interpreted as
 an inversion.
 
+Note that the duration of chords must be specified outside the
+@code{<>}.
+
+@example
+<c e g>2
+@end example
+
 
 @node Chords mode
 @subsection Chords mode
@@ -337,7 +341,7 @@ In chord mode sets of pitches (chords) are entered with normal note
 names.  A chord is entered by the root, which is entered like a
 normal pitch
 
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 \chordmode { es4. d8 c2 }
 @end lilypond
 
@@ -409,33 +413,33 @@ Modifiers can be mixed with additions
 @end lilypond
 
 @cindex modifiers, in chords.
-@cindex @code{aug}
-@cindex @code{dim}
-@cindex @code{maj}
-@cindex @code{sus}
-@cindex @code{m}
+@findex aug
+@findex dim
+@findex maj
+@findex sus
+@findex m
 
 Since an unaltered 11 does not sound good when combined with an
 unaltered 3, the 11 is removed in this case (unless it is added
 explicitly)
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 \chordmode { c:13 c:13.11 c:m13 }
 @end lilypond
 
-@cindex @code{/}
+@findex /
 
 An inversion (putting one pitch of the chord on the bottom), as well
 as bass notes, can be specified by appending
 @code{/}@var{pitch} to the chord
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 \chordmode { c1 c/g c/f }
 @end lilypond
-@cindex @code{/+}
+@findex /+
 
 A bass note can be added instead transposed out of the chord,
 by using @code{/+}@var{pitch}.
 
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 \chordmode { c1 c/+g c/+f }
 @end lilypond
 
@@ -452,7 +456,7 @@ Each step can only be present in a chord once.  The following
 simply produces the augmented chord, since @code{5+} is interpreted
 last
 @cindex clusters
-@lilypond[quote,raggedright,verbatim,fragment]
+@lilypond[quote,ragged-right,verbatim,fragment]
 \chordmode { c:5.5-.5+ }
 @end lilypond
 
@@ -468,13 +472,13 @@ 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[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
 harmonies = {
   \chordmode {a1 b c} <d' f' a'> <e' g' b'>
 }
 <<
-  \context ChordNames \harmonies
-  \context Staff \harmonies
+  \new ChordNames \harmonies
+  \new Staff \harmonies
 >>
 @end lilypond
 
@@ -483,15 +487,15 @@ You can make the chord changes stand out by setting
 display chord names when there is a change in the chords scheme and at
 the start of a new line
 
-@lilypond[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
 harmonies = \chordmode {
   c1:m c:m \break c:m c:m d
 }
 <<
-  \context ChordNames {
+  \new ChordNames {
     \set chordChanges = ##t
     \harmonies }
-  \context Staff \transpose c c' \harmonies
+  \new Staff \transpose c c' \harmonies
 >>
 @end lilypond
 
@@ -500,19 +504,20 @@ necessary.  Chords may also be printed separately.  It may be necessary
 to add @internalsref{Volta_engraver} and @internalsref{Bar_engraver}
 for showing repeats.
 
-@lilypond[raggedright,verbatim]
+@lilypond[ragged-right,verbatim]
 \new ChordNames \with {
   \override BarLine #'bar-size = #4
   voltaOnThisStaff = ##t
   \consists Bar_engraver
   \consists "Volta_engraver"
 }
-\repeat volta 2 \chordmode {
+\chordmode { \repeat volta 2 {
   f1:maj f:7 bes:7
   c:maj
 } \alternative {
   es e
 }
+}
 @end lilypond
 
 
@@ -521,7 +526,7 @@ Klaus Ignatzek (see @ref{Literature list}).  It can be tuned through the
 following properties
 
 @table @code
-@cindex @code{chordNameExceptions}
+@findex chordNameExceptions
 @item chordNameExceptions
 This is a list that contains the chords that have special formatting.
 
@@ -550,20 +555,20 @@ For an example of tuning this property, see also
 @cindex exceptions, chord names.
 
 
-@cindex @code{majorSevenSymbol}
+@findex majorSevenSymbol
 @item majorSevenSymbol
 This property contains the markup object used for the 7th step, when
 it is major.  Predefined options are @code{whiteTriangleMarkup} and
 @code{blackTriangleMarkup}.  See
 @inputfileref{input/@/regression,chord@/-name@/-major7@/.ly} for an example.
 
-@cindex @code{chordNameSeparator}
+@findex chordNameSeparator
 @item chordNameSeparator
 Different parts of a chord name are normally separated by a
 slash.  By setting @code{chordNameSeparator}, you can specify other
 separators, e.g.,
-@lilypond[quote,raggedright,fragment,verbatim]
-\context ChordNames \chordmode {
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new ChordNames \chordmode {
   c:7sus4
   \set chordNameSeparator
     = \markup { \typewriter "|" }
@@ -571,27 +576,35 @@ separators, e.g.,
 }
 @end lilypond
 
-@cindex @code{chordRootNamer}
+@findex 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.  Special note names (for example, the German ``H'' for a
 B-chord) can be produced by storing a new function in this property.
 
-@cindex @code{chordNoteNamer}
+@findex chordNoteNamer
 @item chordNoteNamer
 The default is to print single pitch, e.g., the bass note, using the
 @code{chordRootNamer}.  The @code{chordNoteNamer} property can be set
 to a specialized function to change this behavior.  For example, the
 base can be printed in lower case.
 
+@findex chordPrefixSpacer
+@item chordPrefixSpacer
+The ``m'' for minor chords is usually printed right after the root of
+the chord. By setting @code{chordPrefixSpacer}, you can fix a spacer
+between the root and ``m''. The spacer is not used when the root
+is altered.
+
 @end table
 
 The predefined variables @code{\germanChords},
-@code{\semiGermanChords} set these variables.  The effect is
+@code{\semiGermanChords}, @code{\italianChords} and @code{\frenchChords}
+set these variables.  The effect is
 demonstrated here,
 
-@lilypondfile[raggedright]{chord-names-german.ly}
+@lilypondfile[ragged-right]{chord-names-languages.ly}
 
 There are also two other chord name schemes implemented: an alternate
 Jazz chord notation, and a systematic scheme called Banter chords.  The
@@ -606,10 +619,14 @@ chart}.  Turning on these styles is described in the input file
 
 @refcommands
 
-@cindex @code{\germanChords}
+@findex \germanChords
 @code{\germanChords},
-@cindex @code{\semiGermanChords}
+@findex \semiGermanChords
 @code{\semiGermanChords}.
+@findex \italianChords
+@code{\italianChords}.
+@findex \frenchChords
+@code{\frenchChords}.
 
 
 
@@ -633,10 +650,12 @@ may result in strange chord names when chords are entered with the
 @code{< .. >} syntax.
 
 
+
 @node Vocal music
 @section Vocal music
 
-There are three different issues when printing vocal music
+Since LilyPond input files are text, there are two issues to
+consider when working with vocal music:
 
 @itemize @bullet
 @item
@@ -644,30 +663,51 @@ Song texts must be entered as text, not notes.  For example, the
 input@tie{}@code{d} should be interpreted as a one letter syllable, not the
 note@tie{}D.
 
-@item
-Song texts must be printed as text, not as notes.
-
 @item
 Song texts must be aligned with the notes of their melody.
 @end itemize
 
-The simplest solution for printing music uses the @code{\addlyrics}
-function to solve all these problems at once.  However, these
-three functions can be controlled separately, which is necessary
-for complex vocal music.
-
+There are a few different ways to define lyrics; the simplest
+way is to use the @code{\addlyrics} function.
 
 @menu
 * Setting simple songs::        
 * Entering lyrics::             
 * Hyphens and extenders::       
 * The Lyrics context::          
-* Flexibility in alignment::    
-* More stanzas::                
+* Melismata::                   
+* Another way of entering lyrics::  
+* Flexibility in placement::    
+* Spacing lyrics::              
+* More about stanzas::          
 * Ambitus::                     
 * Other vocal issues::          
 @end menu
 
+
+@commonprop
+
+Checking to make sure that text scripts and lyrics are within the margins is
+a relatively large computational task.  To speed up processing, lilypond does
+not perform such calculations by default; to enable it, use
+
+@example
+\override Score.PaperColumn #'keep-inside-line = ##t
+@end example
+
+To make lyrics avoid barlines as well, use
+@example
+\layout @{
+  \context @{
+    \Lyrics
+      \consists "Bar_engraver"
+      \consists "Separating_line_group_engraver"
+      \override BarLine #'transparent = ##t
+  @}
+@}
+@end example
+
+
 @node Setting simple songs
 @subsection Setting simple songs
 
@@ -680,7 +720,7 @@ The easiest way to add lyrics to a melody is to append
 @noindent
 to a melody.  Here is an example,
 
-@lilypond[raggedright,verbatim,fragment,quote]
+@lilypond[ragged-right,verbatim,fragment,quote]
 \time 3/4
 \relative { c2 e4 g2. }
 \addlyrics { play the game }
@@ -689,7 +729,7 @@ to a melody.  Here is an example,
 More stanzas can be added by adding more
 @code{\addlyrics} sections
 
-@lilypond[raggedright,verbatim,fragment,quote]
+@lilypond[ragged-right,verbatim,fragment,quote]
 \time 3/4
 \relative { c2 e4 g2. }
 \addlyrics { play the game }
@@ -697,45 +737,21 @@ More stanzas can be added by adding more
 \addlyrics { joue le jeu }
 @end lilypond
 
-@c TODO - this isn't such a great place for this note, but I can't
-@c  find a better place without rearranging a lot of lyric stuff.
-@c  It's yet another thing to look at post-3.0.
-
-The @code{\addlyrics} command is actually just a convienient way
-to write a more complicated LilyPond structure that sets up the
-lyrics.  You should use @code{\addlyrics} unless you need to do
-fancy things, in which case you should investigate
-@code{\lyricsto} or @code{\lyricmode}.
-
-@example
-@{ MUSIC @}
-\addlyrics @{ LYRICS @}
-@end example
-
-@noindent
-is the same as
-
-@example
-\context Voice = blah @{ music @}
-\lyricsto "blah" \new lyrics @{ LYRICS @}
-@end example
-
-@refbugs
+The command @code{\addlyrics} cannot handle polyphony settings.  For these
+cases you should use @code{\lyricsto} and @code{\lyricmode}.
 
-@code{\addlyrics} cannot handle polyphony.
 
 
 @node Entering lyrics
 @subsection Entering lyrics
 
-
 @cindex lyrics
-@cindex @code{\lyricmode}
+@findex \lyricmode
 @cindex punctuation
 
 Lyrics are entered in a special input mode.  This mode is introduced
-by the keyword @code{\lyricmode}, or by using @code{addlyrics} or
-@code{lyricsto}.  In this mode you can enter lyrics,
+by the keyword @code{\lyricmode}, or by using @code{\addlyrics} or
+@code{\lyricsto}.  In this mode you can enter lyrics,
 with punctuation and accents, and the input @code{d} is not parsed as
 a pitch, but rather as a one letter syllable.  Syllables are entered
 like notes, but with pitches replaced by text.  For example,
@@ -743,18 +759,26 @@ like notes, but with pitches replaced by text.  For example,
 \lyricmode @{ Twin-4 kle4 twin- kle litt- le star2 @}
 @end example
 
+There are two main methods to specify the horizontal placement
+of the syllables, either by specifying the duration of each syllable
+explicitly, like in the example above, or by automatically aligning
+the lyrics to a melody or other voice of music, using @code{\addlyrics}
+or @code{\lyricsto}.  For more details see @ref{The Lyrics context}.
 
-A word lyrics mode begins with an alphabetic character, and ends with
+A word or syllable of lyrics begins with an alphabetic character, and ends
+with
 any space or digit.  The following characters can be any character
 that is not a digit or white space.  One important consequence of this
 is that a word can end with @code{@}}.  The following example is
-usually a mistake in the input file.  The syllable includes a @code{@}}, so the
+usually a mistake in the input file.  The syllable includes a @code{@}}, so
+the
 opening brace is not balanced
 @example
 \lyricmode @{ twinkle@}
 @end example
 
-@cindex @code{\property}, in @code{\lyricmode}
+@findex \property in \lyricmode
+
 @noindent
 Similarly, a period which follows an alphabetic sequence is included in
 the resulting string.  As a consequence, spaces must be inserted around
@@ -763,26 +787,37 @@ property commands
 \override Score . LyricText #'font-shape = #'italic
 @end example
 
-@cindex @code{_}
+@findex _
 @cindex spaces, in lyrics
 @cindex quotes, in lyrics
 
-Any @code{_} character that 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.  The
-following example incorporates double quotes
+In order to assign more than one syllable to a single note, you must
+surround them with quotes or use a @code{_} character between the syllables.
 
-@example
-\lyricmode @{ He said: "\"Let" my peo ple "go\"" @}
-@end example
+@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
+\time 3/4
+\relative { c2 e4 g2 e4 }
+\addlyrics { gran- de_a- mi- go }
+\addlyrics { pu- "ro y ho-" nes- to }
+@end lilypond
 
-This example is slightly academic, since it gives better looking
-results using single quotes, @code{``} and @code{''}
-@example
-\lyricmode @{ He said: ``Let my peo ple go'' @}
-@end example
+To enter lyrics with characters from non-English languages, or with
+non-ascii characters (such as the heart symbol or slanted quotes),
+simply insert the characters directly into the input file and save
+it with utf-8 encoding.  See @ref{Text encoding} for more info.
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\relative { e4 f e d e f e2 }
+\addlyrics { He said: “Let my peo ple go”. }
+@end lilypond
 
+To use normal quotes in lyrics, add a backslash before the
+quotes.  For example,
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. }
+\addlyrics { "\"I" am so lone- "ly\"" said she }
+@end lilypond
 
 The full definition of a word start in Lyrics mode is somewhat more
 complex.
@@ -794,23 +829,36 @@ 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{^}.
 
+To define indentifiers containing lyrics, the function @code{lyricmode}
+must be used.
+
+@example
+verseOne = \lyricmode @{ Joy to the world the Lord is come @}
+\score @{
+  <<
+    \new Voice = "one" \relative c'' @{
+      \autoBeamOff
+      \time 2/4
+      c4 b8. a16 g4. f8 e4 d c2
+    @}
+    \addlyrics @{ \verseOne @}
+  >>
+@}
+@end example
 
 
 @seealso
 
-Program reference: events @internalsref{LyricEvent}, and
-@internalsref{LyricText}.
+Program reference: @internalsref{LyricText}, @internalsref{LyricSpace}.
 
-@refbugs
 
-The definition of lyrics mode is too complex.
 
 @node Hyphens and extenders
 @subsection Hyphens and extenders
 
 @cindex hyphens
 
-Centered hyphens are entered as `@code{-}@code{-}' between syllables.
+Centered hyphens are entered as `@code{--}' between syllables.
 The hyphen will have variable length depending on the space between
 the syllables and it will be centered between the syllables.
 
@@ -820,72 +868,31 @@ the syllables and it will be centered between the syllables.
 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{__}.
-
-@ignore
-FIXME: check that this compiles and displays correctly.  I don't want
-to commit this part blindly.
-
-In tighly engraved music, hyphens can be removed.  In some languages
-(e.g. German and Hungarian), hyphens should not disappear, since
-spelling depends on hyphenation.  For that purpose, hyphens can be
-forced to remain by overriding @code{minimum-length} of
-the @code{LyricHyphen} grob.
-
-(code from 2.2)
-\score {
-<<    \notes \new Staff \relative c'' { \time 1/4 c16[ c c  c]
-\time 1/4
-c16[ c c c]
-\time 1/4
-c16[ c c c]
-
-}
-    \lyrics \new Lyrics \with {
-       % Otherwise lyrics are so far apart that hyphens don't disappear
-       \override SeparationItem #'padding = #0.0
-       }{ bla -- bla -- bla -- bla --
-          bla -- bla -- bla -- bla --
-
-          \override LyricHyphen  #'minimum-length = #0.7
-          \override LyricHyphen  #'spacing-procedure =
-                  #Hyphen_spanner::set_spacing_rods
-
-          bla -- bla -- bla -- bla 
-       }>>
-    \paper   {
-       indent = 0.0 \cm
-       linewidth = 3.4 \cm
-
-       \context {
-           \StaffContext \remove "Time_signature_engraver"
-       }
-       
-    }
-      
-}
-@end ignore
+`@code{__}'.
 
+In tighly engraved music, hyphens can be removed.  Whether this
+happens can be controlled with the @code{minimum-distance} (minimum
+distance between two syllables) and the @code{minimum-length}
+(threshold below which hyphens are removed).
 
 @seealso
 
-Program reference: @internalsref{HyphenEvent},
-@internalsref{ExtenderEvent}, @internalsref{LyricHyphen}, and
-@internalsref{LyricExtender}
+Program reference: @internalsref{LyricHyphen}, @internalsref{LyricExtender}.
 
 
 
 @node The Lyrics context
 @subsection The Lyrics context
 
+Lyrics are printed by interpreting them in the context caleld
+@internalsref{Lyrics}.
 
-Lyrics are printed by interpreting them in a @internalsref{Lyrics} context
 @example
-\context Lyrics \lyricmode @dots{}
+\new Lyrics \lyricmode @dots{}
 @end example
 
 @cindex automatic syllable durations
-@cindex @code{\lyricsto}
+@findex \lyricsto
 @cindex lyrics and melodies
 
 This will place the lyrics according to the durations that were
@@ -893,30 +900,68 @@ 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{\lyricsto} expression
+
 @example
-\lyricsto @var{name} \new Lyrics @dots{}
+\new Lyrics \lyricsto @var{name} @dots{}
 @end example
 
 This aligns the lyrics to the
-notes of the @internalsref{Voice} context called @var{name}, which has
-to exist.  Therefore, normally the @code{Voice} is specified first, and
+notes of the @internalsref{Voice} context called @var{name}, which must
+already exist.  Therefore normally the @code{Voice} is specified first, and
 then the lyrics are specified with @code{\lyricsto}.  The command
 @code{\lyricsto} switches to @code{\lyricmode} mode automatically, so the
 @code{\lyricmode} keyword may be omitted.
 
+The following example uses different commands for entering lyrics.
+
+@lilypond[quote,fragment,ragged-right,verbatim]
+<<
+  \new Voice = "one" \relative c'' {
+    \autoBeamOff
+    \time 2/4
+    c4 b8. a16 g4. f8 e4 d c2
+  }
+  \new Lyrics \lyricmode { Joy4 to8. the16 world!4. the8 Lord4 is come.2 }
+  \new Lyrics \lyricmode { Joy to the earth! the Sa -- viour reigns. }
+  \new Lyrics \lyricsto "one" { No more let sins and sor -- rows grow. }
+>>
+@end lilypond
+
+The second stanza is not properly aligned because the durations
+were not specified.  A solution for that would be to use @code{\lyricsto}.
+
+The @code{\addlyrics} command is actually just a convenient way
+to write a more complicated LilyPond structure that sets up the
+lyrics.
+
+@example
+@{ MUSIC @}
+\addlyrics @{ LYRICS @}
+@end example
+
+@noindent
+is the same as
+
+@example
+\new Voice = "blah" @{ music @}
+\new Lyrics \lyricsto "blah" @{ LYRICS @}
+@end example
+
 For different or more complex orderings, the best way is to setup the
 hierarchy of staves and lyrics first, e.g.,
 @example
-\context ChoirStaff <<
-  \context Lyrics = sopranoLyrics @{ s1 @}
-  \context Voice = soprano @{ @emph{music} @}
-  \context Lyrics = tenorLyrics @{ s1 @}
-  \context Voice = tenor @{ @emph{music} @}
+\new ChoirStaff <<
+  \new Voice = "soprano" @{ @emph{music} @}
+  \new Lyrics = "sopranoLyrics" @{ s1 @}
+  \new Lyrics = "tenorLyrics" @{ s1 @}
+  \new Voice = "tenor" @{ @emph{music} @}
 >>
 @end example
+
 and then combine the appropriate melodies and lyric lines
+
 @example
-\lyricsto "soprano" \context Lyrics = sopranoLyrics
+\context Lyrics = sopranoLyrics \lyricsto "soprano"
   @emph{the lyrics}
 @end example
 
@@ -924,13 +969,21 @@ and then combine the appropriate melodies and lyric lines
 The final input would resemble
 
 @example
-<<\context ChoirStaff << @emph{setup the music} >>
+<<\new ChoirStaff << @emph{setup the music} >>
   \lyricsto "soprano" @emph{etc}
   \lyricsto "alto" @emph{etc}
   @emph{etc}
 >>
 @end example
 
+@seealso
+
+Program reference: @internalsref{LyricCombineMusic},
+@internalsref{Lyrics}.
+
+
+@node Melismata
+@subsection Melismata
 
 The @code{\lyricsto} command detects melismata: it only puts one
 syllable under a tied or slurred group of notes.  If you want to force
@@ -938,9 +991,9 @@ an unslurred group of notes to be a melisma, insert @code{\melisma}
 after the first note of the group, and @code{\melismaEnd} after the
 last one, e.g.,
 
-@lilypond[quote,relative=2,raggedright,fragment,verbatim]
+@lilypond[quote,relative=2,ragged-right,fragment,verbatim]
 <<
-  \context Voice = "lala" {
+  \new Voice = "lala" {
     \time 3/4
     f4 g8
     \melisma
@@ -948,7 +1001,7 @@ last one, e.g.,
     \melismaEnd
     e2
   }
-  \lyricsto "lala" \new Lyrics {
+  \new Lyrics \lyricsto "lala" {
     la di __ daah
   }
 >>
@@ -958,16 +1011,34 @@ In addition, notes are considered a melisma if they are manually
 beamed, and automatic beaming (see @ref{Setting automatic beam
 behavior}) is switched off.
 
-@ignore
+@cindex SATB
+@cindex choral score
 
-@c nonformation:
+A complete example of a SATB score setup is in section
+@ref{Vocal ensembles}.
 
-The criteria for deciding melismata can
-be tuned with the property @code{melismaBusyProperties}.  See
-@internalsref{Melisma_translator} in the program reference for more
-information.
 
-@end ignore
+@refcommands
+
+@code{\melisma}, @code{\melismaEnd}
+@findex \melismaEnd
+@findex \melisma
+
+@seealso
+
+Program reference: @internalsref{Melisma_translator}.
+
+
+@inputfileref{input/@/regression,lyric@/-combine@/-new@/.ly}.
+
+@refbugs
+
+Melismata are not detected automatically, and extender lines must be
+inserted by hand.
+
+
+@node Another way of entering lyrics
+@subsection Another way of entering lyrics
 
 Lyrics can also be entered without @code{\lyricsto}.  In this case the
 duration of each syllable must be entered explicitly, for example,
@@ -991,8 +1062,8 @@ will not be formatted properly.
 
 Here is an example demonstrating manual lyric durations,
 
-@lilypond[relative=1,raggedright,verbatim,fragment,quote]
-<< \context Voice = melody {
+@lilypond[relative=1,ragged-right,verbatim,fragment,quote]
+<< \new Voice = "melody" {
      \time 3/4
      c2 e4 g2.
   }
@@ -1002,56 +1073,40 @@ Here is an example demonstrating manual lyric durations,
   } >>
 @end lilypond
 
-@cindex SATB
-@cindex choral score
-
-A complete example of a SATB score setup is in section
-@ref{Vocal ensembles}.
-
-
-@refcommands
-
-@code{\melisma}, @code{\melismaEnd}
-@cindex @code{\melismaEnd}
-@cindex @code{\melisma}
-
-@seealso
-
-Program reference: @internalsref{LyricCombineMusic},
-@internalsref{Lyrics}, @internalsref{Melisma_translator}.
-
-
-@inputfileref{input/@/regression,lyric@/-combine@/-new@/.ly}.
-@c TODO: make separate section for melismata
-
-@refbugs
-
-Melismata are not detected automatically, and extender lines must be
-inserted by hand.
-
 
 @c TODO: document \new Staff << Voice \lyricsto >> bug
 
-@node Flexibility in alignment
-@subsection Flexibility in alignment
-
+@node Flexibility in placement
+@subsection Flexibility in placement
 
 Often, different stanzas of one song are put to one melody in slightly
 differing ways.  Such variations can still be captured with
 @code{\lyricsto}.
 
+@menu
+* Lyrics to multiple notes of a melisma::  
+* Divisi lyrics::               
+* Switching the melody associated with a lyrics line::  
+* Specifying melismata within the lyrics::  
+* Lyrics independent of notes::  
+@end menu
+
+@node Lyrics to multiple notes of a melisma
+@subsubsection Lyrics to multiple notes of a melisma
+
+
 One possibility is that the text has a melisma in one stanza, but
 multiple syllables in another one.  One solution is to make the faster
 voice ignore the melisma.  This is done by setting
 @code{ignoreMelismata} in the Lyrics context.
 
-There has one tricky aspect.  The setting for @code{ignoreMelismata}
+There is one tricky aspect: the setting for @code{ignoreMelismata}
 must be set one syllable @emph{before} the non-melismatic syllable
 in the text, as shown here,
 
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
 <<
-  \relative \context Voice = "lahlah" {
+  \relative \new Voice = "lahlah" {
     \set Staff.autoBeaming = ##f
     c4
     \slurDotted
@@ -1079,7 +1134,7 @@ standard.  This can be achieved by insert @code{\skip}s into the
 lyrics.  For every @code{\skip}, the text will be delayed another note.
 For example,
 
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
 \relative { c c g' }
 \addlyrics {
   twin -- \skip 4
@@ -1087,17 +1142,67 @@ For example,
 }
 @end lilypond
 
+
+@node Divisi lyrics
+@subsubsection Divisi lyrics
+
+You can display alternate (or divisi) lyrics by naming voice
+contexts and attaching lyrics to those specific contexts.
+
+@lilypond[verbatim,ragged-right,quote]
+\score{ <<
+  \new Voice = "melody" {
+    \relative c' {
+      c4
+      <<
+        { \voiceOne c8 e }
+        \new Voice = "splitpart" { \voiceTwo c4 }
+      >>
+      \oneVoice c4 c | c
+    }
+  }
+  \new Lyrics \lyricsto "melody" { we shall not o- ver- come }
+  \new Lyrics \lyricsto "splitpart" { will }
+>> }
+@end lilypond
+
+
+You can use this trick to display different lyrics for a repeated
+section.
+
+@lilypond[verbatim,ragged-right,quote]
+\score{ <<
+  \new Voice = "melody" \relative c' {
+    c2 e | g e | c1 |
+    \new Voice = "verse" \repeat volta 2 {c4 d e f | g1 | }
+    a2 b | c1}
+  \new Lyrics = "mainlyrics" \lyricsto melody \lyricmode {
+    do mi sol mi do
+    la si do }
+  \context Lyrics = "mainlyrics" \lyricsto verse \lyricmode {
+   do re mi fa sol }
+  \new Lyrics = "repeatlyrics" \lyricsto verse \lyricmode {
+   dodo rere mimi fafa solsol }
+>>
+}
+@end lilypond
+
+
+
+@node Switching the melody associated with a lyrics line
+@subsubsection Switching the melody associated with a lyrics line
+
 More complex variations in text underlay are possible.  It is possible
 to switch the melody for a line of lyrics during the text.  This is
 done by setting the @code{associatedVoice} property.  In the example
 
-@lilypond[raggedright,quote]
+@lilypond[ragged-right,quote]
 <<
-  \relative \context Voice = "lahlah" {
+  \relative \new Voice = "lahlah" {
     \set Staff.autoBeaming = ##f
     c4
     <<
-      \context Voice = alternative {
+      \new Voice = "alternative" {
         \voiceOne
         \times 2/3 {
           % show associations clearly.
@@ -1167,10 +1272,108 @@ The underlay is switched back to the starting situation by assigning
 @code{lahlah} to @code{associatedVoice}.
 
 
+@node Specifying melismata within the lyrics
+@subsubsection Specifying melismata within the lyrics
+
+It is also possible to define melismata entirely in the lyrics. This
+can be done by entering @code{_} for every note that is part of the
+melisma.
+
+@lilypond[relative=1,verbatim,fragment]
+{ \set melismaBusyProperties = #'()
+  c d( e) f f( e) e e  }
+\addlyrics
+ { Ky -- _ _ ri __ _ _ _  e }
+@end lilypond
+
+In this case, you can also have ties and slurs in the melody, if you
+set @code{melismaBusyProperties}, as is done in the example above.
+
+@lilypond[relative=1,verbatim,fragment,quote]
+{
+ \set melismaBusyProperties = #'()
+  c d( e) f f( e) e e
+}
+\addlyrics
+ { Ky -- _ _ ri __ _ _ _  e }
+@end lilypond
+
+
+@node Lyrics independent of notes
+@subsubsection Lyrics independent of notes
+
+In some complex vocal music, it may be desirable to place
+lyrics completely independently of notes.  Music defined
+inside @code{lyricrhythm} disappears into the
+@code{Devnull} context, but the rhythms can still be used
+to place the lyrics.
+
+@lilypond[quote,verbatim,ragged-right]
+voice = {
+  c''2
+  \tag #'music { c''2 }
+  \tag #'lyricrhythm { c''4. c''8 }
+  d''1
+}
+
+lyr = \lyricmode { I like my cat! }
+
+<<
+  \new Staff \keepWithTag #'music \voice
+  \new Devnull="nowhere" \keepWithTag #'lyricrhythm \voice
+  \new Lyrics \lyricsto "nowhere" \lyr
+  \new Staff { c'8 c' c' c' c' c' c' c'
+  c' c' c' c' c' c' c' c' }
+>>
+@end lilypond
+
+
+@node Spacing lyrics
+@subsection Spacing lyrics
+
+@cindex Spacing lyrics
+@cindex Lyrics, increasing space between
+
+To increase the spacing between lyrics, set the minimum-distance property of
+LyricSpace.
+
+@lilypond[relative,verbatim,fragment,quote,ragged-right]
+{
+  c c c c
+  \override Lyrics.LyricSpace #'minimum-distance = #1.0
+  c c c c
+}
+\addlyrics {
+  longtext longtext longtext longtext
+  longtext longtext longtext longtext
+}
+@end lilypond
+
+To make this change for all lyrics in the score, set the property in the
+layout.
+
+@lilypond[relative,verbatim,quote,ragged-right]
+\score {
+  {
+  c c c c
+  c c c c
+  }
+  \addlyrics {
+  longtext longtext longtext longtext
+  longtext longtext longtext longtext
+  }
+  \layout {
+    \context {
+      \Lyrics
+      \override LyricSpace #'minimum-distance = #1.0
+    }
+  }
+}
+@end lilypond
 
 
-@node More stanzas
-@subsection More stanzas
+@node More about stanzas
+@subsection More about stanzas
 
 @cindex phrasing, in lyrics
 
@@ -1181,7 +1384,7 @@ The underlay is switched back to the starting situation by assigning
 
 Stanza numbers can be added by setting @code{stanza}, e.g.,
 
-@lilypond[quote,raggedright,verbatim,relative=2,fragment]
+@lilypond[quote,ragged-right,verbatim,relative=2,fragment]
 \new Voice {
   \time 3/4 g2 e4 a2 f4 g2.
 } \addlyrics {
@@ -1195,12 +1398,56 @@ Stanza numbers can be added by setting @code{stanza}, e.g.,
 
 These numbers are put just before the start of first syllable.
 
+Sometimes it is appropriate to have one stanza set
+to the music, and the rest added in verse form at
+the end of the piece.  This can be accomplished by adding
+the extra verses into a @code{\markup} section outside
+of the main score block.  Notice that there are two
+different ways to force linebreaks when using
+@code{\markup}.
+
+@lilypond[ragged-right,verbatim,quote]
+melody = \relative c' {
+e d c d | e e e e |
+d d e d | c1 |
+}
+
+text = \lyricmode {
+\set stanza = "1." Ma- ry had a lit- tle lamb,
+its fleece was white as snow.
+}
+
+\book{
+  \score{ <<
+    \new Voice = "one" { \melody }
+    \new Lyrics \lyricsto "one" \text
+       >>
+    \layout { }
+  }
+  \markup { \column{
+    \line{ Verse 2. }
+    \line{ All the children laughed and played }
+    \line{ To see a lamb at school. }
+    }
+  }
+  \markup{
+    \wordwrap-string #"
+    Verse 3.
+
+    Mary took it home again,
+
+    It was against the rule."
+  }
+}
+@end lilypond
+
+
 Names of singers can also be added.  They are printed at the start of
 the line, just like instrument names.  They are created by setting
 @code{vocalName}.  A short version may be entered as @code{vocNam}.
 
 
-@lilypond[fragment,raggedright,quote,verbatim,relative=2]
+@lilypond[fragment,ragged-right,quote,verbatim,relative=2]
 \new Voice {
   \time 3/4 g2 e4 a2 f4 g2.
 } \addlyrics {
@@ -1212,11 +1459,11 @@ the line, just like instrument names.  They are created by setting
 }
 @end lilypond
 
+
 @seealso
 
-Program reference: Layout objects @internalsref{LyricText} and
-@internalsref{VocalName}.  Music expressions
-@internalsref{LyricEvent}.
+Program reference: @internalsref{LyricText}, @internalsref{StanzaNumber},
+@internalsref{VocalName}.
 
 
 
@@ -1246,7 +1493,7 @@ for example,
 
 This results in the following output
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 \layout {
   \context {
     \Staff
@@ -1264,7 +1511,7 @@ ambitus per staff rather than per each voice, add the
 @internalsref{Ambitus_engraver} to the @internalsref{Staff} context
 rather than to the @internalsref{Voice} context.  Here is an example,
 
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
 \new Staff \with {
   \consists "Ambitus_engraver"
 }
@@ -1272,8 +1519,7 @@ rather than to the @internalsref{Voice} context.  Here is an example,
   \new Voice \with {
     \remove "Ambitus_engraver"
   } \relative c'' {
-    \override Ambitus #'X-offset-callbacks
-      = #(list (lambda (grob axis) -1.0))
+    \override Ambitus #'X-offset = #-1.0
     \voiceOne
     c4 a d e f2
   }
@@ -1290,8 +1536,7 @@ rather than to the @internalsref{Voice} context.  Here is an example,
 This example uses one advanced feature,
 
 @example
-\override Ambitus #'X-offset-callbacks
-  = #(list (lambda (grob axis) -1.0))
+\override Ambitus #'X-offset = #-1.0
 @end example
 
 @noindent
@@ -1312,8 +1557,9 @@ Examples: @inputfileref{input/@/regression,ambitus@/.ly}.
 There is no collision handling in the case of multiple per-voice
 ambitus.
 
+
 @node Other vocal issues
-@subsection Other vocal issue
+@subsection Other vocal issues
 
 @ignore
 yeah, I'm giving up somewhat by stuffing a bunch of things in
@@ -1325,58 +1571,12 @@ can ask them for specific instructions about where to move these
 examples, and that might get them more involved in the docs.  -gp
 @end ignore
 
-You can display alternate (or divisi) lyrics by naming voice
-contexts and attaching lyrics to those specific contexts.
-
-@lilypond[verbatim,raggedright,quote]
-\score{ <<
-  \context Voice = "melody" {
-    \relative c' {
-      c4
-      <<
-        { \voiceOne c8 e }
-        \context Voice = splitpart { \voiceTwo c4 }
-      >>
-      \oneVoice c4 c | c
-    }
-  }
-  \new Lyrics \lyricsto "melody" { we shall not o- ver- come }
-  \new Lyrics \lyricsto "splitpart" { shall }
->> }
-@end lilypond
-
-
-You can use this trick to display different lyrics for a repeated
-section.
-
-@lilypond[verbatim,raggedright,quote]
-\score{ <<
-  \context Voice = melody \relative c' {
-    c2 e | g e | c1 |
-    \context Voice = verse \repeat volta 2 {c4 d e f | g1 | }
-    a2 b | c1}
-  \lyricsto melody  \context Lyrics = mainlyrics \lyricmode {
-    do mi sol mi do
-    la si do }
-  \lyricsto verse \context Lyrics = mainlyrics \lyricmode {
-   do re mi fa sol }
-  \lyricsto verse \context Lyrics = repeatlyrics \lyricmode {
-   dodo rere mimi fafa solsol }
->>
-}
-@end lilypond
+``Parlato'' is spoken without pitch but still with rhythm; it is
+notated by cross noteheads.  This is demonstrated in
+@ref{Special noteheads}.
 
 
-To notate ``parlato'' (spoken without pitch but still with
-rhythm) sections, 
 
-@lilypond[raggedright,verbatim,quote,fragment,relative=2]
-c4 d
-\override NoteHead #'style = #'cross
-e f
-\revert NoteHead #'style
-e d
-@end lilypond
 
 
 @node Rhythmic music
@@ -1389,6 +1589,7 @@ also be used to show the rhythms of melodies.
 * Showing melody rhythms::      
 * Entering percussion::         
 * Percussion staves::           
+* Ghost notes::                 
 @end menu
 
 
@@ -1399,8 +1600,8 @@ 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[quote,raggedright,fragment,relative=1,verbatim]
-\context RhythmicStaff {
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
+\new RhythmicStaff {
   \time 4/4
   c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
 }
@@ -1425,7 +1626,7 @@ similar to the standard mode for entering notes.  Each piece of
 percussion has a full name and an abbreviated name, and both can be used
 in input files
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 \drums {
   hihat hh bassdrum bd
 }
@@ -1437,7 +1638,7 @@ The complete list of drum names is in the init file
 
 @seealso
 
-Program reference: @internalsref{DrumNoteEvent}.
+Program reference: @internalsref{note-event}.
 
 @node Percussion staves
 @subsection Percussion staves
@@ -1452,7 +1653,7 @@ of percussion.
 To typeset the music, the notes must be interpreted in a
 @internalsref{DrumStaff} and @internalsref{DrumVoice} contexts
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat }
 down = \drummode { bassdrum4 snare8 bd r bd sn4 }
   \new DrumStaff <<
@@ -1462,13 +1663,13 @@ down = \drummode { bassdrum4 snare8 bd r bd sn4 }
 @end lilypond
 
 The above example shows verbose polyphonic notation.  The short
-polyphonic notation, described in @ref{Polyphony}, can also be used if
-the @internalsref{DrumVoices} are instantiated by hand first.  For example,
+polyphonic notation, described in @ref{Basic polyphony}, can also be used if
+the @internalsref{DrumVoice}s are instantiated by hand first.  For example,
 
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
 \new DrumStaff <<
-  \context DrumVoice = "1" { s1 *2 }
-  \context DrumVoice = "2" { s1 *2 }
+  \new DrumVoice = "1" { s1 *2 }
+  \new DrumVoice = "2" { s1 *2 }
   \drummode {
     bd4 sn4 bd4 sn4
     <<
@@ -1489,7 +1690,7 @@ The following variables have been predefined
 @item drums-style
 This is the default.  It typesets a typical drum kit on a five-line staff
 
-@lilypond[quote,linewidth=10.0\cm]
+@lilypond[quote,line-width=10.0\cm]
 nam = \lyricmode {
   cymc cyms cymr hh hhc hho hhho hhp
   cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
@@ -1502,9 +1703,9 @@ mus = \drummode {
        \remove Time_signature_engraver
        \override Stem #'transparent = ##t
        \override Stem #'Y-extent-callback = ##f
-       minimumVerticalExtent = #'(-4.0 . 5.0)
+       \override VerticalAxisGroup #'minimum-Y-extent = #'(-4.0 . 5.0)
      } \mus
-     \context Lyrics \nam
+     \new Lyrics \nam
   >>
   \layout {
     \context {
@@ -1524,22 +1725,22 @@ on the three middle lines you use @code{tommh}, @code{tomml}, and
 @item timbales-style
 This typesets timbales on a two line staff
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 nam = \lyricmode { timh ssh timl ssl cb }
 mus = \drummode { timh ssh timl ssl cb s16 }
 
 <<
-  \context DrumStaff \with {
+  \new DrumStaff \with {
     \remove Bar_engraver
     \remove Time_signature_engraver
     \override Stem #'transparent = ##t
     \override Stem #'Y-extent-callback = ##f
     \override StaffSymbol #'line-count = #2
     \override StaffSymbol #'staff-space = #2
-    minimumVerticalExtent = #'(-3.0 . 4.0)
+    \override VerticalAxisGroup #'minimum-Y-extent = #'(-3.0 . 4.0)
     drumStyleTable = #timbales-style
   } \mus
-  \context Lyrics {
+  \new Lyrics {
     \override LyricText #'font-family = #'typewriter
     \nam
   }
@@ -1549,12 +1750,12 @@ mus = \drummode { timh ssh timl ssl cb s16 }
 @item congas-style
 This typesets congas on a two line staff
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 nam = \lyricmode { cgh cgho cghm ssh cgl cglo cglm ssl }
 mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
 
 <<
-  \context DrumStaff \with {
+  \new DrumStaff \with {
     \remove Bar_engraver
     \remove Time_signature_engraver
     drumStyleTable = #congas-style
@@ -1565,7 +1766,7 @@ mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
     \override Stem #'transparent = ##t
     \override Stem #'Y-extent-callback = ##f
   } \mus
-  \context Lyrics {
+  \new Lyrics {
     \override LyricText #'font-family = #'typewriter
     \nam
   }
@@ -1575,12 +1776,12 @@ mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
 @item bongos-style
 This typesets bongos on a two line staff
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 nam = \lyricmode { boh boho bohm ssh bol bolo bolm ssl }
 mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
 
 <<
-  \context DrumStaff\with {
+  \new DrumStaff \with {
     \remove Bar_engraver
     \remove Time_signature_engraver
     \override StaffSymbol #'line-count = #2
@@ -1591,7 +1792,7 @@ mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
     \override Stem #'transparent = ##t
     \override Stem #'Y-extent-callback = ##f
   } \mus
-  \context Lyrics {
+  \new Lyrics {
     \override LyricText #'font-family = #'typewriter
     \nam
   }
@@ -1601,12 +1802,12 @@ mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
 @item percussion-style
 To typeset all kinds of simple percussion on one line staves.
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 nam = \lyricmode { tri trio trim gui guis guil cb cl tamb cab mar hc }
 mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
 
 <<
-  \context DrumStaff\with{
+  \new DrumStaff \with{
     \remove Bar_engraver
     drumStyleTable = #percussion-style
     \override StaffSymbol #'line-count = #1
@@ -1614,7 +1815,7 @@ mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
     \override Stem #'transparent = ##t
     \override Stem #'Y-extent-callback = ##f
   } \mus
-  \context Lyrics {
+  \new Lyrics {
     \override LyricText #'font-family = #'typewriter
     \nam
   }
@@ -1625,7 +1826,7 @@ mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
 If you do not like any of the predefined lists you can define your own
 list at the top of your file
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 #(define mydrums '(
          (bassdrum     default   #f         -1)
          (snare        default   #f         0)
@@ -1655,29 +1856,87 @@ Because general MIDI does not contain rim shots, the sidestick is used
 for this purpose instead.
 
 
+@c FIXME: check name -gp
+@node Ghost notes
+@subsection Ghost notes
+
+Ghost notes for drums and percussion may be created using the
+@code{\parenthesize} command detailed in @ref{Parentheses}.  However,
+the default @code{\drummode} does
+not include the @code{Parenthesis_engraver} plugin which allows
+this.  You
+must add the plugin explicitly in the context definition as
+detailed in @ref{Changing context properties on the fly}.
+
+@lilypond[quote,ragged-right,verbatim,fragment]
+\new DrumStaff \with {
+  \consists "Parenthesis_engraver"
+} <<
+  \context DrumVoice  = "1"  { s1 *2 }
+  \context DrumVoice  = "2" { s1 *2 }
+  \drummode {
+    <<
+      {
+        hh8[ hh] <hh sn> hh16
+        < \parenthesize sn > hh < \parenthesize
+        sn > hh8 <hh sn> hh
+      } \\ {
+        bd4 r4 bd8 bd r8 bd
+      }
+    >>
+  }
+>>
+@end lilypond
+
+@noindent
+Also note that you must add chords (@code{< >} brackets)
+around each @code{\parenthesize} statement.
 
 
-@node Tablatures
-@section Tablatures
+@node Guitar
+@section Guitar
 
 @cindex tablature
 @cindex guitar tablature
 
-Tablature notation is used for notating music for plucked string
-instruments.  Pitches are not denoted with note heads, but by
-indicating on which string and fret a note must be played.  LilyPond
-offers limited support for tablature.
-
 @menu
+* String number indications::   
 * Tablatures basic::            
 * Non-guitar tablatures::       
+* Banjo tablatures::            
 * Fret diagrams::               
+* Other guitar issues::         
 @end menu
 
+@node String number indications
+@subsection String number indications
+
+@cindex String numbers
+
+String numbers can be added to chords, by indicating the string number
+with @code{\}@var{number},
+
+@lilypond[relative,relative=1,ragged-right,fragment]
+<c\1 e\2 g\3>
+@end lilypond
+
+See also @inputfileref{input/regression,string-number.ly}.
+
+
+@seealso
+
+Program reference: @internalsref{StringNumber}.
+
+
 @node Tablatures basic
 @subsection Tablatures basic
 @cindex Tablatures basic
 
+Tablature notation is used for notating music for plucked string
+instruments.  Pitches are not denoted with note heads, but by
+numbers indicating on which string and fret a note must be played.  LilyPond
+offers limited support for tablature.
+
 The string number associated to a note is given as a backslash
 followed by a number, e.g., @code{c4\3} for a C quarter on the third
 string.  By default, string 1 is the highest one, and the tuning
@@ -1685,14 +1944,14 @@ defaults to the standard guitar tuning (with 6 strings).  The notes
 are printed as tablature, by using @internalsref{TabStaff} and
 @internalsref{TabVoice} contexts
 
-@lilypond[quote,raggedright,fragment,verbatim]
-\context TabStaff {
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new TabStaff {
   a,4\5 c'\2 a\3 e'\1
   e\4 c'\2 a\3 e'\1
 }
 @end lilypond
 
-@cindex @code{minimumFret}
+@findex minimumFret
 @cindex fret
 
 When no string is specified, the first string that does not give a
@@ -1705,23 +1964,33 @@ e16 fis gis a b4
 \set TabStaff.minimumFret = #8
 e16 fis gis a b4
 @end example
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 frag = {
   \key e \major
   e16 fis gis a b4
   \set TabStaff.minimumFret = #8
   e16 fis gis a b4
 }
-  \context StaffGroup <<
-    \context Staff { \clef "G_8" \frag }
-    \context TabStaff { \frag }
+  \new StaffGroup <<
+    \new Staff { \clef "G_8" \frag }
+    \new TabStaff { \frag }
   >>
 @end lilypond
 
+
+@commonprop
+
+To print tablatures with stems down and horizontal beams,
+initialize the @code{TabStaff} with this code:
+
+@example
+\stemDown
+\override Beam #'damping = #100000
+@end example
+
 @seealso
 
-Program reference: @internalsref{TabStaff}, @internalsref{TabVoice}, and
-@internalsref{StringNumberEvent}.
+Program reference: @internalsref{TabStaff}, @internalsref{TabVoice}.
 
 @refbugs
 
@@ -1734,19 +2003,19 @@ chord.
 @subsection Non-guitar tablatures
 @cindex Non-guitar tablatures
 
-You can change the number of strings, by setting the number of lines
-in the @internalsref{TabStaff}.
-
 You can change the tuning of the strings.  A string tuning is given as
 a Scheme list with one integer number for each string, the number
 being the pitch (measured in semitones relative to middle C) of an
 open string.  The numbers specified for @code{stringTuning} are the
 numbers of semitones to subtract or add, starting the specified pitch
-by default middle C, in string order.  In the next example,
+by default middle C, in string order.  LilyPond automatically calculates
+the number of strings by looking at @code{stringTuning}.
+
+In the next example,
 @code{stringTunings} is set for the pitches e, a, d, and g
 
-@lilypond[quote,raggedright,fragment,verbatim]
-\context TabStaff <<
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new TabStaff <<
   \set TabStaff.stringTunings = #'(-5 -10 -15 -20)
   {
     a,4 c' a e' e c' a e'
@@ -1754,13 +2023,67 @@ by default middle C, in string order.  In the next example,
 >>
 @end lilypond
 
+LilyPond comes with predefined string tunings for banjo, mandolin, guitar
+and bass guitar.
+
+@example
+\set TabStaff.stringTunings = #bass-tuning
+@end example
+
+The default string tuning is @code{guitar-tuning} (the standard EADGBE
+tuning).
+Some other predefined tunings are @code{guitar-open-g-tuning},
+@code{mandolin-tuning} and @code{banjo-open-g-tuning}.
+
+@seealso
+
+The file @file{scm/@/output@/-lib@/.scm} contains the predefined string
+tunings.
+Program reference: @internalsref{Tab_note_heads_engraver}.
+
 @refbugs
 
 No guitar special effects have been implemented.
 
+
+
+@node Banjo tablatures
+@subsection Banjo tablatures
+@cindex Banjo tablatures
+
+LilyPond has basic support for five stringed banjo.  When making tablatures
+for five stringed banjo, use the banjo tablature format function to get
+correct
+fret numbers for the fifth string:
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new TabStaff <<
+  \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo
+  \set TabStaff.stringTunings = #banjo-open-g-tuning
+  {
+    \stemDown
+    g8 d' g'\5 a b g e d' |
+    g4 d''8\5 b' a'\2 g'\5 e'\2 d' |
+    g4
+  }
+>>
+@end lilypond
+
+A number of common tunings for banjo are predefined in LilyPond:
+@code{banjo-c-tuning} (gCGBD), @code{banjo-modal-tuning} (gDGCD),
+@code{banjo-open-d-tuning} (aDF#AD) and @code{banjo-open-dm-tuning}
+(aDFAD).
+
+These tunings may be converted to four string banjo tunings using the
+@code{four-string-banjo} function:
+
+@example
+\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
+@end example
+
 @seealso
 
-Program reference: @internalsref{Tab_note_heads_engraver}.
+The file @file{scm/@/output@/-lib@/.scm} contains predefined banjo tunings.
 
 
 @node Fret diagrams
@@ -1772,11 +2095,11 @@ Fret diagrams can be added to music as a markup to the desired note.  The
 markup contains information about the desired fret diagram, as shown in the
 following example
 
-@lilypond[verbatim, raggedright, quote]
-\context Voice {
-  d' ^\markup \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-2;"
+@lilypond[verbatim, ragged-right, quote]
+\new Voice {
+  d'^\markup \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-2;"
   d' d' d'
-  fis' ^\markup \override #'(size . 0.75) {
+  fis'^\markup \override #'(size . 0.75) {
     \override #'(finger-code . below-string) {
       \fret-diagram-verbose #'((place-fret 6 2 1) (barre 6 1 2)
                                (place-fret 5 4 3) (place-fret 4 4 4)
@@ -1785,7 +2108,7 @@ following example
     }
   }
   fis' fis' fis'
-  c' ^\markup \override #'(dot-radius . 0.35) {
+  c'^\markup \override #'(dot-radius . 0.35) {
     \override #'(finger-code . in-dot) {
       \override #'(dot-color . white) {
         \fret-diagram-terse #"x;3-1-(;5-2;5-3;5-4;3-1-);"
@@ -1812,6 +2135,126 @@ Details about the property interface to fret diagrams are found at
 Examples: @inputfileref{input/@/test,fret@/-diagram@/.ly}
 
 
+@node Other guitar issues
+@subsection Other guitar issues
+
+This example demonstrates how to include guitar position and
+barring indications.
+
+@lilypond[quote,ragged-right,fragment,verbatim,relative=0]
+\clef "G_8"
+b16 d16 g16 b16 e16
+\textSpannerDown
+\override TextSpanner #'edge-text = #'("XII " . "")
+  g16\startTextSpan
+  b16 e16 g16 e16 b16 g16\stopTextSpan
+e16 b16 g16 d16
+@end lilypond
+
+
+Stopped (X) note heads are used in guitar music to signal a place where the
+guitarist must play a certain note or chord, with its fingers just
+touching the strings instead of fully pressing them.  This gives the sound a
+percussive noise-like sound that still maintains part of the original
+pitch.  It is notated with cross noteheads; this is
+demonstrated in @ref{Special noteheads}.
+
+
+@node Bagpipe
+@section Bagpipe
+
+@cindex Bagpipe
+
+@menu
+* Bagpipe definitions::         
+* Bagpipe example::             
+@end menu
+
+
+@node Bagpipe definitions
+@subsection Bagpipe definitions
+
+LilyPond contains special definitions for music for the Scottish
+highland bagpipe; to use them, add
+
+@example
+\include "bagpipe.ly"
+@end example
+
+@noindent
+at the top of your input file.  This lets you add the special gracenotes
+common to bagpipe music with short commands.  For example, you could
+write @code{\taor} instead of
+
+@example
+\grace @{ \small G32[ d G e] @}
+@end example
+
+@code{bagpipe.ly} also contains pitch definitions for the bagpipe
+notes in the appropiate octaves, so you do not need to worry about
+@code{\relative} or @code{\transpose}.
+
+@lilypond[ragged-right,verbatim,quote,notime]
+\include "bagpipe.ly"
+{ \grg G4 \grg a \grg b \grg c \grg d \grg e \grg f \grA g A }
+@end lilypond
+
+Bagpipe music nominally uses the key of D Major (even though that
+isn't really true). However, since that is the only key that can be used,
+the key signature is normally not written out. To set this up correctly,
+always start your music with @code{\hideKeySignature}. If you for some
+reason want to show the key signature, you can use @code{\showKeySignature}
+instead.
+
+Some modern music use cross fingering on c and f to flatten those notes.
+This can be indicated by @code{cflat} or @code{fflat}. Similarly, the
+piobaireachd high g can be written @code{gflat} when it occurs in light
+music.
+
+
+@node Bagpipe example
+@subsection Bagpipe example
+
+This is what the well known tune Amazing Grace looks like in bagpipe
+notation.
+
+@lilypond[verbatim,quote]
+\include "bagpipe.ly"
+\layout {
+  indent = 0.0\cm
+  \context { \Score \remove "Bar_number_engraver" }
+}
+
+\header {
+  title = "Amazing Grace"
+  meter = "Hymn"
+  arranger = "Trad. arr."
+}
+
+{
+  \hideKeySignature
+  \time 3/4
+  \grg \partial 4 a8. d16
+  \slurd d2 \grg f8[ e32 d16.]
+  \grg f2 \grg f8 e
+  \thrwd d2 \grg b4
+  \grG a2 \grg a8. d16
+  \slurd d2 \grg f8[ e32 d16.]
+  \grg f2 \grg e8. f16
+  \dblA A2 \grg A4
+  \grg A2 f8. A16
+  \grg A2 \hdblf f8[ e32 d16.]
+  \grg f2 \grg f8 e
+  \thrwd d2 \grg b4
+  \grG a2 \grg a8. d16
+  \slurd d2 \grg f8[ e32 d16.]
+  \grg f2 e4
+  \thrwd d2.
+  \slurd d2
+  \bar "|."
+}
+@end lilypond
+
 
 @node Ancient notation
 @section Ancient notation
@@ -1906,10 +2349,12 @@ Here are all suptopics at a glance:
 * Ligatures::                   
 * Gregorian Chant contexts::    
 * Mensural contexts::           
+* Musica ficta accidentals::    
 * Figured bass::                
 @end menu
 
 
+
 @node Ancient note heads
 @subsection Ancient note heads
 
@@ -1919,19 +2364,21 @@ Here are all suptopics at a glance:
 For ancient notation, a note head style other than the @code{default}
 style may be chosen.  This is accomplished by setting the @code{style}
 property of the @internalsref{NoteHead} object to @code{baroque},
-@code{neomensural} or @code{mensural}.  The @code{baroque} style
-differs from the @code{default} style only in using a square shape
-for @code{\breve} note heads.  The @code{neomensural} style differs from
-the @code{baroque} style in that it uses rhomboidal heads for whole notes
-and all smaller durations.  Stems are centered on the note heads.
-This style is particularly useful when transcribing mensural music,
-e.g., for the incipit.  The @code{mensural} style finally produces note
-heads that mimic the look of note heads in historic printings of the
-16th century.
+@code{neomensural}, @code{mensural} or @code{petrucci}.  The
+@code{baroque} style differs from the @code{default} style only in
+using a square shape for @code{\breve} note heads.  The
+@code{neomensural} style differs from the @code{baroque} style in that
+it uses rhomboidal heads for whole notes and all smaller durations.
+Stems are centered on the note heads.  This style is particularly
+useful when transcribing mensural music, e.g., for the incipit.  The
+@code{mensural} style produces note heads that mimic the look of note
+heads in historic printings of the 16th century.  Finally, the
+@code{petrucci} style also mimicks historic printings, but uses bigger
+note heads.
 
 The following example demonstrates the @code{neomensural} style
 
-@lilypond[quote,fragment,raggedright,verbatim]
+@lilypond[quote,fragment,ragged-right,verbatim]
 \set Score.skipBars = ##t
 \override NoteHead #'style = #'neomensural
 a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
@@ -1962,7 +2409,7 @@ Use the @code{style} property of grob @internalsref{Accidental} to
 select ancient accidentals.   Supported styles are
 @code{mensural}, @code{vaticana}, @code{hufnagel}, and @code{medicaea}.
 
-@lilypond[quote,raggedright,staffsize=26]
+@lilypond[quote,ragged-right,staffsize=26]
 \score {
 {
   \fatText
@@ -1995,7 +2442,7 @@ select ancient accidentals.   Supported styles are
       \remove "Key_engraver"
       \remove "Time_signature_engraver"
       \remove "Staff_symbol_engraver"
-      minimumVerticalExtent = ##f
+      \override VerticalAxisGroup #'minimum-Y-extent = ##f
     }
   }
 }
@@ -2024,7 +2471,7 @@ Examples: @inputfileref{input/@/test,ancient@/-accidentals@/.ly}.
 @node Ancient rests
 @subsection Ancient rests
 
-@cindex rests
+@cindex rests, ancient
 
 
 Use the @code{style} property of grob @internalsref{Rest} to select
@@ -2038,7 +2485,7 @@ in historic prints of the 16th century.
 
 The following example demonstrates the @code{neomensural} style
 
-@lilypond[quote,fragment,raggedright,verbatim]
+@lilypond[quote,fragment,ragged-right,verbatim]
 \set Score.skipBars = ##t
 \override Rest #'style = #'neomensural
 r\longa r\breve r1 r2 r4 r8 r16
@@ -2054,7 +2501,8 @@ There are no rests in Gregorian Chant notation; instead, it uses
 
 @seealso
 
-In this manual: @ref{Rests} gives a general introduction into the use of rests.
+In this manual: @ref{Rests} gives a general introduction into the use of
+rests.
 
 
 @node Ancient clefs
@@ -2306,7 +2754,7 @@ Use the @code{flag-style} property of grob @internalsref{Stem} to
 select ancient flags.  Besides the @code{default} flag style,
 only the @code{mensural} style is supported
 
-@lilypond[quote,fragment,raggedright,verbatim]
+@lilypond[quote,fragment,ragged-right,verbatim]
 \override Stem #'flag-style = #'mensural
 \override Stem #'thickness = #1.0
 \override NoteHead #'style = #'mensural
@@ -2346,7 +2794,7 @@ to get a particular mensural signature glyph with the @code{\time n/m}
 command, @code{n} and @code{m} have to be chosen according to the
 following table
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 \layout {
   indent = 0.0
   \context {
@@ -2359,35 +2807,35 @@ following table
 {
   \set Score.timing = ##f
   \set Score.barAlways = ##t
-  s_\markup { "\\time 4/4" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural44" }
+  s_\markup { "\\time 4/4" }^\markup { "       " \musicglyph
+#"timesig.neomensural44" }
   s
-  s_\markup { "\\time 2/2" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural22" }
+  s_\markup { "\\time 2/2" }^\markup { "       " \musicglyph
+#"timesig.neomensural22" }
   s
-  s_\markup { "\\time 6/4" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural64" }
+  s_\markup { "\\time 6/4" }^\markup { "       " \musicglyph
+#"timesig.neomensural64" }
   s
-  s_\markup { "\\time 6/8" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural68" }
+  s_\markup { "\\time 6/8" }^\markup { "       " \musicglyph
+#"timesig.neomensural68" }
   \break
-  s_\markup { "\\time 3/2" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural32" }
+  s_\markup { "\\time 3/2" }^\markup { "       " \musicglyph
+#"timesig.neomensural32" }
   s
-  s_\markup { "\\time 3/4" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural34" }
+  s_\markup { "\\time 3/4" }^\markup { "       " \musicglyph
+#"timesig.neomensural34" }
   s
-  s_\markup { "\\time 9/4" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural94" }
+  s_\markup { "\\time 9/4" }^\markup { "       " \musicglyph
+#"timesig.neomensural94" }
   s
-  s_\markup { "\\time 9/8" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural98" }
+  s_\markup { "\\time 9/8" }^\markup { "       " \musicglyph
+#"timesig.neomensural98" }
   \break
-  s_\markup { "\\time 4/8" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural48" }
+  s_\markup { "\\time 4/8" }^\markup { "       " \musicglyph
+#"timesig.neomensural48" }
   s
-  s_\markup { "\\time 2/4" }
-  ^\markup { "       " \musicglyph #"timesig.neomensural24" }
+  s_\markup { "\\time 2/4" }^\markup { "       " \musicglyph
+#"timesig.neomensural24" }
 }
 @end lilypond
 
@@ -2400,7 +2848,7 @@ style mimics the look of historical printings of the 16th century.
 
 The following examples show the differences in style,
 
-@lilypond[raggedright,fragment,relative=1,quote]
+@lilypond[ragged-right,fragment,relative=1,quote]
 {
   \fatText
 
@@ -2457,10 +2905,10 @@ In addition to the standard articulation signs described in section
 provided.  These are specifically designed for use with notation in
 Editio Vaticana style.
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 \include "gregorian-init.ly"
 \score {
-  \context VaticanaVoice {
+  \new VaticanaVoice {
     \override Staff.StaffSymbol #'color = #red
     \override Staff.LedgerLineSpanner #'color = #red
     \override TextScript #'font-family = #'typewriter
@@ -2513,7 +2961,7 @@ as shown in the following example
 
 The result looks like this
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 \score {
 {
   a'1
@@ -2531,7 +2979,7 @@ The custos glyph is selected by the @code{style} property.  The styles
 supported are @code{vaticana}, @code{medicaea}, @code{hufnagel}, and
 @code{mensural}.  They are demonstrated in the following fragment
 
-@lilypond[quote,raggedright,fragment]
+@lilypond[quote,ragged-right,fragment]
 \new Lyrics \lyricmode {
   \markup { \column {
     \typewriter "vaticana"
@@ -2584,28 +3032,28 @@ and @code{\finalis} at proper places in the input.  Some editions use
 Therefore, @file{gregorian@/-init@/.ly} also defines @code{\virgula} and
 @code{\caesura}
 
-@lilypondfile[quote,raggedright]{divisiones.ly}
+@lilypondfile[quote,ragged-right]{divisiones.ly}
 
 @refcommands
 
-@cindex @code{\virgula}
+@findex \virgula
 @code{\virgula},
-@cindex @code{\caesura}
+@findex \caesura
 @code{\caesura},
-@cindex @code{\divisioMinima}
+@findex \divisioMinima
 @code{\divisioMinima},
-@cindex @code{\divisioMaior}
+@findex \divisioMaior
 @code{\divisioMaior},
-@cindex @code{\divisioMaxima}
+@findex \divisioMaxima
 @code{\divisioMaxima},
-@cindex @code{\finalis}
+@findex \finalis
 @code{\finalis}.
 
 @seealso
 
 In this manual: @ref{Breath marks}.
 
-Program reference: @internalsref{BreathingSign}, @internalsref{BreathingSignEvent}.
+Program reference: @internalsref{BreathingSign}.
 
 Examples: @inputfileref{input/@/test,divisiones@/.ly}.
 
@@ -2627,7 +3075,7 @@ this particular type of ligature.  By default, the
 @internalsref{LigatureBracket} engraver just puts a square bracket
 above the ligature
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 \transpose c c' {
   \[ g c a f d' \]
   a g f
@@ -2654,6 +3102,15 @@ be collected and printed in front of it.
 
 Augmentum dots within ligatures are not handled correctly.
 
+The syntax still uses the deprecated infix style @code{\[ music expr
+\]}.  For consistency reasons, it will eventually be changed to
+postfix style @code{note\[ ... note\]}.  Alternatively, the file
+@file{gregorian@/-init@/.ly} can be included; it provides a scheme
+function
+@example
+\ligature @var{music expr}
+@end example
+with the same effect and is believed to be stable.
 
 @menu
 * White mensural ligatures::    
@@ -2699,11 +3156,15 @@ For example,
 \override NoteHead #'style = #'neomensural
 \override Staff.TimeSignature #'style = #'neomensural
 \clef "petrucci-g"
-\[ g\longa c\breve a\breve f\breve d'\longa \]
+\[ c'\maxima g \]
+s4
+\[ d\longa c\breve f e d \]
+s4
+\[ c'\maxima d'\longa \]
 s4
-\[ e1 f1 a\breve g\longa \]
+\[ e'1 a g\breve \]
 @end example
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 \score {
   \transpose c c' {
     \set Score.timing = ##f
@@ -2711,9 +3172,13 @@ s4
     \override NoteHead #'style = #'neomensural
     \override Staff.TimeSignature #'style = #'neomensural
     \clef "petrucci-g"
-    \[ g\longa c\breve a\breve f\breve d'\longa \]
+    \[ c'\maxima g \]
     s4
-    \[ e1 f1 a\breve g\longa \]
+    \[ d\longa c\breve f e d \]
+    s4
+    \[ c'\maxima d'\longa \]
+    s4
+    \[ e'1 a g\breve \]
   }
   \layout {
     \context {
@@ -2729,23 +3194,27 @@ Without replacing @internalsref{Ligature_bracket_engraver} with
 @internalsref{Mensural_ligature_engraver}, the same music transcribes
 to the following
 
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
 \transpose c c' {
   \set Score.timing = ##f
   \set Score.defaultBarType = "empty"
   \override NoteHead #'style = #'neomensural
   \override Staff.TimeSignature #'style = #'neomensural
   \clef "petrucci-g"
-  \[ g\longa c\breve a\breve f\breve d'\longa \]
+  \[ c'\maxima g \]
+  s4
+  \[ d\longa c\breve f e d \]
   s4
-  \[ e1 f1 a\breve g\longa \]
+  \[ c'\maxima d'\longa \]
+  s4
+  \[ e'1 a g\breve \]
 }
 @end lilypond
 
 @refbugs
 
-The implementation is experimental.  It may output strange warnings,
-incorrect results, and might even crash on more complex ligatures.
+The invisible rests (@code{s4}) in the example are used to compensate
+for the poor horizontal spacing.
 
 @node Gregorian square neumes ligatures
 @subsubsection Gregorian square neumes ligatures
@@ -2794,7 +3263,7 @@ Deminutae}
 @item
 @code{1. Punctum}
 @tab
-@lilypond[staffsize=26,linewidth=1.5\cm]
+@lilypond[staffsize=26,line-width=1.5\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2809,7 +3278,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=2.5\cm]
+@lilypond[staffsize=26,line-width=2.5\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2828,7 +3297,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2842,7 +3311,7 @@ Deminutae}
 @item
 @code{2. Virga}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2858,7 +3327,7 @@ Deminutae}
 @item
 @code{3. Apostropha vel Stropha}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2869,7 +3338,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2884,7 +3353,7 @@ Deminutae}
 @item
 @code{4. Oriscus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2900,7 +3369,7 @@ Deminutae}
 @item
 @code{5. Clivis vel Flexa}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2911,7 +3380,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=2.0\cm]
+@lilypond[staffsize=26,line-width=2.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2926,7 +3395,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2940,7 +3409,7 @@ Deminutae}
 @item
 @code{6. Podatus vel Pes}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2951,7 +3420,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=2.0\cm]
+@lilypond[staffsize=26,line-width=2.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2966,7 +3435,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2980,7 +3449,7 @@ Deminutae}
 @item
 @code{7. Pes Quassus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -2991,7 +3460,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3006,7 +3475,7 @@ Deminutae}
 @item
 @code{8. Quilisma Pes}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3017,7 +3486,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3032,7 +3501,7 @@ Deminutae}
 @item
 @code{9. Podatus Initio Debilis}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3043,7 +3512,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3058,7 +3527,7 @@ Deminutae}
 @item
 @code{10. Torculus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3069,7 +3538,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3080,7 +3549,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3094,7 +3563,7 @@ Deminutae}
 @item
 @code{11. Torculus Initio Debilis}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3105,7 +3574,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3116,7 +3585,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3130,7 +3599,7 @@ Deminutae}
 @item
 @code{12. Porrectus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3141,7 +3610,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3152,7 +3621,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3166,7 +3635,7 @@ Deminutae}
 @item
 @code{13. Climacus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3178,7 +3647,7 @@ Deminutae}
 }
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3189,7 +3658,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3203,7 +3672,7 @@ Deminutae}
 @item
 @code{14. Scandicus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3214,7 +3683,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3225,7 +3694,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3239,7 +3708,7 @@ Deminutae}
 @item
 @code{15. Salicus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3250,7 +3719,7 @@ Deminutae}
 \layout { \neumeDemoLayout }}
 @end lilypond
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3265,7 +3734,7 @@ Deminutae}
 @item
 @code{16. Trigonus}
 @tab
-@lilypond[staffsize=26,linewidth=1.0\cm]
+@lilypond[staffsize=26,line-width=1.0\cm]
 \include "gregorian-init.ly"
 \score {
   \transpose c c' {
@@ -3619,35 +4088,53 @@ Trigonus
 @code{\[ \stropha b \stropha b \stropha a \]}
 @end multitable
 
+The ligatures listed above mainly serve as a limited, but still
+representative pool of Gregorian ligature examples.  Virtually, within
+the ligature delimiters @code{\[} and @code{\]}, any number of heads
+may be accumulated to form a single ligature, and head prefixes like
+@code{\pes}, @code{\flexa}, @code{\virga}, @code{\inclinatum},
+etc. may be mixed in as desired.  The use of the set of rules that
+underlies the construction of the ligatures in the above table is
+accordingly extrapolated.  This way, infinitely many different
+ligatures can be created.
+
+@c TODO: create a regression or tips & tricks example document with
+@c even more Gregorian ligatures, and add a link to this document
+@c here.
+
 @refcommands
 
 The following head prefixes are supported
 
-@cindex @code{\virga}
+@findex \virga
 @code{\virga},
-@cindex @code{\stropha}
+@findex \stropha
 @code{\stropha},
-@cindex @code{\inclinatum}
+@findex \inclinatum
 @code{\inclinatum},
-@cindex @code{\auctum}
+@findex \auctum
 @code{\auctum},
-@cindex @code{\descendens}
+@findex \descendens
 @code{\descendens},
-@cindex @code{\ascendens}
+@findex \ascendens
 @code{\ascendens},
-@cindex @code{\oriscus}
+@findex \oriscus
 @code{\oriscus},
-@cindex @code{\quilisma}
+@findex \quilisma
 @code{\quilisma},
-@cindex @code{\deminutum}
-@code{\deminutum}.
+@findex \deminutum
+@code{\deminutum},
+@findex \cavum
+@code{\cavum},
+@findex \linea
+@code{\linea}.
 
 Head prefixes can be accumulated, though restrictions apply.  For
 example, either @code{\descendens} or @code{\ascendens} can be applied
 to a head, but not both to the same head.
 
-@cindex @code{\pes}
-@cindex @code{\flexa}
+@findex \pes
+@findex \flexa
 Two adjacent heads can be tied together with the @code{\pes} and
 @code{\flexa} infix commands for a rising and falling line of melody,
 respectively.
@@ -3667,11 +4154,11 @@ initialize all relevant context properties and grob properties to
 proper values, so you can immediately go ahead entering the chant, as
 the following excerpt demonstrates
 
-@lilypond[quote,raggedright,packed,verbatim]
+@lilypond[quote,ragged-right,packed,verbatim]
 \include "gregorian-init.ly"
 \score {
   <<
-    \context VaticanaVoice = "cantus" {
+    \new VaticanaVoice = "cantus" {
       \override Staff.StaffSymbol #'color = #red
       \override Staff.LedgerLineSpanner #'color = #red
       \override Score.BarNumber #'transparent = ##t {
@@ -3684,7 +4171,7 @@ the following excerpt demonstrates
         \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima
       }
     }
-    \lyricsto "cantus" \new Lyrics {
+    \new Lyrics \lyricsto "cantus" {
       San- ctus, San- ctus, San- ctus
     }
   >>
@@ -3704,10 +4191,10 @@ style.  These contexts initialize all relevant context properties and
 grob properties to proper values, so you can immediately go ahead
 entering the chant, as the following excerpt demonstrates
 
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
 \score {
   <<
-    \context MensuralVoice = "discantus" \transpose c c' {
+    \new MensuralVoice = "discantus" \transpose c c' {
       \override Score.BarNumber #'transparent = ##t {
         c'1\melisma bes a g\melismaEnd
         f\breve
@@ -3717,13 +4204,39 @@ entering the chant, as the following excerpt demonstrates
         fis\longa^\signumcongruentiae
       }
     }
-    \lyricsto "discantus" \new Lyrics {
+    \new Lyrics \lyricsto "discantus" {
       San -- ctus, San -- ctus, San -- ctus
     }
   >>
 }
 @end lilypond
 
+@node Musica ficta accidentals
+@subsection Musica ficta accidentals
+
+In European music from before about 1600, singers were often expected
+to chromatically alter notes at their own initiative. This is called
+``Musica Ficta''. In modern transcriptions, these accidentals are
+usually printed over the note.
+
+@cindex Accidental, musica ficta
+@cindex Musica ficta
+
+Support for such suggested accidentals is included, and can be
+switched on by setting @code{suggestAccidentals} to true.
+
+@findex suggestAccidentals
+
+@lilypond[verbatim,fragment,relative=1]
+fis gis
+\set suggestAccidentals = ##t
+ais bis
+@end lilypond
+
+@seealso
+
+Program reference: @internalsref{Accidental_engraver} engraver and the
+@internalsref{AccidentalSuggestion} object.
 
 @node Figured bass
 @subsection Figured bass
@@ -3733,15 +4246,15 @@ entering the chant, as the following excerpt demonstrates
 @c TODO: musicological blurb about FB
 
 
-LilyPond has limited support for figured bass
+LilyPond has support for figured bass
 
-@lilypond[quote,raggedright,verbatim,fragment]
+@lilypond[quote,ragged-right,verbatim,fragment]
 <<
-  \context Voice { \clef bass dis4 c d ais g fis}
-  \context FiguredBass \figuremode {
-    < 6 >4 < 7 >8 < 6+ [_!] >
+  \new Voice { \clef bass dis4 c d ais g fis}
+  \new FiguredBass \figuremode {
+    < 6 >4 < 7\+ >8 < 6+ [_!] >
     < 6 >4 <6 5 [3+] >
-    < _ >4 < 6 >4
+    < _ >4 < 6 5/>4
   }
 >>
 @end lilypond
@@ -3756,40 +4269,110 @@ In figures input mode, a group of bass figures is delimited by
 @example
 <4 6>
 @end example
-@lilypond[quote,raggedright,fragment]
-\context FiguredBass
+@lilypond[quote,ragged-right,fragment]
+\new FiguredBass
 \figuremode { <4 6> }
 @end lilypond
 
 Accidentals are added when you append @code{-}, @code{!}, and @code{+}
-to the numbers
+to the numbers.  A plus sign is added when you append @code{\+}, and
+diminished fifths and sevenths can be obtained with @code{5/} and @code{7/}.
 
 @example
-<4- 6+ 7!>
+<4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/>
 @end example
-@lilypond[quote,raggedright,fragment]
-\context FiguredBass
-\figuremode { <4- 6+ 7!> }
+@lilypond[quote,ragged-right,fragment]
+\figures { <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/> }
 @end lilypond
 
-Spaces or dashes may be inserted by using @code{_}.  Brackets are
+Spaces may be inserted by using @code{_}.  Brackets are
 introduced with @code{[} and @code{]}. You can also include text
 strings and text markups, see @ref{Overview of text markup commands}.
 
 @example
-< [4 6] 8 [_! 12] > < 5 \markup @{ + \number 6 @} >
+< [4 6] 8 [_! 12] > < 5 \markup @{ \number 6 \super (1) @} >
 @end example
-@lilypond[quote,raggedright,fragment]
-\context FiguredBass
-\figuremode { < [4 6] 8 [_! 12] > < 5 \markup{ + \number 6 } > }
+@lilypond[quote,ragged-right,fragment]
+\new FiguredBass
+\figuremode { < [4 6] 8 [_! 12] > < 5 \markup{ \tiny \number 6 \super (1)} > }
+@end lilypond
+
+
+It is also possible to use continuation lines for repeated figures,
+
+@lilypond[verbatim,relative=1]
+<<
+  \new Staff {
+    \clef bass
+    c4 c c
+  }
+  \figures {
+    \set useBassFigureExtenders = ##t
+    <4 6> <3 6> <3 7>
+  }
+>>
+@end lilypond
+
+@noindent
+In this case, the extender lines always replace existing figures.
+
+The @code{FiguredBass} context doesn't pay attention to the actual
+bass line. As a consequence, you may have to insert extra figures to
+get extender lines below all notes, and you may have to add @code{\!}
+to avoid getting an extender line, e.g.
+
+@lilypond[relative=1]
+<<
+  \new Voice
+  \figures {
+    \set useBassFigureExtenders = ##t
+    <6 4->4. <6 4->16. <6 4->32 <5>8. r16 <6>8 <6\! 5->
+  }
+  {
+    \clef bass
+    f16. g32 f16. g32 f16. g32 f16. g32 f8. es16 d8 es
+  }
+>>
+@end lilypond
+
+When using continuation lines, common figures are always put in the
+same vertical position. When this is unwanted, you can insert a rest
+with @code{r}. The rest will clear any previous alignment.  For
+example, you can write
+
+@example
+  <4 6>8 r8
+@end example
+
+@noindent
+instead of
+@example
+  <4 6>4
+@end example
+
+Accidentals and plus signs can appear before or after the numbers,
+depending on the @code{figuredBassAlterationDirection} and
+@code{figuredBassPlusDirection}
+properties
+
+@lilypond
+  \figures {
+    <6\+> <5+> <6 4-> r
+    \set figuredBassAlterationDirection = #1
+    <6\+> <5+> <6 4-> r
+    \set figuredBassPlusDirection = #1
+    <6\+> <5+> <6 4-> r
+    \set figuredBassAlterationDirection = #-1
+    <6\+> <5+> <6 4-> r
+  }
 @end lilypond
 
 
 Although the support for figured bass may superficially resemble chord
-support, it works much simpler.  The @code{\figuremode} 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.
+support, it is much simpler.  The @code{\figuremode} 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
@@ -3797,12 +4380,11 @@ vertical spacing of the figures may be set with @code{baseline-skip}.
 
 @seealso
 
-Program reference: @internalsref{BassFigureEvent} music,
-@internalsref{BassFigure} object, and @internalsref{FiguredBass} context.
-
-@refbugs
-
-Slash notation for alterations is not supported.
+Program reference: @internalsref{NewBassFigure},
+@internalsref{BassFigureAlignment}, @internalsref{BassFigureLine},
+@internalsref{BassFigureBracket}, and
+@internalsref{BassFigureContinuation} objects and
+@internalsref{FiguredBass} context.
 
 
 
@@ -3813,7 +4395,6 @@ This section includes extra information for writing for instruments.
 
 @menu
 * Artificial harmonics (strings)::  
-* Stopped notes (guitar)::      
 @end menu
 
 @node Artificial harmonics (strings)
@@ -3824,33 +4405,7 @@ This section includes extra information for writing for instruments.
 Artificial harmonics are notated with a different notehead style.  They
 are entered by marking the harmonic pitch with @code{\harmonic}.
 
-@lilypond[raggedright,verbatim,quote,fragment,relative=1]
+@lilypond[ragged-right,verbatim,quote,fragment,relative=1]
 <c g'\harmonic>4
 @end lilypond
 
-
-@node Stopped notes (guitar)
-@subsection Stopped notes (guitar)
-
-Stopped (X) note heads are used in guitar music to signal a place where the 
-guitarist must play a certain note or chord, with its fingers just 
-touching the strings instead of fully pressing them.  This gives the sound a 
-percussive noise-like sound that still maintains part of the original pitch.
-
-Finger stopped technique is extremely important for rhythm and rock-heavy 
-metal guitarists; the former often uses barré based stopped chords to 
-intermix harmony with rythm, the latters use finger stopping to mute power 
-chords, or charge them with more expression in close-tied power chord stums.
-
-It is also used (even if rarely) in classic guitar music, generally in the 
-melodic line, to provide some rithmic pattern right in the melody.
-
-@lilypond[raggedright,verbatim,quote,fragment,relative=2]
-c4 d
-\override NoteHead #'style = #'cross
-e f
-\revert NoteHead #'style
-e d
-@end lilypond
-
-