]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/refman.itely
($(outdir)/%.1): build man
[lilypond.git] / Documentation / user / refman.itely
index 6573cdec7aa5ab856a2add4ad5248cdc22bef74e..7df47a991a5ca26cab04959151cab2d13c303a92 100644 (file)
@@ -1,4 +1,4 @@
-q@c Note: -*-texinfo-*-
+@c Note: -*-texinfo-*-
 @c
 @c A menu is needed before every deeper *section nesting of @node's; run
 @c     M-x texinfo-all-menus-update
@@ -10,11 +10,6 @@ q@c Note: -*-texinfo-*-
 @node Notation manual
 @chapter Notation manual
 
-@html
-<!--- @@WEB-TITLE@@=Notation manual --->
-@end html
-
-
 @menu
 * Note entry::                  
 * Easier music entry::          
@@ -519,8 +514,8 @@ 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
-used in music aimed at beginners.
+The `easy play' note head includes a note name inside the head.  It is
+used in music aimed at beginners:
 
 @lilypond[singleline,verbatim,26pt]
 \score {
@@ -532,7 +527,7 @@ used in music aimed at beginners.
 The @code{EasyNotation} variable overrides a @internalsref{Score} context.  
 You probably will want to print it with magnification or a
 large font size to make it more readable.  To print with
-magnification, you must create a DVI file (with @file{ly2dvi}) and
+magnification, you must create a DVI file (with @file{lilypond}) and
 then enlarge it with something like @file{dvips -x 2000 file.dvi}.
 See the @code{dvips} documentation for more details.  To print with a
 larger font, see @ref{Font Size}.
@@ -542,8 +537,8 @@ larger font, see @ref{Font Size}.
 @cindex ghostscript
 
 If you view the result with Xdvi, then staff lines will show through
-the letters.  Printing the PostScript file obtained with ly2dvi does
-produce the correct result.
+the letters.  Printing the PostScript file obtained does produce the
+correct result.
 
 
 @node Easier music entry
@@ -565,6 +560,7 @@ shown on screen. See @ref{Point and click} for more information.
 
 @menu
 * Relative octaves::            
+* Octave check::                
 * Bar check::                   
 * Skipping corrected music::    
 * Automatic note splitting ::   
@@ -636,6 +632,45 @@ The relative conversion will not affect @code{\transpose},
 want to use relative within transposed music, you must place an
 additional @code{\relative} inside the @code{\transpose}.
 
+@node Octave check
+@subsection Octave check
+
+
+Octave checks make octave errors easier to correct.
+The syntax is 
+@example
+  \octave @var{pitch}
+@end example
+
+This checks that @var{pitch} (without octave) yields @var{pitch} (with
+octave) in \relative mode. If not, a warning is printed, and the
+octave is corrected, for example, the first check is passed
+successfully.  The second check fails with an error message.  The
+octave is adjusted so the following notes are in the correct octave
+once again.
+@example
+   \relative c' @{
+     e
+     \octave a'
+     \octave b'
+   @}
+@end example
+
+
+The octave of a note following an octave check is determined with
+respect to the note preceding it. In the next fragment, the last note
+is a @code{a'}, above central C. Hence, the @code{\octave} check may
+be deleted without changing the meaning of the piece.
+
+@lilypond[verbatim,fragment] 
+   \relative c' {
+     e
+     \octave b
+     a        
+   }
+@end lilypond
+
+
 
 @node Bar check
 @subsection Bar check
@@ -757,13 +792,18 @@ such as keys, clefs and time signatures.
 
 @cindex adjusting staff symbol
 @cindex StaffSymbol, using \property
-@cindex staff lines, setting number of
 
 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 layout object called
 staff symbol.  
 
+
+@cindex staff lines, setting number of
+@cindex staff lines, setting thickness of
+@cindex thickness of staff lines, setting 
+@cindex number of staff lines, setting 
+
 This object is created whenever a @internalsref{Staff} context is
 created.  The appearance of the staff symbol cannot be changed by
 using @code{\override} or @code{\set}.  At the moment that
@@ -846,25 +886,36 @@ The clef can be set or changed with the @code{\clef} command:
 Supported clef-names include:
 @c Moved standard clefs to the top /MB
 @table @code
+@cindex treble clef
+@cindex violin clef
 @item treble, violin, G, G2
 G clef on 2nd line
 @item alto, C
+@cindex alto clef 
  C clef on 3rd line
 @item tenor
- C clef on 4th line
+@cindex tenor clef 
+ C clef on 4th line. 
 @item bass, F
+@cindex bass clef
  F clef on 4th line
 @item french
+@cindex french clef
  G clef on 1st line, so-called French violin clef
 @item soprano
+@cindex soprano clef
  C clef on 1st line
 @item mezzosoprano
+@cindex mezzosoprano clef
  C clef on 2nd line
 @item baritone
+@cindex baritone clef
  C clef on 5th line
 @item varbaritone
+@cindex varbaritone clef
  F clef on 3rd line
 @item subbass
+@cindex subbass clef
  F clef on 5th line
 @item percussion
  percussion clef
@@ -874,9 +925,12 @@ By adding @code{_8} or @code{^8} to the clef name, the clef is
 transposed one octave down or up, respectively. Argument @var{clefname} 
 must be enclosed in quotes when it contains underscores or digits. For
 example,
-@example
-       \clef "G_8"
-@end example
+
+
+@cindex choral tenor clef  
+@lilypond[verbatim,fragment,relative]
+       \clef "G_8" c4
+@end lilypond
 
 This command is equivalent to setting @code{clefGlyph},
 @code{clefPosition} (which controls the Y position of the clef),
@@ -914,7 +968,7 @@ Internally the @code{set-octavation} function sets the properties
 
 @seealso
 
-@internalsref{OttavaBracket}.
+@internalsref{OttavaSpanner}.
 
 @refbugs
 
@@ -964,7 +1018,7 @@ measure is subdivided in 2, 2, 2 and 3. This is passed to
 @lilypond[verbatim]
 \score { \notes \relative c'' {
    #(set-time-signature 9 8 '(2 2 2 3))
-   g8-[ g-] d-[ d-] g-[ g-] a8-[-( bes g-]-) | 
+   g8[ g] d[ d] g[ g] a8[( bes g]) | 
    #(set-time-signature 5 8 '(3 2))
    a4. g4
    }
@@ -1063,16 +1117,16 @@ c4
 @end lilypond
 
 In scores with many staves, a @code{\bar} command in one staff is
-automatically applied to all staffs. The resulting bar lines are
+automatically applied to all staves. The resulting bar lines are
 connected between different staves of a @internalsref{StaffGroup}:
 @c
 @lilypond[fragment, verbatim]
 < \context StaffGroup <
-  \context Staff = up { e'4 d'
+  \new Staff { e'4 d'
      \bar "||"
      f' e' }
-  \context Staff = down { \clef bass c4 g e g } >
-\context Staff = pedal { \clef bass c2 c2 } >
+  \new Staff { \clef bass c4 g e g } >
+\new Staff { \clef bass c2 c2 } >
 @end lilypond
 
 
@@ -1102,9 +1156,17 @@ You are encouraged to use @code{\repeat} for repetitions.  See
 
 
 The bar line objects that are created at @internalsref{Staff} level
-are called @internalsref{BarLine}, the bar lines that span staffs are
+are called @internalsref{BarLine}, the bar lines that span staves are
 @internalsref{SpanBar}s.
 
+@cindex bar lines at start of system
+@cindex start of system
+
+The barlines at the start of each system are
+@internalsref{SystemStartBar}, @internalsref{SystemStartBrace}, and
+@internalsref{SystemStartBracket}.  They are spanner objects and
+typically must be tuned from a @code{\translator} block.
+
 
 @node Polyphony
 @section Polyphony
@@ -1115,7 +1177,7 @@ is to split chords using the separator @code{\\}.  You can use it for
 small, short-lived voices or for single chords:
 
 @lilypond[verbatim,fragment]
-\context Voice = VA \relative c'' {
+\context Staff \relative c'' {
  c4 < { f d e  } \\ { b c2 } > c4 < g' \\ b, \\  f' \\ d >
 }
 @end lilypond
@@ -1133,9 +1195,9 @@ a stem directions and horizontal shift for each part:
 
 @lilypond[singleline, verbatim]
 \relative c''
-\context Staff < \context Voice = VA { \voiceOne cis2 b  }
-  \context Voice = VB { \voiceThree b4 ais ~ ais4 gis4 } 
-  \context Voice = VC { \voiceTwo fis4~  fis4 f ~ f  } >
+\context Staff < \new Voice { \voiceOne cis2 b  }
+  \new Voice { \voiceThree b4 ais ~ ais4 gis4 } 
+  \new Voice { \voiceTwo fis4~  fis4 f ~ f  } >
 @end lilypond
 
 Normally, note heads with a different number of dots are not merged, but
@@ -1147,7 +1209,7 @@ the @internalsref{NoteCollision} object, they are merged:
      \property Staff.NoteCollision \override
         #'merge-differently-dotted = ##t
      g8 g8
-  } \\ { g8.-[ f16-] g8.-[ f16-] } 
+  } \\ { g8.[ f16] g8.[ f16] } 
   >
 @end lilypond
 
@@ -1253,7 +1315,7 @@ point are marked with @code{[} and @code{]}:
 
 @lilypond[fragment,relative,verbatim]
   \context Staff {
-    r4 r8-[ g' a r8-] r8 g-[ | a-] r8
+    r4 r8[ g' a r8] r8 g[ | a] r8
   }
 @end lilypond
 
@@ -1267,8 +1329,8 @@ is set, its value will be used only once, and then it is erased.
 
 @lilypond[fragment,relative,verbatim]
   \context Staff {
-    f8-[ r16 f g a-]
-    f8-[ r16 \property Voice.stemLeftBeamCount = #1 f g a-]
+    f8[ r16 f g a]
+    f8[ r16 \property Voice.stemLeftBeamCount = #1 f g a]
   }
 @end lilypond
 @cindex @code{stemRightBeamCount}
@@ -1282,11 +1344,11 @@ but it take less typing:
 
 
 @lilypond[relative=1,verbatim,noindent]
-        c16-[ c c c c c c c-]
+        c16[ c c c c c c c]
         \property Voice.subdivideBeams = ##t
-        c16-[ c c c c c c c-]
+        c16[ c c c c c c c]
         \property Score.beatLength = #(ly:make-moment 1 8)
-        c16-[ c c c c c c c-]
+        c16[ c c c c c c c]
 @end lilypond
 @cindex subdivideBeams
 
@@ -1294,6 +1356,12 @@ Kneed beams are inserted automatically, when a large gap is detected
 between the note heads.  This behavior can be tuned through the object
 property @code{auto-knee-gap}.
 
+Normally, line breaks are forbidden when beams cross bar lines.  This
+behavior can be changed by setting @code{allowBeamBreak}.
+
+@cindex @code{allowBeamBreak}
+@cindex beams and line breaks
+
 @cindex beams, kneed
 @cindex kneed beams
 @cindex auto-knee-gap
@@ -1302,10 +1370,10 @@ property @code{auto-knee-gap}.
 
 @refbugs
 
-@cindex hara kiri
+@cindex Frenched staves
+
+Automatically kneed beams cannot be used together with hidden staves.
 
-Automatically kneed beams cannot be used together with Hara Kiri
-staves.
 
 
 @menu
@@ -1417,14 +1485,21 @@ automatic beaming. This is done by setting @code{Voice.autoBeaming} to
 
 @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 will have to specify manual beams to get:
+The rules for ending a beam depend on the shortest note in a beam.
+So, while it is possible to have different ending rules for eight
+beams and sixteenth beams, a beam that contains both eight and
+sixteenth notes will use the rules for the sixteenth beam.
+
+In the example below, the autobeamer makes eight beams and sixteenth
+end at 3 eights; the third beam can only be corrected by specifying
+manual beaming.
 
 @lilypond[singleline,fragment,relative,noverbatim,quote]
   \property Voice.autoBeamSettings
   \override #'(end * * * *) = #(ly:make-moment 3 8)
-  \time 12/8 c'8 c c c16 c c c c c c-[ c c c-] c8 c c4
+  % rather show case where it goes wrong
+  %\time 12/8 c'8 c c c16 c c c c c c[ c c c] c8[ c] c4
+  \time 12/8 c'8 c c c16 c c c c c c c c c c8 c c4
 @end lilypond
 It is not possible to specify beaming parameters that act differently in
 different parts of a measure. This means that it is not possible to use
@@ -1461,26 +1536,26 @@ creation of the piano staff:
 @example
 \score @{
     \notes \relative c'' <
-        \context Staff = sa @{ cis4 d e2 @}
+        \new Staff @{ cis4 d e2 @}
         \context GrandStaff <
             \pianoAccidentals
-            \context Staff = sb @{ cis4 d e2 @}
-            \context Staff = sc @{ es2 c @}
+            \new Staff @{ cis4 d e2 @}
+            \new Staff @{ es2 c @}
         >
-        \context Staff = sd @{ es2 c @}
+        \new Staff @{ es2 c @}
     >
 @}
 @end example
 @lilypond[singleline]
 \score {
     \notes \relative c'' <
-        \context Staff = sa { cis4 d e2 }
+        \new Staff { cis4 d e2 }
         \context GrandStaff <
             \pianoAccidentals
-            \context Staff = sb { cis4 d e2 }
-            \context Staff = sc { es2 c }
+            \new Staff { cis4 d e2 }
+            \new Staff { es2 c }
         >
-        \context Staff = sd { es2 c }
+        \new Staff { es2 c }
     >
     \paper {
         \translator {
@@ -1702,8 +1777,8 @@ 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-)
-  <<c' e'>>2-( <<b d'>>2-)
+  f'( g')( a') a'8[ b'(] a'4 g'2 f'4)
+  <<c' e'>>2( <<b d'>>2)
 @end lilypond
 
 
@@ -1720,9 +1795,9 @@ the attachment type of the left and right end points:
 @lilypond[fragment,relative,verbatim]
   \slurUp
   \property Voice.Stem \set #'length = #5.5
-  g'8-(g g4-)
+  g'8(g g4)
   \property Voice.Slur \set #'attachment = #'(stem . stem)
-  g8-( g g4-)
+  g8( g g4)
 @end lilypond
 
 If a slur would strike through a stem or beam, the slur will be moved
@@ -1731,9 +1806,9 @@ stems might look better:
 
 @lilypond[fragment,relative,verbatim]
   \stemUp \slurUp
-  d32-( d'4 d8..-)
+  d32( d'4 d8..)
   \property Voice.Slur \set #'attachment = #'(stem . stem)
-  d,32-( d'4 d8..-)
+  d,32( d'4 d8..)
 @end lilypond
 
 @refcommands
@@ -1775,7 +1850,7 @@ indicate a musical sentence. It is started using @code{\(} and @code{\)}
 respectively:
 
 @lilypond[fragment,verbatim,center,relative]
-  \time 6/4 c'-\(  d-( e-) f-( e-)  d-\) 
+  \time 6/4 c'\(  d( e) f( e)  d\) 
 @end lilypond
 
 Typographically, the phrasing slur behaves almost exactly like a
@@ -1853,7 +1928,7 @@ paper output, a metronome marking is printed:
 
 @seealso
 
-@internalsref{TempoEvent}.
+@internalsref{MetronomeChangeEvent}.
   
 
 
@@ -1874,7 +1949,7 @@ properties:
  \relative c' {  c1 
   \property Voice.TextSpanner \set #'direction = #-1
   \property Voice.TextSpanner \set #'edge-text = #'("rall " . "")
-  c2-\startTextSpan b c-\stopTextSpan a }
+  c2\startTextSpan b c\stopTextSpan a }
 @end lilypond
 
 
@@ -1900,10 +1975,10 @@ To use this, add the @internalsref{Horizontal_bracket_engraver} to
 
 @lilypond[singleline,verbatim]
 \score { \notes \relative c'' {  
-       c4-\startGroup-\startGroup
-       c4-\stopGroup
-       c4-\startGroup
-        c4-\stopGroup-\stopGroup
+       c4\startGroup\startGroup
+       c4\stopGroup
+       c4\startGroup
+        c4\stopGroup\stopGroup
   }
   \paper { \translator {
            \StaffContext \consists "Horizontal_bracket_engraver"
@@ -1931,6 +2006,10 @@ articulation. They are demonstrated here:
 
 @lilypondfile[notexidoc]{script-abbreviations.ly}
 
+The meanings of these shorthands can be changed: see
+@file{ly/script-init.ly} for examples.
+
+
 The script is automatically placed, but if you need to force
 directions, you can use @code{_} to force them down, or @code{^} to
 put them up:
@@ -1938,12 +2017,16 @@ put them up:
   c''4^^ c''4_^
 @end lilypond
 
+Other symbols can be added using the syntax
+@var{note}@code{\}@var{name}, e.g. @code{c4\fermata}. Again, they
+can be forced up or down using @code{^} and @code{_},
+eg.
 
+@lilypond[verbatim,fragment,relative 2]
+  c\fermata c^\fermata c_\fermata
+@end lilypond
 
 
-Other symbols can be added using the syntax
-@var{note}@code{-\}@var{name}, e.g. @code{c4-\fermata}. Again, they
-can be forced up or down using @code{^} and @code{_}:
 
 @cindex accent
 @cindex marcato
@@ -2020,9 +2103,9 @@ For finger changes, use markup texts:
 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-]
+@lilypond[verbatim, singleline, fragment]
+      <<a' a''-3>>8(_\thumb[ <<b' b''-3>>)_\thumb
+      <<c'' c'''-3>>(_\thumb <<d'' d'''-3>>)_\thumb]
 @end lilypond
 
 Fingerings for chords can also be added to individual notes
@@ -2031,14 +2114,14 @@ of the chord by adding them after the pitches:
         << c-1  e-2 g-3 b-5 >> 4
 @end lilypond
 
-Setting @code{fingerHorizontalDirection} will put the fingerings next
-to the note head:
+Setting @code{fingeringOrientations} will put  fingerings next
+to note heads:
 
 @lilypond[verbatim,singleline,fragment,relative=1]
-       \property Voice.fingerHorizontalDirection = #LEFT
-       << c-1  es-2 g-4 bes-5 >> 4
-       \property Voice.fingerHorizontalDirection = #RIGHT
-       << c-1  es-2 g-4 bes-5 >> 4
+       \property Voice.fingeringOrientations = #'(left down)
+       <<c-1 es-2 g-4 bes-5 >> 4
+       \property Voice.fingeringOrientations = #'(up right down)
+       <<c-1 es-2 g-4 bes-5 >> 4
 @end lilypond
         
 @seealso
@@ -2082,33 +2165,62 @@ longer be computed.
 @node Grace notes
 @subsection Grace notes
 
+
+@c should have blurb about accaciatura / appogiatura
+
 @cindex @code{\grace}
 @cindex ornaments
 @cindex grace notes
 
-Grace notes are ornaments that are written out:
+Grace notes are ornaments that are written out.  The most common ones
+are acciaccatura, which should be played as very short.  It is denoted
+by a slurred small note with a slashed stem.  The appoggiatura is a
+grace note that takes a fixed fraction of the main note, is and
+denoted as a slurred note in small print without a slash.
+They are entered with the commands @code{\acciaccatura} and
+@code{\appoggiatura}, as demonstrated in the following example:
+
 
-@lilypond[relative=2,verbatim,fragment] c4 \grace c16 c4 \grace {
-[c16 d16] } c4
+@cindex appoggiatura
+@cindex acciaccatura
+
+@lilypond[relative=2,verbatim,fragment]
+b4 \acciaccatura d8 c4 \appoggiatura e8 d4
+\acciaccatura { g16 f } e4
 @end lilypond
 
-In normal notation, grace notes take up no logical
-time in a measure. Such an idea is practical for normal notation, but
-is not strict enough to put it into a program. The model that LilyPond
-uses for grace notes internally is that all timing is done in two
-steps:
+Both are special forms of the @code{\grace} command. By prefixing this
+keyword to a music expression, a new one is formed, which will be
+printed in a smaller font and takes up no logical time in a measure.
+@lilypond[relative=2,verbatim,fragment]
+  c4 \grace c16 c4 \grace {
+  c16[ d16] } c2 c4
+@end lilypond
+Unlike @code{\acciaccatura} and @code{\appoggiatura}, the
+@code{\grace} command does not start a slur.
 
-Every point in musical time consists of two rational numbers: one
+Internally, timing for grace notes is done using a second, `grace'
+time. Every point in time consists of two rational numbers: one
 denotes the logical time, one denotes the grace timing. The above
 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)"
