]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/tutorial.itely
Tutorial formatting fixes from Ralph, thanks!
[lilypond.git] / Documentation / user / tutorial.itely
index 1a93fe25526a3f5c6f6b00bc92cdb3a8ddd7daff..3c35e81f2c2d0e5a948b9cfa79096c2df1515b5a 100644 (file)
-@c -*-texinfo-*-
-@c This file is part of lilypond.tely
+@c -*- coding: utf-8; mode: texinfo; -*-
+@c This file is part of lilypond-learning.tely
+@ignore
+    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
 
-@c TODO:
-@c   * more details about running lilypond; error messages,
-@c     compiling/viewing (emacs?)
-@c   * where to go from First steps+More basics?
+    When revising a translation, copy the HEAD committish of the
+    version that you are working on.  See TRANSLATION for details.
+@end ignore
 
-@c Your first LilyPond score in 10 minutes?
+@ignore
 
-@node Tutorial
-@chapter Tutorial
+Tutorial Specification:
+
+The LM is written in a tutorial style which introduces the most
+important concepts, structure and syntax of the elements of a
+LilyPond score in a carefully graded sequence of steps.
+Explanations of all musical concepts used in the Manual can be
+found in the Music Glossary, and readers are assumed to have no
+prior knowledge of LilyPond.  The objective is to take readers to
+a level where the Notation Reference can be understood and
+employed to both adapt the templates in the Appendix to their
+needs and to begin to construct their own scores.  Commonly used
+tweaks are introduced and explained.  Examples are provided
+throughout which, while being focussed on the topic being
+introduced, are long enough to seem real in order to retain the
+readers' interest.  Each example builds on the previous material,
+and comments are used liberally.  Every new aspect is thoroughly
+explained before it is used.
 
-This tutorial starts with a short introduction to the LilyPond music
-language.  After this first contact we will show you how to produce
-printed output.  Then you will be able to create and print your own
-sheets of music.
+@end ignore
 
-@ifhtml
-Many people learn programs by trying and fiddling around with the
-program.  This is also possible with LilyPond.  If you click on a
-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
+@ignore
+Tutorial guidelines:  (different from policy.txt!)
+- unless you have a really good reason, use either
+    @lilypond[verbatim,quote,ragged-right]
+  or
+    @lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+
+  Don't use any other relative=X commands (make it a non-fragment
+  example), and don't use fragment without relative=2.
+
+- use "aes" and "ees" instead of "as" and "es".  I know it's not
+  correct Dutch naming, but let's not confuse people with this
+  until we get to the Basic notation chapter.
+
+- Add "Music Glossary: @rglos{foo}" to the _top_ of the relevant
+  portions of the tutorial.
+
+@end ignore
 
-@lilypond[fragment,quote,raggedright,relative=2]
-c-\markup { \bold \huge { Click here.  } }
-@end lilypond
-@end ifhtml
 
-By cutting and pasting the full input into a test file, you have a
-starting template for experiments.  If you like learning in this way,
-you will probably want to print out or bookmark
-@ifhtml
-the
-@end ifhtml
-@ref{Cheat sheet}, which is a table listing all commands for quick
-reference.
+@node Tutorial
+@chapter Tutorial
+
+This tutorial starts with an introduction to the LilyPond music
+language and how to produce printed music.  After this first
+contact we will explain how to create common musical notation.
 
 @menu
 * First steps::                 
-* Running LilyPond::            
-* More about pitches::          
-* Entering ties::               
-* Automatic and manual beams::  
-* Octave entry::                
-* Music expressions explained::  
-* More staves::                 
-* Adding articulation marks to notes::  
-* Combining notes into chords::  
-* Basic rhythmical commands::   
-* Commenting input files::      
-* Printing lyrics::             
-* A lead sheet::                
-* Listening to output::         
-* Adding titles::               
-* Single staff polyphony::      
-* Piano staves::                
-* Organizing larger pieces::    
-* An orchestral part::          
-* Integrating text and music::  
+* Single staff notation::       
+* Multiple notes at once::      
+* Songs::                       
+* Final touches::               
 @end menu
 
 
 @node First steps
 @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
+This section gives a basic introduction to working with LilyPond.
 
-@example
-c d e f g a b
-@end example
+@menu
+* Compiling a file::            
+* Simple notation::             
+* Working on text files::       
+* How to read the tutorial::    
+@end menu
 
-@noindent
-the result looks like this
 
-@lilypond[fragment,quote,notime,relative=1]
-c d e f g a b
-@end lilypond
+@node Compiling a file
+@subsection Compiling a file
 
-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},
-@samp{4} for a @rglos{quarter note} and so on
+The first example demonstrates how to start working with LilyPond.
+To create sheet music, we write a text file that specifies the
+notation.  For example, if we write:
 
 @example
-a1 a2 a4 a16 a32
+@{
+  c' e' g' e'
+@}
 @end example
 
-@c FIXME: have NOTIME also remove Score.timing?
-@lilypond[fragment,quote,notime,relative=1]
-\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
-
-@example
-a a8 a a2 a
-@end example
+@noindent
+the result looks like this:
 
-@lilypond[fragment,quote,notime,relative=1]
-\set Score.timing = ##f
-{ a a8 a a2 a s16_" " }
+@c  in this case we don't want verbatim
+@lilypond[quote,ragged-right]
+{
+  c' e' g' e'
+}
 @end lilypond
 
