]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/running.itely
Doc-de: updates to keyboards.itely
[lilypond.git] / Documentation / user / running.itely
index 0b992069c119cda3091e249d79fd87630f9c39d5..0bbd4d14bb75befa94fc4b698639a762658b2e33 100644 (file)
@@ -7,6 +7,8 @@
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
+@c \version "2.11.61"
+
 
 @node Running LilyPond
 @chapter Running LilyPond
 
 @node Running LilyPond
 @chapter Running LilyPond
 This chapter details the technicalities of running LilyPond.
 
 @menu
 This chapter details the technicalities of running LilyPond.
 
 @menu
-* Normal usage::                
-* Command-line usage::          
-* Error messages::              
-* Updating files with convert-ly::  
-* Reporting bugs::              
+* Normal usage::
+* Command-line usage::
+* Error messages::
+* Updating files with convert-ly::
+* Reporting bugs::
 @end menu
 
 
 @node Normal usage
 @section Normal usage
 
 @end menu
 
 
 @node Normal usage
 @section Normal usage
 
-Most users run LilyPond through a GUI; see @ruser{First steps} if
+Most users run LilyPond through a GUI; see @rlearning{First steps} if
 you have not read this already.
 
 
 you have not read this already.
 
 
@@ -39,24 +41,30 @@ as @code{midi2ly}) which are only available on the command-line.
 
 By @q{command-line}, we mean the command line in the operating system.
 Windows users might be more familiar with the terms @q{DOS shell} or
 
 By @q{command-line}, we mean the command line in the operating system.
 Windows users might be more familiar with the terms @q{DOS shell} or
-@q{command shell}; OSX users might be more familiar with the terms
-@q{terminal} or @q{console}.  OSX users should also consult @ref{MacOS X
-on the command-line}.
+@q{command shell}; MacOS@tie{}X users might be more familiar with the terms
+@q{terminal} or @q{console}.  They should also consult @ref{Setup
+for MacOS X}.
 
 Describing how to use this part of an operating system is outside the
 scope of this manual; please consult other documentation on this topic
 if you are unfamiliar with the command-line.
 
 
 Describing how to use this part of an operating system is outside the
 scope of this manual; please consult other documentation on this topic
 if you are unfamiliar with the command-line.
 
+@menu
+* Invoking lilypond::
+* Command line options for lilypond::
+* Environment variables::
+@end menu
 
 
-@subsection Invoking lilypond
+@node Invoking lilypond
+@subsection Invoking @command{lilypond}
 
 
-@cindex Invoking LilyPond
-@cindex command line options
+@cindex Invoking @command{lilypond}
+@cindex command line options for @command{lilypond}
 @cindex options, command line
 @cindex switches
 
 
 @cindex options, command line
 @cindex switches
 
 
-The @code{lilypond} executable may be called as follows from the command line.
+The @command{lilypond} executable may be called as follows from the command line.
 
 @example
 lilypond [@var{option}]@dots{} @var{file}@dots{}
 
 @example
 lilypond [@var{option}]@dots{} @var{file}@dots{}
@@ -67,32 +75,32 @@ When invoked with a filename that has no extension, the @file{.ly}
 extension is tried first.  To read input from stdin, use a
 dash (@code{-}) for @var{file}.
 
 extension is tried first.  To read input from stdin, use a
 dash (@code{-}) for @var{file}.
 
-When @file{filename.ly} is processed it will produce
-@file{filename.tex} as output (or @file{filename.ps} for PostScript
-output).  If @file{filename.ly} contains more than one @code{\score}
-block, then the rest of the scores will be output in numbered files,
-starting with @file{filename-1.tex}.  Several files can be specified;
+When @file{filename.ly} is processed it will produce @file{filename.ps}
+and @file{filename.pdf} as output.  Several files can be specified;
 they will each be processed independently.  @footnote{The status of
 GUILE is not reset after processing a @code{.ly} file, so be careful
 not to change any system defaults from within Scheme.}
 
 they will each be processed independently.  @footnote{The status of
 GUILE is not reset after processing a @code{.ly} file, so be careful
 not to change any system defaults from within Scheme.}
 
