]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/pitches.itely
Notation reference: nitpicking on Pitches
[lilypond.git] / Documentation / user / pitches.itely
index 14d6c172a8c699646c51cfe89b1a84e15e08f5a9..384a032d20a16de2b0d5968fdb6f311c065a8b56 100644 (file)
 @node Pitches
 @section Pitches
 
-@lilypondfile[ragged-right,line-width=16\cm,staffsize=16,quote]
+@lilypondfile[quote,ragged-right,line-width=16\cm,staffsize=16]
 {pitches-headword.ly}
 
 This section discusses how to specify the pitch of notes.  There
 are three steps to this process: input, modifying, and output.
 
 @menu
-* Writing pitches::             
-* Changing multiple pitches::   
-* Displaying pitches::          
-* Note heads::                  
+* Writing pitches::
+* Changing multiple pitches::
+* Displaying pitches::
+* Note heads::
 @end menu
 
 
@@ -30,42 +30,40 @@ are three steps to this process: input, modifying, and output.
 This section discusses how to input pitches.
 
 @menu
-* Absolute octave entry::       
-* Relative octave entry::       
-* Accidentals::                 
-* Note names in other languages::  
+* Absolute octave entry::
+* Relative octave entry::
+* Accidentals::
+* Note names in other languages::
 @end menu
 
 
 @node Absolute octave entry
 @unnumberedsubsubsec Absolute octave entry
 
-@cindex Pitch names
+@cindex pitch names
 @cindex pitches
 
-@c don't use @samp here because that might get confused with
-@c octave marks
-A pitch name is specified using lowercase letters @code{a} through
-@code{g}.  An ascending C-major scale is engraved with
+A pitch name is specified using lowercase letters@tie{}@code{a}
+through@tie{}@code{g}.  An ascending C-major scale is engraved
+with
 
-@lilypond[quote,fragment,verbatim,ragged-right]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \clef bass
 c d e f g a b c'
 @end lilypond
 
+@cindex absolute
+@cindex absolute octave specification
+
 There are two different ways to enter these note names with regard
 to octave placement: absolute and relative.  The relative mode
 will in most cases be the most convenient, but the absolute mode
-is more fundamental and will be presented first.
-
-@cindex Absolute
-@cindex Absolute octave specification
+is more fundamental and will be presented first.  In absolute
+mode, every note is placed explicitly in a specific octave.  The
+note names @code{c} to @code{b} are engraved in the octave below
+middle C, as in the previous example.
 
-In absolute mode, every note is placed explicitly in a certain
-octave.  The note names @code{c} to @code{b} are engraved in the
-octave below middle C, as in the previous example.
-
-@lilypond[quote,fragment,verbatim,ragged-right]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \clef treble
 c1
 \clef bass
@@ -77,11 +75,11 @@ c1
 
 If a note should be in another octave than this, an octave
 specification must be given.  It takes the form of a series of
