]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/usage/running.itely
Imported Upstream version 2.18.0
[lilypond.git] / Documentation / usage / running.itely
index db31e4347135bba9dfc93051212ee87d303c59db..9e736bda0139d25349a5dda61ac6e6a240dc929e 100644 (file)
@@ -8,7 +8,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.16.0"
+@c \version "2.17.6"
 
 
 @node Running lilypond
@@ -134,13 +134,13 @@ The following options are supported:
 
 @table @code
 
-@item -d,--define-default=@var{var}=@var{val}
+@item -d, --define-default=@var{var}=@var{val}
 See @ref{Advanced command line options for LilyPond}.
 
 @cindex Scheme, expression evaluation
 @cindex expression evaluation, Scheme
 
-@item -e,--evaluate=@var{expr}
+@item -e, --evaluate=@var{expr}
 Evaluate the Scheme @var{expr} before parsing any @file{.ly} files.
 Multiple @option{-e} options may be given, they will be evaluated
 sequentially.
@@ -167,19 +167,19 @@ at the top of the @code{.ly} file.
 @cindex output, format
 @cindex format, output
 
-@item -f,--format=@var{format}
+@item -f, --format=@var{format}
 which formats should be written.  Choices for @code{format} are
 @code{ps}, @code{pdf}, and @code{png}.
 
 Example: @code{lilypond -fpng @var{filename}.ly}
 
-@item -h,--help
+@item -h, --help
 Show a summary of usage.
 
-@item -H,--header=@var{FIELD}
+@item -H, --header=@var{FIELD}
 Dump a header field to file @file{BASENAME.@var{FIELD}}.
 
-@item -i,--init=@var{file}
+@item -i, --init=@var{file}
 Set init file to @var{file} (default: @file{init.ly}).
 
 @cindex file searching
@@ -194,7 +194,7 @@ search will continue in subsequent directories.
 
 @cindex chroot jail, running inside
 
-@item -j,--jail=@var{user},@var{group},@var{jail},@var{dir}
+@item -j, --jail=@var{user},@var{group},@var{jail},@var{dir}
 Run @command{lilypond} in a chroot jail.
 
 The @option{--jail} option provides a more flexible alternative to
@@ -257,7 +257,7 @@ the amount of memory that can be allocated.  Also see
 @cindex loglevel
 @cindex output, verbosity
 
-@item -l,--loglevel=@var{LEVEL}
+@item -l, --loglevel=@var{LEVEL}
 Set the verbosity of the console output to @var{LEVEL}. Possible values
 are:
 
@@ -290,7 +290,7 @@ All possible messages, including verbose debug output.
 @cindex output, setting filename
 @cindex output, directory
 
