]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/staff.itely
Merge branch 'master' of ssh+git://hanwen@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / user / staff.itely
index 04251b4eaad66083dafdcc3f1fd1a25e26b6a0f5..ee40671d525a568bc6dc16f2b91ab96c459b91b8 100644 (file)
@@ -17,9 +17,8 @@ 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
-@internalsref{GrandStaff}, a @internalsref{StaffGroup}, or a
-@internalsref{ChoirStaff}.
+Two or more staves can be grouped vertically in a @code{GrandStaff}, a
+@code{StaffGroup}, or a @code{ChoirStaff}.
 
 
 @menu
@@ -38,7 +37,7 @@ Two or more staves can be grouped vertically in a
 @end menu
 
 @node System start delimiters
-@unnumberedsubsubsec System start delimiters
+@subsubsection System start delimiters
 
 @cindex start of system
 @cindex staff, multiple
@@ -54,7 +53,7 @@ grouped in several different ways:
 
 @itemize
 @item
-In a @internalsref{GrandStaff}, the group is started with a brace
+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]
@@ -66,7 +65,7 @@ at the left, and bar lines are connected between the staves.
 @end lilypond
 
 @item
-In a @internalsref{StaffGroup}, the bar lines will be drawn through
+In a @code{StaffGroup}, the bar lines will be drawn through
 all the staves, but the group is started with a bracket.
 
 @lilypond[verbatim,ragged-right,quote]
@@ -78,7 +77,7 @@ all the staves, but the group is started with a bracket.
 @end lilypond
 
 @item
-In a @internalsref{ChoirStaff}, the group is started with a
+In a @code{ChoirStaff}, the group is started with a
 bracket, but bar lines are not connected. 
 
 @lilypond[verbatim,ragged-right,quote]
@@ -117,13 +116,13 @@ the command @code{\override Staff.BarLine #'transparent = ##t}
 
 Staff groups can be nested, using the context
 @code{InnerStaffGroup} or @code{InnerChoirStaff}; see
-@lsr{staff,staff-brackets.ly}
+@c @lsr{staff,staff-brackets.ly}
 @c snippet 137
 
 @commonprop
 
 More complex nesting can be accomplished using the property
-@internalsref{systemStartDelimiterHierarchy}: 
+@code{systemStartDelimiterHierarchy}: 
 
 @lilypond[quote,ragged-right,verbatim]
 \new StaffGroup
@@ -149,15 +148,14 @@ instantiated manually
 @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}
+@c @lsr{staff,display-bracket-with-only-one-staff-in-a system.ly}
 
 @seealso
 
 Music Glossary: @rglos{brace}, @rglos{staff}, @rglos{staves}
-@c FIXME add @rglos{bracket}
+@rglos{bracket}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
 Internals Reference: @internalsref{ChoirStaff},
 @internalsref{GrandStaff}, @internalsref{StaffGroup},
@@ -167,7 +165,7 @@ Internals Reference: @internalsref{ChoirStaff},
 
 
 @node Staff symbol
-@unnumberedsubsubsec Staff symbol
+@subsubsection Staff symbol
 
 @cindex adjusting staff symbol
 
@@ -175,8 +173,8 @@ 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}.
@@ -237,29 +235,29 @@ In combination with Frenched staves, this may be used to typeset
 
 @seealso
 
-Music Glossary: @rglos{ossia}, @rglos{staff},
-@c FIXME: add  @rglos{Frenched staff}
+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
-@unnumberedsubsubsec Hiding staves
+@subsubsection Hiding staves
 
 @cindex Frenched scores
-@cindex staves, hiding 
+@cindex staves, hiding
+@cindex staves, empty 
 
 In orchestral scores, staff lines that only have rests are usually
 removed; this saves some space.  This style is called @q{French
-Score}.  For @internalsref{Lyrics}, @internalsref{ChordNames} and
-@internalsref{FiguredBass}, this is switched on by default.  When
+Score}.  For @code{Lyrics}, @code{ChordNames} and
+@code{FiguredBass}, this is switched on by default.  When
 the lines of these contexts turn out empty after the line-breaking
 process, they are removed.
 
-For normal staves, a specialized @internalsref{Staff} context is
+For normal staves, a specialized @code{Staff} context is
 available, which does the same: staves containing nothing (or only
 multi-measure rests) are removed.  The context definition is
 stored in @code{\RemoveEmptyStaffContext} variable.  Observe how
@@ -280,7 +278,7 @@ the second staff in this example disappears in the second line
 
 The first system shows all staves in full.  If empty staves should
 be removed from the first system too, set @code{remove-first} to
-true in @internalsref{VerticalAxisGroup}.
+true in @code{VerticalAxisGroup}.
 
 @example
 \override Score.VerticalAxisGroup #'remove-first = ##t
@@ -290,6 +288,8 @@ To remove other types of contexts, use
 @code{\AncientRemoveEmptyStaffContext} or
 @code{\RemoveEmptyRhythmicStaffContext}.
 