+@lilypond[singleline]
+<
+  \relative c''{ 
+  c4  \grace c16  c4  \grace {
+  c16[  d16] } c4
   }
-\paper {  linewidth = 12.\cm }
-}
+  \new Lyrics \lyrics {
+      \markup { (0,0)  } 4
+      \grace { \markup {
+         ( \fraction 1 4 ,  \fraction -1 16 ) } 16 }
+      \markup { (\fraction 1 4 , 0 ) } 4
+      \grace {
+         \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16
+         \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16
+         } 
+      \markup { ( \fraction 2 4 , 0 ) }
+  } >
 @end lilypond
 
 
@@ -2117,44 +2229,19 @@ In the following example, there are two sixteenth graces notes for
 every eighth grace note:
 
 @lilypond[relative=2,verbatim,fragment] 
-< \context Staff = SA { e4 \grace { c16-[ d e f-] } e4 }
-  \context Staff = SB { c'4 \grace { g8-[ b-] } c4 } >
+< \new Staff { e4 \grace { c16[ d e f] } e4 }
+  \new Staff { c'4 \grace { g8[ b] } c4 } >
 @end lilypond
 
 
-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}. 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}:
-
-@cindex slash
-@cindex grace slash
-
-@lilypond[fragment,verbatim]
-\relative c'' \context Voice {
-  \grace c8 c4 \grace { c16-[ c16-] } c4
-  \grace { 
-    \property Voice.Stem \override #'stroke-style = #'() 
-    c16 
-    \property Voice.Stem \revert #'stroke-style
-  } c4
-}
-@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-] } } >
-   )c4
+     { s2 \grace { c16[ d] } } >
+   c4)
 }
 @end lilypond
 
