]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/examples.itely
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / Documentation / user / examples.itely
index 08a23de471ff8385ca82637a539b0c8752c43ada..9bb3dede2af22e9ff3bc89035c8a1f3962271d54 100644 (file)
@@ -1,43 +1,49 @@
+@c -*- coding: utf-8; mode: texinfo; -*-
 @node Example templates
-@chapter Example templates
+@appendix Example templates
 
 This section of the manual contains templates with the LilyPond score
 already set up for you.  Just add notes, run LilyPond, and enjoy
 beautiful printed scores!
 
+@c bad node name for ancient notation to avoid confict
 @menu
-* Single staff::
+* Single staff::                
+* Piano templates::             
+* String quartet::              
+* Vocal ensembles::             
+* Ancient notation templates::  
+* Jazz combo::                  
+* Lilypond-book templates::     
 @end menu
 
-@c   more sections to come soon.
-
 
 @node Single staff
-@section Single staff
+@appendixsec Single staff
+@appendixsubsec Notes only
 
 The first example gives you a staff with notes, suitable for a solo
 instrument or a melodic fragment.  Cut and paste this into a file,
 add notes, and you're finished!
 
-@lilypond[verbatim]
-
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
 melody = \relative c' {
-\clef treble
-\key c \major
-\time 4/4
+   \clef treble
+   \key c \major
+   \time 4/4
 
-  a4 b c d
+   a4 b c d
 }
 
-\score{
-  \new Staff \melody
-  \paper { }
-  \midi { \tempo 4=60 }
+\score {
+   \new Staff \melody
+   \layout { }
+   \midi { \tempo 4=60 }
 }
-
 @end lilypond
 
-@*
+@appendixsubsec Notes and lyrics
 
 The next example demonstrates a simple melody with lyrics.  Cut and
 paste, add notes, then words for the lyrics.  This example turns off
@@ -45,35 +51,1358 @@ automatic beaming, which is common for vocal parts.  If you want to use
 automatic beaming, you'll have to change or comment out the relevant
 line.
 
-@lilypond[verbatim]
-
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
 melody = \relative c' {
-\clef treble
-\key c \major
-\time 4/4
+   \clef treble
+   \key c \major
+   \time 4/4
 
-  a4 b c d
+   a4 b c d
 }
 
-text = \lyrics {
-  Aaa Bee Cee Dee
+text = \lyricmode {
+   Aaa Bee Cee Dee
 }
 
 \score{
-  <<
-    \context Voice = one {
-      \set Staff.autoBeaming = ##f
+   <<
+      \new Voice = "one" {
+         \autoBeamOff
+         \melody
+      }
+      \new Lyrics \lyricsto "one" \text
+   >>
+   \layout { }
+   \midi { \tempo 4=60 }
+}
+@end lilypond
+
+@appendixsubsec Notes and chords
+
+Want to prepare a lead sheet with a melody and chords?  Look no further!
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+melody = \relative c' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   f4 e8[ c] d4 g |
+   a2 ~ a2 |
+}
+
+harmonies = \chordmode {
+   c4:m f:min7 g:maj c:aug d2:dim b:sus
+}
+
+\score {
+   <<
+      \new ChordNames {
+         \set chordChanges = ##t
+         \harmonies
+      }
+   \new Staff \melody
+   >>
+
+   \layout{ }
+   \midi { \tempo 4=60}
+}
+@end lilypond
+
+@appendixsubsec Notes, lyrics, and chords.
+
+This template allows you to prepare a song with melody, words, and chords.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+melody = \relative c' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   a b c d
+}
+
+text = \lyricmode {
+   Aaa Bee Cee Dee
+}
+
+harmonies = \chordmode {
+   a2 c2
+}
+
+\score {
+   <<
+      \new ChordNames {
+         \set chordChanges = ##t
+         \harmonies
+      }
+   \new Voice = "one" {
+      \autoBeamOff
       \melody
+   }
+   \new Lyrics \lyricsto "one" \text
+   >>
+   \layout { }
+   \midi { \tempo 4=60 }
+}
+@end lilypond
+
+@node Piano templates
+@appendixsec Piano templates
+@appendixsubsec Solo piano
+
+Here is a simple piano staff.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+upper = \relative c'' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   a b c d
+}
+
+lower = \relative c {
+   \clef bass
+   \key c \major
+   \time 4/4
+
+   a2 c
+}
+
+\score {
+   \new PianoStaff <<
+      \set PianoStaff.instrument = "Piano  "
+      \new Staff = "upper" \upper
+      \new Staff = "lower" \lower
+   >>
+   \layout { }
+   \midi { \tempo 4=60 }
+}
+@end lilypond
+
+@appendixsubsec Piano and melody with lyrics
+
+Here is a typical song format: one staff with the melody and lyrics, with
+piano accompaniment underneath.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+melody = \relative c'' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   a b c d
+}
+
+text = \lyricmode {
+   Aaa Bee Cee Dee
+}
+
+upper = \relative c'' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   a b c d
+}
+
+lower = \relative c {
+   \clef bass
+   \key c \major
+   \time 4/4
+
+   a2 c
+}
+
+\score {
+   <<
+      \new Voice = "mel" {
+          \autoBeamOff
+          \melody
       }
-    \lyricsto "one" \new Lyrics \text
+      \new Lyrics \lyricsto mel \text
+
+      \new PianoStaff <<
+         \new Staff = "upper" \upper
+         \new Staff = "lower" \lower
+      >>
+   >>
+   \layout {
+      \context { \RemoveEmptyStaffContext }
+   }
+   \midi { \tempo 4=60 }
+}
+@end lilypond
+
+
+@appendixsubsec Piano centered lyrics
+
+Instead of having a full staff for the melody and lyrics, you can place
+the lyrics between the piano staff (and omit the separate melody staff).
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+upper = \relative c'' {
+   \clef treble
+   \key c \major
+   \time 4/4
+
+   a b c d
+}
+
+lower = \relative c {
+   \clef bass
+   \key c \major
+   \time 4/4
+
+   a2 c
+}
+
+text = \lyricmode {
+   Aaa Bee Cee Dee
+}
+
+\score {
+  \new GrandStaff <<
+    \new Staff = upper { \new Voice = "singer" \upper }
+    \new Lyrics \lyricsto "singer" \text
+    \new Staff = lower {
+      \clef bass
+      \lower
+    }
   >>
-  \paper { }
+  \layout {
+    \context { \GrandStaff \accepts "Lyrics" }
+    \context { \Lyrics \consists "Bar_engraver" }
+  }
   \midi { \tempo 4=60 }
 }
