]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/refman.itely
* scripts/lilypond-book.py (option_definitions): typo
[lilypond.git] / Documentation / user / refman.itely
index 4d315ade8e7938c06904bda6250a0a9682af4fd5..06e7ef03699efcf6907fab7274fc41b427143a13 100644 (file)
@@ -1,4 +1,4 @@
-@c Note: -*-texinfo-*-
+q@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
@@ -31,7 +31,7 @@
 * Vocal music::                 
 * Tablatures::                  
 * Chord names::                 
-* Writing parts::               
+* Orchestral music::            
 * Ancient notation ::           
 * Contemporary notation::       
 * Tuning output::               
@@ -45,6 +45,9 @@
 @section Note entry
 @cindex Note entry
 
+This chapter describes all the different types of notation supported
+by LilyPond. It is intended as a reference for users that are already
+somewhat familiar with using LilyPond.
 
 
 @menu
@@ -100,13 +103,12 @@ letters span the octave above that C.
 
 @cindex note names, Dutch
 
-A sharp is formed by adding @code{-is} to the end of a pitch
-name and a flat is formed by adding @code{-es}.  Double sharps and
-double flats are obtained by adding @code{-isis} or @code{-eses}.
-
-These default names are the Dutch note names.  In Dutch, @code{aes} is
-contracted to @code{as} in Dutch, but both forms are
-accepted. Similarly, both @code{es} and @code{ees} are accepted.
+A sharp is formed by adding @code{-is} to the end of a pitch name and
+a flat is formed by adding @code{-es}.  Double sharps and double flats
+are obtained by adding @code{-isis} or @code{-eses}.  These
+names are the Dutch note names.  In Dutch, @code{aes} is contracted to
+@code{as} in Dutch, but both forms are accepted. Similarly, both
+@code{es} and @code{ees} are accepted.
 
 There are predefined sets of note names for various other languages.
 To use them,  include the language specific init file.  For
@@ -143,8 +145,9 @@ octave; each @code{,} lowers the pitch by an octave.
 @end lilypond
 
 
-The verbose syntax for pitch specification is
+There is also a verbose syntax for pitch specification.
 
+@c TODO: junk this? 
 @cindex @code{\pitch}
 @example
   \pitch @var{scmpitch}
@@ -155,22 +158,17 @@ where @var{scmpitch} is a Scheme object of the @code{Pitch} type.
 
 @refcommands
 
-Dots are normally moved up to avoid staff lines, except in polyphonic
-situations. The following commands may be used to force a particular
-direction manually.
-
-@refcommand dotsUp 
-@refcommand dotsDown 
-@refcommand dotsBoth
-
 Notes can be hidden and unhidden with the following commands.
 
-@refcommand hideNotes 
-@refcommand unHideNotes 
+@cindex @code{\hideNotes }
+@code{\hideNotes}, 
+@cindex @code{\unHideNotes }
+@code{\unHideNotes}.
 
 
 @seealso
 
+@noindent
 @internalsref{NoteEvent}, @internalsref{NoteHead}
 
 @node Chromatic alterations
@@ -202,14 +200,6 @@ A chord is formed by a enclosing a set of pitches in @code{<<} and
 @code{>>}. A chord may be followed by  a duration, and a set of
 articulations, just like simple notes.
 
-Additionally, fingerings and articulations may be attached to
-individual pitches of the chord:
-
-@lilypond[singleline,verbatim,relative 1]
-  <<f-1 a-^ c-5>>
-@end lilypond
-
-
 
 @node  Rests
 @subsection Rests
@@ -224,13 +214,15 @@ Rests are entered like notes, with the note name @code{r}.
 r1 r2 r4 r8
 @end lilypond
 
-Whole bar rests, centered in middle of the bar, are specified using
-@code{R} (capital R); see @ref{Multi measure rests}.  See also
-@seeinternals{Rest}.
+Whole bar rests, centered in middle of the bar,
+must be done  with multi measure rests. They are discussed in
+@ref{Multi measure rests}.
 
-For some music, you may wish to explicitly specify the rest's vertical
-position.  This can be achieved by entering a note with the @code{\rest}
-keyword appended. Rest collision testing will leave these rests alone.
+
+A rest's vertical position may be explicitly specified by entering a
+note with the @code{\rest} keyword appended. This makes manual
+formatting in polyphonic music easier.  Rest collision testing will
+leave these rests alone.
 
 @lilypond[singleline,verbatim]
 a'4\rest d'4\rest
@@ -255,9 +247,8 @@ with note name `@code{s}' or with @code{\skip @var{duration}}:
 a2 s4 a4 \skip 1 a4 
 @end lilypond
 
- The @code{s} syntax is only available in Note mode and Chord
-mode.  In other situations, you should use the @code{\skip} command,
-which will work outside of those two modes:
+The @code{s} syntax is only available in Note mode and Chord mode.  In
+other situations, you should use the @code{\skip} command.
 
 @lilypond[singleline,verbatim]
 \score {
@@ -323,7 +314,7 @@ r1 r2 r4 r8 r16 r32 r64 r64
 
 
 If the duration is omitted then it is set to the previously entered
-duration. Default for the first note is a quarter note.  The duration
+duration. The default for the first note is a quarter note.  The duration
 can be followed by dots (`@code{.}') in order to obtain dotted note
 lengths:
 @cindex @code{.}
@@ -337,23 +328,42 @@ lengths:
 You can alter the length of duration by a fraction @var{N/M}
 appending `@code{*}@var{N/M}' (or `@code{*}@var{N}' if @var{M=1}). This
 will not affect the appearance of the notes or rests produced.
-
-@lilypond[fragment,verbatim]
-  a'2*2 b'4*2 a'8*4 a'4*3/2 gis'4*3/2 a'4*3/2 a'4
+In the following example, the first three notes take up exactly two
+beats.
+@lilypond[fragment,relative 2,verbatim]
+  \time 2/4
+   a4*2/3 gis4*2/3 a4*2/3
+   a4
 @end lilypond
 
-Durations can also be produced through GUILE extension mechanism. 
+Durations can also be produced using the verbose syntax
+@code{\duration @var{Scheme object}}. 
 @lilypond[verbatim,fragment]
- c'\duration #(ly:make-duration 2 1)
+ c'\duration #(ly:make-duration 4 1)
 @end lilypond
 
 
+
+@refcommands
+
+Dots are normally moved up to avoid staff lines, except in polyphonic
+situations. The following commands may be used to force a particular
+direction manually.
+
+@cindex @code{\dotsUp }
+@code{\dotsUp}, 
+@cindex @code{\dotsDown }
+@code{\dotsDown}, 
+@cindex @code{\dotsBoth}
+@code{\dotsBoth}.
+
+@seealso
+
+@internalsref{Dots}, @internalsref{DotColumn}. 
+
 @refbugs
 
-Dot placement for chords is not perfect.  In some cases, dots overlap:
-@lilypond[]
- <<f, c'' d e f>>4.
-@end lilypond
+In dense chords, dots can overlap.
 
 @node Stems
 @subsection Stems
@@ -365,9 +375,12 @@ is invisible.
 
 @refcommands
 
-@refcommand stemUp
-@refcommand stemDown
-@refcommand stemBoth
+@cindex @code{\stemUp}
+@code{\stemUp}, 
+@cindex @code{\stemDown}
+@code{\stemDown}, 
+@cindex @code{\stemBoth}
+@code{\stemBoth}, 
 
 
 @node Ties
