file as a single \book block, see
@ref{File structure}.
-When producing multiple files from a single source file, Lilypond
+When producing multiple files from a single source file, LilyPond
ensures that none of the output files from any @code{\book} block
overwrites the output file produced by a preceding @code{\book} from
the same input file.
@funindex \bookOutputSuffix
@funindex \bookOutputName
-Lilypond provides facilities to allow you to control what file names
+LilyPond provides facilities to allow you to control what file names
are used by the various back-ends when producing output files.
-In the previous section, we saw how Lilypond prevents name-clashes when
+In the previous section, we saw how LilyPond prevents name-clashes when
producing several outputs from a single source file. You also have the
ability to specify your own suffixes for each @code{\book} block, so
for example you can produce files called
A @code{\score} block. This score will be collected with other
toplevel scores, and combined as a single @code{\book}.
This behavior can be changed by setting the variable
-@code{toplevel-score-handler} at toplevel. The default handler is
-defined in the init file @file{../scm/lily.scm}.
+@code{toplevel-score-handler} at toplevel. (The default handler is
+defined in the file @file{../scm/lily-library.scm} and set in the file
+@file{../ly/declarations-init.ly}.)
@item
A @code{\book} block logically combines multiple movements
@menu
* Creating titles headers and footers::
* Custom titles headers and footers::
-* Creating PDF metadata::
+* Creating output file metadata::
* Creating footnotes::
* Reference to page numbers::
* Table of contents::
@item create-page-number-stencil @tab print-page-numbers true?
@item print-all-headers @tab print-all-headers true?
@item first-page @tab first page in the book?
+@item not-first-page @tab not first page in the book?
@item (on-page nmbr) @tab page number = nmbr?
@item last-page @tab last page in the book?
-@item not-first-page @tab not first page in the book?
@item part-first-page @tab first page in the book part?
+@item not-part-first-page @tab not first page in the book part?
@item part-last-page @tab last page in the book part?
@item not-single-page @tab pages in book part > 1?
Installed Files:
@file{../ly/titling-init.ly}.
-@node Creating PDF metadata
-@subsection Creating PDF metadata
+@node Creating output file metadata
+@subsection Creating output file metadata
@cindex PDF metadata
+@cindex MIDI metadata
In addition to being shown in the printed output, @code{\header} variables
-are also used to set PDF metadata (the information displayed by PDF readers
-as the @code{properties} of the PDF file). As metadata are applied per
-output file, only @code{\header} blocks located at top level or within an
-explicit @code{\book} block will be used to generate PDF metadata; while
-@code{\header} variables in a @code{\bookpart} or @code{\score} block
-will be reflected in the printed output of the respective blocks, the
-document-wide PDF metadata will not be affected by headers at that level.
+are also used to set metadata for output files. For example, with PDF
+files, this metadata could be displayed by PDF readers as the
+@code{properties} of the PDF file. For each type of output file, only the
+@code{\header} definitions of blocks that define separate files of that
+type, and blocks higher in the block hierarchy, will be consulted.
+Therefore, for PDF files, only the @code{\book} level and the top level
+@code{\header} definitions affect the document-wide PDF metadata, whereas
+for MIDI files, all headers above or at the @code{\score} level are used.
For example, setting the @code{title} property of the @code{header} block
-@q{Symphony I} will also give this title to the PDF document.
+to @q{Symphony I} will also give this title to the PDF document, and use
+it as the sequence name of the MIDI file.
@example
\header@{
setting the header variable @code{moddate} (or @code{pdfmoddate}) to a
valid PDF date string.
+The @code{title} variable sets also the sequence name for MIDI. The
+@code{midititle} variable can be used to set the sequence name
+independently of the value used for typeset output.
+
@node Creating footnotes
@subsection Creating footnotes
@seealso
Notation Reference:
-@ref{File structure}.
+@ref{File structure},
+@ref{Creating output file metadata}.
Installed Files:
@file{scm/midi.scm}.
@end example
@funindex \void
-Note that Lilypond does not just display the music expression, but
+Note that LilyPond does not just display the music expression, but
also interprets it (since @code{\displayLilyMusic} returns it in
addition to displaying it). Just insert @code{\displayLilyMusic} into
the existing music in order to get information about it.