-@item -o,--output=@var{FILE} or @var{FOLDER}
+@item -o, --output=@var{FILE} or @var{FOLDER}
 Set the default output file to @var{FILE} or, if a folder with that name
 exists, direct the output to @var{FOLDER}, taking the file name from the
 input file.  The appropriate suffix will be added (e.g. @code{.pdf} for
@@ -319,14 +319,14 @@ Generate pictures of each page, in PNG format.  This implies
 @item --pdf
 Generate PDF.  This implies @option{--ps}.
 
-@item -v,--version
+@item -v, --version
 Show version information.
 
-@item -V,--verbose
+@item -V, --verbose
 Be verbose: show full paths of all files read, and give timing
 information.
 
-@item -w,--warranty
+@item -w, --warranty
 Show the warranty with which GNU LilyPond comes.  (It comes with
 @strong{NO WARRANTY}!)
 
@@ -339,9 +339,14 @@ Show the warranty with which GNU LilyPond comes.  (It comes with
 @table @code
 
 @item -d@var{[option-name]}=@var{[value]},--define-default=@var{[option-name]}=@var{[value]}
-This sets the equivalent internal Scheme function to @var{value}.  If a
-@var{value} is not supplied, then the default value is used.  The prefix
-@code{no-} may be added to @var{option-name} to switch @q{off} an
+This sets the equivalent internal Scheme function to @var{value}.
+
+@example
+-dbackend=svg
+@end example
+
+If a @var{value} is not supplied, then the default value is used.  The
+prefix @code{no-} may be added to @var{option-name} to switch @q{off} an
 option, e.g.
 
 @cindex point and click, command line
@@ -376,25 +381,25 @@ result to prevent @q{jaggies} in @code{PNG} images.
 @code{EPS} backend.
 
 @item @code{backend}
-@tab @code{'ps}
+@tab @code{ps}
 @tab Select backend.  Postscript files (default) include @code{TTF},
 @code{Type1} and @code{OTF} fonts.  No subsetting of these fonts is
 done.  Using @q{oriental} character sets can lead to very large files.
 
 @item
-@tab @code{'eps}
+@tab @code{eps}
 @tab Encapsulated PostScript.  This dumps every page (system) as a
 separate @file{EPS} file, without fonts, and as one collated @file{EPS}
 file with all pages (systems) including fonts.  Used as default by
 @command{lilypond-book}.
 
 @item
-@tab @code{'null}
+@tab @code{null}
 @tab Do not output a printed score; has the same effect as
 @code{-dno-print-pages}.
 
 @item
-@tab @code{'svg}
+@tab @code{svg}
 @tab Scalable Vector Graphics.  This creates a single @code{SVG} file,
 without embedded fonts, for every page of output.  It is recommended to
 install the Century Schoolbook fonts, included with your LilyPond
@@ -406,7 +411,7 @@ agent. There is also an option @code{svg-woff} (below) for use of woff
 font files in the SVG backend.
 
 @item
-@tab @code{'scm}
+@tab @code{scm}
 @tab Dump of the raw, internal Scheme-based drawing commands.
 
 @item @code{check-internal-types}
@@ -536,11 +541,6 @@ string.
 @tab @code{#f}
 @tab Convert text strings to paths when glyphs belong to a music font.
 
-@item @code{old-relative}
-@tab @code{#f}
-@tab Make @code{\relative} mode for simultaneous music work similar to
-chord syntax.
-
 @item @code{paper-size}
 @tab @code{\"a4\"}
 @tab Set default paper size.  Note the string must be enclosed in
@@ -648,7 +648,7 @@ more work to set up. See @ref{Basic command line options for LilyPond}.
 @item @code{separate-log-files}
 @tab @code{#f}
 @tab For input files @code{FILE1.ly}, @code{FILE2.ly}, etc. output log
-data to files @code{FILE1.log}, @code{FILE2.log}, ...
+data to files @code{FILE1.log}, @code{FILE2.log}@dots{}
 
 @item @code{show-available-fonts}
 @tab @code{#f}
@@ -920,10 +920,10 @@ are easily handled.
 @menu
 * Music runs off the page::
 * An extra staff appears::
-* Apparent error in ../ly/init.ly::
 * Error message Unbound variable %::
 * Error message FT_Get_Glyph_Name::
 * Warning staff affinities should only decrease::
+* Error message unexpected new::
 @end menu
 
 @node Music runs off the page
@@ -968,7 +968,7 @@ colored red, but in fact it results in two staves with the note
 heads remaining the default black in the lower staff.
 
 @lilypond[quote,verbatim,relative=2]
-\override Staff.NoteHead #'color = #red
+\override Staff.NoteHead.color = #red
 \new Staff { a }
 @end lilypond
 
@@ -980,7 +980,7 @@ correct code to color all note heads red is
 
 @lilypond[quote,verbatim,relative=2]
 \new Staff {
-  \override Staff.NoteHead #'color = #red
+  \override Staff.NoteHead.color = #red
   a
 }
 @end lilypond
@@ -1009,34 +1009,6 @@ problem:
 @end lilypond
 
 
-@node Apparent error in ../ly/init.ly
-@unnumberedsubsec Apparent error in @code{../ly/init.ly}
-
-Various obscure error messages may appear about syntax errors in
-@file{../ly/init.ly} if the input file is not correctly formed,
-for example, if it does not contain correctly
-matched braces or quote signs.
-
-The most common error is a missing brace, (@code{@}}), at the end of
-a @code{score} block.  Here the solution is obvious: check the
-@code{score} block is correctly terminated.  The correct structure
-of an input file is described in @rlearning{How LilyPond input files work}.
-Using an editor which automatically highlights matching brackets and
-braces is helpful to avoid such errors.
-
-A second common cause is no white space between the last syllable
-of a lyrics block and the terminating brace, (@code{@}}).  Without
-this separation the brace is taken to be part of the syllable.  It
-is always advisable to ensure there is white space before and after
-@emph{every} brace.  For the importance of this when using lyrics,
-see @ruser{Entering lyrics}.
-
-This error message can also appear if a terminating quote sign,
-(@code{"}), is omitted.  In this case an accompanying error message
-@c keep "-matching straight in fancy editors
-should give a line number close to the line in error.  The
-mismatched quote will usually be on the line one or two above.
-
 @node Error message Unbound variable %
 @unnumberedsubsec Error message Unbound variable %
 
@@ -1066,9 +1038,59 @@ messages can be avoided by making one of the contexts behave as a
 staff by inserting
 
 @example
-\override VerticalAxisGroup #'staff-affinity = ##f
+\override VerticalAxisGroup.staff-affinity = ##f
 @end example
 
 @noindent
 at its start.  For details, see @qq{Spacing of non-staff lines} in
 @ruser{Flexible vertical spacing within systems}.
+
+
+@node Error message unexpected new
+@unnumberedsubsec Error message unexpected @code{@bs{}new}
+
+A @code{\score} block must contain a @emph{single} music expression.
+If instead it contains several @code{\new Staff},
+@code{\new StaffGroup} or similar contexts introduced with @code{\new}
+without them being enclosed in either curly brackets,
+@code{@{ @dots{} @}}, or double angle brackets, @code{<< @dots{} >>},
+like this:
+
+@example
+\score @{
+  % Invalid! Generates error: syntax error, unexpected \new
+  \new Staff @{ @dots{} @}
+  \new Staff @{ @dots{} @}
+@}
+@end example
+
+@noindent
+the error message will be produced.
+
+To avoid the error, enclose all the @code{\new} statements in
+curly or double angle brackets.
+
+Using curly brackets will introduce the @code{\new} statements
+sequentially:
+
+@lilypond[quote,verbatim]
+\score {
+  {
+    \new Staff { a' a' a' a' }
+    \new Staff { g' g' g' g' }
+  }
+}
+@end lilypond
+
+@noindent
+but more likely you should be using double angle brackets so the new
+staves are introduced in parallel, i.e. simultaneously:
+
+@lilypond[quote,verbatim]
+\score {
+  <<
+    \new Staff { a' a' a' a' }
+    \new Staff { g' g' g' g' }
+  >>
+}
+@end lilypond