Guide, node Updating translation committishes..
@end ignore
-@c \version "2.17.11"
+@c \version "2.17.30"
@ignore
GDP TODO list
block.
@menu
-* The \paper block::
+* The paper block::
* Paper size and automatic scaling::
-* Fixed vertical spacing \paper variables::
-* Flexible vertical spacing \paper variables::
-* Horizontal spacing \paper variables::
-* Other \paper variables::
+* Fixed vertical spacing paper variables::
+* Flexible vertical spacing paper variables::
+* Horizontal spacing paper variables::
+* Other paper variables::
@end menu
-@node The \paper block
-@subsection The @code{\paper} block
+@node The paper block
+@subsection The @code{@bs{}paper} block
@code{\paper} blocks may be placed in three different places to form
a descending hierarchy of @code{\paper} blocks:
Most @code{\paper} variables will only work in a @code{\paper}
block. The few that will also work in a @code{\layout} block are
-listed in @ref{The \layout block}.
+listed in @ref{The layout block,,The @code{@bs{}layout} block}.
Except when specified otherwise, all @code{\paper} variables that
correspond to distances on the page are measured in millimeters,
Notation Reference:
@ref{Paper size and automatic scaling},
@ref{Custom titles headers and footers},
-@ref{The \layout block}.
+@ref{The layout block,,The @code{@bs{}layout} block}.
Installed Files:
@file{ly/paper-defaults-init.ly}.
@unnumberedsubsubsec Setting the paper size
@q{A4} is the default value when no explicit paper size is set. However,
-there are two functions that can be used to change it
-@code{set-default-paper-size},
+there are two functions that can be used to change it:
+
+@table @code
+@item set-default-paper-size
@example
#(set-default-paper-size "quarto")
@end example
-which must always be placed at the toplevel scope. and
-@code{set-paper-size},
+which must always be placed at the toplevel scope, and
+
+@item set-paper-size
@example
\paper @{
@end example
which must always be placed in a @code{\paper} block.
+@end table
If the @code{set-default-paper-size} function is used in the toplevel
-scope, it must come before the any @code{\paper} block.
+scope, it must come before any @code{\paper} block.
@code{set-default-paper-size} sets the paper size for all pages,
whereas @code{set-paper-size} only sets the paper size for the pages
that the @code{\paper} block applies to. For example, if the
The vertical dimensions affected by automatic scaling are
@code{top-margin} and @code{bottom-margin} (see
-@ref{Fixed vertical spacing \paper variables}). The horizontal
+@ref{Fixed vertical spacing paper variables,,Fixed vertical spacing @code{@bs{}paper} variables}).
+The horizontal
dimensions affected by automatic scaling are @code{left-margin},
@code{right-margin}, @code{inner-margin}, @code{outer-margin},
@code{binding-offset}, @code{indent}, and @code{short-indent} (see
-@ref{Horizontal spacing \paper variables}).
+@ref{Horizontal spacing paper variables,,Horizontal spacing @code{@bs{}paper} variables}).
The default values for these dimensions are set in
@file{ly/paper-defaults-init.ly}, using internal variables named
@seealso
Notation Reference:
-@ref{Fixed vertical spacing \paper variables},
-@ref{Horizontal spacing \paper variables}.
+@ref{Fixed vertical spacing paper variables,,Fixed vertical spacing @code{@bs{}paper} variables},
+@ref{Horizontal spacing paper variables,,Horizontal spacing @code{@bs{}paper} variables}.
Installed Files:
@file{ly/paper-defaults-init.ly},
@file{scm/paper.scm}.
-@node Fixed vertical spacing \paper variables
-@subsection Fixed vertical spacing @code{\paper} variables
+@node Fixed vertical spacing paper variables
+@subsection Fixed vertical spacing @code{@bs{}paper} variables
@warning{Some @code{@bs{}paper} dimensions are automatically
scaled to the paper size, which may lead to unexpected behavior.
@item ragged-bottom
@funindex ragged-bottom
-If set to true, systems will not spread vertically down the page.
-This does not affect the last page. This should be set to true
-for pieces that have only two or three systems per page, for
-example orchestral scores.
+If this is set to true,
+systems will be set at their natural spacing, neither compressed
+nor stretched vertically to fit the page.
@item ragged-last-bottom
@funindex ragged-last-bottom
-If set to false, systems will spread vertically down the last
-page. Pieces that amply fill two pages or more should have this
-set to false. It also affects the last page of book parts, i.e.
-parts of a book created with @code{\bookpart} blocks.
+If this is set to false, then the last page,
+and the last page in each section created with a @code{\bookpart} block,
+will be vertically justified in the same way as the earlier pages.
@end table
bottom margin settings.
-@node Flexible vertical spacing \paper variables
-@subsection Flexible vertical spacing @code{\paper} variables
+@node Flexible vertical spacing paper variables
+@subsection Flexible vertical spacing @code{@bs{}paper} variables
In most cases, it is preferable for the vertical distances between
certain items (such as margins, titles, systems, and separate
@menu
* Structure of flexible vertical spacing alists::
-* List of flexible vertical spacing \paper variables::
+* List of flexible vertical spacing paper variables::
@end menu
@end example
-@node List of flexible vertical spacing \paper variables
-@unnumberedsubsubsec List of flexible vertical spacing @code{\paper} variables
+@node List of flexible vertical spacing paper variables
+@unnumberedsubsubsec List of flexible vertical spacing @code{@bs{}paper} variables
The names of these variables follow the format
@code{@var{upper}-@var{lower}-spacing}, where @code{@var{upper}}
@rlsr{Spacing}.
-@node Horizontal spacing \paper variables
-@subsection Horizontal spacing @code{\paper} variables
+@node Horizontal spacing paper variables
+@subsection Horizontal spacing @code{@bs{}paper} variables
@warning{Some @code{@bs{}paper} dimensions are automatically
scaled to the paper size, which may lead to unexpected behavior.
See @ref{Automatic scaling to paper size}.}
@menu
-* \paper variables for widths and margins::
-* \paper variables for two-sided mode::
-* \paper variables for shifts and indents::
+* paper variables for widths and margins::
+* paper variables for two-sided mode::
+* paper variables for shifts and indents::
@end menu
-@node \paper variables for widths and margins
-@unnumberedsubsubsec @code{\paper} variables for widths and margins
+@node paper variables for widths and margins
+@unnumberedsubsubsec @code{@bs{}paper} variables for widths and margins
Default values (before scaling) that are not listed here are
defined in @file{ly/paper-defaults-init.ly}.
right margin settings.
-@node \paper variables for two-sided mode
-@unnumberedsubsubsec @code{\paper} variables for two-sided mode
+@node paper variables for two-sided mode
+@unnumberedsubsubsec @code{@bs{}paper} variables for two-sided mode
Default values (before scaling) are defined in
@file{ly/paper-defaults-init.ly}.
@file{ly/paper-defaults-init.ly}.
-@node \paper variables for shifts and indents
-@unnumberedsubsubsec @code{\paper} variables for shifts and indents
+@node paper variables for shifts and indents
+@unnumberedsubsubsec @code{@bs{}paper} variables for shifts and indents
Default values (before scaling) that are not listed here are
defined in @file{ly/paper-defaults-init.ly}.
@rlsr{Spacing}.
-@node Other \paper variables
-@subsection Other @code{\paper} variables
+@node Other paper variables
+@subsection Other @code{@bs{}paper} variables
@menu
-* \paper variables for line breaking::
-* \paper variables for page breaking::
-* \paper variables for page numbering::
-* Miscellaneous \paper variables::
+* paper variables for line breaking::
+* paper variables for page breaking::
+* paper variables for page numbering::
+* Miscellaneous paper variables::
@end menu
-@node \paper variables for line breaking
-@unnumberedsubsubsec @code{\paper} variables for line breaking
+@node paper variables for line breaking
+@unnumberedsubsubsec @code{@bs{}paper} variables for line breaking
@table @code
@ref{Line breaking}.
-@node \paper variables for page breaking
-@unnumberedsubsubsec @code{\paper} variables for page breaking
+@node paper variables for page breaking
+@unnumberedsubsubsec @code{@bs{}paper} variables for page breaking
Default values not listed here are defined in
@file{ly/paper-defaults-init.ly}
@file{ly/paper-defaults-init.ly}.
-@node \paper variables for page numbering
-@unnumberedsubsubsec @code{\paper} variables for page numbering
+@node paper variables for page numbering
+@unnumberedsubsubsec @code{@bs{}paper} variables for page numbering
Default values not listed here are defined in
@file{ly/paper-defaults-init.ly}
of the cover page so that page 1 is on the right hand side.
-@node Miscellaneous \paper variables
-@unnumberedsubsubsec Miscellaneous @code{\paper} variables
+@node Miscellaneous paper variables
+@unnumberedsubsubsec Miscellaneous @code{@bs{}paper} variables
@table @code
block.
@menu
-* The \layout block::
+* The layout block::
* Setting the staff size::
@end menu
-@node The \layout block
-@subsection The @code{\layout} block
+@node The layout block
+@subsection The @code{@bs{}layout} block
@funindex \layout
@item
@code{line-width}, @code{ragged-right} and @code{ragged-last}
-(see @ref{\paper variables for widths and margins})
+(see @ref{paper variables for widths and margins,,@code{@bs{}paper} variables for widths and margins})
@item
@code{indent} and @code{short-indent}
-(see @ref{\paper variables for shifts and indents})
+(see @ref{paper variables for shifts and indents,,@code{@bs{}paper} variables for shifts and indents})
@item
@code{system-count}
-(see @ref{\paper variables for line breaking})
+(see @ref{paper variables for line breaking,,@code{@bs{}paper} variables for line breaking})
@end itemize
@seealso
Notation Reference:
-@ref{\paper variables for line breaking}.
+@ref{paper variables for line breaking,,@code{@bs{}paper} variables for line breaking}.
Snippets:
@rlsr{Spacing}.
inserted at top-level, between scores and top-level markups.
There are also analogous settings to @code{ragged-right} and
-@code{ragged-last} which have the same effect on vertical spacing:
-@code{ragged-bottom} and @code{ragged-last-bottom}. If set to
-@code{#t} the systems on all pages or just the last page
-respectively will not be justified vertically. See
-@ref{Fixed vertical spacing \paper variables}.
+@code{ragged-last} which have the same effect on vertical spacing.
+If @code{ragged-bottom} is set to @code{#t} the systems will not
+be justified vertically. When @code{ragged-last-bottom} is set
+to @code{#t}, as it is by default, empty space is allowed at the
+bottom of the final page (or the final page in each
+@code{\bookpart}). See
+@ref{Fixed vertical spacing paper variables,,Fixed vertical spacing @code{@bs{}paper} variables}.
Page breaks are computed by the @code{page-breaking} function. LilyPond
provides three algorithms for computing page breaks,
@seealso
Notation Reference:
-@ref{\paper variables for page breaking}.
+@ref{paper variables for page breaking,,@code{@bs{}paper} variables for page breaking}.
Snippets:
@rlsr{Spacing}.
@seealso
Notation Reference:
-@ref{\paper variables for line breaking}.
+@ref{paper variables for line breaking,,@code{@bs{}paper} variables for line breaking}.
Snippets:
@rlsr{Spacing}.
individual systems. The vertical spacing between separate
systems, scores, markups, and margins is controlled by
@code{\paper} variables, which are discussed in
-@ref{Flexible vertical spacing \paper variables}.
+@ref{Flexible vertical spacing paper variables,,Flexible vertical spacing @code{@bs{}paper} variables}.
@menu
* Within-system spacing properties::
@item @code{ChordNames} @tab baseline
@item @code{NoteNames} @tab baseline
@item @code{Lyrics} @tab baseline
-@item @code{Dynamics} @tab vertical center
+@item @code{Dynamics} @tab mid-height of @q{m}
@item @code{FiguredBass} @tab highest point
@item @code{FretBoards} @tab top line
@end multitable
\lowerCaseChords }
\context { \FretBoards \alignToZero \staffAffinityDown }
\context { \Score
- \override BarLine.stencil = ##f
+ \omit BarLine
\override DynamicText.self-alignment-X = #-1
\override FretBoard.X-offset = #1.75
\override InstrumentName.minimum-Y-extent = #'(-2 . 2)
\override InstrumentName.extra-offset = #'(0 . -0.5)
\override TextScript.minimum-Y-extent = #'(-2 . 3)
- \override TimeSignature.stencil = ##f
+ \omit TimeSignature
}
}
\new Lyrics { \lyrics { \skip 1*2 | ghijk1 | } }
>>
-%% The reference point for Dynamics is its vertical center
+%% The reference point for Dynamics is the midline of 'm' in the font
<<
\new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"vertical center "
+ \set RhythmicStaff.instrumentName = #"mid-height "
\labelContext "Dynamics" s1*3
}
\new Dynamics { s1\mp s\fp }
Each of the vertical spacing grob properties (except
@code{staff-affinity}) uses the same alist structure as the
@code{\paper} spacing variables discussed in
-@ref{Flexible vertical spacing \paper variables}. Specific methods
+@ref{Flexible vertical spacing paper variables,,Flexible vertical spacing @code{@bs{}paper} variables}.
+Specific methods
for modifying alists are discussed in @ref{Modifying alists}.
Grob properties should be adjusted with an @code{\override} inside
a @code{\score} or @code{\layout} block, and not inside a
@seealso
Notation Reference:
-@ref{Flexible vertical spacing \paper variables},
+@ref{Flexible vertical spacing paper variables,,Flexible vertical spacing @code{@bs{}paper} variables},
@ref{Modifying alists}.
Installed Files:
@lilypond[quote,ragged-right,relative=2,verbatim]
\override Score.SpacingSpanner.strict-note-spacing = ##t
-\new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c] c32[ c] }
+\new Staff { c8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c] }
@end lilypond
@seealso
We start with the following one-measure example, which uses classical
spacing with ragged-right turned on.
+@c The initial pitch is not necessary as long as RhythmicStaff is
+@c not preceded by other material in the score, but we don't want
+@c to explain that.
@lilypond[quote,verbatim,ragged-right]
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
>>
}
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
>>
\layout {
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
>>
\layout {
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
>>
\layout {
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
>>
\layout {
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
\new RhythmicStaff {
- \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
+ \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
}
>>
}
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
\new RhythmicStaff {
- \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
+ \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
}
>>
\layout {
\score {
<<
\new RhythmicStaff {
- c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
+ c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
}
\new RhythmicStaff {
- \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
+ \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
}
>>
\layout {
@lilypond[quote,verbatim,ragged-right]
\new Staff {
\set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
- c''8 c'' c'' \clef alto d' d'2
+ c''8 8 8 \clef alto d'2 2
}
\new Staff {
\set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
\override Score.SpacingSpanner.strict-note-spacing = ##t
- c''8 c'' c'' \clef alto d' d'2
+ c''8 8 8 \clef alto d'2 2
}
@end lilypond