]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/tutorial.itely
Proofreading for tutorial; thanks Mats.
[lilypond.git] / Documentation / user / tutorial.itely
index 8a52c0c6ba8aaf27fbd90a690137f6accad916ce..c0f622f7897c50bce49b446a8009d6a06b470c21 100644 (file)
@@ -48,12 +48,14 @@ picture in the HTML version of this manual, you will see the exact
 LilyPond input that was used to generate that image.
 Try it on this image
 
-@lilypond[fragment,quote,ragged-right,relative=2]
-c-\markup { \bold \huge { Click here.  } }
+@c no verbatim here
+@lilypond[quote,ragged-right]
+\relative c'' {
+  c-\markup { \bold \huge { Click here.  } }
+}
 @end lilypond
 
-By cutting and pasting everything from the @qq{Start cut-&-pastable-section}
-to the end of the file, you have a
+By cutting and pasting everything in the @qq{ly snippet} section, you have a
 starting template for experiments.  If you like learning in this way,
 you will probably want to print out or bookmark the
 @ref{Cheat sheet}, which is a table listing of the most common
@@ -62,11 +64,10 @@ commands for quick reference.
 
 @menu
 * First steps::                 
-* Notation for one note at once FIXME name::  
+* Single staff notation::       
 * Multiple notes at once::      
 * Songs::                       
 * Final touches::               
-* FIXME merge with chapter 3::  
 @end menu
 
 
@@ -99,6 +100,7 @@ notation.  For example, if we write
 @noindent
 the result looks like this
 
+@c  in this case we don't want verbatim
 @lilypond[quote,ragged-right]
 {
   c' e' g' e'
@@ -106,7 +108,7 @@ the result looks like this
 @end lilypond
 
 @strong{Warning:} Every piece of LilyPond input needs to have @strong{@{ curly
-braces @}} placed around the input.  The braces should be also be
+braces @}} placed around the input.  The braces should also be
 surrounded by a space unless they are at the beginning or end of a
 line to avoid ambiguities.  These may be omitted in some examples in this
 manual, but don't forget them in your own music!