@@ -2162,29 +2249,42 @@ is to put the grace notes before a phantom ``space note'', e.g.
 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
-@code{\grace} section.  For example, if you specify \slurUp
-@emph{before} your @code{\grace} section, a slur which starts inside
-the @code{\grace} will not be forced up, even if the slur ends outside
-of the @code{\grace}.  Note the difference between the first and
-second bars in this example:
 
-@lilypond[fragment,verbatim]
-\relative c'' \context Voice {
-    \slurUp
-    \grace {
-        a4-( }
-    ) a4 a4-( a2-)
-    \slurBoth
-
-    \grace {
-        \slurUp
-        a4-( }
-    ) a4 a4-( a2-)
-    \slurBoth
+A @code{\grace} section will introduce special typesetting settings,
+for example, to produce smaller type, and set directions. Hence, when
+introducing layout tweaks, they should be inside the grace section,
+for example,
+@lilypond[fragment,verbatim,relative 2]
+\new Voice {
+    \acciaccatura {
+      \property Voice.Stem \override #'direction = #-1
+      f16->
+      \property Voice.Stem \revert #'direction
+    }
+    g4
 }
 @end lilypond
+The overrides should also be reverted inside the grace section.
+
+If the layout of grace sections must be changed throughout the music,
+then this can be accomplished through the function
+@code{add-grace-property}. The following example
+undefines the Stem direction  grace section, so stems do not always
+point up.
+
+@example
+  \new Staff @{
+     #(add-grace-property "Voice" Stem direction '())
+     @dots{}
+  @}
+@end example
+
+@noindent
+Another option is to change the variables @code{startGraceMusic},
+@code{stopGraceMusic}, @code{startAccacciaturaMusic},
+@code{stopAccacciaturaMusic}, @code{startAppoggiaturaMusic},
+@code{stopAppoggiaturaMstuic}.  More information is in the file
+@file{ly/grace-init.ly}
 
 
 @seealso
@@ -2197,24 +2297,23 @@ 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.
+note end up on different staves.
 
 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, for example,
 
 @lilypond[relative=2,verbatim,fragment]
-< \context Staff = SA { e4 \bar "|:" \grace c16 d4 }
-  \context Staff = SB { c4 \bar "|:"  d4 } >
+< \new Staff { e4 \bar "|:" \grace c16 d4 }
+  \new Staff { c4 \bar "|:"  d4 } >
 @end lilypond
 
 Grace sections should only be used within sequential music
 expressions.  Nesting or juxtaposing grace sections is not supported,
 and might produce crashes or other errors.
 
-Overriding settings for grace music globally cannot be done in a
-modular way. A kludge (@code{add-to-grace-init}) is defined in
-@file{ly/grace-init.ly}.
+Overriding settings cannot be done in separate styles for appoggiatura
+and acciaccatura.
 
 
 @node Glissando 
@@ -2232,7 +2331,7 @@ A glissando line can be requested by attaching a @code{\glissando} to
 a note:
 
 @lilypond[fragment,relative,verbatim]
-  c'-\glissando c'
+  c'\glissando c'
 @end lilypond
 
 @seealso
@@ -2270,14 +2369,14 @@ Additional texts (such as @emph{gliss.}) is not supported.
 
 
 Absolute dynamic marks are specified using an variable after a
-note: @code{c4-\ff}.  The available dynamic marks are @code{\ppp},
+note: @code{c4\ff}.  The available dynamic marks are @code{\ppp},
 @code{\pp}, @code{\p}, @code{\mp}, @code{\mf}, @code{\f}, @code{\ff},
 @code{\fff}, @code{\fff}, @code{\fp}, @code{\sf}, @code{\sff},
 @code{\sp}, @code{\spp}, @code{\sfz}, and @code{\rfz}:
 
 @lilypond[verbatim,singleline,fragment,relative]
-  c'-\ppp c-\pp c -\p c-\mp c-\mf c-\f c-\ff c-\fff
-  c2-\sf c-\rfz
+  c'\ppp c\pp c \p c\mp c\mf c\f c\ff c\fff
+  c2\sf c\rfz
 @end lilypond
 
 @cindex @code{\cr}
@@ -2296,11 +2395,11 @@ with @code{\!}.  Because these marks are bound to notes, if you must
 use spacer notes 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-\! } >