-single quote (@code{'}) or comma (@code{,}) characters.  Each
-@code{'} raises the pitch by one octave; each @code{,} lowers the
-pitch by an octave.
+single quote@tie{}(@code{'}) or comma@tie{}(@code{,}) characters.
+Each@tie{}@code{'} raises the pitch by one octave;
+each@tie{}@code{,} lowers the pitch by an octave.
 
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \clef treble
 c' c'' e' g d'' d' d c
 \clef bass
@@ -90,66 +88,64 @@ c, c,, e, g d,, d, d c
 
 @seealso
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{LedgerLineSpanner},
 @internalsref{NoteHead}.
 
 
 @node Relative octave entry
-@unnumberedsubsubsec Relative octaves entry
+@unnumberedsubsubsec Relative octave entry
 
-@cindex Relative
-@cindex Relative octave specification
+@cindex relative
+@cindex relative octave specification
 @funindex \relative
 
 The absolute mode requires a lot of octave specifications, which
 not only becomes tedious but also easily leads to errors.
 Therefore, it is usually more convenient to let notes be entered
 relative to the previous note.  This is done with the relative
-mode.  
+mode.
 
 @example
 \relative @var{startpitch} @var{musicexpr}
 @end example
 
 In relative mode, each note is assumed to be as close to the
-previous note as possible.  This means that the octave of notes
-that appear in @var{musicexpr} are calculated as follows:
+previous note as possible.  This means that the octave of pitches
+in @var{musicexpr} is calculated as follows:
 
 @itemize
-@item 
-The pitch of the first note is relative to @code{\relative
-@var{startpitch} }.  
-
 @item
-If no octave changing marks are used, the basic interval between a
-note and the one that precedes it is always taken to be a fourth
-or less.
+The pitch of the first note is relative to @code{@var{startpitch}}.
 
 @item
-This distance is determined without regarding alterations or the
-actual sounding pitches; a @code{fisis} following a @code{ceses}
-will be put above the @code{ceses}.  In other words, a
-doubly-augmented fourth is considered a smaller interval than a
-diminished fifth, even though the doubly-augmented fourth spans
-seven semitones while the diminished fifth only spans six
-semitones.
+If no octave changing mark is used on a pitch, its octave is calculated
+so that the interval with the previous note is a fourth or less.  This
+interval is determined without regarding alterations or the actual
+sounding pitches, it is determined only with note names.  For example,
+an augmented fourth is considered a @emph{smaller} interval than a
+diminished fifth, even though these intervals both span six semitones.
+Even @qq{worse}, a doubly-augmented fourth is considered a smaller
+interval than a diminished fifth, even though the doubly-augmented
+fourth spans seven semitones while the diminished fifth only spans six
+semitones; that is why a B-sharp following an F will be put above
+the F.
 
 @item
-The octave changing marks @code{'} and @code{,} can be added to
-raise or lower the pitch by an extra octave from the basic
-interval.
+An octave changing mark@tie{}@code{'} or@tie{}@code{,} can be added to
+respectively raise or lower a pitch by an extra octave, relatively to
+the pitch calculated without octave mark.
 
 @item
-Multiple octave changing marks can be used.  @code{''} will raise
-the pitch by two octaves.
+Multiple octave changing marks can be used.  @code{''}@tie{}will
+raise the pitch by two octaves.
 
-@end itemize 
+@end itemize
 
 Here is the relative mode shown in action:
 
-@lilypond[quote,fragment,ragged-right,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \relative c'' {
   b c d c b c bes a
 }
@@ -158,7 +154,7 @@ Here is the relative mode shown in action:
 Octave changing marks are used for intervals greater than a
 fourth:
 
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \relative c'' {
   c g c f, c' a, e''
 }
@@ -167,7 +163,7 @@ fourth:
 A note sequence without a single octave mark can nevertheless span
 large intervals:
 
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \relative c {
   c f b e a d g
 }
@@ -175,32 +171,34 @@ large intervals:
 
 If the preceding item is a chord, the first note of the chord is
 used as the reference point for the octave placement of a
-following note or chord:
+following note or chord.  Inside of chords the next note is always
+relative to the preceding one.
 
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \relative c' {
   c <c e g>
-  <c' e g>
+  <c' e, g'>
   <c, e' g> c
 }
 @end lilypond
 
 The @var{startpitch} (after @code{\relative}) is a note name in
 absolute mode.  In principle it can be any note name, but common
-practice is to use @code{c} in various octave positions. 
-
-When octaves are specified as above by adding @code{'} and
-@code{,} to pitch names, it is easy to accidentally put a pitch in
-the wrong octave.  The relative octave mode prevents these errors
-since most of the time it is not necessary to indicate any octaves
-at all.  Furthermore, in absolute mode, a single mistake may be
-difficult to spot; in relative mode, a single error puts the rest
-of the piece off by one octave.
-
-LilyPond examines pitches based on the note names -- in other
-words, an augmented fourth is @emph{not} treated the same as a
-diminished fifth.  If we begin at a C, then an F-sharp will be placed a
-higher than the C, while a G-flat will be placed lower than the C.
+practice is to use@tie{}@code{c} in various octave positions or the
+first note of @var{musicexpr}.
+
+When octaves are specified as above by adding@tie{}@code{'}
+and@tie{}@code{,} to pitch names, it is easy to accidentally put a
+pitch in the wrong octave.  The relative octave mode prevents
+these errors since most of the time it is not necessary to
+indicate any octaves at all.  Furthermore, in absolute mode, a
+single mistake may be difficult to spot; in relative mode, a
+single error puts the rest of the piece off by one octave.
+
+As explained above, the octave of pitches is calculated only with the
+note names, regardless of any alterations. Therefore, an F-sharp
+following a C will be placed higher than the C, while a G-flat following
+a C will be placed lower than the C.
 
 @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 c2 fis
@@ -209,7 +207,7 @@ c2 ges
 
 @seealso
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 
 @refbugs
@@ -220,9 +218,10 @@ To use relative within transposed music, an additional
 @code{\relative} must be placed inside @code{\transpose}.
 
 @c DEPRECATED
-If no @var{startpitch} is specified for @code{\relative}, then
-@code{c'} is assumed.  However, this is a deprecated option and
-may disappear in future versions, so its use is discouraged.
+If no @var{startpitch} is specified for @code{\relative},
+then@tie{}@code{c'} is assumed.  However, this is a deprecated
+option and may disappear in future versions, so its use is
+discouraged.
 
 
 
@@ -232,9 +231,9 @@ may disappear in future versions, so its use is discouraged.
 @warning{New users are sometimes confused about accidentals and
 key signatures.  In LilyPond, note names are the raw input; key
 signatures and clefs determine how this raw input is displayed.
-An unaltered note like @code{c} means @q{C natural}, regardless of
-the key signature or clef.  For more information, see
-@rlearning{Accidentals and key signatures}.}
+An unaltered note like@tie{}@code{c} means @q{C natural},
+regardless of the key signature or clef.  For more information,
+see @rlearning{Accidentals and key signatures}.}
 
 @cindex note names, Dutch
 @cindex note names, default
@@ -242,22 +241,22 @@ the key signature or clef.  For more information, see
 A @notation{sharp} pitch is made by adding @code{is} to the name,
 and a @notation{flat} pitch by adding @code{es}.  As you might
 expect, a @notation{double sharp} or @notation{double flat} is
-made by adding @code{isis} or @code{eses}.  This syntax derived
+made by adding @code{isis} or @code{eses}.  This syntax is derived
 from note naming conventions in Nordic and Germanic languages,
 like German and Dutch.  To use other names for accidentals, see
 @ref{Note names in other languages}.
 
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 a2 ais a aes
 a2 aisis a aeses
 @end lilypond
 
 @noindent
-These are the Dutch note names.  In Dutch, @code{aes} is
-contracted to @code{as}, but both forms are accepted.  Similarly,
-both @code{es} and @code{ees} are accepted:
+The above notes are the Dutch note names.  In Dutch, @code{aes} is
+contracted to @code{as}, but both forms are accepted in LilyPond.
+Similarly, both @code{es} and @code{ees} are accepted:
 
-@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 a2 as e es
 @end lilypond
 
@@ -266,7 +265,7 @@ signature.  However, naturals are not encoded into the note name
 syntax with a suffix; a natural pitch is shown as a simple note
 name:
 
-@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 a4 aes a2
 @end lilypond
 
@@ -282,12 +281,13 @@ a4 aes a2
 
 Normally accidentals are printed automatically, but you may also
 print them manually.  A reminder accidental can be forced by
-adding an exclamation mark @code{!} after the pitch.  A cautionary
-accidental (i.e., an accidental within parentheses) can be
-obtained by adding the question mark @code{?} after the pitch.
-These extra accidentals can be used to produce natural signs, too.
+adding an exclamation mark@tie{}@code{!} after the pitch.  A
+cautionary accidental (i.e., an accidental within parentheses) can
+be obtained by adding the question mark@tie{}@code{?} after the
+pitch.  These extra accidentals can be used to produce natural
+signs, too.
 
-@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=1]
 cis cis cis! cis? c c? c! c
 @end lilypond
 
@@ -299,36 +299,33 @@ Half-flats and half-sharps are formed by adding @code{eh} and
 @code{ih}; the following is a series of Cs with increasing
 pitches
 
-@lilypond[verbatim,ragged-right,quote,relative=2,fragment]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 \set Staff.extraNatural = ##f
-ceseh ceh cih cisih
+ceseh ces ceh c cih cis cisih
 @end lilypond
 
-Micro tones are also exported to the MIDI file.
-
 
 @commonprop
 
-In accordance with standard typesetting rules, a natural sign is
-printed before a sharp or flat if a previous accidental needs to
-be canceled.  To change this behavior, use
-
-@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
-ceses4 ces cis c
-\set Staff.extraNatural = ##f
-ceses4 ces cis c
-@end lilypond
-
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{preventing-extra-naturals-from-being-automatically-added.ly}
 
 @seealso
 
-Music glossary: @rglos{sharp}, @rglos{flat}, @rglos{double sharp},
+Music Glossary: @rglos{sharp}, @rglos{flat}, @rglos{double sharp},
 @rglos{double flat}.
 
-Notation reference: @ref{Automatic accidentals}, @ref{Musica ficta
-accidentals}.
+Learning Manual: @rlearning{Accidentals and key signatures}.
+
+Notation Reference: @ref{Automatic accidentals},
+@ref{Musica ficta accidentals},
+@ref{Note names in other languages}.
+
+Snippets: @lsrdir{Pitches},
+@lsr{Pitches,
+dodecaphonic-style-accidentals-for-each-note-including-naturals.ly},
+@lsr{Pitches, makam.ly}.
 
-Snippets: @lsrdir{pitches}
 
 
 @refbugs
@@ -355,38 +352,47 @@ define are:
 @headitem Language
   @tab Note names
   @tab sharp @tab flat @tab double sharp @tab double flat
-@item netherlands.ly
+@item nederlands.ly
   @tab c d e f g a bes b
   @tab -is @tab -es @tab -isis @tab -eses
 @item english.ly
-  @tab c d e f g a bf b 
+  @tab c d e f g a bf b
   @tab -s/-sharp @tab -f/-flat @tab -ss/-x/-sharpsharp
     @tab -ff/-flatflat
 @item deutsch.ly
-  @tab c d e f g a b h 
+  @tab c d e f g a b h
   @tab -is @tab -es @tab -isis @tab -eses
 @item norsk.ly
-  @tab c d e f g a b h 
+  @tab c d e f g a b h
   @tab -iss/-is @tab -ess/-es @tab -ississ/-isis
     @tab -essess/-eses
 @item svenska.ly
-  @tab c d e f g a b h 
+  @tab c d e f g a b h
   @tab -iss @tab -ess @tab -ississ @tab -essess
+@item suomi.ly
+  @tab c d e f g a b h
+  @tab -is @tab -es @tab -isis @tab -eses
 @item italiano.ly
-  @tab do re mi fa sol la sib si 
+  @tab do re mi fa sol la sib si
   @tab -d @tab -b @tab -dd @tab -bb
 @item catalan.ly
-  @tab do re mi fa sol la sib si 
+  @tab do re mi fa sol la sib si
   @tab -d/-s @tab -b @tab -dd/-ss @tab -bb
 @item espanol.ly
-  @tab do re mi fa sol la sib si 
+  @tab do re mi fa sol la sib si
+  @tab -s @tab -b @tab -ss @tab -bb
+@item portugues.ly
+  @tab do re mi fa sol la sib si
   @tab -s @tab -b @tab -ss @tab -bb
+@item vlaams.ly
+  @tab do re mi fa sol la sib si
+  @tab -k @tab -b @tab -kk @tab -bb
 @end multitable
 @end example
 
 @noindent
 Note that in Dutch, German, Norwegian, and Swedish, the flat
-alterations of @code{a} like for example @code{aes} and
+alterations of@tie{}@code{a} like for example @code{aes} and
 @code{aeses} are usually contracted to @code{as} and @code{ases}
 (or more commonly @code{asas}).  Sometimes only these contracted
 names are defined in the corresponding language files (this also
@@ -397,15 +403,9 @@ Some music uses microtones whose alterations are fractions of a
 @q{normal} sharp or flat.  The note names for quartertones defined
 in the various language files are listed in the following table.
 Here the prefixes @q{semi-} and @q{sesqui-} mean @q{half} and
-@q{one and a half}, respectively.  For Norwegian, Swedish, Catalan
-and Spanish no special names have been defined yet.
-
+@q{one and a half}, respectively.  For the other languages no
+special names have been defined yet.
 
-@c What about Turkish Maquam music and similar microtonal systems?
-@c
-@c Note that the term "three-quarter-sharp/-flat" used in lilypond's source code 
-@c is actually misleading since the alteration is in fact one and a half
-@c of a regular sharp/flat.  Whence the naming "sesqui-sharp/-flat" used below.
 
 @example
 @multitable @columnfractions .2 .6 .05 .05 .05 .05
@@ -414,32 +414,34 @@ and Spanish no special names have been defined yet.
   @tab semi- @tab semi- @tab sesqui- @tab sesqui-
 
 @item nederlands.ly
-  @tab c d e f g a bes b 
+  @tab c d e f g a bes b
   @tab -ih @tab -eh @tab -isih @tab -eseh
 @item english.ly
-  @tab c d e f g a bf b 
+  @tab c d e f g a bf b
   @tab -qs @tab -qf @tab -tqs @tab -tqf
 @item deutsch.ly
-  @tab c d e f g a b h 
+  @tab c d e f g a b h
   @tab -ih @tab -eh @tab -isih @tab -eseh
 @c @item norsk.ly
-@c   @tab c d e f g a b h 
+@c   @tab c d e f g a b h
 @c @item svenska.ly
-@c   @tab c d e f g a b h 
+@c   @tab c d e f g a b h
 @item italiano.ly
-  @tab do re mi fa sol la sib si 
+  @tab do re mi fa sol la sib si
   @tab -sd @tab -sb @tab -dsd @tab -bsb
-@c @item catalan.ly 
-@c   @tab do re mi fa sol la sib si 
-@c @item  espanol.ly 
-@c   @tab do re mi fa sol la sib si 
+@c @item catalan.ly
+@c   @tab do re mi fa sol la sib si
+@c @item  espanol.ly
+@c   @tab do re mi fa sol la sib si
+@item portugues.ly
+  @tab do re mi fa sol la sib si
+  @tab -sqt @tab -bqt @tab -stqt @tab -btqt
 @end multitable
 @end example
 
 @seealso
 
-Snippets: @lsrdir{pitches}
-
+Snippets: @lsrdir{Pitches}.
 
 
 @node Changing multiple pitches
@@ -448,17 +450,17 @@ Snippets: @lsrdir{pitches}
 This section discusses how to modify pitches.
 
 @menu
-* Octave check::                
-* Transpose::                   
+* Octave check::
+* Transpose::
 @end menu
 
 @node Octave check
 @unnumberedsubsubsec Octave check
 
-@cindex Octave check
+@cindex octave check
 
 In relative mode, it is easy to forget an octave changing mark.
-Octave checks make such errors easier to correct. A note may be
+Octave checks make such errors easier to correct.  A note may be
 followed by @code{=}@var{quotes} to indicate what its absolute
 octave should be.  In the following example,
 
@@ -467,21 +469,22 @@ octave should be.  In the following example,
 @end example
 
 @noindent
-the @code{d} will generate a warning, because a
-@code{d''} is expected, as indicated by the octave check
-@code{=''}, but a @code{d'} is found, since both @code{c}-@code{g}
-and @code{g}-@code{d} without octavation marks are descending
-fourths.  In the output, the octave is corrected to be a
-@code{d''} and the next note is calculated relative to @code{d''}
-instead of @code{d'}.
+the@tie{}@code{d} will generate a warning, because
+a@tie{}@code{d''} is expected, as indicated by the octave check
+@code{=''}, but a@tie{}@code{d'} is found, since both
+@code{c}-@code{g} and @code{g}-@code{d} without octavation marks
+are descending fourths.  In the output, the octave is corrected to
+be a@tie{}@code{d''} and the next note is calculated relative
+to@tie{}@code{d''} instead of@tie{}@code{d'}.
 
 There is also an octave check that produces no visible output.
-The syntax is:
+The syntax is
 
 @example
 @var{pitch} \octave @var{controlpitch}
 @end example
 
+@noindent
 where @var{pitch} is a regular note within a music expression in
 relative mode and @var{controlpitch} is a pitch in absolute mode.
 This checks that @var{pitch} lies within the octave surrounding
@@ -490,11 +493,12 @@ If this is not the case, a warning is printed and the octave is
 corrected.  The @var{controlpitch} is not printed as a note.
 
 In the example below, the first check passes without incident,
-since the @code{e} (in @code{relative} mode) is within the octave
-range of @code{a'}.  However, the second check produces a warning,
-since the @code{e} is not within the octave range of @code{b'}.
-The warning message is printed, and the octave is adjusted so that
-the following notes are in the correct octave once again.
+since the@tie{}@code{e} (in @code{relative} mode) is within the
+octave range of@tie{}@code{a'}.  However, the second check
+produces a warning, since the@tie{}@code{e} is not within the
+octave range of@tie{}@code{b'}.  The warning message is printed,
+and the octave is adjusted so that the following notes are in the
+correct octave once again.
 
 @example
 \relative c' @{
@@ -508,19 +512,20 @@ the following notes are in the correct octave once again.
 The octave of a note following an @code{\octave} check is
 determined with respect to the note preceding it, as modified by
 the outcome of the octave check.  In the next fragment, the first
-note, an @code{e'}, lies within the octave of @code{b}, and the
-@code{\octave} check passes successfully. The second note is then
-calculated relative to (absolute) @code{e'}, which yields an 
-@code{a'}, above middle C.  In this case, the check had no
-influence on the output of the piece.
-
-The second @code{\octave} check fails: @code{a'} is not within the
-range of @code{b}. A warning is issued, and the last note is
-calculated relative to @code{a}, not to @code{a'}, and we get a
-@code{d'}.  Without the last @code{\octave} check, the last note
-would have been a @code{d''}
-
-@lilypond[quote,ragged-right,verbatim,fragment]
+note, an@tie{}@code{e'}, lies within the octave of@tie{}@code{b},
+and the @code{\octave} check passes successfully.  The second note
+is then calculated relative to (absolute)@tie{}@code{e'}, which
+yields an@tie{}@code{a'}, above middle@tie{}C.  In this case, the
+check had no influence on the output of the piece.
+
+The second @code{\octave} check fails: @code{a'}@tie{}is not
+within the range of@tie{}@code{b}.  A warning is issued, and the
+last note is calculated relative to@tie{}@code{a}, not
+to@tie{}@code{a'}, and we get a@tie{}@code{d'}.  Without the last
+@code{\octave} check, the last note would have been
+a@tie{}@code{d''}.
+
+@lilypond[verbatim,quote,ragged-right,fragment]
 \relative c' {
   e
   \octave b
@@ -532,14 +537,15 @@ would have been a @code{d''}
 
 @seealso
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 
 @node Transpose
 @unnumberedsubsubsec Transpose
 
-@cindex Transpose
-@cindex Transposition of pitches
+@cindex transpose
+@cindex transposition of pitches
+@cindex transposing instruments
 @funindex \transpose
 
 A music expression can be transposed with @code{\transpose}.  The
@@ -549,6 +555,7 @@ syntax is
 \transpose @var{from} @var{to} @var{musicexpr}
 @end example
 
+@noindent
 This means that @var{musicexpr} is transposed by the interval
 between the pitches @var{from} and @var{to}: any note with pitch
 @var{from} is changed to @var{to} and any other note is transposed
@@ -562,18 +569,18 @@ E-major with
 \transpose d e @dots{}
 @end example
 
-Consider a part written for violin (a C instrument).  If this part
-is to be played on the A clarinet (for which an A is notated as a
-C, and thus sounds a minor third lower than notated), the
-following transposition will produce the appropriate part:
+Consider a part written for violin (a C instrument).  If this part is to
+be played on the A clarinet (for which an A is notated as a C, and thus
+sounds a minor third lower than notated), the appropriate part will be
+produces with
 
 @example
-\transpose a c @dots{}
+\transpose a c' @dots{}
 @end example
 
 @code{\transpose} will also transpose key signatures:
 
-@lilypond[quote,ragged-right,verbatim]
+@lilypond[verbatim,quote,ragged-right]
 mus = { \key d \major cis d fis g }
 \new Staff {
   \clef "F" \mus
@@ -589,11 +596,11 @@ up half a tone.  The first version will print sharps and the notes
 will remain on the same scale step, the second version will print
 flats on the scale step above.
 
-@lilypond[quote,ragged-right,verbatim]
-mus = { c d e f }
+@lilypond[verbatim,quote,ragged-right]
+mus = \relative c' { c d e f }
 \new Staff {
-  \transpose c cis { \relative c' \mus }
-  \transpose c des { \relative c' \mus }
+  \transpose c cis { \mus }
+  \transpose c des { \mus }
 }
 @end lilypond
 
@@ -602,26 +609,31 @@ transposing instrument.  The previous examples show how to enter
 pitches in C (or @notation{concert pitch}) and typeset them for a
 transposing instrument, but the opposite is also possible if you
 for example have a set of instrumental parts and want to print a
-conductor's score. For example, when entering music for a B-flat
+conductor's score.  For example, when entering music for a B-flat
 trumpet which begins on a notated E (concert D), one would write:
 
 @example
 musicInBflat = @{ e4 @dots{} @}
-\transpose c bes \musicInBflat
+\transpose c bes, \musicInBflat
 @end example
 
-To print this music in F (e.g., rearranging to a french horn) you
+To print this music in F (e.g., rearranging to a French horn) you
 would wrap the existing music with another @code{\transpose}
 
 @example
 musicInBflat = @{ e4 @dots{} @}
-\transpose f c @{ \transpose c bes \musicInBflat @}
+\transpose f c' @{ \transpose c bes, \musicInBflat @}
 @end example
 
+@commonprop
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{transposing-pitches-with-minimum-accidentals-smart-transpose.ly}
+
+
 @seealso
 
-Snippets: @lsrdir{pitches}, @lsr{scheme,
-transpose-pitches-with-minimum-accidentals.ly}.
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{TransposedMusic}.
 
@@ -630,7 +642,7 @@ Internals Reference: @internalsref{TransposedMusic}.
 If you want to use both @code{\transpose} and @code{\relative},
 you must put @code{\transpose} outside of @code{\relative}, since
 @code{\relative} will have no effect on music that appears inside
-a @code{\transpose}. See the previous example. 
+a @code{\transpose}.  See the previous example.
 
 
 @node Displaying pitches
@@ -639,12 +651,12 @@ a @code{\transpose}. See the previous example.
 This section discusses how to alter the output of pitches.
 
 @menu
-* Clef::                        
-* Key signature::               
-* Ottava brackets::             
-* Instrument transpositions::   
-* Automatic accidentals::       
-* Ambitus::                     
+* Clef::
+* Key signature::
+* Ottava brackets::
+* Instrument transpositions::
+* Automatic accidentals::
+* Ambitus::
 @end menu
 
 @node Clef
@@ -667,29 +679,22 @@ This section discusses how to alter the output of pitches.
 @cindex varbaritone clef
 @cindex subbass clef
 
-The clef is set with the @code{\clef} @var{clefname} 
-command:
+The clef is set with the @code{\clef} @var{clefname} command:
 
-@lilypond[quote,ragged-right,fragment,verbatim]
-<<
-  \new Staff {
-    % treble clef by default
-    c'1^"middle C"
-  }
-  \new Staff {
-    \clef alto
-    c'1^"middle C"
-  }
-  \new Staff {
-    \clef bass
-    c'1^"middle C"
-  }
->>
+@lilypond[verbatim,quote,ragged-right,fragment,relative=1]
+\clef treble
+c2 c
+\clef alto
+c2 c
+\clef tenor
+c2 c
+\clef bass
+c2 c
 @end lilypond
 
 The clef can also be changed inside the staff:
 
-@lilypond[quote,ragged-right,fragment,verbatim]
+@lilypond[verbatim,quote,ragged-right,fragment]
 \new PianoStaff <<
   \new Staff {
     \time 2/4
@@ -700,16 +705,18 @@ The clef can also be changed inside the staff:
   }
   \new Staff {
     \clef bass
-    c,8 r \clef treble g''4
+    c,8 r
+    \clef treble
+    g''4
   }
 >>
 @end lilypond
 
-These same clef symbols are used in different positions on
-the staff to change the range of notes shown by that staff.
-The treble (alto, bass) clef is always positioned to show
-the line on which a g' (c', f) note is printed.
+These same clef symbols are used in different positions on the staff to
+change the range of notes shown by that staff.  The treble (respectively
+alto, bass) clef is always positioned to show the line on which
+a@tie{}@code{g'} (resp. @code{c'}, @code{f}) note is printed.
+
 Supported clefs include
 
 @multitable @columnfractions .4 .6
@@ -719,7 +726,7 @@ G clef (g') on 2nd line
 @item @code{alto, C} @tab
 C clef (c') on 3rd line
 @item @code{tenor} @tab
-C clef (c') on 4th line.
+C clef (c') on 4th line
 @item @code{bass, F} @tab
 F clef (f) on 4th line
 @item @code{french} @tab
@@ -750,94 +757,22 @@ For example,
 
 @cindex choral tenor clef
 
-@lilypond[quote,ragged-right,verbatim,fragment,relative=1]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=1]
 \clef "G_8" c4
 @end lilypond
 
+
 @commonprop
 
-When a clef change takes place at a line break the new clef symbol
-is printed at both the end of the previous line and the beginning
-of the new line by default.  If the warning clef at the end of the
-previous line in not required it can be suppressed by setting the
-@code{explicitClefVisibility} Staff property to the value
-@var{end-of-line-invisible}:  @code{\set
-Staff.explicitClefVisibility = #end-of-line-invisible} The default
-behaviour can be recovered with @code{\unset
-Staff.explicitClefVisibility}
-
-The command @code{\clef "treble_8"} is equivalent to setting
-@code{clefGlyph}, @code{clefPosition} (which controls the Y
-position of the clef), @code{middleCPosition} and
-@code{clefOctavation}.  A clef is printed when either the
-@code{clefGlyph}, @code{clefPosition} or @code{clefOctavation}
-properties are changed.  Note that changing the glyph, the
-position of the clef, or the octavation, does not in itself change
-the position of subsequent notes on the staff: the position of
-middle C must also be specified to do this.  The positional
-parameters are relative to the staff centre line, positive numbers
-displacing upwards, counting 1 for each line and space.  The
-clefOctavation value would normally be set to 7, -7, 15 or -15,
-but other values are not invalid.
-
-The following examples show the possibilities when setting these
-properties manually.  First some manual changes which preserve the
-standard relative positioning of clefs and notes:
-
-@lilypond[quote,ragged-right,verbatim]
-{
-  % The default treble clef
-  c'4
-  % The standard bass clef
-  \set Staff.clefGlyph = #"clefs.F"
-  \set Staff.clefPosition = #2
-  \set Staff.middleCPosition = #6
-  c'4
-  % The baritone clef
-  \set Staff.clefGlyph = #"clefs.C"
-  \set Staff.clefPosition = #4
-  \set Staff.middleCPosition = #4
-  c'4
-  % The standard choral tenor clef
-  \set Staff.clefGlyph = #"clefs.G"
-  \set Staff.clefPosition = #-2
-  \set Staff.clefOctavation = #-7
-  \set Staff.middleCPosition = #1
-  c'4
-  % A non-standard clef
-  \set Staff.clefPosition = #0
-  \set Staff.clefOctavation = #0
-  \set Staff.middleCPosition = #-4
-  c'4
-}
-@end lilypond
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{clefs-commonly-tweaked-properties.ly}
 
-and some which do not:
-
-@lilypond[quote,ragged-right,verbatim]
-{
-  \set Staff.clefGlyph = #"clefs.F"
-  \set Staff.clefPosition = #2
-  c'4
-  \set Staff.clefGlyph = #"clefs.G"
-  c'4
-  \set Staff.clefGlyph = #"clefs.C"
-  c'4
-  \set Staff.clefOctavation = #7
-  c'4
-  \set Staff.clefOctavation = #0
-  \set Staff.clefPosition = #0
-  c'4
-  \set Staff.middleCPosition = #4
-  c'4
-}
-@end lilypond
 
 @seealso
 
-Notation reference: @ref{Ancient clefs}.
+Notation Reference: @ref{Ancient clefs}.
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{Clef}.
 
@@ -845,15 +780,15 @@ Internals Reference: @internalsref{Clef}.
 @node Key signature
 @unnumberedsubsubsec Key signature
 
-@cindex Key signature
+@cindex key signature
 @funindex \key
 
 @warning{New users are sometimes confused about accidentals and
 key signatures.  In LilyPond, note names are the raw input; key
 signatures and clefs determine how this raw input is displayed.
-An unaltered note like @code{c} means @q{C natural}, regardless of
-the key signature or clef.  For more information, see
-@rlearning{Accidentals and key signatures}.}
+An unaltered note like@tie{}@code{c} means @q{C natural},
+regardless of the key signature or clef.  For more information,
+see @rlearning{Accidentals and key signatures}.}
 
 The key signature indicates the tonality in which a piece is
 played.  It is denoted by a set of alterations (flats or sharps)
@@ -863,7 +798,7 @@ Setting or changing the key signature is done with the @code{\key}
 command:
 
 @example
-\key @var{pitch} @var{type}
+\key @var{pitch} @var{mode}
 @end example
 
 @funindex \minor
@@ -878,14 +813,14 @@ command:
 @funindex \dorian
 @cindex church modes
 
-Here, @var{type} should be @code{\major} or @code{\minor} to get
+Here, @var{mode} should be @code{\major} or @code{\minor} to get
 @var{pitch}-major or @var{pitch}-minor, respectively.  You may
-also use the standard mode names (also called @q{church modes}):
+also use the standard mode names, also called @q{church modes}:
 @code{\ionian}, @code{\locrian}, @code{\aeolian},
 @code{\mixolydian}, @code{\lydian}, @code{\phrygian}, and
 @code{\dorian}.
 
-@lilypond[quote,ragged-right,verbatim,relative=2,fragment]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 \key g \major
 f1
 fis
@@ -894,57 +829,23 @@ fis
 
 @commonprop
 
-A natural sign is printed to cancel any previous accidentals.
-This may be altered:
-
-@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-\key d \major
-a b cis d
-\key g \minor
-a bes c d
-\set Staff.printKeyCancellation = ##f
-\key d \major
-a b cis d
-\key g \minor
-a bes c d
-@end lilypond
-
-The @code{\key} command sets the context property
-@code{Staff.keySignature}.  Non-standard key signatures can be
-specified by setting this property directly.  The format of this
-command is a list:
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{preventing-natural-signs-from-being-printed-when-the-key-signature-changes.ly}
 
-@example
-\set Staff.keySignature = #'((@var{octave} .  @var{step}) . @var{alter})
-@end example
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{non-traditional-key-signatures.ly}
 
-@noindent
-where, for each element in the list, @var{octave} specifies the
-octave (0 being the octave from middle C to the B above),
-@var{step} specifies the note within the octave (0 means C and 6
-means B), and @var{alter} is ,SHARP ,FLAT ,DOUBLE-SHARP etc.
-(Note the leading comma.)  Here is an example of a possible key
-signature for generating a whole-tone scale:
-
-@lilypond[quote,ragged-right,verbatim]
-\relative c'
-  \new Staff {
-    \set Staff.keySignature = 
-      #`(((0 .  3) . ,SHARP) ((0 . 5) . ,FLAT) ((0 . 6) . ,FLAT))
-    c d e fis aes bes c
-}
-@end lilypond
 
 @seealso
 
-Music glossary: @rglos{Church mode}, @rglos{scordatura}.
+Music Glossary: @rglos{church mode}, @rglos{scordatura}.
+
+Learning Manual: @rlearning{Accidentals and key signatures}.
 
-Snippets: @lsrdir{pitches},
-FIXME link to snippet 248,
-FIXME link to a snippet about scordatura.
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{KeyCancellation},
-@internalsref{KeySignature}, @internalsref{Key_engraver}
+@internalsref{KeySignature}, @internalsref{Key_engraver}.
 
 
 @node Ottava brackets
@@ -959,14 +860,12 @@ Internals Reference: @internalsref{KeyCancellation},
 @notation{Ottava brackets} introduce an extra transposition of an
 octave for the staff:
 
-@lilypond[quote,ragged-right,verbatim,fragment]
-\relative c''' {
-  a2 b
-  #(set-octavation 1)
-  a b
-  #(set-octavation 0)
-  a b
-}
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+a'2 b
+#(set-octavation 1)
+a b
+#(set-octavation 0)
+a b
 @end lilypond
 
 The @code{set-octavation} function also takes -1 (for 8va bassa),
@@ -976,18 +875,18 @@ Internally the function sets the properties @code{ottavation}
 @code{middleCPosition}.  To override the text of the bracket, set
 @code{ottavation} after invoking @code{set-octavation}, i.e.,
 
-@lilypond[quote,ragged-right,verbatim]
-{
-  #(set-octavation 1)
-  \set Staff.ottavation = #"8"
-  c'''
-}
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+#(set-octavation 1)
+\set Staff.ottavation = #"8"
+c'
 @end lilypond
 
 
 @seealso
 
-Snippets: @lsrdir{pitches}
+Music Glossary: @rglos{ottava}.
+
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{OttavaBracket}.
 
@@ -1031,7 +930,7 @@ instrument in which they are quoted.  For more information about
 quotations, see @ref{Quoting other voices}.
 
 The pitch to use for @code{\transposition} should correspond to
-the real sound heard when a @code{c'} written on the staff is
+the real sound heard when a@tie{}@code{c'} written on the staff is
 played by the transposing instrument.  @code{\transposition}
 should be used when the music is entered from an orchestral part
 written for the instrument.  For example, in classical horn parts,
@@ -1040,26 +939,26 @@ Here are a few notes for a violin and a B-flat clarinet where the
 parts have been entered using the notes and key as they appear in
 each part or the conductor's score:
 
-@lilypond[quote,ragged-right,verbatim]
+@lilypond[verbatim,quote,ragged-right]
 \new GrandStaff <<
-    \new Staff = "Violin I" {
-      \set Staff.instrumentName = "Vln"
-      \set Staff.midiInstrument="violin"
-      \key c \major
-      \transposition c
-      g'4( c''8) r c'' r c''4
-    }
-    \new Staff = "Clarinet" {
-      \set Staff.instrumentName = "Cl"
-      \set Staff.midiInstrument="clarinet"
-      \key d \major
-      \transposition bes
-      a'4( d''8) r d'' r d''4
-    }
+  \new Staff = "Violin I" {
+    \set Staff.instrumentName = "Vln"
+    \set Staff.midiInstrument="violin"
+    \key c \major
+    \transposition c
+    g'4( c''8) r c'' r c''4
+  }
+  \new Staff = "Clarinet" {
+    \set Staff.instrumentName = "Cl"
+    \set Staff.midiInstrument="clarinet"
+    \key d \major
+    \transposition bes
+    a'4( d''8) r d'' r d''4
+  }
 >>
 @end lilypond
 
-Without the @code{\transposition} command the midi output of this
+Without the @code{\transposition} command the MIDI output of this
 music would play the notes a tone apart; with it the notes are
 played correctly in unison.
 
@@ -1084,20 +983,21 @@ to serve as a reminder that these parts are written in C.
 
 @seealso
 
-Notation reference: @ref{Quoting other voices}, @ref{Transpose}.
+Notation Reference: @ref{Quoting other voices}, @ref{Transpose}.
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 
 @node Automatic accidentals
 @unnumberedsubsubsec Automatic accidentals
-@cindex Automatic accidentals
-
-Common rules for typesetting accidentals have been placed in a
-function.  This function is called as follows
+@cindex automatic accidentals
 
 @funindex set-accidental-style
 
+There are many different conventions on how to typeset
+accidentals.  LilyPond provides a function to specify which such
+accidental style to use.  This function is called as follows
+
 @example
 \new Staff <<
   #(set-accidental-style 'voice)
@@ -1105,80 +1005,152 @@ function.  This function is called as follows
 >>
 @end example
 
-@c TODO: check the context stuff below
-@c -does it *really* work?
-@c -the default contexts as specified in
-@c  scm/music-function.scm seem to be different -vv
-
-If no context name is supplied, the accidental style applies to
-the @code{Staff} by default.  Optionally, the function can take
-the context for which the style should be changed as a second
-argument:
+The accidental style applies to the current @code{Staff} by
+default (with the exception of the styles @code{piano} and
+@code{piano-cautionary}, see below.  Optionally, the function can
+take a second argument which determines in which scope the style
+should be changed.  For example, to use the same style in all
+staves of the current @code{StaffGroup}, use
 
 @example
-#(set-accidental-style 'STYLE #('CONTEXT))
+#(set-accidental-style 'voice 'StaffGroup)
 @end example
 
 The following accidental styles are supported.  To demonstrate
 each style, we use the following example:
 
-@c TODO: a Formatter, please clean this up.
-@lilypond[quote,ragged-right,verbatim]
-musicA = { << \relative { cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
+@lilypond[verbatim,quote,ragged-right]
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
 
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
 
 \new PianoStaff {
-       << \context Staff = "up" {
-           %%% change the next line as desired:
-              %#(set-accidental-style 'default) 
-       \musicA }
-       \context Staff = "down"{
-           %%% change the next line as desired:
-              %#(set-accidental-style 'default)
-       \musicB } >> }
+  <<
+    \context Staff = "up" {
+      %%% change the next line as desired:
+      #(set-accidental-style 'default)
+      \musicA
+    }
+    \context Staff = "down" {
+      %%% change the next line as desired:
+      #(set-accidental-style 'default)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
+Note that the last lines of this example can be replaced by the
+following, as long as the same accidental style should be used in
+both staves.
+@example
+\new PianoStaff @{
+  <<
+    \context Staff = "up" @{
+      %%% change the next line as desired:
+      #(set-accidental-style 'default 'Score)
+      \musicA
+    @}
+    \context Staff = "down" @{
+      \musicB
+    @}
+  >>
+@}
+@end example
+
+
 @c don't use verbatim in this table.
 @table @code
 @item default
 This is the default typesetting behavior.  It corresponds to
-eighteenth-century common practice: Accidentals are remembered to
+eighteenth-century common practice: accidentals are remembered to
 the end of the measure in which they occur and only on their own
 octave.  Thus, in the example below, no natural signs are printed
-before the @code{b} in the second measure or the last @code{c}:
+before the@tie{}@code{b} in the second measure or the
+last@tie{}@code{c}:
 
 @lilypond[quote,ragged-right]
-musicA = { << \relative { cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
 
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
 
 \new PianoStaff {
-       << \context Staff = "up" {
-              %#(set-accidental-style 'default) 
-       \musicA }
-       \context Staff = "down"{
-              %#(set-accidental-style 'default)
-       \musicB } >> }
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'default)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'default)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item voice
-The normal behavior is to remember the accidentals on
-Staff-level.  This variable, however, typesets accidentals
-individually for each voice.  Apart from that, the rule is similar to
+The normal behavior is to remember the accidentals on Staff-level.
+In this style, however, accidentals are typeset individually for
+each voice.  Apart from that, the rule is similar to
 @code{default}.
 
 As a result, accidentals from one voice do not get canceled in
 other voices, which is often an unwanted result: in the following
-example, it is hard to determine whether the second @code{a}
+example, it is hard to determine whether the second@tie{}@code{a}
 should be played natural or sharp.  The @code{voice} option should
 therefore be used only if the voices are to be read solely by
 individual musicians.  If the staff is to be used by one musician
@@ -1187,21 +1159,49 @@ individual musicians.  If the staff is to be used by one musician
 
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'voice) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'voice)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'voice)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'voice)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item modern
@@ -1212,26 +1212,54 @@ century.  It prints the same accidentals as @code{default}, with
 two exceptions which serve to avoid ambiguity: after temporary
 accidentals, cancellation marks are printed also in the following
 measure (for notes in the same octave) and, in the same measure,
-for notes in other octaves.  Hence the naturals before the
-@code{b} and the @code{c} in the second measure of the upper
-staff:
+for notes in other octaves.  Hence the naturals before
+the@tie{}@code{b} and the@tie{}@code{c} in the second measure of
+the upper staff:
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'modern) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'modern)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'modern)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'modern)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item modern-cautionary
@@ -1241,26 +1269,54 @@ This rule is similar to @code{modern}, but the @q{extra}
 accidentals (the ones not typeset by @code{default}) are typeset
 as cautionary accidentals.  They are by default printed with
 parentheses, but they can also be printed in reduced size by
-defining the @code{cautionary-style} property of the
-@internalsref{AccidentalSuggestion} object.
+defining the @code{cautionary-style} property of
+@code{AccidentalSuggestion}.
 
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'modern-cautionary) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'modern-cautionary)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'modern-cautionary)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'modern-cautionary)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item modern-voice
@@ -1269,29 +1325,57 @@ musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4
 This rule is used for multivoice accidentals to be read both by
 musicians playing one voice and musicians playing all voices.
 Accidentals are typeset for each voice, but they @emph{are}
-canceled across voices in the same @internalsref{Staff}.  Hence,
-the @code{a} in the last measure is canceled because the previous
-cancellation was in a different voice, and the @code{d} in the
-lower staff is canceled because of the accidental in a different
-voice in the previous measure:
+canceled across voices in the same @code{Staff}.  Hence,
+the@tie{}@code{a} in the last measure is canceled because the
+previous cancellation was in a different voice, and
+the@tie{}@code{d} in the lower staff is canceled because of the
+accidental in a different voice in the previous measure:
 
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'modern-voice) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'modern-voice)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'modern-voice)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'modern-voice)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @funindex modern-voice-cautionary
@@ -1300,25 +1384,53 @@ musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4
 This rule is the same as @code{modern-voice}, but with the extra
 accidentals (the ones not typeset by @code{voice}) typeset
 as cautionaries.  Even though all accidentals typeset by
-@code{default} @emph{are} typeset by this variable,
+@code{default} @emph{are} typeset with this rule,
 some of them are typeset as cautionaries.
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'modern-voice-cautionary) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'modern-voice-cautionary)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'modern-voice-cautionary)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'modern-voice-cautionary)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item piano
@@ -1327,43 +1439,55 @@ musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4
 This rule reflects twentieth-century practice for piano notation.
 Its behavior is very similar to @code{modern} style, but here
 accidentals also get canceled across the staves in the same
-@internalsref{GrandStaff} or @internalsref{PianoStaff}, hence all
-the cancellations of the final notes.
+GrandStaff or PianoStaff, hence all the cancellations of the final
+notes.
 
-This accidental style takes place in a GrandStaff context.
-However, you have to explicitly set it for @emph{each} individual
-Staff of the GrandStaff:
+This accidental style applies to the current @code{GrandStaff} or
+@code{PianoStaff} by default.
 
+@lilypond[quote,ragged-right]
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
 
-@example
-\new GrandStaff @{ <<
-  \new Staff = "up" @{ <<
-    #(set-accidental-style 'piano)
-    @{ @dots{} @}
-  >> @}
-  \new Staff = "down"@{ <<
-    #(set-accidental-style 'piano)
-  @{ @dots{} @}
-  >> @}
->> @}
-@end example
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
 
-@lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'piano) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'piano)
-       \musicB } >> }
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'piano)
+      \musicA
+    }
+    \context Staff = "down" {
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item piano-cautionary
@@ -1373,21 +1497,48 @@ Same as @code{#(set-accidental-style 'piano)} but with the extra
 accidentals typeset as cautionaries.
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'piano-cautionary) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'piano-cautionary)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'piano-cautionary)
+      \musicA
+    }
+    \context Staff = "down" {
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item no-reset
@@ -1397,21 +1548,49 @@ This is the same as @code{default} but with accidentals lasting
 @q{forever} and not only within the same measure:
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'no-reset) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'no-reset)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'no-reset)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'no-reset)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 
 @item forget
@@ -1423,42 +1602,77 @@ relative to the key signature, regardless of what was before in
 the music:
 
 @lilypond[quote,ragged-right]
-musicA = {  << \relative {  cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\
-       \relative { ais'2 cis, | fis8 b a4 cis2 | } >> }
-
-musicB = { \clef bass  \new Voice { \voiceTwo \relative { < fis, a cis>4 
-       \change Staff = up cis' \change Staff = down <fis, a>  
-       \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis 
-       <f a d>2 |  } }}
-
-       \new PianoStaff {
-       << \context Staff = "up" {
-              #(set-accidental-style 'forget) 
-       \musicA }
-       \context Staff = "down"{
-              #(set-accidental-style 'forget)
-       \musicB } >> }
+musicA = {
+  <<
+    \relative c' {
+      cis'8 fis, d'4 <a cis>8 f bis4 |
+      cis2. <c, g'>4 |
+    }
+    \\
+    \relative c' {
+      ais'2 cis, |
+      fis8 b a4 cis2 |
+    }
+  >>
+}
+
+musicB = {
+  \clef bass
+  \new Voice {
+    \voiceTwo \relative c' {
+      <fis, a cis>4
+      \change Staff = up
+      cis'
+      \change Staff = down
+      <fis, a>
+      \change Staff = up
+      dis' |
+      \change Staff = down
+      <fis, a cis>4 gis <f a d>2 |
+    }
+  }
+}
+
+\new PianoStaff {
+  <<
+    \context Staff = "up" {
+      #(set-accidental-style 'forget)
+      \musicA
+    }
+    \context Staff = "down" {
+      #(set-accidental-style 'forget)
+      \musicB
+    }
+  >>
+}
 @end lilypond
 @end table
 
+@commonprop
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{dodecaphonic-style-accidentals-for-each-note-including-naturals.ly}
+
 
 @seealso
 
-Snippets: @lsrdir{pitches}
+Snippets: @lsrdir{Pitches}.
 
 Internals Reference: @internalsref{Accidental_engraver},
-@internalsref{Accidental}, @internalsref{AccidentalSuggestion} and @internalsref{AccidentalPlacement}.
+@internalsref{Accidental}, @internalsref{AccidentalSuggestion},
+@internalsref{AccidentalPlacement}, @internalsref{GrandStaff} and
+@internalsref{PianoStaff}, @internalsref{Staff}.
 
 
 @refbugs
 
 Simultaneous notes are considered to be entered in sequential
-mode.  This means that in a chord the accidentals are typeset as if the
-notes in the chord happen one at a time, in the order in which
-they appear in the input file.  This is a problem when accidentals
-in a chord depend on each other,
-which does not happen for the default accidental style.  The problem
-can be solved by manually inserting @code{!} and @code{?} for the
+mode.  This means that in a chord the accidentals are typeset as
+if the notes in the chord happen one at a time, in the order in
+which they appear in the input file.  This is a problem when
+accidentals in a chord depend on each other, which does not happen
+for the default accidental style.  The problem can be solved by
+manually inserting@tie{}@code{!} and@tie{}@code{?} for the
 problematic notes.
 
 
@@ -1466,77 +1680,48 @@ problematic notes.
 @unnumberedsubsubsec Ambitus
 @cindex ambitus
 
-The term @notation{ambitus} or @notation{ambit} denotes a range of pitches
-for a given voice in a part of music.  It may also denote the
-pitch range that a musical instrument is capable of playing.
+The term @notation{ambitus} or @notation{ambit} denotes a range of
+pitches for a given voice in a part of music.  It may also denote
+the pitch range that a musical instrument is capable of playing.
 Ambits are printed on vocal parts, so performers can easily
-determine if it meets their capabilities.
+determine if it matches their capabilities.
 
 Ambits are denoted at the beginning of a piece near the initial
 clef.  The range is graphically specified by two note heads that
-represent the minimum and maximum pitch.  To print such ambits,
-add the @internalsref{Ambitus_engraver} to the
-@internalsref{Voice} context, for example:
+represent the minimum and maximum pitch.  Accidentals are only
+printed if they are not part of the key signature.
 
-@lilypond[quote,verbatim,ragged-right]
+@lilypond[verbatim,quote,ragged-right]
 \layout {
   \context {
-    \Staff
+    \Voice
     \consists Ambitus_engraver
   }
 }
 
-\relative \new Staff {
-  as'' c e2 cis,2
+\relative c'' {
+  aes c e2 cis,2
 }
 @end lilypond
 
-If you have multiple voices in a single staff and you want a
-single ambitus per staff rather than per voice, add the
-@internalsref{Ambitus_engraver} to the @internalsref{Staff}
-context rather than to the @internalsref{Voice} context:
 
-@lilypond[verbatim,ragged-right,quote]
-\new Staff \with {
-  \consists "Ambitus_engraver"
-}
-<<
-  \new Voice \with {
-    \remove "Ambitus_engraver"
-  } \relative c'' {
-    \override Ambitus #'X-offset = #-1.0
-    \voiceOne
-    c4 a d e f2
-  }
-  \new Voice \with {
-    \remove "Ambitus_engraver"
-  } \relative c' {
-    \voiceTwo
-    es4 f g as b2
-  }
->>
-@end lilypond
+@commonprop
 
-@noindent
-This example uses one advanced feature,
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{adding-ambiti-per-voice.ly}
 
-@example
-\override Ambitus #'X-offset = #-1.0
-@end example
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{ambiti-multiple-voices.ly}
 
-@noindent
-This code moves the ambitus to the left.  The same effect could
-have been achieved with @code{extra-offset}, but then the
-formatting system would not reserve space for the moved object.
 
 @seealso
 
+Snippets: @lsrdir{Pitches}.
+
 Internals Reference: @internalsref{Ambitus},
 @internalsref{AmbitusLine}, @internalsref{AmbitusNoteHead},
-@internalsref{AmbitusAccidental}.
-
-Snippets: @lsrdir{pitches},
-@lsr{vocal,ambitus@/.ly}.
+@internalsref{AmbitusAccidental}, @internalsref{Ambitus_engraver},
+@internalsref{Staff}, @internalsref{Voice}.
 
 
 @refbugs
@@ -1549,10 +1734,10 @@ ambitus.
 @subsection Note heads
 
 @menu
-* Easy notation note heads::    
-* Shape note heads::            
-* Improvisation::               
-* Special noteheads::           
+* Easy notation note heads::
+* Shape note heads::
+* Improvisation::
+* Special noteheads::
 @end menu
 
 @node Easy notation note heads
@@ -1566,13 +1751,14 @@ ambitus.
 The @q{easy play} note head includes a note name inside the head.
 It is used in music for beginners
 
-@lilypond[quote,ragged-right,verbatim,fragment,staffsize=26]
-  \setEasyHeads
-  c'2 e'4 f' | g'1
+@lilypond[verbatim,quote,ragged-right,fragment,staffsize=26]
+\setEasyHeads
+c'2 e'4 f' |
+g'1
 @end lilypond
 
 The command @code{\setEasyHeads} overrides settings for the
-@internalsref{NoteHead} object.  To make the letters readable, it
+@code{NoteHead} object.  To make the letters readable, it
 has to be printed in a large font size.  To print with a larger
 font, see @ref{Setting the staff size}.
 
@@ -1583,7 +1769,11 @@ font, see @ref{Setting the staff size}.
 
 @seealso
 
-Snippets: @lsrdir{pitches},
+Notation Reference: @ref{Setting the staff size}.
+
+Snippets: @lsrdir{Pitches},
+
+Internals Reference: @internalsref{NoteHead}.
 
 
 @node Shape note heads
@@ -1598,11 +1788,11 @@ notation was popular in nineteenth-century American song books.
 Shape note heads can be produced by setting @code{\aikenHeads} or
 @code{\sacredHarpHeads}, depending on the style desired.
 
-@lilypond[verbatim,relative=1,fragment]
-  \aikenHeads
-  c8 d4 e8 a2 g1
-  \sacredHarpHeads
-  c,8 d4. e8 a2 g1
+@lilypond[verbatim,fragment,relative=1]
+\aikenHeads
+c8 d4 e8 a2 g1
+\sacredHarpHeads
+c,8 d4 e8 a2 g1
 @end lilypond
 
 Shapes are typeset according to the step in the scale, where
@@ -1618,24 +1808,29 @@ Shape note heads are implemented through the
 symbols.  The k-th element indicates the style to use for the k-th
 step of the scale.  Arbitrary combinations are possible, e.g.:
 
-@lilypond[verbatim,relative=1,fragment]
+@lilypond[verbatim,fragment,relative=1]
 \set shapeNoteStyles =
   ##(cross triangle fa #f mensural xcircle diamond)
-c8 d4. e8 a2 g1
+c8 d4 e8 a2 g1
 @end lilypond
 
+@commonprop
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{applying-noteheads-styles-depending-on-the-step-of-the-scale.ly}
+
+
 @seealso
 
-Snippets: @lsrdir{pitches},
+Snippets: @lsrdir{Pitches}.
 
 
 @node Improvisation
 @unnumberedsubsubsec Improvisation
 
 Improvisation is sometimes denoted with slashed note heads.  Such
-note heads can be created by adding a
-@internalsref{Pitch_squash_engraver} to the @internalsref{Voice}
-context.  Then, the following command
+note heads can be created by adding a @code{Pitch_squash_engraver}
+to the @code{Voice} context.  Then, the following command
 
 @example
 \set squashedPosition = #0
@@ -1647,24 +1842,28 @@ switches on the slashes.
 
 There are shortcuts @code{\improvisationOn} (and an accompanying
 @code{\improvisationOff}) for this command sequence.  They are
-used in the following example
+used in the following example:
 
-@lilypond[verbatim,ragged-right,quote]
+@lilypond[verbatim,quote,ragged-right]
 \new Voice \with {
   \consists Pitch_squash_engraver
 } \transpose c c' {
-  e8 e g a a16(bes)(a8) g \improvisationOn
+  e8 e g a a16(bes)(a8) g
+  \improvisationOn
   e8
   ~e2~e8 f4 fis8
-  ~fis2 \improvisationOff a16(bes) a8 g e
+  ~fis2
+  \improvisationOff
+  a16(bes) a8 g e
 }
 @end lilypond
 
 @seealso
 
+Snippets: @lsrdir{Pitches}.
 
-Snippets: @lsrdir{pitches},
-
+Internals Reference: @internalsref{Pitch_squash_engraver},
+@internalsref{Voice}.
 
 @node Special noteheads
 @unnumberedsubsubsec Special noteheads
@@ -1676,9 +1875,9 @@ meanings -- crosses are used for @q{parlato} with vocalists,
 stopped notes on guitar; diamonds are used for harmonics on string
 instruments, etc.  There is a shorthand (@code{\harmonic}) for
 diamond shapes; the other notehead styles are produced by tweaking
-the property 
+the property:
 
-@lilypond[ragged-right,relative=1,fragment,verbatim,quote]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=1]
 c4 d
 \override NoteHead #'style = #'cross
 e f
@@ -1692,9 +1891,8 @@ To see all notehead styles, please see @ref{Note head styles}.
 
 @seealso
 
-Snippets: @lsrdir{pitches}.
-
-Internals Reference: @internalsref{NoteHead}.
-
+Snippets: @lsrdir{Pitches}.
 
+Notation Reference: @ref{Note head styles}.
 
+Internals Reference: @internalsref{NoteHead}.