lilypond-usage: Invoking lilypond-book
3.4 Invoking ‘lilypond-book’
============================
‘lilypond-book’ produces a file with one of the following extensions:
‘.tex’, ‘.texi’, ‘.html’ or ‘.xml’, depending on the output format. All
of ‘.tex’, ‘.texi’ and ‘.xml’ files need further processing.
Format-specific instructions
----------------------------
LaTeX
.....
There are two ways of processing your LaTeX document for printing or
publishing: getting a PDF file directly with PDFLaTeX, or getting a
PostScript file with LaTeX via a DVI to PostScript translator like
‘dvips’. The first way is simpler and recommended(1), and whichever way
you use, you can easily convert between PostScript and PDF with tools,
like ‘ps2pdf’ and ‘pdf2ps’ included in Ghostscript package.
To produce a PDF file through PDFLaTeX, use
lilypond-book --pdf yourfile.lytex
pdflatex yourfile.tex
To produce PDF output via LaTeX/‘dvips’/‘ps2pdf’, you should do
lilypond-book yourfile.lytex
latex yourfile.tex
dvips -Ppdf yourfile.dvi
ps2pdf yourfile.ps
The ‘.dvi’ file created by this process will not contain note heads.
This is normal; if you follow the instructions, they will be included in
the ‘.ps’ and ‘.pdf’ files.
Running ‘dvips’ may produce some warnings about fonts; these are
harmless and may be ignored. If you are running ‘latex’ in twocolumn
mode, remember to add ‘-t landscape’ to the ‘dvips’ options.
Known issues and warnings
.........................
The ‘\pageBreak’ command will not work within a ‘\begin{lilypond} ...
\end{lilypond}’ environment.
Many ‘\paper’ block variables will also not work within a
‘\begin{lilypond} ... \end{lilypond}’ environment. Use ‘\newcommand’
with ‘\betweenLilyPondSystem’ in the preamble;
\newcommand{\betweenLilyPondSystem}[1]{\vspace{36mm}\linebreak}
Texinfo
.......
To produce a Texinfo document (in any output format), follow the normal
procedures for Texinfo; this is, either call ‘texi2pdf’ or ‘texi2dvi’ or
DONTPRINTYET ‘makeinfo’, depending on the output format you want to create.
(texinfo)Format with texi2dvi, and *note(texinfo)Creating an Info
DONTPRINTYET ‘makeinfo’, depending on the output format you want to create.
(texinfo)Format with texi2dvi, and (texinfo)Creating an Info
File.
Command line options
--------------------
‘lilypond-book’ accepts the following command line options:
‘-f FORMAT’
‘--format=FORMAT’
Specify the document type to process: ‘html’, ‘latex’, ‘texi’ (the
default) or ‘docbook’. If this option is missing, ‘lilypond-book’
tries to detect the format automatically, see Filename
extensions. Currently, ‘texi’ is the same as ‘texi-html’.
‘-F FILTER’
‘--filter=FILTER’
Pipe snippets through FILTER. ‘lilypond-book’ will not –filter and
–process at the same time. For example,
lilypond-book --filter='convert-ly --from=2.0.0 -' my-book.tely
‘-h’
‘--help’
Print a short help message.
‘-I DIR’
‘--include=DIR’
Add DIR to the include path. ‘lilypond-book’ also looks for
already compiled snippets in the include path, and does not write
them back to the output directory, so in some cases it is necessary
to invoke further processing commands such as ‘makeinfo’ or ‘latex’
with the same ‘-I DIR’ options.
‘-l LOGLEVEL’
‘--loglevel=LOGLEVEL’
Set the output verbosity to LOGLEVEL. Possible values are ‘NONE’,
‘ERROR’, ‘WARNING’, ‘PROGRESS’ (default) and ‘DEBUG’. If this
option is not used, and the environment variable
‘LILYPOND_BOOK_LOGLEVEL’ is set, its value is used as the loglevel.
‘-o DIR’
‘--output=DIR’
Place generated files in directory DIR. Running ‘lilypond-book’
generates lots of small files that LilyPond will process. To avoid
all that garbage in the source directory, use the ‘--output’
command line option, and change to that directory before running
‘latex’ or ‘makeinfo’.
lilypond-book --output=out yourfile.lytex
cd out
...
‘--skip-lily-check’
Do not fail if no lilypond output is found. It is used for
LilyPond Info documentation without images.
‘--skip-png-check’
Do not fail if no PNG images are found for EPS files. It is used
for LilyPond Info documentation without images.
‘--lily-output-dir=DIR’
Write lily-XXX files to directory DIR, link into ‘--output’
directory. Use this option to save building time for documents in
different directories which share a lot of identical snippets.
‘--lily-loglevel=LOGLEVEL’
Set the output verbosity of the invoked ‘lilypond’ calls to
LOGLEVEL. Possible values are ‘NONE’, ‘ERROR’, ‘WARNING’,
‘BASIC_PROGRESS’, ‘PROGRESS’, ‘INFO’ (default) and ‘DEBUG’. If
this option is not used, and the environment variable
‘LILYPOND_LOGLEVEL’ is set, its value is used as the loglevel.
‘--info-images-dir=DIR’
Format Texinfo output so that Info will look for images of music in
DIR.
‘--latex-program=PROG’
Run executable ‘prog’ instead of ‘latex’. This is useful if your
document is processed with ‘xelatex’, for example.
‘--left-padding=AMOUNT’
Pad EPS boxes by this much. AMOUNT is measured in millimeters, and
is 3.0 by default. This option should be used if the lines of
music stick out of the right margin.
The width of a tightly clipped system can vary, due to notation
elements that stick into the left margin, such as bar numbers and
instrument names. This option will shorten each line and move each
line to the right by the same amount.
‘-P COMMAND’
‘--process=COMMAND’
Process LilyPond snippets using COMMAND. The default command is
‘lilypond’. ‘lilypond-book’ will not ‘--filter’ and ‘--process’ at
the same time.
‘--pdf’
Create PDF files for use with PDFLaTeX.
‘--redirect-lilypond-output’
By default, output is displayed on the terminal. This option
redirects all output to log files in the same directory as the
source files.
‘--use-source-file-names’
Write snippet output files with the same base name as their source
file. This option works only for snippets included with
‘lilypondfile’ and only if directories implied by ‘--output-dir’
and ‘--lily-output-dir’ options are different.
‘-V’
‘--verbose’
Be verbose. This is equivalent to ‘--loglevel=DEBUG’.
‘-v’
‘--version’
Print version information.
Known issues and warnings
.........................
The Texinfo command ‘@pagesizes’ is not interpreted. Similarly, LaTeX
commands that change margins and line widths after the preamble are
ignored.
Only the first ‘\score’ of a LilyPond block is processed.
---------- Footnotes ----------
(1) Note that PDFLaTeX and LaTeX may not be both usable to compile
any LaTeX document, that is why we explain the two ways.