+@warning{Every piece of LilyPond input needs to have
+@strong{@{ curly 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.  The braces may
+be omitted in some examples in this manual, but don't forget them
+in your own music!  For more information about the display of
+examples in the manual, see @ref{How to read the tutorial}.}
 
-Rests are entered just like notes, but with the name @samp{r}
+@cindex case sensitive
+In addition, LilyPond input is @strong{case sensitive}.  @code{
+@{ c d e @}} is valid input; @code{@{ C D E @}} will produce an
+error message.
 
-@cindex rests
-@example
-r2 r4 r8 r16
-@end example
+@smallspace
 
-@lilypond[fragment,quote,notime]
-\set Score.timing = ##f
-r2 r4 r8 r16 s16_" "
-@end lilypond
+@subheading Entering music and viewing output
 
-Add a dot @samp{.} after the duration to get a @rglos{dotted note}
+@cindex PDF file
+@cindex viewing music
 
-@example
-a2. a4 a8. a16
-@end example
+In this section we will explain what commands to run and how to
+view or print the output.
 
-@lilypond[fragment,quote,notime,relative=1]
-\set Score.timing = ##f
-{ a2. a4 a8. a16 s16_" " }
-@end lilypond
+Note that there are several other text editors available with
+better support for LilyPond.  For more information, see
+@rprogram{Text editor support}.
 
-The @rglos{meter} (or @rglos{time signature}) can be set with the
-@code{\time} command
+@warning{the first time you ever run LilyPond, it may take a
+minute or two because all of the system fonts have to be analyzed
+first.  After this, LilyPond will be much faster!}
 
-@example
-\time 3/4
-\time 6/8
-\time 4/4
-@end example
+@subsubheading MacOS X
 
-@c A clef here may lead to confusion, remove it.
-@lilypond[fragment,quote]
-\override Staff.Clef #'transparent = ##t 
-\time 3/4
-s4_" "
-\time 6/8
-s4_" "
-\time 4/4
-s16_" "
-@end lilypond
+If you double click @code{LilyPond.app}, it will open with an
+example file.  Save it, for example, to @file{test.ly} on your
+Desktop, and then process it with the menu command @code{Compile >
+Typeset File}.  The resulting PDF file will be displayed on your
+screen.
 
-The @rglos{clef} can be set using the @code{\clef} command
+For future use of LilyPond, you should begin by selecting @q{New}
+or @q{Open}.  You must save your file before typesetting it.  If
+any errors occur in processing, please see the log window.
 
-@c what is more common name treble or violin?
-@c in Dutch, it is violin.
-@c in English it is definitely treble.
-@example
-\clef treble
-\clef bass
-\clef alto
-\clef tenor
-@end example
 
-@lilypond[fragment,quote,notime]
-\set Score.timing = ##f
-\clef violin
-s4_" "
-\clef bass
-s4_" "
-\clef alto
-s4_" "
-\clef tenor
-s16_" "
-@end lilypond
+@subsubheading Windows
 
+On Windows, if you double-click in the LilyPond icon on the
+Desktop, it will open a simple text editor with an example file.
+Save it, for example, to @file{test.ly} on your Desktop and then
+double-click on the file to process it (the file icon looks like a
+note).  After some seconds, you will get a file @file{test.pdf} on
+your desktop.  Double-click on this PDF file to view the typeset
+score.  An alternative method to process the @file{test.ly} file
+is to drag and drop it onto the LilyPond icon using your mouse
+pointer.
 
-Remember to enclose the notes and commands in curly braces
-@code{@{@tie{}@dots{}@tie{}@}} to convert it to printable output.
+To edit an existing @file{.ly} file, right-click on it and
+select @qq{Edit source}.  To get an empty file to start from, run
+the editor as described above and use @qq{New} in
+the @qq{File} menu.
 
-@lilypond[fragment,quote,noindent,linewidth=55\staffspace]
-{
-  \time 3/4
-  \clef bass
-  c2 e4 g2.
-  f4 e d c2 r4
-}
-@end lilypond
+Double-clicking the file does not only result in a PDF file, but
+also produces a @file{.log} file that contains some information on
+what LilyPond has done to the file.  If any errors occur, please
+examine this file.
 
-For more elaborate information on
-
-@quotation
-@table @asis
-@item Entering pitches and durations
-see 
-@ref{Pitches}, and @ref{Durations}.
-@item Clefs
-see @ref{Clef}.
-@item Rests
-see @ref{Rests}.  
-@item Time signatures and other timing commands
-see @ref{Time signature}.
-@end table
-@end quotation
-
-
-@node Running LilyPond
-@section Running LilyPond
-
-@c FIXME: let's not be so casual about Emacs and VIM, but rather
-@c instruct (how) to use them; let advanced user figure-out what
-@c commands to type?
-
-@c
-@c We don't have enough space to explain either VIM
-@c or Emacs non-advanced users, and I fear that both editors will only
-@c confuse newbies. I vote for keeping the material in footnotes.
-@c 
-@c --hwn 
-
-In the last section we explained what kind of things you could 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
-file yourself, read this section.  The instructions that follow are
-for Unix-like systems.  Some additional instructions for Microsoft
-Windows are given at the end of this section.
-
-Begin by opening a terminal window and starting a text editor.  For
-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 it has 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}
+@subsubheading Unix
+
+Create a file (such as @file{test.ly}) and enter:
 
 @example
-@{ c'4 e' g' @}
+@{
+  c' e' g' e'
+@}
 @end example
 
-@noindent
-To process @file{test.ly}, proceed as follows
+To process @file{test.ly}, proceed as follows:
 
 @example
 lilypond test.ly
 @end example
 
 @noindent
-You will see something resembling
+You will see something resembling:
 
 @example
-lilypond (GNU LilyPond) 2.2.0
-Running lilypond...
-Now processing `/home/fred/ly/test.ly'
+lilypond test.ly
+GNU LilyPond 2.12.0
+Processing `test.ly'
 Parsing...
-Interpreting music...[1]
-@emph{... more interesting stuff ... }
-DVI output to `test.dvi'...
-PDF output to `test.pdf'...
-PS output to `test.ps'...
+Interpreting music...
+Preprocessing graphical objects...
+Finding the ideal number of pages...
+Fitting music on 1 page...
+Drawing systems...
+Layout output to `test.ps'...
+Converting to `test.pdf'...
 @end example
 
-@cindex DVI file
-@cindex Viewing music
-@cindex xdvi
+
+@node Simple notation
+@subsection Simple notation
+
+LilyPond will add some notation elements automatically.  In the
+next example, we have only specified four pitches, but LilyPond
+has added a clef, time signature, and rhythms.
+
+@lilypond[verbatim,quote,ragged-right]
+{
+  c' e' g' e'
+}
+@end lilypond
+
 @noindent
-The result is the file @file{test.pdf}@footnote{For @TeX{}
-aficionados: there is also a @file{test.dvi} file.  It can be viewed
-with @code{xdvi}.  The DVI uses a lot of PostScript specials, which do
-not show up in the magnifying glass.  The specials also mean that the
-DVI file cannot be processed with @code{dvilj}.  Use @code{dvips} for
-printing.
-@cindex dvips
-@cindex dvilj
-@cindex DVI driver
-} which you can print or with the standard facilities of your
-operating system.@footnote{If your system does not have any tools
-installed, you can try @uref{Ghostscript,
-http://www.cs.wisc.edu/~ghost/}, a freely available package for
-viewing and printing PDF and PostScript files.}
-
-On Windows, start up a text-editor@footnote{Any simple or
-programmer-oriented editor will do, for example Notepad.  Do not use a
-word processor, its formatting codes will confuse LilyPond.} and enter
+This behavior may be altered, but in most cases these automatic
+values are useful.
 
-@example
-@{ c'4 e' g' @}
-@end example
 
-Save it on the desktop as @file{test.ly} and make sure that it is not
-called @file{test.ly.TXT}.  Double clicking @file{test.ly} will process
-the file and show the resulting PDF file.
+@subheading Pitches
 
+Music Glossary: @rglos{pitch}, @rglos{interval},
+@rglos{scale}, @rglos{middle C}, @rglos{octave},
+@rglos{accidental}.
 
-@node More about pitches
-@section More about pitches 
+The easiest way to enter notes is by using @code{\relative} mode.
+In this mode, the octave is chosen automatically by assuming the 
+following note is always to be placed closest to the previous note,
+i.e., it is to be placed in the octave which is within three 
+staff spaces of the previous note.  We begin by entering the most 
+elementary piece of music, a @notation{scale}, in which every note
+is within just one staff space of the previous note.
 
-A @rglos{sharp} (@texisharp{}) pitch is made by adding @samp{is} to
-the name, a @rglos{flat} (@texiflat{}) pitch by adding @samp{es}.  As
-you might expect, a @rglos{double sharp} or @rglos{double flat} is
-made by adding @samp{isis} or @samp{eses}@footnote{This syntax
-derived from note naming conventions in Nordic and Germanic languages,
-like German and Dutch.}
+@lilypond[verbatim,quote,ragged-right]
+\relative c' {  % set the starting point to middle C
+  c d e f
+  g a b c
+}
+@end lilypond
 
-@example
-cis1 ees fisis aeses
-@end example
+The initial note is @notation{middle C}.  Each successive note is
+placed closest to the previous note -- in other words, the first
+@code{c} is the closest C to middle C.  This is followed by the
+closest D to the previous note.  We can create melodies which
+have larger intervals, still using only @code{\relative} mode:
 
-@lilypond[fragment,quote,notime]
-\set Score.timing = ##f
-\transpose c c' { cis1 ees fisis aeses s16_" " }
+@lilypond[verbatim,quote,ragged-right]
+\relative c' {
+  d f a g
+  c b f d
+}
 @end lilypond
 
-@cindex key signature, setting
-The key signature is set with the command @code{\key}, followed by
-a pitch and @code{\major} or @code{\minor}
+@noindent
+It is not necessary for the first note of the melody to start on
+the note which specifies the starting pitch.  In the previous
+example, the first note -- the @code{d} -- is the closest D to
+middle C.
+
+By adding (or removing) quotes @code{'} or commas @code{,} from
+the @code{\relative c' @{} command, we can change the starting
+octave:
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {  % one octave above middle C
+  e c a c
+}
+@end lilypond
 
-@example
-\key d \major
-g1
-\key c \minor
-g
-@end example
+Relative mode can be confusing initially, but is the easiest way
+to enter most melodies.  Let us see how this relative calculation
+works in practice.  Starting from a B, which is on the middle line
+in a treble clef, you can reach a C, D and E within 3 staff spaces
+going up, and an A, G and F within 3 staff spaces going down.  So
+if the note following a B is a C, D or F it will be assumed to be
+above the B, and an A, G or F will be assumed to be below.
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  b c  % c is 1 staff space up, so is the c above
+  b d  % d is 2 up or 5 down, so is the d above
+  b e  % e is 3 up or 4 down, so is the e above
+  b a  % a is 4 up or 3 down, so is the a below
+  b g  % g is 5 up or 2 down, so is the g below
+  b f  % f is 6 up or 1 down, so is the f below
+}
+@end lilypond
 
-@lilypond[fragment,quote,notime,fragment]
-\key d \major
-g'1
-\key c \minor
-g'
+Exactly the same happens even when any of these notes are
+sharpened or flattened.  @notation{Accidentals} are @strong{totally
+ignored} in the calculation of relative position.  Precisely the
+same staff space counting is done from a note at any other
+position on the staff.
+
+To add intervals that are larger than three staff spaces, we can
+raise the @notation{octave} by adding a single quote @code{'} (or
+apostrophe) to the note name.  We can lower the octave by adding a
+comma @code{,} to the note name.
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  a a, c' f,
+  g g'' a,, f'
+}
 @end lilypond
 
 @noindent
-Key signatures together with the pitches (including alterations) are
-used to determine when to print accidentals.  This is a
-feature that often causes confusion to newcomers, so let us explain it
-in more detail.
+To change a note by two (or more!) octaves, we use multiple
+@code{''} or @code{,,} -- but be careful that you use two single
+quotes @code{''} and not one double quote @code{"}@tie{}!  The
+initial value in @code{\relative c'} may also be modified like
+this.
 
 
-LilyPond makes a sharp distinction between musical content and
-layout.  The alteration (flat, natural or sharp) of a note is part of
-the pitch, and is therefore musical content.  Whether an accidental (a
-flat, natural or sharp @emph{sign}) is printed in front of the
-corresponding note is a question of layout.  Layout is something that
-follows rules, so accidentals are printed automatically according to
-those rules.  The pitches in your music are works of art, so they will
-not be added automatically, and you must enter what you want to hear.
+@subheading Durations (rhythms)
 
-In this example
+Music Glossary: @rglos{beam}, @rglos{duration}, @rglos{whole note},
+@rglos{half note}, @rglos{quarter note}, @rglos{dotted note}.
 
-@lilypond[quote,notime,fragment]
-\key d \major
-d' cis' fis'
-@end lilypond
+The @notation{duration} of a note is specified by a number after
+the note name.  @code{1} for a @notation{whole note}, @code{2} for
+a @notation{half note}, @code{4} for a @notation{quarter note} and
+so on.  @notation{Beams} are added automatically.
 
-@noindent
-no note gets an explicit accidental, but you still must enter
+If you do not specify a duration, the previous duration is used
+for the next note.  The duration of the first note defaults to a
+quarter.
 
-@example
-\key d \major
-d cis fis
-@end example
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  a1
+  a2 a4 a8 a
+  a16 a a a a32 a a a a64 a a a a a a a a2
+}
+@end lilypond
 
-@noindent
-The code @samp{d} does not mean `print a black dot just below the
-staff.'  Rather, it means: `a note with pitch D-natural.'  In the key
-of A-flat, it does get an accidental
+To create @notation{dotted notes}, add a dot @code{.} to the
+duration number.  The duration of a dotted note must be stated
+explicitly (i.e., with a number).
 
-@lilypond[quote,notime,fragment]
-\key as \major
-d'
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  a a a4. a8
+  a8. a16 a a8. a8 a4.
+}
 @end lilypond
 
-@example
-\key as \major
-d
-@end example
 
-Adding all alterations explicitly might require a little more effort
-when typing, but the advantage is that transposing is easier, and
-music can be printed according to different conventions.  See
-@ref{Accidentals}, for some examples how accidentals can be printed
-according to different rules.
+@subheading Rests
 
+Music Glossary: @rglos{rest}.
 
-For more information on
+A @notation{rest} is entered just like a note with the name @code{r}:
 
-@quotation
-@table @asis
-@item Accidentals
-see @ref{Accidentals}.
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  a r r2
+  r8 a r4 r4. r8
+}
+@end lilypond
 
-@item Key signature
-see @ref{Key signature}.
-@end table
-@end quotation
 
-@node Entering ties
-@section Entering ties
+@subheading Time signature
 
-@cindex tie
-A tie is created by appending a tilde @samp{~} to the first note
-being tied
+Music Glossary: @rglos{time signature}.
 
-@lilypond[quote,notime,fragment,verbatim,relative=3]
-g4~ g a2~ a4
-@end lilypond
+The @notation{time signature} can be set with the @code{\time}
+command:
 
-For more information on Ties see @ref{Ties}.
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  \time 3/4
+  a4 a a
+  \time 6/8
+  a4. a
+  \time 4/4
+  a4 a a a
+}
+@end lilypond
 
 
+@subheading Clef
 
-@node Automatic and manual beams
-@section Automatic and manual beams
+Music Glossary: @rglos{clef}.
 
-@cindex beams, by hand 
-Beams are drawn automatically
+The @notation{clef} can be set using the @code{\clef} command:
 
