]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/learning/tweaks.itely
LM - Remove obsolete statement
[lilypond.git] / Documentation / learning / tweaks.itely
index a0913808c155fb1170f82f26e767941d9e8f6523..806b2743338391d47e925027b0a5f760ed5de92b 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.15.10"
 
 @node Tweaking output
 @chapter Tweaking output
@@ -219,7 +219,7 @@ we shall use just a few simple properties and values which are
 easily understood.
 
 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
@@ -278,22 +278,25 @@ b4 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]
 c4 d
-\once \override NoteHead #'color = #red
+\override NoteHead #'color = #red
 e4 f |
 \once \override NoteHead #'color = #green
-g4 a b c |
+g4 a
+\revert NoteHead #'color
+b c |
 @end lilypond
 
 @strong{\overrideProperty command}
@@ -316,11 +319,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
@@ -349,11 +352,7 @@ 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.
+cannot be tweaked in this way.
 
 So to return to our example, the size of the middle note of
 a chord would be changed in this way:
@@ -391,8 +390,10 @@ a4^"Black"
 @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 tuplets, nested
 @cindex triplets, nested
@@ -584,7 +585,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
@@ -923,7 +924,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}
@@ -942,7 +943,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
@@ -1090,7 +1091,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.
 
@@ -1718,7 +1719,7 @@ 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}.
@@ -1901,8 +1902,8 @@ Here are a few examples:
 @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
@@ -1935,9 +1936,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
 
@@ -1957,12 +1956,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
@@ -1972,9 +1980,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
@@ -2032,25 +2040,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
@@ -2088,6 +2077,11 @@ c4\ff c \stopTextSpan |
 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
@@ -2429,11 +2423,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.
 
@@ -2716,7 +2710,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
@@ -2800,42 +2794,55 @@ r4
 \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,8 g e, g } >>
