]> git.donarmstrong.com Git - lilypond.git/commitdiff
Rearranging, editing, clean-up.
authorGraham Percival <graham@percival-music.ca>
Thu, 26 May 2005 19:15:08 +0000 (19:15 +0000)
committerGraham Percival <graham@percival-music.ca>
Thu, 26 May 2005 19:15:08 +0000 (19:15 +0000)
ChangeLog
Documentation/user/advanced-notation.itely
Documentation/user/basic-notation.itely
Documentation/user/global.itely
Documentation/user/instrument-notation.itely
Documentation/user/introduction.itely
Documentation/user/invoking.itely
Documentation/user/lilypond.tely
Documentation/user/tutorial.itely

index 13dd890eecb79e3d7b20dbc471265ec8ab131b84..8f33f3fe5b719d3ee80a1d6f4bf2b3a8be623fd8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-05-26  Graham Percival  <gperlist@shaw.ca>
+
+       * Documentation/user/lilypond.tely, advanced-notation.itely,
+       basic-notation.itely, instrument-notation.itely, global.itely,
+       introduction.itely, tutorial.itely: rearranging, editing,
+       clean-up.
+
 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
        * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
index 66c1c4ece4d927ebb5418e4bbf71bfd58cd81de8..ebff0ec7d4e2b2a0da85dc7daeb52cdd9b3c369c 100644 (file)
@@ -18,7 +18,6 @@ This chapter deals with rarely-used and advanced notation.
 * Contemporary notation::       
 * Educational use::             
 * Automatic notation::          
-* Other::                       
 @end menu
 
 
@@ -201,6 +200,9 @@ c1^\markup { hi \bold there, is \italic anyone home? }
 @end lilypond
 
 @noindent
+See @ref{Overview of text markup commands} for a list of all
+commands.
+
 @code{\markup} is primarily used for @internalsref{TextScript}s,
 but it can also be used anywhere text is called in lilypond
 
@@ -270,6 +272,8 @@ effect.
 
 @seealso
 
+This manual: @ref{Overview of text markup commands}.
+
 Program reference: @internalsref{TextScript}.
 
 Init files: @file{scm/@/new@/-markup@/.scm}.
@@ -1443,6 +1447,7 @@ LilyPond is limited.
 
 @menu
 * Polymetric notation::         
+* Time administration::         
 * Clusters::                    
 * Special fermatas::            
 * Special noteheads::           
@@ -1579,6 +1584,53 @@ When using different time signatures in parallel, the spacing is
 aligned vertically, but bar lines distort the regular spacing.
 
 
+@node Time administration
+@subsection Time administration
+
+@cindex Time administration
+
+Time is administered by the @internalsref{Time_signature_engraver},
+which usually lives in the @internalsref{Score} context.  The
+bookkeeping deals with the following variables
+
+@table @code
+@item currentBarNumber
+The measure number.
+
+@item measureLength
+The length of the measures in the current time signature.  For a 4/4
+time this is@tie{}1, and for 6/8 it is 3/4.
+
+@item measurePosition
+The point within the measure where we currently are.  This quantity
+is reset to@tie{}0 whenever it exceeds @code{measureLength}.  When that
+happens, @code{currentBarNumber} is incremented.
+
+@item timing
+If set to true, the above variables are updated for every time
+step.  When set to false, the engraver stays in the current measure
+indefinitely.
+@end table
+
+Timing can be changed by setting any of these variables explicitly.
+In the next example, the 4/4 time signature is printed, but
+@code{measureLength} is set to 5/4.  After a while, the measure is
+shortened by 1/8, by setting @code{measurePosition} to 7/8 at 2/4
+in the measure, so the next bar line will fall at 2/4 + 3/8.  The
+3/8 arises because 5/4 normally has 10/8, but we have manually
+set the measure position to be 7/8 and 10/8 - 7/8 = 3/8.
+
+@lilypond[quote,raggedright,verbatim,relative,fragment]
+\set Score.measureLength = #(ly:make-moment 5 4)
+c1 c4
+c1 c4
+c4 c4
+\set Score.measurePosition = #(ly:make-moment 7 8)
+b8 b b
+c4 c1
+@end lilypond
+
+
 
 @node Clusters
 @subsection Clusters
@@ -2330,60 +2382,3 @@ accepting notes, it is not typeset.
 
 
 
