]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/learning/tweaks.itely
Doc: new syntax for \tweak, \override (2936)
[lilypond.git] / Documentation / learning / tweaks.itely
index 107cbaea99aa84c65834bee98043a48d1cd79567..1382f60393789fcdac4310919c1a45f06f255afe 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.16.0"
+@c \version "2.17.6"
 
 @node Tweaking output
 @chapter Tweaking output
@@ -162,10 +162,9 @@ verbatim.
   @tab direction, beam-thickness
 @end multitable
 
-As we shall see shortly, the properties of different types of
-object are modified by different commands, so it is useful to
-be able to recognize the type of object from the names of its
-properties.
+As we shall see shortly, the properties of different types of object are
+modified by different commands, so it is useful to be able to recognize
+the types of objects and properties from their names.
 
 
 @node Tweaking methods
@@ -198,8 +197,7 @@ how this is done.
 The general syntax of this command is:
 
 @example
-\override @var{Context}.@var{LayoutObject} #'@var{layout-property} =
-#@var{value}
+\override @var{Context}.@var{LayoutObject}.@var{layout-property} = #@var{value}
 @end example
 
 @noindent
@@ -207,34 +205,40 @@ This will set the property with the name @var{layout-property} of the
 layout object with the name @var{LayoutObject}, which is a member of
 the @var{Context} context, to the value @var{value}.
 
-The @var{Context} can be omitted (and usually is) when the
+The @var{Context} may be omitted (and usually is) when the
 required context is unambiguously implied and is one of lowest
 level contexts, i.e., @code{Voice}, @code{ChordNames} or
 @code{Lyrics}, and we shall omit it in many of the following
 examples.  We shall see later when it must be specified.
 
 Later sections deal comprehensively with properties and their
-values, see @ref{Types of properties}.  But in this section we shall 
+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@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
-used.  Here is a simple example to change the color of the
-note head:
+LilyPond's primary expressions are musical items like notes,
+durations, and markups.  More basic expressions like numbers,
+strings, and lists are processed in @q{Scheme mode}, which is
+invoked by prefixing the value with @samp{#}.  Although the
+values may sometimes have a valid representation in LilyPond's
+musical mode, this manual will always use @samp{#} for their
+entry for the sake of consistency.  For more information about
+Scheme mode, see @rextend{LilyPond Scheme syntax}.
+
+@code{\override} 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 used.  Here is a simple example to change the
+color of the note head:
 
 @cindex color property, example
 @cindex NoteHead, example of overriding
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 c4 d
-\override NoteHead #'color = #red
+\override NoteHead.color = #red
 e4 f |
-\override NoteHead #'color = #green
+\override NoteHead.color = #green
 g4 a b c |
 @end lilypond
 
@@ -253,7 +257,7 @@ value; note, not its previous value if several @code{\override}
 commands have been issued.
 
 @example
-\revert @var{Context}.@var{LayoutObject} #'@var{layout-property}
+\revert @var{Context}.@var{LayoutObject}.@var{layout-property}
 @end example
 
 Again, just like @var{Context} in the @code{\override} command,
@@ -266,11 +270,11 @@ of the note head to the default value for the final two notes:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 c4 d
-\override NoteHead #'color = #red
+\override NoteHead.color = #red
 e4 f |
-\override NoteHead #'color = #green
+\override NoteHead.color = #green
 g4 a
-\revert NoteHead #'color
+\revert NoteHead.color
 b4 c |
 @end lilypond
 
@@ -292,11 +296,11 @@ note like this:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 c4 d
-\override NoteHead #'color = #red
+\override NoteHead.color = #red
 e4 f |
-\once \override NoteHead #'color = #green
+\once \override NoteHead.color = #green
 g4 a
-\revert NoteHead #'color
+\revert NoteHead.color
 b c |
 @end lilypond
 
@@ -336,7 +340,7 @@ middle note head (the E) in a C major chord.  Let's first see what
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 <c e g>4
-\once \override NoteHead #'font-size = #-3
+\once \override NoteHead.font-size = #-3
 <c e g>4
 <c e g>4
 @end lilypond
@@ -361,7 +365,7 @@ a chord would be changed in this way:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 <c e g>4
-<c \tweak #'font-size #-3 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
@@ -372,7 +376,7 @@ 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}
+\tweak @var{layout-property} #@var{value}
 @end example
 
 A @code{\tweak} command can also be used to modify just one in
@@ -383,8 +387,8 @@ a series of articulations, as shown here:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 a4^"Black"
-  -\tweak #'color #red ^"Red"
-  -\tweak #'color #green _"Green"
+  -\tweak color #red ^"Red"
+  -\tweak color #green _"Green"
 @end lilypond
 
 @noindent
@@ -403,14 +407,15 @@ 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>
+<\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}
+\tweak @var{layout-object}.@var{layout-property} @var{value}
 @end example
 
 @cindex tuplets, nested
