]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/staff.itely
Merge commit 'origin' into beamlets2
[lilypond.git] / Documentation / user / staff.itely
index de96d52b062dc8e84203863e2eeb375b85224e03..27d0bac4c18115a4df12d819b777ee1cb484d64a 100644 (file)
@@ -6,16 +6,16 @@
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
-@c \version "2.11.61"
+@c \version "2.11.65"
 
 @node Staff notation
 @section Staff notation
 
 @lilypondfile[quote]{staff-headword.ly}
 
-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.
+This section explains how to influence the appearance of staves,
+how to print scores with more than one staff, and how to add tempo
+indications and cue notes to staves.
 
 @menu
 * Displaying staves::
@@ -28,8 +28,7 @@ performance marks to single staves.
 @subsection Displaying staves
 
 This section describes the different methods of creating and
-grouping staves, which are marked at the beginning of each line
-with either a bracket or a brace.
+grouping staves.
 
 @menu
 * Instantiating new staves::
@@ -63,9 +62,10 @@ The basic staff context is @code{Staff}:
 \new Staff { c4 d e f }
 @end lilypond
 
-@code{DrumStaff} creates a five-line staff set up for a
-typical drum set.  It uses different names for each instrument.
-The instrument names are set using the @code{\drummode} command.
+The @code{DrumStaff} context creates a five-line staff set up for
+a typical drum set.  Each instrument is shown with a different
+symbol.  The instruments are entered in drum mode following a
+@code{\drummode} command, with each instrument specified by name.
 For details, see @ref{Percussion staves}.
 
 @lilypond[verbatim,quote]
@@ -74,14 +74,6 @@ For details, see @ref{Percussion staves}.
 }
 @end lilypond
 
-@c FIXME: remove when mentioned in NR 2.8
-@code{GregorianTranscriptionStaff} creates a staff to notate
-modern Gregorian chant.  It does not show bar lines.
-
-@lilypond[verbatim,quote,relative=2]
-\new GregorianTranscriptionStaff { c4 d e f }
-@end lilypond
-
 @code{RhythmicStaff} creates a single-line staff that only
 displays the rhythmic values of the input.  Real durations are
 preserved. For details, see @ref{Showing melody rhythms}.
@@ -101,12 +93,18 @@ 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}.
 
+The @code{GregorianTranscriptionStaff} context creates a staff to
+notate modern Gregorian chant.  It does not show bar lines.
+
+@lilypond[verbatim,quote,relative=2]
+\new GregorianTranscriptionStaff { c4 d e f e d }
+@end lilypond
+
 New single staff contexts may be defined.  For details, see
 @ref{Defining new contexts}.
 
 
 @seealso
-
 Music Glossary:
 @rglos{staff},
 @rglos{staves}.
@@ -204,7 +202,7 @@ details, see @ref{Instrument names}.
 
 @lilypond[verbatim,quote,relative=2]
 \new PianoStaff <<
-  \set PianoStaff.instrumentName = "Piano"
+  \set PianoStaff.instrumentName = #"Piano"
   \new Staff { c1 c }
   \new Staff { c1 c }
 >>
@@ -236,11 +234,9 @@ New staff group contexts may be defined.  For details, see
 
 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
 {mensurstriche-layout-bar-lines-between-the-staves.ly}
-@c FIXME: move to NR 2.8.x when sectioning is ready
 
 
 @seealso
-
 Music Glossary:
 @rglos{brace},
 @rglos{bracket},
@@ -275,40 +271,24 @@ Internals Reference:
 @cindex nested staff brackets
 @cindex brackets, nesting of
 @cindex braces, nesting of
-@cindex inner staff group
-@cindex inner choir staff group
 
-Two additional staff-group contexts are available that can be
-nested within a @code{StaffGroup} or @code{ChoirStaff} context:
-@code{InnerStaffGroup} and @code{InnerChoirStaff}.  These contexts
-create a new bracket adjacent to the bracket of their parent staff
-group.
-
-An @code{InnerStaffGroup} is treated similarly to a
-@code{StaffGroup}; bar lines are connected between each staff
-within the context:
+Staff-group contexts can be nested to arbitrary depths.  In this
+case, each child context creates a new bracket adjacent to the
+bracket of its parent group.
 
 @lilypond[verbatim,quote,relative=2]
 \new StaffGroup <<
   \new Staff { c2 c | c2 c }
-  \new InnerStaffGroup <<
+  \new StaffGroup <<
     \new Staff { g2 g | g2 g }
