]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/staff.itely
Merge branch 'master' of ssh+git://git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / user / staff.itely
index cc4a830cae0d77720d31d4cc8b5b866d58704ba5..e9b770bd400413a528581d5be6fef721b84d029e 100644 (file)
@@ -9,20 +9,16 @@
 @node Staff notation
 @section Staff notation
 
 @node Staff notation
 @section Staff notation
 
-@lilypondfile[quote,ragged-right,line-width=16\cm,staffsize=16]
-{staff-headword.ly}
+@lilypondfile[quote]{staff-headword.ly}
 
 
-Notes, dynamic signs, rests, etc., are grouped with a set of horizontal
-lines, called a staff (plural @q{staves}).  In LilyPond, these
-lines are drawn using a separate layout object called @code{staff
-symbol}.
-
-Two or more staves can be grouped vertically in a @code{GrandStaff}, a
-@code{StaffGroup}, or a @code{ChoirStaff}.
 
 
+This section explains how to influence the staff appearance, 
+print scores with more than one staff, and 
+how to apply specific performance marks to single staves.
 
 @menu
 * Displaying staves::           
 
 @menu
 * Displaying staves::           
+* Modifying single staves::     
 * Writing parts::               
 @end menu
 
 * Writing parts::               
 @end menu
 
@@ -30,35 +26,152 @@ Two or more staves can be grouped vertically in a @code{GrandStaff}, a
 @node Displaying staves
 @subsection Displaying staves
 
 @node Displaying staves
 @subsection Displaying staves
 
+This section shows the different possibilities to create and group
+staves into groups, which can be marked in the beginning of each
+line with either a bracket or a brace.
+
 @menu
 @menu
-* System start delimiters::     
-* Staff symbol::                
-* Hiding staves::               
+* Instantiating new staves::
+* Grouping staves:: 
+* Deeper nested staff groups::  
 @end menu
 
 @end menu
 
-@node System start delimiters
-@unnumberedsubsubsec System start delimiters
+@node Instantiating new staves
+@subsubsection Instantiating new staves
+
+@cindex new staff
+@cindex staff initiation
+@cindex staff instantiation
+@cindex staff, new
+@cindex staff, single
+@cindex drum staff
+@cindex percussion staff
+@cindex Gregorian transcription staff
+@cindex rhythmic staff
+@cindex tabstaff
+@cindex tablature
+
+The lines of a staff (pl. staves) are produced by the @code{staff symbol} 
+layout object.  Staves are created with the @code{\new} or
+@code{\context} commands.  For an explanation on these commands,
+see @ref{Creating contexts}.
+
+There are different predefined staff contexts available in Lilypond:
+
+@itemize
+@item
+The default is @code{Staff}:
+@lilypond[verbatim,ragged-right,quote]
+\relative c'' {
+  \new Staff { c d e f }
+}
+@end lilypond
+
+@item
+@code{DrumStaff} creates a five line staff set up for a typical drum set.
+It uses different names for each instrument.  The instrument names have to
+be set using the @code{drummode}.  See @ref{Percussion staves}.
+@lilypond[verbatim,ragged-right,quote]
+\new DrumStaff { 
+  \drummode { cymc hh ss tomh }
+}
+@end lilypond
+
+@item
+@code{GregorianTranscriptionStaff} sets up a staff to notate modern
+Gregorian chant.  It does not show bar lines.
+@lilypond[verbatim,ragged-right,quote]
+\relative c'' {
+  \new GregorianTranscriptionStaff { c d e f }
+}
+@end lilypond
+
+@item
+@code{RhythmicStaff} can be used to show the rhythm of some music.  The
+notes are printed on one line regardless of their pitch, but the duration
+is preserved.  See @ref{Showing melody rhythms}.
+@lilypond[verbatim,ragged-right,quote]
+\relative c'' {
+  \new RhythmicStaff { c d e f }
+}
+@end lilypond
+
+@item
+@code{TabStaff} creates by default a tablature with six strings in 
+standard guitar tuning.  See @ref{Tablatures basic}.
+@lilypond[verbatim,ragged-right,quote]
+\relative c'' {
+  \new TabStaff { c d e f }
+}
+@end lilypond
+
+@end itemize
+
+@noindent
+Besides these staves there are two staff contexts specific for the notation
+of ancient music: @code{MensuralStaff} and @code{VaticanaStaff}.  They are
+described in @ref{Pre-defined contexts}.
+
+Once a staff is instantiated it can be started or stopped at every point
+in the score.  This is done with the commands @code{\startStaff} and 
+@code{\stopStaff}.  How to use it is explained in @ref{Staff symbol}.
+
+
+@seealso
+
+Music Glossary: @rglos{staff}, @rglos{staves}.
+
+Notation Reference: @ref{Percussion staves}, 
+@ref{Tablatures basic}, @ref{Gregorian Chant contexts}, and
+@ref{Mensural contexts}.
+
+Snippets: @lsrdir{Staff,Staff-notation}.
+
+Internals Reference: @internalsref{Staff}, @internalsref{DrumStaff},
+@internalsref{GregorianTranscriptionStaff}, @internalsref{RhythmicStaff},
+@internalsref{TabStaff}, @internalsref{MensuralStaff},
+@internalsref{VaticanaStaff}.
+
+
+
+@node Grouping staves
+@subsubsection Grouping staves
 
 @cindex start of system
 @cindex staff, multiple
 
 @cindex start of system
 @cindex staff, multiple