@@ -438,9 +443,9 @@ printed in red on the first short tuplet bracket.
 @cindex color property, example
 
 @lilypond[quote,ragged-right,verbatim,fragment,relative=2]
-\tweak #'direction #up
+\tweak direction #up
 \times 4/3 {
-  \tweak #'color #red
+  \tweak color #red
   \times 2/3 { c8[ c c] }
   \times 2/3 { c8[ c c] }
   \times 2/3 { c8[ c c] }
@@ -456,16 +461,13 @@ appearance may be modified in the usual way with
 @cindex transparent property, example
 @cindex TupletNumber, example of overriding
 
-@c NOTE Tuplet brackets collide if notes are high on staff
-@c See issue 509
 @lilypond[quote,ragged-right,verbatim,fragment,relative=1]
 \times 2/3 { c8[ c c] }
-\once \override TupletNumber
-  #'text = #tuplet-number::calc-fraction-text
+\once \override TupletNumber.text = #tuplet-number::calc-fraction-text
 \times 2/3 {
   c8[ c]
   c8[ c]
-  \once \override TupletNumber #'transparent = ##t
+  \once \override TupletNumber.transparent = ##t
   \times 2/3 { c8[ c c] }
   \times 2/3 { c8[ c c] }
 }
@@ -570,10 +572,9 @@ this page, but if you have an idea about the name of the layout object
 to be tweaked, it is easier to go straight to the IR and search there.
 
 This Slur page in the IR tells us first that Slur objects are created
-by the Slur_engraver.  Then it lists the standard settings.  Note
-these are @strong{not} in alphabetic order.  Browse down them looking
-for a property that might control the heaviness of slurs, and you
-should find
+by the Slur_engraver.  Then it lists the standard settings.  Browse
+through them looking for a property that might control the heaviness of
+slurs, and you should find
 
 @example
 @code{thickness} (number)
@@ -599,11 +600,10 @@ the context.  Let's use a very large value for the thickness
 at first, so we can be sure the command is working.  We get:
 
 @example
-\override Slur #'thickness = #5.0
+\override Slur.thickness = #5.0
 @end example
 
-Don't forget the @code{#'} preceding the
-property name and a@tie{}@code{#} preceding the new value!
+Don't forget the@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
@@ -619,7 +619,7 @@ close to it.}  Let's do that:
   \time 6/8
   {
     % Increase thickness of all following slurs from 1.2 to 5.0
-    \override Slur #'thickness = #5.0
+    \override Slur.thickness = #5.0
     r4 bes8 bes[( g]) g |
     g8[( es]) es d[( f]) as |
     as8 g
@@ -654,7 +654,7 @@ Slur, where it says @q{Slur objects are created by: Slur
 engraver}.  So slurs will be created in whichever context
 the @code{Slur_engraver} is in.  Follow the link to the
 @code{Slur_engraver} page.  At the very bottom it tells
-us that @code{Slur_engraver} is part of five Voice contexts,
+us that @code{Slur_engraver} is part of seven Voice contexts,
 including the standard voice context, @code{Voice}, so our
 guess was correct.  And because @code{Voice} is one of the
 lowest level contexts which is implied unambiguously by
@@ -689,7 +689,7 @@ repositioned as follows:
   {
     r4 bes8
     % Increase thickness of immediately following slur only
-    \once \override Slur #'thickness = #5.0
+    \once \override Slur.thickness = #5.0
     bes8[( g]) g |
     g8[( es]) es d[( f]) as |
     as8 g
@@ -729,10 +729,10 @@ the slurs begin:
   {
     r4 bes8
     % Increase thickness of immediately following slur only
-    \once \override Slur #'thickness = #5.0
+    \once \override Slur.thickness = #5.0
     bes[( g]) g |
     % Increase thickness of immediately following slur only
-    \once \override Slur #'thickness = #5.0
+    \once \override Slur.thickness = #5.0
     g8[( es]) es d[( f]) as |
     as8 g
   }
@@ -757,11 +757,11 @@ after the second slur:
   {
     r4 bes8
     % Increase thickness of all following slurs from 1.2 to 5.0
-    \override Slur #'thickness = #5.0
+    \override Slur.thickness = #5.0
     bes[( g]) g |
     g8[( es]) es
     % Revert thickness of all following slurs to default of 1.2
-    \revert Slur #'thickness
+    \revert Slur.thickness
     d8[( f]) as |
     as8 g
   }
@@ -834,23 +834,18 @@ to change the lyrics to italics.  The object is @code{LyricText},
 the property is @code{font-shape} and the value is
 @code{italic}.  As before, we'll omit the context.
 
-As an aside, although it is an important one, note that because the
-values of @code{font-shape} are symbols they must be introduced with a
-single apostrophe, @code{'}.  That is why apostrophes are needed
-before @code{thickness} in the earlier example and @code{font-shape}.
-These are both symbols too.  Symbols are then read internally by
-LilyPond.  Some of them are the names of properties, like
-@code{thickness} or @code{font-shape}, others are used as values that
-can be given to properties, like @code{italic}.  Note the distinction
-from arbitrary text strings, which would appear as @code{"a text
-string"}; for more details about symbols and strings, see
-@rextend{Scheme tutorial}.
+As an aside, although it is an important one, note that some
+properties take values that are symbols, like @code{italic}, and
+must be preceded by an apostrophe, @code{'}.  Symbols are then
+read internally by LilyPond.  Note the distinction from arbitrary
+text strings, which would appear as @code{"a text string"}; for
+more details about symbols and strings, see @rextend{Scheme tutorial}.
 
 So we see that the @code{\override} command needed to print the lyrics
 in italics is:
 
 @example
-\override LyricText #'font-shape = #'italic
+\override LyricText.font-shape = #'italic
 @end example
 
 @noindent
@@ -872,7 +867,7 @@ like so:
     as8 g
   }
   \addlyrics {
-    \override LyricText #'font-shape = #'italic
+    \override LyricText.font-shape = #'italic
     The man who | feels love's sweet e -- | mo -- tion
   }
 }
@@ -881,33 +876,9 @@ like so:
 @noindent
 and the lyrics are all printed in italics.
 
-@subheading Specifying the context in lyric mode
-
-@cindex context, specifying in lyric mode
-@cindex lyric mode, specifying context
-
-In the case of lyrics, if you try specifying the context in the
-format given earlier the command will fail.  A syllable
-entered in lyricmode is terminated by either a space,
-a newline or a digit.  All other characters are included
-as part of the syllable.  For this reason a space or newline
-must appear before the terminating @code{@}} to prevent it being
-included as part of the final syllable.  Similarly,
-spaces must be inserted before and after the
-period or dot, @q{.}, separating the context name from the
-object name, as otherwise the two names are run together and
-the interpreter cannot recognize them.  So the command should be:
-
-@example
-\override Lyrics . LyricText #'font-shape = #'italic
-@end example
-
 @warning{In lyrics always leave whitespace between the final
 syllable and the terminating brace.}
 
-@warning{In overrides in lyrics always place spaces around
-the dot between the context name and the object name.}
-
 
 @seealso
 Extending: @rextend{Scheme tutorial}.
@@ -1047,7 +1018,7 @@ the implied Context, @code{Voice}:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override BarLine #'stencil = ##f
+  \override BarLine.stencil = ##f
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1072,7 +1043,7 @@ it by adding the correct context:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.BarLine #'stencil = ##f
+  \override Staff.BarLine.stencil = ##f
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1092,7 +1063,7 @@ with zero size:
 @lilypond[quote,verbatim,relative=2]
 {
   c4 c
-  \once \override NoteHead #'stencil = #point-stencil
+  \once \override NoteHead.stencil = #point-stencil
   c4 c
 }
 @end lilypond
@@ -1119,7 +1090,7 @@ required, as always, to precede the value itself in the
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.BarLine #'break-visibility = #'#(#f #f #f)
+  \override Staff.BarLine.break-visibility = #'#(#f #f #f)
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1151,7 +1122,7 @@ transparent is:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.TimeSignature #'transparent = ##t
+  \override Staff.TimeSignature.transparent = ##t
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1172,7 +1143,7 @@ instead:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.TimeSignature #'stencil = ##f
+  \override Staff.TimeSignature.stencil = ##f
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1213,7 +1184,7 @@ we write:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.BarLine #'color = #white
+  \override Staff.BarLine.color = #white
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1247,7 +1218,7 @@ converts X11 color names into the list of internal values,
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.BarLine #'color = #(x11-color 'white)
+  \override Staff.BarLine.color = #(x11-color 'white)
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1277,7 +1248,7 @@ and to white it should be @code{(rgb-color 1 1 1)}:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.BarLine #'color = #(rgb-color 1 1 1)
+  \override Staff.BarLine.color = #(rgb-color 1 1 1)
   c4 b8 c d16 c d8 |
   g,8 a16 b8 c d4 e16 |
   e8
@@ -1285,7 +1256,7 @@ and to white it should be @code{(rgb-color 1 1 1)}:
 @end lilypond
 
 Finally, there is also a grey scale available as part of the
-X11 set of colors.  These range from black, @code{'grey0'},
+X11 set of colors.  These range from black, @code{'grey0},
 to white, @code{'grey100}, in steps of 1.  Let's illustrate
 this by setting all the layout objects in our example to
 various shades of grey:
@@ -1302,12 +1273,12 @@ various shades of grey:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 {
   \time 12/16
-  \override Staff.StaffSymbol   #'color = #(x11-color 'grey30)
-  \override Staff.TimeSignature #'color = #(x11-color 'grey60)
-  \override Staff.Clef          #'color = #(x11-color 'grey60)
-  \override Voice.NoteHead      #'color = #(x11-color 'grey85)
-  \override Voice.Stem          #'color = #(x11-color 'grey85)
-  \override Staff.BarLine       #'color = #(x11-color 'grey10)
+  \override Staff.StaffSymbol.color = #(x11-color 'grey30)
+  \override Staff.TimeSignature.color = #(x11-color 'grey60)
+  \override Staff.Clef.color = #(x11-color 'grey60)
+  \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 |
   e8
@@ -1334,7 +1305,7 @@ found.
 @cindex objects, changing size of
 
 Let us begin by looking again at the earlier example
-see @ref{Nesting music expressions}) which showed
+(see @ref{Nesting music expressions}) which showed
 how to introduce a new temporary staff, as in an @rglos{ossia}.
 
 @cindex alignAboveContext property, example
@@ -1378,8 +1349,8 @@ we simply set the stencil of each to @code{#f}, as follows:
         alignAboveContext = #"main"
       }
       {
-        \override Staff.Clef #'stencil = ##f
-        \override Staff.TimeSignature #'stencil = ##f
+        \override Staff.Clef.stencil = ##f
+        \override Staff.TimeSignature.stencil = ##f
         { f8 f c }
       }
     >>
@@ -1438,9 +1409,9 @@ So we could replace the example above with
       \new Staff \with {
         alignAboveContext = #"main"
         % Don't print clefs in this staff
-        \override Clef #'stencil = ##f
+        \override Clef.stencil = ##f
         % Don't print time signatures in this staff
-        \override TimeSignature #'stencil = ##f
+        \override TimeSignature.stencil = ##f
       }
       { f8 f c }
     >>
@@ -1469,7 +1440,7 @@ fonts of each object type, like @code{NoteHead}s with commands
 like
 
 @example
-\override NoteHead #'font-size = #-2
+\override NoteHead.font-size = #-2
 @end example
 
 or we can change the size of all fonts by setting a special
@@ -1501,8 +1472,8 @@ Let's try it in our ossia example:
       { f8 c c }
       \new Staff \with {
         alignAboveContext = #"main"
-        \override Clef #'stencil = ##f
-        \override TimeSignature #'stencil = ##f
+        \override Clef.stencil = ##f
+        \override TimeSignature.stencil = ##f
         % Reduce all font sizes by ~24%
         fontSize = #-2
       }
@@ -1567,11 +1538,11 @@ objects in proportion.  It is used like this:
       { f8 c c }
       \new Staff \with {
         alignAboveContext = #"main"
-        \override Clef #'stencil = ##f
-        \override TimeSignature #'stencil = ##f
+        \override Clef.stencil = ##f
+        \override TimeSignature.stencil = ##f
         fontSize = #-2
         % Reduce stem length and line spacing to match
-        \override StaffSymbol #'staff-space = #(magstep -2)
+        \override StaffSymbol.staff-space = #(magstep -2)
       }
       { f8 f c }
     >>
@@ -1694,17 +1665,16 @@ this @q{nestling} of the notes on adjacent staves:
 @node Within-staff objects
 @subsection Within-staff objects
 
-We have already seen how the commands @code{\voiceXXX} affect
-the direction of slurs, ties, fingering and
-everything else which depends on the direction of the stems.
-These commands are essential when writing polyphonic music to
-permit interweaving melodic lines to be distinguished.
-But occasionally it may be necessary to override this automatic
-behavior.  This can be done for whole sections of music or even
-for an individual note.  The property which controls this
-behavior is the @code{direction} property of each layout object.
-We first explain what this does, and then introduce a number of
-ready-made commands which avoid your having to code explicit
+We have already seen how the commands @code{\voiceXXX} affect the
+direction of slurs, ties, fingering and everything else which depends on
+the direction of the stems -- see @ref{Explicitly instantiating voices}.
+These commands are essential when writing polyphonic music to permit
+interweaving melodic lines to be distinguished.  But occasionally it may
+be necessary to override this automatic behavior.  This can be done for
+whole sections of music or even for an individual note.  The property
+which controls this behavior is the @code{direction} property of each
+layout object.  We first explain what this does, and then introduce a
+number of ready-made commands which avoid your having to code explicit
 overrides for the more common modifications.
 
 Some layout objects like slurs and ties curve, bend or point
@@ -1728,11 +1698,11 @@ default behavior.
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 a4 g c a |
-\override Stem #'direction = #DOWN
+\override Stem.direction = #DOWN
 a4 g c a |
-\override Stem #'direction = #UP
+\override Stem.direction = #UP
 a4 g c a |
-\revert Stem #'direction
+\revert Stem.direction
 a4 g c a |
 @end lilypond
 
@@ -1819,9 +1789,9 @@ specifying @code{DOWN} and @code{UP}:
 
 @lilypond[quote,verbatim,relative=2]
 c4-5 a-3 f-1 c'-5 |
-\override Fingering #'direction = #DOWN
+\override Fingering.direction = #DOWN
 c4-5 a-3 f-1 c'-5 |
-\override Fingering #'direction = #UP
+\override Fingering.direction = #UP
 c4-5 a-3 f-1 c'-5 |
 @end lilypond
 
@@ -1924,7 +1894,7 @@ could be reduced.  The default value can be seen from the
 try @w{@code{-7}}:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
-\override Fingering #'font-size = #-7
+\override Fingering.font-size = #-7
 \set fingeringOrientations = #'(left)
 <f-2>4
 <c-1 e-2 g-3 b-5>4
@@ -2022,7 +1992,7 @@ these.
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 % Set details for later Text Spanner
-\override TextSpanner #'(bound-details left text)
+\override TextSpanner.bound-details.left.text
     = \markup { \small \bold Slower }
 % Place dynamics above staff
 \dynamicUp
@@ -2072,12 +2042,12 @@ in the @code{Staff} context:
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
 % Set details for later Text Spanner
-\override TextSpanner #'(bound-details left text)
+\override TextSpanner.bound-details.left.text
     = \markup { \small \bold Slower }
 % Place dynamics above staff
 \dynamicUp
 % Place following Ottava Bracket below Text Spanners
-\once \override Staff.OttavaBracket #'outside-staff-priority = #340
+\once \override Staff.OttavaBracket.outside-staff-priority = #340
 % Start Ottava Bracket
 \ottava #1
 c'4 \startTextSpan
@@ -2120,10 +2090,10 @@ example showing the effect of the two methods:
 @lilypond[quote,verbatim,relative=2]
 c4( c^\markup { \tiny \sharp } d4.) c8 |
 c4(
-\once \override TextScript #'avoid-slur = #'inside
-\once \override TextScript #'outside-staff-priority = ##f
+\once \override TextScript.avoid-slur = #'inside
+\once \override TextScript.outside-staff-priority = ##f
 c4^\markup { \tiny \sharp } d4.) c8 |
-\once \override Slur #'outside-staff-priority = #500
+\once \override Slur.outside-staff-priority = #500
 c4( c^\markup { \tiny \sharp } d4.) c8 |
 @end lilypond
 
@@ -2142,7 +2112,7 @@ 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" |
-\once \override TextScript #'outside-staff-priority = #500
+\once \override TextScript.outside-staff-priority = #500
 c2^"Text3"
 c2^"Text4" |
 @end lilypond
@@ -2179,7 +2149,7 @@ c2^"Text4" |
 
 The command to revert to the default behavior is
 @code{\textLengthOff}.  Remember @code{\once} only works with
-@code{\override}, @code{\set}, @code{\revert} or @code{unset},
+@code{\override}, @code{\set}, @code{\revert} or @code{\unset},
 so cannot be used with @code{\textLengthOn}.
 
 @cindex markup text, allowing collisions
@@ -2202,12 +2172,12 @@ c,,2^"Text" c'' |
 R1 |
 
 % Turn off collision avoidance
-\once \override TextScript #'outside-staff-priority = ##f
+\once \override TextScript.outside-staff-priority = ##f
 c,,2^"Long Text   " c'' |
 R1 |
 
 % Turn off collision avoidance
-\once \override TextScript #'outside-staff-priority = ##f
+\once \override TextScript.outside-staff-priority = ##f
 \textLengthOn        % and turn on textLengthOn
 c,,2^"Long Text   "  % Spaces at end are honored
 c''2 |
@@ -2220,7 +2190,7 @@ c''2 |
 @cindex dynamics, tweaking placement
 
 Dynamic markings will normally be positioned beneath the
-staff, but may be positioned above with the @code{dynamicUp}
+staff, but may be positioned above with the @code{\dynamicUp}
 command.  They will be positioned vertically relative to the
 note to which they are attached, and will float below (or above)
 all within-staff objects such as phrasing slurs and bar numbers.
@@ -2285,7 +2255,7 @@ must override this value of @code{extra-spacing-width} to
 the command to do this for dynamic text:
 
 @example
-\override DynamicText #'extra-spacing-width = #'(0 . 0)
+\override DynamicText.extra-spacing-width = #'(0 . 0)
 @end example
 
 @noindent
@@ -2296,7 +2266,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)
+\override DynamicText.extra-spacing-width = #'(0 . 0)
 a4\f b\mf c\mp b\p |
 @end lilypond
 
@@ -2317,7 +2287,7 @@ right edge half a unit to the right should do it:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \dynamicUp
 % Extend width by 1 staff space
-\override DynamicText #'extra-spacing-width = #'(-0.5 . 0.5)
+\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
 a4\f b\mf c\mp b\p
 @end lilypond
 
@@ -2588,7 +2558,7 @@ above or below notes.
 
 @lilypond[quote,fragment,relative=1,verbatim]
 c2\fermata
-\override Script #'padding = #3
+\override Script.padding = #3
 b2\fermata
 @end lilypond
 
@@ -2597,11 +2567,11 @@ b2\fermata
 
 @lilypond[quote,fragment,relative=1,verbatim]
 % This will not work, see below
-\override MetronomeMark #'padding = #3
+\override MetronomeMark.padding = #3
 \tempo 4 = 120
 c1 |
 % This works
-\override Score.MetronomeMark #'padding = #3
+\override Score.MetronomeMark.padding = #3
 \tempo 4 = 80
 d1 |
 @end lilypond
@@ -2640,15 +2610,13 @@ sesquisharp = \markup { \sesquisharp }
 \relative c'' {
   c4
   % This prints a sesquisharp but the spacing is too small
-  \once \override Accidental
-    #'stencil = #ly:text-interface::print
-  \once \override Accidental #'text = #sesquisharp
+  \once \override Accidental.stencil = #ly:text-interface::print
+  \once \override Accidental.text = #sesquisharp
   cis4 c
   % This improves the spacing
-  \once \override Score.AccidentalPlacement #'right-padding = #0.6
-  \once \override Accidental
-    #'stencil = #ly:text-interface::print
-  \once \override Accidental #'text = #sesquisharp
+  \once \override Score.AccidentalPlacement.right-padding = #0.6
+  \once \override Accidental.stencil = #ly:text-interface::print
+  \once \override Accidental.text = #sesquisharp
   cis4 |
 }
 @end lilypond
@@ -2685,9 +2653,9 @@ example taken from the previous section:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=2]
 \dynamicUp
 % Extend width by 1 unit
-\override DynamicText #'extra-spacing-width = #'(-0.5 . 0.5)
+\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
 % Align dynamics to a base line 2 units above staff
-\override DynamicLineSpanner #'staff-padding = #2
+\override DynamicLineSpanner.staff-padding = #2
 a4\f b\mf c\mp b\p
 @end lilypond
 
@@ -2704,7 +2672,7 @@ right edge with the reference point of the parent note:
 @lilypond[quote,fragment,ragged-right,verbatim,relative=3]
 \voiceOne
 <a\2>
-\once \override StringNumber #'self-alignment-X = #RIGHT
+\once \override StringNumber.self-alignment-X = #RIGHT
 <a\2>
 @end lilypond
 
@@ -2737,7 +2705,7 @@ move it, say, four half-staff spaces down to @w{@code{-8}}.
 <<
   { c4 c c c }
   \\
-  \override MultiMeasureRest #'staff-position = #-8
+  \override MultiMeasureRest.staff-position = #-8
   { R1 }
 >>
 @end lilypond
@@ -2764,7 +2732,7 @@ the left, and 1.8 staff space downwards:
 @lilypond[quote,fragment,relative=1,verbatim]
 \stemUp
 f4-5
-\once \override Fingering #'extra-offset = #'(-0.3 . -1.8)
+\once \override Fingering.extra-offset = #'(-0.3 . -1.8)
 f4-5
 @end lilypond
 
@@ -2808,7 +2776,7 @@ also resolves the rather nasty shape.
 
 @lilypond[quote,verbatim,fragment,ragged-right,relative=1]
 r4
-\once \override PhrasingSlur #'positions = #'(-4 . -3)
+\once \override PhrasingSlur.positions = #'(-4 . -3)
 \acciaccatura e8\( d8 c~ c d c d\)
 @end lilypond
 
@@ -2846,7 +2814,7 @@ say, 1:
     { c'1 ~ c'2. e'8 f' }
     \\
     {
-      \override Beam #'positions = #'(-1 . -1)
+      \override Beam.positions = #'(-1 . -1)
       e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g''
     }
   >>
@@ -2890,7 +2858,7 @@ 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
+In the second chord we prefer the F to line up with the A-flat 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
@@ -2909,13 +2877,13 @@ Here's the final result:
     \\
     {
       <ees, c>2
-      \once \override NoteColumn #'force-hshift = #0.5
+      \once \override NoteColumn.force-hshift = #0.5
       des2
     }
     \\
     \\
     {
-      \override NoteColumn #'force-hshift = #0
+      \override NoteColumn.force-hshift = #0
       aes'2 f4 fes
     }
   >> |
@@ -2948,7 +2916,7 @@ dynamics, fingering and pedalling.
 rhMusic = \relative c'' {
   \new Voice {
     r2 c4.\( g8 |
-    \once \override Tie #'staff-position = #3.5
+    \once \override Tie.staff-position = #3.5
     bes1~ |
     \bar "||"
     \time 6/4
@@ -2961,7 +2929,7 @@ rhMusic = \relative c'' {
         \voiceTwo
         c,8~
         % Reposition the c2 to the right of the merged note
-        \once \override NoteColumn #'force-hshift = #1.0
+        \once \override NoteColumn.force-hshift = #1.0
         % Move the c2 out of the main note column
         % so the merge will work
         \shiftOnn
@@ -2973,8 +2941,8 @@ rhMusic = \relative c'' {
         % 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
+        \tweak Stem.transparent ##t
+        \tweak Flag.transparent ##t
         d2
       }
       \new Voice {
@@ -3150,7 +3118,7 @@ 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:
 
-@code{\once \override Tie #'staff-position = #3.5}
+@code{\once \override Tie.staff-position = #3.5}
 
 This completes bar two, giving:
 
@@ -3159,7 +3127,7 @@ This completes bar two, giving:
 rhMusic = \relative c'' {
   \new Voice {
     r2 c4.\( g8 |
-    \once \override Tie #'staff-position = #3.5
+    \once \override Tie.staff-position = #3.5
     bes1~ |
     \bar "||"
     \time 6/4
@@ -3238,7 +3206,7 @@ to the end, giving:
 rhMusic = \relative c'' {
   \new Voice {
     r2 c4.\( g8 |
-    \once \override Tie #'staff-position = #3.5
+    \once \override Tie.staff-position = #3.5
     bes1~ |
     \bar "||"
     \time 6/4
@@ -3312,7 +3280,7 @@ Applying these changes gives:
 rhMusic = \relative c'' {
   \new Voice {
     r2 c4.\( g8 |
-    \once \override Tie #'staff-position = #3.5
+    \once \override Tie.staff-position = #3.5
     bes1~ |
     \bar "||"
     \time 6/4
@@ -3382,7 +3350,7 @@ the @code{force-hshift} property.  Here's the final result:
 rhMusic = \relative c'' {
   \new Voice {
     r2 c4.\( g8 |
-    \once \override Tie #'staff-position = #3.5
+    \once \override Tie.staff-position = #3.5
     bes1~ |
     \bar "||"
     \time 6/4
@@ -3396,7 +3364,7 @@ rhMusic = \relative c'' {
         \voiceTwo
         c,8~
         % Reposition the c2 to the right of the merged note
-        \once \override NoteColumn #'force-hshift = #1.0
+        \once \override NoteColumn.force-hshift = #1.0
         % Move the c2 out of the main note column
         % so the merge will work
         \shiftOnn
@@ -3408,8 +3376,8 @@ rhMusic = \relative c'' {
         % 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
+        \tweak Stem.transparent ##t
+        \tweak Flag.transparent ##t
         d2
       }
       \new Voice {
@@ -3491,8 +3459,8 @@ cross voices:
 @lilypond[quote,fragment,relative=2,verbatim]
 <<
   {
-    \tweak Stem #'transparent ##t
-    \tweak Flag #'transparent ##t
+    \tweak Stem.transparent ##t
+    \tweak Flag.transparent ##t
     b8~ b\noBeam
   }
 \\
@@ -3507,9 +3475,9 @@ too much, we can lengthen the stem by setting the
 @lilypond[quote,fragment,relative=2,verbatim]
 <<
   {
-    \tweak Stem #'transparent ##t
-    \tweak Flag #'transparent ##t
-    \tweak Stem #'length #8
+    \tweak Stem.transparent ##t
+    \tweak Flag.transparent ##t
+    \tweak Stem.length #8
     b8~ b\noBeam
   }
 \\
@@ -3547,7 +3515,7 @@ We show here the effect of the two methods:
     % Visible tempo marking
     \tempo 4=120
     a4 a a
-    \once \override Score.MetronomeMark #'transparent = ##t
+    \once \override Score.MetronomeMark.transparent = ##t
     % Invisible tempo marking to lengthen fermata in MIDI
     \tempo 4=80
     a4\fermata |
@@ -3569,7 +3537,7 @@ We show here the effect of the two methods:
     % Visible tempo marking
     \tempo 4=120
     a4 a a
-    \once \override Score.MetronomeMark #'stencil = ##f
+    \once \override Score.MetronomeMark.stencil = ##f
     % Invisible tempo marking to lengthen fermata in MIDI
     \tempo 4=80
     a4\fermata |
@@ -3613,11 +3581,11 @@ themselves prevents their use in simple variables.  As an
 alternative can we use @code{\override} and @code{\revert} commands?
 
 @example
-@code{\override Lyrics . LyricText #'font-shape = #'italic}
-@code{\override Lyrics . LyricText #'font-series = #'bold}
+@code{\override Lyrics.LyricText.font-shape = #'italic}
+@code{\override Lyrics.LyricText.font-series = #'bold}
 
-@code{\revert Lyrics . LyricText #'font-shape}
-@code{\revert Lyrics . LyricText #'font-series}
+@code{\revert Lyrics.LyricText.font-shape}
+@code{\revert Lyrics.LyricText.font-series}
 @end example
 
 These would also be extremely tedious to enter if there were many
@@ -3635,13 +3603,13 @@ for the variables to make them quicker to type:
 
 @lilypond[quote,verbatim]
 emphasize = {
-  \override Lyrics.LyricText #'font-shape = #'italic
-  \override Lyrics.LyricText #'font-series = #'bold
+  \override Lyrics.LyricText.font-shape = #'italic
+  \override Lyrics.LyricText.font-series = #'bold
 }
 
 normal = {
-  \revert Lyrics.LyricText #'font-shape
-  \revert Lyrics.LyricText #'font-series
+  \revert Lyrics.LyricText.font-shape
+  \revert Lyrics.LyricText.font-series
 }
 
 global = { \key c \major \time 4/4 \partial 4 }
@@ -3825,17 +3793,17 @@ inst =
 \layout@{
   \context @{
     \Score
-    \override MetronomeMark #'extra-offset = #'(-9 . 0)
-    \override MetronomeMark #'padding = #'3
+    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.padding = #'3
   @}
   \context @{
     \Staff
-    \override TimeSignature #'style = #'numbered
+    \override TimeSignature.style = #'numbered
   @}
   \context @{
     \Voice
-    \override Glissando #'thickness = #3
-    \override Glissando #'gap = #0.1
+    \override Glissando.thickness = #3
+    \override Glissando.gap = #0.1
   @}
 @}
 @end example
@@ -3858,17 +3826,17 @@ inst =
 \layout{
   \context {
     \Score
-    \override MetronomeMark #'extra-offset = #'(-9 . 0)
-    \override MetronomeMark #'padding = #'3
+    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.padding = #'3
   }
   \context {
     \Staff
-    \override TimeSignature #'style = #'numbered
+    \override TimeSignature.style = #'numbered
   }
   \context {
     \Voice
-    \override Glissando #'thickness = #3
-    \override Glissando #'gap = #0.1
+    \override Glissando.thickness = #3
+    \override Glissando.gap = #0.1
   }
 }
 
@@ -3891,7 +3859,7 @@ will be displayed on the screen, we'll also increase the
 overall size of the output.
 
 @example
-%%%  definitions.ily
+%%%  web-publish.ily
 mpdolce =
 #(make-dynamic-script
   #@{ \markup @{ \hspace #0
@@ -3911,16 +3879,16 @@ inst =
 \layout@{
   \context @{
     \Score
-    \override MetronomeMark #'extra-offset = #'(-9 . 0)
-    \override MetronomeMark #'padding = #'3
+    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.padding = #'3
   @}
   \context @{
     \Staff
   @}
   \context @{
     \Voice
-    \override Glissando #'thickness = #3
-    \override Glissando #'gap = #0.1
+    \override Glissando.thickness = #3
+    \override Glissando.gap = #0.1
   @}
 @}
 @end example
@@ -3944,12 +3912,12 @@ inst =
 
 \layout{
   \context { \Score
-    \override MetronomeMark #'extra-offset = #'(-9 . 0)
-    \override MetronomeMark #'padding = #'3
+    \override MetronomeMark.extra-offset = #'(-9 . 0)
+    \override MetronomeMark.padding = #'3
   }
   \context { \Voice
-    \override Glissando #'thickness = #3
-    \override Glissando #'gap = #0.1
+    \override Glissando.thickness = #3
+    \override Glissando.gap = #0.1
   }
 }
 
@@ -4070,8 +4038,8 @@ example, @code{/tieDotted} is defined to be:
 
 @example
 tieDotted = @{
-  \override Tie #'dash-period = #0.75
-  \override Tie #'dash-fraction = #0.1
+  \override Tie.dash-period = #0.75
+  \override Tie.dash-fraction = #0.1
 @}
 @end example
 
@@ -4172,7 +4140,7 @@ the staff.
 
 \relative c' {
   % Arrange to obtain color from color-notehead procedure
-  \override NoteHead #'color = #color-notehead
+  \override NoteHead.color = #color-notehead
   a2 b | c2 d | e2 f | g2 a |
 }
 @end lilypond