@@ -396,17 +409,22 @@ exactly the same concept.
 @lilypond[fragment, singleline,quote]
 \time 3/4 c'2. c'2 ~ c'4
 @end lilypond
-If you need to tie notes over bars, it may be easier to use automatic
+If you need to tie a lot of  notes over bars, it may be easier to use automatic
 note splitting (See @ref{Automatic note splitting}).
 
 @refcommands
 
 
-@refcommand tieUp 
-@refcommand tieDown 
-@refcommand tieBoth 
-@refcommand tieDotted 
-@refcommand tieSolid
+@cindex @code{\tieUp }
+@code{\tieUp}, 
+@cindex @code{\tieDown }
+@code{\tieDown}, 
+@cindex @code{\tieBoth }
+@code{\tieBoth}, 
+@cindex @code{\tieDotted }
+@code{\tieDotted}, 
+@cindex @code{\tieSolid}
+@code{\tieSolid}, 
 
 @seealso 
 
@@ -423,11 +441,10 @@ supported in a simple way.  It can be achieved by moving the
 tie-engraver into the @internalsref{Thread} context and turning on and
 off ties per @internalsref{Thread}.
 
-Switching staves when a tie is active, will produce a horizontal tie
-on the first note.
+Switching staves when a tie is active, will not produce a slanted tie.
 
 Formatting of ties is a difficult subject. The results are often not
-optimal results.
+optimal.
 
 
 
@@ -456,9 +473,11 @@ of their written length:
   g'4 \times 2/3 {c'4 c' c'} d'4 d'4
 @end lilypond
 
-The property @code{tupletSpannerDuration} specifies how long each bracket
-should last.  With this, you can make lots of tuplets while typing
-@code{\times} only once, saving lots of typing.
+The property @code{tupletSpannerDuration} specifies how long each
+bracket should last.  With this, you can make lots of tuplets while
+typing @code{\times} only once, saving lots of typing. In the next
+example, there are two triplets shown, while @code{\times} was only
+used once.
 
 @lilypond[fragment,  relative, singleline, verbatim]
 \property Voice.tupletSpannerDuration = #(ly:make-moment 1 4)
@@ -478,13 +497,16 @@ instead.
 
 @refcommands
 
-@refcommand tupletUp  
-@refcommand tupletDown 
-@refcommand tupletBoth
+@cindex @code{\tupletUp  }
+@code{\tupletUp}, 
+@cindex @code{\tupletDown }
+@code{\tupletDown}, 
+@cindex @code{\tupletBoth}
+@code{\tupletBoth}, 
 
 @seealso
 
-@seeinternals{TupletBracket}, @seeinternals{TimeScaledMusic}.
+@internalsref{TupletBracket}, @internalsref{TimeScaledMusic}.
 
 @refbugs
 
@@ -512,8 +534,8 @@ 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
 then enlarge it with something like @file{dvips -x 2000 file.dvi}.
-See @file{man dvips} for details.  To print with a larger font, see
-@ref{Font Size}.
+See the @code{dvips} documentation for more details.  To print with a
+larger font, see @ref{Font Size}.
 
 
 @cindex Xdvi
@@ -530,13 +552,9 @@ produce the correct result.
 
 When entering music it is easy to introduce errors. This section deals
 with tricks and features of the input language that help when entering
-music, and find and correct mistakes.
-
-Some features of the input language ease entering music, for example
-the use of variables (for splitting up large pieces of music), and
-unfolded repeats for writing repetitive parts. They are described in
-other sections (see @ref{Repeats} and @ref{Assignments}), since they
-are not especially aimed at easing entry
+music, and find and correct mistakes.  Some features of the input
+language ease entering music, but also have other applications. They
+are not described in this section.
 
 It is also possible to use external programs, for example GUI
 interfaces, or MIDI transcription programs, to enter or edit
@@ -549,7 +567,7 @@ shown on screen. See @ref{Point and click} for more information.
 * Relative octaves::            
 * Bar check::                   
 * Skipping corrected music::    
-* Automatic note splitting::    
+* Automatic note splitting ::   
 @end menu
 
 
@@ -563,7 +581,8 @@ shown on screen. See @ref{Point and click} for more information.
 Octaves are specified by adding @code{'} and @code{,} to pitch names.
 When you copy existing music, it is easy to accidentally put a pitch
 in the wrong octave and hard to find such an error. The relative
-octave mode prevents these errors
+octave mode prevents these errors: a single error puts the rest of the
+piece off by one octave.
 
 @cindex @code{\relative}
 @example
@@ -577,28 +596,26 @@ between this and the last note is always taken to be a fourth or less
 @code{fisis} following a @code{ceses} will be put above the
 @code{ceses})
 
