]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/editorial.itely
Merge branch 'master' of ssh://jeancharlesm@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / user / editorial.itely
index c13a4fbac0cf5d628ea3503830076aa4e489438c..60a3c76e5a025b4176500f785e6186e027ebc51a 100644 (file)
@@ -6,6 +6,8 @@
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
+@c \version "2.11.51"
+
 @node Editorial annotations
 @section Editorial annotations
 
 @node Editorial annotations
 @section Editorial annotations
 
@@ -36,79 +38,95 @@ inside the staff.
 @end menu
 
 @node Selecting notation font size
 @end menu
 
 @node Selecting notation font size
-@subsubsection Selecting notation font size
-
-@cindex font size
-@cindex font size, selecting
-@cindex selecting font size
-
-The easiest method of setting the font size of any context is by
-setting the @code{fontSize} property.
-
-@lilypond[quote,fragment,relative=2,verbatim,ragged-right]
-c4
-\set fontSize = #-4
-c f
-\set fontSize = #3
-g8 a
+@unnumberedsubsubsec Selecting notation font size
+
+@cindex font size (notation)
+@cindex selecting font size (notation)
+
+The font size of notation elements may be altered.  It does not
+change the size of variable symbols, such as beams or slurs.
+
+@warning{For font sizes of text, see
+@ref{Common markup commands}.}
+
+@lilypond[verbatim,quote,relative=2]
+\huge
+c4.-> d8---3
+\large
+c4.-> d8---3
+\normalsize
+c4.-> d8---3
+\small
+c4.-> d8---3
+\tiny
+c4.-> d8---3
+\teeny
+c4.-> d8---3
 @end lilypond
 
 @end lilypond
 
-@noindent
-It does not change the size of variable symbols, such as beams or
-slurs.
-
-@cindex font size scaling
+@cindex font size (notation) scaling
 
 
-Internally, the @code{fontSize} context property will cause the
-@code{font-size} property to be set in all layout objects.  The
-value of @code{font-size} is a number indicating the size relative
-to the standard size for the current staff height.  Each step up
-is an increase of approximately 12% of the font size.  Six steps
-is exactly a factor two.  The Scheme function @code{magstep}
-converts a @code{font-size} number to a scaling factor.  The
-@code{font-size} property can also be set directly, so that only
-certain layout objects are affected.
+Internally, this sets the @code{fontSize} property.  This in turn
+causes the @code{font-size} property to be set in all layout
+objects.  The value of @code{font-size} is a number indicating the
+size relative to the standard size for the current staff height.
+Each step up is an increase of approximately 12% of the font size.
+Six steps is exactly a factor of two.  The Scheme function
+@code{magstep} converts a @code{font-size} number to a scaling
+factor.  The @code{font-size} property can also be set directly,
+so that only certain layout objects are affected.
 
 
-@lilypond[quote,fragment,relative=2,verbatim,ragged-right]
-c4
+@lilypond[verbatim,quote,relative=2]
+\set fontSize = #3
+c4.-> d8---3
 \override NoteHead #'font-size = #-4
 \override NoteHead #'font-size = #-4
-c f
-\override NoteHead #'font-size = #3
-g8 a
+c4.-> d8---3
+\override Script #'font-size = #2
+c4.-> d8---3
+\override Stem #'font-size = #-5
+c4.-> d8---3
 @end lilypond
 
 @end lilypond
 