@@ -199,7 +201,7 @@ Converting to `test.pdf'...
 @noindent
 The result is the file @file{test.pdf} which you can print or view
 with the standard facilities of your operating system.@footnote{If
-your system does not have any tools installed, you can try
+your system does not have any such tools installed, you can try
 @uref{http://@/www@/.cs@/.wisc@/.edu/@/~ghost/,Ghostscript}, a freely
 available package for viewing and printing PDF and PostScript files.}
 
@@ -482,11 +484,11 @@ a small documentation example and paste it inside a longer piece
 of your own.
 
 
-@node Notation for one note at once FIXME name
-@section Notation for one note at once FIXME name
+@node Single staff notation
+@section Single staff notation
 
-This section introduces common notation that is used for a single
-staff.
+This section introduces common notation that is used for one voice
+on one staff.
 
 @menu
 * Relative note names::         
@@ -690,9 +692,8 @@ see @ref{Phrasing slurs}.
 @cindex staccato
 @subheading Articulations
 
-@c  FIXME: change to @rglos once the term is added  (articulations)
-Common articulations can be added to a note using a dash (@samp{-}) and a
-single character:
+Common @rglos{articulations} can be added to a note using a dash @samp{-}
+and a single character:
 
 @lilypond[quote,ragged-right,verbatim,fragment,relative=2]
 c-. c-- c-> c-^ c-+ c-_
@@ -787,10 +788,9 @@ see @ref{Manual beams}.
 @cindex partial measure
 @subheading Partial measure
 
-@c FIXME: glossary "anacrusis".
-A pickup (or @q{anacrusis}) is entered with the keyword @code{\partial}.  It
-is followed by a duration: @code{\partial 4} is a quarter note pickup
-and @code{\partial 8} an eighth note.
+A pickup (or @rglos{anacrusis}) is entered with the keyword
+@code{\partial}.  It is followed by a duration: @code{\partial 4} is
+a quarter note pickup and @code{\partial 8} an eighth note.
 
 @lilypond[quote,ragged-right,verbatim,fragment,relative=2]
 \partial 8
@@ -1176,10 +1176,6 @@ line}.  It is entered as two underscores @code{__}:
 Similarly, hyphens between words can be entered as two dashes,
 resulting in a centered hyphen between two syllables
 
-@example
-A -- le gri -- a
-@end example
-
 @c no ragged-right here because otherwise the hypens get lost.
 @lilypond[quote,verbatim]
 <<
@@ -1187,7 +1183,7 @@ A -- le gri -- a
     \time 2/4
     f4 f c c
   }
-  \addlyrics { A -- le gri -- a }
+  \addlyrics { A -- le -- gri -- a }
 >>
 @end lilypond
 
@@ -1267,6 +1263,7 @@ of the manual.
 * Version number::              
 * Adding titles::               
 * Absolute note names::         
+* Organizing pieces with identifiers::  
 * After the tutorial::          
 * How to read the manual::      
 @end menu
@@ -1389,91 +1386,45 @@ However, absolute mode is useful for music which has large intervals, and
 is extremely useful for computer-generated LilyPond files.
 
 
-@node After the tutorial
-@subsection After the tutorial
-
-After finishing the tutorial, you should probably try writing a
-piece or two.  Start with one of the @ref{Example templates} and
-add notes.  If you need any notation that was not covered in the
-tutorial, look at the Notation Reference, starting with
-@ref{Basic notation}.  If you want to write for an instrument
-ensemble which is not covered in the @ref{Example templates},
-take a look at @ref{Extending the templates}.
-
-Once you have written a few short pieces, read the rest of
-the Learning Manual (chapters 3-5).  There's nothing wrong
-with reading them now, of course!  However, the rest of the
-Learning Manual assumes that you are familiar with
-LilyPond input.  You may wish to skim these chapters right
-now, and come back to them after you have more experience.
-
-
-@node How to read the manual
-@subsection How to read the manual
-
-As we saw in @ref{How to read the tutorial}, many examples in the
-tutorial omitted a @code{\relative c'' @{ ... @}} around the printed
-example.
-
-In the rest of the manual, we are much more lax about the
-printed examples: sometimes they may have omitted a
-@code{\relative c'' @{ ... @}}, but in other times a different initial
-pitch may be used (such as @code{c'} or @code{c,,}), and in some cases
-the whole example is in absolute note mode!  However, ambiguities like
-this only exist where the pitches are not important.  In any example
-where the pitch matters, we have explicitly stated our @code{\relative}
-our our absolute-mode @code{@{ @}}.
-
-If you are still confused about the exact LilyPond input that was
-used in an example, read the HTML version (if you are not already doing
-so) and click on the picture of the music.  This will display the exact
-input that LilyPond used to generate this manual.
-
-
-
-@c zz
-
-@node FIXME merge with chapter 3
-@section FIXME merge with chapter 3
-
-@menu
-* Organizing larger pieces::    
-* An orchestral part::          
-@end menu
-
-
-
-@node Organizing larger pieces
-@subsection Organizing larger pieces
+@node Organizing pieces with identifiers
+@subsection Organizing pieces with identifiers
 
 When all of the elements discussed earlier are combined to produce
-larger files, the @code{\score} blocks get a lot bigger because the
-music expressions are longer, and, in the case of polyphonic music,
-more deeply nested.  Such large expressions can become unwieldy.
+larger files, the music expressions get a lot bigger.  In polyphonic
+music with many staves, the input files can become very confusing.  We can
+reduce this confusion by using @emph{identifiers}.
 
-By using variables, also known as identifiers, it is possible to break
-up complex music expressions.  An identifier is assigned as follows
+Identifiers (also known as variables or macros), we can break up
+complex music expressions.  An identifier is assigned as follows
 
 @example
 namedMusic = @{ @dots{} @}
 @end example
 
-@noindent
-The contents of the music expression @code{namedMusic}, can be used
-later by preceding the name with a backslash, i.e., @code{\namedMusic}.
-In the next example, a two-note motive is repeated two times by using
-variable substitution
-
-@lilypond[quote,ragged-right,verbatim,nofragment]
-seufzer = {
-  e'4( dis'4)
+The contents of the music expression @code{namedMusic} can be used
+later by placing a backslash in front of the name
+(@code{\namedMusic}, just like a normal LilyPond command).  Identifiers
+must be defined @emph{before} the main music expression.
+
+@lilypond[quote,verbatim,ragged-right]
+violin = \new Staff { \relative c'' {
+  a4 b c b
+}}
+cello = \new Staff { \relative c {
+  \clef bass
+  e2 d
+}}
+{
+  <<
+    \violin
+    \cello
+  >>
 }
-{ \seufzer \seufzer }
 @end lilypond
 
+@noindent
 The name of an identifier should have alphabetic characters only: no
-numbers, underscores, or dashes.  The assignment should be outside of
-running music.
+numbers, underscores, or dashes.
 
 It is possible to use variables for many other types of objects in the
 input.  For example,
@@ -1485,7 +1436,7 @@ aFivePaper = \paper @{ paperheight = 21.0 \cm @}
 @end example
 
 Depending on its contents, the identifier can be used in different
-places.  The following example uses the above variables
+places.  The following example uses the above variables:
 
 @example
 \paper @{
@@ -1495,137 +1446,44 @@ places.  The following example uses the above variables
 @{ c4^\name @}
 @end example
 
-More information on the possible uses of identifiers is given in the
-technical manual, in @ref{Input variables and Scheme}.
-@c fixme: the ref is too technical.
-
-
-@node An orchestral part
-@subsection An orchestral part
-
-In orchestral music, all notes are printed twice.  Once in a part for
-the musicians, and once in a full score for the conductor.  Identifiers can
-be used to avoid double work.  The music is entered once, and stored in
-a variable.  The contents of that variable is then used to generate
-both the part and the full score.
-
-It is convenient to define the notes in a special file.  For example,
-suppose that the file @file{horn-music.ly} contains the following part
-of a horn/@/bassoon duo
-
-@example
-hornNotes = \relative c @{
-  \time 2/4
-  r4 f8 a cis4 f e d
-@}
-@end example
-
-@noindent
-Then, an individual part is made by putting the following in a file
-
-@example
-\include "horn-music.ly"
-\header @{
-  instrument = "Horn in F"
-@}
-
-@{
- \transpose f c' \hornNotes
-@}
-@end example
-
-The line
-
-@example
-\include "horn-music.ly"
-@end example
 
-@noindent
-substitutes the contents of @file{horn-music.ly} at this position in
-the file, so @code{hornNotes} is defined afterwards.  The command
-@code{\transpose f@tie{}c'} indicates that the argument, being
-@code{\hornNotes}, should be transposed by a fifth upwards.  Sounding
-@samp{f} is denoted by notated @code{c'}, which corresponds with the
-tuning of a normal French Horn in@tie{}F.  The transposition can be seen
-in the following output
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
-  \time 2/4
-  r4 f8 a cis4 f e d
-}
-@end lilypond
-
-In ensemble pieces, one of the voices often does not play for many
-measures.  This is denoted by a special rest, the multi-measure
-rest.  It is entered with a capital @samp{R} followed by a duration
-(@code{1}@tie{}for a whole note, @code{2}@tie{}for a half note,
-etc.).  By multiplying the
-duration, longer rests can be constructed.  For example, this rest
-takes 3@tie{}measures in 2/4 time
-
-@example
-R2*3
-@end example
-
-When printing the part, multi-rests
-must be condensed.  This is done by setting a run-time variable
-
-@example
-\set Score.skipBars = ##t
-@end example
-
-@noindent
-This command sets the property @code{skipBars} in the
-@code{Score} context to true (@code{##t}).  Prepending the rest and
-this option to the music above, leads to the following result
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
-  \time 2/4
-  \set Score.skipBars = ##t
-  R2*3
-  r4 f8 a cis4 f e d
-}
-@end lilypond
-
-
-The score is made by combining all of the music together.  Assuming
-that the other voice is in @code{bassoonNotes} in the file
-@file{bassoon-music.ly}, a score is made with
-
-@example
-\include "bassoon-music.ly"
-\include "horn-music.ly"
+@node After the tutorial
+@subsection After the tutorial
 
-<<
-  \new Staff \hornNotes
-  \new Staff \bassoonNotes
->>
-@end example
+After finishing the tutorial, you should probably try writing a
+piece or two.  Start with one of the @ref{Templates} and
+add notes.  If you need any notation that was not covered in the
+tutorial, look at the Notation Reference, starting with
+@ref{Basic notation}.  If you want to write for an instrument
+ensemble which is not covered in the templates,
+take a look at @ref{Extending the templates}.
 
-@noindent
-leading to
+Once you have written a few short pieces, read the rest of
+the Learning Manual (chapters 3-5).  There's nothing wrong
+with reading them now, of course!  However, the rest of the
+Learning Manual assumes that you are familiar with
+LilyPond input.  You may wish to skim these chapters right
+now, and come back to them after you have more experience.
 
-@lilypond[quote,ragged-right]
-\relative c <<
-  \new Staff {
-    \time 2/4 R2*3
-    r4 f8 a cis4 f e d
-  }
-  \new Staff {
-    \clef bass
-    r4 d,8 f | gis4 c | b bes |
-    a8 e f4 | g d | gis f
-  }
->>
-@end lilypond
 
-More in-depth information on preparing parts and scores can be found
-in the notation manual; see @ref{Orchestral music}.
+@node How to read the manual
+@subsection How to read the manual
 
-Setting run-time variables (@q{properties}) is discussed in
-@ref{Changing context properties on the fly}.
+As we saw in @ref{How to read the tutorial}, many examples in the
+tutorial omitted a @code{\relative c'' @{ ... @}} around the printed
+example.
 
+In the rest of the manual, we are much more lax about the
+printed examples: sometimes they may have omitted a
+@code{\relative c'' @{ ... @}}, but in other times a different initial
+pitch may be used (such as @code{c'} or @code{c,,}), and in some cases
+the whole example is in absolute note mode!  However, ambiguities like
+this only exist where the pitches are not important.  In any example
+where the pitch matters, we have explicitly stated our @code{\relative}
+our our absolute-mode @code{@{ @}}.
 
+If you are still confused about the exact LilyPond input that was
+used in an example, read the HTML version (if you are not already doing
+so) and click on the picture of the music.  This will display the exact
+input that LilyPond used to generate this manual.