-The octave changing marks @code{'} and @code{,} can be added to raise or
-lower the pitch by an extra octave.  Upon entering relative mode, an
-absolute starting pitch must be specified that will act as the
+The octave changing marks @code{'} and @code{,} can be added to raise
+or lower the pitch by an extra octave.  Upon entering relative mode,
+an absolute starting pitch must be specified that will act as the
 predecessor of the first note of @var{musicexpr}.
 
-Entering music that changes octave frequently  is easy in relative mode.
+Here is the relative mode shown in action:
 @lilypond[fragment,singleline,verbatim,center]
   \relative c'' {
     b c d c b c bes a 
   }
 @end lilypond
 
-And octave changing marks are used for intervals greater than a fourth.
+Octave changing marks are used for intervals greater than a fourth.
 @lilypond[fragment,verbatim,center]
   \relative c'' {
     c g c f, c' a, e'' }
 @end lilypond
 
 If the preceding item is a chord, the first note of the chord is used
-to determine the first note of the next chord. However, other notes
-within the second chord are determined by looking at the immediately
-preceding note.
+to determine the first note of the next chord.
 
 @lilypond[fragment,verbatim,center]
   \relative c' {
@@ -628,15 +645,16 @@ additional @code{\relative} inside the @code{\transpose}.
 @cindex @code{barCheckSynchronize}
 @cindex @code{|}
 
-
-Whenever a bar check is encountered during interpretation, a warning
-message is issued if it does not fall at a measure boundary.  This can
-help find errors in the input.  Depending on the value of
+Bar checks help detect errors in the durations.  A bar check is
+entered using the bar symbol, `@code{|}'.  Whenever it is encountered
+during interpretation, it should fall on a measure boundary.  If it
+does not, a warning is printed.  Depending on the value of
 @code{barCheckSynchronize}, the beginning of the measure will be
-relocated. A bar check is entered using the bar symbol, `@code{|}'.
+relocated.
 
+In the next example, the second bar check will signal an error. 
 @example
-  \time 3/4 c2 e4 | g2.
+  \time 3/4 c2 e4 | g2 | 
 @end example
 
 
@@ -718,7 +736,7 @@ represented exactly; the engraver will not insert tuplets.
 @node Staff notation
 @section Staff notation
 
-This section describes with music notation that occurs on staff level,
+This section describes music notation that occurs on staff level,
 such as keys, clefs and time signatures.
 
 @cindex Staff notation
@@ -729,6 +747,7 @@ such as keys, clefs and time signatures.
 * Clef::                        
 * Ottava brackets::             
 * Time signature::              
+* Partial measures::            
 * Unmetered music::             
 * Bar lines::                   
 @end menu
@@ -761,7 +780,7 @@ exactly on the barline.
 
 @node Key signature
 @subsection Key signature
-@cindex Key
+@cindex Key signature
 
 @cindex @code{\key}
 
@@ -800,8 +819,8 @@ can be specified by setting this property directly.
 
 @refbugs
 
-The ordering of a key restoration (alterations that change back to
-natural) is wrong when combined with a repeat barline.
+The ordering of a key cancellation is wrong when it is combined with
+repeat bar lines. The cancellation is also printed after a line break.
 
 @seealso
 
@@ -890,8 +909,8 @@ the staff. They are created by invoking the function
   a b }
 @end lilypond
 
-Internally the @code{set-octavation} sets @code{ottavation} (eg. to
-@code{"8va"}) and @code{centralCPosition} properties.
+Internally the @code{set-octavation} function sets the properties
+@code{ottavation} (eg. to @code{"8va"}) and @code{centralCPosition}.
 
 @seealso
 
@@ -920,19 +939,19 @@ command.
  \time 2/4 c'2 \time 3/4 c'2. 
 @end lilypond
 
-The actual symbol that is printed can be customized with the
-@code{style} property. Setting it to @code{#'()} uses fraction style
-for 4/4 and 2/2 time.  There are many more options for its layout.
-See @inputfileref{input/test,time.ly} for more examples.
+The symbol that is printed can be customized with the @code{style}
+property. Setting it to @code{#'()} uses fraction style for 4/4 and
+2/2 time.  There are many more options for its layout.  See
+@inputfileref{input/test,time.ly} for more examples.
 
 
 This command sets the property @code{timeSignatureFraction},
 @code{beatLength} and @code{measureLength} in the @code{Timing}
 context, which is normally aliased to @internalsref{Score}.  The
-property @code{timeSignatureFraction} determines where bar lines
-should be inserted, and how automatic beams should be generated.
-Changing the value of @code{timeSignatureFraction} also causes the
-symbol to be printed.
+property @code{measureLength} determines where bar lines should be
+inserted, and how automatic beams should be generated.  Changing the
+value of @code{timeSignatureFraction} also causes the symbol to be
+printed.
 
 More options are available through the Scheme function
 @code{set-time-signature}. In combination with the
@@ -966,20 +985,19 @@ measure is subdivided in 2, 2, 2 and 3. This is passed to
 Automatic beaming does not use measure grouping specified with
 @code{set-time-signature}.
 
-
-@subsection Partial
+@node Partial measures
+@subsection Partial measures
 @cindex Partial
 @cindex anacrusis
-@cindex upbeat
 @cindex partial measure
 @cindex measure, partial
 @cindex shorten measures
 @cindex @code{\partial}
 
-Partial measures, for example in upbeats, are entered using the
+Partial measures, for example in upsteps, are entered using the
 @code{\partial} command:
 @lilypond[fragment,verbatim]
-\partial 16*5  c'16 c4 f16 a'2. ~ a'8. a'16 | g'1
+\partial 16*5  c'16 c4 |   a'2. ~ a'8. a'16 | g'1
 @end lilypond
 
 The syntax for this command is 
@@ -1005,8 +1023,10 @@ off.
 
 @refcommands
 
-@refcommand cadenzaOn 
-@refcommand cadenzaOff 
+@cindex @code{\cadenzaOn }
+@code{\cadenzaOn}, 
+@cindex @code{\cadenzaOff }
+@code{\cadenzaOff}, 
 
 @node Bar lines
 @subsection Bar lines
@@ -1017,12 +1037,13 @@ off.
 @cindex repeat bars
 
 
-Bar lines delimit measures, but are also used to indicate
-repeats. Line breaks may only happen on barlines.
+Bar lines delimit measures, but are also used to indicate repeats.
+Normally, tehy are inserted automatically.  Line breaks may only
+happen on barlines.
 
 @syntax
 
-Bar lines are inserted automatically.  Special types
+ Special types
 of barlines can be forced with the @code{\bar} command:
 @lilypond[relative=1,fragment,verbatim]
    c4 \bar "|:" c4
@@ -1041,9 +1062,10 @@ c4
 \bar "|." 
 @end lilypond
 
-In scores with many staves, the barlines are automatically placed at
-top level, and they are connected between different staves of a
-@internalsref{StaffGroup}:
+In scores with many staves, a @code{\bar} command in one staff is
+automatically applied to all staffs. 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'
@@ -1054,15 +1076,15 @@ top level, and they are connected between different staves of a
 @end lilypond
 
 
-The command @code{\bar @var{bartype}} is a short cut for
-doing  @code{\property Score.whichBar = @var{bartype}}
-Whenever @code{whichBar} is set to a string, a bar line of that type is
-created.  @code{whichBar} is usually set automatically: at the start of
-a measure it is set to @code{defaultBarType}. The contents of
-@code{repeatCommands} is used to override default measure bars.
+The command @code{\bar @var{bartype}} is a short cut for doing
+@code{\property Score.whichBar = @var{bartype}} Whenever
+@code{whichBar} is set to a string, a bar line of that type is
+created.  At the start of a measure it is set to
+@code{defaultBarType}. The contents of @code{repeatCommands} are used
+to override default measure bars.
 
 @code{whichBar} can also be set directly, using @code{\property} or
-@code{\bar  }.  These settings take precedence over the automatic
+@code{\bar}.  These settings take precedence over the automatic
 @code{whichBar} settings. 
 
 @cindex whichBar
@@ -1094,13 +1116,14 @@ small, short-lived voices or for single chords:
 
 @lilypond[verbatim,fragment]
 \context Voice = VA \relative c'' {
- c4 < { f d e  } \\ { b c2 } > c4 < g' \\ b, \\  f' \\ d' >
+ c4 < { f d e  } \\ { b c2 } > c4 < g' \\ b, \\  f' \\ d >
 }
 @end lilypond
 
-The separator causes @internalsref{Voice} contexts to be instantiated,
-bearing the names @code{"1"}, @code{"2"}, etc. In each of these
-contexts, vertical direction of slurs, stems, etc. are set
+The separator causes @internalsref{Voice} contexts to be
+instantiated. They 
+bear the names @code{"1"}, @code{"2"}, etc. In each of these
+contexts, vertical direction of slurs, stems, etc. is set
 appropriately.
 
 This can also be done by instantiating @internalsref{Voice} contexts
@@ -1150,21 +1173,30 @@ LilyPond also vertically shifts rests that are opposite of a stem.
 
 
 
-@refcommand oneVoice 
-@refcommand voiceOne 
-@refcommand voiceTwo 
-@refcommand voiceThree 
-@refcommand voiceFour 
+@cindex @code{\oneVoice }
+@code{\oneVoice}, 
+@cindex @code{\voiceOne }
+@code{\voiceOne}, 
+@cindex @code{\voiceTwo }
+@code{\voiceTwo}, 
+@cindex @code{\voiceThree }
+@code{\voiceThree}, 
+@cindex @code{\voiceFour }
+@code{\voiceFour}, 
 
 The following commands specify in what chords of the current voice
 should be shifted: the outer voice has @code{\shiftOff}, and the inner
 voices have @code{\shiftOn}, @code{\shiftOnn}, etc.
 
 
-@refcommand shiftOn
-@refcommand shiftOnn  
-@refcommand shiftOnnn  
-@refcommand shiftOff  
+@cindex @code{\shiftOn}
+@code{\shiftOn}, 
+@cindex @code{\shiftOnn}
+@code{\shiftOnn}, 
+@cindex @code{\shiftOnnn}
+@code{\shiftOnnn}, 
+@cindex @code{\shiftOff}
+@code{\shiftOff}, 
 
 
 
@@ -1186,6 +1218,9 @@ are handled. When LilyPond cannot cope, the @code{force-hshift}
 property of the @internalsref{NoteColumn} object and pitched rests can
 be used to override typesetting decisions.
 
+When using @code{merge-differently-headed} with upstem 8th or shorter
+note, and a downstem half note, the 8th note gets the wrong offset.
+
 @node Beaming
 @section Beaming
 
@@ -1212,9 +1247,9 @@ that differ from the defaults.
 @cindex @code{[}
 
 In some cases it may be necessary to override the automatic beaming
-algorithm.  For example, the auto beamer will not beam over rests or
-bar lines, If you want that, specify the begin and end point manually
-using @code{[} and @code{]}.
+algorithm.  For example, the auto beamer will not put beams over rests
+or bar lines. Such beams are specified by manually: the begin and end
+point are marked with @code{[} and @code{]}.
 
 @lilypond[fragment,relative,verbatim]
   \context Staff {
@@ -1240,9 +1275,10 @@ is set, its value will be used only once, and then it is erased.
 
 
 The property @code{subdivideBeams} can be set in order to subdivide
-all 16th or shorter beams at beat positions.  This accomplishes the
-same effect as twiddling with @code{stemLeftBeamCount} and
-@code{stemRightBeamCount}, but it take less typing.
+all 16th or shorter beams at beat positions, as defined by the
+@code{beatLength} property .  This accomplishes the same effect as
+twiddling with @code{stemLeftBeamCount} and @code{stemRightBeamCount},
+but it take less typing.
 
 
 @lilypond[relative=1,verbatim,noindent]
@@ -1313,7 +1349,7 @@ or at durations specified by the properties in
 are defined in @file{scm/auto-beam.scm}.
 
 The value of @code{autoBeamSettings} is changed using
-@code{\override} and unset using @code{\revert}:
+@code{\override} and restored with @code{\revert}:
 @example
 \property Voice.autoBeamSettings \override #'(@var{BE} @var{P} @var{Q} @var{N} @var{M}) = @var{dur}
 \property Voice.autoBeamSettings \revert #'(@var{BE} @var{P} @var{Q} @var{N} @var{M})
@@ -1373,8 +1409,10 @@ automatic beaming. This is done by setting @code{Voice.autoBeaming} to
 
 @refcommands
 
-@refcommand autoBeamOff 
-@refcommand autoBeamOn 
+@cindex @code{\autoBeamOff }
+@code{\autoBeamOff}, 
+@cindex @code{\autoBeamOn }
+@code{\autoBeamOn}, 
 
 
 @refbugs
@@ -1396,8 +1434,8 @@ automatic beaming in irregular meters such as @code{5/8}.
 @section Accidentals
 @cindex Accidentals
 
-This section describes how to change the way that LilyPond automatically
-inserts accidentals before the running notes.
+This section describes how to change the way that accidentals are
+inserted automatically before the running notes.
 
 
 @menu
@@ -1413,7 +1451,7 @@ quite hairy, so non-experts should stick to the variables
 defined in @file{ly/property-init.ly}.
 @cindex @file{property-init.ly}
 
-The variables set properties in the ``Current'' context (see
+The variables set properties in the ``@code{Current}'' context (see
 @ref{Context properties}). This means that the variables should
 normally be added right after the creation of the context in which the
 accidental typesetting described by the variable is to take
@@ -1504,8 +1542,8 @@ instead.
       @cindex @code{\modernCautionaries}
      This rule is similar to @code{\modernAccidentals}, but the
      ``extra'' accidentals (the ones not typeset by
-     @code{\defaultAccidentals}) are typeset as cautionary accidentals
-     (i.e. in reduced size):
+     @code{\defaultAccidentals}) are typeset as cautionary accidentals.
+     They are printed in reduced size or with parentheses.
 @lilypond[singleline,fragment,verbatim]
       \modernCautionaries
       cis' c'' cis'2 | c'' c'
@@ -1550,7 +1588,7 @@ some of them are typeset as cautionaries.
 @item \forgetAccidentals
       @cindex @code{\forgetAccidentals}
       This is sort of the opposite of @code{\noResetKey}: Accidentals
-      are not remembered at all - and hence all accidentals are
+      are not remembered at all---and hence all accidentals are
       typeset relative to the key signature, regardless of what was
       before in the music:
 @lilypond[singleline,fragment,verbatim,relative]
@@ -1589,16 +1627,26 @@ voices in the same staff share accidentals, but staves do not.
 
 @refcommands
 
-@refcommand defaultAccidentals 
-@refcommand voiceAccidentals 
-@refcommand modernAccidentals 
-@refcommand modernCautionaries 
-@refcommand modernVoiceAccidentals 
-@refcommand modernVoiceCautionaries 
-@refcommand pianoAccidentals 
-@refcommand pianoCautionaries 
-@refcommand noResetKey 
-@refcommand forgetAccidentals 
+@cindex @code{\defaultAccidentals }
+@code{\defaultAccidentals}, 
+@cindex @code{\voiceAccidentals }
+@code{\voiceAccidentals}, 
+@cindex @code{\modernAccidentals }
+@code{\modernAccidentals}, 
+@cindex @code{\modernCautionaries }
+@code{\modernCautionaries}, 
+@cindex @code{\modernVoiceAccidentals }
+@code{\modernVoiceAccidentals}, 
+@cindex @code{\modernVoiceCautionaries }
+@code{\modernVoiceCautionaries}, 
+@cindex @code{\pianoAccidentals }
+@code{\pianoAccidentals}, 
+@cindex @code{\pianoCautionaries }
+@code{\pianoCautionaries}, 
+@cindex @code{\noResetKey }
+@code{\noResetKey}, 
+@cindex @code{\forgetAccidentals }
+@code{\forgetAccidentals}, 
 
 @seealso
 
@@ -1636,7 +1684,7 @@ for the problematic notes.
 @section Expressive marks
 
 @menu
-* Slurs::                      
+* Slurs ::                      
 * Phrasing slurs::              
 * Breath marks::                
 * Metronome marks::             
@@ -1691,11 +1739,16 @@ stems might look better:
 @refcommands
 
 
-@refcommand slurUp   
-@refcommand slurDown 
-@refcommand slurBoth 
-@refcommand slurDotted 
-@refcommand slurSolid 
+@cindex @code{\slurUp   }
+@code{\slurUp}, 
+@cindex @code{\slurDown }
+@code{\slurDown}, 
+@cindex @code{\slurBoth }
+@code{\slurBoth}, 
+@cindex @code{\slurDotted }
+@code{\slurDotted}, 
+@cindex @code{\slurSolid }
+@code{\slurSolid}, 
 
 @seealso
 
@@ -1705,8 +1758,8 @@ stems might look better:
 @refbugs
 
 Producing nice slurs is a difficult problem, and LilyPond currently
-uses a simple, empiric method to produce slurs. In some cases, the
-results of this method are ugly.
+uses a simple, empiric method to produce slurs. In some cases, its
+results are ugly.
 
 
 @cindex Adjusting slurs
@@ -1736,9 +1789,12 @@ will only affect normal slurs and not phrasing slurs.
 
 @refcommands
 
-@refcommand phrasingSlurUp   
-@refcommand phrasingSlurDown 
-@refcommand phrasingSlurBoth 
+@cindex @code{\phrasingSlurUp   }
+@code{\phrasingSlurUp}, 
+@cindex @code{\phrasingSlurDown }
+@code{\phrasingSlurDown}, 
+@cindex @code{\phrasingSlurBoth }
+@code{\phrasingSlurBoth}, 
 
 @seealso
 
@@ -1756,12 +1812,12 @@ slurs. Putting phrasing slurs over rests leads to spurious warnings.
 Breath marks are entered using @code{\breathe}.
 
 
-@lilypond[fragment,relative]
+@lilypond[fragment,relative,verbatim]
 c'4 \breathe d4
 @end lilypond
 
 The glyph of the breath mark can be tweaked by overriding the
-@code{text} property of the @code{BreathingSign} grob with the name of
+@code{text} property of the @code{BreathingSign} layout object with the name of
 any glyph of @ref{The Feta font}.  For example,
 @lilypond[fragment,verbatim,relative]
 c'4
@@ -1858,13 +1914,6 @@ To use this, add the @internalsref{Horizontal_bracket_engraver} to
 @internalsref{HorizontalBracket}, @internalsref{NoteGroupingEvent},
 @inputfileref{input/regression,note-group-bracket.ly}. 
 
-@refbugs
-
-Bracket endings should be angled/slanted. (TODO)
-
-
-
 
 @node Articulations
 @section Articulations
@@ -1892,8 +1941,8 @@ put them up:
 
 
 Other symbols can be added using the syntax
-@var{note}@code{-\}@var{name}. Again, they can be forced up or down
-using @code{^} and @code{_}.
+@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
@@ -1929,9 +1978,12 @@ using @code{^} and @code{_}.
 
 @refcommands
 
-@refcommand scriptUp  
-@refcommand scriptDown 
-@refcommand scriptBoth
+@cindex @code{\scriptUp  }
+@code{\scriptUp}, 
+@cindex @code{\scriptDown }
+@code{\scriptDown}, 
+@cindex @code{\scriptBoth}
+@code{\scriptBoth}, 
 
 @seealso
 
@@ -1972,16 +2024,20 @@ played with your thumb (used in cello music):
       <<c'' c'''-3>>-(_\thumb <<d'' d'''-3>>-)_\thumb-]
 @end lilypond
 
-Fingering for chords can be notated like this:
-
+Fingerings for chords can also be added to individual notes
+of the chord by adding them after the pitches
 @lilypond[verbatim,singleline,fragment,relative=1]
         << c-1  e-2 g-3 b-5 >> 4
+@end lilypond
+
+Setting @code{fingerHorizontalDirection} will put the fingerings next
+to the note head.
+
+@lilypond[verbatim,singleline,fragment,relative=1]
        \property Voice.fingerHorizontalDirection = #LEFT
-       << c-1  es-3 g-5 >> 4
+       << c-1  es-2 g-4 bes-5 >> 4
        \property Voice.fingerHorizontalDirection = #RIGHT
-       << c-1  e-2 g-3 b-5 >>4
-       \property Voice.fingerHorizontalDirection = #LEFT
-       << c_1  e-2 g-3 b^5 >>4
+       << c-1  es-2 g-4 bes-5 >> 4
 @end lilypond
         
 @seealso
@@ -2010,10 +2066,9 @@ will be taken into account.
 c4^"longtext" \fatText c4_"longlongtext" c4 }
 @end lilypond
 
-It is possible to use @TeX{} commands in the strings, but this should be
-avoided because it makes it impossible for LilyPond to compute the
-exact length of the string, which may lead to collisions.  Also, @TeX{}
-commands will not work with direct PostScript output.
+It is possible to use @TeX{} commands in the strings, but this should
+be avoided because the exact dimensions of the string can then no
+longer be computed.
 
 
 @seealso
@@ -2026,8 +2081,6 @@ commands will not work with direct PostScript output.
 @node Grace notes
 @subsection Grace notes
 
-
-
 @cindex @code{\grace}
 @cindex ornaments
 @cindex grace notes
@@ -2053,17 +2106,18 @@ example is shown here with timing tuples.
   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)"
   }
-\paper {  linewidth = 8.\cm }
+\paper {  linewidth = 12.\cm }
 }
 @end lilypond
 
 