-@lilypond[quote,fragment,relative=2,verbatim]
-a8 ais d es r d
+@lilypond[verbatim,quote,ragged-right]
+\relative c' {
+  \clef treble
+  c1
+  \clef alto
+  c1
+  \clef tenor
+  c1
+  \clef bass
+  c1
+}
 @end lilypond
 
-@noindent
-If you do not like where beams are put, they can be entered by
-hand.  Mark the first note to be beamed with @samp{[} and the last one
-with @samp{]}.
 
-@lilypond[quote,fragment,relative=2,verbatim]
-a8[ ais] d[ es r d]
+@subheading All together
+
+Here is a small example showing all these elements together:
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c, {
+  \time 3/4
+  \clef bass
+  c2 e8 c' g'2.
+  f4 e d c4 c, r4
+}
 @end lilypond
 
-For more information on beams, see @ref{Beaming}.
 
+@seealso
+
+Notation Reference: @ruser{Writing pitches}, @ruser{Writing rhythms},
+@ruser{Writing rests}, @ruser{Time signature}, @ruser{Clef}.
+
+
+@c HERE's where I started
+
+@node Working on text files
+@subsection Working on text files
+
+LilyPond input files are similar to source files in many common
+programming languages.  They are case sensitive, and white-space
+is generally equivalent.  Expressions are formed with curly braces
+@{ @}, and comments are denoted with @code{%} or @code{%@{ ...
+%@}}.
 
-Here are key signatures, accidentals and ties in action
+If the previous sentences sound like nonsense, don't worry!  We'll
+explain what all these terms mean:
+
+@itemize
+
+@cindex case sensitive
+@item
+@strong{Case sensitive}:
+it matters whether you enter a letter in lower case (e.g. @code{a,
+b, s, t}) or upper case (e.g.  @code{A, B, S, T}).  Notes are
+lower case: @code{@{ c d e @}} is valid input; @code{@{ C D E @}}
+will produce an error message.
+
+@item
+@strong{Whitespace insensitive}:
+it does not matter how many spaces (or new lines) you add.
+@code{@{ c d e @}} means the same thing as @code{@{ c @tie{}
+@tie{} @tie{} d e @}} and:
 
 @example
-@{
-  \time 4/4
-  \key g \minor
-  \clef violin
-  r4 r8 a8 gis4 b
-  a8 d4.~ d e8
-  fis4 fis8 fis8 eis4 a8 gis~
-  gis2 r2
-@}
+@{ c                        d
+                   e   @}
 @end example
 
-@ignore
-FIXME
-ugr: removing the ignore block, leaving the comment line below
-@c TODO: use relative mode, verbatim, junk \transpose and above @example
-@end ignore
+@noindent
+Of course, the previous example is hard to read.  A good rule of
+thumb is to indent code blocks with either a tab or two spaces:
 
+@example
+@{
+  c d e
+@}
+@end example
 
-@lilypond[fragment,quote,noindent,linewidth=50\staffspace]
-\transpose c c' {
-  \time 4/4
-  \key g \minor
-  \clef violin
-  r4 r8 a8 gis4 b
-  a8 d4.~ d e8
-  fis4 fis8 fis8 eis4 a8 gis~
-  gis2 r2
-}
-@end lilypond
+@item
+@strong{Expressions}:
+every piece of LilyPond input needs to have @strong{@{ curly
+braces @}} placed around the input.  These braces tell LilyPond
+that the input is a single music expression, just like parentheses
+@code{()} in mathematics.  The braces should be surrounded by a
+space unless they are at the beginning or end of a line to avoid
+ambiguities.
 
-@cindex accidentals
+A function (such as @code{\relative @{ @}}) also counts as a
+single music expression.
 
+@cindex comments
+@cindex line comment
+@cindex block comment
+@item
+@strong{Comments}:
+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
+@code{%} introduces a line comment; anything after @code{%} on
+that line is ignored.  A block comment marks a whole section of
+music input as a comment.  Anything that is enclosed in @code{%@{}
+and @code{%@}} is ignored.  (Comments do not nest.)  The following
+fragment shows possible uses for comments:
 
-@noindent
-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
-are entered is not relevant: in the printout, these are ordered
-according to standard notation conventions.
+@example
+% notes for twinkle twinkle follow
+  c4 c g' g a a g2
 
+%@{
+  This line, and the notes below
+  are ignored, since they are in a
+  block comment.
 
+  g g f f e e d d c2
+%@}
+@end example
 
-@node Octave entry
-@section Octave entry
+@end itemize
 
 
-@c Tim wants to move this quotes example just before the: quotes-do not-work
-@c score, but we'd need to remove quotes from the other two (key and
-@c tie) examples...
+@node How to read the tutorial
+@subsection How to read the tutorial
 
-@c better to have this just before the `octaves are bad' snipped
-@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'}
+LilyPond input must be surrounded by @{ @} marks or a
+@code{\relative c'' @{ ... @}}, as we saw in @ref{Working on text
+files}.  For the rest of this manual, most examples will omit
+this.  To replicate the examples, you may copy and paste the
+displayed input but you @strong{must} add the @code{\relative c''
+@{ @}} like this:
 
 @example
-c'4 c'' c''' \clef bass c c,
+\relative c'' @{
+  ... example goes here...
+@}
 @end example
 
-@lilypond[quote,notime,fragment]
-c'4 c'' c''' \clef bass c c,
-@end lilypond
+Why omit the braces?  Most examples in this manual can be inserted
+into the middle of a longer piece of music.  For these examples,
+it does not make sense to add @code{\relative c'' @{ @}} -- you
+should not place a @code{\relative} inside another
+@code{\relative}!  If we included @code{\relative c'' @{ @}}
+around every example, you would not be able to copy a small
+documentation example and paste it inside a longer piece of your
+own.  Most people want to add material to an existing piece, so we
+format the manual this way.
 
-An example of the use of quotes is in the following Mozart fragment
 
-@lilypond[quote,raggedright,fragment,verbatim]
-\key a \major
-\time 6/8
-cis''8. d''16 cis''8 e''4 e''8
-b'8. cis''16 b'8 d''4 d''8 
-@end lilypond
+@subheading Clickable examples
 
-@noindent
-The last 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.  In practice, this is the
-most convenient way to copy existing music.  To use relative mode, add
-@code{\relative} before the piece of music.
-@ignore
-FIXME: move to notation manual?
- You must also give a note
-from which relative mode starts, in this case @code{c''}.
-@end ignore
-If you do not
-use octavation quotes (i.e., do not add @code{'} or @code{,} after a
-note), relative mode chooses the note that is closest to the previous
-one.  For example, @samp{c f} goes up while @samp{c g} goes down
-
-@lilypond[quote,notime,fragment,verbatim]
-\relative {
-  c' f c g c
+Many people learn programs by trying and fiddling around with the
+program.  This is also possible with LilyPond.  If you click on a
+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:
+
+@c no verbatim here
+@lilypond[quote,ragged-right]
+\relative c'' {
+  c-\markup { \bold \huge { Click here.  } }
 }
 @end lilypond
 
+By cutting and pasting everything in the @qq{ly snippet} section,
+you have a starting template for experiments.  To see exactly the
+same output (line-width and all), copy everything from @qq{Start
+cut-&-pastable section} to the bottom of the file.
 
-Since most music has small intervals, pieces can be written almost
-without octavation quotes in relative mode.  The previous example is
-entered as
+@seealso
 
-@lilypond[quote,raggedright,fragment,verbatim]
-\relative {
-  \key a \major
-  \time 6/8
-  cis''8. d16 cis8 e4 e8
-  b8. cis16 b8 d4 d8
-}
-@end lilypond
 
-@c needed better, maybe even redundant explanation
-@c   added another example below.
-@c grappig: Pa vond het heel logies, en slim toen-i eenmaal begreep.
-@c in eerste instantie drong het `relative' niet door zonder extra uitleg.
-Larger intervals are made by adding octavation quotes.
+There are more tips for constructing input files in
+@ref{Suggestions for writing LilyPond files}.
 
-@lilypond[quote,notime,verbatim,fragment]
-\relative c {
-  c'' f, f c' c g' c,
-}
-@end lilypond
 
-In summary, quotes or commas no longer determine the absolute height
-of a note in @code{\relative} mode.  Rather, the height of a note is
-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},
-and @ref{Octave check}.
+@node Single staff notation
+@section Single staff notation
 
+This section introduces common notation that is used for one voice
+on one staff.
 
-@node Music expressions explained
-@section Music expressions explained
+@menu
+* Accidentals and key signatures::  
+* Ties and slurs::              
+* Articulation and dynamics::   
+* Adding text::                 
+* Automatic and manual beams::  
+* Advanced rhythmic commands::  
+@end menu
 
 
-In input files, music is represent by so-called @emph{music
-expression}.  We have already seen in the previous examples; 
-a single note is a music expression
+@node Accidentals and key signatures
+@subsection Accidentals and key signatures
 
-@lilypond[fragment,quote,verbatim,relative=3]
-a4
-@end lilypond
+@subheading Accidentals
 
-Enclosing group of notes in braces creates a new music
-expression
+Music Glossary: @rglos{sharp}, @rglos{flat}, @rglos{double sharp},
+@rglos{double flat}, @rglos{accidental}.
 
-@lilypond[fragment,quote,verbatim,relative=3]
-{ a4 g4 }
+A @notation{sharp} pitch is made by adding @code{is} to the name, and
+a @notation{flat} pitch by adding @code{es}.  As you might expect, a
+@notation{double sharp} or @notation{double flat} is made by adding
+@code{isis} or @code{eses}.  This syntax is derived from note
+naming conventions in Nordic and Germanic languages, like German
+and Dutch.  To use other names for @notation{accidentals}, see
+@ruser{Note names in other languages}.
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+cis1 ees fisis, aeses
 @end lilypond
 
-Putting a bunch of music expressions (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
-notes
+@cindex key signature, setting
+@subheading Key signatures
 
-@lilypond[fragment,quote,verbatim,relative=3]
-{ { a4 g } f g } 
-@end lilypond
+Music Glossary: @rglos{key signature}, @rglos{major}, @rglos{minor}.
 
-This technique is useful for non-monophonic music.  To enter music
-with more voices or more staves, we also combine expressions in
-parallel.  Two voices that should play at the same time, are entered
-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 notes) are combined simultaneously
+The @notation{key signature} is set with the command @code{\key}
+followed by a pitch and @code{\major} or @code{\minor}.
 