-In addition, the value of @code{output-suffix} will be inserted between
-the basename and the number.  An input file containing 
+If @file{filename.ly} contains more than one @code{\score}
+block, then the rest of the scores will be output in numbered files,
+starting with @file{filename-1.pdf}.  In addition, the value of
+@code{output-suffix} will be inserted between the basename and the
+number.  An input file containing
 
 @example
 #(define output-suffix "violin")
 
 @example
 #(define output-suffix "violin")
-\book @{ @dots{} @} 
+\book @{ @dots{} @}
 #(define output-suffix "cello")
 #(define output-suffix "cello")
-\book @{ @dots{} @} 
+\book @{ @dots{} @}
 @end example
 
 @noindent
 @end example
 
 @noindent
-will output @var{base}@file{-violin.ps} and
-@var{base}@file{-cello-1.ps}.
-
+will output @var{base}@file{-violin.pdf} and
+@var{base}@file{-cello-1.pdf}.
 
 
 
 
-@subsection Command line options
+@node Command line options for lilypond
+@subsection Command line options for @command{lilypond}
 
 The following options are supported:
 
 
 The following options are supported:
 
@@ -124,13 +132,13 @@ at the top of the @code{.ly} file.
 which formats should be written.  Choices for @code{format} are
 @code{svg}, @code{ps}, @code{pdf}, @code{png}, @code{tex}, @code{dvi}.
 
 which formats should be written.  Choices for @code{format} are
 @code{svg}, @code{ps}, @code{pdf}, @code{png}, @code{tex}, @code{dvi}.
 
-Example: @code{lilypond -fpng filename.ly}
+Example: @code{lilypond -fpng @var{filename}.ly}
 
 
 
 @item -d,--define-default=@var{var}=@var{val}
 This sets the internal program option @var{var} to the Scheme value
 
 
 
 @item -d,--define-default=@var{var}=@var{val}
 This sets the internal program option @var{var} to the Scheme value