-The placement of these grace notes is synchronized between different
-staves.
+The placement of grace notes is synchronized between different staves.
+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 } >
+  \context Staff = SB { c'4 \grace { g8-[ b-] } c4 } >
 @end lilypond
 
 
@@ -2103,6 +2157,10 @@ is to put the grace notes before a phantom ``space note'', e.g.
 }
 @end lilypond
 
+@noindent
+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
@@ -2130,15 +2188,19 @@ second bars in this example:
 
 @seealso
 
-@internalsref{GraceMusic}.
+@internalsref{GraceMusic},
 
 @refbugs
 
 Grace notes cannot be used in the smallest size (@file{paper11.ly}).
 
+A score that starts with an @code{\grace} section needs an explicit
+@code{\context Voice} declaration, otherwise the main note and grace
+note end up on different staffs.
+
 Grace note synchronization can also lead to surprises. Staff notation,
 such as key signatures, barlines, etc. are also synchronized. Take
-care when you mix staves with grace notes and staves without.
+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 }
@@ -2146,12 +2208,12 @@ care when you mix staves with grace notes and staves without.
 @end lilypond
 
 Grace sections should only be used within sequential music
-expressions.  Nesting, juxtaposing, or ending sequential music with a
-grace section is not supported, and might produce crashes or other
-errors.
+expressions.  Nesting or juxtaposing grace sections is not supported,
+and might produce crashes or other errors.
 