+  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 them, for
+in @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
 example:
 
 @example
@@ -2322,7 +2421,7 @@ You can also supply your own texts:
   \context Voice {
     \property Voice.crescendoText = \markup { \italic "cresc. poco" }
     \property Voice.crescendoSpanner = #'dashed-line
-    a'2-\mf-\< a a a-\!
+    a'2\mf\< a a a\!
   }
 @end lilypond
 
@@ -2650,8 +2749,8 @@ down = \notes { bassdrum4 snare8 bd r bd sn4 }
 \score {
     \apply #(drums->paper 'drums) \context Staff <
         \clef percussion
-        \context Voice = up { \voiceOne \up }
-        \context Voice = down { \voiceTwo \down }
+        \new Voice { \voiceOne \up }
+        \new Voice { \voiceTwo \down }
     >
 }
 
@@ -2841,8 +2940,8 @@ down = \notes { bd4 sn bd toml8 toml }
 \score {    
     \apply #(drums->paper 'mydrums) \context Staff <
         \clef percussion
-        \context Voice = up { \voiceOne \up }
-        \context Voice = down { \voiceTwo \down }
+        \new Voice { \voiceOne \up }
+        \new Voice { \voiceTwo \down }
     >
 }
 @end lilypond
@@ -2870,12 +2969,12 @@ down = \notes { bassdrum4 snare8 bd r bd sn4 }
 bass = \notes \transpose c c,, { a4. e8 r e g e }
 \score {
     <
-        \apply #(drums->paper 'drums) \context Staff = drums <
+        \apply #(drums->paper 'drums) \new Staff <
             \clef percussion
-            \context Voice = up { \voiceOne \up }
-            \context Voice = down { \voiceTwo \down }
+            \new Voice { \voiceOne \up }
+            \new Voice { \voiceTwo \down }
         >
-        \context Staff = bass { \clef "F_8" \bass }
+        \new Staff { \clef "F_8" \bass }
     >
 }
 @end lilypond
@@ -2940,7 +3039,7 @@ it reaches the stem in the upper stave, or vice versa. An example is
 included with the distribution as @inputfileref{input/test,stem-cross-staff.ly}.
 
 Dynamics are not centered, but kludges do exist. See
-@inputfileref{input/templates,piano-dynamics.ly}.
+@inputfileref{input/template,piano-dynamics.ly}.
 
 @cindex cross staff stem
 @cindex stem, cross staff
@@ -2960,7 +3059,10 @@ Voices can switch automatically between the top and the bottom
 staff. The syntax for this is
 @example
   \autochange Staff \context Voice @{ @dots{}@var{music}@dots{} @}
-@end example        
+@end example
+The two staffs of the piano staff must be named @code{up} and
+@code{down}.
+
 The autochanger switches on basis of pitch (central C is the turning
 point), and it looks ahead skipping over rests to switch in
 advance. Here is a practical example:
@@ -3025,7 +3127,7 @@ Piano pedal instruction can be expressed by attaching
 note or chord:
 
 @lilypond[fragment,verbatim]
-  c'4-\sustainDown c'4-\sustainUp
+  c'4\sustainDown c'4\sustainUp
 @end lilypond
 
 What is printed can be modified by setting @code{pedal@var{X}Strings},
@@ -3038,9 +3140,9 @@ Pedals can also be indicated by a sequence of brackets, by setting the
 
 @lilypond[fragment,verbatim]
  \property Staff.pedalSustainStyle = #'bracket
- c''4-\sustainDown d''4 e''4
- a'4-\sustainUp-\sustainDown
- f'4 g'4 a'4-\sustainUp
+ c''4\sustainDown d''4 e''4
+ a'4\sustainUp\sustainDown
+ f'4 g'4 a'4\sustainUp
 @end lilypond
 
 A third style of pedal notation is a mixture of text and brackets,
@@ -3048,9 +3150,9 @@ obtained by setting @code{pedal-type} to @code{mixed}:
 
 @lilypond[fragment,verbatim]
  \property Staff.pedalSustainStyle = #'mixed
-c''4-\sustainDown d''4 e''4
-c'4-\sustainUp-\sustainDown
- f'4 g'4 a'4-\sustainUp
+c''4\sustainDown d''4 e''4
+c'4\sustainUp\sustainDown
+ f'4 g'4 a'4\sustainUp
 @end lilypond
 
 The default `*Ped' style for sustain and damper pedals corresponds to
@@ -3058,7 +3160,7 @@ The default `*Ped' style for sustain and damper pedals corresponds to
 for a sostenuto pedal:
 
 @lilypond[fragment,verbatim]
-c''4-\sostenutoDown d''4 e''4 c'4 f'4 g'4 a'4-\sostenutoUp
+c''4\sostenutoDown d''4 e''4 c'4 f'4 g'4 a'4\sostenutoUp
 @end lilypond
 
 For fine-tuning of the appearance of a pedal bracket, the properties
@@ -3070,8 +3172,8 @@ may be extended to the end of the note head:
 @lilypond[fragment,verbatim]
 \property Staff.PianoPedalBracket \override
    #'shorten-pair = #'(0 . -1.0)
-c''4-\sostenutoDown d''4 e''4 c'4
-f'4 g'4 a'4-\sostenutoUp
+c''4\sostenutoDown d''4 e''4 c'4
+f'4 g'4 a'4\sostenutoUp
 @end lilypond
 
 @node Arpeggio
@@ -3086,7 +3188,7 @@ You can specify an arpeggio sign on a chord by attaching an
 
 
 @lilypond[fragment,relative,verbatim]
-  <<c e g c>>-\arpeggio
+  <<c e g c>>\arpeggio
 @end lilypond
 
 When an arpeggio crosses staves, you attach an arpeggio to the chords
@@ -3096,8 +3198,8 @@ in both staves, and set
 @lilypond[fragment,relative,verbatim]
   \context PianoStaff <
     \property PianoStaff.connectArpeggios = ##t