+@cindex staves, multiple
+@cindex system start delimiters
 @cindex bracket, vertical
 @cindex brace, vertical
 @cindex grand staff
 @cindex bracket, vertical
 @cindex brace, vertical
 @cindex grand staff
+@cindex piano staff
 @cindex staff group
 @cindex staff, choir
 @cindex staff group
 @cindex staff, choir
+@cindex choir staff
 @cindex system
 
 @cindex system
 
-Many scores consist of more than one staff.  These staves can be
-grouped in several different ways:
+LilyPond provides different types of contexts to group single staves 
+together.  These contexts influence in the first place the appearance
+of the system start delimiter, but they have also influence on the
+behavior of the bar lines.
+
+Each staff group context sets the property
+@code{systemStartDelimiter} to one of the values
+@code{SystemStartBar}, @code{SystemStartBrace},
+and @code{SystemStartBracket}.  A fourth delimiter,
+@code{systemStartSquare}, is also available, but must be
+instantiated manually.  The usage of this last delimiter is shown further
+down in the snippet section.
+
 
 @itemize
 @item
 
 @itemize
 @item
-In a @code{GrandStaff}, the group is started with a brace
-at the left, and bar lines are connected between the staves. 
+If no context is specified, the default properties for the score
+will be used: the group is started with a vertical line, and the
+bar lines are not connected.  
 
 @lilypond[verbatim,ragged-right,quote]
 
 @lilypond[verbatim,ragged-right,quote]
-\new GrandStaff
-\relative <<
+\relative c'' <<
   \new Staff { c1 c }
   \new Staff { c c }
 >>
   \new Staff { c1 c }
   \new Staff { c c }
 >>
@@ -66,116 +179,250 @@ at the left, and bar lines are connected between the staves.
 
 @item
 In a @code{StaffGroup}, the bar lines will be drawn through
 
 @item
 In a @code{StaffGroup}, the bar lines will be drawn through
-all the staves, but the group is started with a bracket.
+all the staves, and the group is started with a bracket.
 
 @lilypond[verbatim,ragged-right,quote]
 
 @lilypond[verbatim,ragged-right,quote]
-\new StaffGroup
-\relative <<
-  \new Staff { c1 c }
-  \new Staff { c c }
->>
+\new StaffGroup {
+  \relative c'' <<
+    \new Staff { c1 c }
+    \new Staff { c c }
+  >>
+}
 @end lilypond
 
 @item
 @end lilypond
 
 @item
-In a @code{ChoirStaff}, the group is started with a
-bracket, but bar lines are not connected. 
+In a @code{ChoirStaff}, the group is 
+started with a bracket, but bar lines are not connected. 
 
 @lilypond[verbatim,ragged-right,quote]
 
 @lilypond[verbatim,ragged-right,quote]
-\new ChoirStaff
-\relative <<
-  \new Staff { c1 c }
-  \new Staff { c c }
->>
+\new ChoirStaff {
+  \relative c'' <<
+    \new Staff { c1 c }
+    \new Staff { c c }
+  >>
+}
 @end lilypond
 
 @item
 @end lilypond
 
 @item