-Overriding settings for grace music using @code{add-to-grace-init}
-cannot be done in a modular way.
+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}.
 
 
 @node Glissando 
@@ -2179,8 +2241,7 @@ a note:
 
 @refbugs
 
-Printing of an additional text (such as @emph{gliss.}) must be done
-manually.
+Additional texts (such as @emph{gliss.}) is not supported.
 
 
 @node Dynamics
@@ -2228,13 +2289,10 @@ note: @code{c4-\ff}.  The available dynamic marks are: @code{\ppp},
 
 
 
-A crescendo mark is started with @code{\cr} and terminated with
-@code{\endcr}, and decrescendi similarly with @code{\decr} and
-@code{\enddecr}.  There are also shorthands for these marks.  A
-crescendo can be started with @code{\<} and a decrescendo can be
-started with @code{\>}.  Either one can be terminated with @code{\!}.
-Because these marks are bound to notes, if you must use spacer notes
-if multiple marks during one note are needed.
+A crescendo mark is started with @code{\<} and terminated with
+@code{\!}. A decrescendo is started with @code{\>} and also terminated
+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 
@@ -2252,17 +2310,16 @@ You can also use a text saying @emph{cresc.} instead of hairpins. Here
 is an example how to do it:
 
 @lilypond[fragment,relative=2,verbatim]
-  c4 \cresc c4 \endcresc c4
+  c4 \cresc c4 c c c \endcresc c4
 @end lilypond
 
-
 @cindex crescendo
 @cindex decrescendo
 
 You can also supply your own texts:
 @lilypond[fragment,relative,verbatim]
   \context Voice {
-    \property Voice.crescendoText = "cresc. poco"
+    \property Voice.crescendoText = \markup { \italic "cresc. poco" }
     \property Voice.crescendoSpanner = #'dashed-line
     a'2-\mf-\< a a a-\!
   }
@@ -2273,9 +2330,12 @@ You can also supply your own texts:
 
 @refcommands
 
-@refcommand dynamicUp  
-@refcommand dynamicDown 
-@refcommand dynamicBoth 
+@cindex @code{\dynamicUp  }
+@code{\dynamicUp}, 
+@cindex @code{\dynamicDown }
+@code{\dynamicDown}, 
+@cindex @code{\dynamicBoth }
+@code{\dynamicBoth}, 
 
 @cindex direction, of dynamics
 
