Without them the sections cannot be referenced,
and links in the left panel in html and entries in
the index do not link to the correct section.
Also correct more level 5 headings.
This continues Issue 2967, the fix to which missed
quite a few changes.
-@strong{\override command}
+@menu
+* The \override command::
+* The \revert command::
+* The \once prefix::
+* The \overrideProperty command::
+* The \tweak command::
+@end menu
+
+@node The \override command
+@unnumberedsubsubsec The @code{\override} command
@cindex override command
@cindex override syntax
@cindex override command
@cindex override syntax
-@strong{\revert command}
+
+@node The \revert command
+@unnumberedsubsubsec The @code{\revert} command
+
+@node The \once prefix
+@unnumberedsubsubsec The @code{\once} prefix
@funindex \once
@funindex once
@funindex \once
@funindex once
-@strong{\overrideProperty command}
+
+@node The \overrideProperty command
+@unnumberedsubsubsec The @code{\overrideProperty} command
@cindex overrideProperty command
@cindex overrideProperty command
@rextend{Difficult tweaks}.
@c Maybe explain in a later iteration -td
@rextend{Difficult tweaks}.
@c Maybe explain in a later iteration -td
+
+@node The \tweak command
+@unnumberedsubsubsec The @code{\tweak} command
still need some practice. This is provided in the examples
which follow.
still need some practice. This is provided in the examples
which follow.
-@subheading Finding the context
+@subsubsubheading Finding the context
@cindex context, finding
@cindex context, identifying correct
@cindex context, finding
@cindex context, identifying correct
the fact that we are entering notes, we can omit it in this
location.
the fact that we are entering notes, we can omit it in this
location.
-@subheading Overriding once only
+@subsubsubheading Overriding once only
@cindex overriding once only
@cindex once override
@cindex overriding once only
@cindex once override
The @code{\once} command can also be used before the @code{\set}
command.
The @code{\once} command can also be used before the @code{\set}
command.
+@subsubsubheading Reverting
@cindex revert
@cindex default properties, reverting to
@cindex revert
@cindex default properties, reverting to
by extension, many other layout objects too.) Let's consider each of
these in turn.
by extension, many other layout objects too.) Let's consider each of
these in turn.
+@menu
+* The stencil property::
+* The break-visibility property::
+* The transparent property::
+* The color property::
+@end menu
+
+@node The stencil property
+@unnumberedsubsubsec The @code{stencil} property
-@subheading break-visibility
+@node The break-visibility property
+@unnumberedsubsubsec The @code{break-visibility} property
@cindex break-visibility property
@cindex break-visibility property
And we see this too removes all the bar lines.
And we see this too removes all the bar lines.
+@node The transparent property
+@unnumberedsubsubsec The @code{transparent} property
@cindex transparent property
@cindex transparency
@cindex transparent property
@cindex transparency
(which can be done using @code{\hide})
leaves it where it is, but makes it invisible.
(which can be done using @code{\hide})
leaves it where it is, but makes it invisible.
+@node The color property
+@unnumberedsubsubsec The @code{color} property
right or left when they point up or down. This is controlled
automatically when @code{direction} is set.
right or left when they point up or down. This is controlled
automatically when @code{direction} is set.
+@menu
+* The direction property::
+* Fingering::
+@end menu
+
+@node The direction property
+@unnumberedsubsubsec The @code{direction} property
+
@cindex down
@cindex up
@cindex center
@cindex down
@cindex up
@cindex center
@code{\override}) to a single timestep, you can precede them with
@code{\once} like you would do with explicit overrides.
@code{\override}) to a single timestep, you can precede them with
@code{\once} like you would do with explicit overrides.
@unnumberedsubsubsec Fingering
@cindex fingering, placement
@unnumberedsubsubsec Fingering
@cindex fingering, placement
@subsection Outside-staff objects
Outside-staff objects are automatically placed to avoid collisions.
@subsection Outside-staff objects
Outside-staff objects are automatically placed to avoid collisions.
+There are several ways to override the automatic placement if the
+positioning is not optimum.
+
+@menu
+* The outside-staff-priority property::
+* The \textLengthOn command::
+* Dynamics placement::
+* Grob sizing::
+@end menu
+
+
+@node The outside-staff-priority property
+@unnumberedsubsubsec The @code{outside-staff-priority} property
+
Objects with the lower value of the @code{outside-staff-priority}
property are placed nearer to the staff, and other outside-staff
objects are then raised as far as necessary to avoid collisions.
Objects with the lower value of the @code{outside-staff-priority}
property are placed nearer to the staff, and other outside-staff
objects are then raised as far as necessary to avoid collisions.
room for the text. This is done using the @code{textLengthOn}
command.
room for the text. This is done using the @code{textLengthOn}
command.
-@subheading \textLengthOn
+@node The \textLengthOn command
+@unnumberedsubsubsec The @code{\textLengthOn} command
@cindex notes, spreading out with text
@cindex notes, spreading out with text
+@node Dynamics placement
+@unnumberedsubsubsec Dynamics placement
@cindex tweaking dynamics placement
@cindex dynamics, tweaking placement
@cindex tweaking dynamics placement
@cindex dynamics, tweaking placement
command, but there is no equivalent command for dynamic marks. So we
shall have to work out how to do this using @code{\override} commands.
command, but there is no equivalent command for dynamic marks. So we
shall have to work out how to do this using @code{\override} commands.
+@node Grob sizing
+@unnumberedsubsubsec Grob sizing
@cindex grob sizing
@cindex sizing grobs
@cindex grob sizing
@cindex sizing grobs
Let's now see how the properties in the previous section can
help to resolve overlapping notation.
Let's now see how the properties in the previous section can
help to resolve overlapping notation.
-@subheading padding property
+@menu
+* The padding property::
+* The right-padding property::
+* The staff-padding property::
+* The self-alignment-X property::
+* The staff-position property::
+* The extra-offset property::
+* The positions property::
+* The force-hshift property::
+@end menu
+
+@node The padding property
+@unnumberedsubsubsec The @code{padding} property
@cindex padding
@cindex fixing overlapping notation
@cindex padding
@cindex fixing overlapping notation
objects outside it are moved.
objects outside it are moved.
-@subheading right-padding
+@node The right-padding property
+@unnumberedsubsubsec The @code{right-padding} property
@cindex right-padding property
@cindex right-padding property
-@subheading staff-padding property
+@node The staff-padding property
+@unnumberedsubsubsec The @code{staff-padding} property
@cindex aligning objects on a baseline
@cindex objects, aligning on a baseline
@cindex aligning objects on a baseline
@cindex objects, aligning on a baseline
-@subheading self-alignment-X property
+@node The self-alignment-X property
+@unnumberedsubsubsec The @code{self-alignment-X} property
The following example shows how this can resolve the collision
of a string fingering object with a note's stem by aligning the
The following example shows how this can resolve the collision
of a string fingering object with a note's stem by aligning the
-@subheading staff-position property
+@node The staff-position property
+@unnumberedsubsubsec The @code{staff-position} property
@cindex object collision within a staff
@cindex object collision within a staff
This is better than using, for example, @code{extra-offset},
because the ledger line above the rest is inserted automatically.
This is better than using, for example, @code{extra-offset},
because the ledger line above the rest is inserted automatically.
-@subheading extra-offset property
+@node The extra-offset property
+@unnumberedsubsubsec The @code{extra-offset} property
@cindex positioning objects
@cindex positioning grobs
@cindex positioning objects
@cindex positioning grobs
-@subheading positions property
+@node The positions property
+@unnumberedsubsubsec The @code{positions} property
@cindex controlling tuplets, slurs, phrasing slurs, and beams manually
@cindex manually controlling tuplets, slurs, phrasing slurs, and beams
@cindex controlling tuplets, slurs, phrasing slurs, and beams manually
@cindex manually controlling tuplets, slurs, phrasing slurs, and beams
the second measure of eighth notes, but not to any of the beams in the
second voice.
the second measure of eighth notes, but not to any of the beams in the
second voice.
-@subheading force-hshift property
+@node The force-hshift property
+@unnumberedsubsubsec The @code{force-hshift property}
We can now see how to apply the final corrections to the Chopin
example introduced at the end of @ref{I'm hearing Voices}, which
We can now see how to apply the final corrections to the Chopin
example introduced at the end of @ref{I'm hearing Voices}, which
@node Other uses for tweaks
@subsection Other uses for tweaks
@node Other uses for tweaks
@subsection Other uses for tweaks
+@menu
+* Tying notes across voices::
+* Simulating a fermata in MIDI::
+@end menu
+
@cindex transparent property, use of
@cindex objects, making invisible
@cindex removing objects
@cindex transparent property, use of
@cindex objects, making invisible
@cindex removing objects
@cindex objects, hiding
@cindex invisible objects
@cindex objects, invisible
@cindex objects, hiding
@cindex invisible objects
@cindex objects, invisible
-@cindex tying notes across voices
-@subheading Tying notes across voices
+@node Tying notes across voices
+@unnumberedsubsubsec Tying notes across voices
+
+@cindex tying notes across voices
The following example demonstrates how to connect notes in
different voices using ties. Normally, only two notes in the
The following example demonstrates how to connect notes in
different voices using ties. Normally, only two notes in the
@code{\single} will only affect a single one, the one generated by
the immediately following music expression.
@code{\single} will only affect a single one, the one generated by
the immediately following music expression.
-@subheading Simulating a fermata in MIDI
+@node Simulating a fermata in MIDI
+@unnumberedsubsubsec Simulating a fermata in MIDI
@cindex stencil property, use of
@cindex fermata, implementing in MIDI
@cindex stencil property, use of
@cindex fermata, implementing in MIDI
compiled it from source, and (b) on which operating system it is
being used:
compiled it from source, and (b) on which operating system it is
being used:
-@strong{Downloaded from lilypond.org}
+@subsubsubheading Downloaded from lilypond.org
@itemize @bullet
@item GNU/Linux
@itemize @bullet
@item GNU/Linux
-@strong{Installed from a package manager or compiled from source}
+@subsubsubheading Installed from a package manager or compiled from source
Navigate to
@file{@var{PREFIX}/share/lilypond/@var{X.Y.Z}/}, where
Navigate to
@file{@var{PREFIX}/share/lilypond/@var{X.Y.Z}/}, where
This interface provides two properties that apply to several spanners.
This interface provides two properties that apply to several spanners.
-@strong{@i{The @code{minimum-length} property}}
+@subsubsubheading The @code{minimum-length} property
The minimum length of the spanner is specified by the
@code{minimum-length} property. Increasing this usually has the
The minimum length of the spanner is specified by the
@code{minimum-length} property. Increasing this usually has the
-@strong{@i{The @code{to-barline} property}}
+@subsubsubheading The @code{to-barline} property
The second useful property of the @code{spanner-interface} is
@code{to-barline}. By default this is true, causing hairpins and
The second useful property of the @code{spanner-interface} is
@code{to-barline}. By default this is true, causing hairpins and
@node Special considerations
@unnumberedsubsubsec Special considerations
@node Special considerations
@unnumberedsubsubsec Special considerations
-@strong{@emph{Visibility following explicit changes}}
+@subsubsubheading Visibility following explicit changes
@cindex key signature, visibility following explicit change
@cindex explicitKeySignatureVisibility
@cindex key signature, visibility following explicit change
@cindex explicitKeySignatureVisibility
-@strong{@emph{Visibility of cautionary accidentals}}
+@subsubsubheading Visibility of cautionary accidentals
To remove the cautionary accidentals printed at an explicit key
change, set the Staff context property @code{printKeyCancellation}
To remove the cautionary accidentals printed at an explicit key
change, set the Staff context property @code{printKeyCancellation}
@c TODO Add visibility of cautionary accidentals before notes
@c TODO Add visibility of cautionary accidentals before notes
-@strong{@emph{Automatic bars}}
+@subsubsubheading Automatic bars
@cindex automaticBars
@cindex bar lines, suppressing
@cindex automaticBars
@cindex bar lines, suppressing
-@strong{@emph{Octavated clefs}}
+@subsubsubheading Octavated clefs
@cindex octavated clefs, visibility of
@cindex visibility of octavated clefs
@cindex octavated clefs, visibility of
@cindex visibility of octavated clefs