]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.4.2
authorfred <fred>
Wed, 27 Mar 2002 01:19:29 +0000 (01:19 +0000)
committerfred <fred>
Wed, 27 Mar 2002 01:19:29 +0000 (01:19 +0000)
Documentation/bibliography/engraving.bib
Documentation/user/convert-ly.itexi
Documentation/user/converters.itely
Documentation/user/internals.itely
Documentation/user/lilypond-book.itely

index 4df039a22d9dc3a3f1388f30430dc10459bedf1d..1ac79d9da5f734609df0ec64b3728aff04dfe3fc 100644 (file)
@@ -237,7 +237,7 @@ year={1989}
 
 
 @Book {gerou96,
-  note = {A concise, alphabetically ordered list of typesetting and music (notation) issues with a rather simplistic attitude but in most  cases "good-enough" answers JCN},
+  note = {A cheap, concise, alphabetically ordered list of typesetting and music (notation) issues with a rather simplistic attitude but in most  cases "good-enough" answers JCN},
   year =  {1996},
   title = {Essential Dictionary of Music Notation},
   author = {Tom Gerou and Linda Lusk},
index 255b30fbfd60154e5af7ca994d0dae28823dd88e..dc1590a6edda7cd0664cae7c7696ead0726614af 100644 (file)
@@ -19,21 +19,22 @@ detect the old version number.
 @item -a,--assume-old
     If version number cannot be determined, apply all conversions.
 @item -e,--edit
-    Do an inline edit of the input file. override @code{--output}
+    Do an inline edit of the input file. Overrides @code{--output}.
 @item -f,--from=@var{from-patchlevel}
     Set the level to convert from. If this is not set, convert-ly will
-    guess this, on the basis of @code{\version} strings in the file
+    guess this, on the basis of @code{\version} strings in the file.
 @item -o,--output=@var{file}
     Set the output file to write.  
 @item -n,--no-version
     Normally, convert-ly adds a @code{\version} indicator 
-to the output. Specifying this option suppresses this.  
-
-@item --show-rules
-    Show all known conversions and exit
+    to the output. Specifying this option suppresses this.  
+@item -s, --show-rules
+    Show all known conversions and exit.
 @item --to=@var{to-patchlevel}
     Set the goal version of the conversion. It defaults to the latest
     available version.
+@item -h, --help
+    Print usage help
 @end table
 
 @unnumberedsubsec Example
index 60a8e0a66b0e2426e8419c9571c5988e19be0599..71f53b947d449becea93c0fe9627b753a58e9be4 100644 (file)
@@ -112,11 +112,9 @@ version information
 @refbugs
 
 Known: articulation scripts are buggy.  Empty measures confuse etf2ly.
-Report bugs to @email{bug-gnu-music@@gnu.org}.
 
 Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
 
-
 Report bugs to @email{bug-gnu-music@@gnu.org}.
 
 @node abc2ly
@@ -175,7 +173,7 @@ not.
 abc2ly ignores the ABC beaming.
 
 Written by @email{Han-Wen Nienhuys,hanwen@@cs.uu.nl}.
-
+@c How about Laura?   /MB
 
 Report bugs to @email{bug-gnu-music@@gnu.org}.
 
@@ -280,7 +278,7 @@ write output to @var{FILE}
 @item  -v,--version
 version information
 @item  -w,--warranty
-print warranty and copyright.  Mup2ly comes with absolutlely @strong{NO WARRANTY}.
+print warranty and copyright.  Mup2ly comes with absolutely @strong{NO WARRANTY}.
 @end table
 
 
index 84b04293346f885bd7efe6bb20bb8adfadb53d53..053bd3e0487a55a5cd6b7506e246cfd7cfb442dd 100644 (file)
@@ -34,7 +34,7 @@ which use them to build @code{Grob}s (or MIDI objects, for MIDI output).
 
 In this stage @code{Music_iterators} do a traversal of the @code{Music}
 structure. The music events thus encountered are reported to
-@code{Translator}s, a set objects that collectively form interpretation
+@code{Translator}s, a set of objects that collectively form interpretation
 contexts.
 
 
@@ -59,10 +59,10 @@ The lines and horizontal positions of the columns are determined.
 @item Breaking
 
 Relations between all grobs are modified to reflect line breaks: When a
-spanner, eg. a slur, crosses a line-break, then the spanner is "broken
+spanner, e.g. a slur, crosses a line-break, then the spanner is "broken
 into pieces", for every line that the spanner is in, a copy of the grob
 is made. A substitution process redirects all grob-reference so that
-spanner grob will only reference other grobs in the same line.
+each spanner grob will only reference other grobs in the same line.
 
 @item Outputting:
 
@@ -89,17 +89,24 @@ section.
 * Miscellaneous Scheme functions::  
 @end menu
 
+@ignore
+  Why not use Scheme syntax for the functions below, such as
+  (ly-input-location? obj) and (ly-get-mus-property m sym) ?
+
+  /MB
+@end ignore
+
 @node Input location
-@section input location
+@section Input location
 
-The parser generates
+@c The parser generates
 
-Input location objects point to a lcoation in the input file. This
+Input location objects point to a location in the input file. This
 location is used to generate error messages and to enable the point and
 click output.
 
-@defun ly-input-location?
-Type predicate
+@defun ly-input-location? obj
+Type predicate, return true if @var{obj} is an input location.
 @end defun
 
 
@@ -111,7 +118,8 @@ Type predicate
 Moment is a rational number. Since GUILE doesn't support them natively,
 so we created our own rational data type.
 
-@defun moment?
+@defun moment? obj
+Type predicate, return true if @var{obj} is a moment.
 @end defun
 
 @defun make-moment num den
@@ -134,8 +142,8 @@ note, etc.  The number of dots after the note is given by
 @end defun
 
 
-@defun duration? d
-type predicate for Duration
+@defun duration? obj
+Type predicate, return true if @var{obj} is a duration.
 @end defun
 
 @node Pitch data type
@@ -193,7 +201,7 @@ interface will likely change in the near future.
 @end defun
 
 @defun music? obj
-A type predicate,  return true if @var{obj} is a music object.
+Type predicate,  return true if @var{obj} is a music object.
 @end defun
 
 @defun ly-music-name music
@@ -208,9 +216,10 @@ Music_iterator is an object type that traverses the Music structure and
 reports the events it finds to interpretation contexts. It is not yet
 user-serviceable.
 
-@defun c++-function?
-type predicate for c++-function.   Music_iterator are created from
-schemified C++ constructors. Such a constructor is a @code{c++-function}.
+@defun c++-function? obj
+Type predicate, return true if @var{obj} is a  c++-function.
+Music_iterator are created from schemified C++ constructors. Such a
+constructor is a @code{c++-function}.
 @end defun
 
 @node Translator
@@ -263,10 +272,9 @@ of the `Stem' grob with the setting @code{direction := 1}.
 
 In music notation, lots of symbols are related in some way.  You can
 think of music notation as a graph where nodes are formed by the
-symbols, and the arcs by their relations. A grob is node in that graph.
+symbols, and the arcs by their relations. A grob is node in that graph.
 The directed edges in the graph are formed by references to other grobs
 (i.e. pointers).
-
 This big graph of grobs specifies the notation problem. The solution of
 this problem is a description of the printout in closed form, i.e. a
 list of values.  These values are Molecules. (see @ref{Molecules})
@@ -284,7 +292,7 @@ automatically.
 
 If you keep following offset reference points, you will always end up at
 the root object. This root object is called @code{Line_of_score}, and it
-represents a system (ie. a line of music).
+represents a system (i.e. a line of music).
 
 All grobs carry a set of grob-properties.  In the Stem example above,
 the property @code{direction} is set to value @code{1}.  The function
@@ -296,7 +304,7 @@ properties.
 A grob is often associated with a symbol, but some grobs do not print
 any symbols. They take care of grouping objects. For example, there is a
 separate grob that stacks staffs vertically. The @code{NoteCollision}
-also is an abstract grob: it only moves around chords, but doesn't print
+is also an abstract grob: it only moves around chords, but doesn't print
 anything.
 
 A complete list of grob types is found in the generated documentation.
@@ -331,7 +339,7 @@ stem is translated by two staff spaces in its direction.
 
 
 
-Offset callbacks can be stacked, ie.
+Offset callbacks can be stacked, i.e.
 
 @example
         \property .... \override #'Y-offset-callbacks = #(list
@@ -358,9 +366,9 @@ extent in that coordinate.
 @subsection Setting grob properties
 
 Grob properties are stored as GUILE association lists, with symbols as
-keys.  In GUILE you can access these using functions described @ref{Grob
-Scheme functions}.  From C++, grob properties can be accessed using
-these functions:
+keys.  In GUILE you can access these using functions described in
+Section @ref{Grob Scheme functions}.  From C++, grob properties can be
+accessed using these functions:
 
 @example
   SCM  get_grob_property (SCM) const;
@@ -373,12 +381,12 @@ these functions:
 @end example
 
 All lookup functions identify undefined properties with end-of-list
-(ie. @code{'()} in Scheme or @code{SCM_EOL} in C)
+(i.e. @code{'()} in Scheme or @code{SCM_EOL} in C)
 
 Properties are stored in two ways:
 @itemize @bullet
 @item mutable properties.
-grob properties that change from object to object. The storage of
+Grob properties that change from object to object. The storage of
 these are private to a grob. For example pointers to other grobs are
 always stored in the mutable properties.
 
@@ -386,7 +394,7 @@ always stored in the mutable properties.
 Grob properties that are shared across different grobs of the same
 type. The storage is shared, and hence it is read-only. Typically, this
 is used to store function callbacks, and default settings. They are
-initially read from from @file{scm/grob-description.scm}.
+initially read from @file{scm/grob-description.scm}.
 @end itemize
 
 You can change immutable grob properties with the \override syntax:
@@ -403,8 +411,7 @@ property list for stems, in effect overriding the setting from
         \property Voice.stem \revert #'direction
 @end example
 
-If you use this a lot, this gets old quickly. So we also have a
-shorthand,
+There is also a shorthand,
 
 @example
         \property Context.GrobType \set #'prop = #VAL
@@ -420,7 +427,7 @@ looks like
 @end example
 
 In this case, in every grob that satisfies @var{pred}, the grob property
- @var{sym} is set to @var{val} is done.  For example
+ @var{sym} is set to @var{val}.  For example
 
 @example
         \outputproperty
@@ -437,7 +444,7 @@ you tweak any setting of any grob.
 @node Grob interfaces
 @unnumberedsubsec Grob interfaces
 
-Grob properties form a namespace where you can set variables per
+Grob properties form a name space where you can set variables per
 object.  Each object however, may have multiple functions. For example,
 consider a dynamic symbol, such @code{\ff} (fortissimo). It is printed
 above or below the staff, it is a dynamic sign, and it is a kind of
@@ -473,7 +480,7 @@ to stack text into lines, using kerning, etc.
 @unnumberedsubsec Items and Spanners
 
 Grobs can also be distinguished in their role in the horizontal spacing.
-A lot of grobs define constraints on the spacing by their sizes. For
+Many grobs define constraints on the spacing by their sizes. For
 example, note heads, clefs, stems, and all other symbols with a fixed
 shape.  These grobs form a subtype called @code{Item}.
 
@@ -484,7 +491,7 @@ example, slur, beam, tie, etc. These grobs form a subtype called
 also the X-reference point of the spanner.
 
 Some items need special treatment for line breaking. For example, a
-clef is normally only printed at the start of a line (ie. after a line
+clef is normally only printed at the start of a line (i.e. after a line
 break).  To model this, `breakable' items (clef, key signature, bar lines,
 etc.) are copied twice. Then we have three versions of each breakable
 item: one version if there is no line break, one version that is printed