@@ -2391,7 +2451,7 @@ With alternative endings:
 
 @refbugs
 
- If you do a nested repeat like
+If you do a nested repeat like
 
 @example 
 \repeat @dots{}
@@ -2418,10 +2478,9 @@ example file @inputfileref{input/test,unfold-all-repeats.ly}.
 @refbugs
 
 Timing information is not remembered at the start of an alternative,
-so you have to reset timing information after a repeat, e.g. using a
-bar-check (See @ref{Bar check}), setting @code{Score.measurePosition}
-or entering @code{\partial}.  Similarly, slurs or ties are also not
-repeated.
+so after a repeat timing information must be reset by hand, for
+example by setting @code{Score.measurePosition} or entering
+@code{\partial}.  Similarly, slurs or ties are also not repeated.
 
 
 @node Manual repeat commands
@@ -2433,18 +2492,18 @@ The property @code{repeatCommands} can be used to control the layout of
 repeats. Its value is a Scheme list of repeat commands, where each repeat
 command can be
 
-@table @code
-@item 'start-repeat
- Print a |: bar line
-@item 'end-repeat
Print a :| bar line
-@item (volta . @var{text})
Print a volta bracket saying @var{text}. The text can be specified as
+@table @asis
+@item the symbol @code{start-repeat},
+  which prints a @code{|:} bar line.
+@item The symbol @code{end-repeat},
 which prints a @code{:|} bar line
+@item The list @code{(volta @var{text})}
 which prints a volta bracket saying @var{text}. The text can be specified as
 a text string or as a markup text, see @ref{Text markup}. Do not
 forget to change the font, as the default number font does not contain
 alphabetic characters.