-  << { b,8 ais, b, g, } \\ { e,8 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,8 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
@@ -2935,7 +2942,8 @@ rhMusic = \relative c'' {
         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
+        % Move the c2 out of the main note column
+        % so the merge will work
         \shiftOnn
         c2
       }
@@ -2946,6 +2954,7 @@ rhMusic = \relative c'' {
         \stemDown
         % Stem on the d2 should be invisible
         \once \override Stem #'transparent = ##t
+        \once \override Flag #'transparent = ##t
         d2
       }
       \new Voice {
@@ -3295,7 +3304,8 @@ rhMusic = \relative c'' {
       { 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
+        % Move the c2 out of the main note column
+        % so the merge will work
         c,8~ \shiftOnn c2
       }
       \new Voice {
@@ -3367,7 +3377,8 @@ rhMusic = \relative c'' {
         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
+        % Move the c2 out of the main note column
+        % so the merge will work
         \shiftOnn
         c2
       }
@@ -3378,6 +3389,7 @@ rhMusic = \relative c'' {
         \stemDown
         % Stem on the d2 should be invisible
         \once \override Stem #'transparent = ##t
+        \once \override Flag #'transparent = ##t
         d2
       }
       \new Voice {
@@ -3422,7 +3434,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
 
@@ -3461,6 +3472,7 @@ cross voices:
 <<
   {
     \once \override Stem #'transparent = ##t
+    \once \override Flag #'transparent = ##t
     b8~ b\noBeam
   }
 \\
@@ -3476,6 +3488,7 @@ too much, we can lengthen the stem by setting the
 <<
   {
     \once \override Stem #'transparent = ##t
+    \once \override Flag #'transparent = ##t
     \once \override Stem #'length = #8
     b8~ b\noBeam
   }
@@ -3623,7 +3636,7 @@ VerseOne = \lyrics {
 }
 
 VerseTwo = \lyricmode {
-  O | \emphasize Christ, \normal whose voice the | wa -- ters heard,
+  O | \once \emphasize Christ, whose voice the | wa -- ters heard,
 }
 
 VerseThree = \lyricmode {
@@ -3671,19 +3684,17 @@ the parts with all the @code{#()}.  This is explained in
 @lilypond[quote,verbatim,ragged-right]
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #{ \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))))
+   #{ ^\markup \bold \box #string #})
 
 \relative c'' {
   \tempo 4=50
@@ -3695,39 +3706,35 @@ inst =
 }
 @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")))
+  #@{ \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))))
+   #@{ ^\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 @file{@/.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.
@@ -3748,19 +3755,17 @@ Now let's modify our music (let's save this file as @file{music@/.ly}).
 @lilypond[quote,ragged-right]
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #{ \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))))
+   #{ ^\markup \bold \box #string #})
 
 \relative c'' {
   \tempo 4=50
@@ -3778,26 +3783,24 @@ put the metronome marking above the clef, instead of over the first
 note.  And finally, my composition professor hates @q{C} time signatures,
 so we'd better make that @q{4/4} instead.
 
-Don't change @file{music@/.ly}, though.  Replace our @file{definitions@/.ily}
+Don't change @file{music.ly}, though.  Replace our @file{definitions.ily}
 with this:
 
 @example
 %%%  definitions.ily
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #@{ \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))))
+   #@{ ^\markup \bold \box #string #@})
 
 \layout@{
   \context @{
@@ -3820,19 +3823,17 @@ inst =
 @lilypond[quote,ragged-right]
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #{ \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))))
+   #{ ^\markup \bold \box #string #})
 
 \layout{
   \context {
@@ -3864,7 +3865,7 @@ inst =
 That looks nicer!  But now suppose that I want to publish this
 piece.  My composition professor doesn't like @q{C} time
 signatures, but I'm somewhat fond of them.  Let's copy the
-current @file{definitions@/.ily} to @file{web@/-publish@/.ily} and
+current @file{definitions.ily} to @file{web-publish.ily} and
 modify that.  Since this music is aimed at producing a pdf which
 will be displayed on the screen, we'll also increase the
 overall size of the output.
@@ -3873,19 +3874,17 @@ overall size of the output.
 %%%  definitions.ily
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #@{ \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))))
+   #@{ ^\markup \bold \box #string #@})
 
 #(set-global-staff-size 23)
 
@@ -3909,19 +3908,17 @@ inst =
 @lilypond[quote,ragged-right]
 mpdolce =
 #(make-dynamic-script
-  (markup #:hspace 0
-          #:translate '(5 . 0)
-          #:line (#:dynamic "mp"
-                  #:text #:italic "dolce")))
+  #{ \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))))
+   #{ ^\markup \bold \box #string #})
 
 #(set-global-staff-size 23)
 
@@ -3949,12 +3946,12 @@ inst =
 Now in our music, I simply replace
 @code{\include "definitions.ily"} with
 @code{\include "web-publish.ily"}.  Of course, we could make this
-even more convenient.  We could make a @file{definitions@/.ily} file which
+even more convenient.  We could make a @file{definitions.ily} file which
 contains only the definitions of @code{mpdolce} and @code{inst}, a
-@file{web@/-publish@/.ily} file which contains only the @code{\layout}
-section listed above, and a @file{university@/.ily} file which
+@file{web-publish.ily} file which contains only the @code{\layout}
+section listed above, and a @file{university.ily} file which
 contains only the tweaks to produce the output that my professor
-prefers.  The top of @file{music@/.ly} would then look like this:
+prefers.  The top of @file{music.ly} would then look like this:
 
 @example
 \include "definitions.ily"
@@ -4002,12 +3999,17 @@ being used:
 @item 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}.
@@ -4015,7 +4017,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
 
@@ -4031,12 +4035,12 @@ script, and @var{X.Y.Z} is the LilyPond version number.
 Within this directory the two interesting subdirectories are
 
 @itemize
-@item @file{ly/@/} - contains files in LilyPond format
-@item @file{scm/@/} - contains files in Scheme format
+@item @file{ly/} - contains files in LilyPond format
+@item @file{scm/} - contains files in Scheme format
 @end itemize
 
-Let's begin by looking at some files in @file{ly/@/}.
-Open @file{ly/@/property@/-init@/.ly} in a text editor.  The one
+Let's begin by looking at some files in @file{ly/}.
+Open @file{ly/property-init.ly} in a text editor.  The one
 you normally use for @code{.ly} files will be fine.  This file
 contains the definitions of all the standard LilyPond predefined
 commands, such as @code{\stemUp} and @code{\slurDotted}.  You will
@@ -4056,25 +4060,25 @@ be redefined easily, just like any other variable, at the
 head of your input file.
 
 The following are the most useful files to be found in
-@file{ly/@/}:
+@file{ly/}:
 
 @multitable @columnfractions .4 .6
 @headitem Filename
   @tab Contents
-@item @file{ly/@/engraver@/-init@/.ly}
+@item @file{ly/engraver-init.ly}
   @tab Definitions of engraver Contexts
-@item @file{ly/@/paper@/-defaults@/-init@/.ly}
+@item @file{ly/paper-defaults-init.ly}
   @tab Specifications of paper-related defaults
-@item @file{ly/@/performer@/-init@/.ly}
+@item @file{ly/performer-init.ly}
   @tab Definitions of performer Contexts
-@item @file{ly/@/property@/-init@/.ly}
+@item @file{ly/property-init.ly}
   @tab Definitions of all common predefined commands
-@item @file{ly/@/spanner@/-init@/.ly}
+@item @file{ly/spanner-init.ly}
   @tab Definitions of spanner-related predefined commands
 @end multitable
 
 Other settings (such as the definitions of markup commands) are
-stored as @file{@/.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
@@ -4088,58 +4092,24 @@ interest are:
 @multitable @columnfractions .4 .6
 @headitem Filename
   @tab Contents
-@item @file{scm/@/auto@/-beam@/.scm}
+@item @file{scm/auto-beam.scm}
   @tab Sub-beaming defaults
-@item @file{scm/@/define@/-grobs@/.scm}
+@item @file{scm/define-grobs.scm}
   @tab Default settings for grob properties
-@item @file{scm/@/define@/-markup@/-commands@/.scm}
+@item @file{scm/define-markup-commands.scm}
   @tab Specify all markup commands
-@item @file{scm/@/midi@/.scm}
+@item @file{scm/midi.scm}
   @tab Default settings for MIDI output
-@item @file{scm/@/output@/-lib@/.scm}
+@item @file{scm/output-lib.scm}
   @tab Settings that affect appearance of frets, colors,
        accidentals, bar lines, etc
-@item @file{scm/@/parser@/-clef@/.scm}
+@item @file{scm/parser-clef.scm}
   @tab Definitions of supported clefs
-@item @file{scm/@/script@/.scm}
+@item @file{scm/script.scm}
   @tab Default settings for articulations
 @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 using @code{\context} within a @code{\layout}
-block, rather than in-line in music, as follows:
-
-@example
-\score @{
-  @{ @dots{}notes@dots{} @}
-  \layout @{
-    \context @{
-      \Score
-      % 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