+@end lilypond
+
+
+@appendixsubsec Piano centered dynamics
+
+Many piano scores have the dynamics centered between the two
+staffs.  This requires a bit of tweaking to implement, but
+since the template is right here, you don't have to do the
+tweaking yourself.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+upper = \relative c'' {
+  \clef treble
+  \key c \major
+  \time 4/4
+
+  a b c d
+}
+
+lower = \relative c {
+  \clef bass
+  \key c \major
+  \time 4/4
+
+  a2 c
+}
+
+dynamics = {
+  s2\fff\> s4
+  s\!\pp
+}
+
+pedal = {
+  s2\sustainDown s2\sustainUp
+}
+
+\score {
+  \new PianoStaff <<
+    \new Staff = "upper" \upper
+    \new Dynamics = "dynamics" \dynamics
+    \new Staff = "lower" <<
+      \clef bass
+      \lower
+    >>
+    \new Dynamics = "pedal" \pedal
+  >>
+  \layout {
+    \context {
+      \type "Engraver_group"
+      \name Dynamics
+      \alias Voice % So that \cresc works, for example.
+      \consists "Output_property_engraver"
+
+      \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
+      pedalSustainStrings = #'("Ped." "*Ped." "*")
+      pedalUnaCordaStrings = #'("una corda" "" "tre corde")
+
+      \consists "Piano_pedal_engraver"
+      \consists "Script_engraver"
+      \consists "Dynamic_engraver"
+      \consists "Text_engraver"
+
+      \override TextScript #'font-size = #2
+      \override TextScript #'font-shape = #'italic
+      \override DynamicText #'extra-offset = #'(0 . 2.5)
+      \override Hairpin #'extra-offset = #'(0 . 2.5)
+
+      \consists "Skip_event_swallow_translator"
+
+      \consists "Axis_group_engraver"
+    }
+    \context {
+      \PianoStaff
+      \accepts Dynamics
+      \override VerticalAlignment #'forced-distance = #7
+    }
+  }
+}
+\score {
+  \new PianoStaff <<
+    \new Staff = "upper" << \upper \dynamics >>
+    \new Staff = "lower" << \lower \dynamics >>
+    \new Dynamics = "pedal" \pedal
+  >>
+  \midi {
+    \context {
+      \type "Performer_group"
+      \name Dynamics
+      \consists "Piano_pedal_performer"
+    }
+    \context {
+      \PianoStaff
+      \accepts Dynamics
+    }
+  }
+}
+@end lilypond
+
+
+@node String quartet
+@appendixsec String quartet
+@appendixsubsec String quartet
+
+This template demonstrates a string quartet.  It also uses a @code{\global}
+section for time and key signatures.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+
+global= {
+  \time 4/4
+  \key c \major
+}
+
+violinOne = \new Voice { \relative c''{
+  \set Staff.instrument = "Violin 1 "
+
+  c2 d e1
+
+\bar "|." }}
+violinTwo = \new Voice { \relative c''{
+  \set Staff.instrument = "Violin 2 "
+
+  g2 f e1
+
+\bar "|." }}
+viola = \new Voice { \relative c' {
+  \set Staff.instrument = "Viola "
+  \clef alto
+
+  e2 d c1
+
+\bar "|." }}
+cello = \new Voice { \relative c' {
+  \set Staff.instrument = "Cello     "
+  \clef bass
+
+  c2 b a1
+
+\bar "|."}}
+
+\score {
+   \new StaffGroup <<
+      \new Staff << \global \violinOne >>
+      \new Staff << \global \violinTwo >>
+      \new Staff << \global \viola >>
+      \new Staff << \global \cello >>
+   >>
+   \layout { }
+   \midi { \tempo 4=60}
+}
+@end lilypond
+
+@appendixsubsec String quartet parts
+
+The previous example produces a nice string quartet, but what if you
+needed to print parts?  This template demonstrates how to use the
+@code{\tag} feature to easily split a piece into individual parts.
+
+You need to split this template into separate files; the filenames
+are contained in comments at the beginning of each file.  @code{piece.ly}
+contains all the music definitions.  The other files -- @code{score.ly},
+@code{vn1.ly}, @code{vn2.ly}, @code{vla.ly}, and
+@code{vlc.ly} -- produce the appropiate part.
+
+@verbatim
+%%%%% piece.ly
+\version "2.7.39"
+
+global= {
+  \time 4/4
+  \key c \major
+}
+
+Violinone = \new Voice { \relative c''{
+  \set Staff.instrument = "Violin 1 "
+
+  c2 d e1
+
+\bar "|." }}   %*********************************
+Violintwo = \new Voice { \relative c''{
+  \set Staff.instrument = "Violin 2 "
+
+  g2 f e1
+
+\bar "|." }}   %*********************************
+Viola = \new Voice { \relative c' {
+  \set Staff.instrument = "Viola "
+  \clef alto
+
+  e2 d c1
+
+\bar "|." }}   %*********************************
+Cello = \new Voice { \relative c' {
+  \set Staff.instrument = "Cello     "
+  \clef bass
+
+  c2 b a1
+
+\bar "|."}}   %**********************************
+
+music = {
+  <<
+    \tag #'score \tag #'vn1 \new Staff { << \global \Violinone >> }
+    \tag #'score \tag #'vn2 \new Staff { << \global \Violintwo>> }
+    \tag #'score \tag #'vla \new Staff { << \global \Viola>> }
+    \tag #'score \tag #'vlc \new Staff { << \global \Cello>> }
+  >>
+}
+
+
+
+%%%%% score.ly
+\version "2.7.39"
+\include "piece.ly"
+#(set-global-staff-size 14)
+\score {
+  \new StaffGroup \keepWithTag #'score \music
+  \layout { }
+  \midi { \tempo 4 = 60 }
+}
+
+
+%%%%% vn1.ly
+\version "2.7.39"
+\include "piece.ly"
+\score {
+  \keepWithTag #'vn1 \music
+  \layout { }
+}
+
+
+%%%%% vn2.ly
+\version "2.7.39"
+\include "piece.ly"
+\score {
+  \keepWithTag #'vn2 \music
+  \layout { }
+}
+
+
+%%%%% vla.ly
+\version "2.7.39"
+\include "piece.ly"
+\score {
+  \keepWithTag #'vla \music
+  \layout { }
+}
+
+
+%%%%% vlc.ly
+\version "2.7.39"
+\include "piece.ly"
+\score {
+  \keepWithTag #'vlc \music
+  \layout { }
+}
+@end verbatim
+
+
+@node Vocal ensembles
+@appendixsec Vocal ensembles
+
+@appendixsubsec SATB vocal score
+
+Here is a standard four-part SATB vocal score.  With larger ensembles,
+it's often useful to include a section which is included in all
+parts.  For example, the time signature and key signatures are almost
+always the same for all parts.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+global = {
+   \key c \major
+   \time 4/4
+}
+
+sopMusic = \relative c'' {
+   c4 c c8[( b)] c4
+}
+sopWords = \lyricmode {
+   hi hi hi hi
+}
+
+altoMusic = \relative c' {
+   e4 f d e
+}
+altoWords =\lyricmode {
+   ha ha ha ha
+}
+
+tenorMusic = \relative c' {
+   g4 a f g
+}
+tenorWords = \lyricmode {
+   hu hu hu hu
+}
+
+bassMusic = \relative c {
+   c4 c g c
+}
+bassWords = \lyricmode {
+   ho ho ho ho
+}
+
+\score {
+   \new ChoirStaff <<
+      \new Lyrics = sopranos { s1 }
+      \new Staff = women <<
+         \new Voice =
+           "sopranos" { \voiceOne << \global \sopMusic >> }
+         \new Voice =
+           "altos" { \voiceTwo << \global \altoMusic >> }
+      >>
+      \new Lyrics = "altos" { s1 }
+      \new Lyrics = "tenors" { s1 }
+      \new Staff = men <<
+         \clef bass
+         \new Voice =
+           "tenors" { \voiceOne <<\global \tenorMusic >> }
+         \new Voice =
+           "basses" { \voiceTwo <<\global \bassMusic >> }
+      >>
+      \new Lyrics = basses { s1 }
+
+      \context Lyrics = sopranos \lyricsto sopranos \sopWords
+      \context Lyrics = altos \lyricsto altos \altoWords
+      \context Lyrics = tenors \lyricsto tenors \tenorWords
+      \context Lyrics = basses \lyricsto basses \bassWords
+   >>
+
+   \layout {
+      \context {
+         % a little smaller so lyrics
+         % can be closer to the staff
+         \Staff
+         \override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
+      }
+   }
+}
+@end lilypond
+
+
+@appendixsubsec SATB vocal score and automatic piano reduction
+
+This template adds an automatic piano reduction to the SATB vocal
+score.  This demonstrates one of the strengths of LilyPond -- you
+can use a music definition more than once.  If you make any changes
+to the vocal notes (say, tenorMusic), then the changes will also
+apply to the piano reduction.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.7.39"
+global = {
+   \key c \major
+   \time 4/4
+}
+
+sopMusic = \relative c'' {
+   c4 c c8[( b)] c4
+}
+sopWords = \lyricmode {
+   hi hi hi hi
+}
 