-@lilypond[fragment,quote,verbatim,relative=3]
-<<
-   { a4 g }
-   { f e }
-   { d b }
->>
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+\key d \major
+a1
+\key c \minor
+a
 @end lilypond
 
-This mechanism is similar to mathematical
-formulas: a big formula is created by composing small formulas.  Such
-formulas are called expressions, and their definition is recursive, so
-you can make arbitrarily complex and large expressions.  For example,
+@smallspace
 
-@example
-1
+@subheading Warning: key signatures and pitches
 
-1 + 2
+Music Glossary: @rglos{accidental}, @rglos{key signature},
+@rglos{pitch}, @rglos{flat}, @rglos{natural}, @rglos{sharp},
+@rglos{transposition}.
 
-(1 + 2) * 3
+To determine whether to print an @notation{accidental}, LilyPond
+examines the pitches and the @notation{key signature}.  The key
+signature only affects the @emph{printed} accidentals, not the note's
+@notation{pitch}!  This is a feature that often causes confusion to
+newcomers, so let us explain it in more detail.
 
-((1 + 2) * 3) / (4 * 5)
-@end example
+LilyPond makes a sharp distinction between musical content and
+layout.  The alteration (@notation{flat}, @notation{natural} or
+@notation{sharp}) of a note is part of the pitch, and is therefore
+musical content.  Whether an accidental (a @emph{printed} flat, natural
+or sharp sign) is printed in front of the corresponding note is a
+question of layout.  Layout is something that follows rules, so
+accidentals are printed automatically according to those rules.  The
+pitches in your music are works of art, so they will not be added
+automatically, and you must enter what you want to hear.
+
+In this example:
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+\key d \major
+d cis fis
+@end lilypond
 
-@cindex expression
-@cindex music expression
-This example shows a sequence of expressions, where each expression is
-contained in the next one.  The simplest expressions are numbers and
-operators (like @samp{+}, @samp{*} and @samp{/}).  Parentheses are used
-to group expressions.
+@noindent
+No note has a printed accidental, but you must still add the
+@code{is} to @code{cis} and @code{fis}.
 
-Like mathematical expressions, music expressions can be nested
-arbitrarily deep@footnote{The reason for getting three staves in the
-previous example but just a single staff in the current one will be
-explained later.}
+The code @code{e} does not mean @qq{print a black dot just below
+the first line of the staff.}  Rather, it means @qq{there is a
+note with pitch E-natural.}  In the key of A-flat major, it
+@emph{does} get an accidental:
 
-@lilypond[fragment,quote,verbatim,relative=2] 
-{
-  c <<c e>>
-  << { e f } { c <<b d>> } >>
-}
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+\key aes \major
+e
 @end lilypond
 
+Adding all alterations explicitly might require a little more
+effort when typing, but the advantage is that
+@notation{transposing} is easier, and accidentals can be printed
+according to different conventions.  For some examples how
+accidentals can be printed according to different rules, see
+@ruser{Automatic accidentals}.
 
-@cindex indent
-When spreading expressions over multiple lines, it is customary to use
-an indent that indicates the nesting level.  Formatting music like this
-eases reading, and helps you insert the right number of closing
-braces at the end of an expression.  For example,
+@seealso
 
-@example
-\book @{
-  \score @{
-    <<
-      @{
-        @dots{}
-      @}
-      @{
-        @dots{}
-      @}
-      \paper @{
-        @dots{}
-      @}
-    >>
-  @}
-@}  
-@end example
+Notation Reference: @ruser{Note names in other languages}, @ruser{Accidentals},
+@ruser{Automatic accidentals}, @ruser{Key signature}.
 
-Some editors have special support for entering LilyPond, and can help
-indenting source files.  See @ref{Editor support}, for more information.
+Music Glossary: @rglos{Pitch names}.
 
-@node More staves
-@section More staves
 
-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{>>}, as demonstrated here
+@node Ties and slurs
+@subsection Ties and slurs
 
-@lilypond[quote,fragment,verbatim]
-<<
-  \new Staff { \clef violin c'' }
-  \new Staff { \clef bass c }
->>
+@cindex ties
+@subheading Ties
+
+Music Glossary: @rglos{tie}.
+
+A @notation{tie} is created by appending a tilde @code{~} to the
+first note being tied.
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+g4~ g c2~
+c4 ~ c8 a8 ~ a2
 @end lilypond
 
+@cindex slurs
+@subheading Slurs
 
