@menu
+* Invoking lilypond:: Titling LilyPond scores.
* Invoking the lilypond binary::
* Error messages::
* Reporting bugs::
* Point and click::
-* Invoking ly2dvi:: Titling LilyPond scores.
@end menu
+@node Invoking lilypond
+@section Invoking lilypond
+
+Nicely titled output is created through a separate program:
+@file{@code{lilypond}} is a script that uses the LilyPond formatting
+engine (which is in a separate program) and La@TeX{} to create a
+nicely titled piece of sheet music, in PDF (Portable Document Format)
+format.
+
+@example
+ @code{lilypond} [@var{option}]@dots{} @var{file}@dots{}
+@end example
+
+To have @code{lilypond} read from stdin, use a dash @code{-} for @var{file}.
+
+The @code{lilypond} program supports the following options:
+
+@table @code
+@item -k,--keep
+ Keep the temporary directory with all output
+files. The temporary directory is created in the current directory as @code{@code{lilypond}.dir}.
+@item -d,--dependencies
+ Write @code{Makefile} dependencies for every input file.
+@item -h,--help
+ Print usage help.
+@item -I,--include=@var{dir}
+ Add @var{dir} to LilyPond's include path.
+@item -m,--no-paper
+ Produce MIDI output only.
+@item --no-lily
+ Do not run @file{lilypond-bin}. Useful for debugging @code{lilypond}.
+@item -o,--output=@var{file}
+ Generate output to @var{file}. The extension of @var{file} is ignored.
+@item --no-pdf
+ Do not generate (PDF) or PS.
+
+@cindex PDF
+@cindex Scalable fonts
+
+@c why is this comment here? --hwn
+
+ If you use lilypond-book or your own wrapper files, do not use
+@code{\usepackage[[T1]@{fontenc@}} in the file header but do not forget
+@code{\usepackage[latin1]@{inputenc@}} if you use any other
+non-anglosaxian characters.
+
+@item --png
+ Also generate pictures of each page, in PNG format.
+@item --psgz
+ Gzip the postscript file.
+@item --html
+ Make a .HTML file with links to all output files.
+@item --preview
+ Also generate a picture of the first system of the score.
+
+@cindex preview
+@cindex picture
+@cindex bitmap
+@cindex pixmap
+@cindex thumbnail
+@cindex screenshot
+
+@item -s,--set=@var{key}=@var{val}
+ Add @var{key}= @var{val} to the settings, overriding those specified
+in the files. Possible keys: @code{language}, @code{latexheaders},
+@code{latexpackages}, @code{latexoptions}, @code{papersize},
+@code{pagenumber}, @code{linewidth}, @code{orientation},
+@code{textheight}.
+@item -v,--version
+Show version information.
+@item -V,--verbose
+Be verbose.
+@item --debug
+Print even more information. This is useful when generating bugreports.
+@item -w,--warranty
+Show the warranty with which GNU LilyPond comes. (It comes with
+@strong{NO WARRANTY}!)
+@end table
+
+@subsection Titling layout
+
+@code{lilypond} extracts the following header fields from the LY files
+to generate titling; an example demonstrating all these fields is in
+@inputfileref{input/test,ly2dvi-testpage.ly}:
+
+@table @code
+@item title
+ The title of the music. Centered on top of the first page.
+@item subtitle
+ Subtitle, centered below the title.
+@item poet
+ Name of the poet, left flushed below the subtitle.
+@item composer
+ Name of the composer, right flushed below the subtitle.
+@item meter
+ Meter string, left flushed below the poet.
+@item opus
+ Name of the opus, right flushed below the composer.
+@item arranger
+ Name of the arranger, right flushed below the opus.
+@item instrument
+ Name of the instrument, centered below the arranger.
+@item dedication
+ To whom the piece is dedicated.
+@item piece
+ Name of the piece, left flushed below the instrument.
+@item head
+ A text to print in the header of all pages. It is not called
+@code{header}, because @code{\header} is a reserved word in LilyPond.
+@item copyright
+ A text to print in the footer of the first page. Default is to
+ print the standard footer also on the first page.
+@item footer
+ A text to print in the footer of all but the last page.
+@item tagline
+ Line to print at the bottom of last page. The default text is ``Lily
+was here, @var{version-number}''.
+@end table
+
+
+@cindex header
+@cindex footer
+@cindex page layout
+@cindex titles
+
+
+
+@subsection Additional parameters
+
+The @code{lilypond} program responds to several parameters specified
+in a @code{\paper} section of the input file. They can be overridden
+by supplying a @code{--set} command line option.
+
+@table @code
+@item language
+ Specify La@TeX{} language: the @code{babel} package will be
+included. Default: unset.
+
+ Read from the @code{\header} block.
+
+@item latexheaders
+ Specify additional La@TeX{} headers file.
+
+ Normally read from the @code{\header} block. Default value: empty.
+
+@item latexpackages
+ Specify additional La@TeX{} packages file. This works cumulative,
+so you can add multiple packages using multiple @code{-s=latexpackages} options.
+ Normally read from the @code{\header} block. Default value:
+@code{geometry}.
+
+@item latexoptions
+ Specify additional options for the La@TeX{}
+@code{\documentclass}. You can put any valid value here. This was
+designed to allow @code{lilypond} to produce output for double-sided
+paper, with balanced margins and pagenumbers on alternating sides. To
+achieve this specify @code{twoside}.
+
+@item orientation
+ Set orientation. Choices are @code{portrait} or @code{landscape}. Is
+read from the @code{\paper} block, if set.
+
+@item textheight
+ The vertical extension of the music on the page. It is normally
+ calculated automatically, based on the paper size.
+
+@item linewidth
+ The music line width. It is normally read from the @code{\paper}
+block.
+
+@item papersize
+ The paper size (as a name, e.g. @code{a4}). It is normally read from
+the @code{\paper} block.
+
+@item pagenumber
+ If set to @code{no}, no page numbers will be printed. If set to a
+positive integer, start with this value as the first page number.
+
+
+ @item fontenc
+ The font encoding, should be set identical to the @code{font-encoding}
+ property in the score.
+@end table
+
+
+
@node Invoking the lilypond binary
@section Invoking the lilypond binary
@cindex Invoking LilyPond
The LilyPond system consists of two parts: a binary executable, which
is responsible for the formatting functionality, and support scripts,
which post-process the resulting output. Normally, the support scripts
-are called, which in turn invoke the @code{lilypond-bin} binary. However,
-@code{lilypond-bin} may be called directly as follows.
+are called, which in turn invoke the @code{lilypond-bin}
+binary. However, @code{lilypond-bin} may be called directly as
+follows.
@example
lilypond-bin [@var{option}]@dots{} @var{file}@dots{}
starting with @file{filename-1.tex}. Several files can be specified;
they will each be processed independently. @footnote{The status of
GUILE is not reset across invocations, so be careful not to change any
- default settings from within Scheme.}
+ system defaults from within Scheme.}
@section Command line options
@c
@c
Output format for sheet music. Choices are @code{tex} (for @TeX{}
-output, to be processed with plain @TeX{}, or through ly2dvi),
+output, to be processed with plain @TeX{}, or through @code{lilypond}),
@code{pdftex} for PDF@TeX{} input, @code{ps} (for PostScript),
@code{scm} (for a Scheme dump), @code{sk} (for Sketch) and @code{as}
(for ASCII-art).
-@node Invoking ly2dvi
-@section Invoking ly2dvi
-
-Nicely titled output is created through a separate program:
-@file{ly2dvi} is a script that uses LilyPond and La@TeX{} to create a
-nicely titled piece of sheet music, in DVI format or PostScript:
-
-@example
- ly2dvi [@var{option}]@dots{} @var{file}@dots{}
-@end example
-
-To have ly2dvi read from stdin, use a dash @code{-} for @var{file}.
-
-Ly2dvi supports the following options:
-
-@table @code
-@item -k,--keep
- Keep the temporary directory including LilyPond and ly2dvi output
-files. The temporary directory is created in the current directory as @code{ly2dvi.dir}.
-@item -d,--dependencies
- Write @code{Makefile} dependencies for every input file.
-@item -h,--help
- Print usage help.
-@item -I,--include=@var{dir}
- Add @var{dir} to LilyPond's include path.
-@item -m,--no-paper
- Produce MIDI output only.
-@item --no-lily
- Do not run LilyPond; useful for debugging ly2dvi.
-@item -o,--output=@var{file}
- Generate output to @var{file}. The extension of @var{file} is ignored.
-@item -P,--postscript
- Also generate PostScript output, using dvips. The postscript uses
-the standard @TeX{} bitmap fonts for your printer.
-@item -p,--pdf
- Also generate Portable Document Format (PDF). This option will
-generate a PS file using scalable fonts, and will run the PS file
-through @code{ps2pdf} producing a PDF file.
-
-@cindex PDF
-@cindex Scalable fonts
-
- If you use lilypond-book or your own wrapper files, do not use
-@code{\usepackage[[T1]@{fontenc@}} in the file header but do not forget
-@code{\usepackage[latin1]@{inputenc@}} if you use any other
-non-anglosaxian characters.
-
-@item --png
- Also generate pictures of each page, in PNG format.
-@item --psgz
- Gzip the postscript file.
-@item --html
- Make a .HTML file with links to all output files.
-@item --preview
- Also generate a picture of the first system of the score.
-
-@cindex preview
-@cindex picture
-@cindex bitmap
-@cindex pixmap
-@cindex thumbnail
-@cindex screenshot
-
-@item -s,--set=@var{key}=@var{val}
- Add @var{key}= @var{val} to the settings, overriding those specified
-in the files. Possible keys: @code{language}, @code{latexheaders},
-@code{latexpackages}, @code{latexoptions}, @code{papersize},
-@code{pagenumber}, @code{linewidth}, @code{orientation},
-@code{textheight}.
-@item -v,--version
-Show version information.
-@item -V,--verbose
-Be verbose.
-@item --debug
-Print even more information. This is useful when generating bugreports.
-@item -w,--warranty
-Show the warranty with which GNU LilyPond comes. (It comes with
-@strong{NO WARRANTY}!)
-@end table
-
-@subsection Titling layout
-
-Ly2dvi extracts the following header fields from the LY files to
-generate titling; an example demonstrating all these fields is in
-@inputfileref{input/test,ly2dvi-testpage.ly}:
-
-@table @code
-@item title
- The title of the music. Centered on top of the first page.
-@item subtitle
- Subtitle, centered below the title.
-@item poet
- Name of the poet, left flushed below the subtitle.
-@item composer
- Name of the composer, right flushed below the subtitle.
-@item meter
- Meter string, left flushed below the poet.
-@item opus
- Name of the opus, right flushed below the composer.
-@item arranger
- Name of the arranger, right flushed below the opus.
-@item instrument
- Name of the instrument, centered below the arranger.
-@item dedication
- To whom the piece is dedicated.
-@item piece
- Name of the piece, left flushed below the instrument.
-@item head
- A text to print in the header of all pages. It is not called
-@code{header}, because @code{\header} is a reserved word in LilyPond.
-@item copyright
- A text to print in the footer of the first page. Default is to
- print the standard footer also on the first page.
-@item footer
- A text to print in the footer of all but the last page.
-@item tagline
- Line to print at the bottom of last page. The default text is ``Lily
-was here, @var{version-number}''.
-@end table
-
-
-@cindex header
-@cindex footer
-@cindex page layout
-@cindex titles
-
-
-
-@subsection Additional parameters
-
-Ly2dvi responds to several parameters specified in a @code{\paper}
-section of the input file. They can be overridden by supplying a
-@code{--set} command line option.
-
-@table @code
-@item language
- Specify La@TeX{} language: the @code{babel} package will be
-included. Default: unset.
-
- Read from the @code{\header} block.
-
-@item latexheaders
- Specify additional La@TeX{} headers file.
-
- Normally read from the @code{\header} block. Default value: empty.
-
-@item latexpackages
- Specify additional La@TeX{} packages file. This works cumulative,
-so you can add multiple packages using multiple @code{-s=latexpackages} options.
- Normally read from the @code{\header} block. Default value:
-@code{geometry}.
-
-@item latexoptions
- Specify additional options for the La@TeX{}
-@code{\documentclass}. You can put any valid value here. This was
-designed to allow ly2dvi to produce output for double-sided paper,
-with balanced margins and pagenumbers on alternating sides. To achieve
-this specify @code{twoside}.
-
-@item orientation
- Set orientation. Choices are @code{portrait} or @code{landscape}. Is
-read from the @code{\paper} block, if set.
-
-@item textheight
- The vertical extension of the music on the page. It is normally
- calculated automatically, based on the paper size.
-
-@item linewidth
- The music line width. It is normally read from the @code{\paper}
-block.
-
-@item papersize
- The paper size (as a name, e.g. @code{a4}). It is normally read from
-the @code{\paper} block.
-
-@item pagenumber
- If set to @code{no}, no page numbers will be printed. If set to a
-positive integer, start with this value as the first page number.
-
-
- @item fontenc
- The font encoding, should be set identical to the @code{font-encoding}
- property in the score.
-@end table
-
-