@@ -565,7 +572,7 @@ If you are interested in seeing how this information is stored, you
 can run with the @code{-f scm} option. The scheme expressions are then
 dumped in the output file.
 
-All visible, i.e. non-transparant, grobs have a callback to create a
+All visible, i.e. non-transparent, grobs have a callback to create a
 Molecule. The name of the property is @code{molecule-callback}, and its
 value should be a Scheme function taking one argument (the grob) and
 returning a Molecule.  Most molecule callbacks are written in C++, but
@@ -608,7 +615,7 @@ LilyPond only needs to know the dimension of glyph to be able to process
 them. This information is stored in font metric files. LilyPond can read
 two types of font-metrics: @TeX{} Font Metric files (TFM files) and
 Adobe Font Metric files (AFM files).  LilyPond will always try to load
-AFM files first they files are more versatile.
+AFM files first since they are more versatile.
 
 @defun ly-get-default-font gr
 This returns the default font for grob @var{gr}.
@@ -641,7 +648,8 @@ file is looked up using the lilypond search path.
 @end defun
 
 @defun dir?
-type predicate. A direction is a -1, 0 or 1.
+type predicate. A direction is a -1, 0 or 1, where -1 represents left or
+down and 1 represents right or up.
 @end defun
 
 @defun ly-number->string num