-@node Other
-@section Other
-
-FIXME:
-It's the dreaded ``what on earth should I do with this stuff'' section!  Yay!
-
-@menu
-* Time administration::         
-@end menu
-
-
-@node Time administration
-@subsection Time administration
-
-Time is administered by the @internalsref{Time_signature_engraver},
-which usually lives in the @internalsref{Score} context.
-The bookkeeping deals with the following variables
-
-@table @code
-@item currentBarNumber
-The measure number.
-
-@item measureLength
-The length of the measures in the current time signature.  For a 4/4
-time this is@tie{}1, and for 6/8 it is 3/4.
-
-@item measurePosition
-The point within the measure where we currently are.  This quantity
-is reset to@tie{}0 whenever it exceeds @code{measureLength}.  When that
-happens, @code{currentBarNumber} is incremented.
-
-@item timing
-If set to true, the above variables are updated for every time
-step.  When set to false, the engraver stays in the current measure
-indefinitely.
-@end table
-
-Timing can be changed by setting any of these variables explicitly.
-In the next example, the 4/4 time signature is printed, but
-@code{measureLength} is set to 5/4.  After a while, the measure is
-shortened by 1/8, by setting @code{measurePosition} to 7/8 at 2/4
-in the measure, so the next bar line will fall at 2/4 + 3/8.  The
-3/8 arises because 5/4 normally has 10/8, but we have manually
-set the measure position to be 7/8 and 10/8 - 7/8 = 3/8.
-
-@lilypond[quote,raggedright,verbatim,relative,fragment]
-\set Score.measureLength = #(ly:make-moment 5 4)
-c1 c4
-c1 c4
-c4 c4
-\set Score.measurePosition = #(ly:make-moment 7 8)
-b8 b b
-c4 c1
-@end lilypond
-
-
-
index e047718541e709e846f29b6d68d942b37b2922d9..029352cf3dcb4af1ed60c017e99d703bda192289 100644 (file)
@@ -2716,7 +2716,7 @@ repeats to unfold repeats.
 @lilypond[quote,verbatim,fragment,linewidth=8.0\cm]
 \unfoldRepeats {
   \repeat tremolo 8 {c'32 e' }
-  \repeat percent 4 { c''8 d'' }
+  \repeat percent 2 { c''8 d'' }
   \repeat volta 2 {c'4 d' e' f'}
   \alternative {
     { g' a' a' g' }
index 5b3124af08b51c1cbeff7ef64f671ffbb118be71..6c01f05dc199c6d9204984a2ee9aba59c1243881 100644 (file)
@@ -13,7 +13,6 @@ This is a placeholder until I can write a nice intro for this chapter.
 @menu
 * Paper output::                
 * Sound output::                
-* LilyPond files::              
 @end menu
 
 
@@ -1023,148 +1022,3 @@ If the selected instrument does not exactly match an instrument from
 the list of MIDI instruments, the Grand Piano (@code{"acoustic grand"})
 instrument is used.
 
-
-
-@node LilyPond files
-@section LilyPond files
-
-@menu
-* File structure::              
-* Including LilyPond files::    
-@end menu
-
-
-@node File structure
-@subsection File structure
-
-The major part of this manual is concerned with entering various
-forms of music in LilyPond.  However, many music expressions are not
-valid input on their own, for example, a @code{.ly} file containing
-only a note
-@example
-c'4
-@end example
-
-@noindent
-will result in a parsing error.  Instead, music should be inside other
-expressions, which may be put in a file by themselves.  Such
-expressions are called toplevel expressions.  This section enumerates
-them all.
-
-A @code{.ly} file contains any number of toplevel expressions, where a
-toplevel expression is one of the following
-
-@itemize @bullet
-@item
-An output definition, such as @code{\paper}, @code{\midi}, and
-@code{\layout}.  Such a definition at the toplevel changes the default
-settings for the block entered.
-
-@item
-A @code{\header} block.  This sets the global header block.  This
-is the block containing the definitions for book-wide settings, like
-composer, title, etc. 
-
-@item
-An @code{\addquote} statement.  See @ref{Quoting other voices}
-for more information.
-
-@item
-A @code{\score} block.  This score will be collected with other
-toplevel scores, and combined as a single @code{\book}.
-
-This behavior can be changed by setting the variable
-@code{toplevel-score-handler} at toplevel.  The default handler is
-defined in the init file @file{scm/@/lily@/.scm}.
-
-@item
-A @code{\book} block logically combines multiple movements
-(i.e., multiple @code{\score} blocks) in one document.  A number of
-@code{\scores} creates a single output file, where all movement are
-concatenated.
-
-This behavior can be changed by setting the variable
-@code{toplevel-book-handler} at toplevel.  The default handler is
-defined in the init file @file{scm/@/lily@/.scm}.
-
-@item
-A compound music expression, such as
-@example
-@{ c'4 d' e'2 @}
-@end example
-
-This will add the piece in a @code{\score} and format it in a
-single book together with all other toplevel @code{\score}s and music
-expressions.
-This behavior can be changed by setting the variable
-@code{toplevel-music-handler} at toplevel.  The default handler is
-defined in the init file @file{scm/@/lily@/.scm}.
-
-@item
-A markup text, a verse for example
-@example
-\markup @{
-   2.  The first line verse two.
-@}
-@end example
-
-Markup texts are rendered above, between or below the scores or music
-expressions, wherever they appear.
-
-@item
-An indentifier, such as
-@example
-foo = @{ c4 d e d @}
-@end example
-
-This can be used later on in the file by entering @code{\foo}.  The
-name of an identifier should have alphabetic characters only; no
-numbers, underscores or dashes.
-
-@end itemize
-
-The following example shows three things that may be entered at
-toplevel
-
-@example
-\layout @{
-  % movements are non-justified by default    
-  raggedright = ##t
-@}
-
-\header @{
-   title = "Do-re-mi"
-@}
-   
-@{ c'4 d' e2 @}
-@end example
-
-
-At any point in a file, any of the following lexical instructions can
-be entered:
-
-@itemize @bullet
-@item @code{\version}
-@item @code{\include}
-@item @code{\renameinput}
-@end itemize 
-
-
-@node Including LilyPond files
-@subsection Including LilyPond files
-
-@cindex @code{\include}
-@cindex including files
-
-A large project may be split up into separate files.  To refer to another
-file, use
-
-@example
-\include "otherfile.ly"
-@end example
-
-For example, you may write separate files for each instrument part and
-create a ``full score'' file which brings together the individual
-instrument files.
-
index 7324a87ceabc30e7b09b39672c40a33e9f5fce50..0591e8a87236e4d3498ca82985c3c5e85ec25aa9 100644 (file)
@@ -830,50 +830,42 @@ indicated with a horizontal line centered between a syllable and the
 next one.  Such a line is called an extender line, and it is entered as
 `@code{__}'.
 
-@ignore
-FIXME: check that this compiles and displays correctly.  I don't want
-to commit this part blindly.
-
 In tighly engraved music, hyphens can be removed.  In some languages
 (e.g. German and Hungarian), hyphens should not disappear, since
 spelling depends on hyphenation.  For that purpose, hyphens can be
 forced to remain by overriding @code{minimum-length} of
 the @code{LyricHyphen} grob.
 
-(code from 2.2)
+@lilypond[quote,verbatim,raggedright]
 \score {
-<<    \notes \new Staff \relative c'' { \time 1/4 c16[ c c  c]
-\time 1/4
-c16[ c c c]
-\time 1/4
-c16[ c c c]
-
-}
-    \lyrics \new Lyrics \with {
-       % Otherwise lyrics are so far apart that hyphens don't disappear
-       \override SeparationItem #'padding = #0.0
-       }{ bla -- bla -- bla -- bla --
-          bla -- bla -- bla -- bla --
-
-          \override LyricHyphen  #'minimum-length = #0.7
-          \override LyricHyphen  #'spacing-procedure =
-                  #Hyphen_spanner::set_spacing_rods
-
-          bla -- bla -- bla -- bla 
-       }>>
-    \paper   {
-       indent = 0.0 \cm
-       linewidth = 3.4 \cm
-
-       \context {
-           \StaffContext \remove "Time_signature_engraver"
-       }
-       
-    }
-      
-}
-@end ignore
-
+<<
+  \new Staff \relative c'' {
+    \time 1/4 c16 c c c c16 c c c c16 c c c
+  } % closes notes
+  \lyricmode { \new Lyrics
+    \with {
+    \override SeparationItem #'padding = #0.0
+      % Otherwise lyrics are so far apart that hyphens don't disappear
+    } % closes with
+    {
+      An -- ti -- cons -- ti --
+      tu -- tion -- nel -- le --
+      \override LyricHyphen  #'minimum-length = #0.7
+      \override LyricHyphen  #'spacing-procedure =
+        #Hyphen_spanner::set_spacing_rods
+      men -- taire -- ment. ouf~!
+    } % closes lyrics
+  } %closes lyricmode
+>>
+\layout   {
+  indent = 0.0 \cm
+  linewidth = 3.4 \cm
+  \context {
+    \Staff \remove "Time_signature_engraver"
+  } % closes context
+} % closes layout
+} % closes score
+@end lilypond
 
 @seealso
 
index 32fe5161275d4a9f39d23cbfdde590058af9952b..fdae1d65dc2a63d34fd1a58bb9ae6bf9e3c0f17c 100644 (file)
@@ -259,9 +259,6 @@ appearance of objects.  In the following example, the rule which note
 head objects are used to produce their symbol is changed during the music
 fragment.
 
-@c FIXME: this example has errors:
-@c    programming error: Grob `NoteHead' has no interface for property `text'
-@c    Continuing; crossing fingers
 @lilypond[quote,raggedright]
 #(define (mc-squared grob orig current)
   (let ((interfaces (ly:grob-property grob 'interfaces))
index 39cb70009f0dcc299b7f987f7df52be7b5a6b0f4..44a4950d66f5ffd3c92583b9674c0c1e88886459 100644 (file)
@@ -6,11 +6,13 @@ This chapter details the technicalities of running LilyPond.
 
 
 @menu
-* Invoking lilypond::
-* Error messages::
-* Updating files with convert-ly::
-* Reporting bugs::
-* Editor support::
+* Invoking lilypond::           
+* Error messages::              
+* Updating files with convert-ly::  
+* Reporting bugs::              
+* Editor support::              
+* File structure::              
+* Including LilyPond files::    
 @end menu
 
 @node Invoking lilypond
@@ -489,18 +491,18 @@ specified.
 
 @ignore
 Copy and paste from CVS, last updated
-Feb 14, 2005
+May 26, 2005
 
 http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/lilypond/lily-bugs/bugs/convert-ly.txt?rev=HEAD&content-type=text/plain
 @end ignore
 @verbatim
 
-There are a few things that the convert-ly cannot handle.  Here's a
-list of limitations that the community has complained about.
+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
-structure that doesn't allow to smoothly implement all needed changes.
-Thus this is just a wishlist, placed here for reference.
+This bug report structure has been chosen because convert-ly has a structure that doesn't
+allow to smoothly implement all needed changes. Thus this is just a wishlist, placed
+here for reference.
 
 1.6->2.0:
  Doesn't always convert figured bass correctly, specifically things like {< >}. Mats' comment on working around this:
@@ -508,16 +510,36 @@ Thus this is just a wishlist, placed here for reference.
    on it, I first replaced all occurencies of '{<' to some dummy like '{#'
    and similarly I replaced '>}' with '&}'. After the conversion, I could
    then change back from '{ #' to '{ <' and from '& }' to '> }'.
- Doesn't convert all text markup correctly. Only very simple cases are fixed.
+ 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")
+   This will incorrectly be converted into
+   -\markup{{\bold italic} "string"}
+   instead of the correct
+   -\markup{\bold \italic "string"}
 2.0->2.2:
  Doesn't handle \partcombine
  Doesn't do \addlyrics => \lyricsto, this breaks some scores with multiple stanzas.
+2.0->2.4:
+ \magnify isn't changed to \fontsize.
+    - \magnify #m => \fontsize #f, where f = 6ln(m)/ln(2)
+ remove-tag isn't changed.
+    - \applymusic #(remove-tag '. . .) => \keepWithTag #'. . .
+ firstpagenumber isn't changed.
+    - firstpagenumber no => printfirstpagenumber = ##f
+ Line breaks in header strings aren't converted.
+    - \\\\  as line break in \header strings => \markup \center-align <
+      "First Line" "Second Line" >
+ Crescendo and decrescendo terminators aren't converted.
+    - \rced => \!
+    - \rc => \!
 2.2->2.4:
  \turnOff (used in \set Staff.VoltaBracket = \turnOff) is not properly converted.
 2.4.2->2.5.9
  \markup{ \center-align <{ ... }> } should be converted to:
  \markup{ \center-align {\line { ... }} }
  but now, \line is missing.
+
 @end verbatim
 
 
@@ -550,7 +572,7 @@ Here is an example of a good bug report:
 It seems that placement of accidentals is broken.  In the
 following example, the accidental touches the note head.
 
-Using Mac OSX 10.3.5, fink package lilypond-unstable
+Using Mac OSX 10.3.7, fink package lilypond-devel
 
 \version "2.5.18"
 \relative c''@{
@@ -617,3 +639,137 @@ All these editors can be made to jump into the input file to the source
 of a symbol in the graphical output.  See @ref{Point and click}.
 
 
+@node File structure
+@section File structure
+
+The major part of this manual is concerned with entering various
+forms of music in LilyPond.  However, many music expressions are not
+valid input on their own, for example, a @code{.ly} file containing
+only a note
+@example
+c'4
+@end example
+
+@noindent
+will result in a parsing error.  Instead, music should be inside other
+expressions, which may be put in a file by themselves.  Such
+expressions are called toplevel expressions.  This section enumerates
+them all.
+
+A @code{.ly} file contains any number of toplevel expressions, where a
+toplevel expression is one of the following
+
+@itemize @bullet
+@item
+An output definition, such as @code{\paper}, @code{\midi}, and
+@code{\layout}.  Such a definition at the toplevel changes the default
+settings for the block entered.
+
+@item
+A @code{\header} block.  This sets the global header block.  This
+is the block containing the definitions for book-wide settings, like
+composer, title, etc. 
+
+@item
+An @code{\addquote} statement.  See @ref{Quoting other voices}
+for more information.
+
+@item
+A @code{\score} block.  This score will be collected with other
+toplevel scores, and combined as a single @code{\book}.
+
+This behavior can be changed by setting the variable
+@code{toplevel-score-handler} at toplevel.  The default handler is
+defined in the init file @file{scm/@/lily@/.scm}.
+
+@item
+A @code{\book} block logically combines multiple movements
+(i.e., multiple @code{\score} blocks) in one document.  A number of
+@code{\scores} creates a single output file, where all movement are
+concatenated.
+
+This behavior can be changed by setting the variable
+@code{toplevel-book-handler} at toplevel.  The default handler is
+defined in the init file @file{scm/@/lily@/.scm}.
+
+@item
+A compound music expression, such as
+@example
+@{ c'4 d' e'2 @}
+@end example
+
+This will add the piece in a @code{\score} and format it in a
+single book together with all other toplevel @code{\score}s and music
+expressions.
+This behavior can be changed by setting the variable
+@code{toplevel-music-handler} at toplevel.  The default handler is
+defined in the init file @file{scm/@/lily@/.scm}.
+
+@item
+A markup text, a verse for example
+@example
+\markup @{
+   2.  The first line verse two.
+@}
+@end example
+
+Markup texts are rendered above, between or below the scores or music
+expressions, wherever they appear.
+
+@item
+An indentifier, such as
+@example
+foo = @{ c4 d e d @}
+@end example
+
+This can be used later on in the file by entering @code{\foo}.  The
+name of an identifier should have alphabetic characters only; no
+numbers, underscores or dashes.
+
+@end itemize
+
+The following example shows three things that may be entered at
+toplevel
+
+@example
+\layout @{
+  % movements are non-justified by default    
+  raggedright = ##t
+@}
+
+\header @{
+   title = "Do-re-mi"
+@}
+   
+@{ c'4 d' e2 @}
+@end example
+
+
+At any point in a file, any of the following lexical instructions can
+be entered:
+
+@itemize @bullet
+@item @code{\version}
+@item @code{\include}
+@item @code{\renameinput}
+@end itemize 
+
+
+@node Including LilyPond files
+@section Including LilyPond files
+
+@cindex @code{\include}
+@cindex including files
+
+A large project may be split up into separate files.  To refer to another
+file, use
+
+@example
+\include "otherfile.ly"
+@end example
+
+For example, you may write separate files for each instrument part and
+create a ``full score'' file which brings together the individual
+instrument files.
+
index 4eac0037e5b61ab3f1d7a5aa2bbac9a24681363b..0b0da3f656ac1bff63adc844ccb1634b58103298 100644 (file)
@@ -5,16 +5,21 @@
 @afourpaper
 @end iftex
 
+@dircategory GNU music project
+@direntry
+
 @ignore
+(I think)
+Current version of the manual: 2.5.18
+Please update this whenever you run convert-ly on the docs.
+
+%%%%%
+
 Distributions will want to install lilypond.info in postinstall, doing:
 
     install-info --info-dir=/usr/share/info out/lilypond.info
     
-@end ignore
-
-@dircategory GNU music project
-@direntry
-@ignore
+%%%%%
 
   * Prepend GNU for dir, must be unique.
   
index 17ce243bed3438fe9f7ae2f4ea93e864bd442447..6064d2517c2beb5c6ac461c624b821215f564b1d 100644 (file)
@@ -213,7 +213,6 @@ example, you could open an xterm and execute
 @code{joe}.@footnote{There are macro files for VIM addicts, and there
 is a @code{LilyPond-mode} for Emacs addicts.  If they have not been
 installed already, refer to
-@c FIXME lousy reference.
 the file @file{INSTALL.txt}.}  In your text editor, enter the following
 input and save the file as @file{test.ly}