-The command @code{\new} introduces a `notation context.'  A notation
-context is an environment in which musical events (like notes or
-@code{\clef} commands) are interpreted.  For simple pieces, such
-notation contexts are created implicitly.  For more complex pieces, it
-is best to mark contexts explicitly.  This ensures that each fragment
-gets its own stave.
+Music Glossary: @rglos{slur}.
 
-There are several types of contexts: @code{Staff}, @code{Voice} and
-@code{Score} handle normal music notation.  Other contexts are also
-@code{Lyrics} (for setting lyric texts) and @code{ChordNames} (for
-printing chord names).
+A @notation{slur} is a curve drawn across many notes.  The starting
+note and ending note are marked with @code{(} and @code{)}
+respectively.
 
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+d4( c16) cis( d e c cis d) e( d4)
+@end lilypond
 
-In terms of syntax, prepending @code{\new} to a music expression
-creates a bigger music expression.  In this way it resembles the minus
-sign in mathematics.  The formula @math{(4+5)} is an expression, so
-@math{-(4+5)} is a bigger expression.
+@cindex slurs, phrasing
+@cindex phrasing slurs
+@subheading Phrasing slurs
 
-We can now typeset a melody with two staves
+Music Glossary: @rglos{phrasing}, @rglos{legato}.
 
-@c TODO: (c) status of this Paul McCartney (?) song (let's all stand together)
+Slurs to indicate longer @notation{phrasing} can be entered with
+@code{\(} and @code{\)}.  You can have both @notation{legato} slurs and
+phrasing slurs at the same time, but you cannot have simultaneous legato
+slurs or simultaneous phrasing slurs.
 
-@lilypond[fragment,quote,verbatim,raggedright]
-<<
-  \new Staff {
-    \time 3/4
-    \clef violin
-    \relative {
-      e''2 d4 c2 b4 a8[ a]
-      b[ b] g[ g] a2. }  
-  }
-  \new Staff {
-     \clef bass
-     c2 e4 g2.
-     f4 e d c2.
-  }
->>
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+a8(\( ais b c) cis2 b'2 a4 cis,\)
+@end lilypond
+
+@smallspace
+
+@cindex slurs versus ties
+@subheading Warnings: slurs vs. ties
+
+Music Glossary: @rglos{articulation}, @rglos{slur}, @rglos{tie}.
+
+A @notation{slur} looks like a @notation{tie}, but it has a different
+meaning.  A tie simply makes the first note longer, and can only be
+used on pairs of notes with the same pitch.  Slurs indicate the
+@notation{articulation} of notes, and can be used on larger groups of
+notes.  Slurs and ties can be nested.
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c2~( c8 fis fis4 ~ fis2 g2)
 @end lilypond
 
-For more information on context see the description in
-@ref{Interpretation contexts}.
+@seealso
 
+Notation Reference: @ruser{Ties}, @ruser{Slurs},
+@ruser{Phrasing slurs}.
 
 
-@node Adding articulation marks to notes
-@section Adding articulation marks to notes
+@node Articulation and dynamics
+@subsection Articulation and dynamics
 
 @cindex articulation
 @cindex accents
 @cindex staccato
+@subheading Articulations
 
-Common accents can be added to a note using a dash (@samp{-}) and a
-single character
+Music Glossary: @rglos{articulation}.
 
-@lilypond[fragment,quote,verbatim,relative=2]
-c-.  c-- c-> c-^ c-+ c-_
+Common @notation{articulations} can be added to a note using a
+dash @code{-} and a single character:
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c-. c-- c-> c-^ c-+ c-_
 @end lilypond
 
 @cindex fingering
-Similarly, fingering indications can be added to a note using a dash
-(@samp{-}) and the digit to be printed
+@subheading Fingerings
+
+Music Glossary: @rglos{fingering}.
 
-@lilypond[fragment,quote,verbatim,relative=2]
+
+Similarly, @notation{fingering} indications can be added to a note using
+a dash (@code{-}) and the digit to be printed:
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 c-3 e-5 b-2 a-1
 @end lilypond
 
+Articulations and fingerings are usually placed automatically, but
+you can specify a direction by replacing the dash (@code{-}) with @code{^} (up) or @code{_}
+(down).  You can also use multiple articulations on the same note.
+However, in most cases it is best to let LilyPond determine the
+articulation directions.
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c_-^1 d^. f^4_2-> e^-_+
+@end lilypond
+
+@subheading Dynamics
+
+Music Glossary: @rglos{dynamics}, @rglos{crescendo},
+@rglos{decrescendo}.
 
-Dynamic signs are made by adding the markings (with a backslash) to
-the note
+@notation{Dynamic} signs are made by adding the markings (with a
+backslash) to the note:
 
-@lilypond[fragment,quote,verbatim,relative=2]
-c\ff c\mf
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c\ff c\mf c\p c\pp
 @end lilypond
 
 @cindex dynamics
 @cindex decrescendo
 @cindex crescendo
 
-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
+@notation{Crescendi} and @notation{decrescendi} are started with
+the commands @code{\<} and @code{\>}.  An ending dynamic, for
+example @code{\f}, will finish the (de)crescendo, or the command
+@code{\!} can be used:
 
-@lilypond[fragment,quote,verbatim,relative=2]
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 c2\< c2\ff\> c2 c2\!
 @end lilypond
 
+@seealso
 
+Notation Reference: @ruser{Articulations},
+@ruser{Fingering instructions}, @ruser{Dynamics}.
 
-@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
-
-@lilypond[fragment,quote,fragment,relative=2,verbatim]
-d4( c16)( cis d e c cis d e)( d4)
-@end lilypond
+@node Adding text
+@subsection Adding text
 
-@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 are also
-nested in practice
+Text may be added to your scores:
 
-@lilypond[quote,fragment,relative=2]
-c2~( c8 fis fis4 ~ fis2 g2)
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c1^"espr" a_"legato"
 @end lilypond
 
-@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.
+Extra formatting may be added with the @code{\markup} command:
 
-@lilypond[quote,fragment,relative=2,verbatim]
-a8(\( ais b c) cis2 b'2 a4 cis, c\)
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c1^\markup{ \bold espr}
+a1_\markup{
+  \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
+}
 @end lilypond
 
 
-For more information on
+@seealso
 
-@quotation
-@table @asis
-@item Fingering
-see @ref{Fingering instructions}.
-@item Articulations
-see @ref{Articulations}.
-@item Slurs
-see @ref{Slurs}.
-@item Phrasing slurs
-see @ref{Phrasing slurs}.
-@item Dynamics
-see @ref{Dynamics}.
-@end table
-@end quotation
+Notation Reference: @ruser{Writing text}.
 
 
-@node Combining notes into chords
-@section Combining notes into chords
-
-@cindex chords
-Chords can be made by surrounding pitches with angle brackets.
-Angle brackets are the symbols @samp{<} and @samp{>}.
-
-@lilypond[quote,relative=1,fragment,verbatim]
-r4 <c e g>4 <c f a>8
-@end lilypond
+@node Automatic and manual beams
+@subsection Automatic and manual beams
 
+Music Glossary: @rglos{beam}.
 
-You can combine markings like beams and ties with chords.  They must
-be placed outside the angled brackets
+@cindex beams, by hand
+All @notation{beams} are drawn automatically:
 
-@lilypond[quote,relative=1,fragment,verbatim]
-r4 <c e g>8[ <c f a>]~ <c f a>
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+a8 ais d ees r d c16 b a8
 @end lilypond
 
-@example
-r4 <c e g>8\>( <c e g> <c e g> <c f a>8\!)
-@end example
+@noindent
+If you do not like the automatic beams, they may be overridden
+manually.  Mark the first note to be beamed with @code{[} and the
+last one with @code{]}.
 
-@lilypond[quote,relative=1,fragment]
-\slurUp
-r4 <c e g>8\>( <c e g> <c e g> <c f a>8\!)
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+a8[ ais] d[ ees r d] a b
 @end lilypond
 
+@seealso
 
+Notation Reference: @ruser{Automatic beams}, @ruser{Manual beams}.
 
 
-@node Basic rhythmical commands
-@section Basic rhythmical commands
+@node Advanced rhythmic commands
+@subsection Advanced rhythmic commands
 
 @cindex pickup
-@cindex anacruse
+@cindex anacrusis
 @cindex partial measure
-A pickup is entered with the keyword @code{\partial}.  It
-is followed by a duration: @code{\partial 4} is a quarter note upstep
-and @code{\partial 8} an eighth note
+@subheading Partial measure
+
+Music Glossary: @rglos{anacrusis}.
 
-@lilypond[quote,relative=2,verbatim,fragment]
+A pickup (or @notation{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[verbatim,quote,ragged-right,fragment,relative=2]
 \partial 8
-f8 c2 d e
+f8 c2 d
 @end lilypond
 
 @cindex tuplets
 @cindex triplets
-Tuplets are made with the @code{\times} keyword.  It takes two
-arguments: a fraction and a piece of music.  The duration of the piece
-of music is multiplied by the fraction.  Triplets make notes occupy
-2/3 of their notated duration, so a triplet has 2/3 as its fraction
+@subheading Tuplets
+
+Music Glossary: @rglos{note value}, @rglos{triplet}.
 
-@lilypond[quote,relative=1,verbatim,fragment]
+@notation{Tuplets} are made with the @code{\times} keyword.  It
+takes two arguments: a fraction and a piece of music.  The
+duration of the piece of music is multiplied by the fraction.
+Triplets make notes occupy 2/3 of their notated duration, so a
+@notation{triplet} has 2/3 as its fraction
+
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
 \times 2/3 { f8 g a }
 \times 2/3 { c r c }
+\times 2/3 { f,8 g16[ a g a] }
+\times 2/3 { d4 a8 }
 @end lilypond
 
 @cindex grace notes
 @cindex acciaccatura
-Grace notes are also made by prefixing a music expression with the
-keyword @code{\appoggiatura} or @code{\acciaccatura}
 @cindex appoggiatura
-@cindex acciaccatura
+@subheading Grace notes
 
-@lilypond[quote,relative=2,verbatim,fragment]
-c4 \appoggiatura b16 c4
-c4 \acciaccatura b16 c4
-@end lilypond
+Music Glossary: @rglos{grace notes}, @rglos{acciacccatura}, @rglos{appoggiatura}.
 
-@noindent
+@notation{Grace notes} are created with the @code{\grace} command,
+although they can also be created by prefixing a music expression
+with the keyword @code{\appoggiatura} or @code{\acciaccatura}:
 
-For more information on
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+c2 \grace { a32[ b] } c2
+c2 \appoggiatura b16 c2
+c2 \acciaccatura b16 c2
+@end lilypond
 
-@quotation
-@table @asis
-@item Grace notes
-see @ref{Grace notes},
-@item Tuplets
-see @ref{Tuplets},
-@item Pickups
-see @ref{Partial measures}.
-@end table
-@end quotation
+@seealso
 
+Notation Reference: @ruser{Grace notes}, @ruser{Tuplets},
+@ruser{Upbeats}.
 
-@node Commenting input files
-@section Commenting input files
 
-@cindex comments
-@cindex line comment
-@cindex block comment
-A comment is a remark for the human reader of the music input; it is
-ignored and has no effect on the printed output.  There are two types
-of comments.  The percent symbol @samp{%} introduces a line comment;
-the rest of the line is ignored.  A block comments 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
+@node Multiple notes at once
+@section Multiple notes at once
 
-@example
-% notes for twinkle twinkle follow
-c4 c g' g a a
+This section introduces having more than one note at the same
+time: multiple instruments, multiple staves for a single
+instrument (i.e. piano), and chords.
 
-%@{
-    This line, and the notes below
-    are ignored, since they are in a
-    block comment.
+Polyphony in music refers to having more than one voice occurring
+in a piece of music.  Polyphony in LilyPond refers to having more
+than one voice on the same staff.
 
-    g g f f e e d d c2 
-%@}
-@end example
+@menu
+* Music expressions explained::  
+* Multiple staves::             
+* Piano staves::                
+* Combining notes into chords::  
+* Single staff polyphony::      
+@end menu
 
-There is a special statement that really is a kind of comment.  The
-version statement marks for which version of LilyPond the file was
-written.  To mark a file for version 2.1.17, use
 
-@example
-\version "2.1.17"
-@end example
+@node Music expressions explained
+@subsection Music expressions explained
 
-@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
-@code{\version} to determine what rules to apply.
+In LilyPond input files, music is represented by @emph{music
+expressions}.  A single note is a music expression:
 
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+a4
+@end lilypond
 
-@node Printing lyrics
-@section Printing lyrics
-@cindex lyrics
+Enclosing a note in braces creates a @emph{compound music
+expression}.  Here we have created a compound music expression
+with two notes:
 
-@c TODO: (c) status of the Queen fragment.
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+{ a4 g4 }
+@end lilypond
 
-@cindex Lyrics
-@cindex Songs
-Lyrics are entered by separating each syllable with a space
+Putting a group of music expressions (e.g. notes) in braces means
+that they are in sequence (i.e. each one follows the previous
+one).  The result is another music expression:
 
-@example
-I want to break free
-@end example
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+{ { a4 g } f g }
+@end lilypond
 
-Consider the melody
+@subheading Simultaneous music expressions: multiple staves
 
-@lilypond[quote,verbatim,fragment,raggedright]
-\relative {
-    r4 c \times 2/3 { f g g }
-    \times 2/3 { g4( a2) }
-}
-@end lilypond
+Music Glossary: @rglos{polyphony}.
 
-@c FIXME: when/how/to what rename newlyrics?
-The lyrics can be set to these notes, combining both with the
-@code{\newlyrics} keyword
+This technique is useful for @notation{polyphonic} music.  To
+enter music with more voices or more staves, we combine
+expressions in parallel.  To indicate that two voices should play
+at the same time, simply enter a simultaneous combination of music
+expressions.  A @q{simultaneous} music expression is formed by
+enclosing expressions inside @code{<<} and @code{>>}.  In the
+following example, three sequences (all containing two separate
+notes) are combined simultaneously:
 
-@lilypond[quote,verbatim,fragment,raggedright]
-<<
-  \relative {
-    r4 c \times 2/3 { f g g }
-    \times 2/3 { g4( a2) }
-  }
-  \newlyrics { I want to break free }
->>
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  <<
+    { a4 g }
+    { f e }
+    { d b }
+  >>
+}
 @end lilypond
 
-@cindex melisma
-@cindex extender line
-@c synonyms?
-This melody ends on a @rglos{melisma}, a single syllable (`free')
-sung to more than one note.  This is indicated with an @emph{extender
-line}.  It is entered as two underscores, i.e.,
+Note that we have indented each level of the input with a
+different amount of space.  LilyPond does not care how much (or
+little) space there is at the beginning of a line, but indenting
+LilyPond code like this makes it much easier for humans to read.
 
-@example
-@{ I want to break free __ @}
-@end example 
+@warning{each note is relative to the previous note in
+the input, not relative to the @code{c''} in the initial
+@code{\\relative} command.}
 
-@lilypond[fragment,quote,raggedright]
-<<
-  \relative {
-    r4 c \times 2/3 { f g g }
-    \times 2/3 { g4( a2) }
-  }
-  \newlyrics { I want to break free __ }
->>
-@end lilypond
 
-Similarly, hyphens between words can be entered as two dashes,
-resulting in a centered hyphen between two syllables
+@subheading Simultaneous music expressions: single staff
 
-@example
-Twin -- kle twin -- kle
-@end example
+To determine the number of staves in a piece, LilyPond looks at
+the first expression.  If it is a single note, there is one staff;
+if there is a simultaneous expression, there is more than one
+staff.
 
-@lilypond[fragment,quote,raggedright]
-<<
-  \relative {
-     \time 2/4
-     f4 f c' c
-   }
-   \newlyrics { Twin -- kle twin -- kle }
->>
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  c2 <<c e>>
+  << { e f } { c <<b d>> } >>
+}
 @end lilypond
 
-More options, like putting multiple lines of lyrics below a melody are
-discussed in @ref{Vocal music}.
-
-@c FIXME: too geeky, for notation manual?
-@c or introduce using foo = \lyrics { a b c } ?
+@cindex expression
+@cindex music expression
+@subheading Analogy: mathematical expressions
 
