* How LilyPond files work::
* Voices contain music::
* TODO new sec fundamental::
+* Extending the templates::
+* Scores and parts::
@end menu
TODO... add more info? Fluff up the first sentence?
+@node Extending the templates
+@section Extending the templates
+
+You've read the tutorial, you know how to write music. But how can you
+get the staves that you want? The templates are ok, but what if you
+want something that isn't covered?
+
+@menu
+* Soprano and cello::
+* TODO another example of extending templates::
+@end menu
+
+@node Soprano and cello
+@unnumberedsubsec Soprano and cello
+
+Start off with the template that seems closest to what you want to end
+up with. Let's say that you want to write something for soprano and
+cello. In this case, we would start with @q{Notes and lyrics} (for the
+soprano part).
+
+@example
+\version "2.11.23"
+melody = \relative c' @{
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a4 b c d
+@}
+
+text = \lyricmode @{
+ Aaa Bee Cee Dee
+@}
+
+\score@{
+ <<
+ \new Voice = "one" @{
+ \autoBeamOff
+ \melody
+ @}
+ \new Lyrics \lyricsto "one" \text
+ >>
+ \layout @{ @}
+ \midi @{ @}
+@}
+@end example
+
+Now we want to add a cello part. Let's look at the @q{Notes only} example:
+
+@example
+\version "2.11.23"
+melody = \relative c' @{
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a4 b c d
+@}
+
+\score @{
+\new Staff \melody
+\layout @{ @}
+\midi @{ @}
+@}
+@end example
+
+We don't need two @code{\version} commands. We'll need the @code{melody}
+section. We don't want two @code{\score} sections -- if we had two
+@code{\score}s, we'd get the two parts separately. We want them together,
+as a duet. Within the @code{\score} section, we don't need two
+@code{\layout} or @code{\midi}.
+
+If we simply cut and paste the @code{melody} section, we would end up with
+two @code{melody} sections. So let's rename them. We'll call the section
+for the soprano @code{sopranoMusic} and the section for the cello
+@code{celloMusic}. While we're doing this, let's rename @code{text}
+to be @code{sopranoLyrics}. Remember to rename both instances of all
+these names -- both the initial definition (the
+@code{melody = relative c' @{ } part) and the name's use (in the
+@code{\score} section).
+
+While we're doing this, let's change the cello part's staff -- celli
+normally use bass clef. We'll also give the cello some different
+notes.
+
+@example
+\version "2.11.23"
+sopranoMusic = \relative c' @{
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a4 b c d
+@}
+
+sopranoLyrics = \lyricmode @{
+ Aaa Bee Cee Dee
+@}
+
+celloMusic = \relative c @{
+ \clef bass
+ \key c \major
+ \time 4/4
+
+ d4 g fis8 e d4
+@}
+
+\score@{
+ <<
+ \new Voice = "one" @{
+ \autoBeamOff
+ \sopranoMusic
+ @}
+ \new Lyrics \lyricsto "one" \sopranoLyrics
+ >>
+ \layout @{ @}
+ \midi @{ @}
+@}
+@end example
+
+This is looking promising, but the cello part won't appear in the
+score -- we haven't used it in the @code{\score} section. If we
+want the cello part to appear under the soprano part, we need to add
+
+@example
+\new Staff \celloMusic
+@end example
+
+@noindent
+underneath the soprano stuff. We also need to add @code{<<} and
+@code{>>} around the music -- that tells LilyPond that there's
+more than one thing (in this case, @code{Staff}) happening at once. The
+@code{\score} looks like this now
+
+@example
+\score@{
+ <<
+ <<
+ \new Voice = "one" @{
+ \autoBeamOff
+ \sopranoMusic
+ @}
+ \new Lyrics \lyricsto "one" \sopranoLyrics
+ >>
+ \new Staff \celloMusic
+ >>
+ \layout @{ @}
+ \midi @{ @}
+@}
+@end example
+
+@noindent
+This looks a bit messy; the indentation is messed up now. That is
+easily fixed. Here's the complete soprano and cello template.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.11.23"
+sopranoMusic = \relative c' {
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a4 b c d
+}
+
+sopranoLyrics = \lyricmode {
+ Aaa Bee Cee Dee
+}
+
+celloMusic = \relative c {
+ \clef bass
+ \key c \major
+ \time 4/4
+
+ d4 g fis8 e d4
+}
+
+\score{
+ <<
+ <<
+ \new Voice = "one" {
+ \autoBeamOff
+ \sopranoMusic
+ }
+ \new Lyrics \lyricsto "one" \sopranoLyrics
+ >>
+ \new Staff \celloMusic
+ >>
+ \layout { }
+ \midi { }
+}
+@end lilypond
+
+
+@node TODO another example of extending templates
+@unnumberedsubsec TODO another example of extending templates
+
+TODO: somebody else fill this in. You guys like vocal stuff,
+right? Get to it. :) -gp
+
+
+
+@node Scores and parts
+@section Scores and parts
+
+TODO: this is really old stuff from the really old tutorial.
+Rewrite, fix, etc. -gp
+
+In orchestral music, all notes are printed twice. Once in a part for
+the musicians, and once in a full score for the conductor. Variables can
+be used to avoid double work. The music is entered once, and stored in
+a variable. The contents of that variable is then used to generate
+both the part and the full score.
+
+It is convenient to define the notes in a special file. For example,
+suppose that the file @file{horn-music.ly} contains the following part
+of a horn/@/bassoon duo
+
+@example
+hornNotes = \relative c @{
+ \time 2/4
+ r4 f8 a cis4 f e d
+@}
+@end example
+
+@noindent
+Then, an individual part is made by putting the following in a file
+
+@example
+\include "horn-music.ly"
+\header @{
+ instrument = "Horn in F"
+@}
+
+@{
+ \transpose f c' \hornNotes
+@}
+@end example
+
+The line
+
+@example
+\include "horn-music.ly"
+@end example
+
+@noindent
+substitutes the contents of @file{horn-music.ly} at this position in
+the file, so @code{hornNotes} is defined afterwards. The command
+@code{\transpose f@tie{}c'} indicates that the argument, being
+@code{\hornNotes}, should be transposed by a fifth upwards. Sounding
+@samp{f} is denoted by notated @code{c'}, which corresponds with the
+tuning of a normal French Horn in@tie{}F. The transposition can be seen
+in the following output
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+ \time 2/4
+ r4 f8 a cis4 f e d
+}
+@end lilypond
+
+In ensemble pieces, one of the voices often does not play for many
+measures. This is denoted by a special rest, the multi-measure
+rest. It is entered with a capital @samp{R} followed by a duration
+(@code{1}@tie{}for a whole note, @code{2}@tie{}for a half note,
+etc.). By multiplying the
+duration, longer rests can be constructed. For example, this rest
+takes 3@tie{}measures in 2/4 time
+
+@example
+R2*3
+@end example
+
+When printing the part, multi-rests
+must be condensed. This is done by setting a run-time variable
+
+@example
+\set Score.skipBars = ##t
+@end example
+
+@noindent
+This command sets the property @code{skipBars} in the
+@code{Score} context to true (@code{##t}). Prepending the rest and
+this option to the music above, leads to the following result
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+ \time 2/4
+ \set Score.skipBars = ##t
+ R2*3
+ r4 f8 a cis4 f e d
+}
+@end lilypond
+
+
+The score is made by combining all of the music together. Assuming
+that the other voice is in @code{bassoonNotes} in the file
+@file{bassoon-music.ly}, a score is made with
+
+@example
+\include "bassoon-music.ly"
+\include "horn-music.ly"
+
+<<
+ \new Staff \hornNotes
+ \new Staff \bassoonNotes
+>>
+@end example
+
+@noindent
+leading to
+
+@lilypond[quote,ragged-right]
+\relative c <<
+ \new Staff {
+ \time 2/4 R2*3
+ r4 f8 a cis4 f e d
+ }
+ \new Staff {
+ \clef bass
+ r4 d,8 f | gis4 c | b bes |
+ a8 e f4 | g d | gis f
+ }
+>>
+@end lilypond
+
gives a gentle introduction to typesetting music. First time
users should start here.
-@item
-@emph{@ref{Putting it all together}},
-explains some general concepts about the lilypond file format. If
-you are not certain where to place a command, read this chapter!
+@c @item
+@c @emph{@ref{Putting it all together}},
+@c explains some general concepts about the lilypond file format. If
+@c you are not certain where to place a command, read this chapter!
@item
@emph{@ref{Working on LilyPond projects}},
* Preface:: Preface.
* Introduction:: What, Why, How.
* Tutorial:: A tutorial introduction.
-* Putting it all together:: More explanation about LilyPond concepts.
+* Fundamental concepts:: Basic concepts required for reading
+the rest of this manual.
* Tweaking output:: Introduction to modifying output.
* Working on LilyPond projects:: Discusses real-life usage.
@include introduction.itely
@include tutorial.itely
@include fundamental.itely
-@include putting.itely
@include tweaks.itely
@include working.itely
+++ /dev/null
-@c -*- coding: utf-8; mode: texinfo; -*-
-@c This file is part of lilypond-learning.tely
-@ignore
- Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
-
- When revising a translation, copy the HEAD committish of the
- version that you are working on. See TRANSLATION for details.
-@end ignore
-
-@node Putting it all together
-@chapter Putting it all together
-
-This chapter discusses general LilyPond concepts and how to
-create @code{\score} blocks.
-
-
-@menu
-* Extending the templates::
-* Scores and parts::
-@end menu
-
-
-@node Extending the templates
-@section Extending the templates
-
-You've read the tutorial, you know how to write music. But how can you
-get the staves that you want? The templates are ok, but what if you
-want something that isn't covered?
-
-@menu
-* Soprano and cello::
-* TODO another example of extending templates::
-@end menu
-
-@node Soprano and cello
-@unnumberedsubsec Soprano and cello
-
-Start off with the template that seems closest to what you want to end
-up with. Let's say that you want to write something for soprano and
-cello. In this case, we would start with @q{Notes and lyrics} (for the
-soprano part).
-
-@example
-\version "2.11.23"
-melody = \relative c' @{
- \clef treble
- \key c \major
- \time 4/4
-
- a4 b c d
-@}
-
-text = \lyricmode @{
- Aaa Bee Cee Dee
-@}
-
-\score@{
- <<
- \new Voice = "one" @{
- \autoBeamOff
- \melody
- @}
- \new Lyrics \lyricsto "one" \text
- >>
- \layout @{ @}
- \midi @{ @}
-@}
-@end example
-
-Now we want to add a cello part. Let's look at the @q{Notes only} example:
-
-@example
-\version "2.11.23"
-melody = \relative c' @{
- \clef treble
- \key c \major
- \time 4/4
-
- a4 b c d
-@}
-
-\score @{
-\new Staff \melody
-\layout @{ @}
-\midi @{ @}
-@}
-@end example
-
-We don't need two @code{\version} commands. We'll need the @code{melody}
-section. We don't want two @code{\score} sections -- if we had two
-@code{\score}s, we'd get the two parts separately. We want them together,
-as a duet. Within the @code{\score} section, we don't need two
-@code{\layout} or @code{\midi}.
-
-If we simply cut and paste the @code{melody} section, we would end up with
-two @code{melody} sections. So let's rename them. We'll call the section
-for the soprano @code{sopranoMusic} and the section for the cello
-@code{celloMusic}. While we're doing this, let's rename @code{text}
-to be @code{sopranoLyrics}. Remember to rename both instances of all
-these names -- both the initial definition (the
-@code{melody = relative c' @{ } part) and the name's use (in the
-@code{\score} section).
-
-While we're doing this, let's change the cello part's staff -- celli
-normally use bass clef. We'll also give the cello some different
-notes.
-
-@example
-\version "2.11.23"
-sopranoMusic = \relative c' @{
- \clef treble
- \key c \major
- \time 4/4
-
- a4 b c d
-@}
-
-sopranoLyrics = \lyricmode @{
- Aaa Bee Cee Dee
-@}
-
-celloMusic = \relative c @{
- \clef bass
- \key c \major
- \time 4/4
-
- d4 g fis8 e d4
-@}
-
-\score@{
- <<
- \new Voice = "one" @{
- \autoBeamOff
- \sopranoMusic
- @}
- \new Lyrics \lyricsto "one" \sopranoLyrics
- >>
- \layout @{ @}
- \midi @{ @}
-@}
-@end example
-
-This is looking promising, but the cello part won't appear in the
-score -- we haven't used it in the @code{\score} section. If we
-want the cello part to appear under the soprano part, we need to add
-
-@example
-\new Staff \celloMusic
-@end example
-
-@noindent
-underneath the soprano stuff. We also need to add @code{<<} and
-@code{>>} around the music -- that tells LilyPond that there's
-more than one thing (in this case, @code{Staff}) happening at once. The
-@code{\score} looks like this now
-
-@example
-\score@{
- <<
- <<
- \new Voice = "one" @{
- \autoBeamOff
- \sopranoMusic
- @}
- \new Lyrics \lyricsto "one" \sopranoLyrics
- >>
- \new Staff \celloMusic
- >>
- \layout @{ @}
- \midi @{ @}
-@}
-@end example
-
-@noindent
-This looks a bit messy; the indentation is messed up now. That is
-easily fixed. Here's the complete soprano and cello template.
-
-@lilypond[quote,verbatim,ragged-right]
-\version "2.11.23"
-sopranoMusic = \relative c' {
- \clef treble
- \key c \major
- \time 4/4
-
- a4 b c d
-}
-
-sopranoLyrics = \lyricmode {
- Aaa Bee Cee Dee
-}
-
-celloMusic = \relative c {
- \clef bass
- \key c \major
- \time 4/4
-
- d4 g fis8 e d4
-}
-
-\score{
- <<
- <<
- \new Voice = "one" {
- \autoBeamOff
- \sopranoMusic
- }
- \new Lyrics \lyricsto "one" \sopranoLyrics
- >>
- \new Staff \celloMusic
- >>
- \layout { }
- \midi { }
-}
-@end lilypond
-
-
-@node TODO another example of extending templates
-@unnumberedsubsec TODO another example of extending templates
-
-TODO: somebody else fill this in. You guys like vocal stuff,
-right? Get to it. :) -gp
-
-
-
-@node Scores and parts
-@section Scores and parts
-
-TODO: this is really old stuff from the really old tutorial.
-Rewrite, fix, etc. -gp
-
-In orchestral music, all notes are printed twice. Once in a part for
-the musicians, and once in a full score for the conductor. Variables can
-be used to avoid double work. The music is entered once, and stored in
-a variable. The contents of that variable is then used to generate
-both the part and the full score.
-
-It is convenient to define the notes in a special file. For example,
-suppose that the file @file{horn-music.ly} contains the following part
-of a horn/@/bassoon duo
-
-@example
-hornNotes = \relative c @{
- \time 2/4
- r4 f8 a cis4 f e d
-@}
-@end example
-
-@noindent
-Then, an individual part is made by putting the following in a file
-
-@example
-\include "horn-music.ly"
-\header @{
- instrument = "Horn in F"
-@}
-
-@{
- \transpose f c' \hornNotes
-@}
-@end example
-
-The line
-
-@example
-\include "horn-music.ly"
-@end example
-
-@noindent
-substitutes the contents of @file{horn-music.ly} at this position in
-the file, so @code{hornNotes} is defined afterwards. The command
-@code{\transpose f@tie{}c'} indicates that the argument, being
-@code{\hornNotes}, should be transposed by a fifth upwards. Sounding
-@samp{f} is denoted by notated @code{c'}, which corresponds with the
-tuning of a normal French Horn in@tie{}F. The transposition can be seen
-in the following output
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
- \time 2/4
- r4 f8 a cis4 f e d
-}
-@end lilypond
-
-In ensemble pieces, one of the voices often does not play for many
-measures. This is denoted by a special rest, the multi-measure
-rest. It is entered with a capital @samp{R} followed by a duration
-(@code{1}@tie{}for a whole note, @code{2}@tie{}for a half note,
-etc.). By multiplying the
-duration, longer rests can be constructed. For example, this rest
-takes 3@tie{}measures in 2/4 time
-
-@example
-R2*3
-@end example
-
-When printing the part, multi-rests
-must be condensed. This is done by setting a run-time variable
-
-@example
-\set Score.skipBars = ##t
-@end example
-
-@noindent
-This command sets the property @code{skipBars} in the
-@code{Score} context to true (@code{##t}). Prepending the rest and
-this option to the music above, leads to the following result
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
- \time 2/4
- \set Score.skipBars = ##t
- R2*3
- r4 f8 a cis4 f e d
-}
-@end lilypond
-
-
-The score is made by combining all of the music together. Assuming
-that the other voice is in @code{bassoonNotes} in the file
-@file{bassoon-music.ly}, a score is made with
-
-@example
-\include "bassoon-music.ly"
-\include "horn-music.ly"
-
-<<
- \new Staff \hornNotes
- \new Staff \bassoonNotes
->>
-@end example
-
-@noindent
-leading to
-
-@lilypond[quote,ragged-right]
-\relative c <<
- \new Staff {
- \time 2/4 R2*3
- r4 f8 a cis4 f e d
- }
- \new Staff {
- \clef bass
- r4 d,8 f | gis4 c | b bes |
- a8 e f4 | g d | gis f
- }
->>
-@end lilypond
-
-
* Default files::
* Advanced tweaks with Scheme::
* Avoiding tweaks with slower processing::
+* The three methods of tweaking::
@end menu
@node Default files
@end verbatim
+@node The three methods of tweaking
+@subsection The three methods of tweaking
+
+TODO write this.
+
+@verbatim
+\override
+@end verbatim
+
+@verbatim
+\with {
+
+}
+@end verbatim
+
+@verbatim
+\layout{ \context
+
+}}
+@end verbatim
+
+