]> git.donarmstrong.com Git - lilypond.git/blob - ly/bagpipe.ly
Issue 4422/5: Run scripts/auxiliar/update-with-convert-ly.sh
[lilypond.git] / ly / bagpipe.ly
1 %{
2   Bagpipe music settings for LilyPond.
3   This file builds on work by Andrew McNabb (http://www.mcnabbs.org/andrew/)
4
5   Substantial changes and additions made by
6   Sven Axelsson, the Murray Pipes & Drums of Gothenburg
7   (http://www.murrays.nu)
8
9   $Id: bagpipe.ly,v 1.12 2006/03/16 14:39:46 hanwen Exp $
10 %}
11
12 \version "2.19.22"
13
14 % Notes of the scale of the Great Highland Bagpipe. Extra high notes for bombarde.
15 % Flat notes used mainly in some modern music.
16
17 pitchnamesBagpipe = #`(
18   (G . ,(ly:make-pitch 0 4 NATURAL))
19   (a . ,(ly:make-pitch 0 5 NATURAL))
20   (b . ,(ly:make-pitch 0 6 NATURAL))
21   (c . ,(ly:make-pitch 1 0 SHARP))
22   (c-flat . ,(ly:make-pitch 1 0 FLAT))
23   (cflat . ,(ly:make-pitch 1 0 FLAT))
24   (d . ,(ly:make-pitch 1 1 NATURAL))
25   (e . ,(ly:make-pitch 1 2 NATURAL))
26   (f . ,(ly:make-pitch 1 3 SHARP))
27   (f-flat . ,(ly:make-pitch 1 3 FLAT))
28   (fflat . ,(ly:make-pitch 1 3 FLAT))
29   (g . ,(ly:make-pitch 1 4 NATURAL))
30   (g-flat . ,(ly:make-pitch 1 4 FLAT))
31   (gflat . ,(ly:make-pitch 1 4 FLAT))
32   (A . ,(ly:make-pitch 1 5 NATURAL))
33   (B . ,(ly:make-pitch 1 6 NATURAL))
34   (C . ,(ly:make-pitch 2 0 SHARP))
35 )
36 pitchnames = \pitchnamesBagpipe
37 #(ly:parser-set-note-names parser pitchnames)
38
39 % Bagpipe music is written in something like D major. If we use
40 % flattened notes, the flat should be shown on all instances.
41
42 hideKeySignature = {
43   % We normally don't want to show the key signature.
44   \omit Staff.KeySignature
45   \set Staff.extraNatural = ##f
46   \key d \major
47   \accidentalStyle forget
48 }
49 showKeySignature = {
50   % Show the key signature e.g. for BMW compatibility.
51   \override Staff.KeySignature.stencil = #ly:key-signature-interface::print
52   \set Staff.extraNatural = ##f
53   \key d \major
54   \accidentalStyle forget
55 }
56
57 % Layout tweaks.
58
59 \layout {
60   \context {
61     \Voice
62     % All stems go down.
63     \override Stem.direction = #DOWN
64     % All slurs and ties are on top.
65     \override Slur.direction = #UP
66     \override Tie.direction = #UP
67   }
68 }
69
70 % Some common timing tweaks.
71
72 % Sets the autobeamer to span quarter notes only. Use for fast music.
73 quarterBeaming = {
74   \set Staff.beamExceptions = #'()
75 }
76 halfBeaming = {
77   \set Staff.beamExceptions =
78   \beamExceptions { 8[ 8 8 8] |
79                     \tuplet 3/2 { 8[ 8 8] 8[ 8 8] 8[ 8 8] 8[ 8 8] } }
80 }
81
82 % Reels are in allabreve time with half note beaming.
83 reelTime = {
84   \time 2/2
85   \halfBeaming
86 }
87 % 4/4 marches are written with numerical time signature and with quarter beaming.
88 marchTime = {
89   \time 4/4
90   \numericTimeSignature
91   \quarterBeaming
92 }
93
94 % Add appropriate tweaks needed for piping grace notes to look great.
95 stemspace = #(define-music-function (extent) (pair?) #{
96   \once \override Staff.Stem.X-extent = #extent
97 #})
98 pgrace = #(define-music-function (notes) (ly:music?) #{
99   \override Score.GraceSpacing.spacing-increment = #0
100   \override Score.Stem.beamlet-max-length-proportion = #'(0.5 . 0.5)
101   \small \grace $notes \normalsize
102   \revert Score.Stem.beamlet-default-length
103 #})
104
105 % Single grace notes
106 grG = { \pgrace { G32 } }
107 gra = { \pgrace { a32 } }
108 grb = { \pgrace { b32 } }
109 grc = { \pgrace { c32 } }
110 grd = { \pgrace { d32 } }
111 gre = { \pgrace { e32 } }
112 grf = { \pgrace { f32 } }
113 grg = { \pgrace { g32 } }
114 grA = { \pgrace { A32 } }
115
116 % Doublings
117 dblG = { \pgrace { g32[ G d] } }
118 dbla = { \pgrace { g32[ a d] } }
119 dblb = { \pgrace { g32[ b d] } }
120 dblc = { \pgrace { g32[ c d] } }
121 dbld = { \pgrace { g32[ d e] } }
122 dble = { \pgrace { g32[ e f] } }
123 dblf = { \pgrace { g32[ f g] } }
124 % These are the same as the half doublings.
125 dblg = { \pgrace { g32[ f] } }
126 dblA = { \pgrace { A32[ g] } }
127
128 % Half doublings
129 hdblG = { \pgrace { G32[ d] } }
130 hdbla = { \pgrace { a32[ d] } }
131 hdblb = { \pgrace { b32[ d] } }
132 hdblc = { \pgrace { c32[ d] } }
133 hdbld = { \pgrace { d32[ e] } }
134 hdble = { \pgrace { e32[ f] } }
135 hdblf = { \pgrace { f32[ g] } }
136 hdblg = { \pgrace { g32[ f] } }
137 hdblA = { \pgrace { A32[ g] } }
138
139 % Thumb doublings
140 tdblG = { \pgrace { A32[ G d] } }
141 tdbla = { \pgrace { A32[ a d] } }
142 tdblb = { \pgrace { A32[ b d] } }
143 tdblc = { \pgrace { A32[ c d] } }
144 tdbld = { \pgrace { A32[ d e] } }
145 tdble = { \pgrace { A32[ e f] } }
146 tdblf = { \pgrace { A32[ f g] } }
147 tdblg = { \pgrace { A32[ g f] } }
148
149 % Shakes
150 % A few of these can't really be played and are here only for consistency.
151 shakea = { \pgrace { g32[ a e a G] } }
152 shakeb = { \pgrace { g32[ b e b G] } }
153 shakec = { \pgrace { g32[ c e c G] } }
154 shaked = { \pgrace { g32[ d e d G] } }
155 shakee = { \pgrace { g32[ e f e a] } }
156 shakef = { \pgrace { g32[ f g f a] } }
157 shakeg = { \pgrace { A32[ f g a] } }
158 shakeA = { \pgrace { A32[ g A a] } }
159
160 % Half shakes
161 hshakea = { \pgrace { a32[ d a G] } }
162 hshakeb = { \pgrace { b32[ d b G] } }
163 hshakec = { \pgrace { c32[ d c G] } }
164 hshaked = { \pgrace { d32[ e d G] } }
165 hshakee = { \pgrace { e32[ f e a] } }
166 hshakef = { \pgrace { f32[ g f a] } }
167 hshakeg = { \pgrace { g32[ f g a] } }
168 hshakeA = { \pgrace { A32[ g A a] } }
169
170 % Thumb shakes
171 tshakea = { \pgrace { A32[ a d a G] } }
172 tshakeb = { \pgrace { A32[ b d b G] } }
173 tshakec = { \pgrace { A32[ c d c G] } }
174 tshaked = { \pgrace { A32[ d e d G] } }
175 tshakee = { \pgrace { A32[ e f e a] } }
176 tshakef = { \pgrace { A32[ f g f a] } }
177 tshakeg = { \pgrace { A32[ f g a] } }
178 tshakeA = { \pgrace { A32[ g A a] } }
179
180 % Slurs
181 % A few of these can't really be played and are here only for consistency.
182 slura  = { \pgrace { g32[ a G] } }
183 slurb  = { \pgrace { g32[ b G] } }
184 slurc  = { \pgrace { g32[ c G] } }
185 slurd  = { \pgrace { g32[ d G] } }
186 wslurd = { \pgrace { g32[ d c] } }
187 slure  = { \pgrace { g32[ e a] } }
188 slurf  = { \pgrace { g32[ f a] } }
189 slurg  = { \pgrace { A32[ f a] } }
190 slurA  = { \pgrace { f32[ a] } }
191
192 % Half slurs
193 hslura  = { \pgrace { a32[ G] } }
194 hslurb  = { \pgrace { b32[ G] } }
195 hslurc  = { \pgrace { c32[ G] } }
196 hslurd  = { \pgrace { d32[ G] } }
197 whslurd = { \pgrace { d32[ c] } }
198 hslure  = { \pgrace { e32[ a] } }
199 hslurf  = { \pgrace { f32[ a] } }
200 hslurg  = { \pgrace { g32[ a] } }
201 hslurA  = { \pgrace { A32[ a] } }
202
203 % Thumb slurs
204 tslura  = { \pgrace { A32[ a G] } }
205 tslurb  = { \pgrace { A32[ b G] } }
206 tslurc  = { \pgrace { A32[ c G] } }
207 tslurd  = { \pgrace { A32[ d G] } }
208 wtslurd = { \pgrace { A32[ d c] } }
209 tslure  = { \pgrace { A32[ e a] } }
210 tslurf  = { \pgrace { A32[ f a] } }
211 tslurg  = { \pgrace { A32[ f a] } }
212 tslurA  = { \pgrace { f32[ a] } }
213
214 % Catches
215 catcha = { \pgrace { a32[ G d G] } }
216 catchb = { \pgrace { b32[ G d G] } }
217 catchc = { \pgrace { c32[ G d G] } }
218 catchd = { \pgrace { d32[ G b G] } }
219 catche = { \pgrace { e32[ G d G] } }
220
221 % G-grace catches
222 gcatcha = { \pgrace { g32[ a G d G] } }
223 gcatchb = { \pgrace { g32[ b G d G] } }
224 gcatchc = { \pgrace { g32[ c G d G] } }
225 gcatchd = { \pgrace { g32[ d G b G] } }
226 gcatche = { \pgrace { g32[ e G d G] } }
227
228 % Thumb catches
229 tcatcha = { \pgrace { A32[ a G d G] } }
230 tcatchb = { \pgrace { A32[ b G d G] } }
231 tcatchc = { \pgrace { A32[ c G d G] } }
232 tcatchd = { \pgrace { A32[ d G b G] } }
233 tcatche = { \pgrace { A32[ e G d G] } }
234
235 % Triple strikes (BMW has them all, but I've never seen any but the A one used, so ...)
236 tripleA = { \pgrace { A32[ g A g A g] } }
237
238 % Throws
239 thrwd     = { \pgrace { G32[ d c] } }
240 Gthrwd    = { \pgrace { d32[ c] } }
241 gripthrwd = { \pgrace { G32[ d G c] } }
242 thrwe     = { \pgrace { e32[ a f a] } }
243 wthrwe    = { \pgrace { e32[ d f d] } }
244 thrwf     = { \pgrace { f32[ e g e] } }
245
246 % Birls
247 birl  = { \pgrace { a32[ G a G] } }
248 wbirl = { \pgrace { G32[ a G] } }
249 gbirl = { \pgrace { g32[ a G a G] } }
250 dbirl = { \pgrace { d32[ a G a G] } }
251
252 % Grips
253 grip  = { \pgrace { G32[ d G] } }
254 dgrip = { \pgrace { G32[ b G] } }
255 egrip = { \pgrace { G32[ e G] } }
256
257 % Taorluaths
258 taor    = { \pgrace { G32[ d G e] } }
259 taorjmd = { \pgrace { G32[ d a e] } }
260 taorold = { \pgrace { G32[ d G a e] } }
261 dtaor   = { \pgrace { G32[ b G e] } }
262 Gtaor   = { \pgrace { d32[ G e] } }
263 taoramb = { \pgrace { G32[ d G b e] } }
264 taoramc = { \pgrace { G32[ d G c e] } }
265 taoramd = { \pgrace { G32[ d G c d e] } }
266
267 % Crunluaths
268 crun    = { \pgrace { G32[ d G e a f a ] } }
269 dcrun   = { \pgrace { G32[ b G e a f a ] } }
270 Gcrun   = { \pgrace { d32[ G e G f a ] } }
271 crunamb = { \pgrace { G32[ d G b e b f b ] } }
272 crunamc = { \pgrace { G32[ d G c e c f c ] } }
273 crunamd = { \pgrace { G32[ d G c d e d f d ] } }
274 crunambfosg = { \pgrace { e32[ b f b ] } }
275 crunamcfosg = { \pgrace { e32[ c f c ] } }
276 crunamdfosg = { \pgrace { e32[ d f d ] } }
277
278 % Special piobaireachd notations
279 grGcad   = { \pgrace { G16 } }
280 gracad   = { \pgrace { a16 } }
281 cad      = { \pgrace { \stemspace #'(0 . 0.5) g32[ e8 d32] } }
282 hcad     = { \pgrace { \stemspace #'(0 . 0.5) g32[ e8] } }
283 tcad     = { \pgrace { e8[ d32] } }
284 thcad    = { \pgrace { e8 } }
285 % This is the same as thrwe
286 dre      = { \pgrace { e32[ a f a] } }
287 % This is the same as thrwf
288 dare     = { \pgrace { f32[ e g e] } }
289 bari     = { \pgrace { e32[ G f G] } }
290 dari     = { \pgrace { f32[ e g e f e] } }
291 pthrwd   = { \pgrace { G16[ d32 c] } }
292 darodo   = { \pgrace { G32[ d G c G] } }
293 Gdarodo  = { \pgrace { d32[ G c G] } }
294 pdarodo  = { \pgrace { G16[ d32 G c G16] } }
295 pGdarodo = { \pgrace { d32[ G c G16] } }
296 % Weird stuff from Joseph MacDonald’s book
297 fifteenthcutting     = { \pgrace { G32[ d a e a f a e a d] } }
298 fifteenthcuttingG    = { \pgrace { G32[ d a e G f G e G d] } }
299 Gfifteenthcutting    = { \pgrace { d32[ a e a f a e a d] } }
300 GfifteenthcuttingG   = { \pgrace { d32[ a e G f G e G d] } }
301 seventeenthcutting   = { \pgrace { G32[ d a e a f a e a d a c] } }
302 seventeenthcuttingG  = { \pgrace { G32[ d a e G f G e G d G c] } }
303 Gseventeenthcutting  = { \pgrace { d32[ a e a f a e a d a c] } }
304 GseventeenthcuttingG = { \pgrace { d32[ a e G f G e G d G c] } }
305 barluadh   = { \pgrace { G32[ d a e a f a e a d a c a b a e a f a] } }
306 barluadhG  = { \pgrace { G32[ d a e G f G e G d G c G b G e G f G] } }
307 Gbarluadh  = { \pgrace { d32[ a e a f a e a d a c a b a e a f a] } }
308 GbarluadhG = { \pgrace { d32[ a e G f G e G d G c G b G e G f G] } }
309 % Non-gracenote piobaireachd markup.
310 trebling = \markup {
311   \override #'(baseline-skip . 0.4)
312   \column {
313     \musicglyph #"scripts.tenuto"
314     \musicglyph #"scripts.tenuto"
315     \musicglyph #"scripts.tenuto"
316   }
317 }
318 % Abbreviated notation common in piobaireachd scores.
319 % TODO: Make sure these are put on a fixed Y-position.
320 txtaor = \markup { \center-align "T" }
321 txcrun = \markup { \center-align "C" }
322 txtaorcrun = \markup {
323   \override #'(baseline-skip . 1.8)
324   \column {
325     \center-align "T"
326     \center-align "C"
327   }
328 }
329 % Turn these upside down, as in the Kilberry book.
330 txtaoram = \markup { \center-align \scale #'(-1 . -1) "T" }
331 txcrunam = \markup { \center-align \scale #'(-1 . -1) "C" }
332 txtaorcrunam = \markup {
333   \override #'(baseline-skip . 1.8)
334   \column {
335     \center-align \scale #'(-1 . -1) "T"
336     \center-align \scale #'(-1 . -1) "C"
337   }
338 }