-    \context Voice = one  { <<c' e g c>>-\arpeggio }
-    \context Voice = other { \clef bass  <<c,, e g>>-\arpeggio }
+    \new Staff  { <<c' e g c>>\arpeggio }
+    \new Staff { \clef bass  <<c,, e g>>\arpeggio }
   >
 @end lilypond
 
@@ -3108,9 +3210,9 @@ arrowhead to the wiggly line.  This can be typeset by setting
 @lilypond[fragment,relative,verbatim]
   \context Voice {
      \property Voice.Arpeggio \set #'arpeggio-direction = #1
-     <<c e g c>>-\arpeggio
+     <<c e g c>>\arpeggio
      \property Voice.Arpeggio \set #'arpeggio-direction = #-1
-     <<c e g c>>-\arpeggio
+     <<c e g c>>\arpeggio
   }
 @end lilypond
 
@@ -3123,7 +3225,7 @@ arpeggiate the chord. To draw these brackets, set the
 @lilypond[fragment,relative,verbatim]
     \property PianoStaff.Arpeggio \override
         #'molecule-callback = \arpeggioBracket
-       <<c' e g c>>-\arpeggio
+       <<c' e g c>>\arpeggio
 @end lilypond
 
 @refcommands
@@ -3301,27 +3403,27 @@ melody and the lyrics with the @code{\addlyrics} expression:
 
 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.
+staves 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 @}
+  \new Lyrics @{ s1 @}
+  \new Staff @{ s1 @}
+  \new Lyrics @{ s1 @}
+  \new Staff @{ 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}
+    \new Staff @emph{the music}
+    \new Lyrics @emph{the lyrics}
 @end example
 
 putting both together, you would get
 @example
 \context ChoirStaff \notes <
-  \context Lyrics = LA @dots{}
-  \context Staff = SB @dots{}
+  \new Lyrics @dots{}
+  \new Staff @dots{}
   \addlyrics @dots{}
 >
 @end example
@@ -3330,12 +3432,12 @@ putting both together, you would get
 @cindex choral score
 
 A complete example of a SATB score setup is in the file
-@inputfileref{input/template,satb}.
+@inputfileref{input/template,satb.ly}.
 
 @seealso
 
 @internalsref{LyricCombineMusic}, @internalsref{Lyrics}, and
-@inputfileref{input/template,satb}.
+@inputfileref{input/template,satb.ly}.
 
 @refbugs
 
@@ -3365,7 +3467,7 @@ To this end, give the @internalsref{Voice} context an identity:
 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}:
+@internalsref{LyricsVoice}s are marked @code{duet-1} and @code{duet-2}:
 @example
   \context LyricsVoice = "duet-1" @{
     Hi, my name is bert. @}