-    \new Staff { e2 e | e2 e }
-  >>
->>
-@end lilypond
-
-Bar lines are @emph{not} connected between staves of an
-@code{InnerChoirStaff}, just like a @code{ChoirStaff}:
-
-@lilypond[verbatim,quote,relative=2]
-\new ChoirStaff <<
-  \new Staff { c2 c | c2 c }
-  \new InnerChoirStaff <<
-    \new Staff { g2 g | g2 g }
-    \new Staff { e2 e | e2 e }
+    \new StaffGroup \with {
+      systemStartDelimiter = #'SystemStartSquare
+    }
+    <<
+      \new Staff { e2 e | e2 e }
+      \new Staff { c2 c | c2 c }
+    >>
   >>
-  \new Staff { c1 | c1 }
 >>
 @end lilypond
 
@@ -323,7 +303,6 @@ New nested staff group contexts can be defined.  For details, see
 
 
 @seealso
-
 Notation Reference:
 @ref{Grouping staves},
 @ref{Instrument names},
@@ -333,9 +312,7 @@ Snippets:
 @rlsr{Staff notation}.
 
 Internals Reference:
-@rinternals{InnerStaffGroup},
 @rinternals{StaffGroup},
-@rinternals{InnerChoirStaff},
 @rinternals{ChoirStaff},
 @rinternals{SystemStartBar},
 @rinternals{SystemStartBrace},
@@ -393,22 +370,6 @@ staff.  For an explanation, refer to the snippet section in
 { d4 d d d }
 @end lilypond
 