-If no context is specified, the default properties for the score
-will be used: the group is started with a vertical line, and the
-bar lines are not connected.  
+In a @code{GrandStaff}, the group is started with a brace
+at the left, and bar lines are connected between the staves. 
 
 @lilypond[verbatim,ragged-right,quote]
 
 @lilypond[verbatim,ragged-right,quote]
-\relative <<
-  \new Staff { c1 c }
-  \new Staff { c c }
->>
+\new GrandStaff {
+  \relative c'' <<
+    \new Staff { c1 c }
+    \new Staff { c c }
+  >>
+}
+@end lilypond
+
+@item
+The @code{PianoStaff} behaves almost as the @code{GrandStaff} but is
+optimized for setting piano music.
+
+@lilypond[verbatim,ragged-right,quote]
+\new PianoStaff {
+  \relative c'' <<
+    \new Staff { c1 c }
+    \new Staff { c c }
+  >>
+}
 @end lilypond
 @end lilypond
+
 @end itemize
 
 @end itemize
 
-@cindex Mensurstriche layout
-@cindex Renaissance music
+According to classic engraver rules an orchestral score consists of
+staves connected only with a single line at the beginning of the system. 
+In LilyPond this is produced grouping the @code{Staff} contexts with
+@code{<< ... >>}.
 
 
-In addition to these four staff group types, other groupings can
-be produced by changing various properties. E.g., the
-@q{Mensurstriche} layout common in Renaissance music, with
-bar lines running between but not through the staves, can be
-produced from a @code{StaffGroup} or @code{GrandStaff} context if
-the bar lines are made transparent in the @code{Staff} itself, with
-the command @code{\override Staff.BarLine #'transparent = ##t}
+Each instrument family is grouped inside of a @code{StaffGroup} with a 
+starting bracket.  A group of same instruments or an instrument using
+more than one staff is grouped with braces in a @code{GrandStaff}.
 
 
-@cindex staff, nested
+As the context names tell, @code{PianoStaff} is used for notating
+piano music and @code{ChoirStaff} for all kind of vocal ensemble music.
 
 
-Staff groups can be nested, using the context
-@code{InnerStaffGroup} or @code{InnerChoirStaff}; see
-@lsr{staff,staff-brackets.ly}
-@c snippet 137
 
 
-@commonprop
+@snippets
 
 
-More complex nesting can be accomplished using the property
-@code{systemStartDelimiterHierarchy}: 
+@c FIXME: not yet in master
+@c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+@c {use-square-bracket-at-the-start-of-a-staff-group.ly}
 
 
-@lilypond[quote,ragged-right,verbatim]
-\new StaffGroup
-\relative <<
-  \set StaffGroup.systemStartDelimiterHierarchy
-    = #'(SystemStartSquare (SystemStartBracket a
-                             (SystemStartSquare b)) d)
-  \new Staff { c1 }
-  \new Staff { c1 }
-  \new Staff { c1 }
-  \new Staff { c1 }
-  \new Staff { c1 }
->>
-@end lilypond
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{display-bracket-with-only-one-staff-in-a-system.ly}
 
 
-Each staff group context sets the property
-@code{systemStartDelimiter} to one of the values
-@internalsref{SystemStartBar}, @internalsref{SystemStartBrace},
-and @internalsref{SystemStartBracket}.  A fourth delimiter,
-@code{systemStartSquare}, is also available, but must be
-instantiated manually
+@cindex mensurstriche layout
+@cindex renaissance music
+@cindex transcription of mensural music
+@cindex mensural music, transcription of
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{mensurstriche-layout-bar-lines-between-the-staves.ly}
 
 
-@c FIXME: Graham will deal with this.  -gp
-@c snippet 201
-To display a bracket even if there is only one staff, see
-@lsr{staff,display-bracket-with-only-one-staff-in-a
-system.ly}
 
 @seealso
 
 
 @seealso
 
-Music Glossary: @rglos{brace}, @rglos{staff}, @rglos{staves}
+Music Glossary: @rglos{brace}, 
 @rglos{bracket}.
 
 @rglos{bracket}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{ChoirStaff},
 @internalsref{GrandStaff}, @internalsref{StaffGroup},
 @internalsref{SystemStartBar}, @internalsref{SystemStartBrace},
 
 Internals Reference: @internalsref{ChoirStaff},
 @internalsref{GrandStaff}, @internalsref{StaffGroup},
 @internalsref{SystemStartBar}, @internalsref{SystemStartBrace},