-@var{val}. If @var{val} is not supplied, then @var{#t} is used. To
+@var{val}.  If @var{val} is not supplied, then @var{#t} is used.  To
 switch off an option, @code{no-} may be prefixed to @var{var}, e.g.
 
 @cindex point and click, command line
 switch off an option, @code{no-} may be prefixed to @var{var}, e.g.
 
 @cindex point and click, command line
@@ -153,14 +161,14 @@ Running @code{lilypond -dhelp} will print all of the @code{-d} options
 available.
 
 @item paper-size
 available.
 
 @item paper-size
-This option sets the default paper-size, 
+This option sets the default paper-size,
 @example
 -dpaper-size=\"letter\"
 @end example
 
 @noindent
 Note that the string must be enclosed in escaped quotes ( @code{\"} ).
 @example
 -dpaper-size=\"letter\"
 @end example
 
 @noindent
 Note that the string must be enclosed in escaped quotes ( @code{\"} ).
-
+@c Match " in previous line to help context-sensitive editors
 
 @item safe
 Do not trust the @code{.ly} input.
 
 @item safe
 Do not trust the @code{.ly} input.
@@ -190,7 +198,7 @@ disables the use of backslashes in @TeX{} strings.
 In safe mode, it is not possible to import LilyPond variables
 into Scheme.
 
 In safe mode, it is not possible to import LilyPond variables
 into Scheme.
 
-safe does @emph{not} detect resource overuse.  It is still possible to
+@code{-dsafe} does @emph{not} detect resource overuse.  It is still possible to
 make the program hang indefinitely, for example by feeding cyclic data
 structures into the backend.  Therefore, if using LilyPond on a
 publicly accessible webserver, the process should be limited in both
 make the program hang indefinitely, for example by feeding cyclic data
 structures into the backend.  Therefore, if using LilyPond on a
 publicly accessible webserver, the process should be limited in both
@@ -224,7 +232,7 @@ currently missing due to heavy restructuring of the source code.
 @file{EPS} file, without fonts, and as one collated @file{EPS} file with
 all pages (systems) including fonts.
 
 @file{EPS} file, without fonts, and as one collated @file{EPS} file with
 all pages (systems) including fonts.
 
-This mode is used by default by lilypond-book.
+This mode is used by default by @command{lilypond-book}.
 
 @item svg
  for SVG (Scalable Vector Graphics).  This dumps every page as a separate
 
 @item svg
  for SVG (Scalable Vector Graphics).  This dumps every page as a separate
@@ -232,15 +240,15 @@ This mode is used by default by lilypond-book.
 @cindex SVG (Scalable Vector Graphics)
   You need a SVG viewer which supports embedded fonts, or a SVG
   viewer which is able to replace the embedded fonts with OTF fonts.
 @cindex SVG (Scalable Vector Graphics)
   You need a SVG viewer which supports embedded fonts, or a SVG
   viewer which is able to replace the embedded fonts with OTF fonts.
-  Under Unix, you may use @uref{http://www.inkscape.org,Inkscape}
-  (version 0.42 or later), after copying the OTF fonts in directory
-  @file{PATH/TO/share/lilypond/VERSION/fonts/otf/} to @file{~/.fonts/}.
+  Under UNIX, you may use @uref{http://www.inkscape.org,Inkscape}
+  (version 0.42 or later), after copying the OTF fonts from the LilyPond directory
+  (typically @file{/usr/share/lilypond/VERSION/fonts/otf/}) to @file{~/.fonts/}.
 @item scm
  for a dump of the raw, internal Scheme-based drawing commands.
 @cindex Scheme dump
 @end table
 
 @item scm
  for a dump of the raw, internal Scheme-based drawing commands.
 @cindex Scheme dump
 @end table
 
-Example: @code{lilypond -dbackend=svg filename.ly}
+Example: @code{lilypond -dbackend=svg @var{filename}.ly}
 
 @cindex output format, setting
 
 
 @cindex output format, setting
 
@@ -258,8 +266,8 @@ useful in combination with @code{-dpreview}.
 @item -h,--help
 Show a summary of usage.
 
 @item -h,--help
 Show a summary of usage.
 
-@item -H,--header=FIELD
-Dump a header field to file BASENAME.FIELD
+@item -H,--header=@var{FIELD}
+Dump a header field to file @file{BASENAME.@var{FIELD}}.
 
 @item --include, -I=@var{directory}
 Add @var{directory} to the search path for input files.
 
 @item --include, -I=@var{directory}
 Add @var{directory} to the search path for input files.
@@ -271,7 +279,7 @@ Set init file to @var{file} (default: @file{init.ly}).
 
 @item -o,--output=@var{FILE}
 Set the default output file to @var{FILE}.  The appropriate
 
 @item -o,--output=@var{FILE}
 Set the default output file to @var{FILE}.  The appropriate
-suffix will be added (ie @code{.pdf} for pdf, @code{.tex}
+suffix will be added (i.e. @code{.pdf} for pdf, @code{.tex}
 for tex, etc).
 
 @item --ps
 for tex, etc).
 
 @item --ps
@@ -294,24 +302,24 @@ Generate PDF.  This implies @code{--ps}.
 
 
 @item -j,--jail=@var{user},@var{group},@var{jail},@var{dir}
 
 
 @item -j,--jail=@var{user},@var{group},@var{jail},@var{dir}
-Run LilyPond in a chroot jail.
+Run @command{lilypond} in a chroot jail.
 
 The @code{--jail} option provides a more flexible alternative to
 @code{--safe} when LilyPond formatting is available through a web
 server or whenever LilyPond executes externally provided
 sources.
 
 
 The @code{--jail} option provides a more flexible alternative to
 @code{--safe} when LilyPond formatting is available through a web
 server or whenever LilyPond executes externally provided
 sources.
 
-The @code{--jail} option works by changing the root of LilyPond to
+The @code{--jail} option works by changing the root of @command{lilypond} to
 @var{jail} just before starting the actual compilation process.  The user
 and group are then changed to match those provided, and the current
 directory is changed to @var{dir}.  This setup guarantees that it is not
 possible (at least in theory) to escape from the jail.  Note that for
 @var{jail} just before starting the actual compilation process.  The user
 and group are then changed to match those provided, and the current
 directory is changed to @var{dir}.  This setup guarantees that it is not
 possible (at least in theory) to escape from the jail.  Note that for
-@code{--jail} to work LilyPond must be run as root, which is usually
+@code{--jail} to work @command{lilypond} must be run as root, which is usually
 accomplished in a safe way using @command{sudo}.
 
 Setting up a jail is a slightly delicate matter, as we must be sure that
 LilyPond is able to find whatever it needs to compile the source
 accomplished in a safe way using @command{sudo}.
 
 Setting up a jail is a slightly delicate matter, as we must be sure that
 LilyPond is able to find whatever it needs to compile the source
-@emph{inside the jail}. A typical setup comprises the following items:
+@emph{inside the jail}.  A typical setup comprises the following items:
 
 @table @asis
 @item Setting up a separate filesystem
 
 @table @asis
 @item Setting up a separate filesystem
@@ -324,7 +332,7 @@ mount a loop device.  A separate filesystem also guarantees that LilyPond
 cannot write more space than it is allowed.
 
 @item Setting up a separate user
 cannot write more space than it is allowed.
 
 @item Setting up a separate user
-A separate user and group (say, @samp{lily}/@samp{lily}) with low
+A separate user and group (say, @code{lily}/@code{lily}) with low
 privileges should be used to run LilyPond inside the jail.  There should
 be a single directory writable by this user, which should be passed in
 @var{dir}.
 privileges should be used to run LilyPond inside the jail.  There should
 be a single directory writable by this user, which should be passed in
 @var{dir}.
@@ -364,14 +372,14 @@ Show the warranty with which GNU LilyPond comes. (It comes with
 @strong{NO WARRANTY}!)
 @end table
 
 @strong{NO WARRANTY}!)
 @end table
 
-
+@node Environment variables
 @subsection Environment variables
 
 
 @cindex LANG
 @cindex LILYPOND_DATADIR
 
 @subsection Environment variables
 
 
 @cindex LANG
 @cindex LILYPOND_DATADIR
 
-@code{Lilypond} recognizes the following environment variables:
+@command{lilypond} recognizes the following environment variables:
 @table @code
 @item LILYPOND_DATADIR
 This specifies a directory where locale messages and
 @table @code
 @item LILYPOND_DATADIR
 This specifies a directory where locale messages and
@@ -383,9 +391,9 @@ This selects the language for the warning messages.
 
 @item LILYPOND_GC_YIELD
 With this variable the memory footprint and performance can be
 
 @item LILYPOND_GC_YIELD
 With this variable the memory footprint and performance can be
-adjusted. It is a percentage tunes memory management behavior. With
+adjusted.  It is a percentage tunes memory management behavior.  With
 higher values, the program uses more memory, with smaller values, it
 higher values, the program uses more memory, with smaller values, it
-uses more CPU time. The default value is @code{70}.
+uses more CPU time.  The default value is @code{70}.
 
 @end table
 
 
 @end table
 
@@ -452,9 +460,9 @@ A line-break is inserted in the offending line to indicate the column
 where the error was found.  For example,
 
 @example
 where the error was found.  For example,
 
 @example
-test.ly:2:19: error: not a duration: 5:
-  @{ c'4 e'5
-             g' @}
+test.ly:2:19: error: not a duration: 5
+  @{ c'4 e'
+           5 g' @}
 @end example
 
 These locations are LilyPond's best guess about where the warning or
 @end example
 
 These locations are LilyPond's best guess about where the warning or
@@ -465,7 +473,7 @@ above the indicated position.
 
 
 @node Updating files with convert-ly
 
 
 @node Updating files with convert-ly
-@section Updating with @command{convert-ly}
+@section Updating files with @command{convert-ly}
 
 @cindex Updating a LilyPond file
 @cindex convert-ly
 
 @cindex Updating a LilyPond file
 @cindex convert-ly
@@ -485,13 +493,19 @@ convert-ly -e myfile.ly
 @end example
 
 @noindent
 @end example
 
 @noindent
-MacOS X users may execute this command under the menu entry
-@samp{Compile > Update syntax}.
+MacOS@tie{}X users may execute this command under the menu entry
+@code{Compile > Update syntax}.
 
 If there are no changes to myfile.ly and file called myfile.ly.NEW
 is created, then myfile.ly is already updated.
 
 
 If there are no changes to myfile.ly and file called myfile.ly.NEW
 is created, then myfile.ly is already updated.
 
-@subsection Command line options
+@menu
+* Command line options for convert-ly::
+* Problems with convert-ly::
+@end menu
+
+@node Command line options for convert-ly
+@subsection Command line options for @command{convert-ly}
 
 @command{convert-ly} always converts up to the last syntax change handled by
 it.  This means that the @code{\version} number left in the file is
 
 @command{convert-ly} always converts up to the last syntax change handled by
 it.  This means that the @code{\version} number left in the file is
@@ -510,7 +524,7 @@ convert-ly --from=... --to=... -s
 @end example
 
 To upgrade many files at once, combine @code{convert-ly} with
 @end example
 
 To upgrade many files at once, combine @code{convert-ly} with
-standard unix commands.  This example will upgrade all @code{.ly}
+standard UNIX commands.  This example will upgrade all @code{.ly}
 files in the current directory
 
 @example
 files in the current directory
 
 @example
@@ -550,21 +564,16 @@ Print usage help.
 @end table
 
 
 @end table
 
 
-@menu
-* Problems with convert-ly::    
-@end menu
-
-
 @node Problems with convert-ly
 @subsection Problems with @code{convert-ly}
 
 Not all language changes are handled.  Only one output option can be
 @node Problems with convert-ly
 @subsection Problems with @code{convert-ly}
 
 Not all language changes are handled.  Only one output option can be
-specified.  Automatically updating scheme and lilypond scheme
+specified.  Automatically updating scheme and LilyPond scheme
 interfaces is quite unlikely; be prepared to tweak scheme code
 manually.
 
 @verbatim
 interfaces is quite unlikely; be prepared to tweak scheme code
 manually.
 
 @verbatim
-There are a few things that the convert-ly cannot handle. Here's a list
+There are a few things that the convert-ly cannot handle.  Here's a list
 of limitations that the community has complained about.
 
 This bug report structure has been chosen because convert-ly has a
 of limitations that the community has complained about.
 
 This bug report structure has been chosen because convert-ly has a
@@ -573,12 +582,12 @@ Thus this is just a wishlist, placed here for reference.
 
 1.6->2.0:
  Doesn't always convert figured bass correctly, specifically things like {<
 
 1.6->2.0:
  Doesn't always convert figured bass correctly, specifically things like {<
->}. Mats' comment on working around this:
+>}.  Mats' comment on working around this:
    To be able to run convert-ly
    To be able to run convert-ly
-   on it, I first replaced all occurencies of '{<' to some dummy like '{#'
-   and similarly I replaced '>}' with '&}'. After the conversion, I could
+   on it, I first replaced all occurrences of '{<' to some dummy like '{#'
+   and similarly I replaced '>}' with '&}'.  After the conversion, I could
    then change back from '{ #' to '{ <' and from '& }' to '> }'.
    then change back from '{ #' to '{ <' and from '& }' to '> }'.
- Doesn't convert all text markup correctly. In the old markup syntax,
+ Doesn't convert all text markup correctly.  In the old markup syntax,
  it was possible to group a number of markup commands together within
 parentheses, e.g.
    -#'((bold italic) "string")
  it was possible to group a number of markup commands together within
 parentheses, e.g.
    -#'((bold italic) "string")
@@ -625,7 +634,7 @@ converted.
 @cindex reporting bugs
 
 If you have input that results in a crash or an erroneous output, then
 @cindex reporting bugs
 
 If you have input that results in a crash or an erroneous output, then
-that is a bug. There is a list of current bugs on our google bug tracker,
+that is a bug.  There is a list of current bugs on our Google bug tracker,
 
 @uref{http://code.google.com/p/lilypond/issues/list}
 
 
 @uref{http://code.google.com/p/lilypond/issues/list}
 
@@ -634,7 +643,7 @@ bug by following the directions on
 
 @uref{http://lilypond.org/web/devel/participating/bugs}
 
 
 @uref{http://lilypond.org/web/devel/participating/bugs}
 
-Please construct submit @ruser{Minimal examples}, of bug reports.  We do not
+Please construct and submit minimal examples of bugs in reports.  We do not
 have the resources to investigate reports which are not as small as possible.
 
 
 have the resources to investigate reports which are not as small as possible.