]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/learning/tweaks.itely
Run scripts/auxiliar/update-with-convert-ly.sh
[lilypond.git] / Documentation / learning / tweaks.itely
index e2ea8c16714c3fb9bf6271c254f0759983acf45a..107cbaea99aa84c65834bee98043a48d1cd79567 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.12.0"
+@c \version "2.16.0"
 
 @node Tweaking output
 @chapter Tweaking output
@@ -214,12 +214,13 @@ level contexts, i.e., @code{Voice}, @code{ChordNames} or
 examples.  We shall see later when it must be specified.
 
 Later sections deal comprehensively with properties and their
-values, but to illustrate the format and use of these commands
-we shall use just a few simple properties and values which are
-easily understood.
+values, see @ref{Types of properties}.  But in this section we shall 
+use just a few simple properties and values which are easily
+understood in order to illustrate the format and use of these
+commands.
 
 For now, don't worry about the @code{#'}, which must precede the
-layout property, and the @code{#}, which must precede the value.
+layout property, and the@tie{}@code{#}, which must precede the value.
 These must always be present in exactly this form.  This is the
 most common command used in tweaking, and most of the rest of
 this chapter will be directed to presenting examples of how it is
@@ -230,11 +231,11 @@ note head:
 @cindex NoteHead, example of overriding
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
+c4 d
 \override NoteHead #'color = #red
-e f g
+e4 f |
 \override NoteHead #'color = #green
-a b c
+g4 a b c |
 @end lilypond
 
 @strong{\revert command}
@@ -264,13 +265,13 @@ of the note head to the default value for the final two notes:
 @cindex NoteHead, example of overriding
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
+c4 d
 \override NoteHead #'color = #red
-e f g
+e4 f |
 \override NoteHead #'color = #green
-a
+g4 a
 \revert NoteHead #'color
-b c
+b4 c |
 @end lilypond
 
 @strong{\once prefix}
@@ -278,22 +279,25 @@ b c
 @funindex \once
 @funindex once
 
-Both the @code{\override} and the @code{\set} commands may be
-prefixed by @code{\once}.  This causes the following
-@code{\override} or @code{\set} command to be effective only
-during the current musical moment before the property reverts
-back to its default value.  Using the same example, we can
-change the color of a single note like this:
+Both the @code{\override} and the @code{\set} commands may be prefixed
+by @code{\once}.  This causes the following @code{\override} or
+@code{\set} command to be effective only during the current musical
+moment before the property reverts back to its previous value (this can
+be different from the default if another @code{\override} is still in
+effect).  Using the same example, we can change the color of a single
+note like this:
 
 @cindex color property, example
 @cindex NoteHead, example of overriding
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-c d
-\once \override NoteHead #'color = #red
-e f g
+c4 d
+\override NoteHead #'color = #red
+e4 f |
 \once \override NoteHead #'color = #green
-a b c
+g4 a
+\revert NoteHead #'color
+b c |
 @end lilypond
 
 @strong{\overrideProperty command}
@@ -316,11 +320,11 @@ We mention it here for completeness, but for details see
 @funindex \tweak
 @funindex tweak
 
-The final tweaking command which is available is @code{\tweak}.
-This should be used to change the properties of objects which
-occur at the same musical moment, such as the notes within a
-chord.  Using @code{\override} would affect all the notes
-within a chord, whereas @code{\tweak} affects just the following
+The final tweaking command which is available is @code{\tweak}.  This
+should be used when several objects occur at the same musical moment,
+but you only want to change the properties of selected ones, such as a
+single note within a chord.  Using @code{\override} would affect all the
+notes within a chord, whereas @code{\tweak} affects just the following
 item in the input stream.
 
 Here's an example.  Suppose we wish to change the size of the
@@ -331,10 +335,10 @@ middle note head (the E) in a C major chord.  Let's first see what
 @cindex NoteHead, example of overriding
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-  <c e g>4
-  \once \override NoteHead #'font-size = #-3
-  <c e g>
-  <c e g>
+<c e g>4
+\once \override NoteHead #'font-size = #-3
+<c e g>4
+<c e g>4
 @end lilypond
 
 We see the override affects @emph{all} the note heads in the chord.
@@ -344,16 +348,10 @@ apply the override to all layout objects of the type specified
 which occur at the same musical moment as the @code{\override}
 command itself.
 
-The @code{\tweak} command operates in a different way.  It acts
-on the immediately following item in the input stream.  However,
-it is effective only on objects which are created directly from
-the input stream, essentially note heads and articulations;
-objects such as stems and accidentals are created later and
-cannot be tweaked in this way.  Furthermore, when it is applied
-to note heads these @emph{must} be within a chord, i.e., within
-single angle brackets, so to tweak a single note the @code{\tweak}
-command must be placed inside single angle brackets with the
-note.
+The @code{\tweak} command operates in a different way.  It acts on
+the immediately following item in the input stream.  In its simplest
+form, it is effective only on objects which are created directly
+from the following item, essentially note heads and articulations.
 
 So to return to our example, the size of the middle note of
 a chord would be changed in this way:
@@ -362,17 +360,16 @@ a chord would be changed in this way:
 @cindex @code{\tweak}, example
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-  <c e g>4
-  <c \tweak #'font-size #-3 e g>4
+<c e g>4
+<c \tweak #'font-size #-3 e g>4
 @end lilypond
 
-Note that the syntax of @code{\tweak} is different from that
-of the @code{\override} command.  Neither the context nor the
-layout object should be specified; in fact, it would generate
-an error to do so.  These are both implied by the following
-item in the input stream.  Note also that an equals sign should
-not be present.  So the general syntax of the
-@code{\tweak} command is simply
+Note that the syntax of @code{\tweak} is different from that of the
+@code{\override} command.  The context should not be specified; in
+fact, it would generate an error to do so.  Both context and layout
+object are implied by the following item in the input stream.  Note
+also that an equals sign should not be present.  So the simple form
+of the @code{\tweak} command is
 
 @example
 \tweak #'@var{layout-property} #@var{value}
@@ -385,14 +382,36 @@ a series of articulations, as shown here:
 @cindex @code{\tweak}, example
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-a ^Black
-  -\tweak #'color #red ^Red
-  -\tweak #'color #green _Green
+a4^"Black"
+  -\tweak #'color #red ^"Red"
+  -\tweak #'color #green _"Green"
 @end lilypond
 
 @noindent
-Note that the @code{\tweak} command must be preceded by an
-articulation mark as if it were an articulation itself.
+Note that the @code{\tweak} command must be preceded by an articulation
+mark since the tweaked expression needs to be applied as an articulation
+itself.  In case of multiple direction overrides (@code{^} or @code{_}),
+the leftmost override wins since it is applied last.
+
+@cindex @code{\tweak}, Accidental
+@cindex @code{\tweak}, specific layout object
+
+Objects such as stems and accidentals are created later, and not
+directly from the following event.  It is still possible to use
+@code{\tweak} on such indirectly created objects by explicitly naming
+the layout object, provided that LilyPond can trace its origin back to
+the original event:
+
+@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
+<\tweak Accidental #'color #red   cis4
+ \tweak Accidental #'color #green es
+                                  g>
+@end lilypond
+
+This long form of the @code{\tweak} command can be described as
+@example
+\tweak @var{layout-object} #'@var{layout-property} @var{value}
+@end example
 
 @cindex tuplets, nested
 @cindex triplets, nested
@@ -422,9 +441,9 @@ printed in red on the first short tuplet bracket.
 \tweak #'direction #up
 \times 4/3 {
   \tweak #'color #red
-  \times 2/3 { c8[ c8 c8] }
-  \times 2/3 { c8[ c8 c8] }
-  \times 2/3 { c8[ c8 c8] }
+  \times 2/3 { c8[ c c] }
+  \times 2/3 { c8[ c c] }
+  \times 2/3 { c8[ c c] }
 }
 @end lilypond
 
@@ -444,8 +463,8 @@ appearance may be modified in the usual way with
 \once \override TupletNumber
   #'text = #tuplet-number::calc-fraction-text
 \times 2/3 {
-  c[ c]
-  c[ c]
+  c8[ c]
+  c8[ c]
   \once \override TupletNumber #'transparent = ##t
   \times 2/3 { c8[ c c] }
   \times 2/3 { c8[ c c] }
@@ -505,16 +524,19 @@ yourself with just a little practice.
 Let's use a concrete example with a simple fragment of real
 music:
 
+@c Mozart, Die Zauberflöte Nr.7 Duett
+
 @lilypond[quote,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
-    r4 b8 b[( g]) g
-    g4[( e]) e d[( f]) a
-    a4 g
+    r4 bes8 bes[( g]) g |
+    g8[( es]) es d[( f]) as |
+    as8 g
   }
   \addlyrics {
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -559,7 +581,7 @@ should find
      Line thickness, generally measured in @code{line-thickness}
 @end example
 
-This looks a good bet to change the heaviness. It tells us that
+This looks a good bet to change the heaviness.  It tells us that
 the value of @code{thickness} is a simple @emph{number},
 that the default value is 1.2, and that the units are
 in another property called @code{line-thickness}.
@@ -581,7 +603,7 @@ at first, so we can be sure the command is working.  We get:
 @end example
 
 Don't forget the @code{#'} preceding the
-property name and a @code{#} preceding the new value!
+property name and a@tie{}@code{#} preceding the new value!
 
 The final question is, @q{Where should this command be
 placed?}  While you are unsure and learning, the best
@@ -593,16 +615,17 @@ close to it.}  Let's do that:
 
 @lilypond[quote,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
     % Increase thickness of all following slurs from 1.2 to 5.0
     \override Slur #'thickness = #5.0
-    r4 b8 b[( g]) g
-    g4[( e]) e d[( f]) a
-    a4 g
+    r4 bes8 bes[( g]) g |
+    g8[( es]) es d[( f]) as |
+    as8 g
   }
   \addlyrics {
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -661,17 +684,18 @@ repositioned as follows:
 
 @lilypond[quote,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
-    r4 b8
+    r4 bes8
     % Increase thickness of immediately following slur only
     \once \override Slur #'thickness = #5.0
-    b4[( g]) g
-    g4[( e]) e d[( f]) a
-    a4 g
+    bes8[( g]) g |
+    g8[( es]) es d[( f]) as |
+    as8 g
   }
   \addlyrics {
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -700,19 +724,20 @@ the slurs begin:
 
 @lilypond[quote,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
-    r4 b8
+    r4 bes8
     % Increase thickness of immediately following slur only
     \once \override Slur #'thickness = #5.0
-    b4[( g]) g
+    bes[( g]) g |
     % Increase thickness of immediately following slur only
     \once \override Slur #'thickness = #5.0
-    g4[( e]) e d[( f]) a
-    a4 g
+    g8[( es]) es d[( f]) as |
+    as8 g
   }
   \addlyrics {
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -727,20 +752,21 @@ after the second slur:
 
 @lilypond[quote,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
-    r4 b8
+    r4 bes8
     % Increase thickness of all following slurs from 1.2 to 5.0
     \override Slur #'thickness = #5.0
-    b4[( g]) g
-    g4[( e])
+    bes[( g]) g |
+    g8[( es]) es
     % Revert thickness of all following slurs to default of 1.2
     \revert Slur #'thickness
-    e4 d[( f]) a
-    a4 g
+    d8[( f]) as |
+    as8 g
   }
   \addlyrics {
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -838,15 +864,16 @@ like so:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
+  \key es \major
   \time 6/8
   {
-    r4 b8 b[( g]) g
-    g4[( e]) e d[( f]) a
-    a4 g
+    r4 bes8 bes[( g]) g |
+    g8[( es]) es d[( f]) as |
+    as8 g
   }
   \addlyrics {
     \override LyricText #'font-shape = #'italic
-    The man who feels love's sweet e -- mo -- tion
+    The man who | feels love's sweet e -- | mo -- tion
   }
 }
 @end lilypond
@@ -915,7 +942,7 @@ to the front of these values when they are entered in the
   @tab A valid direction constant or its numerical equivalent (decimal
 values between -1 and 1 are allowed)
   @tab @code{LEFT}, @code{CENTER}, @code{UP},
-       @code{1}, @code{-1}
+       @code{1}, @w{@code{-1}}
 @item Integer
   @tab A positive whole number
   @tab @code{3}, @code{1}
@@ -934,7 +961,7 @@ make-moment function
        @code{(ly:make-moment 3 8)}
 @item Number
   @tab Any positive or negative decimal value
-  @tab @code{3.5}, @code{-2.45}
+  @tab @code{3.5}, @w{@code{-2.45}}
 @item Pair (of numbers)
   @tab Two numbers separated by a @q{space . space} and enclosed
 in brackets preceded by an apostrophe
@@ -1021,8 +1048,8 @@ the implied Context, @code{Voice}:
 {
   \time 12/16
   \override BarLine #'stencil = ##f
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1046,8 +1073,8 @@ it by adding the correct context:
 {
   \time 12/16
   \override Staff.BarLine #'stencil = ##f
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1064,9 +1091,9 @@ with zero size:
 
 @lilypond[quote,verbatim,relative=2]
 {
-  c c
+  c4 c
   \once \override NoteHead #'stencil = #point-stencil
-  c c
+  c4 c
 }
 @end lilypond
 
@@ -1082,7 +1109,7 @@ our example we want all bar lines to be suppressed, so the value we
 need is @code{'#(#f #f #f)}.  Let's try that, remembering to include
 the @code{Staff} context.  Note also that in writing this value we
 have @code{#'#} before the opening bracket.  The @code{'#} is required
-as part of the value to introduce a vector, and the first @code{#} is
+as part of the value to introduce a vector, and the first@tie{}@code{#} is
 required, as always, to precede the value itself in the
 @code{\override} command.
 
@@ -1093,8 +1120,8 @@ required, as always, to precede the value itself in the
 {
   \time 12/16
   \override Staff.BarLine #'break-visibility = #'#(#f #f #f)
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1125,8 +1152,8 @@ transparent is:
 {
   \time 12/16
   \override Staff.TimeSignature #'transparent = ##t
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1146,8 +1173,8 @@ instead:
 {
   \time 12/16
   \override Staff.TimeSignature #'stencil = ##f
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1187,8 +1214,8 @@ we write:
 {
   \time 12/16
   \override Staff.BarLine #'color = #white
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1221,8 +1248,8 @@ converts X11 color names into the list of internal values,
 {
   \time 12/16
   \override Staff.BarLine #'color = #(x11-color 'white)
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1251,8 +1278,8 @@ and to white it should be @code{(rgb-color 1 1 1)}:
 {
   \time 12/16
   \override Staff.BarLine #'color = #(rgb-color 1 1 1)
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1281,8 +1308,8 @@ various shades of grey:
   \override Voice.NoteHead      #'color = #(x11-color 'grey85)
   \override Voice.Stem          #'color = #(x11-color 'grey85)
   \override Staff.BarLine       #'color = #(x11-color 'grey10)
-  c4 b8 c d16 c d8
-  g,8 a16 b8 c d4 e16
+  c4 b8 c d16 c d8 |
+  g,8 a16 b8 c d4 e16 |
   e8
 }
 @end lilypond
@@ -1316,7 +1343,7 @@ how to introduce a new temporary staff, as in an @rglos{ossia}.
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \new Staff ="main" {
   \relative g' {
-    r4 g8 g c4 c8 d
+    r4 g8 g c4 c8 d |
     e4 r8
     <<
       { f8 c c }
@@ -1324,7 +1351,7 @@ how to introduce a new temporary staff, as in an @rglos{ossia}.
         alignAboveContext = #"main" }
       { f8 f c }
     >>
-    r4
+    r4 |
   }
 }
 @end lilypond
@@ -1343,7 +1370,7 @@ we simply set the stencil of each to @code{#f}, as follows:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \new Staff ="main" {
   \relative g' {
-    r4 g8 g c4 c8 d
+    r4 g8 g c4 c8 d |
     e4 r8
     <<
       { f8 c c }
@@ -1356,7 +1383,7 @@ we simply set the stencil of each to @code{#f}, as follows:
         { f8 f c }
       }
     >>
-    r4
+    r4 |
   }
 }
 @end lilypond
@@ -1404,7 +1431,7 @@ So we could replace the example above with
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \new Staff ="main" {
   \relative g' {
-    r4 g8 g c4 c8 d
+    r4 g8 g c4 c8 d |
     e4 r8
     <<
       { f8 c c }
@@ -1417,7 +1444,7 @@ So we could replace the example above with
       }
       { f8 f c }
     >>
-    r4
+    r4 |
   }
 }
 @end lilypond
@@ -1468,7 +1495,7 @@ Let's try it in our ossia example:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \new Staff ="main" {
   \relative g' {
-    r4 g8 g c4 c8 d
+    r4 g8 g c4 c8 d |
     e4 r8
     <<
       { f8 c c }
@@ -1481,7 +1508,7 @@ Let's try it in our ossia example:
       }
       { f8 f c }
     >>
-    r4
+    r4 |
   }
 }
 @end lilypond
@@ -1534,7 +1561,7 @@ objects in proportion.  It is used like this:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \new Staff ="main" {
   \relative g' {
-    r4 g8 g c4 c8 d
+    r4 g8 g c4 c8 d |
     e4 r8
     <<
       { f8 c c }
@@ -1548,7 +1575,7 @@ objects in proportion.  It is used like this:
       }
       { f8 f c }
     >>
-    r4
+    r4 |
   }
 }
 @end lilypond
@@ -1624,7 +1651,7 @@ Then it sorts the outside-staff objects according to their
 @code{outside-staff-priority}.  The outside-staff objects are
 taken one by one, beginning with the object with the lowest
 @code{outside-staff-priority}, and placed so that they do not
-collide with any objects that have already been placed. That is,
+collide with any objects that have already been placed.  That is,
 if two outside-staff grobs are competing for the same space, the
 one with the lower @code{outside-staff-priority} will be placed
 closer to the staff.  If two objects have the same
@@ -1640,9 +1667,9 @@ under @q{Text2}.
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 c2^"Text1"
-c2^"Text2"
+c2^"Text2" |
 c2^"Text3"
-c2^"Text4"
+c2^"Text4" |
 @end lilypond
 
 Staves are also positioned, by default, as closely together as
@@ -1700,17 +1727,17 @@ default behavior.
 @cindex direction property, example
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
-a4 g c a
+a4 g c a |
 \override Stem #'direction = #DOWN
-a4 g c a
+a4 g c a |
 \override Stem #'direction = #UP
-a4 g c a
+a4 g c a |
 \revert Stem #'direction
-a4 g c a
+a4 g c a |
 @end lilypond
 
 Here we use the constants @code{DOWN} and @code{UP}.
-These have the values @code{-1} and @code{+1} respectively, and
+These have the values @w{@code{-1}} and @code{+1} respectively, and
 these numerical values may be used instead.  The value @code{0}
 may also be used in some cases.  It is simply treated as meaning
 @code{UP} for stems, but for some objects it means @q{center}.
@@ -1791,11 +1818,11 @@ specifying @code{DOWN} and @code{UP}:
 @cindex direction property, example
 
 @lilypond[quote,verbatim,relative=2]
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5 |
 \override Fingering #'direction = #DOWN
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5 |
 \override Fingering #'direction = #UP
-c-5 a-3 f-1 c'-5
+c4-5 a-3 f-1 c'-5 |
 @end lilypond
 
 However, overriding the @code{direction} property is not the
@@ -1807,9 +1834,9 @@ example using this method:
 @cindex fingering example
 
 @lilypond[quote,verbatim,relative=2]
-c-5 a-3 f-1 c'-5
-c_5 a_3 f_1 c'_5
-c^5 a^3 f^1 c'^5
+c4-5 a-3 f-1 c'-5 |
+c4_5 a_3 f_1 c'_5 |
+c4^5 a^3 f^1 c'^5 |
 @end lilypond
 
 The @code{direction} property is ignored for chords, but the
@@ -1820,9 +1847,9 @@ notes of a chord, as shown:
 @cindex fingering example
 
 @lilypond[quote,verbatim,relative=2]
-<c-5 g-3>
-<c-5 g-3 e-2>
-<c-5 g-3 e-2 c-1>
+<c-5 g-3>4
+<c-5 g-3 e-2>4
+<c-5 g-3 e-2 c-1>4
 @end lilypond
 
 @noindent
@@ -1832,9 +1859,9 @@ individual fingering numbers above or below:
 @cindex fingering example
 
 @lilypond[quote,verbatim,relative=2]
-<c-5 g-3 e-2 c-1>
-<c^5 g_3 e_2 c_1>
-<c^5 g^3 e^2 c_1>
+<c-5 g-3 e-2 c-1>4
+<c^5 g_3 e_2 c_1>4
+<c^5 g^3 e^2 c_1>4
 @end lilypond
 
 Even greater control over the placement of fingering of the
@@ -1874,44 +1901,44 @@ Here are a few examples:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 \set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 \set fingeringOrientations = #'(left)
-<f-2>
-<c-1 e-2 g-3 b-5>4
+<f-2>4
+<c-1 e-2 g-3 b-5>4 |
 \set fingeringOrientations = #'(up left down)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 \set fingeringOrientations = #'(up left)
-<f-2>
-<c-1 e-2 g-3 b-5>4
+<f-2>4
+<c-1 e-2 g-3 b-5>4 |
 \set fingeringOrientations = #'(right)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 @end lilypond
 
 @noindent
 If the fingering seems a little crowded the @code{font-size}
 could be reduced.  The default value can be seen from the
-@code{Fingering} object in the IR to be @code{-5}, so let's
-try @code{-7}:
+@code{Fingering} object in the IR to be @w{@code{-5}}, so let's
+try @w{@code{-7}}:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 \override Fingering #'font-size = #-7
 \set fingeringOrientations = #'(left)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 \set fingeringOrientations = #'(left)
-<f-2>
-<c-1 e-2 g-3 b-5>4
+<f-2>4
+<c-1 e-2 g-3 b-5>4 |
 \set fingeringOrientations = #'(up left down)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 \set fingeringOrientations = #'(up left)
-<f-2>
-<c-1 e-2 g-3 b-5>4
+<f-2>4
+<c-1 e-2 g-3 b-5>4 |
 \set fingeringOrientations = #'(right)
-<f-2>
+<f-2>4
 <c-1 e-2 g-3 b-5>4
 @end lilypond
 
@@ -1927,9 +1954,7 @@ The @code{outside-staff-priority} is defined in the
 By default it is set to @code{#f} for all within-staff objects,
 and to a numerical value appropriate to each outside-staff object
 when the object is created.  The following table shows the default
-numerical values for some of the commonest outside-staff objects
-which are, by default, placed in the @code{Staff} or @code{Voice}
-contexts.
+numerical values for some of the commonest outside-staff objects.
 
 @cindex spanners
 
@@ -1949,12 +1974,21 @@ linked hairpins and dynamics.
 @headitem Layout Object
   @tab Priority
   @tab Controls position of:
-@item @code{MultiMeasureRestText}
-  @tab @code{450}
-  @tab Text over full-bar rests
+@item @code{RehearsalMark}
+  @tab @code{1500}
+  @tab Rehearsal marks
+@item @code{MetronomeMark}
+  @tab @code{1000}
+  @tab Metronome marks
+@item @code{VoltaBracketSpanner}
+  @tab @code{600}
+  @tab Volta brackets
 @item @code{TextScript}
   @tab @code{450}
   @tab Markup text
+@item @code{MultiMeasureRestText}
+  @tab @code{450}
+  @tab Markup text over full-bar rests
 @item @code{OttavaBracket}
   @tab @code{400}
   @tab Ottava brackets
@@ -1964,9 +1998,9 @@ linked hairpins and dynamics.
 @item @code{DynamicLineSpanner}
   @tab @code{250}
   @tab All dynamic markings
-@item @code{VoltaBracketSpanner}
-  @tab @code{100}
-  @tab Volta brackets
+@item @code{BarNumber}
+  @tab @code{ 100}
+  @tab Bar numbers
 @item @code{TrillSpanner}
   @tab @code{50}
   @tab Spanning trills
@@ -1999,13 +2033,13 @@ c'4 \startTextSpan
 c4\pp\<
 c4
 % Add Text Script
-c4^Text
+c4^Text |
 c4 c
 % Add Dynamic Text and terminate hairpin
-c4\ff c \stopTextSpan
+c4\ff c \stopTextSpan |
 % Stop Ottava Bracket
 \ottava #0
-c,4 c c c
+c,4 c c c |
 @end lilypond
 
 This example also shows how to create Text Spanners --
@@ -2024,25 +2058,6 @@ It also shows how ottava brackets are created.
 @cindex tweaking rehearsal mark placement
 @cindex rehearsal marks, tweaking placement
 
-Note that bar numbers, metronome marks and rehearsal marks are not
-shown. By default these are created in the @code{Score} context and
-their @code{outside-staff-priority} is ignored relative to the layout
-objects which are created in the @code{Staff} context.  If you wish to
-place bar numbers, metronome marks or rehearsal marks in accordance
-with the value of their @code{outside-staff-priority} the
-@code{Bar_number_engraver}, @code{Metronome_mark_engraver} or
-@code{Mark_engraver} respectively should be removed from the
-@code{Score} context and placed in the top @code{Staff} context.  If
-this is done, these marks will be given the following default
-@code{outside-staff-priority} values:
-
-@multitable @columnfractions .3 .3
-@headitem Layout Object           @tab Priority
-@item @code{RehearsalMark}        @tab @code{1500}
-@item @code{MetronomeMark}        @tab @code{1000}
-@item @code{BarNumber}            @tab @code{ 100}
-@end multitable
-
 If the default values of @code{outside-staff-priority} do not give you
 the placing you want, the priority of any of the objects may be
 overridden.  Suppose we would like the ottava bracket to be placed
@@ -2061,7 +2076,7 @@ in the @code{Staff} context:
     = \markup { \small \bold Slower }
 % Place dynamics above staff
 \dynamicUp
-%Place following Ottava Bracket below Text Spanners
+% Place following Ottava Bracket below Text Spanners
 \once \override Staff.OttavaBracket #'outside-staff-priority = #340
 % Start Ottava Bracket
 \ottava #1
@@ -2071,15 +2086,20 @@ c4\pp
 % Add Dynamic Line Spanner
 c4\<
 % Add Text Script
-c4^Text
+c4^Text |
 c4 c
 % Add Dynamic Text
-c4\ff c \stopTextSpan
+c4\ff c \stopTextSpan |
 % Stop Ottava Bracket
 \ottava #0
-c,4 c c c
+c,4 c c c |
 @end lilypond
 
+Note that some of these objects, in particular bar numbers,
+metronome marks and rehearsal marks, live by default in the
+@code{Score} context, so be sure to use the correct context
+when these are being overriden.
+
 @cindex slurs and outside-staff-priority
 @cindex slurs and articulations
 @cindex articulations and slurs
@@ -2098,13 +2118,13 @@ other outside-staff objects according to that value.  Here's an
 example showing the effect of the two methods:
 
 @lilypond[quote,verbatim,relative=2]
-c4( c^\markup { \tiny \sharp } d4.) c8
+c4( c^\markup { \tiny \sharp } d4.) c8 |
 c4(
 \once \override TextScript #'avoid-slur = #'inside
 \once \override TextScript #'outside-staff-priority = ##f
-c4^\markup \tiny \sharp d4.) c8
+c4^\markup { \tiny \sharp } d4.) c8 |
 \once \override Slur #'outside-staff-priority = #500
-c4( c^\markup { \tiny \sharp } d4.) c8
+c4( c^\markup { \tiny \sharp } d4.) c8 |
 @end lilypond
 
 Changing the @code{outside-staff-priority} can also be used to
@@ -2121,10 +2141,10 @@ in the IR or in the tables above, and increase the priority of
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 c2^"Text1"
-c2^"Text2"
+c2^"Text2" |
 \once \override TextScript #'outside-staff-priority = #500
 c2^"Text3"
-c2^"Text4"
+c2^"Text4" |
 @end lilypond
 
 This certainly lifts @qq{Text3} above @qq{Text4} but it also lifts it
@@ -2152,9 +2172,9 @@ out as far as is necessary to accommodate the text:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \textLengthOn  % Cause notes to space out to accommodate text
 c2^"Text1"
-c2^"Text2"
+c2^"Text2" |
 c2^"Text3"
-c2^"Text4"
+c2^"Text4" |
 @end lilypond
 
 The command to revert to the default behavior is
@@ -2174,23 +2194,23 @@ example to show how markup text interacts with such notes.
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 % This markup is short enough to fit without collision
-c2^"Tex"
-c''2
-R1
+c2^"Tex" c'' |
+R1 |
+
 % This is too long to fit, so it is displaced upwards
-c,,2^"Text"
-c''2
-R1
+c,,2^"Text" c'' |
+R1 |
+
 % Turn off collision avoidance
 \once \override TextScript #'outside-staff-priority = ##f
-c,,2^"Long Text   "
-c''2
-R1
+c,,2^"Long Text   " c'' |
+R1 |
+
 % Turn off collision avoidance
 \once \override TextScript #'outside-staff-priority = ##f
-\textLengthOn  % and turn on textLengthOn
+\textLengthOn        % and turn on textLengthOn
 c,,2^"Long Text   "  % Spaces at end are honored
-c''2
+c''2 |
 @end lilypond
 
 
@@ -2212,8 +2232,8 @@ shows:
 \key aes \major
 \time 9/8
 \dynamicUp
-bes4.~\f\< \( bes4 bes8 des4\ff\> c16 bes\!
-ees,2.~\)\mf ees4 r8
+bes4.~\f\< \( bes4 bes8 des4\ff\> c16 bes\! |
+ees,2.~\)\mf ees4 r8 |
 @end lilypond
 
 However, if the notes and attached dynamics are close
@@ -2277,7 +2297,7 @@ Let's see if this works in our previous example:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \dynamicUp
 \override DynamicText #'extra-spacing-width = #'(0 . 0)
-a4\f b\mf c\mp b\p
+a4\f b\mf c\mp b\p |
 @end lilypond
 
 @noindent
@@ -2362,11 +2382,9 @@ This has already been covered in some detail -- see
 @ref{Within-staff objects}.
 
 @item
-@code{padding}, @code{left-padding},
-@code{right-padding}, @code{staff-padding}
+@code{padding}, @code{right-padding}, @code{staff-padding}
 
 @cindex padding
-@cindex left-padding property
 @cindex padding property
 @cindex right-padding property
 @cindex staff-padding property
@@ -2381,15 +2399,14 @@ applied to all objects which support the
 @code{side-position-interface}.
 
 Instead of @code{padding}, the placement of groups of accidentals
-is controlled by @code{left-padding} and @code{right-padding}.
-These properties are to be found in the @code{AccidentalPlacement}
-object which, note, lives in the @strong{staff} context.  In the
-type-setting process the note heads are type-set first and then
-the accidentals, if any, are added to the left of the note heads
-using the @code{right-padding} property to determine the separation
-from the note heads. So only the @code{right-padding} property of the
-@code{AccidentalPlacement} object has any effect on the placement
-of the accidentals.
+is controlled by @code{right-padding}.  This property is to be found
+in the @code{AccidentalPlacement} object which, note, lives in the
+@strong{Staff} context.  In the typesetting process the note heads
+are typeset first and then the accidentals, if any, are added to the
+left of the note heads using the @code{right-padding} property to determine
+the separation from the note heads and between individual accidentals.
+So only the @code{right-padding} property of the @code{AccidentalPlacement}
+object has any effect on the placement of the accidentals.
 
 The @code{staff-padding} property is closely related to the
 @code{padding} property: @code{padding} controls the minimum amount of
@@ -2424,11 +2441,11 @@ reference point.  It may be used with all objects which support
 the @code{self-alignment-interface}.  In general these are objects
 that contain text.  The values are @code{LEFT}, @code{RIGHT}
 or @code{CENTER}.  Alternatively, a numerical value between
-@code{-1} and @code{+1} may be specified, where @code{-1} is
+@w{@code{-1}} and @code{+1} may be specified, where @w{@code{-1}} is
 left-aligned, @code{+1} is right-aligned, and numbers in between
 move the text progressively from left-aligned to right-aligned.
 Numerical values greater than @code{1} may be specified to move
-the text even further to the left, or less than @code{-1} to
+the text even further to the left, or less than @w{@code{-1}} to
 move the text even further to the right.  A change of @code{1}
 in the value corresponds to a movement of half the text's length.
 
@@ -2513,7 +2530,7 @@ affecting anything else.
 @cindex positions property
 
 This is most useful for manually adjusting the slope and height
-of beams, slurs, and tuplets.   It takes a pair of numbers
+of beams, slurs, and tuplets.  It takes a pair of numbers
 giving the position of the left and right ends of the beam, slur,
 etc. relative to the center line of the staff.  Units are
 staff-spaces.  Note, though, that slurs and phrasing slurs cannot
@@ -2581,12 +2598,12 @@ b2\fermata
 @lilypond[quote,fragment,relative=1,verbatim]
 % This will not work, see below
 \override MetronomeMark #'padding = #3
-\tempo 4=120
-c1
+\tempo 4 = 120
+c1 |
 % This works
 \override Score.MetronomeMark #'padding = #3
-\tempo 4=80
-d1
+\tempo 4 = 80
+d1 |
 @end lilypond
 
 Note in the second example how important it is to figure out what
@@ -2601,9 +2618,8 @@ their @code{outside-staff-priority}, then that object and all
 objects outside it are moved.
 
 
-@subheading left-padding and right-padding
+@subheading right-padding
 
-@cindex left-padding property
 @cindex right-padding property
 
 The @code{right-padding} property affects the spacing between the
@@ -2633,7 +2649,7 @@ sesquisharp = \markup { \sesquisharp }
   \once \override Accidental
     #'stencil = #ly:text-interface::print
   \once \override Accidental #'text = #sesquisharp
-  cis4
+  cis4 |
 }
 @end lilypond
 
@@ -2687,9 +2703,9 @@ right edge with the reference point of the parent note:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=3]
 \voiceOne
-< a\2 >
+<a\2>
 \once \override StringNumber #'self-alignment-X = #RIGHT
-< a\2 >
+<a\2>
 @end lilypond
 
 @subheading staff-position property
@@ -2712,7 +2728,7 @@ The best solution here is to move the multimeasure rest down, since
 the rest is in voice two.  The default in @code{\voiceTwo} (i.e. in
 the second voice of a @code{<<@{...@} \\ @{...@}>>} construct) is that
 @code{staff-position} is set to -4 for MultiMeasureRest, so we need to
-move it, say, four half-staff spaces down to @code{-8}.
+move it, say, four half-staff spaces down to @w{@code{-8}}.
 
 @cindex MultiMeasureRest, example of overriding
 @cindex staff-position property, example
@@ -2793,46 +2809,58 @@ also resolves the rather nasty shape.
 @lilypond[quote,verbatim,fragment,ragged-right,relative=1]
 r4
 \once \override PhrasingSlur #'positions = #'(-4 . -3)
-\acciaccatura
-e8\( d8 c~ c d c d\)
+\acciaccatura e8\( d8 c~ c d c d\)
 @end lilypond
 
-Here's a further example taken from the opening of the left-hand
-staff of Chopin's Prelude Op 28 No. 2.  We see that the beam
-collides with the upper notes:
+Here's a further example.  We see that the beams
+collide with the ties:
 
 @lilypond[quote,verbatim,fragment,ragged-right]
 {
-  \clef "bass"
-  << { b,8 ais, b, g, } \\ { e, g e, g } >>
-  << { b,8 ais, b, g, } \\ { e, g e, g } >>
+  \time 4/2
+  <<
+    { c'1 ~ c'2. e'8 f' }
+    \\
+    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
+  >>
+  <<
+    { c'1 ~ c'2. e'8 f' }
+    \\
+    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
+  >>
 }
 @end lilypond
 
 @noindent
 This can be resolved by manually moving both ends of the beam
-up from their position at 2 staff-spaces above the center line to,
-say, 3:
+up from their position at 1.81 staff-spaces below the center line to,
+say, 1:
 
 @cindex Beam, example of overriding
 @cindex positions property, example
 
 @lilypond[quote,verbatim,fragment,ragged-right]
 {
-  \clef "bass"
+  \time 4/2
   <<
-    \override Beam #'positions = #'(3 . 3)
-    { b,8 ais, b, g, }
-  \\
-    { e,8 g e, g }
+    { c'1 ~ c'2. e'8 f' }
+    \\
+    {
+      \override Beam #'positions = #'(-1 . -1)
+      e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g''
+    }
+  >>
+  <<
+    { c'1 ~ c'2. e'8 f' }
+    \\
+    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
   >>
-  << { b,8 ais, b, g, } \\ { e, g e, g } >>
 }
 @end lilypond
 
 @noindent
 Note that the override continues to apply in the first voice of
-the second block of quavers, but not to any of the beams in the
+the second measure of eighth notes, but not to any of the beams in the
 second voice.
 
 @subheading force-hshift property
@@ -2845,26 +2873,28 @@ was left looking like this:
 \new Staff \relative c'' {
   \key aes \major
   <<
-    { c2 aes4. bes8 } \\
-    { aes2 f4 fes   } \\
-    { \voiceFour
-      <ees c>2
-      des2
-    }
+    { c2 aes4. bes8 }
+    \\
+    { <ees, c>2 des }
+    \\
+    \\
+    { aes'2 f4 fes }
   >> |
   <c ees aes c>1 |
 }
 @end lilypond
 
 @noindent
-The lower two notes of the first chord (i.e, those in the third voice)
-should not be shifted away from the note column of the higher two
-notes.  To correct this we set @code{force-hshift}, which is a
-property of @code{NoteColumn}, of these notes to zero.  The lower note
-of the second chord is best placed just to the right of the higher
-notes.  We achieve this by setting @code{force-hshift} of this note to
-0.5, ie half a note head's width to the right of the note column of
-the higher notes.
+The inner note of the first chord (i.e. the A-flat in the fourth
+Voice) need not be shifted away from the note column of the higher
+note.  To correct this we set @code{force-hshift}, which is a property
+of @code{NoteColumn}, of this note to zero.
+
+In the second chord we prefer the F to line up with the A and the
+lowest note to be positioned slightly right to avoid a collision of
+stems.  We achieve this by setting @code{force-hshift} in the
+@code{NoteColumn} of the low D-flat to move it to the right by half
+a staff-space.
 
 Here's the final result:
 
@@ -2875,11 +2905,18 @@ Here's the final result:
 \new Staff \relative c'' {
   \key aes \major
   <<
-    { c2 aes4. bes8 } \\
-    { aes2 f4 fes   } \\
-    { \voiceFour
-      \once \override NoteColumn #'force-hshift = #0 <ees c>2
-      \once \override NoteColumn #'force-hshift = #0.5 des2
+    { c2 aes4. bes8 }
+    \\
+    {
+      <ees, c>2
+      \once \override NoteColumn #'force-hshift = #0.5
+      des2
+    }
+    \\
+    \\
+    {
+      \override NoteColumn #'force-hshift = #0
+      aes'2 f4 fes
     }
   >> |
   <c ees aes c>1 |
@@ -2894,7 +2931,7 @@ We end this section on Tweaks by showing the steps to be taken to
 deal with a tricky example which needs several tweaks to produce
 the desired output.  The example has been deliberately chosen to
 illustrate the use of the Notation Reference to resolve unusual
-problems with notation.  It is not representative of more usual
+problems with notation.  It is not representative of the more usual
 engraving process, so please do not let these difficulties put
 you off!  Fortunately, difficulties like these are not very common!
 
@@ -2907,33 +2944,48 @@ dynamics, fingering and pedalling.
 @c The following should appear as music without code
 @c This example should not be indexed
 @c line-width ensures no break
-@lilypond[quote,ragged-right,line-width=5.5\in]
+@lilypond[quote,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2
-  c4.\( g8 |
-  \once \override Tie #'staff-position = #3.5
-  bes1~ |
-  \bar "||"
-  \time 6/4
-  \mergeDifferentlyHeadedOn
-  \mergeDifferentlyDottedOn
-  bes2.^\markup {\bold "Moderato"} r8
-  <<
-    {c,8 d fis bes a | }
-  \\
-    % Reposition the c2 to the right of the merged note
-    {c,8~ \once \override NoteColumn #'force-hshift = #1.0
-    % Move the c2 out of the main note column so the merge will work
-    \shiftOnn c2}
-  \\
-    % Stem on the d2 must be down to permit merging
-    {s8 \stemDown \once \override Stem #'transparent = ##t d2}
-  \\
-    {s4 fis4.}
-  >>
-  \mergeDifferentlyHeadedOff
-  \mergeDifferentlyDottedOff
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    \once \override Tie #'staff-position = #3.5
+    bes1~ |
+    \bar "||"
+    \time 6/4
+    \mergeDifferentlyHeadedOn
+    \mergeDifferentlyDottedOn
+    bes2.^\markup { \bold "Moderato" } r8
+    <<
+      { c,8 d fis bes a }
+      \new Voice {
+        \voiceTwo
+        c,8~
+        % Reposition the c2 to the right of the merged note
+        \once \override NoteColumn #'force-hshift = #1.0
+        % Move the c2 out of the main note column
+        % so the merge will work
+        \shiftOnn
+        c2
+      }
+      \new Voice {
+        \voiceThree
+        s8
+        % Stem on the d2 must be down to permit merging
+        \stemDown
+        % Stem on the d2 should be invisible
+        \tweak Stem #'transparent ##t
+        \tweak Flag #'transparent ##t
+        d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    \mergeDifferentlyHeadedOff
+    \mergeDifferentlyDottedOff
+    g2.\)
+  }
 }
 
 lhMusic = \relative c' {
@@ -2963,31 +3015,44 @@ requires four voices.  These are the five beamed eighth notes,
 the tied C, the half-note D which is merged with the eighth note
 D, and the dotted quarter note F-sharp, which is also merged with
 the eighth note at the same pitch.  Everything else is in a single
-voice, so the easiest way is to introduce these four voices
+voice, so the easiest way is to introduce these extra three voices
 temporarily at the time they are needed.  If you have forgotten
-how to do this, look at @ref{I'm hearing Voices}.  Let us begin
-by entering the notes as two variables and setting up the staff
-structure in a score block, and see what LilyPond produces by
-default:
+how to do this, look at @ref{I'm hearing Voices} and @ref{Explicitly
+instantiating voices}.  Here we choose to use explicitly instantiated
+voices for the polyphonic passage, as LilyPond is better able to
+avoid collisions if all voices are instantiated explicitly in this
+way.
+
+So let us begin by entering the notes as two variables, setting up
+the staff structure in a score block, and seeing what LilyPond
+produces by default:
 
 @c line-width ensures no break
-@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
+@lilypond[quote,verbatim,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2 c4. g8 |
-  bes1~ |
-  \time 6/4
-  bes2. r8
-  % Start polyphonic section of four voices
-  <<
-    {c,8 d fis bes a | }
-  \\
-    {c,8~ c2 | }
-  \\
-    {s8 d2 | }
-  \\
-    {s4 fis4. | }
-  >>
-  g2.
+  \new Voice {
+    r2 c4. g8 |
+    bes1~ |
+    \time 6/4
+    bes2. r8
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        c,8~ c2
+      }
+      \new Voice {
+        \voiceThree
+        s8 d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    g2.  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3013,30 +3078,38 @@ lhMusic = \relative c' {
 @end lilypond
 
 All the notes are right, but the appearance is far from
-satisfactory.  The tie clashes with the change in time signature,
-the notes are not merged together, and several notation elements
+satisfactory.  The tie collides with the change in time signature,
+some notes are not merged together, and several notation elements
 are missing.  Let's first deal with the easier things.  We can
 easily add the left hand slur and the right hand phrasing slur,
 since these were all covered in the Tutorial.  Doing this gives:
 
 @c line-width ensures no break
-@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
+@lilypond[quote,verbatim,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2 c4.\( g8 |
-  bes1~ |
-  \time 6/4
-  bes2. r8
-  % Start polyphonic section of four voices
-  <<
-    {c,8 d fis bes a | }
-  \\
-    {c,8~ c2 | }
-  \\
-    {s8 d2 | }
-  \\
-    {s4 fis4. | }
-  >>
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    bes1~ |
+    \time 6/4
+    bes2. r8
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        c,8~ c2
+      }
+      \new Voice {
+        \voiceThree
+        s8 d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    g2.\)  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3071,8 +3144,8 @@ produced by the @code{\bar "||"} command.  That's easily done.  We
 next need to correct the collision of the tie with the time signature.
 This is best done by moving the tie upwards.  Moving objects was
 covered earlier in @ref{Moving objects}, which says that objects
-positioned relative to the staff can be moved by overriding their
-@code{staff-position} property, which is specified in half staff
+positioned relative to the staff can be moved vertically by overriding
+their @code{staff-position} property, which is specified in half staff
 spaces relative to the center line of the staff.  So the following
 override placed just before the first tied note would move the tie up
 to 3.5 half staff spaces above the center line:
@@ -3082,25 +3155,33 @@ to 3.5 half staff spaces above the center line:
 This completes bar two, giving:
 
 @c line-width ensures no break
-@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
+@lilypond[quote,verbatim,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2 c4.\( g8 |
-  \once \override Tie #'staff-position = #3.5
-  bes1~ |
-  \bar "||"
-  \time 6/4
-  bes2. r8
-  % Start polyphonic section of four voices
-  <<
-    {c,8 d fis bes a | }
-  \\
-    {c,8~ c2 | }
-  \\
-    {s8 d2 | }
-  \\
-    {s4 fis4. | }
-  >>
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    \once \override Tie #'staff-position = #3.5
+    bes1~ |
+    \bar "||"
+    \time 6/4
+    bes2. r8
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        c,8~ c2
+      }
+      \new Voice {
+        \voiceThree
+        s8 d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    g2.\)  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3126,15 +3207,15 @@ lhMusic = \relative c' {
 @end lilypond
 
 On to bar three and the start of the Moderato section.  The tutorial
-showed how to add embolded text with the @code{\markup} command, so
-adding @q{Moderato} in bold is easy.  But how do we merge notes in
+showed how to add bold text with the @code{\markup} command, so
+adding @qq{Moderato} in bold is easy.  But how do we merge notes in
 different voices together?  This is where we need to turn again to
 the Notation Reference for help.  A search for @qq{merge} in the
 Notation Reference index quickly leads us to the commands for merging
-differently headed and differently dotted notes in @ruser{Collision
-resolution}.  In our example we need to merge both types of note for
-the duration of the polyphonic section in bar 3, so using the
-information we find in the Notation Reference we add
+differently headed and differently dotted notes in
+@ruser{Collision resolution}.  In our example we need to merge both
+types of note for the duration of the polyphonic section in bar 3,
+so using the information we find in the Notation Reference we add
 
 @example
 \mergeDifferentlyHeadedOn
@@ -3153,29 +3234,37 @@ to the start of that section and
 to the end, giving:
 
 @c line-width ensures no break
-@lilypond[quote,ragged-right,line-width=5.5\in]
+@lilypond[quote,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2 c4.\( g8 |
-  \once \override Tie #'staff-position = #3.5
-  bes1~ |
-  \bar "||"
-  \time 6/4
-  bes2.^\markup {\bold "Moderato"} r8
-  \mergeDifferentlyHeadedOn
-  \mergeDifferentlyDottedOn
-  % Start polyphonic section of four voices
-  <<
-    {c,8 d fis bes a | }
-  \\
-    {c,8~ c2 | }
-  \\
-    {s8 d2 | }
-  \\
-    {s4 fis4. | }
-  >>
-  \mergeDifferentlyHeadedOff
-  \mergeDifferentlyDottedOff
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    \once \override Tie #'staff-position = #3.5
+    bes1~ |
+    \bar "||"
+    \time 6/4
+    bes2.^\markup { \bold "Moderato" } r8
+    \mergeDifferentlyHeadedOn
+    \mergeDifferentlyDottedOn
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        c,8~ c2
+      }
+      \new Voice {
+        \voiceThree
+        s8 d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    \mergeDifferentlyHeadedOff
+    \mergeDifferentlyDottedOff
+    g2.\)  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3219,31 +3308,40 @@ Applying these changes gives:
 @cindex staff-position property, example
 
 @c line-width ensures no break
-@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
+@lilypond[quote,verbatim,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2 c4.\( g8 |
-  \once \override Tie #'staff-position = #3.5
-  bes1~ |
-  \bar "||"
-  \time 6/4
-  bes2.^\markup {\bold "Moderato"} r8
-  \mergeDifferentlyHeadedOn
-  \mergeDifferentlyDottedOn
-  % Start polyphonic section of four voices
-  <<
-    {c,8 d fis bes a | }
-  \\
-    % Move the c2 out of the main note column so the merge will work
-    {c,8~ \shiftOnn c2 | }
-  \\
-    % Stem on the d2 must be down to permit merging
-    {s8 \stemDown d2 | }
-  \\
-    {s4 fis4. | }
-  >>
-  \mergeDifferentlyHeadedOff
-  \mergeDifferentlyDottedOff
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    \once \override Tie #'staff-position = #3.5
+    bes1~ |
+    \bar "||"
+    \time 6/4
+    bes2.^\markup { \bold "Moderato" } r8
+    \mergeDifferentlyHeadedOn
+    \mergeDifferentlyDottedOn
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        % Move the c2 out of the main note column
+        % so the merge will work
+        c,8~ \shiftOnn c2
+      }
+      \new Voice {
+        \voiceThree
+        % Stem on the d2 must be down to permit merging
+        s8 \stemDown d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    \mergeDifferentlyHeadedOff
+    \mergeDifferentlyDottedOff
+    g2.\)  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3280,33 +3378,49 @@ the @code{force-hshift} property.  Here's the final result:
 @cindex transparent property, example
 
 @c line-width ensures no break
-@lilypond[quote,verbatim,ragged-right,line-width=5.5\in]
+@lilypond[quote,verbatim,ragged-right,line-width=6\in]
 rhMusic = \relative c'' {
-  r2
-  c4.\( g8 |
-  \once \override Tie #'staff-position = #3.5
-  bes1~ |
-  \bar "||"
-  \time 6/4
-  bes2.^\markup {\bold "Moderato"} r8
-  \mergeDifferentlyHeadedOn
-  \mergeDifferentlyDottedOn
-  <<
-    {c,8 d fis bes a | }
-  \\
-    % Reposition the c2 to the right of the merged note
-    {c,8~ \once \override NoteColumn #'force-hshift = #1.0
-    % Move the c2 out of the main note column so the merge will work
-    \shiftOnn c2}
-  \\
-    % Stem on the d2 must be down to permit merging
-    {s8 \stemDown \once \override Stem #'transparent = ##t d2}
-  \\
-    {s4 fis4.}
-  >>
-  \mergeDifferentlyHeadedOff
-  \mergeDifferentlyDottedOff
-  g2.\)
+  \new Voice {
+    r2 c4.\( g8 |
+    \once \override Tie #'staff-position = #3.5
+    bes1~ |
+    \bar "||"
+    \time 6/4
+    bes2.^\markup { \bold "Moderato" } r8
+    \mergeDifferentlyHeadedOn
+    \mergeDifferentlyDottedOn
+    % Start polyphonic section of four voices
+    <<
+      { c,8 d fis bes a }  % continuation of main voice
+      \new Voice {
+        \voiceTwo
+        c,8~
+        % Reposition the c2 to the right of the merged note
+        \once \override NoteColumn #'force-hshift = #1.0
+        % Move the c2 out of the main note column
+        % so the merge will work
+        \shiftOnn
+        c2
+      }
+      \new Voice {
+        \voiceThree
+        s8
+        % Stem on the d2 must be down to permit merging
+        \stemDown
+        % Stem on the d2 should be invisible
+        \tweak Stem #'transparent ##t
+        \tweak Flag #'transparent ##t
+        d2
+      }
+      \new Voice {
+        \voiceFour
+        s4 fis4.
+      }
+    >> |
+    \mergeDifferentlyHeadedOff
+    \mergeDifferentlyDottedOff
+    g2.\)  % continuation of main voice
+  }
 }
 
 lhMusic = \relative c' {
@@ -3340,7 +3454,6 @@ lhMusic = \relative c' {
 * Using variables for tweaks::
 * Style sheets::
 * Other sources of information::
-* Avoiding tweaks with slower processing::
 * Advanced tweaks with Scheme::
 @end menu
 
@@ -3365,9 +3478,7 @@ same voice can be connected with ties.  By using two voices,
 with the tied notes in one of them
 
 @lilypond[quote,fragment,relative=2]
-<< { b8~ b8\noBeam }
-\\ { b[ g8] }
->>
+<< { b8~ b\noBeam } \\ { b8[ g] } >>
 @end lilypond
 
 @noindent
@@ -3380,11 +3491,12 @@ cross voices:
 @lilypond[quote,fragment,relative=2,verbatim]
 <<
   {
-    \once \override Stem #'transparent = ##t
-    b8~ b8\noBeam
+    \tweak Stem #'transparent ##t
+    \tweak Flag #'transparent ##t
+    b8~ b\noBeam
   }
 \\
-  { b[ g8] }
+  { b8[ g] }
 >>
 @end lilypond
 
@@ -3395,12 +3507,13 @@ too much, we can lengthen the stem by setting the
 @lilypond[quote,fragment,relative=2,verbatim]
 <<
   {
-    \once \override Stem #'transparent = ##t
-    \once \override Stem #'length = #8
-    b8~ b8\noBeam
+    \tweak Stem #'transparent ##t
+    \tweak Flag #'transparent ##t
+    \tweak Stem #'length #8
+    b8~ b\noBeam
   }
 \\
-  { b[ g8] }
+  { b8[ g] }
 >>
 @end lilypond
 
@@ -3437,10 +3550,10 @@ We show here the effect of the two methods:
     \once \override Score.MetronomeMark #'transparent = ##t
     % Invisible tempo marking to lengthen fermata in MIDI
     \tempo 4=80
-    a\fermata
+    a4\fermata |
     % New tempo for next section
     \tempo 4=100
-    a a a a
+    a4 a a a |
   }
   \layout { }
   \midi { }
@@ -3459,10 +3572,10 @@ We show here the effect of the two methods:
     \once \override Score.MetronomeMark #'stencil = ##f
     % Invisible tempo marking to lengthen fermata in MIDI
     \tempo 4=80
-    a\fermata
+    a4\fermata |
     % New tempo for next section
     \tempo 4=100
-    a a a a
+    a4 a a a |
   }
   \layout { }
   \midi { }
@@ -3476,6 +3589,10 @@ required, but the transparent metronome mark in the first line
 forces the following tempo indication too high while the
 second (with the stencil removed) does not.
 
+@seealso
+Music Glossary:
+@rglos{system}.
+
 @node Using variables for tweaks
 @subsection Using variables for tweaks
 
@@ -3521,20 +3638,34 @@ emphasize = {
   \override Lyrics.LyricText #'font-shape = #'italic
   \override Lyrics.LyricText #'font-series = #'bold
 }
+
 normal = {
   \revert Lyrics.LyricText #'font-shape
   \revert Lyrics.LyricText #'font-series
 }
 
-global = { \time 4/4 \partial 4 \key c \major}
-SopranoMusic   = \relative c' { c4 | e4. e8 g4  g  | a a g }
-AltoMusic  = \relative c' { c4 | c4. c8 e4  e  | f f e }
-TenorMusic = \relative c  { e4 | g4. g8 c4. b8 | a8 b c d e4 }
-BassMusic  = \relative c  { c4 | c4. c8 c4  c  | f8 g a b c4 }
-VerseOne   = \lyrics { E -- | ter -- nal \emphasize Fa -- ther, \normal | strong to save, }
-VerseTwo   = \lyricmode { O | \emphasize Christ, \normal whose voice the | wa -- ters heard, }
-VerseThree = \lyricmode { O | \emphasize Ho -- ly Spi -- rit, \normal | who didst brood }
-VerseFour  = \lyricmode { O | \emphasize Tri -- ni -- ty \normal of | love and pow'r }
+global = { \key c \major \time 4/4 \partial 4 }
+
+SopranoMusic = \relative c' { c4 | e4. e8 g4 g    | a4   a   g  }
+AltoMusic    = \relative c' { c4 | c4. c8 e4 e    | f4   f   e  }
+TenorMusic   = \relative c  { e4 | g4. g8 c4.  b8 | a8 b c d e4 }
+BassMusic    = \relative c  { c4 | c4. c8 c4 c    | f8 g a b c4 }
+
+VerseOne = \lyrics {
+  E -- | ter -- nal \emphasize Fa -- ther, | \normal strong to save,
+}
+
+VerseTwo = \lyricmode {
+  O | \once \emphasize Christ, whose voice the | wa -- ters heard,
+}
+
+VerseThree = \lyricmode {
+  O | \emphasize Ho -- ly Spi -- rit, | \normal who didst brood
+}
+
+VerseFour = \lyricmode {
+  O | \emphasize Tri -- ni -- ty \normal of | love and pow'r
+}
 
 \score {
   \new ChoirStaff <<
@@ -3542,15 +3673,15 @@ VerseFour  = \lyricmode { O | \emphasize Tri -- ni -- ty \normal of | love and p
       \clef "treble"
       \new Voice = "Soprano"  { \voiceOne \global \SopranoMusic }
       \new Voice = "Alto" { \voiceTwo \AltoMusic }
-      \new Lyrics \lyricsto "Soprano" { \VerseOne   }
-      \new Lyrics \lyricsto "Soprano" { \VerseTwo   }
+      \new Lyrics \lyricsto "Soprano" { \VerseOne }
+      \new Lyrics \lyricsto "Soprano" { \VerseTwo }
       \new Lyrics \lyricsto "Soprano" { \VerseThree }
-      \new Lyrics \lyricsto "Soprano" { \VerseFour  }
+      \new Lyrics \lyricsto "Soprano" { \VerseFour }
     >>
     \new Staff <<
       \clef "bass"
       \new Voice = "Tenor" { \voiceOne \TenorMusic }
-      \new Voice = "Bass"  { \voiceTwo \BassMusic  }
+      \new Voice = "Bass"  { \voiceTwo \BassMusic }
     >>
   >>
 }
@@ -3571,49 +3702,59 @@ the parts with all the @code{#()}.  This is explained in
 @ref{Advanced tweaks with Scheme}.
 
 @lilypond[quote,verbatim,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line(#:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #{ \markup { \hspace #0
+               \translate #'(5 . 0)
+               \line { \dynamic "mp"
+                       \text \italic "dolce" } }
+  #})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #{ ^\markup \bold \box #string #})
 
 \relative c'' {
   \tempo 4=50
-  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
+  a4.\mpdolce d8 cis4--\glissando a |
+  b4 bes a2 |
   \inst "Clarinet"
-  cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
+  cis4.\< d8 e4 fis |
+  g8(\! fis)-. e( d)-. cis2 |
 }
 @end lilypond
 
-There are some problems with overlapping output; we'll fix those using
-the techniques in @ref{Moving objects}.  But let's also
-do something about the @code{mpdolce} and @code{inst}
-definitions.  They produce the output we desire, but we might want
-to use them in another piece.  We could simply copy-and-paste them
-at the top of every file, but that's an annoyance.  It also leaves
-those definitions in our input files, and I personally find all
-the @code{#()} somewhat ugly.  Let's hide them in another file:
+Let's do something about the @code{mpdolce} and @code{inst} definitions.
+They produce the output we desire, but we might want to use them in
+another piece.  We could simply copy-and-paste them at the top of every
+file, but that's an annoyance.  It also leaves those definitions in our
+input files, and I personally find all the @code{#()} somewhat ugly.
+Let's hide them in another file:
 
 @example
 %%% save this to a file called "definitions.ily"
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line(#:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #@{ \markup @{ \hspace #0
+               \translate #'(5 . 0)
+               \line @{ \dynamic "mp"
+                       \text \italic "dolce" @} @}
+  #@})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #@{ ^\markup \bold \box #string #@})
 @end example
 
 We will refer to this file using the @code{\include} command near
-the top of the music file. (The extension @code{.ily} is used to
+the top of the music file.  (The extension @file{.ily} is used to
 distinguish this included file, which is not meant to be compiled
 on its own, from the main file.)
-Now let's modify our music (let's save this file as @file{"music.ly"}).
+Now let's modify our music (let's save this file as @file{music.ly}).
 
 @c  We have to do this awkward example/lilypond-non-verbatim
 @c  because we can't do the \include stuff in the manual.
@@ -3623,27 +3764,36 @@ Now let's modify our music (let's save this file as @file{"music.ly"}).
 
 \relative c'' @{
   \tempo 4=50
-  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
+  a4.\mpdolce d8 cis4--\glissando a |
+  b4 bes a2 |
   \inst "Clarinet"
-  cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
+  cis4.\< d8 e4 fis |
+  g8(\! fis)-. e( d)-. cis2 |
 @}
 @end example
 
 @lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line(#:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #{ \markup { \hspace #0
+               \translate #'(5 . 0)
+               \line { \dynamic "mp"
+                       \text \italic "dolce" } }
+  #})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #{ ^\markup \bold \box #string #})
 
 \relative c'' {
   \tempo 4=50
-  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
+  a4.\mpdolce d8 cis4--\glissando a |
+  b4 bes a2 |
   \inst "Clarinet"
-  cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
+  cis4.\< d8 e4 fis |
+  g8(\! fis)-. e( d)-. cis2 |
 }
 @end lilypond
 
@@ -3658,24 +3808,32 @@ with this:
 
 @example
 %%%  definitions.ily
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #@{ \markup @{ \hspace #0
+               \translate #'(5 . 0)
+               \line @{ \dynamic "mp"
+                       \text \italic "dolce" @} @}
+  #@})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #@{ ^\markup \bold \box #string #@})
 
 \layout@{
-  \context @{ \Score
+  \context @{
+    \Score
     \override MetronomeMark #'extra-offset = #'(-9 . 0)
     \override MetronomeMark #'padding = #'3
   @}
-  \context @{ \Staff
+  \context @{
+    \Staff
     \override TimeSignature #'style = #'numbered
   @}
-  \context @{ \Voice
+  \context @{
+    \Voice
     \override Glissando #'thickness = #3
     \override Glissando #'gap = #0.1
   @}
@@ -3683,24 +3841,32 @@ inst = #(define-music-function (parser location string) (string?)
 @end example
 
 @lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #{ \markup { \hspace #0
+               \translate #'(5 . 0)
+               \line { \dynamic "mp"
+                       \text \italic "dolce" } }
+  #})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #{ ^\markup \bold \box #string #})
 
 \layout{
-  \context { \Score
+  \context {
+    \Score
     \override MetronomeMark #'extra-offset = #'(-9 . 0)
     \override MetronomeMark #'padding = #'3
   }
-  \context { \Staff
+  \context {
+    \Staff
     \override TimeSignature #'style = #'numbered
   }
-  \context { \Voice
+  \context {
+    \Voice
     \override Glissando #'thickness = #3
     \override Glissando #'gap = #0.1
   }
@@ -3708,9 +3874,11 @@ inst = #(define-music-function (parser location string) (string?)
 
 \relative c'' {
   \tempo 4=50
-  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
+  a4.\mpdolce d8 cis4--\glissando a |
+  b4 bes a2 |
   \inst "Clarinet"
-  cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
+  cis4.\< d8 e4 fis |
+  g8(\! fis)-. e( d)-. cis2 |
 }
 @end lilypond
 
@@ -3724,24 +3892,33 @@ overall size of the output.
 
 @example
 %%%  definitions.ily
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #@{ \markup @{ \hspace #0
+               \translate #'(5 . 0)
+               \line @{ \dynamic "mp"
+                       \text \italic "dolce" @} @}
+  #@})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #@{ ^\markup \bold \box #string #@})
 
 #(set-global-staff-size 23)
+
 \layout@{
-  \context @{ \Score
+  \context @{
+    \Score
     \override MetronomeMark #'extra-offset = #'(-9 . 0)
     \override MetronomeMark #'padding = #'3
   @}
-  \context @{ \Staff
+  \context @{
+    \Staff
   @}
-  \context @{ \Voice
+  \context @{
+    \Voice
     \override Glissando #'thickness = #3
     \override Glissando #'gap = #0.1
   @}
@@ -3749,16 +3926,22 @@ inst = #(define-music-function (parser location string) (string?)
 @end example
 
 @lilypond[quote,ragged-right]
-mpdolce = #(make-dynamic-script (markup #:hspace 0 #:translate '(5 . 0)
-  #:line( #:dynamic "mp" #:text #:italic "dolce" )))
-
-inst = #(define-music-function (parser location string) (string?)
-  (make-music
-    'TextScriptEvent
-    'direction UP
-    'text (markup #:bold (#:box string))))
+mpdolce =
+#(make-dynamic-script
+  #{ \markup { \hspace #0
+               \translate #'(5 . 0)
+               \line { \dynamic "mp"
+                       \text \italic "dolce" } }
+  #})
+
+inst =
+#(define-music-function
+     (parser location string)
+     (string?)
+   #{ ^\markup \bold \box #string #})
 
 #(set-global-staff-size 23)
+
 \layout{
   \context { \Score
     \override MetronomeMark #'extra-offset = #'(-9 . 0)
@@ -3772,9 +3955,11 @@ inst = #(define-music-function (parser location string) (string?)
 
 \relative c'' {
   \tempo 4=50
-  a4.\mpdolce d8 cis4--\glissando a | b4 bes a2
+  a4.\mpdolce d8 cis4--\glissando a |
+  b4 bes a2 |
   \inst "Clarinet"
-  cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2
+  cis4.\< d8 e4 fis |
+  g8(\! fis)-. e( d)-. cis2 |
 }
 @end lilypond
 
@@ -3804,7 +3989,9 @@ file with @code{\include "../global.ily"}, which contains
 @example
 %%%   global.ily
 \version @w{"@version{}"}
+
 #(ly:set-option 'point-and-click #f)
+
 \include "../init/init-defs.ly"
 \include "../init/init-layout.ly"
 \include "../init/init-headers.ly"
@@ -3822,22 +4009,27 @@ first find the directory appropriate to your system.  The location
 of this directory depends (a) on whether you obtained LilyPond
 by downloading a precompiled binary from lilypond.org
 or whether you installed it from a package manager (i.e.
-distributed with Linux, or installed under fink or cygwin) or
+distributed with GNU/Linux, or installed under fink or cygwin) or
 compiled it from source, and (b) on which operating system it is
 being used:
 
 @strong{Downloaded from lilypond.org}
 
 @itemize @bullet
-@item Linux
+@item GNU/Linux
 
 Navigate to
-@file{@var{INSTALLDIR}/lilypond/usr/share/lilypond/current/}
+@example
+@file{@var{INSTALLDIR}/lilypond/usr/@/share/lilypond/current/}
+@end example
 
 @item MacOS X
 
 Navigate to
-@file{@var{INSTALLDIR}/LilyPond.app/Contents/Resources/share/lilypond/current/}
+@example
+@file{@var{INSTALLDIR}/LilyPond.app/Contents/@/Resources/share/lilypond/current/}
+@end example
+
 by either @code{cd}-ing into this directory from the
 Terminal, or control-clicking on the LilyPond application and
 selecting @q{Show Package Contents}.
@@ -3845,7 +4037,9 @@ selecting @q{Show Package Contents}.
 @item Windows
 
 Using Windows Explorer, navigate to
-@file{@var{INSTALLDIR}/LilyPond/usr/share/lilypond/current/}
+@example
+@file{@var{INSTALLDIR}/LilyPond/usr/@/share/lilypond/current/}
+@end example
 
 @end itemize
 
@@ -3904,7 +4098,7 @@ The following are the most useful files to be found in
 @end multitable
 
 Other settings (such as the definitions of markup commands) are
-stored as @code{.scm} (Scheme) files.  The Scheme programming
+stored as @file{.scm} (Scheme) files.  The Scheme programming
 language is used to provide a programmable interface into
 LilyPond internal operation.  Further explanation of these files
 is currently outside the scope of this manual, as a knowledge of
@@ -3936,36 +4130,6 @@ interest are:
 @end multitable
 
 
-
-@node Avoiding tweaks with slower processing
-@subsection Avoiding tweaks with slower processing
-
-LilyPond can perform extra checks while it processes input files.
-These checks will take extra time to perform, but fewer manual tweaks
-may be required to obtain an acceptable result.  If a text script
-or part of the lyrics extends over the margins these checks will
-compress that line of the score just enough to fit within the
-margins.
-
-To be effective under all circumstances these checks must be enabled
-by placing the overrides in a Score @code{\with} block, rather than
-in-line in music, as follows:
-
-@example
-\new Score \with @{
-  % Makes sure text scripts and lyrics are within the paper margins
-  \override PaperColumn #'keep-inside-line = ##t
-  \override NonMusicalPaperColumn #'keep-inside-line = ##t
-@} @{
-   ..
-@}
-@end example
-
-However, @code{keep-inside-line} is expensive and the recommendation
-is to not enable it, to allow for faster processing, until creating
-a final version.  This way you do not need to manually add @code{\break}
-commands to avoid text running off the right-hand side of the page.
-
 @node Advanced tweaks with Scheme
 @subsection Advanced tweaks with Scheme
 
@@ -3992,28 +4156,24 @@ the staff.
 
 @lilypond[quote,verbatim,ragged-right]
 #(define (color-notehead grob)
-  "Color the notehead according to its position on the staff."
-  (let ((mod-position (modulo (ly:grob-property grob 'staff-position) 7)))
-    (case mod-position
-      ;;   Return rainbow colors
-      ((1) (x11-color 'red    ))  ; for C
-      ((2) (x11-color 'orange ))  ; for D
-      ((3) (x11-color 'yellow ))  ; for E
-      ((4) (x11-color 'green  ))  ; for F
-      ((5) (x11-color 'blue   ))  ; for G
-      ((6) (x11-color 'purple ))  ; for A
-      ((0) (x11-color 'violet ))  ; for B
-    )
-  )
-)
+   "Color the notehead according to its position on the staff."
+   (let ((mod-position (modulo (ly:grob-property grob 'staff-position)
+                               7)))
+     (case mod-position
+       ;;   Return rainbow colors
+       ((1) (x11-color 'red    ))  ; for C
+       ((2) (x11-color 'orange ))  ; for D
+       ((3) (x11-color 'yellow ))  ; for E
+       ((4) (x11-color 'green  ))  ; for F
+       ((5) (x11-color 'blue   ))  ; for G
+       ((6) (x11-color 'purple ))  ; for A
+       ((0) (x11-color 'violet ))  ; for B
+       )))
 
 \relative c' {
   % Arrange to obtain color from color-notehead procedure
   \override NoteHead #'color = #color-notehead
-  a2 b |
-  c2 d |
-  e2 f |
-  g2 a |
+  a2 b | c2 d | e2 f | g2 a |
 }
 @end lilypond