+@cindex ossia
+
 Another application of the @code{\RemoveEmptyStaffContext} is to
 make ossia sections, i.e., alternative melodies on a separate
 piece of staff, with help of a Frenched staff.  See @ref{Staff
@@ -313,7 +313,13 @@ You can make the staff lines invisible by removing the
 
 @seealso
 
-Snippets: @lsrdir{staff}
+Notation Reference: @ref{Staff symbol}.
+
+Snippets: @lsrdir{Staff,Staff-notation}
+
+Internals Reference: @internalsref{ChordNames},
+@internalsref{FiguredBass}, @internalsref{Lyrics},
+@internalsref{Staff}, @internalsref{VerticalAxisGroup}.
 
 @node Writing parts
 @subsection Writing parts
@@ -326,7 +332,7 @@ Snippets: @lsrdir{staff}
 @end menu
 
 @node Metronome marks
-@unnumberedsubsubsec Metronome marks
+@subsubsection Metronome marks
 
 @cindex Tempo
 @cindex beats per minute
@@ -370,6 +376,13 @@ For more details, see @ref{Text markup}.
 
 @seealso
 
+Music Glossary: @rglos{metronome}, @rglos{metronomic indication},
+@rglos{tempo indication}, @rglos{metronome mark}.
+
+Notation Reference: @ref{Text markup}.
+
+Snippets: @lsrdir{Staff,Staff-notation}.
+
 Internals Reference: @internalsref{MetronomeMark}, @ref{MIDI
 output}.
 
@@ -388,24 +401,23 @@ place it further away from the staff.
 
 @c perhaps also an example of how to move it horizontally?
 
-@seealso
-
-Snippets: @lsrdir{staff}
 
 @node Instrument names
-@unnumberedsubsubsec Instrument names
+@subsubsection Instrument names
+
+@cindex instrument names
+@cindex instrument names, short
 
 In an orchestral score, instrument names are printed at the left
 side of the staves.
 
-This can be achieved by setting
-@internalsref{Staff}.@code{instrumentName} and
-@internalsref{Staff}.@code{shortInstrumentName}, or
-@internalsref{PianoStaff}.@code{instrumentName} and
-@internalsref{PianoStaff}.@code{shortInstrumentName}.  This will
-print text before the start of the staff.  For the first staff,
-@code{instrumentName} is used.  If set, @code{shortInstrumentName}
-is used for the following staves.
+This can be achieved by setting @code{Staff}.@code{instrumentName} and
+@code{Staff}.@code{shortInstrumentName}, or
+@code{PianoStaff}.@code{instrumentName} and
+@code{PianoStaff}.@code{shortInstrumentName}.  This will print text
+before the start of the staff.  For the first staff,
+@code{instrumentName} is used.  If set, @code{shortInstrumentName} is
+used for the following staves.
 
 @lilypond[quote,verbatim,ragged-right,relative=1,fragment]
 \set Staff.instrumentName = "Ploink "
@@ -425,20 +437,22 @@ instrument names, for example
 c''1
 @end lilypond
 
-If you wish to center the instrument names, you must center all of
-them individually:
+@cindex instrument names, centering
+
+As instrument names are centered by default, multi line names
+are better entered using @code{\center-align}:
 
 @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 {
-  \set Staff.instrumentName =
-       \markup{ \center-align { Vibraphone }}
+  \set Staff.instrumentName = "Vibraphone"
   c''1
 }
 >>
@@ -448,23 +462,9 @@ them individually:
 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
@@ -480,6 +480,8 @@ engraver must be added to that context.
 More information about adding and removing engravers can be found
 in @ref{Modifying context plug-ins}.
 
+@cindex instrument names, changing
+
 Instrument names may be changed in the middle of a piece,
 
 @lilypond[quote,fragment,verbatim,ragged-right]
@@ -496,15 +498,21 @@ c1 c c c \break
 
 @seealso
 
-Snippets: @lsrdir{staff}
+Notation Reference: @ref{Modifying context plug-ins}.
+
+Snippets: @lsrdir{Staff,Staff-notation}
 
-Internals Reference: @internalsref{InstrumentName}.
+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 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
@@ -597,8 +605,8 @@ dynamics.
 
 @refbugs
 
-Only the contents of the first @internalsref{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
 @var{music} can not contain @code{\new} and @code{\context Voice}
 statements that would switch to a different Voice.
 
@@ -614,14 +622,19 @@ written entirely in lower-case letters: @code{\addquote}.
 
 Notation Reference: @ref{Instrument transpositions}.
 
-Snippets: @lsrdir{staff}
+Snippets: @lsrdir{Staff,Staff-notation}
 
-Internals Reference: @internalsref{QuoteMusic}.
+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
@@ -635,7 +648,7 @@ The syntax is
 @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
@@ -673,19 +686,20 @@ smaller = {
 @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
-the cued part is marked with the instrument playing the cue.
+The cued part is marked with the instrument playing the cue.
 
 @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.
 
+@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.
@@ -721,8 +735,8 @@ cbsn = \relative c, {
 
 @seealso
 
-Snippets: @lsrdir{staff}
-
+Snippets: @lsrdir{Staff,Staff-notation}.
 
+Internals Reference: @internalsref{Voice}.