+altoMusic = \relative c' {
+   e4 f d e
+}
+altoWords =\lyricmode {
+   ha ha ha ha
+}
+
+tenorMusic = \relative c' {
+   g4 a f g
+}
+tenorWords = \lyricmode {
+   hu hu hu hu
+}
+
+bassMusic = \relative c {
+   c4 c g c
+}
+bassWords = \lyricmode {
+   ho ho ho ho
+}
+
+\score {
+  <<
+    \new ChoirStaff <<
+      \new Lyrics = sopranos { s1 }
+      \new Staff = women <<
+        \new Voice =
+          "sopranos" { \voiceOne << \global \sopMusic >> }
+        \new Voice =
+          "altos" { \voiceTwo << \global \altoMusic >> }
+      >>
+      \new Lyrics = "altos" { s1 }
+      \new Lyrics = "tenors" { s1 }
+      \new Staff = men <<
+        \clef bass
+        \new Voice =
+          "tenors" { \voiceOne <<\global \tenorMusic >> }
+        \new Voice =
+          "basses" { \voiceTwo <<\global \bassMusic >> }
+      >>
+      \new Lyrics = basses { s1 }
+
+      \context Lyrics = sopranos \lyricsto sopranos \sopWords
+      \context Lyrics = altos \lyricsto altos \altoWords
+      \context Lyrics = tenors \lyricsto tenors \tenorWords
+      \context Lyrics = basses \lyricsto basses \bassWords
+    >>
+  \new PianoStaff <<
+    \new Staff <<
+      \set Staff.printPartCombineTexts = ##f
+      \partcombine
+      << \global \sopMusic >>
+      << \global \altoMusic >>
+    >>
+    \new Staff <<
+      \clef bass
+      \set Staff.printPartCombineTexts = ##f
+      \partcombine
+      << \global \tenorMusic >>
+      << \global \bassMusic >>
+    >>
+   >>
+  >>
+  \layout {
+    \context {
+      % a little smaller so lyrics
+      % can be closer to the staff
+      \Staff
+        \override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
+    }
+  }
+}
+@end lilypond
+
+
+@c bad node name to avoid node name confict
+@node Ancient notation templates
+@appendixsec Ancient notation templates
+
+@appendixsubsec Transcription of mensural music
+
+When transcribing mensural music, an incipit at the beginning of the
+piece is useful to indicate the original key and tempo.  While today
+musicians are used to bar lines in order to faster recognize rhythmic
+patterns, bar lines were not yet invented during the period of
+mensural music; in fact, the meter often changed after every few
+notes.  As a compromise, bar lines are often printed between the
+staves rather than on the staves.
+
+@lilypond[quote,verbatim,line-width=11.0\cm]
+\version "2.7.39"
+
+global = {
+  \set Score.skipBars = ##t
+
+  % incipit
+  \once \override Score.SystemStartBracket #'transparent = ##t
+  \override Score.SpacingSpanner #'spacing-increment = #1.0 % tight spacing
+  \key f \major
+  \time 2/2
+  \once \override Staff.TimeSignature #'style = #'neomensural
+  \override Voice.NoteHead #'style = #'neomensural
+  \override Voice.Rest #'style = #'neomensural
+  \set Staff.printKeyCancellation = ##f
+  \cadenzaOn % turn off bar lines
+  \skip 1*10
+  \once \override Staff.BarLine #'transparent = ##f
+  \bar "||"
+  \skip 1*1 % need this extra \skip such that clef change comes
+            % after bar line
+  \bar ""
+
+  % main
+  \revert Score.SpacingSpanner #'spacing-increment % CHECK: no effect?
+  \cadenzaOff % turn bar lines on again
+  \once \override Staff.Clef #'full-size-change = ##t
+  \set Staff.forceClef = ##t
+  \key g \major
+  \time 4/4
+  \override Voice.NoteHead #'style = #'default
+  \override Voice.Rest #'style = #'default
+
+  % FIXME: setting printKeyCancellation back to #t must not
+  % occur in the first bar after the incipit.  Dto. for forceClef.
+  % Therefore, we need an extra \skip.
+  \skip 1*1
+  \set Staff.printKeyCancellation = ##t
+  \set Staff.forceClef = ##f
+
+  \skip 1*7 % the actual music
+
+  % let finis bar go through all staves
+  \override Staff.BarLine #'transparent = ##f
+
+  % finis bar
+  \bar "|."
+}
+
+discantusNotes = {
+  \transpose c' c'' {
+    \set Staff.instrument = "Discantus  "
+
+    % incipit
+    \clef "neomensural-c1"
+    c'1. s2   % two bars
+    \skip 1*8 % eight bars
+    \skip 1*1 % one bar
+
+    % main
+    \clef "treble"
+    d'2. d'4 |
+    b e' d'2 |
+    c'4 e'4.( d'8 c' b |
+    a4) b a2 |
+    b4.( c'8 d'4) c'4 |
+    \once \override NoteHead #'transparent = ##t c'1 |
+    b\breve |
+  }
+}
+
+discantusLyrics = \lyricmode {
+  % incipit
+  IV-
+
+  % main
+  Ju -- bi -- |
+  la -- te De -- |
+  o, om --
+  nis ter -- |
+  ra, __ om- |
+  "..." |
+  -us. |
+}
+
+altusNotes = {
+  \transpose c' c'' {
+    \set Staff.instrument = "Altus  "
+
+    % incipit
+    \clef "neomensural-c3"
+    r1        % one bar
+    f1. s2    % two bars
+    \skip 1*7 % seven bars
+    \skip 1*1 % one bar
+
+    % main
+    \clef "treble"
+    r2 g2. e4 fis g | % two bars
+    a2 g4 e |
+    fis g4.( fis16 e fis4) |
+    g1 |
+    \once \override NoteHead #'transparent = ##t g1 |
+    g\breve |
+  }
+}
+
+altusLyrics = \lyricmode {
+  % incipit
+  IV-
+
+  % main
+  Ju -- bi -- la -- te | % two bars
+  De -- o, om -- |
+  nis ter -- ra, |
+  "..." |
+  -us. |
+}
+
+tenorNotes = {
+  \transpose c' c' {
+    \set Staff.instrument = "Tenor  "
+
+    % incipit
+    \clef "neomensural-c4"
+    r\longa   % four bars
+    r\breve   % two bars
+    r1        % one bar
+    c'1. s2   % two bars
+    \skip 1*1 % one bar
+    \skip 1*1 % one bar
+
+    % main
+    \clef "treble_8"
+    R1 |
+    R1 |
+    R1 |
+    r2 d'2. d'4 b e' | % two bars
+    \once \override NoteHead #'transparent = ##t e'1 |
+    d'\breve |
+  }
+}
+
+tenorLyrics = \lyricmode {
+  % incipit
+  IV-
+
+  % main
+  Ju -- bi -- la -- te | % two bars
+  "..." |
+  -us. |
+}
+
+bassusNotes = {
+  \transpose c' c' {
+    \set Staff.instrument = "Bassus  "
+
+    % incipit
+    \clef "bass"
+    r\maxima  % eight bars
+    f1. s2    % two bars
+    \skip 1*1 % one bar
+
+    % main
+    \clef "bass"
+    R1 |
+    R1 |
+    R1 |
+    R1 |
+    g2. e4 |
+    \once \override NoteHead #'transparent = ##t e1 |
+    g\breve |
+  }
+}
+
+bassusLyrics = \lyricmode {
+  % incipit
+  IV-
+
+  % main
+  Ju -- bi- |
+  "..." |
+  -us. |
+}
+
+\score {
+  \new StaffGroup = choirStaff <<
+    \new Voice =
+      "discantusNotes" << \global \discantusNotes >>
+    \new Lyrics =
+      "discantusLyrics" \lyricsto discantusNotes { \discantusLyrics }
+    \new Voice =
+      "altusNotes" << \global \altusNotes >>
+    \new Lyrics =
+      "altusLyrics" \lyricsto altusNotes { \altusLyrics }
+    \new Voice =
+      "tenorNotes" << \global \tenorNotes >>
+    \new Lyrics =
+      "tenorLyrics" \lyricsto tenorNotes { \tenorLyrics }
+    \new Voice =
+      "bassusNotes" << \global \bassusNotes >>
+    \new Lyrics =
+      "bassusLyrics" \lyricsto bassusNotes { \bassusLyrics }
+  >>
+  \layout {
+    \context {
+      \Score
+      \override BarLine #'transparent = ##t
+      \remove "System_start_delimiter_engraver"
+    }
+    \context {
+      \Voice
+      \override Slur #'transparent = ##t
+    }
+  }
+}
+@end lilypond
+
+
+@appendixsubsec Gregorian transcription template
+
+This example demonstrates how to do modern transcription of Gregorian
+music.  Gregorian music has no measure, no stems; it uses only half and
+quarter noteheads, and special marks, indicating rests of different length.
+
+@lilypond[quote,verbatim,ragged-right]
+\include "gregorian-init.ly"
+\version "2.8.0"
+
+chant = \relative c' {
+  \set Score.timing = ##f
+  f4 a2 \divisioMinima
+  g4 b a2 f2 \divisioMaior
+  g4( f) f( g) a2 \finalis
+}
+
+verba = \lyricmode {
+  Lo -- rem ip -- sum do -- lor sit a -- met
+}
+
+\score {
+  \new Staff <<
+    \new Voice = "melody" {
+      \chant
+    }
+    \new Lyrics = "one" \lyricsto melody \verba
+  >>
+
+  \layout {
+    \context {
+      \Staff
+      \remove "Time_signature_engraver"
+      \remove "Bar_engraver"
+      \override Stem #'transparent = ##t
+    }
+    \context {
+      \Voice
+      \override Stem #'length = #0
+    }
+    \context {
+      \Score
+      barAlways = ##t
+    }
+  }
+}
 @end lilypond
 
 