-@internalsref{SystemStartBracket},
+@internalsref{SystemStartBracket}, and @internalsref{systemStartSquare}.
+
+
+@node Deeper nested staff groups
+@subsubsection Deeper nested staff groups
+
+There are also two inner staff contexts named @code{InnerStaffGroup}
+and @code{InnerChoirStaffGroup} besides the grouping contexts mentioned
+in @ref{Grouping staves}.  They behave in the same way as their simple
+counterparts, except that they are contained in another staff grouping
+context, thus producing one more bracket on top of the existing one. 
+Note that @code{GrandStaff} and @code{PianoStaff} do not have any inner
+grouping contexts.  They can both be inside any other staff context, 
+including inner staff groups, though.
+
+Here is an example of an orchestral score using groupings and nesting
+of these groupings.  Note that the instrument names are omitted from the
+source code, see @ref{Instrument names} how to set them.
+
+@cindex staff, nested
+@cindex staves, nested
+@cindex nesting of staves
+@cindex system start delimiters, nested
+@cindex nested staff brackets
+@cindex brackets, nesting of
+@cindex braces, nesting of
+@cindex inner staff group
+@cindex inner choir staff group
+
+
+@example
+\score @{ <<
+  \new StaffGroup %woodwinds
+  <<
+  \new Staff @{ c'1 d' @} %flute
+  \new InnerStaffGroup <<
+    \new Staff @{ c' d' @} %sax 
+    \new Staff @{ c' d' @} %oboe
+    \new Staff @{ c' d' @} %English horn
+    >>
+  \new Staff @{ \clef bass c d @} %bassoon
+  >>
+  \new StaffGroup %the brass group
+  <<
+    \new Staff @{ c' d' @} %trumpet
+    \new Staff @{ \clef bass c d @} %trombone
+    \new GrandStaff %the horns need a GrandStaff (same instrument)
+    <<
+      \new Staff @{ c' d' @}
+      \new Staff @{ \clef bass c d @}
+    >>
+  >>
+  \new ChoirStaff %for setting vocal music
+  <<
+   \new Staff @{ c' d' @}
+    \new InnerChoirStaff <<
+     \new Staff @{ c' d' @}
+     \new Staff @{ c' d' @}
+    >>
+   \new Staff @{ c' d' @}
+  >>
+  \new PianoStaff %for the piano
+  <<
+    \new Staff @{ c' d' @}
+    \new Staff @{\clef bass c d @}
+  >>
+>> @}
+@end example
+
+@c no verbatim so instrument names are only in the music
+@lilypond[ragged-right,quote]
+\score { <<
+  \new StaffGroup %woodwinds
+  <<
+  \new Staff {\set Staff.instrumentName = "fl" c'1 d' } %flute
+  \new InnerStaffGroup <<
+    \new Staff { \set Staff.instrumentName = "sax" c' d' } %sax 1
+    \new Staff { \set Staff.instrumentName = "ob" c' d' } %sax 2
+    \new Staff { \set Staff.instrumentName = "ca" c' d' }
+    >>
+  \new Staff {\set Staff.instrumentName = "bs" \clef bass c d } %bassoon
+  >>
+  \new StaffGroup %the brass group
+  <<
+    \new Staff {\set Staff.instrumentName = "tr" c' d' } %trumpet
+    \new Staff {\set Staff.instrumentName = "tb" \clef bass c d } %trombone
+    \new GrandStaff %the horns need a GrandStaff (same instrument)
+    <<
+      \new Staff {\set Staff.instrumentName = "cor1" c' d' }
+      \new Staff {\set Staff.instrumentName = "cor2" \clef bass c d }
+    >>
+  >>
+  \new ChoirStaff %for setting vocal music
+  <<
+   \new Staff {\set Staff.instrumentName = "S" c' d' }
+    \new InnerChoirStaff <<
+     \new Staff {\set Staff.instrumentName = "A1" c' d' }
+     \new Staff {\set Staff.instrumentName = "A2" c' d' }
+    >>
+   \new Staff {\set Staff.instrumentName = "T" c' d' }
+  >>
+  \new PianoStaff %for the piano
+  <<
+    \new Staff { c' d' }
+    \new Staff {\clef bass c d }
+  >>
+>> }
+@end lilypond
+
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{nesting-staves.ly}
+
+
+@seealso
+
+Internals Reference: @internalsref{SystemStartBar}, 
+@internalsref{SystemStartBrace}, @internalsref{SystemStartBracket},
 @internalsref{systemStartDelimiterHierarchy}.
 
 
 @internalsref{systemStartDelimiterHierarchy}.
 
 
