CVSROOT: /cvsroot/lilypond
Module name: lilypond
Branch: lilypond_2_6
Changes by: Graham Percival <[EMAIL PROTECTED]> 05/08/25 06:25:52
Modified files:
. : ChangeLog
Added files:
ly : bagpipe.ly
Log message:
Backport bagpipe.ly
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?only_with_tag=lilypond_2_6&tr1=1.3836.2.27&tr2=1.3836.2.28&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ly/bagpipe.ly?only_with_tag=lilypond_2_6&rev=1.6.2.1
Patches:
Index: lilypond/ChangeLog
diff -u lilypond/ChangeLog:1.3836.2.27 lilypond/ChangeLog:1.3836.2.28
--- lilypond/ChangeLog:1.3836.2.27 Tue Aug 16 11:24:10 2005
+++ lilypond/ChangeLog Thu Aug 25 06:25:51 2005
@@ -1,3 +1,10 @@
+2005-08-24 Graham Percival <[EMAIL PROTECTED]>
+
+ * ly/bagpipe.ly: Backport.
+
+ * Documentation/user/ {various}: backport doc updates,
+ excluding stuff for new features in 2.7.
+
2005-08-16 Mats Bengtsson <[EMAIL PROTECTED]>
* scripts/lilypond-book.py (option_definitions): Don't localize
Index: lilypond/ly/bagpipe.ly
diff -u /dev/null lilypond/ly/bagpipe.ly:1.6.2.1
--- /dev/null Thu Aug 25 06:25:53 2005
+++ lilypond/ly/bagpipe.ly Thu Aug 25 06:25:52 2005
@@ -0,0 +1,290 @@
+%{
+ Bagpipe music settings for Lilypond.
+ This file builds on work by Andrew McNabb (http://www.mcnabbs.org/andrew/)
+
+ Substantial changes and additions made by
+ Sven Axelsson, the Murray Pipes & Drums of Gothenburg
+ (http://www.murrays.nu)
+
+ $Id: bagpipe.ly,v 1.6.2.1 2005/08/25 06:25:52 gpercival Exp $
+%}
+
+\version "2.6.0"
+
+% Notes of the scale of the Great Highland Bagpipe. Extra high notes for
bombarde.
+% Flat notes used mainly in some modern music.
+
+pitchnamesBagpipe = #`(
+ (G . ,(ly:make-pitch 0 4 NATURAL))
+ (a . ,(ly:make-pitch 0 5 NATURAL))
+ (b . ,(ly:make-pitch 0 6 NATURAL))
+ (c . ,(ly:make-pitch 1 0 SHARP))
+ (cflat . ,(ly:make-pitch 1 0 FLAT))
+ (d . ,(ly:make-pitch 1 1 NATURAL))
+ (e . ,(ly:make-pitch 1 2 NATURAL))
+ (f . ,(ly:make-pitch 1 3 SHARP))
+ (fflat . ,(ly:make-pitch 1 3 FLAT))
+ (g . ,(ly:make-pitch 1 4 NATURAL))
+ (gflat . ,(ly:make-pitch 1 4 FLAT))
+ (A . ,(ly:make-pitch 1 5 NATURAL))
+ (B . ,(ly:make-pitch 1 6 NATURAL))
+ (C . ,(ly:make-pitch 2 0 SHARP))
+)
+pitchnames = \pitchnamesBagpipe
+#(ly:parser-set-note-names parser pitchnames)
+
+% Bagpipe music is written in something like D major. If we use
+% flattened notes, the flat should be shown on all instances.
+
+hideKeySignature = {
+ % We normally don't want to show the key signature.
+ \override Staff.KeySignature #'print-function = ##f
+ \set Staff.extraNatural = ##f
+ \key d \major
+ #(set-accidental-style 'forget)
+}
+showKeySignature = {
+ % Show the key signature e.g. for BMW compatibility.
+ \override Staff.KeySignature #'print-function =
#'Key_signature_interface::print
+ \set Staff.extraNatural = ##f
+ \key d \major
+ #(set-accidental-style 'forget)
+}
+
+% Layout tweaks.
+
+\layout {
+ \context {
+ \Voice
+ % All stems go down.
+ \override Stem #'direction = #DOWN
+ % All slurs and ties are on top.
+ \override Slur #'direction = #UP
+ \override Tie #'direction = #UP
+ }
+}
+
+% Some common timing tweaks.
+
+% Sets the autobeamer to span quarter notes only. Use for fast music.
+% TODO: Needs more tweaking
+quarterBeaming = {
+ #(override-auto-beam-setting '(end * * * *) 1 4 'Staff)
+ #(override-auto-beam-setting '(end * * * *) 1 2 'Staff)
+ #(override-auto-beam-setting '(end * * * *) 3 4 'Staff)
+ #(override-auto-beam-setting '(end * * * *) 4 4 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 2 4 ) 1 8 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 2 4 ) 3 8 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 4 4 ) 1 8 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 4 4 ) 3 8 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 4 4 ) 5 8 'Staff)
+ #(revert-auto-beam-setting '(end 1 32 4 4 ) 7 8 'Staff)
+}
+halfBeaming = {
+ #(override-auto-beam-setting '(end * * 2 2) 1 2 'Staff)
+ #(override-auto-beam-setting '(end * * 2 2) 2 2 'Staff)
+}
+% Reels are in allabreve time with half note beaming.
+reelTime = {
+ \time 2/2
+ \halfBeaming
+}
+% 4/4 marches are written with numerical time signature and with quarter
beaming.
+marchTime = {
+ \time 4/4
+ \override Staff.TimeSignature #'style = #'()
+ \quarterBeaming
+}
+
+% Single grace notes
+grG = { \grace { \small G32 } }
+gra = { \grace { \small a32 } }
+grb = { \grace { \small b32 } }
+grc = { \grace { \small c32 } }
+grd = { \grace { \small d32 } }
+gre = { \grace { \small e32 } }
+grf = { \grace { \small f32 } }
+grg = { \grace { \small g32 } }
+grA = { \grace { \small A32 } }
+
+% Doublings
+dblG = { \grace { \small g32[ G d] } }
+dbla = { \grace { \small g32[ a d] } }
+dblb = { \grace { \small g32[ b d] } }
+dblc = { \grace { \small g32[ c d] } }
+dbld = { \grace { \small g32[ d e] } }
+dble = { \grace { \small g32[ e f] } }
+dblf = { \grace { \small g32[ f g] } }
+% These are the same as the half doublings.
+dblg = { \grace { \small g32[ f] } }
+dblA = { \grace { \small A32[ g] } }
+
+% Half doublings
+hdblG = { \grace { \small G32[ d] } }
+hdbla = { \grace { \small a32[ d] } }
+hdblb = { \grace { \small b32[ d] } }
+hdblc = { \grace { \small c32[ d] } }
+hdbld = { \grace { \small d32[ e] } }
+hdble = { \grace { \small e32[ f] } }
+hdblf = { \grace { \small f32[ g] } }
+hdblg = { \grace { \small g32[ f] } }
+hdblA = { \grace { \small A32[ g] } }
+
+% Thumb doublings
+tdblG = { \grace { \small A32[ G d] } }
+tdbla = { \grace { \small A32[ a d] } }
+tdblb = { \grace { \small A32[ b d] } }
+tdblc = { \grace { \small A32[ c d] } }
+tdbld = { \grace { \small A32[ d e] } }
+tdble = { \grace { \small A32[ e f] } }
+tdblf = { \grace { \small A32[ f g] } }
+tdblg = { \grace { \small A32[ g f] } }
+
+% Shakes
+% A few of these can't really be played and are here only for consistency.
+shakea = { \grace { \small g32[ a d a G] } }
+shakeb = { \grace { \small g32[ b d b G] } }
+shakec = { \grace { \small g32[ c d c G] } }
+shaked = { \grace { \small g32[ d e d G] } }
+shakee = { \grace { \small g32[ e f e a] } }
+shakef = { \grace { \small g32[ f g f a] } }
+shakeg = { \grace { \small A32[ f g a] } }
+shakeA = { \grace { \small A32[ g A a] } }
+
+% Half shakes
+hshakea = { \grace { \small a32[ d a G] } }
+hshakeb = { \grace { \small b32[ d b G] } }
+hshakec = { \grace { \small c32[ d c G] } }
+hshaked = { \grace { \small d32[ e d G] } }
+hshakee = { \grace { \small e32[ f e a] } }
+hshakef = { \grace { \small f32[ g f a] } }
+hshakeg = { \grace { \small g32[ f g a] } }
+hshakeA = { \grace { \small A32[ g A a] } }
+
+% Thumb shakes
+tshakea = { \grace { \small A32[ a d a G] } }
+tshakeb = { \grace { \small A32[ b d b G] } }
+tshakec = { \grace { \small A32[ c d c G] } }
+tshaked = { \grace { \small A32[ d e d G] } }
+tshakee = { \grace { \small A32[ e f e a] } }
+tshakef = { \grace { \small A32[ f g f a] } }
+tshakeg = { \grace { \small A32[ f g a] } }
+tshakeA = { \grace { \small A32[ g A a] } }
+
+% Slurs
+% A few of these can't really be played and are here only for consistency.
+slura = { \grace { \small g32[ a G] } }
+slurb = { \grace { \small g32[ b G] } }
+slurc = { \grace { \small g32[ c G] } }
+slurd = { \grace { \small g32[ d G] } }
+slure = { \grace { \small g32[ e a] } }
+slurf = { \grace { \small g32[ f a] } }
+slurg = { \grace { \small A32[ f a] } }
+slurA = { \grace { \small f32[ a] } }
+
+% Half slurs
+hslura = { \grace { \small a32[ G] } }
+hslurb = { \grace { \small b32[ G] } }
+hslurc = { \grace { \small c32[ G] } }
+hslurd = { \grace { \small d32[ G] } }
+hslure = { \grace { \small e32[ a] } }
+hslurf = { \grace { \small f32[ a] } }
+hslurg = { \grace { \small g32[ a] } }
+hslurA = { \grace { \small A32[ a] } }
+
+% Thumb slurs
+tslura = { \grace { \small A32[ a G] } }
+tslurb = { \grace { \small A32[ b G] } }
+tslurc = { \grace { \small A32[ c G] } }
+tslurd = { \grace { \small A32[ d a] } }
+tslure = { \grace { \small A32[ e a] } }
+tslurf = { \grace { \small A32[ f a] } }
+tslurg = { \grace { \small A32[ f a] } }
+tslurA = { \grace { \small f32[ a] } }
+
+% Catches
+catcha = { \grace { \small a32[ G d G] } }
+catchb = { \grace { \small b32[ G d G] } }
+catchc = { \grace { \small c32[ G d G] } }
+catchd = { \grace { \small d32[ G b G] } }
+catche = { \grace { \small e32[ G d G] } }
+
+% G-grace catches
+gcatcha = { \grace { \small g32[ a G d G] } }
+gcatchb = { \grace { \small g32[ b G d G] } }
+gcatchc = { \grace { \small g32[ c G d G] } }
+gcatchd = { \grace { \small g32[ d G b G] } }
+gcatche = { \grace { \small g32[ e G d G] } }
+
+% Thumb catches
+tcatcha = { \grace { \small A32[ a G d G] } }
+tcatchb = { \grace { \small A32[ b G d G] } }
+tcatchc = { \grace { \small A32[ c G d G] } }
+tcatchd = { \grace { \small A32[ d G b G] } }
+tcatche = { \grace { \small A32[ e G d G] } }
+
+% Throws
+thrwd = { \grace { \small G32[ d c] } }
+Gthrwd = { \grace { \small d32[ c] } }
+gripthrwd = { \grace { \small G32[ d G c] } }
+thrwf = { \grace { \small f32[ e g e] } }
+
+% Birls
+birl = { \grace { \small a32[ G a G] } }
+wbirl = { \grace { \small G32[ a G] } }
+gbirl = { \grace { \small g32[ a G a G] } }
+dbirl = { \grace { \small d32[ a G a G] } }
+
+% Grips
+grip = { \grace { \small G32[ d G] } }
+dgrip = { \grace { \small G32[ b G] } }
+egrip = { \grace { \small G32[ e G] } }
+
+% Taorluaths
+taor = { \grace { \small G32[ d G e] } }
+dtaor = { \grace { \small G32[ b G e] } }
+Gtaor = { \grace { \small d32[ G e] } }
+taoramb = { \grace { \small G32[ d G b e] } }
+taoramc = { \grace { \small G32[ d G c e] } }
+taoramd = { \grace { \small G32[ d G c d e] } }
+
+% Crunluaths
+crun = { \grace { \small G32[ d G e a f a ] } }
+dcrun = { \grace { \small G32[ b G e a f a ] } }
+Gcrun = { \grace { \small d32[ G e G f a ] } }
+crunamb = { \grace { \small G32[ d G b e b f b ] } }
+crunamc = { \grace { \small G32[ d G c e c f c ] } }
+crunamd = { \grace { \small G32[ d G c d e d f d ] } }
+
+% Special piobaireachd notations
+grGcad = { \grace { \small G16 } }
+gracad = { \grace { \small a16 } }
+cad = { \grace { \small g32[ e8 d32] } }
+hcad = { \grace { \small g32[ e8] } }
+dre = { \grace { \small e32[ a f a] } }
+% This is the same as thrwf
+dare = { \grace { \small f32[ e g e] } }
+bari = { \grace { \small e32[ G f G] } }
+dari = { \grace { \small f32[ e g e f e] } }
+pthrwd = { \grace { \small G16[ d32 c] } }
+darodo = { \grace { \small G32[ d G c G] } }
+Gdarodo = { \grace { \small d32[ G c G] } }
+% Non-gracenote piobaireachd markup.
+trebling = \markup {
+ \override #'(baseline-skip . 0.3)
+ \column {
+ \musicglyph #"scripts.tenuto"
+ \musicglyph #"scripts.tenuto"
+ \musicglyph #"scripts.tenuto"
+ }
+}
+% Abbreviated notation common in piobaireachd scores.
+% TODO: Make sure these are put on a fixed Y-position.
+txtaor = \markup { "T" }
+txcrun = \markup { "C" }
+txtaorcrun = \markup { \column { "T" "C" } }
+% TODO: These characters should be shown upside down.
+% Use a postscript markup command for this.
+txtaoram = \markup { "T" }
+txcrunam = \markup { "C" }
+txtaorcrunam = \markup { \column { "T" "C" } }
_______________________________________________
Lilypond-cvs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-cvs