-The vertical position of staff lines and the number of staff lines
-can be defined at the same time.  As the following example shows,
-note positions are not influenced by the staff line positions.
-
-@warning{The @code{'line-positions} property overrides the
-@code{'line-count} property.  The number of staff lines is
-implicitly defined by the number of elements in the list of values
-for @code{'line-positions}.}
-
-@lilypond[verbatim,quote,relative=1]
-\new Staff \with {
-  \override StaffSymbol #'line-positions = #'(7 3 0 -4 -6 -7)
-}
-{ a4 e' f b | d1 }
-@end lilypond
-
 Staff line thickness can be modified.  The thickness of ledger
 lines and stems are also affected, since they depend on staff line
 thickness.
@@ -421,7 +382,9 @@ thickness.
 @end lilypond
 
 Ledger line thickness can be set independently of staff line
-thickness.
+thickness.  In the example the two numbers are factors multiplying
+the staff line thickness and the staff line spacing.  The two
+contributions are added to give the ledger line thickness.
 
 @lilypond[verbatim,quote,relative=1]
 \new Staff \with {
@@ -440,17 +403,6 @@ affects the spacing of ledger lines as well.
 { a4 b c d }
 @end lilypond
 
-The width of a staff can be modified.  The units are staff
-spaces.  The spacing of objects inside the staff is not affected by
-this setting.
-
-@lilypond[verbatim,quote,relative=1]
-\new Staff \with {
-  \override StaffSymbol #'width = #23
-}
-{ a4 e' f b | d1 }
-@end lilypond
-
 Further details about the properties of @code{StaffSymbol} can be
 found in @rinternals{staff-symbol-interface}.
 
@@ -488,9 +440,9 @@ e4 d c2
 
 
 @predefined
-
 @code{\startStaff},
 @code{\stopStaff}.
+@endpredefined
 
 
 @snippets
@@ -500,7 +452,6 @@ e4 d c2
 
 
 @seealso
-
 Music Glossary:
 @rglos{line},
 @rglos{ledger line},
@@ -548,7 +499,7 @@ staff in the appropriate location:
 @end lilypond
 
 @noindent
-However, the above example is usually not the desired result.  To
+However, the above example is not what is usually desired.  To
 create ossia staves that are above the original staff, have no
 time signature or clef, and have a smaller font size, tweaks must
 be used.  The Learning Manual describes a specific technique to
@@ -591,7 +542,7 @@ example.
 <<
   \new Staff = ossia \with {
     \remove "Time_signature_engraver"
-    \remove "Clef_engraver"
+    \override Clef #'transparent = ##t
     fontSize = #-3
     \override StaffSymbol #'staff-space = #(magstep -3)
     \override StaffSymbol #'thickness = #(magstep -3)
@@ -631,7 +582,7 @@ more information about @code{\RemoveEmptyStaffContext}, see
 <<
   \new Staff = ossia \with {
     \remove "Time_signature_engraver"
-    \remove "Clef_engraver"
+    \override Clef #'transparent = ##t
     fontSize = #-3
     \override StaffSymbol #'staff-space = #(magstep -3)
     \override StaffSymbol #'thickness = #(magstep -3)
@@ -667,7 +618,6 @@ more information about @code{\RemoveEmptyStaffContext}, see
 
 
 @seealso
-
 Music Glossary:
 @rglos{ossia},
 @rglos{staff},
@@ -717,8 +667,9 @@ block.  In orchestral scores, this style is known as @q{Frenched
 Score}.  By default, this command hides and removes all empty
 staves in a score except for those in the first system.
 
-@warning{An empty staff may only include multi-measure rests,
-skips, spacer rests, or a combination of these elements.}
+@warning{A staff is considered empty when it contains only
+multi-measure rests, skips, spacer rests, or a combination of these
+elements.}
 
 @lilypond[verbatim,quote,ragged-right]
 \layout {
@@ -759,10 +710,10 @@ hide empty staves in ancient music contexts.  Similarly,
 
 
 @predefined
-
 @code{\RemoveEmptyStaffContext},
 @code{\AncientRemoveEmptyStaffContext},
 @code{\RemoveEmptyRhythmicStaffContext}.
+@endpredefined
 
 
 @snippets
@@ -772,7 +723,6 @@ hide empty staves in ancient music contexts.  Similarly,
 
 
 @seealso
-
 Music Glossary:
 @rglos{Frenched staff}.
 
@@ -877,37 +827,16 @@ d4 g e c
 
 @c perhaps also an example of how to move it horizontally?
 
-@c TODO add snippet when ready
-@c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-@c {changing-the-tempo-without-a-visible-metronome-mark.ly}
-
-To change the tempo in the MIDI output without printing anything,
-make the metronome marking invisible
-
-@example
-\once \override Score.MetronomeMark #'transparent = ##t
-@end example
-
-@c TODO add snippet when ready
-@c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-@c {creating-metronome-marks-in-markup-mode.ly}
-
-To print other metronome markings, use these markup commands
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{changing-the-tempo-without-a-metronome-mark.ly}
 
-@lilypond[verbatim,quote,relative=1]
-c4^\markup {
-  (
-  \smaller \general-align #Y #DOWN \note #"16." #1
-  =
-  \smaller \general-align #Y #DOWN \note #"8" #1
-  ) }
-@end lilypond
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{creating-metronome-marks-in-markup-mode.ly}
 
 For more details, see @ref{Formatting text}.
 
 
 @seealso
-
 Music Glossary:
 @rglos{metronome},
 @rglos{metronomic indication},
@@ -937,8 +866,8 @@ Instrument names can be printed on the left side of staves in the
 of @code{shortInstrumentName} is used for all succeeding staves.
 
 @lilypond[verbatim,quote,ragged-right,relative=1]
-\set Staff.instrumentName = "Violin "
-\set Staff.shortInstrumentName = "Vln "
+\set Staff.instrumentName = #"Violin "
+\set Staff.shortInstrumentName = #"Vln "
 c4.. g'16 c4.. g'16
 \break
 c1
@@ -961,15 +890,15 @@ instrument names and short instrument names are centered by
 default.  To center multi-line instrument names,
 @code{\center-column} must be used:
 
-@lilypond[verbatim,quote,relative=2]
+@lilypond[verbatim,quote,indent=1.5\cm,relative=2]
 <<
   \new Staff {
-    \set Staff.instrumentName = "Flute"
+    \set Staff.instrumentName = #"Flute"
     f2 g4 f
   }
   \new Staff {
     \set Staff.instrumentName = \markup \center-column {
-      Clarinetti
+      Clarinet
       \line { "in B" \smaller \flat }
     }
     c4 b c2
@@ -987,20 +916,20 @@ these settings, see @ref{Horizontal dimensions}.
 
 @lilypond[verbatim,quote,ragged-right]
 \layout {
-  indent = 2.5\cm
+  indent = 3.0\cm
   short-indent = 1.5\cm
 }
 
 \relative c'' <<
   \new Staff {
-    \set Staff.instrumentName = "Flute"
-    \set Staff.shortInstrumentName = "Fl."
+    \set Staff.instrumentName = #"Alto Flute in G"
+    \set Staff.shortInstrumentName = #"Fl."
     f2 g4 f \break
     g4 f g2
   }
   \new Staff {
-    \set Staff.instrumentName = "Clarinet"
-    \set Staff.shortInstrumentName = "Clar."
+    \set Staff.instrumentName = #"Clarinet"
+    \set Staff.shortInstrumentName = #"Clar."
     c,4 b c2 \break
     c2 b4 c
   }
@@ -1017,12 +946,12 @@ For details, see @ref{Modifying context plug-ins}.
 Instrument names may be changed in the middle of a piece:
 
 @lilypond[verbatim,quote,ragged-right,relative=1]
-\set Staff.instrumentName = "First"
-\set Staff.shortInstrumentName = "one"
+\set Staff.instrumentName = #"First"
+\set Staff.shortInstrumentName = #"one"
 c1 c c c \break
 c1 c c c \break
-\set Staff.instrumentName = "Second"
-\set Staff.shortInstrumentName = "two"
+\set Staff.instrumentName = #"Second"
+\set Staff.shortInstrumentName = #"two"
 c1 c c c \break
 c1 c c c \break
 @end lilypond
@@ -1035,10 +964,10 @@ If an instrument @emph{switch} is needed,
 @code{\instrumentSwitch} to create a detailed list of the
 necessary changes for the switch.  The
 @code{\addInstrumentDefinition} command has two arguments: an
-identifying string, and an alist of context properties and values
-to be used for the instrument.  It must be placed in the toplevel
-scope.  @code{\instrumentSwitch} is used in the music expression
-to declare the instrument switch:
+identifying string, and an association list of context properties
+and values to be used for the instrument.  It must be placed in
+the toplevel scope.  @code{\instrumentSwitch} is used in the music
+expression to declare the instrument switch:
 
 @lilypond[verbatim,quote,ragged-right]
 \addInstrumentDefinition #"contrabassoon"
@@ -1051,7 +980,7 @@ to declare the instrument switch:
      (midiInstrument . "bassoon"))
 
 \new Staff \with {
-  instrumentName = "Bassoon"
+  instrumentName = #"Bassoon"
 }
 \relative c' {
   \clef tenor
@@ -1066,7 +995,6 @@ to declare the instrument switch:
 
 
 @seealso
-
 Notation Reference:
 @ref{Horizontal dimensions},
 @ref{Modifying context plug-ins}.
@@ -1088,16 +1016,16 @@ Internals Reference:
 @cindex fragments
 @cindex cue notes
 
-It is very common for one voice to double the some of the music from                     
-another voice.  For example, the first and second violins may play the                    
-same notes during a passage of music.  In LilyPond this is accomplished                   
+It is very common for one voice to double some of the music from
+another voice.  For example, the first and second violins may play the
+same notes during a passage of music.  In LilyPond this is accomplished
 by letting one voice @emph{quote} the other voice without having to
 re-enter it.
-                                                                       
-Before a part can be quoted, the @code{\addQuote} command must be used                   
-to initialize the quoted fragment.  This command must be used in the                      
-toplevel scope.  The first argument is an identifying string, and the                     
-second is a music expression: 
+
+Before a part can be quoted, the @code{\addQuote} command must be used
+to initialize the quoted fragment.  This command must be used in the
+toplevel scope.  The first argument is an identifying string, and the
+second is a music expression:
 
 @example
 flute = \relative c'' @{
@@ -1177,7 +1105,6 @@ see @ref{Using tags}.
 
 
 @seealso
-
 Notation Reference:
 @ref{Instrument transpositions},
 @ref{Using tags}.
@@ -1222,7 +1149,7 @@ The previous section explains how to create quotations.  The
 notes into a part.  The syntax is as follows:
 
 @example
-  \cueDuring #@var{partname} #@var{voice} @var{music}
+\cueDuring #@var{partname} #@var{voice} @var{music}
 @end example
 
 This command copies the corresponding measures from @var{partname}
@@ -1258,7 +1185,7 @@ The name of the cued instrument can be printed by setting the
 oboe = \relative c''' {
   g4 r8 e16 f e4 d
 }
-\addQuote oboe { \oboe }
+\addQuote "oboe" { \oboe }
 
 \new Staff \relative c'' <<
   \new CueVoice \with {
@@ -1286,7 +1213,7 @@ from a part but may be restored at a later time.
 flute = \relative c''' {
   r2 cis2 r2 dis2
 }
-\addQuote flute { \flute }
+\addQuote "flute" { \flute }
 
 \new Voice \relative c'' {
   \killCues {
@@ -1331,7 +1258,6 @@ see @ref{Using tags}.
 
 
 @seealso
-
 Notation Reference:
 @ref{Instrument transpositions},
 @ref{Instrument names},