-@cindex standard font size
-@cindex font size, standard
+@cindex standard font size (notation)
+@cindex font size (notation), standard
 
 Font size changes are achieved by scaling the design size that is
 closest to the desired size.  The standard font size (for
 
 Font size changes are achieved by scaling the design size that is
 closest to the desired size.  The standard font size (for
-@code{font-size} equals 0), depends on the standard staff height.
+@w{@code{font-size = #0}}) depends on the standard staff height.
 For a 20pt staff, a 10pt font is selected.
 
 For a 20pt staff, a 10pt font is selected.
 
-The @code{font-size} property can only be set on layout objects that
-use fonts.  These are the ones supporting the @code{font-interface}
-layout interface.
+The @code{font-size} property can only be set on layout objects
+that use fonts.  These are the ones supporting the
+@code{font-interface} layout interface.
 
 @predefined
 
 
 @predefined
 
-The following commands set @code{fontSize} for the current voice:
-
+@funindex \teeny
+@code{\teeny},
 @funindex \tiny
 @code{\tiny},
 @funindex \small
 @code{\small},
 @funindex \normalsize
 @funindex \tiny
 @code{\tiny},
 @funindex \small
 @code{\small},
 @funindex \normalsize
-@code{\normalsize}.
+@code{\normalsize},
+@funindex \large
+@code{\large},
+@funindex \huge
+@code{\huge}.
 
 @seealso
 
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
 
 
-Internals Reference: @internalsref{font-interface}.
+Internals Reference:
+@rinternals{fontSize},
+@rinternals{font-size},
+@rinternals{font-interface}.
 
 
 @node Fingering instructions
 
 
 @node Fingering instructions
-@subsubsection Fingering instructions
+@unnumberedsubsubsec Fingering instructions
 
 @cindex fingering
 @cindex finger change
 
 @cindex fingering
 @cindex finger change
@@ -116,25 +134,22 @@ Internals Reference: @internalsref{font-interface}.
 Fingering instructions can be entered using
 @var{note}-@var{digit}:
 
 Fingering instructions can be entered using
 @var{note}-@var{digit}:
 
-Fingering instructions may be manually placed above or below the
-staff, see @ref{Controlling direction and placement}.
-
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
+@lilypond[verbatim,quote,relative=2]
 c4-1 d-2 f-4 e-3
 @end lilypond
 
 c4-1 d-2 f-4 e-3
 @end lilypond
 
-Use markup texts for finger changes. 
+Markup texts may be used for finger changes. 
 
 
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
+@lilypond[verbatim,quote,relative=2]
 c4-1 d-2 f-4 c^\markup { \finger "2 - 3" }
 @end lilypond
 
 @cindex thumb-script
 
 c4-1 d-2 f-4 c^\markup { \finger "2 - 3" }
 @end lilypond
 
 @cindex thumb-script
 
-You can use the thumb-script (e.g., in cello music)to indicate that a 
-note should be played with the thumb. 
+A thumb-script can be added (e.g., in cello music) to indicate
+that a note should be played with the thumb. 
 
 
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
+@lilypond[verbatim,quote,relative=2]
 <a_\thumb a'-3>2 <b_\thumb b'-3>
 @end lilypond
 
 <a_\thumb a'-3>2 <b_\thumb b'-3>
 @end lilypond
 
@@ -144,51 +159,48 @@ note should be played with the thumb.
 Fingerings for chords can also be added to individual notes of the
 chord by adding them after the pitches.
 
 Fingerings for chords can also be added to individual notes of the
 chord by adding them after the pitches.
 
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
-< c-1 e-2 g-3 b-5 >2 < d-1 f-2 a-3 c-5 >
+@lilypond[verbatim,quote,relative=2]
+<c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>
 @end lilypond
 
 @end lilypond
 
+Fingering instructions may be manually placed above or below the
+staff, see @ref{Direction and placement}.
 
 @snippets
 
 
 @snippets
 
-@code{fingeringOrientations} are used to control where the fingering
-numbers are placed.
-
-@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
-\set fingeringOrientations = #'(left)
-<c-1 e-3 a-5 > 4
-\set fingeringOrientations = #'(down)
-<c-1 e-3 a-5 > 
-\set fingeringOrientations = #'(right)
-<c-1 e-3 a-5 > 
-\set fingeringOrientations = #'(up)
-<c-1 e-3 a-5 > 
-\set fingeringOrientations = #'(left down)
-<c-1 e-3 a-5 > 2
-\set fingeringOrientations = #'(up right down)
-<c-1 e-3 a-5 >
-@end lilypond
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{controlling-the-placement-of-chord-fingerings.ly}
+
 
 @seealso
 
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Notation Reference:
+@ref{Direction and placement}
+
+Snippets:
+@rlsr{Editorial annotations}.
 
 
-Internals Reference: @internalsref{Fingering}.
+Internals Reference:
+@rinternals{FingeringEvent},
+@rinternals{fingering-event},
+@rinternals{Fingering_engraver},
+@rinternals{New_fingering_engraver},
+@rinternals{Fingering}.
 
 
 @node Hidden notes
 
 
 @node Hidden notes
-@subsubsection Hidden notes
+@unnumberedsubsubsec Hidden notes
 
 
-@cindex Hidden notes
-@cindex Invisible notes
-@cindex Transparent notes
+@cindex hidden notes
+@cindex invisible notes
+@cindex transparent notes
 @funindex \hideNotes
 @funindex \unHideNotes
 
 Hidden (or invisible or transparent) notes can be useful in
 preparing theory or composition exercises.
 
 @funindex \hideNotes
 @funindex \unHideNotes
 
 Hidden (or invisible or transparent) notes can be useful in
 preparing theory or composition exercises.
 
-@lilypond[quote,ragged-right,verbatim,relative=2,fragment]
+@lilypond[verbatim,quote,relative=2]
 c4 d
 \hideNotes
 e4 f
 c4 d
 \hideNotes
 e4 f
@@ -200,17 +212,34 @@ b
 c
 @end lilypond
 
 c
 @end lilypond
 
+Notation objects which are attached to invisible notes are still
+visible.
+
+@lilypond[verbatim,quote,relative=2]
+c4( d)
+\hideNotes
+e4(\p f)--
+@end lilypond
+
+
 @predefined
 
 @predefined
 
+@funindex \hideNotes
+@funindex \unHideNotes
 @code{\hideNotes}, @code{\unHideNotes}
 
 @seealso
 
 @code{\hideNotes}, @code{\unHideNotes}
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
+
+Internals Reference:
+@rinternals{Note_spacing_engraver},
+@rinternals{NoteSpacing}.
 
 
 @node Coloring objects
 
 
 @node Coloring objects
-@subsubsection Coloring objects
+@unnumberedsubsubsec Coloring objects
 
 @cindex colored objects
 @cindex colors
 
 @cindex colored objects
 @cindex colors
@@ -219,10 +248,10 @@ Snippets: @lsrdir{Editorial,Editorial-annotations}.
 @cindex coloring notes
 @cindex notes, colored
 
 @cindex coloring notes
 @cindex notes, colored
 
-Individual objects may be assigned colors.  You may use the color
-names listed in the @ref{List of colors}.
+Individual objects may be assigned colors.  Valid color names
+are listed in the @ref{List of colors}.
 
 
-@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
+@lilypond[verbatim,quote,relative=2]
 \override NoteHead #'color = #red
 c4 c
 \override NoteHead #'color = #(x11-color 'LimeGreen)
 \override NoteHead #'color = #red
 c4 c
 \override NoteHead #'color = #(x11-color 'LimeGreen)
@@ -243,8 +272,7 @@ possible to access X11 colors by the multi-word form of its name.
 If @code{x11-color} cannot make sense of the parameter then the
 color returned defaults to black. 
 
 If @code{x11-color} cannot make sense of the parameter then the
 color returned defaults to black. 
 
-@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
-
+@lilypond[verbatim,quote,relative=2]
 \override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
 \set Staff.instrumentName = \markup {
   \with-color #(x11-color 'navy) "Clarinet"
 \override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
 \set Staff.instrumentName = \markup {
   \with-color #(x11-color 'navy) "Clarinet"
@@ -260,44 +288,42 @@ gis a
 % this is deliberate nonsense; note that the stems remain black
 \override Stem #'color = #(x11-color 'Boggle)
 b2 cis
 % this is deliberate nonsense; note that the stems remain black
 \override Stem #'color = #(x11-color 'Boggle)
 b2 cis
-
 @end lilypond
 
 @end lilypond
 
-You can get exact RGB colors by specifying the rgb-color number.
+Exact RGB colors can be specified using the Scheme function
+@code{rgb-color}.
 
 
-@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
-
-  \override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
-  \set Staff.instrumentName = \markup {
-    \with-color #(x11-color 'navy) "Clarinet"
-  }
+@lilypond[verbatim,quote,relative=2]
+\override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2)
+\set Staff.instrumentName = \markup {
+  \with-color #(x11-color 'navy) "Clarinet"
+}
   
   
-  %black
-  \override Stem #'color = #(rgb-color 0 0 0)
-  gis8 a
-  % white
-  \override Stem #'color = #(rgb-color 1 1 1)
-  gis8 a
-  % dark blue
-  \override Stem #'color = #(rgb-color 0 0 0.5) 
-  gis4 a
-
+\override Stem #'color = #(rgb-color 0 0 0)
+gis8 a
+\override Stem #'color = #(rgb-color 1 1 1)
+gis8 a
+\override Stem #'color = #(rgb-color 0 0 0.5) 
+gis4 a
 @end lilypond
 
 @seealso
 
 @end lilypond
 
 @seealso
 
-Notation Reference: @ref{List of colors}, @ref{Objects connected to
+Notation Reference:
+@ref{List of colors}, @ref{Objects connected to
 the input}.
 
 the input}.
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
 
 @knownissues
 
 @knownissues
-An x11 color is not necessarily exactly the same shade as a
+An X11 color is not necessarily exactly the same shade as a
 similarly named normal color.  
 
 similarly named normal color.  
 
-Not all x11 colors are distinguishable in a web browser i.e. a web browser
-might not display a difference between 'LimeGreen and 'ForestGreen.  For 
-web use normal colors are recommended (i.e. #blue, #green, #red).
+Not all X11 colors are distinguishable in a web browser, i.e.,
+a web browser might not display a difference between @code{'LimeGreen}
+and @code{'ForestGreen}.  For web use normal colors are recommended
+(i.e., @code{#blue}, @code{#green}, @code{#red}).
 
 
 Notes in a chord cannot be colored with @code{\override}; use
 
 
 Notes in a chord cannot be colored with @code{\override}; use
@@ -305,7 +331,7 @@ Notes in a chord cannot be colored with @code{\override}; use
 
 
 @node Parentheses
 
 
 @node Parentheses
-@subsubsection Parentheses
+@unnumberedsubsubsec Parentheses
 
 @cindex ghost notes
 @cindex notes, ghost
 
 @cindex ghost notes
 @cindex notes, ghost
@@ -313,27 +339,41 @@ Notes in a chord cannot be colored with @code{\override}; use
 @cindex parentheses
 
 Objects may be parenthesized by prefixing @code{\parenthesize} to
 @cindex parentheses
 
 Objects may be parenthesized by prefixing @code{\parenthesize} to
-the music event.  This only functions inside chords; to
-parenthesize a single note it must be enclosed with @code{<>} as
-if it is a chord.
+the music event.  When prefixed to a chord, it parenthesizes every
+note.  Individual notes inside a chord may also be parenthesized.
 
 
-@lilypond[relative=2,fragment,verbatim,ragged-right]
-c2 < \parenthesize d>
+@lilypond[verbatim,quote,relative=2]
+c2 \parenthesize d
+c2 \parenthesize <c e g>
+c2 <c \parenthesize e g>
 @end lilypond
 
 Non-note objects may be parenthesized as well.
 
 @end lilypond
 
 Non-note objects may be parenthesized as well.
 
-@lilypond[relative=2,fragment,verbatim,ragged-right]
-< c d g >2-\parenthesize -. d
+@lilypond[verbatim,quote,relative=2]
+c2-\parenthesize -. d
+c2 \parenthesize r
 @end lilypond
 
 @seealso
 
 @end lilypond
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
+
+Internals Reference:
+@rinternals{Parenthesis_engraver},
+@rinternals{ParenthesesItem},
+@rinternals{parentheses-interface}.
+
+@knownissues
+
+Parenthesizing a chord prints parentheses around each individual
+note, instead of a single large parenthesis around the entire
+chord.
 
 
 @node Stems
 
 
 @node Stems
-@subsubsection Stems
+@unnumberedsubsubsec Stems
 
 @cindex stem
 
 
 @cindex stem
 
@@ -358,19 +398,20 @@ made invisible.
 @cindex stem, down
 @cindex stem, neutral
 
 @cindex stem, down
 @cindex stem, neutral
 
-To change the direction of stems on the center line of the staff, use
-
-@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
-a4 b c b
-\override Stem #'neutral-direction = #up
-a4 b c b
-\override Stem #'neutral-direction = #down
-a4 b c b
-@end lilypond
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{default-direction-of-stems-on-the-center-line-of-the-staff.ly}
 
 @seealso
 
 @seealso
+Notation Reference:
+@ref{Direction and placement}.
 
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
+
+Internals Reference:
+@rinternals{Stem_engraver},
+@rinternals{Stem},
+@rinternals{stem-interface}.
 
 
 @node Outside the staff
 
 
 @node Outside the staff
@@ -386,130 +427,130 @@ from outside of the staff.
 @end menu
 
 @node Balloon help
 @end menu
 
 @node Balloon help
-@subsubsection Balloon help
+@unnumberedsubsubsec Balloon help
 
 Elements of notation can be marked and named with the help of a
 square balloon.  The primary purpose of this feature is to explain
 notation.
 
 
 Elements of notation can be marked and named with the help of a
 square balloon.  The primary purpose of this feature is to explain
 notation.
 
-The following example demonstrates its use.
-
-@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+@lilypond[verbatim,quote,relative=2]
 \new Voice \with { \consists "Balloon_engraver" }
 \new Voice \with { \consists "Balloon_engraver" }
-     {
-      \time 2/4
-       \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
-       a8
-       <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } 
-c>4. 
-     }
-
+{
+  \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
+  a8 
+  \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
+  r
+  <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2. 
+}
 @end lilypond
 
 @end lilypond
 
-There are two music functions, @code{balloonGrobText} and
-@code{balloonText};  The former is used like \once \override to 
-attach text to any grob, and the latter is used like \tweak, 
-typically within chords, to attach text to an individual note.
-
 @cindex balloon
 @cindex notation, explaining
 
 @cindex balloon
 @cindex notation, explaining
 
+There are two music functions, @code{balloonGrobText} and
+@code{balloonText};  the former is used like
+@w{@code{\once \override}} to attach text to any grob, and the
+latter is used like @code{\tweak}, typically within chords, to
+attach text to an individual note.
+
+Balloon text normally influences note spacing, but this can be
+altered:
+
+@lilypond[verbatim,quote,relative=2]
+\new Voice \with { \consists "Balloon_engraver" }
+{
+  \balloonLengthOff
+  \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" }
+  a8 
+  \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" }
+  r
+  \balloonLengthOn
+  <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2. 
+}
+@end lilypond
+
+
+@predefined
+
+@funindex balloonLengthOn
+@funindex balloonLengthOff
+@code{\balloonLengthOn}, @code{\balloonLengthOff}
+
 @seealso
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
 
 
-Internals Reference: @internalsref{text-balloon-interface}.
+Internals Reference:
+@rinternals{Balloon_engraver},
+@rinternals{BalloonTextItem},
+@rinternals{balloon-interface}.
 
 
 @node Grid lines
 
 
 @node Grid lines
-@subsubsection Grid lines
+@unnumberedsubsubsec Grid lines
 
 Vertical lines can be drawn between staves synchronized with the
 notes.
 
 
 Vertical lines can be drawn between staves synchronized with the
 notes.
 
-@lilypond[ragged-right,quote,verbatim]
+The @code{Grid_point_engraver} must be used to create the end
+points of the lines, while the @code{Grid_line_span_engraver} must
+be used to actually draw the lines.  By default this centers grid
+lines horizontally below and to the left side of each note head.
+Grid lines extend from the middle lines of each staff.  The
+@code{gridInterval} must specify the duration between the grid
+lines.
+
+@lilypond[verbatim,quote]
 \layout {
   \context {
     \Staff
     \consists "Grid_point_engraver" 
 \layout {
   \context {
     \Staff
     \consists "Grid_point_engraver" 
-    % sets up grids
     gridInterval = #(ly:make-moment 1 4)
     gridInterval = #(ly:make-moment 1 4)
-    % this sets the grid interval to 1 quarternote (crotchet)
+  }
+  \context {
+    \Score
+    \consists "Grid_line_span_engraver"
   }
 }
 
   }
 }
 
-\new Score \with {
-  \consists "Grid_line_span_engraver"
-  %% by default this centers grid lines horizontally below and to the 
-  % left side of the notehead, the grid lines extend from 
-  % the middle lines of each staff
-}
-
-\new ChoirStaff <<
-  \new Staff {
-    \stemUp
-    \relative {
-      c'4. d8 e8 f g4
+\score {
+  \new ChoirStaff <<
+    \new Staff \relative c'' {
+      \stemUp
+      c4. d8 e8 f g4
     }
     }
-  }
-  \new Staff {
-    \stemDown
-    \clef bass
-    \relative c {
-      c4  g'  f  e
+    \new Staff \relative c {
+      \clef bass
+      \stemDown
+      c4 g' f e
     }
     }
-  }
->>
+  >>
+}
 @end lilypond
 
 @end lilypond
 
-To change the grid lines use \override.
-
-
-@lilypond[ragged-right,quote,verbatim]
-\layout {
-  \context {
-    \Staff
-    \consists "Grid_point_engraver" 
-    % sets up grids
-       gridInterval = #(ly:make-moment 1 4)
-       % this sets the grid interval to 1 quarternote (crotchet)
-  }
-}
+@snippets
 
 
-\new Score \with {
-  \consists "Grid_line_span_engraver"
-  \override NoteColumn #'X-offset = #-0.5
-  % this moves them to the right half a staff space
-}
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{grid-lines--changing-their-appearance.ly}
 
 
-\new ChoirStaff <<
-  \new Staff {
-    \stemUp
-    \relative {
-      c'4. d8 e8 f g4
-    }
-  }
-  \new Staff {
-    \override Score.GridLine #'extra-offset = #'( 0.0 . 1.0 )
-    % this moves them up one staff space from the default position
-    \stemDown
-    \clef bass
-    \relative c {
-      c4  g'  f  e
-    }
-  }
->>
-@end lilypond
 
 @seealso
 
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
-
+Snippets:
+@rlsr{Editorial annotations}.
 
 
+Internals Reference:
+@rinternals{Grid_line_span_engraver},
+@rinternals{Grid_point_engraver},
+@rinternals{GridLine},
+@rinternals{GridPoint},
+@rinternals{grid-line-interface},
+@rinternals{grid-point-interface}.
 
 
 @node Analysis brackets
 
 
 @node Analysis brackets
-@subsubsection Analysis brackets
+@unnumberedsubsubsec Analysis brackets
 
 @cindex brackets
 @cindex phrasing brackets
 
 @cindex brackets
 @cindex phrasing brackets
@@ -517,31 +558,46 @@ Snippets: @lsrdir{Editorial,Editorial-annotations}.
 @cindex note grouping bracket
 
 Brackets are used in musical analysis to indicate structure in musical
 @cindex note grouping bracket
 
 Brackets are used in musical analysis to indicate structure in musical
-pieces.  LilyPond supports a simple form of nested horizontal
-brackets.  To use this, add the @code{Horizontal_bracket_engraver} to
-the @code{Staff} context.  A bracket is started with
-@code{\startGroup} and closed with @code{\stopGroup}.
+pieces.  Simple horizontal brackets are supported.
 
 
-@lilypond[quote,ragged-right,verbatim]
-\score {
-  \relative c'' {
-    c4\startGroup\startGroup
-    c4\stopGroup
-    c4\startGroup
-    c4\stopGroup\stopGroup
+@lilypond[verbatim,quote]
+\layout {
+  \context {
+    \Voice
+    \consists "Horizontal_bracket_engraver"
   }
   }
-  \layout {
-    \context {
-      \Staff \consists "Horizontal_bracket_engraver"
-    }
+}
+\relative c'' {
+  c2\startGroup
+  d\stopGroup
+}
+@end lilypond
+
+Analysis brackets may be nested.
+
+@lilypond[verbatim,quote]
+\layout {
+  \context {
+    \Voice
+    \consists "Horizontal_bracket_engraver"
   }
 }
   }
 }
+\relative c'' {
+  c4\startGroup\startGroup
+  d4\stopGroup
+  e4\startGroup
+  d4\stopGroup\stopGroup
+}
 @end lilypond
 
 @seealso
 
 @end lilypond
 
 @seealso
 
-Snippets: @lsrdir{Editorial,Editorial-annotations}.
+Snippets:
+@rlsr{Editorial annotations}.
 
 
-Internals Reference: @internalsref{HorizontalBracket},
-@internalsref{Horizontal_bracket_engraver}, @internalsref{Staff}.
+Internals Reference:
+@rinternals{Horizontal_bracket_engraver},
+@rinternals{HorizontalBracket},
+@rinternals{horizontal-bracket-interface},
+@rinternals{Staff}.