index 6bdddfb0c49ce463304dc62284fe7cefa7765a0e..bc6970952489d95c87cc287175da54155589ad9b 100644 (file)
@@ -1,3 +1,5 @@
+@c -*-texinfo-*-
+
 @node lilypond-book
 @chapter  lilypond-book
 
@@ -25,7 +27,7 @@ you get a document that mixes text and music.  lilypond-book will insert
 line width and font size definitions before @code{CONTENTS}, so the
 music samples will match the layout of your document.
 
-Very often, if you mix music and text, the music is often only a few
+Very often, if you mix music and text, the music is only a few
 notes or at most a few bars. This music should be as short as possible
 and not stretched to be aligned to the right margin. lilypond-book does
 this automatically if you don't use a @code{\score} block in
@@ -46,12 +48,12 @@ as follows:
 @end example
 
 In the texinfo version, bitmaps of the music are also generated, so you
-can also make a HTML document with embedded music.
+can make a HTML document with embedded music.
 
 
 @section TeXinfo reference
 
-Your markup the lilypond code like this:
+You specify the lilypond code like this:
 @example
 @@lilypond[options, go, here]
  YOUR LILYPOND CODE
@@ -61,8 +63,8 @@ Your markup the lilypond code like this:
 @end example
 
 
-@command{lilypond-book} knows the default margins, and a few papersizes.
-These commands should be in the beginning of the document:
+@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}
@@ -97,15 +99,17 @@ and its music:
 
 @section La@TeX{} reference
 