+
+@node Modifying single staves
+@subsection Modifying single staves
+
+@menu
+* Staff symbol::   
+* Ossia staves::             
+* Hiding staves::    
+@end menu
+
 @node Staff symbol
 @node Staff symbol
-@unnumberedsubsubsec Staff symbol
+@subsubsection Staff symbol
 
 @cindex adjusting staff symbol
 
 @cindex adjusting staff symbol
+@cindex drawing staff symbol
+@cindex stop staff lines
+@cindex start staff lines
+@cindex staff lines, amount of
+@cindex staff line, thickness of
+@cindex amount of staff lines
+@cindex thickness of staff lines
 
 The layout object which draws the lines of a staff is called
 @code{staff symbol}.  The staff symbol may be tuned in the number,
 thickness and distance of lines, using properties.  This is
 demonstrated in the example files
 
 The layout object which draws the lines of a staff is called
 @code{staff symbol}.  The staff symbol may be tuned in the number,
 thickness and distance of lines, using properties.  This is
 demonstrated in the example files
-@lsr{staff,changing-the-number-of-lines-in-a-staff.ly} and
-@lsr{staff,changing-the-staff-size.ly}.
+@c @lsr{staff,changing-the-number-of-lines-in-a-staff.ly} and
+@c @lsr{staff,changing-the-staff-size.ly}.
 
 In addition, staves may be started and stopped at will.  This is
 done with @code{\startStaff} and @code{\stopStaff}.
 
 In addition, staves may be started and stopped at will.  This is
 done with @code{\startStaff} and @code{\stopStaff}.
@@ -190,6 +437,9 @@ b b
 b b
 @end lilypond
 
 b b
 @end lilypond
 
+@node Ossia staves
+@subsubsection Ossia staves
+
 @cindex staves, Frenched
 @cindex ossia
 @cindex Frenched staves
 @cindex staves, Frenched
 @cindex ossia
 @cindex Frenched staves
@@ -234,18 +484,23 @@ In combination with Frenched staves, this may be used to typeset
 @cindex thickness of staff lines, setting
 @cindex number of staff lines, setting
 
 @cindex thickness of staff lines, setting
 @cindex number of staff lines, setting
 
+@snippets
+
+@c  lilypondfile{Making-some-staff-lines-thicker-than-the-others.ly}
+@c snippet 277
+
 @seealso
 
 Music Glossary: @rglos{ossia}, @rglos{staff}, @rglos{Frenched staff}.
 
 @seealso
 
 Music Glossary: @rglos{ossia}, @rglos{staff}, @rglos{Frenched staff}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{StaffSymbol},
 @internalsref{DrumStaff}.
 
 
 @node Hiding staves
 
 Internals Reference: @internalsref{StaffSymbol},
 @internalsref{DrumStaff}.
 
 
 @node Hiding staves
-@unnumberedsubsubsec Hiding staves
+@subsubsection Hiding staves
 
 @cindex Frenched scores
 @cindex staves, hiding
 
 @cindex Frenched scores
 @cindex staves, hiding
@@ -316,7 +571,7 @@ You can make the staff lines invisible by removing the
 
 Notation Reference: @ref{Staff symbol}.
 
 
 Notation Reference: @ref{Staff symbol}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{ChordNames},
 @internalsref{FiguredBass}, @internalsref{Lyrics},
 
 Internals Reference: @internalsref{ChordNames},
 @internalsref{FiguredBass}, @internalsref{Lyrics},
@@ -333,7 +588,7 @@ Internals Reference: @internalsref{ChordNames},
 @end menu
 
 @node Metronome marks
 @end menu
 
 @node Metronome marks