-When using variables for a piece of lyrics
-To prevent certain words (for example `as') as being read as a
-pitch, the input-mode must be switched.  This is done with
-@code{\lyrics}.  In @code{\lyrics} mode, all words are read as lyric
-syllables.
+This mechanism is similar to mathematical formulas: a big formula
+is created by composing small formulas.  Such formulas are called
+expressions, and they can contain other music expressions, so you
+can make arbitrarily complex and large expressions.  For example,
 
 @example
-myText = \lyrics @{ I want to break free @}
-@end example
+1
 
-@noindent
-The braces @code{@{@}} signify that the syllables are sung in
-sequence.
+1 + 2
 
-@ignore
-By default, music expressions are interpreted in @code{Staff} context.  For
-lyrics, this is obviously not desirable, so it is necessary
-to explicitly specify a @code{Lyrics} context,
+(1 + 2) * 3
 
-@example
-\lyrics @{ I want to break free @}
+((1 + 2) * 3) / (4 * 5)
 @end example
 
-The melody for this song is as follows
-
-@lilypond[fragment,quote,fragment,relative=2]
-r4 c \times 2/3 { f4 g g }
-\times 2/3 { g4( a2) }
-@end lilypond
+This is a sequence of expressions, where each expression is
+contained in the next (larger) one.  The simplest expressions are
+numbers, and larger ones are made by combining expressions with
+operators (like @code{+}, @code{*} and @code{/}) and parentheses.
+Like mathematical expressions, music expressions can be nested
+arbitrarily deep, which is necessary for complex music like
+polyphonic scores.
 
-@end ignore
 
+@node Multiple staves
+@subsection Multiple staves
 
-@node A lead sheet
-@section A lead sheet
+LilyPond input files are constructed out of music expressions, as
+we saw in @ref{Music expressions explained}.  If the score begins
+with simultaneous music expressions, LilyPond creates multiples
+staves.  However, it is easier to see what happens if we create
+each staff explicitly.
 
-@cindex Lead sheets
-@cindex chords
-@cindex chord names
+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 in parallel with @code{<<}
+and @code{>>}:
 
-In popular music, it is common to denote accompaniment as chord names.
-Such chords can be entered like notes,
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  <<
+    \new Staff { \clef treble c }
+    \new Staff { \clef bass c,, }
+  >>
+}
+@end lilypond
 
-@example
-c2 f4. g8
-@end example
+The command @code{\new} introduces a @q{notation context.}  A
+notation context is an environment in which musical events (like
+notes or @code{\clef} commands) are interpreted.  For simple
+pieces, such notation contexts are created automatically.  For
+more complex pieces, it is best to mark contexts explicitly.
 
-@noindent
-but now, each pitch is read as the root of a chord instead of a note.
-This mode is switched on with @code{\chords}
+There are several types of contexts.  @code{Score}, @code{Staff},
+and @code{Voice} handle melodic notation, while @code{Lyrics} sets
+lyric texts and @code{ChordNames} prints chord names.
 
-@lilypond[quote,verbatim,raggedright]
-\chords { c2 f4. g8 }
+In terms of syntax, prepending @code{\new} to a music expression
+creates a bigger music expression.  In this way it resembles the
+minus sign in mathematics.  The formula @math{(4+5)} is an
+expression, so @math{-(4+5)} is a bigger expression.
+
+Time signatures entered in one staff affect all other
+staves@footnote{This behavior may be changed if desired; for
+details, see @ruser{Polymetric notation}.}.  On the other hand,
+the key signature of one staff does @emph{not} affect other
+staves.
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  <<
+    \new Staff { \clef treble \key d \major \time 3/4 c }
+    \new Staff { \clef bass c,, }
+  >>
+}
 @end lilypond
 
-Other chords can be created by adding modifiers after a colon.  The
-following example shows a few common modifiers
 
-@lilypond[quote,verbatim]
-\chords { c2 f4:m g4:maj7 gis1:dim7 }
-@end lilypond
 
-For lead sheets, chords are not printed on staves, but as names on a
-line of themselves.  Hence, we have to override the context with
-@code{\new}, rendering the music expression in a @code{ChordNames}
-context
 
-@lilypond[quote,verbatim]
-\new ChordNames \chords { c2 f4.:m g4.:maj7 gis8:dim7 }
-@end lilypond
+@node Piano staves
+@subsection Piano staves
+
+@cindex staff switch, manual
+@cindex cross staff voice, manual
 
-@cindex lead sheet
-When put together, chord names, lyrics and a melody form
-a lead sheet, for example,
+Music Glossary: @rglos{brace}.
+
+Piano music is typeset in two staves connected by a
+@notation{brace}.
+Printing such a staff is similar to the polyphonic example in
+@ref{Multiple staves}.  However, now this entire expression is
+inserted inside a @code{PianoStaff}:
 
 @example
-<<
-  \new ChordNames \chords @{ @emph{chords} @}
-  @emph{the melody}
-  \newlyrics @{ @emph{the text} @}
+\new PianoStaff <<
+  \new Staff @dots{}
+  \new Staff @dots{}
 >>
-@}
 @end example
 
-@lilypond[quote,raggedright]
-<<
-  \new ChordNames \chords { r2 c:sus4 f } 
-  \relative {
-    r4 c' \times 2/3 { f g g }
-    \times 2/3 { g4( a2) }
-  }
- \newlyrics { I want to break free __ }
->>
+Here is a small example:
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  \new PianoStaff <<
+    \new Staff { \time 2/4 c4 e g g, }
+    \new Staff { \clef bass c,, c' e c }
+  >>
+}
 @end lilypond
 
-A complete list of modifiers and other options for layout can be found
-in @ref{Chords}.
+@seealso
 
-@c FIXME: we talk about \midi before mentioning \paper (or \layout?)
-@node Listening to output
-@section Listening to output
+Notation Reference: @ruser{Piano music}.
 
-@cindex sound
-@cindex MIDI
 
-MIDI (Musical Instrument Digital Interface) is a standard for
-connecting and controlling digital instruments.  A MIDI file is like a
-tape recording of a MIDI instrument.
+@node Combining notes into chords
+@subsection Combining notes into chords
 
-To create a MIDI from a music piece of music, add a @code{\midi}
-block. This causes LilyPond to create a MIDI file, so you can listen
-to what you just entered.  It is great for checking the music.
-Octaves that are off or accidentals that were mistyped stand out very
-much when listening to the musical transcription.
+@cindex chords
 
-The @code{\midi} block is added to @code{\score}, for example,
+Music Glossary: @rglos{chord}.
 
-@example 
-\score @{
-    @var{...music...}
-    \midi @{ \tempo 4=72 @}
-@}
-@end example 
-
-Here, the tempo is specified using the @code{\tempo} command.  In this
-case the tempo of quarter notes is set to 72 beats per minute.  More
-information on auditory output in the notation manual can be found in
-@ref{Sound}.
-
-If there is a @code{\midi} command in a @code{\score}, only MIDI will
-be produced.  If notation is needed too, a @code{\paper} block must be
-added
-
-@example 
-\score @{
-    @var{...music...}
-    \midi @{ \tempo 4=72 @}
-    \paper @{ @}
-@}
-@end example 
-@cindex paper block
+@notation{Chords} can be made by surrounding pitches with single
+angle brackets.  Angle brackets are the symbols @code{<} and
+@code{>}.
 
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+r4 <c e g>4 <c f a>2
+@end lilypond
 
-@node Adding titles
-@section Adding titles
+You can combine markings like beams and ties with chords.  They
+must be placed outside the angle brackets.
 
-Bibliographic information is entered in a separate block, the
-@code{\header} block.  The name of the piece, its composer, etc., are
-entered as an assignment, within @code{\header
-@{@tie{}@dots{}@tie{}@}}.  The @code{\header} block is usually put at
-the top of the file.  For example,
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+r4 <c e g>8[ <c f a>]~ <c f a>2
+@end lilypond
 
-@example 
-\header @{
-  title = "Eight miniatures" 
-  composer = "Igor Stravinsky"
-  tagline = "small is beautiful"
-@}
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+r4 <c e g>8\>( <c e g> <c e g>4 <c f a>\!)
+@end lilypond
 
-@{ @dots{} @}
-@end example
 
-@cindex bibliographic information
-@cindex titles
-@cindex composer
-@cindex Engraved by LilyPond
+@node Single staff polyphony
+@subsection Single staff polyphony
 
-When the file is processed the title and composer are printed above
-the music.  The `tagline' is a short line printed at bottom of the last
-page which normally says `Engraved by LilyPond, version @dots{}'.  In
-the example above it is replaced by the line `small is
-beautiful.'@footnote{Nicely printed parts are good PR for us, so
-please leave the tagline if you can.}
+@cindex polyphony
+@cindex multiple voices
+@cindex voices, more -- on a staff
+When different melodic lines are combined on a single staff they
+are printed as polyphonic voices; each voice has its own stems,
+slurs and beams, and the top voice has the stems up, while the
+bottom voice has them down.
 
+Entering such parts is done by entering each voice as a sequence
+(with @code{@{...@}}) and combining these simultaneously,
+separating the voices with @code{\\}
 
-The @code{\header} block is usually put at the top of the file.
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+<<
+  { a4 g2 f4~ f4 } \\
+  { r4 g4 f2 f4 }
+>>
+@end lilypond
 
-A document may contains multiple pieces of music, examples are an
-etude book, or an orchestral part with multiple movements.
-@c FIXME: ugh.  \header can only live at toplevel, or inside \score.
-@c If we allow it also to live inside \book, we do not need \score here?
-The @code{\book} block is used to group the individual @code{\score}
-blocks.
+For polyphonic music typesetting, spacer rests can also be
+convenient; these are rests that do not print.  They are useful
+for filling up voices that temporarily do not play.  Here is the
+same example with a spacer rest (@code{s}) instead of a normal
+rest (@code{r}),
 
-The header for each piece of music can be put inside the @code{\score}
-block.  The @code{piece} name from the header will be printed before
-each movement.
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+<<
+  { a4 g2 f4~ f4 } \\
+  { s4 g4 f2 f4 }
+>>
+@end lilypond
 
-@ignore
+@noindent
+Again, these expressions can be nested arbitrarily.
 
-FIXME: introduce \BOOK
+@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
+<<
+  \new Staff <<
+    { a4 g2 f4~ f4 } \\
+    { s4 g4 f2 f4 }
+  >>
+  \new Staff <<
+    \clef bass
+    { <c g>1 ~ <c g>4 } \\
+    { e,,4 d e2 ~ e4}
+  >>
+>>
+@end lilypond
 
-FIXME: Using "Adagio" as a name is confusing, it's more common to be
-a plain tempo indication.
+@seealso
 
-Since today (CVS-1.211) we also allow headers and composite music
-inside book:
+Notation Reference: @ruser{Simultaneous notes}.
 
