@c compiling/viewing (emacs?)
@c * where to go from First steps+More basics?
+@c wherever possible, do not include index entries here; the
+@c index should point to stuff in the reference manual. -gp
+
@c Your first LilyPond score in 10 minutes?
@node Tutorial
@section First steps
The first example demonstrates how to enter the most elementary piece
-of music, a scale. A note can be entered by typing its name, from
-@samp{a} through @samp{g}. So, if you enter
+of music, a @rglos{scale}. A @rglos{note} can be entered by typing its
+name, from @samp{a} through @samp{g}. So, if you enter
@example
c d e f g a b
c d e f g a b
@end lilypond
-The duration of a note is specified by a number after the note name.
-@samp{1} for a @rglos{whole note}, @samp{2} for a @rglos{half note},
+The @rglos{duration} of a note is specified by a number after the note
+name. @samp{1} for a @rglos{whole note}, @samp{2} for a @rglos{half note},
@samp{4} for a @rglos{quarter note} and so on
@example
a1 a2 a4 a16 a32
@end example
-@c FIXME: have NOTIME also remove Score.timing?
@lilypond[fragment,quote,notime,relative=2]
-\set Score.timing = ##f
\set Staff.autoBeaming = ##f
{ a1 a2 a4 a16 a32 s16_" " }
@end lilypond
-If you do not specify a @rglos{duration}, the duration last entered is
-used for the next notes. The duration of the first note in input
-defaults to a quarter
+If you do not specify a duration, the duration last entered is used
+for the next notes. The duration of the first note in input defaults
+to a quarter
@example
a a8 a a2 a
@end example
@lilypond[fragment,quote,notime,relative=2]
-\set Score.timing = ##f
{ a a8 a a2 a s16_" " }
@end lilypond
-Rests are entered just like notes, but with the name @samp{r}
+A @rglos{rest} is entered just like a note, but with the name @samp{r}
-@cindex rests
@example
r2 r4 r8 r16
@end example
@lilypond[fragment,quote,notime]
-\set Score.timing = ##f
r2 r4 r8 r16 s16_" "
@end lilypond
@end example
@lilypond[fragment,quote,notime,relative=1]
-\set Score.timing = ##f
{ a2. a4 a8. a16 s16_" " }
@end lilypond
-The @rglos{meter} (or @rglos{time signature}) can be set with the
-@code{\time} command
+The (or @rglos{time signature}) can be set with the @code{\time}
+command
@example
\time 3/4
@end example
@lilypond[fragment,quote,notime]
-\set Score.timing = ##f
\clef treble
s4_" "
\clef bass
@c cheesy title to avoid clash with chapter name.
-In the last section we explained what kind of things you could enter
+In the last section we explained what kind of things you can enter
in a LilyPond file. In this section we will explain what commands to
run and how to view or print the output. If you have not used
LilyPond before, want to test your setup, or want to run an example
@example
lilypond test.ly
-GNU LilyPond 2.5.0
+GNU LilyPond 2.6.0
Processing `test.ly'
Parsing...
Interpreting music... [1]
@cindex dvips
@cindex dvilj
@cindex DVI driver
-} which you can print or with the standard facilities of your
+} 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
@uref{http://@/www@/.cs@/.wisc@/.edu/@/~ghost/,Ghostscript}, a freely
Adding all alterations explicitly might require a little more effort
when typing, but the advantage is that transposing is easier, and
accidentals can be printed according to different conventions. See
-@ref{Accidentals}, for some examples how accidentals can be printed
+@ref{Automatic accidentals}, for some examples how accidentals can be printed
according to different rules.
@quotation
@table @asis
@item Accidentals
-see @ref{Accidentals}.
+see @ref{Automatic accidentals}.
@item Key signature
see @ref{Key signature}.
@section Entering ties
@cindex tie
-A tie is created by appending a tilde @samp{~} to the first note
-being tied
+A @rglos{tie} is created by appending a tilde @samp{~} to the first
+note being tied
@lilypond[quote,notime,fragment,verbatim,relative=3]
g4~ g a2~ a4
@section Automatic and manual beams
@cindex beams, by hand
-Beams are drawn automatically
+All @rglos{beam}s are drawn automatically
@lilypond[quote,fragment,relative=2,verbatim]
a8 ais d es r d
a8[ ais] d[ es r d]
@end lilypond
-For more information on beams, see @ref{Beaming}.
+For more information on beams, see @ref{Manual beams}.
Here are key signatures, accidentals and ties in action
There are some interesting points to note in this example. Bar lines
and beams are drawn automatically. Line breaks are calculated
automatically; it does not matter where the line breaks are in the
-source file. Finally, the order in which time, key and clef changes
+source file. Finally, the order in which time, key, and clef changes
are entered is not relevant: in the printout, these are ordered
according to standard notation conventions.
@c but we'd need to remove the ', from \key and tie
To raise a note by an octave, add a high quote @code{'} (apostrophe) to
the note name, to lower a note one octave, add a `low quote' @code{,}
-(a comma). Middle C is @code{c'}
+(comma). Middle C is @code{c'}
@lilypond[quote,notime,fragment,verbatim]
c'4 c'' c''' \clef bass c c,
@end lilypond
@noindent
-The last example shows that music in a high register needs lots of quotes.
+This example shows that music in a high register needs lots of quotes.
This makes the input less readable, and it is a source of errors. The
solution is to use `relative octave' mode. This is the
most convenient way to copy existing music.
-In relative mode, a note without octavation quotes (i.e. the @code{'}
-or @code{,} after a note) is chosen so it it is closest to the
+In relative mode, a note without octavation quotes (i.e. the @code{'}
+or @code{,} after a note) is chosen so that it is closest to the
previous one. For example, @samp{c f} goes up while @samp{c g} goes
-down
+down.
To use relative mode, add @code{\relative} before the piece of
music. The first note is taken relative to the middle C
@c no , for this sentence
-(i.e. @code{c'})
+(i.e., @code{c'})
relative to the previous one, and changing the octave of a single note
shifts all following notes an octave up or down.
-For more information on Relative octaves see @ref{Relative octaves},
+For more information on relative octaves see @ref{Relative octaves},
and @ref{Octave check}.
In input files, music is represent by so-called @emph{music
-expression}. We have already seen in the previous examples;
+expression}s. We have already seen some in the previous examples;
a single note is a music expression
@lilypond[fragment,quote,verbatim,relative=3]
a4
@end lilypond
-Enclosing group of notes in braces creates a new music
+Enclosing a group of notes in braces creates a new music
expression
@lilypond[fragment,quote,verbatim,relative=3]
{ a4 g4 }
@end lilypond
-Putting a bunch of music expressions (notes) in braces, means that
+Putting a bunch of music expressions (e.g., notes) in braces, means that
they should be played in sequence. The result again is a music
expression, which can be grouped with other expressions sequentially.
Here, the expression from the previous example is combined with two
as a simultaneous combination of two sequences. A `simultaneous'
music expression is formed by enclosing expressions in @code{<<} and
@code{>>}. In the following example, three sequences (all containing
-two other notes) are combined simultaneously
+two separate notes) are combined simultaneously
@lilypond[fragment,quote,verbatim,relative=3]
<<
for complex music like polyphonic scores.
Note that this example only has one staff, whereas
-the previous example had three seperate staves. That is because this
+the previous example had three separate staves. That is because this
example begins with a single note. To determine the number of staves,
LilyPond looks at the first element. If it is a single note, there is one
staff; if there is a simultaneous expression, there is more than one staff.
To print more than one staff, each piece of music that makes up a
staff is marked by adding @code{\new Staff} before it. These
-@code{Staff} elements are then combined parallel with @code{<<} and
+@code{Staff} elements are then combined in parallel with @code{<<} and
@code{>>}, as demonstrated here
@lilypond[quote,fragment,verbatim]
>>
@end lilypond
-For more information on context see the description in
+For more information on contexts see the description in
@ref{Interpretation contexts}.
Articulations and fingerings are usually placed automatically, but you
can specify a direction using @samp{^} (up) or @samp{_} (down). You can
-also use multiple articulations on the same note. In most cases, it is
-best to let LilyPond determine the articulation directions.
+also use multiple articulations on the same note. In most cases, however,
+it is best to let LilyPond determine the articulation directions.
@lilypond[fragment,quote,verbatim,relative=2]
c_-^1 d^. f^4_2-> e^-_+
Crescendi and decrescendi are started with the commands @code{\<} and
@code{\>}. An ending dynamic, for example @code{\f}, will finish the
-crescendo, or the command @code{\!} can be used
+(de)crescendo, or the command @code{\!} can be used
@lilypond[fragment,quote,verbatim,relative=2]
c2\< c2\ff\> c2 c2\!
@cindex slur
-A slur is a curve drawn across many notes, and indicates legato
-articulation. The starting note and ending note are marked with
-@samp{(} and @samp{)}, respectively
+A @rglos{slur} is a curve drawn across many notes, and indicates
+legato articulation. The starting note and ending note are marked
+with @samp{(} and @samp{)}, respectively
@lilypond[fragment,quote,fragment,relative=2,verbatim]
d4( c16) cis( d e c cis d) e( d4)
@end lilypond
@cindex slurs versus ties
-A slur looks like a tie, but it has a different meaning. A tie simply
-makes the first note sound longer, and can only be used on pairs of
-notes with the same pitch. Slurs indicate the articulations of notes,
-and can be used on larger groups of notes. Slurs and ties can be
-nested
+A slur looks like a @rglos{tie}, but it has a different meaning. A
+tie simply makes the first note sound longer, and can only be used on
+pairs of notes with the same pitch. Slurs indicate the articulations
+of notes, and can be used on larger groups of notes. Slurs and ties
+can be nested
@lilypond[quote,fragment,relative=2]
c2~( c8 fis fis4 ~ fis2 g2)
@cindex phrasing slurs
Slurs to indicate phrasing can be entered with @code{\(} and
@code{\)}, so you can have both legato slurs and phrasing slurs at the
-same time.
+same time. You cannot have simultaneous slurs or simultaneous
+phrasing slurs.
@lilypond[quote,fragment,relative=2,verbatim]
a8(\( ais b c) cis2 b'2 a4 cis, c\)
A comment is a remark for the human reader of the music input; it is
ignored while parsing, so it has no effect on the printed output.
There are two types of comments. The percent symbol @samp{%}
-introduces a line comment; after @code{%} the rest of the line is
-ignored. A block comments marks a whole section of music
+introduces a line comment; after @code{%} the rest of the line is
+ignored. A block comment marks a whole section of music
input. Anything that is enclosed in @code{%@{} and @code{%@}} is
ignored. The following fragment shows possible uses for comments
%@}
@end example
-@c TODO post-2.4 reorg
+@c TODO post-2.6 reorg
@c This is good info, but I wouldn't call it a comment. IMO it should
@c be moved somewhere else.
There is a special statement that is a kind of comment. The @code{\version}
statement marks for which version of LilyPond the file was written.
-To mark a file for version 2.4.0, use
+To mark a file for version 2.6.0, use
@example
-\version "2.4.0"
+\version "2.6.0"
@end example
@noindent
These annotations make future upgrades of LilyPond go more
smoothly. Changes in the syntax are handled with a special program,
-@file{convert-ly} (see @ref{Invoking convert-ly}), and it uses
+@file{convert-ly} (see @ref{Updating files with convert-ly}), and it uses
@code{\version} to determine what rules to apply.
@end lilypond
For lead sheets, chords are not printed on staves, but as names on a
-line of themselves. This is achieved by using @code{\chords} instead
-of @code{\chordmode}. This uses the same syntax as @code{\chordmode},
+line for themselves. This is achieved by using @code{\chords} instead
+of @code{\chordmode}. This uses the same syntax as @code{\chordmode},
but renders the notes in a @code{ChordNames} context, with the
following result.
@end example
-When the file is processed the title and composer are printed above
+When the file is processed, the title and composer are printed above
the music. More information on titling can be found in @ref{Creating
titles}.
them down.
Entering such parts is done by entering each voice as a sequence (with
-@code{@{...@}}), and combining those simultaneously, separating the
+@code{@{...@}}), and combining these simultaneously, separating the
voices with @code{\\}
@lilypond[quote,verbatim,relative=2,fragment]
>>
@end lilypond
-More features of polyphonic typesetting in the notation manual are
-described in @ref{Polyphony}.
+More features of polyphonic typesetting are described in this manual
+in section @ref{Polyphony}.
@node Piano staves
>>
@end lilypond
-More information on formatting piano music is in @ref{Piano music}.
+More information on formatting piano music is given in @ref{Piano music}.
@node Organizing larger pieces
@{ c4^\name @}
@end example
-More information on the possible uses of identifiers is in the
+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.
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 score.
+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 @{
+hornNotes = \relative c @{
\time 2/4
r4 f8 a cis4 f e d
@}
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 downwards. Sounding
-@samp{f} is denoted by notated @code{c'}, which corresponds with
+@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