@@ -3478,8 +3580,8 @@ lower = \notes \relative c {
 \score {
   \context ChoirStaff {
     <
-      \context Staff = one { \upper }
-      \context Staff = three { \lower }
+      \new Staff { \upper }
+      \new Staff { \lower }
     >
   }
   \paper {
@@ -3915,14 +4017,15 @@ some common problems in orchestral music.
 * Transpose::                   
 * Multi measure rests::         
 * Automatic part combining::    
-* Frenched scores::             
+* Hiding staves::               
+* Different editions from one source::  
 * 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
+Polyphonic scores consist of many staves. These staves 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
@@ -4025,14 +4128,14 @@ whose source is available as
 
 Bar numbers can collide with the @internalsref{StaffGroup} bracket, if
 there is one at the top. To solve this, the
-@internalsref{padding} property of @internalsref{BarNumber} can be
+@code{padding} property of @internalsref{BarNumber} can be
 used to position the number correctly.
 
 @node Instrument names
 @subsection Instrument names
 
 In an orchestral score, instrument names are printed left side of the
-staffs.
+staves.
 
 This can be achieved by setting @internalsref{Staff}.@code{instrument}
 and @internalsref{Staff}.@code{instr}. This will print a string before
@@ -4047,7 +4150,7 @@ You can also use markup texts to construct more complicated instrument
 names:
 
 @lilypond[fragment,verbatim,singleline]
-  \notes \context Staff = treble {
+  \notes {
     \property Staff.instrument = \markup {
         \column << "Clarinetti"
           { "in B"
@@ -4232,7 +4335,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
@@ -4290,14 +4393,18 @@ measure:
   >
 @end lilypond
 
-The part combiner is slated to be rewritten [TODO: explain why].
+The part combiner is rather buggy, and it will be replaced by a better
+mechanism in the near future.
 
 @cindex @code{Thread_devnull_engraver}
 @cindex @code{Voice_engraver}
 @cindex @code{A2_engraver}
 
-@node Frenched scores
-@subsection Frenched scores
+@node Hiding staves
+@subsection Hiding staves
+
+@cindex Frenched scores
+@cindex Hiding staves
 
 In orchestral scores, staff lines that only have rests are usually
 removed.  This saves some space. This style is called `French Score'.
@@ -4306,9 +4413,8 @@ For @internalsref{Lyrics}, @internalsref{LyricsVoice},
 switched on by default.  When these line of these contexts turn out
 empty after the line-breaking process, they are removed.
 
-
-For normal staffs, a specialized @internalsref{Staff} context is
-available, which does the same: staffs containing nothing (or only
+For normal staves, a specialized @internalsref{Staff} context is
+available, which does the same: staves containing nothing (or only
 multi measure rests) are removed. The context definition is stored in
 @code{\RemoveEmptyStaffContext} variable. Observe how the second staff
 in this example disappears in the second line:
@@ -4317,8 +4423,8 @@ in this example disappears in the second line:
 @lilypond[verbatim]
 \score  {
   \notes \relative c' <
-    \context Staff = SA { e4 f g a \break c1 }
-    \context Staff = SB { c4 d e f \break R1 }
+    \new Staff { e4 f g a \break c1 }
+    \new Staff { c4 d e f \break R1 }
   >
   \paper {
     linewidth = 6.\cm 
@@ -4328,6 +4434,66 @@ in this example disappears in the second line:
 @end lilypond
 
 
+@node Different editions from one source
+@subsection Different editions from one source
+
+The @code{\\tag} command marks music expressions with a name. These
+tagged expressions can be filtered out later.  With this mechanism it
+is possible to make different versions of the same music source.
+
+In the following example, we see two versions of a piece of music, one
+for the full score, and one with cue notes for the instrumental part:
+
+@example
+    c1
+    \relative c' <
+       \tag #'part <
+         R1 \\
+         @{
+             \property Voice.fontSize = #-1
+             c4_"cue" f2 g4 @} 
+        >
+       \tag #'score R1
+     >
+     c1
+@end example
+
+The same can be applied to articulations, texts, etc.: they are
+made by prepending
+@example
+        -\tag #@var{your-tag} 
+@end example
+to an articulation, for example, 
+@example
+    c1-\tag #'part ^4
+@end example
+
+This defines a note with a conditional fingering indication.
+
+By applying the @code{remove-tag} function, tagged expressions can be
+filtered. For example,
+@example
+\simultaneous @{
+        @var{the music}
+       \apply #(remove-tag 'score) @var{the music}
+       \apply #(remove-tag 'part) @var{the music}
+@}
+@end example
+would yield
+
+@lilypondfile[notexidoc]{tag-filter.ly}
+
+The argument of the @code{\tag} command should be a symbol, or a list
+of symbols, for example,
+@example
+  \tag #'(original-part transposed-part) @dots{}
+@end example
+
+@seealso
+
+@inputfileref{input/regression,tag-filter.ly}
+
+
 @node Sound output for transposing instruments
 @subsection Sound output for transposing instruments
 
@@ -4354,49 +4520,233 @@ output:
 @cindex Petrucci
 @cindex mensural
 
-@c [TODO: write introduction on ancient notation]
+@c [TODO: write more comprehensive introduction on ancient notation]
+
+Support for ancient notation is still under heavy development.
+Regardless of all of the current limitations (see the bugs section
+below for details), it currently includes features for mensural
+notation and Gregorian Chant notation.  There is also limited support
+for figured bass notation.
+
+Many graphical objects provide a @code{style} property, see
+@ref{Ancient note heads}, @ref{Ancient accidentals}, @ref{Ancient
+rests}, @ref{Ancient clefs}, @ref{Ancient flags} and @ref{Ancient time
+signatures}.  By manipulating such a grob property, the typographical
+appearance of the affected graphical objects can be accomodated for a
+specific notation flavour without need for introducing any new
+notational concept.
+
+
+Other aspects of ancient notation can not that easily be expressed as
+in terms of just changing a style property of a graphical object.
+Therefore, some notational concepts are introduced specifically for
+ancient notation, see @ref{Custodes}, @ref{Divisiones},
+@ref{Ligatures}, and @ref{Figured bass}.
+
 
 @menu
 * Ancient note heads::          
-* Ancient clefs ::              
+* Ancient accidentals::         
+* Ancient rests::               
+* Ancient clefs::               
+* Ancient flags::               
+* Ancient time signatures::     
 * Custodes::                    
 * Divisiones::                  
 * Ligatures::                   
 * Figured bass::                
+* Vaticana style contexts::     
 @end menu
 
+If this all is way too much of documentation for you, and you just
+want to dive into typesetting without worrying too much about the
+details on how to customize a context, then you may have a look at the
+predefined contexts (see @ref{Vaticana style contexts}).  Use them to
+set up predefined style-specific voice and staff contexts, and
+directly go ahead with the note entry.
+
+@refbugs
+
+Ligatures need special spacing that has not yet been implemented.  As
+a result, there is too much space between ligatures most of the time,
+and line breaking often is unsatisfactory.  Also, lyrics do not
+correctly align with ligatures.
+
+Accidentals must not be printed within a ligature, but instead need to
+be collected and printed in front of it.
+
+Augmentum dots within ligatures are currently not handled correctly.
+
 
 @node Ancient note heads
 @subsection Ancient note heads
 
-To get a longa note head, you have to use mensural note heads. This
-is accomplished by setting the @code{style} property of the
-NoteHead object to @code{mensural}. There is also a note head style
-@code{baroque} which gives mensural note heads for @code{\longa} and
-@code{\breve} but standard note heads for shorter notes:
+@cindex note heads
+
+@syntax
+
+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 NoteHead object to the desired value (@code{baroque},
+@code{neo_mensural} 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{neo_mensural} 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 in particular useful when transcribing mensural
+music, e.g. for the incipit.  The @code{mensural} style finally
+produces note heads that mimick the look of note heads in historic
+printings of the 16th century.
+
+The following example demonstrates the @code{neo_mensural} style:
+
+@lilypond[fragment,singleline,verbatim]
+  \property Voice.NoteHead \set #'style = #'neo_mensural
+  a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
+@end lilypond
+
+When typesetting a piece in Gregorian Chant notation, a Gregorian
+ligature engraver will automatically select the proper note heads,
+such there is no need to explicitly set the note head style.  Still,
+the note head style can be set e.g. to @code{vaticana_punctum} to
+produce punctum neumes.  Similarly, a mensural ligature engraver is
+used to automatically assemble mensural ligatures.  See
+@ref{Ligatures} for how ligature engravers work.
+
+@seealso
+
+@inputfileref{input/regression,note-head-style.ly} gives an overview
+over all available note head styles.
+
+@ref{Percussion staves} use note head styles of their own that are
+frequently used in contemporary music notation.
+
+@node Ancient accidentals
+@subsection Ancient accidentals
+
+@cindex accidentals
+
+@syntax
+
+Use the @code{style} property of grob @internalsref{Accidental} to
+select ancient accidentals.  Currently supported styles are
+@code{mensural}, @code{vaticana}, @code{hufnagel} and @code{medicaea}.
+
+@lilypond[singleline,26pt]
+\score {
+    \notes {
+        \fatText
+        s
+        ^\markup {
+            \column <<
+                "vaticana" 
+                { " " \musicglyph #"accidentals-vaticana-1"
+                  " " \musicglyph #"accidentals-vaticana0" }
+            >>
+           \column <<
+                "medicaea"
+               { " " \musicglyph #"accidentals-medicaea-1" }
+            >>
+           \column <<
+                "hufnagel"
+               { " " \musicglyph #"accidentals-hufnagel-1" }
+            >>
+            \column <<
+                "mensural"
+                { " " \musicglyph #"accidentals-mensural-1"
+                  " " \musicglyph #"accidentals-mensural1" }
+            >>
+        }
+    }
+    \paper {
+       raggedright = ##t 
+        interscoreline = 1
+        \translator {
+            \ScoreContext
+            \remove "Bar_number_engraver"
+        }
+        \translator{
+            \StaffContext
+            \remove "Clef_engraver"
+            \remove "Key_engraver"
+            \remove "Time_signature_engraver"
+            \remove "Staff_symbol_engraver"
+            minimumVerticalExtent = ##f
+        }
+    }
+}
+@end lilypond
+
+As shown, not all accidentals are supported by each style.  When
+trying to access an unsupported accidental, LilyPond will switch to a
+different style, as demonstrated in
+@inputfileref{input/test,ancient-accidentals.ly}.
+
+Similarly to local accidentals, the style of the key signature can be
+controlled by the @code{style} property of the
+@internalsref{KeySignature} grob.
+
+@seealso
+
+@ref{Pitches}, @ref{Chromatic alterations} and @ref{Accidentals} give
+a general introduction into the use of accidentals.  @ref{Key
+signature} gives a general introduction into the use of key
+signatures.
+
+
+@node Ancient rests
+@subsection Ancient rests
+
+@cindex rests
+
+@syntax
+
+Use the @code{style} property of grob @internalsref{Rest} to select
+ancient accidentals.  Currently supported styles are @code{classical},
+@code{neo_mensural} and @code{mensural}.  @code{classical} differs
+from the @code{default} style only in that the quarter rest looks like
+a horizontally mirrored 8th rest.  The @code{neo_mensural} style suits
+well for e.g. the incipit of a transcribed mensural piece of music.
+The @code{mensural} style finally mimicks the appearance of rests as
+in historic prints of the 16th century.
+
+The following example demonstrates the @code{neo_mensural} style:
 
 @lilypond[fragment,singleline,verbatim]
\property Voice.NoteHead \set #'style = #'mensural
- a'\longa
 \property Voice.Rest \set #'style = #'neo_mensural
+  r\longa r\breve r1 r2 r4 r8 r16
 @end lilypond
 
-@node Ancient clefs 
+There are no 32th and 64th rests specifically for the mensural or
+neo-mensural style.  Instead, the rests from the default style will be
+taken.  See @inputfileref{input/test,rests.ly} for a chart of all
+rests.
+
+There are no rests in Gregorian Chant notation; instead, it uses
+@ref{Divisiones}.
+
+@seealso
+
+@ref{Rests} gives a general introduction into the use of rests.
+
+
+@node Ancient clefs
 @subsection Ancient clefs
 
-LilyPond supports a variety of clefs, many of them ancient.
+@cindex clefs
 
-For modern clefs, see section @ref{Clef}.  For the percussion clef, see
-section @ref{Percussion staves}.  For the @code{TAB} clef, see section
-@ref{Tablatures}.
+@syntax
+
+LilyPond supports a variety of clefs, many of them ancient.
 
 The following table shows all ancient clefs that are supported via the
 @code{\clef} command.  Some of the clefs use the same glyph, but
 differ only with respect to the line they are printed on.  In such
 cases, a trailing number in the name is used to enumerate these clefs.
 Still, you can manually force a clef glyph to be typeset on an
-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.
+arbitrary line, as described in @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.
 
 @multitable @columnfractions  .3 .3 .3 .1
 
@@ -4459,7 +4809,7 @@ petrucci style mensural G clef @tab
 @end lilypond
 
 @item
-@code{clefs-mensural_c'} @tab
+@code{clefs-mensural_c} @tab
 historic style mensural C clef @tab
 @code{mensural_c1}, @code{mensural_c2}, @code{mensural_c3},
 @code{mensural_c4} @tab
@@ -4592,6 +4942,155 @@ editions (other than those of Petrucci)''.
 Petrucci used C clefs with differently balanced left-side vertical
 beams, depending on which staffline it is printed.
 
+@seealso
+
+For modern clefs, see @ref{Clef}.  For the percussion clef, see
+@ref{Percussion staves}.  For the @code{TAB} clef, see
+@ref{Tablatures}.
+
+
+@node Ancient flags
+@subsection Ancient flags
+
+@cindex flags
+
+@syntax
+
+Use the @code{flag-style} property of grob @internalsref{Stem} to
+select ancient flags.  Besides the @code{default} flag style,
+currently only @code{mensural} style is supported:
+
+@lilypond[fragment,singleline,verbatim]
+  \property Voice.Stem \set #'flag-style = #'mensural
+  \property Voice.Stem \set #'thickness = #1.0
+  \property Voice.NoteHead \set #'style = #'mensural
+  \autoBeamOff
+  c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8
+  c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
+@end lilypond
+
+Note that the innermost flare of each mensural flag always is
+vertically aligned with a staff line.  If you do not like this
+behaviour, you can set the @code{adjust-if-on-staffline} property of
+grob @internalsref{Stem} to @code{##f}.  Then, the vertical position
+of the end of each flare is different between notes on staff lines and
+notes between staff lines:
+
+@lilypond[fragment,singleline]
+  \property Voice.Stem \set #'flag-style = #'mensural
+  \property Voice.Stem \set #'thickness = #1.0
+  \property Voice.Stem \set #'adjust-if-on-staffline = ##f
+  \property Voice.NoteHead \set #'style = #'mensural
+  \autoBeamOff
+  c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8
+  c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
+@end lilypond
+
+There is no particular flag style for neo-mensural notation.  Hence,
+when typesetting e.g. the incipit of a transcibed piece of mensural
+music, the default flag style should be used.  There are no flags in
+Gregorian Chant notation.
+
+
+@node Ancient time signatures
+@subsection Ancient time signatures
+
+@cindex time signatures
+
+@syntax
+
+There is limited support for mensural time signatures.  Currently, the
+glyphs are hard-wired to particular time fractions.  In other words,
+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
+\score {
+    \notes {
+       \property Score.timing = ##f
+       \property Score.barAlways = ##t
+       s_\markup { "$\\backslash$time 4/4" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural4/4" }
+       s
+       s_\markup { "$\\backslash$time 2/2" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural2/2" }
+       s
+       s_\markup { "$\\backslash$time 6/4" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural6/4" }
+       s
+       s_\markup { "$\\backslash$time 6/8" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural6/8" }
+       \break
+       s_\markup { "$\\backslash$time 3/2" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural3/2" }
+       s
+       s_\markup { "$\\backslash$time 3/4" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural3/4" }
+       s
+       s_\markup { "$\\backslash$time 9/4" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural9/4" }
+        s
+       s_\markup { "$\\backslash$time 9/8" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural9/8" }
+        \break
+       s_\markup { "$\\backslash$time 4/8" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural4/8" }
+       s
+       s_\markup { "$\\backslash$time 2/4" }
+        ^\markup { "       " \musicglyph #"timesig-neo\_mensural2/4" }
+       \break
+    }
+    \paper {
+       indent = 0.0
+       raggedright = ##t
+       \translator {
+           \StaffContext
+           \remove Staff_symbol_engraver
+           \remove Clef_engraver
+           \remove Time_signature_engraver
+       }
+    }
+}
+@end lilypond
+
+Use the @code{style} property of grob @internalsref{TimeSignature} to
+select ancient time signatures.  Currently supported styles are
+@code{neo_mensural} and @code{mensural}.  The above table uses the
+@code{neo_mensural} style.  This style is appropriate e.g. for the
+incipit of transcriptions of mensural pieces.  The @code{mensural}
+style mimicks the look of historical printings of the 16th century.
+
+@inputfileref{input/test,time.ly} gives an overview over all available
+ancient and modern styles.
+
+@seealso
+
+@ref{Time signature} gives a general introduction into the use of time
+signatures.
+
+@refbugs
+
+Mensural signature glyphs are currently mapped to time fractions in a
+hard-wired way.  This mapping is sensible, but still arbitrary: given
+a mensural time signature, the time fraction represents a modern meter
+that usually will be a good choice when transcribing a mensural piece
+of music.  For a particular piece of mensural music, however, the
+mapping may be unsatisfactory.  In particular, the mapping assumes a
+fixed transcription of durations (e.g. brevis = half note in 2/2,
+i.e. 4:1).  Some glyphs (such as the alternate glyph for 6/8 meter)
+are currently not at all accessible through the @code{\time} command.
+
+Mensural time signatures are supported typographically, but not yet
+musically.  The internal representation of durations is currently
+based on a purely binary system; a ternary division such as 1 brevis =
+3 semibrevis (tempus perfectum) or 1 semibrevis = 3 minima (cum
+prolatione maiori) is not correctly handled: event times in ternary
+modes will be badly computed, resulting e.g. in horizontally
+misaligned note heads, and bar checks are likely to erroneously fail.
+
+The syntax and semantics of the @code{\time} command for mensural
+music is subject to change.
 
 @node Custodes
 @subsection Custodes
@@ -4611,6 +5110,8 @@ of musical notation such as contemporary editions of Gregorian chant
 like the @emph{editio vaticana}.  There are different custos glyphs
 used in different flavours of notational style.
 
+@syntax
+
 For typesetting custodes, just put a @internalsref{Custos_engraver} into the
 @internalsref{Staff} context when declaring the @code{\paper} block,
 as shown in the following example:
@@ -4718,9 +5219,7 @@ extensions and should not be used.
 
 @seealso
 
-
-@internalsref{Custos}, @inputfileref{input/test,custos-style.ly} and
-@inputfileref{input/regression,custos.ly}.
+@internalsref{Custos} and @inputfileref{input/regression,custos.ly}.
 
 
 @node Divisiones
@@ -4749,9 +5248,23 @@ and @code{\finalis} at proper places in the input.  Some editions use
 Therefore, @code{gregorian-init.ly} also defines @code{\virgula} and
 @code{\caesura}:
 
-
 @lilypondfile[notexidoc]{divisiones.ly}
 
+@refcommands
+
+@cindex @code{\virgula}
+@code{\virgula},
+@cindex @code{\caesura}
+@code{\caesura},
+@cindex @code{\divisioMinima}
+@code{\divisioMinima},
+@cindex @code{\divisioMaior}
+@code{\divisioMaior},
+@cindex @code{\divisioMaxima}
+@code{\divisioMaxima},
+@cindex @code{\finalis}
+@code{\finalis}.
+
 @seealso
 
 @internalsref{BreathingSign}, @internalsref{BreathingSignEvent},
@@ -4766,24 +5279,25 @@ Therefore, @code{gregorian-init.ly} also defines @code{\virgula} and
 @c down the following paragraph by heart.
 
 In musical terminology, a ligature is a coherent graphical symbol that
-represents at least two different notes.  Ligatures originally appeared
+represents at least two distinct notes.  Ligatures originally appeared
 in the manuscripts of Gregorian chant notation roughly since the 9th
 century as an allusion to the accent symbols of greek lyric poetry to
-denote ascending or descending sequences of notes.  Both, the shape and
-the exact meaning of ligatures changed tremendously during the following
-centuries: In early notation, ligatures were used for monophonic tunes
-(Gregorian chant) and very soon denoted also the way of performance in
-the sense of articulation.  With upcoming multiphony, the need for a
-metric system arised, since multiple voices of a piece have to be
-synchronized some way.  New notation systems were invented that used
-the manifold shapes of ligatures to now denote rhythmical patterns
-(e.g. black mensural notation, mannered notation, ars nova).  With the
-invention of the metric system of the white mensural notation, the need
-for ligatures to denote such patterns disappeared.  Nevertheless,
-ligatures were still in use in the mensural system for a couple of
-decades until they finally disappeared during the late 16th / early 17th
-century.  Still, ligatures have survived in contemporary editions of
-Gregorian chant such as the Editio Vaticana from 1905/08.
+denote ascending or descending sequences of notes.  Both, the shape
+and the exact meaning of ligatures changed tremendously during the
+following centuries: In early notation, ligatures were used for
+monophonic tunes (Gregorian chant) and very soon denoted also the way
+of performance in the sense of articulation.  With upcoming
+multiphony, the need for a metric system arised, since multiple voices
+of a piece have to be synchronized some way.  New notation systems
+were invented that used the manifold shapes of ligatures to now denote
+rhythmical patterns (e.g. black mensural notation, mannered notation,
+ars nova).  With the invention of the metric system of the white
+mensural notation, the need for ligatures to denote such patterns
+disappeared.  Nevertheless, ligatures were still in use in the
+mensural system for a couple of decades until they finally disappeared
+during the late 16th / early 17th century.  Still, ligatures have
+survived in contemporary editions of Gregorian chant such as the
+Editio Vaticana from 1905/08.
 
 @syntax
 
@@ -4823,9 +5337,13 @@ will be added in the future.
 There is limited support for white mensural ligatures.  The
 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 remove the
+complex ligatures.
+
+@syntax
+
+To engrave white mensural ligatures, in the paper block the
+@internalsref{Mensural_ligature_engraver} has to be put into the
+@internalsref{Voice} context, and remove the
 @internalsref{Ligature_bracket_engraver}:
 
 @example
@@ -4899,6 +5417,7 @@ to the following:
 }
 @end lilypond
 
+
 @node Gregorian square neumes ligatures
 @subsubsection Gregorian square neumes ligatures
 
@@ -6275,6 +6794,7 @@ volume of the Antiphonale Romanum (@emph{Liber Hymnarius}), published
 
 @end multitable
 
+@syntax
 
 Unlike most other neumes notation systems, the input language for
 neumes does not necessarily reflect directly the typographical
@@ -6521,6 +7041,39 @@ Trigonus @tab
 
 @end multitable
 
+@refcommands
+
+The following head prefixes are supported:
+
+@cindex @code{\virga}
+@code{\virga},
+@cindex @code{\stropha}
+@code{\stropha},
+@cindex @code{\inclinatum}
+@code{\inclinatum},
+@cindex @code{\auctum}
+@code{\auctum},
+@cindex @code{\descendens}
+@code{\descendens},
+@cindex @code{\ascendens}
+@code{\ascendens},
+@cindex @code{\oriscus}
+@code{\oriscus},
+@cindex @code{\quilisma}
+@code{\quilisma},
+@cindex @code{\deminutum}
+@code{\deminutum}.
+
+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}
+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.
+
 @refbugs
 
 Scandicus Deminutus: Punctum Auctum Ascendens overlaps with
@@ -6528,6 +7081,10 @@ Semivocalis head; this looks awful.
 
 Trigonus: apply equal spacing, regardless of pitch.
 
+Flexa and similar figurae: the left appendix should be adjusted with
+respect to the position of this head (on staffline or on staffspace)
+and the vertical position of the subsequent head.
+
 @node Figured bass
 @subsection Figured bass
 
@@ -6607,6 +7164,37 @@ and @internalsref{FiguredBass} context.
 Slash notation for alterations is not supported.
 
 
+@node Vaticana style contexts
+@subsection Vaticana style contexts
+
+@cindex VaticanaVoiceContext
+@cindex VaticanaStaffContext
+
+The predefined @code{VaticanaVoiceContext} and
+@code{VaticanaStaffContext} can be used to easily engrave a piece of
+Gregorian Chant in the style of the Editio Vaticana.  These contexts
+initialize all relevant context properties and grob properties to
+proper values.  With these contexts, you can immediately go ahead
+entering the chant, as the following short excerpt demonstrates:
+
+@lilypond[raggedright,verbatim,noindent]
+\include "gregorian-init.ly"
+\score {
+  \addlyrics
+  \context VaticanaVoice {
+    \property Score.BarNumber \set #'transparent = ##t
+    \notes {
+      \[ c'( c' \flexa a \] \[ a \flexa \deminutum g) \] f \divisioMinima
+      \[ f( \pes a c' c' \pes d') \] c' \divisioMinima \break
+      \[ c'( c' \flexa a \] \[ a \flexa \deminutum g) \] f \divisioMinima
+    }
+  }
+  \context Lyrics \lyrics {
+    San- ctus, San- ctus, San- ctus
+  }
+}
+@end lilypond
+
 @node Contemporary notation
 @section Contemporary notation
 
@@ -6668,7 +7256,7 @@ looks like:
 
 @lilypondfile[notexidoc]{cluster.ly}
 
-By default, @internalsref{Cluster_engraver} is in the
+By default, @internalsref{Cluster_spanner_engraver} is in the
 @internalsref{Voice} context.  This allows putting ordinary notes and
 clusters together in the same staff, even simultaneously.  In such a
 case no attempt is made to automatically avoid collisions between
@@ -6678,7 +7266,7 @@ ordinary notes and clusters.
 
 @internalsref{ClusterSpanner}, @internalsref{ClusterSpannerBeacon},
 @inputfileref{input/regression,cluster.ly},
-@internalsref{Cluster_engraver}, and @internalsref{ClusterNoteEvent}.
+@internalsref{Cluster_spanner_engraver}, and @internalsref{ClusterNoteEvent}.
 
 @refbugs
 
@@ -7013,6 +7601,9 @@ For the vertical placement, we have to look under
   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
+
+@cindex padding
+@noindent
 below this description, the variable @code{padding} is described as
 @quotation
 @table @code
@@ -7352,7 +7943,12 @@ a markup object as second argument:
  c1^\markup { C \small \raise #1.0 \bold { "9/7+" }}
 @end lilypond
 The argument to @code{\raise} is the vertical displacement amount,
-measured in (global) staff spaces.
+measured in (global) staff spaces.  @code{\raise} and @code{\super}
+raise objects in relation to their surrounding markups. They cannot be
+used to move a single text up or down, when it is above or below a
+note, since the mechanism that positions it next to the note cancels
+any vertical shift. For vertical positioning, use the @code{padding}
+and/or @code{extra-offset} properties.
 
 Other commands taking  single arguments include
 @table @code
@@ -7437,8 +8033,7 @@ their center lines:
 @end lilypond
 
 The markup mechanism is extensible.  Refer to
-@file{scm/new-markup.scm} for more information on extending the markup
-mode.
+@file{scm/new-markup.scm} for more information.
 
 
 
@@ -7457,6 +8052,12 @@ spaced slightly too wide.
 
 Syntax errors for markup mode are confusing.
 
+Markup texts cannot be used in the titling of the @code{\header}
+field. Titles are made by La@TeX{}, so La@TeX{} commands should be used
+for formatting.
+
+
+
 
 @node Global layout
 @section Global layout
@@ -7496,7 +8097,7 @@ are chosen whenever the page gets full.
 @cindex staff distance
 @cindex between staves, distance
 @cindex staffs per page
-
+@cindex space between staves
 
 The height of each system is determined automatically by LilyPond, to
 keep systems from bumping into each other, some minimum distances are
@@ -7579,7 +8180,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
@@ -7742,14 +8343,14 @@ spacing is.
 
 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.
+and are further interpreted by @code{lilypond} wrapper program. It
+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}
@@ -7790,7 +8391,7 @@ the default font, then use the 20 point font.
 
 The file @code{paper16.ly}  will now include a file named @file{a4.ly}, which
 will set the paper variables @code{hsize} and @code{vsize} (used by
-@code{lilypond} and @code{ly2dvi}).
+@code{lilypond-book} and @code{lilypond}).
 
 
 @refcommands
@@ -7801,7 +8402,7 @@ will set the paper variables @code{hsize} and @code{vsize} (used by
 
 @seealso
 
-@ref{Invoking ly2dvi},
+@ref{Invoking lilypond},
 @inputfileref{input/regression,between-systems.ly}, and
 @internalsref{NonMusicalPaperColumn}.
 
@@ -7859,6 +8460,13 @@ simpler.  The @code{\midi} block can contain:
 
 Assignments in the @code{\midi} block are not allowed.
 
+A number followed by a period is interpreted as a real number, so
+for setting the tempo for dotted notes, an extra space should be
+inserted, for example:
+
+@example
+  \midi @{ \tempo 4 . = 120 @} 
+@end example
 
 
 @cindex context definition