-  \header { ... }
-  \book {
-    \header { ... }
-    { ... }
-    \header { ... }
-    { ... }
-  }
 
-@end ignore
+@node Songs
+@section Songs
 
-@cindex Engraved by LilyPond
-@cindex signature line
-@cindex tag line
+This section introduces vocal music and simple song sheets.
 
-@example 
-\header @{
-  title = "Eight miniatures" 
-  composer = "Igor Stravinsky"
-  tagline = "small is beautiful"
-@}
+@menu
+* Setting simple songs::        
+* Aligning lyrics to a melody::  
+* Lyrics to multiple staves::   
+@end menu
 
-\book @{
-  \score @{
-    @dots{}
-    \header @{ piece = "Adagio" @}
-  @}
-  \score @{
-    @dots{}
-    \header @{ piece = "Menuetto" @}
-  @}
-@}
-@end example
 
-More information on titling can be found in @ref{Invoking lilypond}.
+@node Setting simple songs
+@subsection Setting simple songs
 
+@cindex lyrics
+@cindex songs
 
-@node Single staff polyphony
-@section Single staff polyphony
+Music Glossary: @rglos{lyrics}.
 
-@cindex polyphony
-@cindex multiple voices
-@cindex voices, more -- on a staff
-When different melodic lines are combined on a single staff they are
-printed as polyphonic voices; each voice has its own stems, slurs and
-beams, and the top voice has the stems up, while the bottom voice has
-them down.
-
-Entering such parts is done by entering each voice as a sequence (with
-@code{@{...@}}), and combining those simultaneously, separating the
-voices with @code{\\}
-
-@lilypond[quote,verbatim,relative=3]
-<< { a4 g2 f4~ f4 } \\
-   { r4 g4 f2 f4 } >>
+Here is the start of the melody to a nursery
+rhyme, @qq{Girls and boys come out to play}:
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  \key g \major
+  \time 6/8
+  d4 b8 c4 a8 d4 b8 g4
+}
 @end lilypond
 
-For polyphonic music typesetting, spacer rests can also be convenient; these
-are rests that do not print.  It is useful for filling up voices that
-temporarily do not play.  Here is the same example with a spacer rest
-instead of a normal rest---just use @samp{s} instead of @samp{r}
+The @notation{lyrics} can be set to these notes, combining both
+with the @code{\addlyrics} keyword.  Lyrics are entered by
+separating each syllable with a space.
 
-@lilypond[quote,verbatim,relative=3]
-<< { a4 g2 f4~ f4 } \\
-   { s4 g4 f2 f4 } >>
+@lilypond[verbatim,quote,ragged-right]
+<<
+  \relative c'' {
+    \key g \major
+    \time 6/8
+    d4 b8 c4 a8 d4 b8 g4
+  }
+  \addlyrics {
+    Girls and boys come out to play,
+  }
+>>
 @end lilypond
 
-@noindent
-Again, these expressions can be nested arbitrarily
+Note the curly brackets delimiting both the music and the lyrics,
+and the angle brackets @code{<< ... >>} around the whole piece to
+show that the music and lyrics are to occur at the same time.
+
+@node Aligning lyrics to a melody
+@subsection Aligning lyrics to a melody
 
-@lilypond[quote,fragment,verbatim,relative=3]
+Music Glossary: @rglos{melisma}, @rglos{extender line}.
+
+@cindex melisma
+@cindex extender line
+@cindex hyphens
+@cindex underscore
+
+The next line in the nursery rhyme is @q{The moon doth shine as
+bright as day}.  Let's extend it:
+
+@lilypond[verbatim,quote,ragged-right]
 <<
-  \new Staff <<
-    { a4 g2 f4~ f4 } \\
-    { s4 g4 f2 f4 }
-  >>
-  \new Staff <<
-    \clef bass
-    { <c, g>1 ~ <c g>4 } \\
-    { f4 d e2 ~ e4}
-  >>
+  \relative c'' {
+    \key g \major
+    \time 6/8
+    d4 b8 c4 a8 d4 b8 g4 
+    g8 a4 b8 c b a d4 b8 g4.
+  }
+  \addlyrics {
+    Girls and boys come out to play,
+    The moon doth shine as bright as day;
+  }
 >>
 @end lilypond
 
-More features of polyphonic typesetting in the notation manual are
-described in @ref{Polyphony}.
+We see the extra lyrics do not align properly with the notes.  The
+word @q{shine} should be sung on two notes, not one.  This is
+called a @notation{melisma}, a single syllable sung to more than one
+note.  There are several ways to spread a syllable over multiple
+notes, the simplest being to add a slur across them (see @ref{Ties
+and slurs}):
 
+@lilypond[verbatim,quote,ragged-right]
+<<
+  \relative c'' {
+    \key g \major
+    \time 6/8
+    d4 b8 c4 a8 d4 b8 g4 
+    g8 a4 b8 c([ b)] a d4 b8 g4.
+  }
+  \addlyrics {
+    Girls and boys come out to play,
+    The moon doth shine as bright as day;
+  }
+>> 
+@end lilypond
 
-@node Piano staves
-@section Piano staves
-
-@cindex staff switch, manual
-@cindex cross staff voice, manual
-@cindex @code{\context}
-Piano music is typeset in two staves connected by a brace.  Printing
-such a staff is similar to the polyphonic example in @ref{More staves},
+Here we have also used manual beaming (the square brackets @code{[
+]} ) to generate the beaming which is customarily used with lyrics
+(see @ref{Automatic and manual beams}).
 
-@example
-<< \new Staff @{ @dots{} @}
-   \new Staff @{ @dots{} @} >>
-@end example
+If a syllable extends over several notes or a single very long
+note an @notation{extender line} is usually drawn from the syllable
+extending under all the notes for that syllable.  It is entered as
+two underscores @code{__}.  Here is an example from the first
+three bars of Dido's Lament, from Purcell's Dido and Æneas:
 
-@noindent
-but now this entire expression must be interpreted as a
-@code{PianoStaff}
+@lilypond[verbatim,quote,ragged-right]
+<<
+  \relative c'' {
+    \key g \minor
+    \time 3/2
+    g2 a bes bes( a) 
+    b c4.( bes8 a4. g8 fis4.) g8 fis1
+  }
+  \addlyrics {
+    When I am laid, 
+    am laid __ in earth,
+  }
+>>
+@end lilypond
 
-@example
-\new PianoStaff << \new Staff @dots{} >>
-@end example
+None of the examples so far have involved words containing more
+than one syllable.  Such words are usually split one syllable to a
+note, with hyphens between syllables.  Such hyphens are entered as
+two dashes, resulting in a centered hyphen between the syllables.
+Here is an example showing this and everything we have learned so
+far about aligning lyrics to notes.
 
-Here is a full-fledged example
+@c no ragged-right here because otherwise the hyphens get lost,
+@c but the example is long enough to avoid looking strange.
+@lilypond[verbatim,quote]
+<<
+  \relative c' {
+    \key g \major
+    \time 3/4
+    \partial 4
+    d4 g4 g a8( b) g4 g4 
+    b8( c) d4 d e4 c2
+  }
+  \addlyrics {
+    A -- way in a __ man -- ger, 
+    no __ crib for a bed, __
+  }
+>>
+@end lilypond
 
-@lilypond[quote,verbatim,relative=1,fragment]
-\new PianoStaff <<
-  \new Staff { \time 2/4 c4 c g' g }
-  \new Staff { \clef bass c,, c' e c }
+Some lyrics, especially those in Italian, require the opposite:
+setting more than one syllable to a single note.  This is
+achieved by linking the syllables together with a single
+underscore @code{_} (with no spaces), or enclosing them in
+quotes.  Here's an example from Rossini's Figaro, where
+@q{al} has to be sung on the same note as the @q{go} of 
+@q{Largo} in Figaro's aria @q{Largo al factotum}:
+
+@c no ragged-right here because otherwise the hyphens get lost,
+@c but the example is long enough to avoid looking strange.
+@lilypond[verbatim,quote]
+<<
+  \relative c' {
+    \clef bass
+    \key c \major
+    \time 6/8
+    c4.~ c8 d b c([ d)] b c d b c
+  }
+  \addlyrics {
+    Lar -- go_al fac -- to -- tum del -- la cit -- tà
+  }
 >>
 @end lilypond
 
-More information on formatting piano music is in @ref{Piano music}.  
 
+@seealso
 
-@node Organizing larger pieces
-@section Organizing larger pieces
+Notation Reference: @ruser{Vocal music}.
 
-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 pieces,
-more deeply nested.  Such large expressions can become unwieldy.
 
-By using variables, also known as identifiers, it is possible to break
-up complex music expressions.  An identifier is assigned as follows
+@node Lyrics to multiple staves
+@subsection Lyrics to multiple staves
 
-@example
-namedMusic = @{ @dots{} @}
-@end example
+The simple approach using @code{\addlyrics} can be used for
+placing lyrics under more than one staff.  Here is an
+example from Handel's Judas Maccabæus:
 
-@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,raggedright,verbatim,nofragment]
-seufzer = {
-  e'4( dis'4)
-}
-{ \seufzer \seufzer }
+@lilypond[verbatim,quote,ragged-right]
+<<
+  {
+    \time 6/8
+    \partial 8
+  }
+  \relative c'' {
+    \key f \major
+    c8 c([ bes)] a a([ g)] f f'4. b, c4.~ c4
+  }
+  \addlyrics {
+    Let flee -- cy flocks the hills a -- dorn, __
+  }
+  \relative c' {
+    \key f \major
+    r8 r4. r4 c8 a'([ g)] f f([ e)] d e([ d)] c bes'4
+  }
+  \addlyrics {
+    Let flee -- cy flocks the hills a -- dorn,
+  }
+>>
 @end lilypond
 
-The name of an identifier should have alphabetic characters only;
-no numbers, underscores or dashes.  The assignment should be outside of
-running music.
+but scores any more complex than this simple example are
+better produced by separating out the staff structure
+from the notes and lyrics with variables.  These are
+discussed later (see @ref{Organizing pieces with variables}).
 
-It is possible to use variables for many other types of objects in the
-input.  For example,
+@seealso
 
-@example
-width = 4.5\cm
-name = "Wendy"
-aFivePaper = \paper @{ paperheight = 21.0 \cm @}
-@end example
+Notation Reference: @ruser{Vocal music}.
 
-Depending on its contents, the identifier can be used in different
-places.  The following example uses the above variables
 
