]> Shamusworld >> Repos - music/blob - pachelbel-canon-in-d.ly
New charts "How Great Thou Art" and "In The Garden".
[music] / pachelbel-canon-in-d.ly
1 \version "2.16.0"
2 \include "pop-chords.ly"
3 \include "english.ly"
4
5 % Good sizes are 16, 18, & 20
6 staffSize = #24
7 #(set-default-paper-size "letter")
8 #(set-global-staff-size staffSize)
9 #(ly:set-option (quote no-point-and-click))
10
11 %{ Some useful characters: ‘ ’ “ ” – — † ‡ • … %}
12
13 \header
14 {
15 %Let's bump up the title size and switch to the chord font. :-)
16
17         title    = \markup { \override #'(font-family . sans) \fontsize #3.5 "Canon in D" }
18         subtitle = \markup { \override #'(font-family . sans) \fontsize #3.5 "Variations on a Ground Bass" }
19         composer = \markup { \override #'(font-family . sans) \fontsize #1.3 "Johann Pachelbel" }
20 %       arranger = \markup { \override #'(font-family . sans) \fontsize #1.3 "arr." }
21         tagline  = $(string-append "Engraved by JLH and Lilypond " (lilypond-version))
22 }
23
24 % Useful tweak abbreviations (hn = harmony note)
25
26 hn = #(define-music-function (parser location arg) (ly:music?)
27 ;; Harmony Note: Set the tweaks property of the passed in note to use a smaller font
28
29   (set! (ly:music-property arg 'tweaks)
30     (acons 'font-size -3.5 (ly:music-property arg 'tweaks))) arg)
31
32
33 %
34 % Song's structure
35 %
36 Global =
37 {
38         \key d \major
39         \override Staff.TimeSignature #'style = #'()
40         \time 4/4
41
42         s1*4 \bar "||"   % 1-4
43         s1*4 \bar "||"   % 5-8
44         s1*4 \bar "||"   % 9-12
45         s1*4 \bar "||"   % 13-16
46         s1*4 \bar "||"   % 17-20
47         s1*4 \bar "||"   % 21-24
48         s1*4 \bar "||"   % 25-28
49         s1*4 \bar "||"   % 29-32
50         s1*4 \bar "||"   % 33-36
51         s1*4 \bar "||"   % 37-40
52         s1*4 \bar "||"   % 41-44
53         s1*4 \bar "||"   % 45-48
54         s1*4 \bar "||"   % 49-52
55         s1 \bar "|."   % 53
56 %{
57
58 %       \once \override TextScript #'padding = #2.0
59 %       s1*0^\markup { \large \bold { Moderately fast pop } }
60 %%Capo 3 version
61 %%      s1*0^\markup { \large \bold { Moderately fast pop "(*** CAPO 3 ***)" } }
62 %       s1*13 \bar "||:"   % 1-13
63
64 %}
65 }
66
67
68 %
69 % Lead vocal
70 %
71 LeadVox = \relative c''
72 {
73         \clef G
74         \override Score.SpacingSpanner #'average-spacing-wishes = ##f
75
76         r1 |   % 1
77         r1 |   % 2
78         r1 |   % 3
79         r1 |   % 4
80
81         fs2 ( e |   % 5
82         d2 cs ) |   % 6
83         b2 ( a |   % 7
84         b2 cs ) |   % 8
85
86         d2 ( cs |   % 9
87         b2 a ) |   % 10
88         g2 ( fs |   % 11
89         g2 e ) |   % 12
90
91         fs'2 ( e |   % 13
92         d2 cs ) |   % 14
93         b2 ( a |   % 15
94         b2 cs ) |   % 16
95
96         a4 ( d e cs |   % 17
97         d4 fs a a, ) |   % 18
98         b4 ( g a a |   % 19
99         g4 d' \grace { cs16 [ d ] } cs4 a ) |   % 20
100
101         d8 ( cs d fs, a a cs4 ) |   % 21
102         d8 ( d fs4 a ) a8 ( b |   % 22
103         g8 fs e g fs e d cs |   % 23
104         b8 a d4 ~ d8 cs16 d cs4 ) |   % 24
105
106         d8 ( cs d fs, a4 ) cs ( |   % 25
107         d4 ) fs ( a ) a8 ( b |   % 26
108         g8 fs e g fs e d cs |   % 27
109         b8 a d4 ~ d8 cs16 d cs4 ) |   % 28
110
111         d8 fs16 ( g a8 ) fs16 ( g a ) a, ( b cs d e fs g |   % 29
112         fs8 ) d16 ( e fs8 ) fs,16 ( g a b a g a fs g a |   % 30
113         d8 ) b16 ( a g8 ) fs16 ( e fs e d e fs g a b |   % 31
114         d8 ) b16 ( a b8 ) e16 ( d cs b cs d e fs g e ) |   % 32
115
116         fs8-. fs16 ( g a8-. ) fs16-. ( g a-. ) cs, ( d e fs e fs g ) |   % 33
117         fs8-. d16 ( e fs8-. ) fs,16 ( g a b a g ) a4 |   % 34
118         g8-. b16 ( a g8-. ) fs16-. ( e ) fs ( e d e fs g a b ) |   % 35
119         g8-. b16 ( a b8-. ) cs16 ( b ) a ( b cs d e fs g a ) |   % 36
120
121         fs8 ( d16 cs d8 fs, ) a ( cs16 d e8 cs ) |   % 37
122         b8 ( d16 e fs8 d ) fs8 ( fs16 e d8 cs ) |   % 38
123         b8 ( b16 a b8 cs ) d8 ( fs16 e d8 a' ) |   % 39
124         g8 ( d16 cs b8 b ) a8 ( a16 g a8 a ) |   % 40
125
126         a4 ( d8 fs fs g fs e |   % 41
127         d4 ) d8 ( d d e d cs |   % 42
128         b4 ) b8 ( b d2 |   % 43
129         d8 c b c a2 ) |   % 44
130
131         d4 ( fs8 a ) a ( b a g |   % 45
132         fs4 ) d' ~ ( d c ) |   % 46
133         b2 ( d,4 a' ) |   % 47
134         b2 ( a ) |   % 48
135
136         a2 ( a,4 e' ) |   % 49
137         d4 ( fs, fs'4. e8 |   % 50
138         d4 ) b' ( a d, |   % 51
139         e1 |   % 52
140
141         fs1-\fermata ) |   % 53
142 }
143
144
145 %
146 % Chord names
147 %
148 Chords = \chordmode
149 {
150 %Bah, can't we set this globally?
151 %       \popChords
152
153         % Intro
154
155         d2 a |   % 1
156         b2:m fs:m |   % 2
157         g2 d |   % 3
158         g2 a |   % 4
159 }
160
161
162 Dynamics =
163 {
164 %{
165         % Intro
166         s4_\markup { \italic { Ac. gtr only } } s2. |   % 1
167
168         s1*3 |   % 2-4
169
170         s4_\markup { \italic { Band in } } s2. |   % 5
171 %}
172 }
173
174
175 \score
176 {
177         <<
178                 \new ChordNames \Chords
179                 \Global                                         % The "roadmap" that everything else depends on
180                 \context Staff \LeadVox
181
182 %               \new ChoirStaff
183 %               <<
184 %                       \new ChordNames \Chords
185 %%Capo 3 edition
186 %%                      \new ChordNames \transpose f d \Chords
187 %                       \new RhythmicStaff << \Rhythm \Dynamics >>
188 %               >>
189
190                 \set Score.skipBars = ##t
191                 \set Score.melismaBusyProperties = #'()
192         >>
193 }
194
195
196 \paper
197 {
198         #(define fonts (make-pango-font-tree
199                 "Times New Roman"
200                 "DomCasual BT"
201                 "Luxi Mono"
202                 (/ staffSize 20)))
203
204 % Spread staves vertically across last page (default: t)
205         ragged-last-bottom = ##f
206 % Don't spread staves vertically across the page (default: f)
207 %       ragged-bottom = ##t
208 % Allow partial line for last stave (default: f)
209         ragged-last = ##t
210
211 % To find out what's eating the space at the top...
212 %       annotate-spacing = ##t
213 %let's try this: [It works! Huzzah!]
214         obsolete-page-top-space = 0  top-system-spacing #'basic-distance = #(/ obsolete-page-top-space staff-space)
215 }