]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/lilypond-book.itely
Remove any broken lily-*.tex files before
[lilypond.git] / Documentation / user / lilypond-book.itely
index 39e45ce83a6179dfb109a562dfcbc1cd25afc5de..f553978e8aaf4264f0817b82c5efbd5e79dd49b6 100644 (file)
@@ -59,18 +59,18 @@ Short Introduction to LaTeX} provides a introction to using La@TeX{}.
 Music is specified like this:
 
 @example
-@@lilypond[options, go, here]
+@@lilypond[options,go,here]
   YOUR LILYPOND CODE
 @@end lilypond
-@@lilypond[options, go, here]@{ YOUR LILYPOND CODE @}
-@@lilypondfile[options, go, here]@{@var{filename}@}
+@@lilypond[options,go,here]@{ YOUR LILYPOND CODE @}
+@@lilypondfile[options,go,here]@{@var{filename}@}
 @end example
 
 When lilypond-book is run on it, this results in a texinfo file. We
 show two simple examples here.  First a complete block:
 
 @example
-@@lilypond[26pt]
+@@lilypond[staffsize=26]
   c' d' e' f' g'2 g'
 @@end lilypond
 @end example
@@ -85,31 +85,17 @@ produces
 Then the short version:
 
 @example
-@@lilypond[11pt]@{<c' e' g'>@}
+@@lilypond[staffsize=11]@{<c' e' g'>@}
 @end example
 
 @noindent
 produces
 
-@lilypond[11pt]{ <c' e' g'> }
-
-@command{lilypond-book} knows the default margins and a few paper
-sizes.  One of these commands should be in the beginning of the document:
-
-@itemize @bullet
-@item @code{@@afourpaper}
-@item @code{@@afourlatex}
-@item @code{@@afourwide}
-@item @code{@@smallbook}
-@end itemize
-
-@noindent
-@code{@@pagesizes} are not yet supported.
+@lilypond[staffsize=11]{ <c' e' g'> }
 
 When producing texinfo, lilypond-book also generates bitmaps of the
 music, so you can make a HTML document with embedded music.
 
-
 @c @TeX{} in node name seems to barf
 @node Integrating LaTeX and music
 @section Integrating LaTeX and music
@@ -118,13 +104,13 @@ music, so you can make a HTML document with embedded music.
 For La@TeX{}, music is entered using
 
 @example
-\begin[options, go, here]@{lilypond@}
+\begin[options,go,here]@{lilypond@}
   YOUR LILYPOND CODE
 \end@{lilypond@}
 @end example
 
 @example
-\lilypondfile[options, go,here]@{@var{filename}@}
+\lilypondfile[options,go,here]@{@var{filename}@}
 @end example
 
 @noindent
@@ -135,10 +121,13 @@ or
 @end example
 
 Running lilypond-book yields a file that can be processed with
-La@TeX{}. We show some examples here:
+La@TeX{}.
+
+
+We show some examples here:
 
 @example
-\begin[26pt]@{lilypond@}
+\begin[staffsize=26]@{lilypond@}
   c' d' e' f' g'2 g'2
 \end@{lilypond@}
 @end example
@@ -146,20 +135,20 @@ La@TeX{}. We show some examples here:
 @noindent
 produces
 
-@lilypond[26pt]
+@lilypond[staffsize=26]
   c' d' e' f' g'2 g'2
 @end lilypond
 
 Then the short version:
 
 @example
-\lilypond[11pt]@{<c' e' g'>@}
+\lilypond[staffsize=11]@{<c' e' g'>@}
 @end example
 
 @noindent
 produces
 
-@lilypond[11pt]{<c' e' g'>}
+@lilypond[staffsize=11]{<c' e' g'>}
 
 The linewidth of the music will be adjust by examining the commands in
 the document preamble, the part of the document before
@@ -168,9 +157,12 @@ La@TeX{} to find out how wide the text is. The line width variable for
 the music fragments are adjusted to the text width.
 
 After @code{\begin@{document@}}, the column changing commands
-@code{\onecolumn} , @code{\twocolumn} commands and the
-@code{multicols} environment from the multicol package are also
-interpreted.
+@code{\onecolumn}, @code{\twocolumn} commands
+@ignore 
+and the
+@code{multicols} environment from the multicol package
+@end ignore
+are also interpreted.
 
 The titling from the @code{\header} section of the fragments can be
 imported by adding the following to the top of the La@TeX{} file:
@@ -183,13 +175,40 @@ imported by adding the following to the top of the La@TeX{} file:
 The music will be surrounded by @code{\preLilyPondExample} and
 @code{\postLilyPondExample}, which are defined to be empty by default.
 
+@cindex titling and lilypond-book
+@cindex lilypond-book and titling
+@cindex @code{\header} in La@TeX{} documents
+
+To add titling from the @code{\header} section of the files, add the
+following to the top of the La@TeX{} file:
+@example
+\input titledefs.tex
+\def\preLilyPondExample@{\def\mustmakelilypondtitle@{@}@}
+@end example
+
+@cindex outline fonts
+@cindex type1 fonts
+@cindex dvips
+@cindex invoking dvips
+
+For printing the LaTeX document, you will need to use dvips. For
+producing PostScript with scalable fonts, add the following options to
+the dvips command line:
+@example
+ -Ppdf -u +lilypond.map
+@end example 
+
+@noindent
+PDF can then be produced with @code{ps2pdf}.
+
+
 @node Integrating HTML and music
 @section Integrating HTML and music
 
 Music is entered using
 
 @example
-<lilypond relative1 verbatim>
+<lilypond relative=1 verbatim>
   \key c \minor r8 c16 b c8 g as c16 b c8 d | g,4
 </lilypond>
 @end example
@@ -199,12 +218,12 @@ of which lilypond-book will produce a HTML with appropriate image tags for the
 music fragments:
  
 @example
-<lilypond relative1 verbatim>
+<lilypond relative=1 verbatim>
   \key c \minor r8 c16 b c8 g as c16 b c8 d | g,4
 </lilypond>
 @end example
 
-@lilypond[relative1]
+@lilypond[relative=1]
   \key c \minor r8 c16 b c8 g as c16 b c8 d | g,4
 @end lilypond
 
@@ -214,14 +233,14 @@ Some music in <lilypond a b c/> a line of text.
 @end example
 
 A special feature not (yet) available in other output formats, is the
-@code{<ly2dvifile>} tag, for example,
+@code{<lilypondfile>} tag, for example,
 @example
-  <ly2dvifile>trip.ly</ly2dvifile>
+  <lilypondfile>trip.ly</lilypondfile>
 @end example
-This runs @file{trip.ly} through @code{lilypond} (see also @ref{Invoking
-lilypond}), and substitutes a preview image in the output. The image
-links to a separate HTML file, so clicking it will take the viewer to
-a menu, with links to images, midi and printouts.
+This runs @file{trip.ly} through @code{lilypond} (see also
+@ref{Invoking lilypond}), and substitutes a preview image in the
+output. The image links to a separate HTML file, so clicking it will
+take the viewer to a menu, with links to images, midi and printouts.
 
 @cindex titling in THML
 @cindex preview image
@@ -235,69 +254,30 @@ following options:
 
 @table @code
 @item verbatim
-CONTENTS is copied into the source enclosed in a verbatim block,
-followed by any text given with the @code{intertext} option, then
+@var{contents} is copied into the source, enclosed in a verbatim block;
+followed by any text given with the @code{intertext} option; then
 the actual music is displayed.  This option does not work with
 the short version of the music blocks:
 
 @code{ @@lilypond@{ CONTENTS @} } and @code{ \lilypond@{ CONTENTS @} }
 
-@item smallverbatim
-works like @code{verbatim}, but in a smaller font.
-
-@item intertext="@var{text}"
-is used in conjunction with @code{verbatim} option: This puts
-@var{text} between the code and the music (without indentation).
+@item filename=@var{filename}
+name the file (for @code{printfilename} option). The argument should
+be unquoted. 
 
-@item filename="@var{filename}"
-saves the LilyPond code to @var{filename}.  By default, a hash value
-of the code is used.
-
-@item 11pt
-@lilypond[11pt]
+@item staffsize=POINTS
+@lilypond[staffsize=31.41592658]
 \relative c' {
   r16 c[ d e] f[ d e c] g'8[ c] b[\prall c] |
   d16[ g, a b] c[ a b g] d'8[ g f\prall g]
 }
 @end lilypond
 
-@item 13pt
-@lilypond[13pt]
-\relative c' {
-  r16 c[ d e] f[ d e c] g'8[ c] b[\prall c] |
-  d16[ g, a b] c[ a b g] d'8[ g f\prall g]
-}
-@end lilypond
-
-@item 16pt
-@lilypond[16pt]
-\relative c' {
-  r16 c[ d e] f[ d e c] g'8[ c] b[\prall c] |
-}
-@end lilypond
-
-@item 20pt
-@lilypond[20pt]
-\relative c' {
-  r16 c[ d e] f[ d e c] g'8[ c] b[\prall c] |
-}
-@end lilypond
-
-@item 26pt
-@lilypond[26pt]
-\relative c' {
-  r16 c[ d e] f[ d e c] g'8[ c] b[\prall c] |
-}
-@end lilypond
-
 @item raggedright
 produces naturally spaced lines (i.e., @code{raggedright = ##t}); this
 works well for small music fragments.
 
-@item multiline
-is the opposite of @code{singleline}: it justifies and breaks lines.
-
-@item linewidth=@var{size}@var{unit}
+@item linewidth=@var{size}\\@var{unit}
 sets linewidth to @var{size}, where @var{unit} = cm, mm, in, or pt.
 This option affects LilyPond output, not the text layout.
 
@@ -305,22 +285,31 @@ This option affects LilyPond output, not the text layout.
 prevents printing time signature.
 
 @item fragment
-@itemx nofragment
+@item nofragment
 overrides @command{lilypond-book} auto detection of what type of code is
-in the LilyPond block, voice contents or complete code.
+in the LilyPond block, voice contents, or complete code.
 
-@item indent=@var{size}@var{unit}
+@item indent=@var{size}\\@var{unit}
 sets indentation of the first music system to @var{size},
 where @var{unit} = cm, mm, in, or pt.  This option affects LilyPond,
-not the text layout.  For single-line fragments the default is to
+not the text layout.  For single-line fragments, the default is to
 use no indentation.
 
+For example
+@example
+  \begin[indent=\\5cm,raggedright]@{lilypond@}
+  ...
+  \end@{lilypond@}
+@end example
+
+
 @item noindent
 sets indentation of the first music system to zero.  This option
 affects LilyPond, not the text layout.
 
-@item notexidoc
-prevents including @code{texidoc}. This is only for Texinfo output.
+@item texidoc
+Includes the @code{texidoc} field, if defined in the file. This is
+only for Texinfo output.
 
 In Texinfo, the music fragment is normally preceded by the
 @code{texidoc} field from the @code{\header}. The LilyPond test
@@ -333,17 +322,9 @@ documents are composed from small @file{.ly} files in this way:
   \score @{ \notes @{ c'4 @} @} 
 @end example
 
-@item quote
-instructs @command{lilypond-book} to put La@TeX{} and Texinfo output
-into a quotation block.
-
-@item printfilename
-prints the file name before the music example.  Useful in conjunction
-with @code{\lilypondfile}.
-
-@item relative, relative @var{N}
+@item relative, relative=@var{N}
 uses relative octave mode.  By default, notes are specified relative
-central C.  The optional integer argument specifies the octave of the
+to central C.  The optional integer argument specifies the octave of the
 starting note, where the default @code{1} is central C.
 @end table
 
@@ -351,6 +332,7 @@ starting note, where the default @code{1} is central C.
 @node Invoking lilypond-book
 @section Invoking lilypond-book
 
+
 Running @command{lilypond-book} generates lots of small files that
 LilyPond will process.  To avoid all that garbage in the source
 directory, it is advisable to change to a temporary directory first:
@@ -359,41 +341,14 @@ cd out && lilypond-book ../yourfile.tex
 @end example
 
 @noindent
-or to use the @option{--outdir} command line option, and change to
-that director before running La@TeX{} or @file{makeinfo}:
+or to use the @option{--output} command line option, and change to
+that directory before running La@TeX{} or @file{makeinfo}:
 
 @example
-lilypond-book --outdir=out yourfile.tex
-cd out  && latex yourfile.latex
+lilypond-book --output=out yourfile.lytex
+cd out && latex yourfile.tex
 @end example
 
-For La@TeX{} input, the file to give to La@TeX{} has extension @file{.latex}.
-Texinfo input will be written to a file with extension @file{.texi}.
-
-@cindex titling and lilypond-book
-@cindex lilypond-book and titling
-@cindex @code{\header} in La@TeX{} documents
-
-To add titling from the @code{\header} section of the files, add the
-following to the top of the La@TeX{} file:
-@example
-\input titledefs.tex
-\def\preLilyPondExample@{\def\mustmakelilypondtitle@{@}@}
-@end example
-
-@cindex outline fonts
-@cindex type1 fonts
-@cindex dvips
-@cindex invoking dvips
-
-For printing the LaTeX  document, you will need  to use dvips. For
-producing PS  with scalable fonts, add the following options to the dvips
-command line:
-@example
- -Ppdf -u +lilypond.map
-@end example 
-
-
 
 @command{lilypond-book} accepts the following command line options:
 
@@ -408,45 +363,38 @@ fragments in the DVI output only. For getting images in the HTML
 version,  the format 
 @code{texi-html} must be used.
 
-@item @option{--default-music-fontsize=@var{sz}pt}
-Set the music font size to use if no fontsize is given as option.
+@item @option{-F @var{filter}}, @option{--filter=@var{filter}}
+Pipe snippets through @var{filter}.
+
+For example:
+@example
+    lilypond-book --filter='convert-ly --from=2.0.0' my-book.tely
+@end example
 
-@item @option{--force-music-fontsize=@var{sz}pt}
-Force all music to use this fontsize, overriding options given to
-@code{\begin@{lilypond@}}.
+@item @option{--help}
+Print a short help message.
 
 @item @option{-I @var{dir}}, @option{--include=@var{dir}}
 Add @var{DIR} to the include path.
 
-@item @option{-M}, @option{--dependencies}
-Write dependencies to @file{filename.dep}.
-
-@item @option{--dep-prefix=@var{pref}}
-Prepend @var{pref} before each @option{-M} dependency.
-
-@item @option{-n}, @option{--no-lily}
-Generate the @code{.ly} files, but do not process them.
-
-@item @option{--no-music}
-Strip all music from the input file.
-
-@item @option{--no-pictures}
-Do not generate pictures when processing Texinfo.
+@item @option{-o @var{dir}}, @option{--output=@var{dir}}
+Place generated files in @var{dir}.
 
-@item @option{--outname=@var{file}}
-The name of La@TeX{} file to output.  If this option is not given,
-the output name is derived from the input name.
+@item @option{-P @var{process}}, @option{--process=@var{COMMAND}}
+Process lilypond snippets using @var{command}.  The default command is
+@var{lilypond-bin}.
 
-@item @option{--outdir=@var{dir}}
-Place generated files in @var{dir}.
+@item @option{--verbose}
+Be verbose.
 
 @item @option{--version}
 Print version information.
-
-@item @option{--help}
-Print a short help message.
 @end table
 
+For La@TeX{} input, the file to give to La@TeX{} has extension
+@file{.latex}.  Texinfo input will be written to a file with extension
+@file{.texi}.
+
 
 
 @section Bugs
@@ -458,11 +406,10 @@ La@TeX{} commands that change margins and line widths are ignored.
 
 Only the first @code{\score} of a LilyPond block is processed.
 
+@c CHECKME--FIXME
 The size of a music block is limited to 1.5 kb, due to technical
-problems with the Python regular expression engine. For longer files,
-use @code{\lilypondfile}.  Using @code{\lilypondfile} also makes
-upgrading files (through convert-ly, see @ref{Invoking convert-ly})
-easier.
+problems with the Python regular expression engine.  For longer files,
+use @code{\lilypondfile}.
 
 @command{lilypond-book} processes all music fragments in one big run.
 The state of the GUILE interpreter is not reset between fragments;