-@unnumberedsubsubsec Metronome marks
+@subsubsection Metronome marks
 
 @cindex Tempo
 @cindex beats per minute
 
 @cindex Tempo
 @cindex beats per minute
@@ -355,7 +610,7 @@ the layout output, a metronome marking is printed
 @end lilypond
 
 
 @end lilypond
 
 
-@commonprop
+@snippets
 
 To change the tempo in the MIDI output without printing anything,
 make the metronome marking invisible @example \once \override
 
 To change the tempo in the MIDI output without printing anything,
 make the metronome marking invisible @example \once \override
@@ -378,18 +633,17 @@ For more details, see @ref{Text markup}.
 @seealso
 
 Music Glossary: @rglos{metronome}, @rglos{metronomic indication},
 @seealso
 
 Music Glossary: @rglos{metronome}, @rglos{metronomic indication},
-@rglos{tempo indication}.
-@c FIXME : add @rglos{Mälzels Metronome}, @rglos{M.M.}, @rglos{tempo}?
+@rglos{tempo indication}, @rglos{metronome mark}.
 
 Notation Reference: @ref{Text markup}.
 
 
 Notation Reference: @ref{Text markup}.
 
-Snippets: @lsrdir{staff}.
+Snippets: @lsrdir{Staff,Staff-notation}.
 
 Internals Reference: @internalsref{MetronomeMark}, @ref{MIDI
 output}.
 
 
 
 Internals Reference: @internalsref{MetronomeMark}, @ref{MIDI
 output}.
 
 
-@refbugs
+@knownissues
 
 Collisions are not checked.  If you have notes above the top line
 of the staff (or notes with articulations, slurs, text, etc), then
 
 Collisions are not checked.  If you have notes above the top line
 of the staff (or notes with articulations, slurs, text, etc), then
@@ -405,7 +659,7 @@ place it further away from the staff.
 
 
 @node Instrument names
 
 
 @node Instrument names
-@unnumberedsubsubsec Instrument names
+@subsubsection Instrument names
 
 @cindex instrument names
 @cindex instrument names, short
 
 @cindex instrument names
 @cindex instrument names, short
@@ -441,20 +695,20 @@ c''1
 
 @cindex instrument names, centering
 
 
 @cindex instrument names, centering
 
