Titles explained
Each \book
block in a single input file produces a separate
output file, see File structure. Within each output file
three types of titling areas are provided: book titles at the
beginning of each book, bookpart titles at the beginning of
each bookpart, and score titles at the beginning of each score.
Values of titling fields such as title
and composer
are set in \header
blocks. (For the syntax of \header
blocks and a complete list of the fields available by default,
see Default layout of bookpart and score titles). Book titles,
bookpart titles, and score titles can all contain the same fields,
although by default the fields in score titles are limited to
piece
and opus
.
\header
blocks may be placed in four different places to form
a descending hierarchy.
- At the top of the input file, before all
\book
,\bookpart
, and\score
blocks. - Within a
\book
block but outside all the\bookpart
and\score
blocks within that book. - Within a
\bookpart
block but outside all\score
blocks within that bookpart. - Within a
\score
block.
The values of the fields filter down this hierarchy, with the values set higher in the hierarchy persisting unless they are overridden by a value set lower in the hierarchy.
- A book title is derived from fields set at the top of the input file,
modified by fields set in the
\book
block. The resulting fields are used to print the book title for that book, providing that there is other material that generates a page at the start of the book, before the first bookpart. A single\pageBreak
suffices. - A bookpart title is derived from fields set at the top of the input
file, modified by fields set in the
\book
block, and further modified by fields set in the\bookpart
block. The resulting values are used to print the bookpart title for that bookpart. - A score title is derived from fields set at the top of the input
file, modified by fields set in the
\book
block, further modified by fields set in the\bookpart
block and finally modified by fields set in the\score
block. The resulting values are used to print the score title for that score. Note, though, that onlypiece
andopus
fields are printed by default in score titles unless the\paper
variableprint-all-headers
is set to#t
.
It is not necessary to provide \header
blocks in all four
places: any or even all of them may be omitted. Similarly, simple
input files may omit the \book
and \bookpart
blocks,
leaving them to be created implicitly.
If the book has only a single score, the \header
block should
normally be placed at the top of the file so that just a bookpart
title is produced, making all the titling fields available for use.
If the book has multiple scores a number of different arrangements
of \header
blocks are possible, corresponding to the various
types of musical publications. For example, if the publication
contains several pieces by the same composer, a \header
block
placed at the top of the file specifying the book title and the
composer with \header
blocks in each \score
block
specifying the piece
and/or opus
would be most
suitable, as here:
\header { title = "SUITE I." composer = "J. S. Bach." } \score { \header { piece = "Prélude." } \new Staff \relative { \clef bass \key g \major \repeat unfold 2 { g,16( d' b') a b d, b' d, } | \repeat unfold 2 { g,16( e' c') b c e, c' e, } | } } \score { \header { piece = "Allemande." } \new Staff \relative { \clef bass \key g \major \partial 16 b16 | <g, d' b'~>4 b'16 a( g fis) g( d e fis) g( a b c) | d16( b g fis) g( e d c) b(c d e) fis( g a b) | } }
More complicated arrangements are possible. For example, text
fields from the \header
block in a book can be displayed in
all score titles, with some fields overridden and some manually
suppressed:
\book { \paper { print-all-headers = ##t } \header { title = "DAS WOHLTEMPERIRTE CLAVIER" subtitle = "TEIL I" % Do not display the default LilyPond footer for this book tagline = ##f } \markup { \vspace #1 } \score { \header { title = "PRAELUDIUM I" opus = "BWV 846" % Do not display the subtitle for this score subtitle = ##f } \new PianoStaff << \new Staff { s1 } \new Staff { \clef "bass" s1 } >> } \score { \header { title = "FUGA I" subsubtitle = "A 4 VOCI" opus = "BWV 846" % Do not display the subtitle for this score subtitle = ##f } \new PianoStaff << \new Staff { s1 } \new Staff { \clef "bass" s1 } >> } }
See also
Notation Reference: File structure, Default layout of bookpart and score titles, Custom layout for titles.