-Your markup the lilypond code like this:
+You specify the lilypond code like this:
 @example
 \begin[option, go, here]@{lilypond@}
  YOUR LILYPOND CODE
 \end@{lilypond@}
 @end example
 
+@example
+\lilypondfile[options, go,here]@{@var{filename}@}
+@end example
 or 
-
 @example
 \lilypond@{ YOUR LILYPOND CODE @}
 @end example
@@ -148,12 +152,12 @@ and its music:
 @table @code
 @item eps
 This will create the music as eps graphics and include it into the
-document with the @code{\includegraphics} command.  It works in Latex
-only.
+document with the @code{\includegraphics} command. It works in
+La@TeX{} only.
 
 This enables you to place music examples in the running text (and not in
 a separate paragraph). To avoid that La@TeX{} places the music on a line
-of its one, there should be no empty lines between the normal text and
+of its own, there should be no empty lines between the normal text and
 the lilypond environment. For inline music, you probably also need a
 smaller music font size (eg. 11 pt or 13 pt) 
 
@@ -214,7 +218,7 @@ of the code is used.
   The opposite of @code{singleline}: justify and break lines.
 @item fragment
 @item nofragment
-    Override @command{lilypond-book} autodetection of what type of code is in the
+    Override @command{lilypond-book} auto detection of what type of code is in the
     lilypond block, voice contents or complete code.
 @item printfilename
     Prints the file name before the music example. Useful in conjunction
@@ -226,7 +230,7 @@ with @code{\lilypondfile}.
 When you run @command{lilypond-book} it will generate lots of small
 files that Lilypond will process. So to avoid all the garbage in
 your source directory, you should either change to a temporary
-directory, or use the @code{--outdir} commandline options:
+directory, or use the @code{--outdir} command line options:
 
 @code{cd out && lilypond-book ../yourfile.tex}
 
@@ -237,7 +241,7 @@ For latex input, the file to give to latex has extension @file{.latex}.
 TeXinfo input will be written to a file with extension @file{.texi}.
 
 If you use @code{--outdir}, you should also @code{cd} to that directory
-before running LaTeX or makeinfo. This may seem a little kludgy, but
+before running LaTeX or makeinfo. This may seem a little kludgey, but
 both Latex and makeinfo expect picture files (the music) to be in the
 current working directory. Moreover, if you do this, LaTeX will not
 clutter you normal working directory  with output files.
@@ -246,7 +250,7 @@ clutter you normal working directory  with output files.
 @cindex lilypond-book and titling
 @cindex \header in LaTeX documents
 
-If you want to combine music that has titling in @code{\header}
+If you want to add titling from the @code{\header} section of the
 files, you should add  the following to the top of your LaTeX
 @example
 \input titledefs.tex
@@ -261,7 +265,7 @@ files, you should add  the following to the top of your LaTeX
 
 @item @option{-f}, @option{--format=}
     Specify the document type to process, @code{latex} or @code{texi}.
-    @command{lilypond-book} usually figure out this automatically.
+    @command{lilypond-book} usually figure this out automatically.
 @item --default-music-fontsize=@var{sz}pt
     Set the fontsize to use for lilypond if no fontsize is given
     as option.
@@ -290,7 +294,7 @@ files, you should add  the following to the top of your LaTeX
 
 @item --outname=@var{FILE}
     The name of La@TeX{} file to output. If this option  is not given,
-    the output name derived from the input name.
+    the output name is derived from the input name.
 @item --outdir=@var{DIR}
          place generated files in @var{DIR}.
 @item --version
@@ -310,11 +314,11 @@ files, you should add  the following to the top of your LaTeX
   
 The La@TeX{} \includeonly@{...@} command is ignored.
 
-The TeXinfo command @code{pagesize} is on the TODO list for Lilypond 1.4.
-But changing the linewidth in other ways will not give you a straight
+The TeXinfo command @code{pagesize} is on the TODO list for Lilypond 1.4,
+but changing the linewidth in other ways will not give you a straight
 right margin.
 
-Ignores almost all La@TeX{} commands that changes margins and linewidths.
+Almost all La@TeX{} commands that change margins and line widths are ignored.
 
 Since there is no finder's fee which doubles every year, there is no
 need to wait for the prize money to grow. So send a bug report today if