-@example
-  \paper @{
-    \aFivePaper
-    linewidth = \width
-  @}
-  @{ c4^\name @}
-@end example
+@node Final touches
+@section Final touches
 
-More information on the possible uses of identifiers is in the
-technical manual, in TODO.
+This is the final section of the tutorial; it demonstrates how to
+add the final touches to simple pieces, and provides an
+introduction to the rest of the manual.
 
+@menu
+* Version number::              
+* Adding titles::               
+* Absolute note names::         
+* Organizing pieces with variables::  
+* After the tutorial::          
+* How to read the manual::      
+@end menu
 
-@node An orchestral part
-@section An orchestral part
 
-In orchestral music, all notes are printed twice; in a part for
-the musicians, and 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.
+@node Version number
+@subsection Version number
 
-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
+@cindex versioning
+The @code{\version} statement records the version of LilyPond that
+was used to write the file:
 
 @example
-hornNotes =  \relative c @{
-  \time 2/4
-  r4 f8 a cis4 f e d
-@}
+\version "2.11.23"
 @end example
 
 @noindent
-Then, an individual part is made by putting the following in a file
+By convention, this is placed at the top of your LilyPond file.
+
+These annotations make future upgrades of LilyPond go more
+smoothly.  Changes in the syntax are handled with a special
+program, @file{convert-ly}, and it uses @code{\version} to
+determine what rules to apply.  For details, see
+@rprogram{Updating files with convert-ly}.
+
+
+@node Adding titles
+@subsection Adding titles
+
+The title, composer, opus number, and similar information are
+entered in the @code{\header} block.  This exists outside of the
+main music expression; the @code{\header} block is usually placed
+underneath the @ref{Version number}.
 
 @example
-\include "horn-music.ly"
+\version "2.11.23"
 \header @{
-  instrument = "Horn in F"
+  title = "Symphony"
+  composer = "Me"
+  opus = "Op. 9"
 @}
 
 @{
- \transpose f c' \hornNotes
+  @dots{} music @dots{}
 @}
 @end example
 
-The line
+When the file is processed, the title and composer are printed
+above the music.  More information on titling can be found in
+@ruser{Creating titles}.
 
-@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 downwards. Sounding
-@samp{f} is denoted by notated @code{c'}, which corresponds with
-tuning of a normal French Horn in@tie{}F.  The transposition can be seen
-in the following output
-
-@lilypond[quote,raggedright]
-  \transpose f c' \relative c {
-    \time 2/4
-    r4 f8 a cis4 f e d
-  }
-@end lilypond
+@node Absolute note names
+@subsection Absolute note names
 
-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
-(1@tie{}for a whole note, 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
+So far we have always used @code{\relative} to define pitches.
+This is the easiest way to enter most music, but another way of
+defining pitches exists: absolute mode.
 
-@example
-R2*3
-@end example
+If you omit the @code{\relative}, LilyPond treats all pitches as
+absolute values.  A @code{c'} will always mean middle C, a
+@code{b} will always mean the note one step below middle C, and a
+@code{g,} will always mean the note on the bottom staff of the
+bass clef.
 
-When printing the part, multi-rests
-must be condensed.  This is done by setting a run-time variable
+@lilypond[verbatim,quote,ragged-right]
+{
+  \clef bass
+  c' b g, g,
+  g, f, f c'
+}
+@end lilypond
 
-@example
-\set Score.skipBars = ##t
-@end example
+Here is a four-octave scale:
 
-@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,raggedright]
-\transpose f c' \relative c {
-    \time 2/4
-    \set Score.skipBars = ##t 
-    R2*3
-    r4 f8 a cis4 f e d
-  }
+@lilypond[verbatim,quote,ragged-right]
+{
+  \clef bass
+  c, d, e, f,
+  g, a, b, c
+  d e f g
+  a b c' d'
+  \clef treble
+  e' f' g' a'
+  b' c'' d'' e''
+  f'' g'' a'' b''
+  c'''1
+}
 @end lilypond
 
+As you can see, writing a melody in the treble clef involves a lot
+of quote @code{'} marks.  Consider this fragment from Mozart:
 
-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"
+@lilypond[verbatim,quote,ragged-right]
+{
+  \key a \major
+  \time 6/8
+  cis''8. d''16 cis''8 e''4 e''8
+  b'8. cis''16 b'8 d''4 d''8
+}
+@end lilypond
 
-  <<
-    \new Staff \hornNotes
-    \new Staff \bassoonNotes
-  >>
-@end example
+All these quotes makes the input less readable and it is a source
+of errors.  With @code{\relative}, the previous example is much
+easier to read:
 
-@noindent
-leading to 
-
-@lilypond[quote,raggedright]
-  \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
-    }
-  >>
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+  \key a \major
+  \time 6/8
+  cis8. d16 cis8 e4 e8
+  b8. cis16 b8 d4 d8
+}
 @end lilypond
 
-More in-depth information on preparing parts and scores can be found
-in the notation manual; see @ref{Orchestral music}.
+If you make a mistake with an octave mark (@code{'} or @code{,})
+while working in @code{\relative} mode, it is very obvious -- many
+notes will be in the wrong octave.  When working in absolute mode,
+a single mistake will not be as visible, and will not be as easy
+to find.
 
-Setting run-time variables (`properties') is discussed in ref-TODO.
+However, absolute mode is useful for music which has large
+intervals, and is extremely useful for computer-generated LilyPond
+files.
 
 
-@node Integrating text and music
-@section Integrating text and music
+@node Organizing pieces with variables
+@subsection Organizing pieces with variables
 
-@cindex La@TeX{}, music in
-@cindex HTML, music in
-@cindex Texinfo, music in
-Some texts include music examples.  Examples are musicological
-treatises, songbooks or manuals like this.  Such texts can be made by
-hand, simply by importing a PostScript figure into the word processor.
-However, there is an automated procedure to reduce the amount of work
-involved HTML, La@TeX{}, and Texinfo documents.
+When all of the elements discussed earlier are combined to produce
+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{variables}.
 
-A script called @code{lilypond-book} will extract the music fragments,
-run format them, and put back the resulting notation.  This program is
-fully described in @ref{lilypond-book manual}.  Here we show a small
-example.  The example also contains explanatory text, so we will not
-comment on it further
+With variables (also known as identifiers or macros), we can break
+up complex music expressions.  A variable is assigned as
+follows:
 
 @example
-\documentclass[a4paper]@{article@}
-\begin@{document@}
-
-Documents for lilypond-book may freely mix music and text.  For
-example,
-
-\begin@{lilypond@}
- @{ \relative c' @{
-     c2 g'2 \times 2/3 @{ f8 e d @} c'2 g4
-  @} 
-\end@{lilypond@}
-
-Options are put in brackets.
+namedMusic = @{ @dots{} @}
+@end example
 
-\begin[fragment,quote,staffsize=26,verbatim]@{lilypond@}
-  c'4 f16
-\end@{lilypond@}
+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).
+Variables must be defined @emph{before} the main music
+expression.
+
+@lilypond[verbatim,quote,ragged-right]
+violin = \new Staff { \relative c'' {
+  a4 b c b
+}}
+cello = \new Staff { \relative c {
+  \clef bass
+  e2 d
+}}
+{
+  <<
+    \violin
+    \cello
+  >>
+}
+@end lilypond
 
-Larger examples can be put in a separate file, and introduced with
-\verb+\lilypondfile+.
+@noindent
+The name of a variable must have alphabetic characters only, no
+numbers, underscores, or dashes.
 
-\lilypondfile[quote,noindent]@{screech-boink.ly@}
+It is possible to use variables for many other types of objects in
+the input.  For example,
 
-\end@{document@}
+@example
+width = 4.5\cm
+name = "Wendy"
+aFivePaper = \paper @{ paperheight = 21.0 \cm @}
 @end example
 
-Under Unix, you can view the results as follows
+Depending on its contents, the variable can be used in different
+places.  The following example uses the above variables:
 
 @example
-$ cd input/tutorial
-$ mkdir -p out/
-$ lilypond-book --output=out/ lilybook.tex
-lilypond-book (GNU LilyPond) 2.1.19
-Reading `input/tutorial/lilybook.tex'
-Reading `input/screech-boink.ly'
-@var{lots of stuff deleted}
-Writing `out/lilybook.tex'
-$ cd out
-$ latex lilybook
-@var{lots of stuff deleted}
-$ xdvi lilybook 
+\paper @{
+  \aFivePaper
+  line-width = \width
+@}
+@{ c4^\name @}
 @end example
 
-To convert the file into a nice PDF document, run the following
-commands
 
-@example
-$ dvips -Ppdf -u+lilypond -u+ec-mftrace lilybook
-$ ps2pdf lilybook.ps
-@end example
+@node After the tutorial
+@subsection After the tutorial
 
-Running lilypond-book and running latex creates a lot of temporary
-files, which would clutter up the working directory.  To remedy this,
-use the @code{--output=@var{dir}} option.  It will create the files in
-a separate subdirectory @file{dir}.
+After finishing the tutorial, you should probably try writing a
+piece or two.  Start by adding notes to one of the @ref{Templates}.
+If you need any notation that was not covered in the
+tutorial, look at the Notation Reference, starting with
+@ruser{Musical notation}.  If you want to write for an instrument
+ensemble that is not covered in the templates, take a look at
+@ref{Extending the templates}.
 
-Finally the result of the La@TeX{} example shown above.@footnote{Note
-that in this tutorial the example is processed with Texinfo.  This gives
-slightly different results in layout.}  This finishes the tutorial
-section.
+Once you have written a few short pieces, read the rest of the
+Learning Manual (chapters 3-5).  There's nothing wrong with
+reading it 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.
 
-@page
 
-Documents for lilypond-book may freely mix music and text.  For
-example,
+@node How to read the manual
+@subsection How to read the manual
 
-@lilypond
-\relative c' {
-  c2 g'2 \times 2/3 { f8 e d } c'2 g4
-}
-@end lilypond
+Many examples in the tutorial omitted a @code{\relative c'' @{
+... @}} around the printed example, as we saw in
+@ref{How to read the tutorial}.
 
-Options are put in brackets.
+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 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
+@code{\relative} or absolute-mode @code{@{ @}}.
 
-@lilypond[fragment,quote,staffsize=26,verbatim]
-c'4 f16
-@end lilypond
+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.
 
-Larger examples can be put in a separate file, and introduced with
-@code{\lilypondfile}.
+For information about the structure of the rest of the manual, see
+@ref{About this manual}.
 
-@lilypondfile[quote,noindent]{screech-boink.ly}