-@item (volta . #f) 
Stop a running volta bracket
+@item The list @code{(volta #f)}, which 
 stops a running volta bracket
 @end table
 
 @lilypond[verbatim, fragment]
@@ -2482,13 +2541,14 @@ style.
 
 @seealso
 
-Tremolo beams are @internalsref{Beam} objects. Single stem tremolos are
-@internalsref{StemTremolo}.  @internalsref{TremoloEvent}.
+Tremolo beams are @internalsref{Beam} objects. Single stem tremolos
+are @internalsref{StemTremolo}.  The music expression is
+@internalsref{TremoloEvent}.
 
 
 @refbugs
 
-The single stem tremolo @emph{must} be entered without @code{@{} and
+The single stem tremolo must be entered without @code{@{} and
 @code{@}}.
 
 @node Tremolo subdivisions
@@ -2537,9 +2597,6 @@ patterns that divide the measure length are replaced by slashes.
 @internalsref{DoublePercentRepeat}.
 
 
-@refbugs
-
-Single measure and double measure percent-repeats cannot be nested.
 
 @node Rhythmic music
 @section Rhythmic music
@@ -2565,15 +2622,15 @@ staff are squashed, and the staff itself has a single line:
 @cindex percussion
 @cindex drums
 
-To typeset more than one piece of percussion to be played by the same
-musician one typically uses a multiline staff where each staff
-position refers to a specific piece of percussion.
+A percussion part for more than one instrument typically uses a
+multiline staff where each position in the staff refers to one piece
+of percussion.
 
 @syntax
 
 Percussion staves are typeset with help of a set of Scheme
 functions. The system is based on the general MIDI drum-pitches.
-Include @file{ly/drumpitch-init.ly} to use drum pitches. This file
+Include @file{drumpitch-init.ly} to use drum pitches. This file
 defines the pitches from the Scheme variable @code{drum-pitch-names},
 the definition of which can be read in @file{scm/drums.scm}.  Each
 piece of percussion has a full name and an abbreviated name, and both
@@ -2771,7 +2828,7 @@ If you do not like any of the predefined lists you can define your own
 list at the top of your file:
 
 @lilypond[singleline, verbatim]
-#(define mydrums `(
+#(set-drum-kit 'mydrums `(
         (bassdrum     default   #f        ,(ly:make-pitch -1 2 0))
         (snare        default   #f        ,(ly:make-pitch 0 1 0))
         (hihat        cross     #f        ,(ly:make-pitch 0 5 0))
@@ -2794,10 +2851,10 @@ To use a modified existing list, one can prepend modifications to the
 the existing list:
 
 @example
-#(define mydrums (append `(
+#(set-drum-kit mydrums (append `(
    (bassdrum default #f ,(ly:make-pitch -1 2 0))
    (lowtom   diamond #f ,(ly:make-pitch -1 6 0))
-) drums ))
+) (get-drum-kit 'drums)))
 @end example
 
 The file @file{drumpitch-init.ly} replaces the normal pitch names, so
@@ -2822,15 +2879,15 @@ bass = \notes \transpose c c,, { a4. e8 r e g e }
 }
 @end lilypond
 
-@node Percussion midi output
-@subsection Percussion midi output
+@node Percussion MIDI output
+@subsection Percussion MIDI output
 
-In order to produce correct midi output you need to produce two score
-blocks---one for the paper and one for the midi output.  To use the
+In order to produce correct MIDI output you need to produce two score
+blocks---one for the paper and one for the MIDI output.  To use the
 percussion channel you set the property @code{instrument} to
-@code{'drums}. Because the drum-pitches themself are similar to the
-general midi pitches all you have to do is to insert the voices with
-none of the scheme functions to get the correct midi output:
+@code{'drums}. Because the drum-pitches themselves are similar to the
+general MIDI pitches all you have to do is to insert the voices with
+none of the scheme functions to get the correct MIDI output:
 
 @example
 \score @{    
@@ -2852,7 +2909,7 @@ none of the scheme functions to get the correct midi output:
 
 @refbugs
 
-This scheme is to be considered a temporary implementation.
+This scheme is a temporary implementation.
 
 
 @node Piano music
@@ -2904,7 +2961,7 @@ staff. The syntax for this is
   \autochange Staff \context Voice @{ @dots{}@var{music}@dots{} @}
 @end example        
 The autochanger switches on basis of pitch (central C is the turning
-point), and it looks ahead skipping over rests to switch rests in
+point), and it looks ahead skipping over rests to switch in
 advance. Here is a practical example:
         
 @lilypond[verbatim,singleline,quote]
@@ -2917,7 +2974,9 @@ advance. Here is a practical example:
        s1*2
 } > }
 @end lilypond
-Spacer rests are used to prevent the bottom staff from
+
+@noindent
+In this example, spacer rests are used to prevent the bottom staff from
 terminating too soon.
 
 
@@ -2938,6 +2997,8 @@ Voices can be switched between staves manually, using the following command:
 @example
   \translator Staff = @var{staffname} @var{music}
 @end example
+
+@noindent
 The string @var{staffname} is the name of the staff. It switches the
 current voice from its current staff to the Staff called
 @var{staffname}. Typically @var{staffname} is @code{"up"} or
@@ -2958,16 +3019,20 @@ Piano pedal instruction can be expressed by attaching
 @code{\treCorde}, @code{\sostenutoDown} and @code{\sostenutoUp} to a
 note or chord.
 
-The symbols that are printed can be modified by setting
-@code{pedal@var{X}Strings}, where @var{X} is one of the pedal types:
-Sustain, Sostenuto or UnaCorda.  Refer to the generated documentation
-of @internalsref{SustainPedal} for more information.
+@lilypond[fragment,verbatim]
+  c'4-\sustainDown c'4-\sustainUp
+@end lilypond
+
+What is printed can be modified by setting @code{pedal@var{X}Strings},
+where @var{X} is one of the pedal types: @code{Sustain},
+@code{Sostenuto} or @code{UnaCorda}.  Refer to the generated
+documentation of @internalsref{SustainPedal} for more information.
 
 Pedals can also be indicated by a sequence of brackets, by setting the 
 @code{pedal-type} property of @internalsref{SustainPedal} objects: 
 
 @lilypond[fragment,verbatim]
-\property Staff.SustainPedal \override #'pedal-type = #'bracket
+ \property Staff.SustainPedal \override #'pedal-type = #'bracket
  c''4-\sustainDown d''4 e''4
  a'4-\sustainUp-\sustainDown
  f'4 g'4 a'4-\sustainUp
@@ -3061,8 +3126,10 @@ arpeggiate the chord. To draw these brackets, set the
 
 @refcommands
 
-@refcommand arpeggioBracket 
-@refcommand arpeggio
+@cindex @code{\arpeggioBracket }
+@code{\arpeggioBracket}, 
+@cindex @code{\arpeggio}
+@code{\arpeggio}, 
 
 @refbugs
 
@@ -3099,8 +3166,10 @@ The associated object is @internalsref{VoiceFollower}.
 
 @refcommands
 
-@refcommand showStaffSwitch 
-@refcommand hideStaffSwitch 
+@cindex @code{\showStaffSwitch }
+@code{\showStaffSwitch}, 
+@cindex @code{\hideStaffSwitch }
+@code{\hideStaffSwitch}, 
 
 
 @node Vocal music
@@ -3788,16 +3857,33 @@ in lower case for the base note.
 
 @end table
 
+
+There are also two other chord name schemes implemented: an alternate
+Jazz chord notation, and a systematic scheme called Banter chords. The
+alternate jazz notation is also shown on the chart in @ref{Chord name
+chart}.  Turning on these styles is described in the input file
+@inputfileref{input/test/,chord-names-jazz.ly}.
+
+@cindex Banter
+@cindex jazz chords
+@cindex chords, jazz  
+
+
 @refcommands
 
-@refcommand germanChords 
-@refcommand semiGermanChords 
+@cindex @code{\germanChords }
+@code{\germanChords}, 
+@cindex @code{\semiGermanChords }
+@code{\semiGermanChords}, 
+
+
 
 
 @seealso
 
 @inputfileref{input/regression,chord-name-major7.ly},
 @inputfileref{input/regression,chord-name-exceptions.ly},
+@inputfileref{input/test,chord-names-jazz.ly},
 @inputfileref{input/test,chord-names-german.ly},
 @file{scm/chords-ignatzek.scm}, @file{scm/chord-entry.scm}
 
@@ -3812,8 +3898,10 @@ may result in strange chord names when chords are entered with the
 
 
 
-@node Writing parts
-@section Writing parts
+@node Orchestral music
+@section Orchestral music
+
+@cindex  Writing parts
 
 Orchestral music involves some special notation, both in the full
 score and the individual parts. This section explains how to tackle
@@ -3822,6 +3910,7 @@ some common problems in orchestral music.
 
 
 @menu
+* Multiple staff contexts::     
 * Rehearsal marks::             
 * Bar numbers::                 
 * Instrument names::            
@@ -3832,6 +3921,28 @@ some common problems in orchestral music.
 * Sound output for transposing instruments::  
 @end menu
 
+@node Multiple staff contexts
+@subsection Multiple staff contexts
+
+Polyphonic scores consist of many staffs. These staffs can be
+constructed in three different ways:
+@itemize @bullet
+@item The group is started with a brace at the left. This is done with the
+@internalsref{GrandStaff} context.
+@item The group is started with a bracket. This is done with the
+@internalsref{StaffGroup} context
+@item The group is  started with a vertical line. This is the default
+for the score.
+@end itemize
+
+@cindex Staff, multiple
+@cindex bracket, vertical
+@cindex brace, vertical
+@cindex grand staff
+@cindex staff group
+
+
+
 
 @node Rehearsal marks
 @subsection Rehearsal marks
@@ -6464,8 +6575,8 @@ In figures input mode, a group of bass figures is delimited by
 \figures { <4 6> }
 @end lilypond
 
-Accidentals are added to the numbers if you alterate them by
-appending @code{-}, @code{!}  and @code{+}.
+Accidentals are added when you append @code{-}, @code{!}  and @code{+}
+to the numbers.
 
 @example
   <4- 6+ 7!>
@@ -6498,7 +6609,7 @@ vertical spacing of the figures may be set with @code{baseline-skip}.
 
 @seealso
 
-@internalsref{BassFigureEvent} music, @internalsref{BassFigure} grob,
+@internalsref{BassFigureEvent} music, @internalsref{BassFigure} object,
 @internalsref{FiguredBass} context
 
 @refbugs
@@ -6553,15 +6664,13 @@ reasonable to specify a cluster as the envelope of a set of notes.
 
 @syntax
 
-A cluster is engraved as the envelope of a set of notes. The starting
-note is marked with @code{\startCluster}, and the ending note with
-@code{\stopCluster}, e.g.,
-
-@example
-  c4-\startCluster
-     ...
-  f4-\stopCluster 
-@end example
+A cluster is engraved as the envelope of a set of
+cluster-notes. Cluster notes are created by applying the function
+@code{notes-to-clusters} to a sequence of chords, eg.
+@c
+@lilypond[relative 2]
+    \apply #notes-to-clusters {  << c e >> <<b f'>>  }
+@end lilypond
 
 The following example (from
 @inputfileref{input/regression,cluster.ly}) shows what the result
@@ -6577,14 +6686,12 @@ ordinary notes and clusters.
 
 @seealso
 
-@internalsref{Cluster}, @inputfileref{input/regression,cluster.ly},
-@internalsref{Cluster_engraver}, @internalsref{ClusterEvent}.
+@internalsref{ClusterSpanner}, @internalsref{ClusterSpannerBeacon},
+@inputfileref{input/regression,cluster.ly},
+@internalsref{Cluster_engraver}, @internalsref{ClusterNoteEvent}.
 
 @refbugs
 
-When a cluster is active, note heads must be switched off manually using
-@code{\hideNotes}. 
-
 Music expressions like @code{< @{ g8 e8 @} a4 >} are not printed
 accurately.  Use @code{<<g a>>8 <<e a>>8} instead.
 
@@ -6655,7 +6762,7 @@ affecting a whole set of objects.  Second, you can select one specific
 object, and set a object property in that object.
 
 @menu
-* Tuning objects::             
+* Tuning objects ::             
 * Constructing a tweak::        
 * Applyoutput::                 
 * Outputproperty::              
@@ -6672,7 +6779,7 @@ object, and set a object property in that object.
 
 The definition of an object is actually a list of default object
 properties. For example, the definition of the Stem object (available
-in @file{scm/grob-description.scm}), includes the following definitions for
+in @file{scm/define-grobs.scm}), includes the following definitions for
 @internalsref{Stem}
 
 @example
@@ -6694,11 +6801,11 @@ Changing a variable for only   one object is commonly achieved with
 @code{\once}:
 
 @example
-\once \property @var{context}.@var{grobname}
+\once \property @var{context}.@var{objectname}
   \override @var{symbol} = @var{value}
 @end example
 Here @var{symbol} is a Scheme expression of symbol type, @var{context}
-and @var{grobname} is a string and @var{value} is a Scheme expression.
+and @var{objectname} is a string and @var{value} is a Scheme expression.
 This command applies a setting only during one moment in the score.
 
 In the following example, only one @internalsref{Stem} object is
@@ -6715,16 +6822,16 @@ changed from its original setting:
 For changing more objects, the same command, without @code{\once} can
 be used.
 @example
-\property @var{context}.@var{grobname} \override @var{symbol} = @var{value}
+\property @var{context}.@var{objectname} \override @var{symbol} = @var{value}
 @end example
 This command adds @code{@var{symbol} = @var{value}} to the definition
-of @var{grobname} in the context @var{context}, and this definition
+of @var{objectname} in the context @var{context}, and this definition
 stays in place until it is removed.
 
 An existing definition may be removed by the following command
 @c
 @example
-\property @var{context}.@var{grobname} \revert @var{symbol}
+\property @var{context}.@var{objectname} \revert @var{symbol}
 @end example
 @c
 All @code{\override} and @code{\revert} commands should be balanced.
@@ -6732,7 +6839,7 @@ The @code{\set} shorthand, performs a revert followed by an override,
 and is often more convenient to use
 
 @example
-\property @var{context}.@var{grobname} \set @var{symbol} = @var{value}
+\property @var{context}.@var{objectname} \set @var{symbol} = @var{value}
 @end example
 
 Some examples: 
@@ -6884,7 +6991,12 @@ The @code{Fingering} object has a fixed size
 objects (@internalsref{side-position-interface}) vertically, and its
 placement is coordinated with other scripts
 (@internalsref{text-script-interface}).  It also has the standard
-@internalsref{grob-interface} with all the variables that come with
+@internalsref{grob-interface} (grob stands for Graphical object)
+@cindex grob
+@cindex graphical object
+@cindex layout object
+@cindex object, layout 
+with all the variables that come with
 it.  Finally, it denotes a fingering instruction, so it has
 @internalsref{finger-interface}.
 
@@ -6970,17 +7082,17 @@ syntax is
 @end example
 where @var{proc} is a Scheme function, taking four arguments.
 
-When interpreted, the function @var{proc} is called for every grob found
+When interpreted, the function @var{proc} is called for every layout object found
 in the context, with the following arguments:
 @itemize @bullet
-@item the grob itself
-@item the context where the grob was created
+@item the layout object itself
+@item the context where the layout object was created
 @item the context where @code{\applyoutput} is processed.
 @end itemize
 
-In addition, the cause of the grob, i.e.  the music expression or object
-that was responsible for creating the object, is in the object property
-@code{cause}.  For example, for a note head, this is a
+In addition, the cause of the layout object, i.e.  the music
+expression or object that was responsible for creating it, is in the
+object property @code{cause}.  For example, for a note head, this is a
 @internalsref{NoteHead} event, and for a @internalsref{Stem} object,
 this is a @internalsref{NoteHead} object.
 
@@ -6988,7 +7100,7 @@ this is a @internalsref{NoteHead} object.
 @node Outputproperty
 @subsection Outputproperty
 
-@cindex \outputproperty
+@cindex @code{\outputproperty}
 
 Another way of tuning objects is the more arcane @code{\outputproperty}
 feature.  The syntax is as follows:
@@ -7107,9 +7219,12 @@ to override default setting, which are always present. For example:
 
 The following commands set @code{fontSize} for the current voice.
 
-@refcommand tiny  
-@refcommand small  
-@refcommand normalsize
+@cindex @code{\tiny}
+@code{\tiny}, 
+@cindex @code{\small}
+@code{\small}, 
+@cindex @code{\normalsize}
+@code{\normalsize}, 
 
 @refbugs
 
@@ -7159,11 +7274,11 @@ For clarity, you can also do this for single arguments, e.g.
 
 The following size commands set abolute sizes
 
-@cindex \teeny
-@cindex \tiny
-@cindex \small
-@cindex \large
-@cindex \huge
+@cindex @code{\teeny}
+@cindex @code{\tiny}
+@cindex @code{\small}
+@cindex @code{\large}
+@cindex @code{\huge}
 
 @table @code
 @item \teeny
@@ -7179,10 +7294,10 @@ with the commands @code{\larger} and @code{\smaller}.
 @cindex larger
 
 @cindex font style, for texts
-@cindex \bold
-@cindex \dynamic
-@cindex \number
-@cindex \italic
+@cindex @code{\bold}
+@cindex @code{\dynamic}
+@cindex @code{\number}
+@cindex @code{\italic}
 
 The following font change commands are defined:
 @table @code
@@ -7206,8 +7321,8 @@ Changes @code{font-series} to @code{bold}
 @cindex moving text
 @cindex translating text
 
-@cindex \sub
-@cindex \super
+@cindex @code{\sub}
+@cindex @code{\super}
 
 Raising and lowering texts can be done with @code{\super} and
 @code{\sub}.
@@ -7216,7 +7331,7 @@ Raising and lowering texts can be done with @code{\super} and
  c1^\markup { E "=" mc \super "2" }
 @end lilypond
 
-@cindex \raise
+@cindex @code{\raise}
 
 If you want to give an explicit amount for lowering or raising, use
 @code{\raise}.  This command takes a Scheme valued first argument, and
@@ -7236,7 +7351,7 @@ Other commands taking  single arguments include
 respectively.
 
 @item \musicglyph
-@cindex \musicglyph
+@cindex @code{\musicglyph}
   This is converted to a musical symbol, e.g. @code{\musicglyph
 #"accidentals-0"} will select the natural sign from the music font.
 See @ref{The Feta font} for  a complete listing of the possible glyphs.
@@ -7244,8 +7359,14 @@ See @ref{The Feta font} for  a complete listing of the possible glyphs.
 This produces a single character, e.g. @code{\char #65} produces the 
 letter 'A'.
 
+@item \note
+@cindex @code{\note @var{log} @var{dots} @var{dir}}
+
+This produces a note with a stem pointing in @var{dir} direction, with
+duration log @var{log} and @var{dots} augmentation dots.
+
 @item \hspace #@var{amount}
-@cindex \hspace
+@cindex @code{\hspace}
 This produces a invisible object taking horizontal space.
 @example 
 \markup @{ A \hspace #2.0 B @} 
@@ -7254,7 +7375,7 @@ will put extra space between A and B, on top of the space that is
 normally inserted before elements on a line.
 
 @item \fontsize #@var{size}
-@cindex \fontsize
+@cindex @code{\fontsize}
 This sets the relative font size, eg.
 @example
 A \fontsize #2 @{ B C @} D
@@ -7271,7 +7392,7 @@ A \translate #(cons 2 -3) @{ B C @} D
 This moves `B C' 2 spaces to the right, and 3 down.
 
 @item \magnify  #@var{mag}
-@cindex \magnify
+@cindex @code{\magnify}
 This sets the font magnification for the its argument. In the following
 example, the middle A will be 10% larger.
 @example
@@ -7280,11 +7401,11 @@ A \magnify #1.1 @{ A @} A
 
 
 @item \override #(@var{key} . @var{value})
-@cindex \override
+@cindex @code{\override}
 This overrides a  formatting property for its argument. The argument
 should be a key/value pair, e.g.
 @example
-m \override #'(font-family . math) m m
+  m \override #'(font-family . math) m m
 @end example
 @end table
 
@@ -7657,7 +7778,8 @@ Lilypond and @code{ly2dvi})
 
 @refcommands
 
-@refcommand newpage 
+@cindex @code{\newpage}
+@code{\newpage}, 
 
 
 @seealso