-If you wish to center the instrument names, you must center all of
-them individually:
+As instrument names are centered by default, multi line names
+are better entered using @code{\center-align}:
 
 @lilypond[quote,verbatim,ragged-right]
 { <<
 \new Staff {
 
 @lilypond[quote,verbatim,ragged-right]
 { <<
 \new Staff {
-  \set Staff.instrumentName = \markup {
-    \center-align { "Clarinetti"
-      \line { "in B" \smaller \flat } } }
+  \set Staff.instrumentName = \markup \center-align {
+    Clarinetti
+    \line { "in B" \smaller \flat }
+  }
   c''1
 }
 \new Staff {
   c''1
 }
 \new Staff {
-  \set Staff.instrumentName =
-       \markup{ \center-align { Vibraphone }}
+  \set Staff.instrumentName = "Vibraphone"
   c''1
 }
 >>
   c''1
 }
 >>
@@ -464,23 +718,9 @@ them individually:
 For longer instrument names, it may be useful to increase the
 @code{indent} setting in the @code{\layout} block.
 
 For longer instrument names, it may be useful to increase the
 @code{indent} setting in the @code{\layout} block.
 
-To center instrument names while leaving extra space to the right,
-
-@lilypond[quote,verbatim,ragged-right]
-\new StaffGroup \relative
-<<
-  \new Staff {
-    \set Staff.instrumentName =
-        \markup { \hcenter-in #10 "blabla" }
-    c1 c1
-  }
-  \new Staff {
-    \set Staff.instrumentName =
-         \markup { \hcenter-in #10 "blo" }
-    c1 c1
-  }
->>
-@end lilypond
+Short instrument names, printed before the systems following the first
+one, are also centered by default, in a space which width is given by
+the @code{short-indent} variable of the @code{\layout} block.
 
 To add instrument names to other contexts (such as
 @code{GrandStaff}, @code{ChoirStaff}, or @code{StaffGroup}), the
 
 To add instrument names to other contexts (such as
 @code{GrandStaff}, @code{ChoirStaff}, or @code{StaffGroup}), the
@@ -516,18 +756,19 @@ c1 c c c \break
 
 Notation Reference: @ref{Modifying context plug-ins}.
 
 
 Notation Reference: @ref{Modifying context plug-ins}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{InstrumentName},
 @internalsref{PianoStaff}, @internalsref{Staff}.
 
 
 @node Quoting other voices
 
 Internals Reference: @internalsref{InstrumentName},
 @internalsref{PianoStaff}, @internalsref{Staff}.
 
 
 @node Quoting other voices
-@unnumberedsubsubsec Quoting other voices
+@subsubsection Quoting other voices
 
 @cindex cues
 @cindex quoting other voices
 @cindex fragments
 
 @cindex cues
 @cindex quoting other voices
 @cindex fragments
+@cindex cue notes
 
 With quotations, fragments of other parts can be inserted into a
 part directly.  Before a part can be quoted, it must be marked
 
 With quotations, fragments of other parts can be inserted into a
 part directly.  Before a part can be quoted, it must be marked
@@ -618,7 +859,7 @@ notes and rests of the quoted voice end up in the
 will quote notes (but no rests), together with scripts and
 dynamics.
 
 will quote notes (but no rests), together with scripts and
 dynamics.
 
-@refbugs
+@knownissues
 
 Only the contents of the first @code{Voice} occurring in an
 @code{\addQuote} command will be considered for quotation, so
 
 Only the contents of the first @code{Voice} occurring in an
 @code{\addQuote} command will be considered for quotation, so
@@ -637,14 +878,19 @@ written entirely in lower-case letters: @code{\addquote}.
 
 Notation Reference: @ref{Instrument transpositions}.
 
 
 Notation Reference: @ref{Instrument transpositions}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{QuoteMusic}, @internalsref{Voice}.
 
 
 @node Formatting cue notes
 
 Internals Reference: @internalsref{QuoteMusic}, @internalsref{Voice}.
 
 
 @node Formatting cue notes
-@unnumberedsubsubsec Formatting cue notes
+@subsubsection Formatting cue notes
 
 
+@cindex cues
+@cindex cue notes
+@cindex cue notes, formatting
+@cindex fragments
+@cindex quoting other voices 
 @cindex cues, formatting
 
 The previous section deals with inserting notes from another
 @cindex cues, formatting
 
 The previous section deals with inserting notes from another
@@ -658,7 +904,7 @@ The syntax is
 @end example
 
 This will insert notes from the part @var{name} into a
 @end example
 
 This will insert notes from the part @var{name} into a
-@internalsref{Voice} called @code{cue}.  This happens
+@code{Voice} called @code{cue}.  This happens
 simultaneously with @var{music}, which usually is a rest.  When
 the cue notes start, the staff in effect becomes polyphonic for a
 moment.  The argument @var{updown} determines whether the cue
 simultaneously with @var{music}, which usually is a rest.  When
 the cue notes start, the staff in effect becomes polyphonic for a
 moment.  The argument @var{updown} determines whether the cue
@@ -696,19 +942,20 @@ smaller = {
 @end lilypond
 
 
 @end lilypond
 
 
-Here are a couple of hints for successful cue notes
+Here are a couple of hints for successful cue notes:
 
 @itemize
 @item
 Cue notes have smaller font sizes.
 
 @item
 
 @itemize
 @item
 Cue notes have smaller font sizes.
 
 @item
-the cued part is marked with the instrument playing the cue.
+The cued part is marked with the instrument playing the cue.
 
 @item
 
 @item
-when the original part takes over again, this should be marked
+When the original part takes over again, this should be marked
 with the name of the original instrument.
 
 with the name of the original instrument.
 
+@item
 Any other changes introduced by the cued part should also be
 undone.  For example, if the cued instrument plays in a different
 clef, the original clef should be stated once again.
 Any other changes introduced by the cued part should also be
 undone.  For example, if the cued instrument plays in a different
 clef, the original clef should be stated once again.
@@ -744,8 +991,8 @@ cbsn = \relative c, {
 
 @seealso
 
 
 @seealso
 
-Snippets: @lsrdir{staff}
-
+Snippets: @lsrdir{Staff,Staff-notation}.
 
 
+Internals Reference: @internalsref{Voice}.