+@node Jazz combo
+@appendixsec Jazz combo
+
+This is a much more complicated template, for a jazz ensemble.  Note that all
+instruments are notated in @code{\key c \major}.  This refers to the key in
+concert pitch; LilyPond will automatically transpose the key if the music
+is within a @code{\transpose} section.
+
+@c TODO must clean up this jazz combo example
+@c   - transpositions stated in names (ie "trumpet in Bb" or whatever)
+@c   - one global section, instead of "global" (time) and "key"
+@c   - does it need those wierd macros?  sl, nsl, etc.
+@c   - maybe ask Amelie Zapf to clean it up, or whether I should just
+@c     make whatever changes I feel like.
+
+@c FIXME: produces a warning ; key change merge.
+@c The `line-width' argument is for the \header.
+
+@lilypond[quote,verbatim,ragged-right,line-width]
+\version "2.7.39"
+\header {
+  title = "Song"
+  subtitle = "(tune)"
+  composer = "Me"
+  meter = "moderato"
+  piece = "Swing"
+  tagline = \markup {
+    \column {
+      "LilyPond example file by Amelie Zapf,"
+      "Berlin 07/07/2003"
+    }
+  }
+  texidoc = "Jazz tune for combo
+             (horns, guitar, piano, bass, drums)."
+}
+
+#(set-global-staff-size 16)
+\include "english.ly"
+
+%%%%%%%%%%%% Some macros %%%%%%%%%%%%%%%%%%%
+
+sl = {
+  \override NoteHead #'style = #'slash
+  \override Stem #'transparent = ##t
+}
+nsl = {
+  \revert NoteHead #'style
+  \revert Stem #'transparent
+}
+cr = \override NoteHead #'style = #'cross
+ncr = \revert NoteHead #'style
+
+%% insert chord name style stuff here.
+
+jzchords = { }
+
+
+%%%%%%%%%%%% Keys'n'thangs %%%%%%%%%%%%%%%%%
+
+global = {
+  \time 4/4
+}
+
+Key = { \key c \major }
+
+% ############ Horns ############
+
+% ------ Trumpet ------
+trpt = \transpose c d \relative c'' {
+  \Key
+  c1 c c
+}
+trpharmony = \transpose c' d {
+  \jzchords
+}
+trumpet = {
+  \global
+  \set Staff.instrument = #"Trumpet"
+  \clef treble
+  <<
+    \trpt
+  >>
+}
+
+% ------ Alto Saxophone ------
+alto = \transpose c a \relative c' {
+  \Key
+  c1 c c
+}
+altoharmony = \transpose c' a {
+  \jzchords
+}
+altosax = {
+  \global
+  \set Staff.instrument = #"Alto Sax"
+  \clef treble
+  <<
+    \alto
+  >>
+}
+
+% ------ Baritone Saxophone ------
+bari = \transpose c a' \relative c {
+  \Key
+  c1 c \sl d4^"Solo" d d d \nsl
+}
+bariharmony = \transpose c' a \chordmode {
+  \jzchords s1 s d2:maj e:m7
+}
+barisax = {
+  \global
+  \set Staff.instrument = #"Bari Sax"
+  \clef treble
+  <<
+    \bari
+  >>
+}
+
+% ------ Trombone ------
+tbone = \relative c {
+  \Key
+  c1 c c
+}
+tboneharmony = \chordmode {
+  \jzchords
+}
+trombone = {
+  \global
+  \set Staff.instrument = #"Trombone"
+  \clef bass
+  <<
+    \tbone
+  >>
+}
+
+% ############ Rhythm Section #############
+
+% ------ Guitar ------
+gtr = \relative c'' {
+  \Key
+  c1 \sl b4 b b b \nsl c1
+}
+gtrharmony = \chordmode {
+  \jzchords
+  s1 c2:min7+ d2:maj9
+}
+guitar = {
+  \global
+  \set Staff.instrument = #"Guitar"
+  \clef treble
+  <<
+    \gtr
+  >>
+}
+
+%% ------ Piano ------
+rhUpper = \relative c'' {
+  \voiceOne
+  \Key
+  c1 c c
+}
+rhLower = \relative c' {
+  \voiceTwo
+  \Key
+  e1 e e
+}
+
+lhUpper = \relative c' {
+  \voiceOne
+  \Key
+  g1 g g
+}
+lhLower = \relative c {
+  \voiceTwo
+  \Key
+  c1 c c
+}
+
+PianoRH = {
+  \clef treble
+  \global
+  \set Staff.midiInstrument = "acoustic grand"
+  <<
+    \new Voice = "one" \rhUpper
+    \new Voice = "two" \rhLower
+  >>
+}
+PianoLH = {
+  \clef bass
+  \global
+  \set Staff.midiInstrument = "acoustic grand"
+  <<
+    \new Voice = "one" \lhUpper
+    \new Voice = "two" \lhLower
+  >>
+}
+
+piano = {
+  <<
+    \set PianoStaff.instrument = #"Piano"
+    \new Staff = "upper" \PianoRH
+    \new Staff = "lower" \PianoLH
+  >>
+}
+
+% ------ Bass Guitar ------
+Bass = \relative c {
+  \Key
+  c1 c c
+}
+bass = {
+  \global
+  \set Staff.instrument = #"Bass"
+  \clef bass
+  <<
+    \Bass
+  >>
+}
+
+% ------ Drums ------
+up = \drummode {
+  hh4 <hh sn>4 hh <hh sn> hh <hh sn>4
+  hh4 <hh sn>4
+  hh4 <hh sn>4
+  hh4 <hh sn>4
+}
+
+down = \drummode {
+  bd4 s bd s bd s bd s bd s bd s
+}
+
+drumContents = {
+  \global
+  <<
+    \set DrumStaff.instrument = #"Drums"
+    \new DrumVoice { \voiceOne \up }
+    \new DrumVoice { \voiceTwo \down }
+  >>
+}
+
+%%%%%%%%% It All Goes Together Here %%%%%%%%%%%%%%%%%%%%%%
+
+\score {
+  <<
+    \new StaffGroup = "horns" <<
+      \new Staff = "trumpet" \trumpet
+      \new Staff = "altosax" \altosax
+      \new ChordNames = "barichords" \bariharmony
+      \new Staff = "barisax" \barisax
+      \new Staff = "trombone" \trombone
+    >>
+
+    \new StaffGroup = "rhythm" <<
+      \new ChordNames = "chords" \gtrharmony
+      \new Staff = "guitar" \guitar
+      \new PianoStaff = "piano" \piano
+      \new Staff = "bass" \bass
+      \new DrumStaff { \drumContents }
+    >>
+  >>
+
+  \layout {
+    \context { \RemoveEmptyStaffContext }
+    \context {
+      \Score
+      \override BarNumber #'padding = #3
+      \override RehearsalMark #'padding = #2
+      skipBars = ##t
+    }
+  }
+
+  \midi { \tempo 4 = 75 }
+}
+@end lilypond
+
+@ignore
+
+This isn't very useful, and only duplicates material in
+"global issues".  And if this info changes, this section often
+gets forgotten.
+
+@no de Other templates
+@se ction Other templates
+@su bsection All headers
+
+This template displays all available headers.  Some of them are only
+used in the Mutopia project; they don't affect the printed output at
+all.  They are used if you want the piece to be listed with different
+information in the Mutopia database than you wish to have printed on the
+music.  For example, Mutopia lists the composer of the famous D major
+violin concerto as TchaikovskyPI, whereas perhaps you wish to print
+"Petr Tchaikowski" on your music.
+
+@ The `line-width' is for \header.
+@li lypond[quote,verbatim,ragged-right,line-width]
+\version "2.7.39"
+\header {
+  dedication = "dedication"
+  title = "Title"
+  subtitle = "Subtitle"
+  subsubtitle = "Subsubtitle"
+  composer = "Composer (xxxx-yyyy)"
+  opus = "Opus 0"
+  piece = "Piece I"
+  meter = "meter"
+  instrument = "Instrument"
+  arranger = "Arranger"
+  poet = "Poet"
+  texttranslator = "Translator"
+  copyright = "public domain"
+
+  % These are headers used by the Mutopia Project
+  % http://www.mutopiaproject.org/
+  mutopiatitle = ""
+  mutopiacomposer = ""
+  mutopiapoet = ""
+  mutopiainstrument = ""
+  date = "composer's dates"
+  source = "urtext "
+  maintainer = "your name here"
+  maintainerEmail = "your email here"
+  maintainerWeb = "your home page"
+  lastupdated = "2004/Aug/26"
+}
+
+\score {
+  { c'4 }
+  \header {
+    piece = "piece1"
+    opus = "opus1"
+  }
+}
+
+\score {
+  { c'4 }
+  \header {
+    piece = "piece2"
+    opus = "opus2"
+  }
+}
+@end lilypond
+@end ignore
+
+
+@node Lilypond-book templates
+@appendixsec Lilypond-book templates
+
+These templates are for use with @code{lilypond-book}.  If you're not familiar
+with this program, please refer to @ref{LilyPond-book}.
+
+@appendixsubsec LaTeX
+
+You can include LilyPond fragments in a LaTeX document.
+
+@example
+\documentclass[]@{article@}
+
+\begin@{document@}
+
+Normal LaTeX text.
+
+\begin@{lilypond@}
+\relative c'' @{
+a4 b c d
+@}
+\end@{lilypond@}
+
+More LaTeX text.
+
+\begin@{lilypond@}
+\relative c'' @{
+d4 c b a
+@}
+\end@{lilypond@}
+\end@{document@}
+@end example
+
+@appendixsubsec Texinfo
+
+You can include LilyPond fragments in Texinfo; in fact, this entire manual
+is written in Texinfo.
+
+@example
+\input texinfo
+@@node Top
+
+Texinfo text
+
+@@lilypond[verbatim,fragment,ragged-right]
+a4 b c d
+@@end lilypond
 
+More Texinfo text
 
+@@lilypond[verbatim,fragment,ragged-right]
+d4 c b a
+@@end lilypond
 
+@@bye
+@end example