summaryrefslogtreecommitdiff
path: root/macros/generic/bagpipe
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/generic/bagpipe
Initial commit
Diffstat (limited to 'macros/generic/bagpipe')
-rw-r--r--macros/generic/bagpipe/BlackDonald.pdfbin0 -> 26762 bytes
-rw-r--r--macros/generic/bagpipe/BlackDonald.tex434
-rw-r--r--macros/generic/bagpipe/Bonnets.pdfbin0 -> 23105 bytes
-rw-r--r--macros/generic/bagpipe/Bonnets.tex110
-rw-r--r--macros/generic/bagpipe/Green.pdfbin0 -> 18026 bytes
-rw-r--r--macros/generic/bagpipe/Green.tex61
-rw-r--r--macros/generic/bagpipe/GreenTwo.pdfbin0 -> 23155 bytes
-rw-r--r--macros/generic/bagpipe/GreenTwo.tex85
-rw-r--r--macros/generic/bagpipe/README47
-rw-r--r--macros/generic/bagpipe/Washer.pdfbin0 -> 23728 bytes
-rw-r--r--macros/generic/bagpipe/Washer.tex135
-rw-r--r--macros/generic/bagpipe/bagdoc.pdfbin0 -> 50353 bytes
-rw-r--r--macros/generic/bagpipe/bagdoc.tex563
-rw-r--r--macros/generic/bagpipe/bagpipe.ini3
-rw-r--r--macros/generic/bagpipe/bagpipe.tex1680
-rw-r--r--macros/generic/bagpipe/bagpipex.ini4
-rw-r--r--macros/generic/bagpipe/quickref.pdfbin0 -> 54872 bytes
-rw-r--r--macros/generic/bagpipe/quickref.tex227
18 files changed, 3349 insertions, 0 deletions
diff --git a/macros/generic/bagpipe/BlackDonald.pdf b/macros/generic/bagpipe/BlackDonald.pdf
new file mode 100644
index 0000000000..99e8df7c3a
--- /dev/null
+++ b/macros/generic/bagpipe/BlackDonald.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/BlackDonald.tex b/macros/generic/bagpipe/BlackDonald.tex
new file mode 100644
index 0000000000..99ab1aa97e
--- /dev/null
+++ b/macros/generic/bagpipe/BlackDonald.tex
@@ -0,0 +1,434 @@
+%&bagpipe
+\input bagpipe
+%
+% Converted from bmw or bww format by bww2tex version 2.00
+%
+\def\freqbarno{9999}
+\maxlinesinpage=12
+%
+\ifx\medleyflag\relax\else
+ \nopagenumbers\pageno=1\medtall\medwidewidth\fi
+\newpitch\newgrace\noautoglue
+%
+\musicsize 16\relax
+%Bagpipe Reader:1.0
+%
+%TuneTempo,55%
+\line{\hss \moyen Black Donald's March\hss }
+%
+\line{\rm I. GROUND\hss }
+%
+\generalmeter{\meterC}
+%\generalsignature{2}
+\debutmorceau
+\setelemq{1.2}%
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\Uptext{\it fine}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\pince f\qle\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\pince h\qlf\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\setdoublebar\suspmorceau
+%
+\line{\rm II. THUMB VAR.\hss }
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\echoN\qla\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlc\etn
+\pince f\qle\enotes\xbarre
+\notes\grg\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\uptext{\it tr}\qlh\enotes\xbarre
+\notes\qlp e\etn
+\pince f\cc\etn
+\grg\qlb\etn
+\echoN\qla\enotes\setdoublebar\suspmorceau
+%
+\line{\rm III. VAR. 2\hss }
+%
+\generalmeter{\meterfrac{2}{4}}
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bb\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bb\echoN}\ba\backput{\pointdorgue a}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bb\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\echoN}\ba\backput{\pointdorgue a}\enotes\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bb\echoN}\ba\backput{\pointdorgue a}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\grg\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\be\uptext{\it tr}}\bh\etn
+\bcc bb3{\bc\uptext{\it tr}}\bh\enotes\xbarre
+\notes\bcc bb3{\bf\uptext{\it tr}}\bh\etn
+\bcc bb3{\bb\echoN}\ba\backput{\pointdorgue a}\enotes\setdoublebar\suspmorceau
+%
+\line{\rm IV. LEUMLUATH SINGLING [S] V. DOUBLING [D]\hss }
+%
+%\generalsignature{2}
+\reprmorceau
+\notes\segno h\enotes\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qle\backput{\Downtext{L}}\etn
+\qlc\backput{\Downtext{L}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{L}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{L}}\rlap{\fsk\Uptext{$\vert$}}\enotes\notes\downtext{\it D.S.}\enotes\setdoublebar\suspmorceau
+%
+\line{\rm VI. TAORLUATH SINGLING [S] VII. DOUBLING [D]\hss }
+%
+%\generalsignature{2}
+\reprmorceau
+\notes\segno h\enotes\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qle\backput{\Downtext{T}}\etn
+\qlc\backput{\Downtext{T}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{T}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{T}}\rlap{\fsk\Uptext{$\vert$}}\enotes\notes\downtext{\it D.S.}\enotes\setdoublebar\suspmorceau
+%
+\line{\rm VIII. CRUNLUATH SINGLING [S] IX. DOUBLING [D]\hss }
+%
+%\generalsignature{2}
+\reprmorceau
+\notes\segno h\enotes\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bc\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlc\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\qlc\backput{\Downtext{C}}\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\Uptext{$\vert$S}\grg\bcc bb3{\bb\backput{\pointdorgue c}\echoN}\ba\backput{\pointdorgue a}\rlap{\fsk\Uptext{$\vert$}}\etn
+\Uptext{$\vert$D}\qlb\backput{\Downtext{C}}\rlap{\fsk\Uptext{$\vert$}}\enotes\notes\downtext{\it D.S.}\enotes\setdoublebar\suspmorceau
+%
+\line{\rm X. CRUNLUATH A MACH\hss }
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlb\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlb\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlb\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlb\enotes\setdoublebar\suspmorceau
+%
+%\generalsignature{2}
+\reprmorceau
+\setdoublebar\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qle\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlc\enotes\xbarre
+\notes\qlf\backput{\Downtext{C}}\etn
+\backput{\Downtext{C'}}\qlb\enotes\notes\Downtext{\ \ \it D.C. al fine}\enotes\setdoublebar\finmorceau\byemedley
+\bye
diff --git a/macros/generic/bagpipe/Bonnets.pdf b/macros/generic/bagpipe/Bonnets.pdf
new file mode 100644
index 0000000000..41d0445e6a
--- /dev/null
+++ b/macros/generic/bagpipe/Bonnets.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/Bonnets.tex b/macros/generic/bagpipe/Bonnets.tex
new file mode 100644
index 0000000000..2801745071
--- /dev/null
+++ b/macros/generic/bagpipe/Bonnets.tex
@@ -0,0 +1,110 @@
+%%&bagpipe
+\input bagpipe
+%
+% Bonnetsx.tex
+%
+\sectionedpagenumbers
+\count1=4\pageno=5\normalwidth\multipart{1}
+%
+%\landscape
+\font\twelvebf=cmbx12
+%
+\def\tcsc#1#2#3{\bcsc#1#3{2}{\qbp0#1\psk}{\qb0#2}{\qb0#3}}
+\def\tcgsc#1#2#3#4{\bcsc#1#4{3}{\qbp0#1#2\psk}{\qb0#3}{\qb0#4}}
+\def\tcsgc#1#2#3#4{\bcsc#1#4{3}{\qbp0#1\psk}{\qb0#2#3}{\qb0#4}}
+%
+% for line 1
+\def\barone{\notes\grg\qla\taor\ca\etn\dblc\qlc\psk\ce\enotes\xbarre}
+\def\bartwo{\notes\psk\qlh\grip\ch\etn\grg\qlh\psk\ce\enotes\xbarre}
+\def\barthree{\notes\dblg\tcsc ghg\etn\bscc ff3\bf\bhp\bf\enotes\xbarre}
+\def\barfour{\notes
+\dble\tcsgc ec\gre a\etn\dblb\qlb\psk\cc\enotes\alaligne}
+%
+% for line 2
+\def\barfive{\barone}
+\def\barsix{\bartwo}
+\def\barseven{\notes\dblf\tcsc fed\etn\grg\qlc\grip\ce\psk\enotes\xbarre}
+\def\bareight{\notes\grg\bscc ec3\bf\bhp\bc\etn\dblb\qlb\grN\ca\enotes}
+%
+% for line 3
+\def\barnine{\notes\grg\tcgsc a\grd ce\etn\dble\tcsgc ec\grN a\enotes\xbarre}
+\def\barten{\notes\dblf\tcsc fed\etn\dblc\tcsgc cb\grN a\enotes\xbarre}
+\def\bareleven{\notes\grg\tcgsc a\grd ce\etn\grg\tcsc fgh\enotes\xbarre}
+\def\bartwelve{\notes\psk\tcsc abc\etn\dblb\qlb\grN\ca\enotes\alaligne}
+%
+% for line 4
+\def\barthirteen{\barnine}
+\def\barfourteen{\barten}
+\def\barfifteen{\notes\psk\tcsc hgf\etn\dble\tcsc ece\enotes\xbarre}
+\def\barsixteen{\bareight}
+%
+% for line 5
+\def\barseventeen{\notes\thrwd\qlp d\shkd\qlp d\enotes\xbarre}
+\def\bareighteen{\notes\shkd\tcgsc d\grg fe\etn\grg\tcsgc db\grN a\enotes\xbarre}
+\def\barnineteen{\notes
+ \grg\bcsc bb3\bd{\bb\grN}\bbp\etn\dblb\qlb\dblg\cg\enotes\xbarre}
+\def\bartwenty{\notes\psk\qlh\grip\ch\etn\hdblf\tcsc fef\enotes\alaligne}
+%
+% for line 6
+\def\bartwentyone{\barseventeen}
+\def\bartwentytwo{\bareighteen}
+\def\bartwentythree{\notes\dbld\tcsc dcb\etn\grg\tcsc abc\enotes\xbarre}
+\def\bartwentyfour{\notes\thrwd\tcsc def\etn\dble\qle\psk\cd\enotes}
+%
+% for line 7
+\def\bartwentyfive{\notes\shkd\tcsc dfh\etn\grg\tcsgc hf\grg d\enotes\xbarre}
+\def\bartwentysix{\notes\psk\tcsc hgf\etn\dblf\tcsc fef\enotes\xbarre}
+\def\bartwentyseven{\notes\thrwd\tcsc def\etn\grg\tcsc fgh\enotes\xbarre}
+\def\bartwentyeight{\bartwentyfour}
+%
+% for line 8
+\def\bartwentynine{\bartwentyfive}
+\def\barthirty{\notes\psk\tcsc hgf\etn\dblf\tcsc fed\enotes\xbarre}
+\def\barthirtyone{\bartwentythree}
+\def\barthirtytwo{\bartwentyfour}
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\line{\moyen Blue Bonnets Over the Border\hss
+\rm March\hss revised \today\hss}
+\bigskip
+%
+\generalmeter{\meterfrac 68}%
+%
+\debutmorceau
+%
+\autolines{16}{4}{13}%
+% line 1
+\leftrepeatsymbol
+\barone\bartwo\barthree\barfour
+% line 2
+\autolines{11}{4}{13}%
+\barfive\barsix\barseven\bareight\setrightrepeat\suspmorceau
+% line 3
+\line{\twelvebf Part 2\hss}%
+\autolines{13}{4}{12}%
+\reprmorceau
+\leftrepeatsymbol\barnine\barten\bareleven\bartwelve
+% line 4
+\barthirteen\barfourteen\barfifteen\barsixteen\setrightrepeat\suspmorceau
+% line 5
+\line{\twelvebf Part 3\hss}%
+\reprmorceau
+\maxlinesinpage=12%
+\autolines{11}{4}{13}%
+\leftrepeatsymbol\barseventeen\bareighteen\barnineteen\bartwenty
+% line 6
+\bartwentyone\bartwentytwo\bartwentythree\bartwentyfour
+ \setrightrepeat\suspmorceau
+% line 7
+\line{\twelvebf Part 4\hss}%
+\reprmorceau
+\autolines{12}{4}{13}%
+\leftrepeatsymbol
+\bartwentyfive\bartwentysix\bartwentyseven\bartwentyeight\alaligne
+% line 8
+\autolines{11}{4}{13}%
+\bartwentynine\barthirty\barthirtyone\barthirtytwo\setrightrepeat\suspmorceau
+%
+\byemedley
+\bye
diff --git a/macros/generic/bagpipe/Green.pdf b/macros/generic/bagpipe/Green.pdf
new file mode 100644
index 0000000000..d75d980c85
--- /dev/null
+++ b/macros/generic/bagpipe/Green.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/Green.tex b/macros/generic/bagpipe/Green.tex
new file mode 100644
index 0000000000..d0b11b49ca
--- /dev/null
+++ b/macros/generic/bagpipe/Green.tex
@@ -0,0 +1,61 @@
+%&bagpipe
+\input bagpipe
+%\let\usemusixtex\relax
+%
+% Green.tex
+%% WUSPBA massed band setting
+%
+\newpitch\newgrace\noautoglue
+\ifx\medleyflag\relax\else\nopagenumbers\fi
+%
+%\landscape
+%
+% for line 1
+\def\barone{\notes\grg\pcps ab\etn\grip\qlc\etn\dblc\pcgc c\gre a\enotes\xbarre}
+\def\bartwo{\notes\grg\pcgc c\thrwd d\etn\dble\qle\etn\gra\pcc ef\enotes\xbarre}
+\def\barthree{\notes\dblc\pcc cf\etn\dble\pcps ec\etn\grg\qlb\enotes\xbarre}
+\def\barfour{\notes\grip\pcc bf\etn\dble\pcps ec\etn\grN\qla\enotes\alaligne}
+%
+% for line 2
+\def\barfive{\barone}
+\def\barsix{\bartwo}
+\def\barseven{\barthree}
+\def\bareight{\notes\grip\pcgc b\grN a\etn\dblc\pcps cb\etn\grN\qla\enotes}
+%
+% for line 3
+\def\barnine{\notes\dblc\pcc ce\etn\dblh\qlh\etn\grg\qlh\enotes\xbarre}
+\def\barten{\notes\grf\pcc gf\etn\dblf\pcc fe\etn\gra\qle\enotes\xbarre}
+\def\bareleven{\notes\grg\pcps ef\etn\dble\pcc ed\etn\shkd\qld\enotes\xbarre}
+\def\bartwelve{\notes\grg\pcps de\etn\dbld\pcc dc\etn\grip\qlc\enotes\alaligne}
+%
+% for line 4
+\def\barthirteen{\barnine}
+\def\barfourteen{\barten}
+\def\barfifteen{\notes\grg\pcps ef\etn\dble\qle\etn\gra\pcps ed\enotes\xbarre}
+\def\barsixteen{\notes\grg\pcgc c\thrwd d\etn\dble\qle\etn\gra\qle\enotes}
+%
+\line{\moyen The Green Hills of Tyrol\hss
+\rm March\hss revised \today\hss PM J Macleod}
+\bigskip
+%
+\generalmeter{\meterfrac 34}%
+%
+\debutmorceau
+%
+\autolines{13}{4}{48}%
+%line 1
+\leftrepeatsymbol
+\barone\bartwo\barthree\barfour
+% line 2
+\barfive\barsix\barseven\bareight\setrightrepeat\suspmorceau
+% line 3
+\reprmorceau
+\autolines{12}{4}{48}%
+\leftrepeatsymbol
+\barnine\barten\bareleven\bartwelve
+% line 4
+\autolines{12}{4}{48}%
+\barthirteen\barfourteen\barfifteen\barsixteen\setrightrepeat\suspmorceau
+%
+\byemedley
+\bye
diff --git a/macros/generic/bagpipe/GreenTwo.pdf b/macros/generic/bagpipe/GreenTwo.pdf
new file mode 100644
index 0000000000..dfa3af0c4d
--- /dev/null
+++ b/macros/generic/bagpipe/GreenTwo.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/GreenTwo.tex b/macros/generic/bagpipe/GreenTwo.tex
new file mode 100644
index 0000000000..d1b035c3bb
--- /dev/null
+++ b/macros/generic/bagpipe/GreenTwo.tex
@@ -0,0 +1,85 @@
+%&bagpipe
+\input bagpipe
+%
+% GreenTwo.tex
+%% WUSPBA massed band setting two part version
+%
+\multipart{2}%
+%
+\newpitch
+\ifx\medleyflag\relax\else\nopagenumbers\fi
+%
+%\landscape
+%
+%
+\line{\moyen The Green Hills of Tyrol\hss
+\rm March\hss revised \today\hss PM J Macleod}%
+\bigskip
+%
+\generalmeter{\meterfrac 34}%
+%
+\debutmorceau
+%
+% for line 1
+\def\barone{\notes\grg\pcps ab|\grg\pcps ab\etn
+ \grip\qlc|\grip\qlc\etn
+ \dblc\pcgc c\gre a|\dblc\pcgc c\gre a\enotes\xbarre}\relax
+\def\bartwo{\notes\grg\pcgc c\thrwd d|\grg\pcgc c\thrwd d\etn
+ \grg\qlc|\dble\qle\etn
+ \grip\pcc cd|\gra\pcc ef\enotes\xbarre}\relax
+\def\barthree{\notes\grg\pcc cd|\dblc\pcc cf\etn
+ \dblc\pcps ca|\dble\pcps ec\etn
+ \grg\qlN|\grg\qlb\enotes\xbarre}\relax
+\def\barfour{\notes\grd\pcc Nd|\grip\pcc bf\etn
+ \dblc\pcps ca|\dble\pcps ec\etn
+ \grg\qla|\grN\qla\enotes\alaligne}\relax
+%
+% for line 2
+\def\barfive{\barone}\relax
+\def\barsix{\bartwo}\relax
+\def\barseven{\barthree}\relax
+\def\bareight{\notes\grd\pcc Na|\grip\pcgc b\grN a\etn
+ \dblc\pcc cN|\dblc\pcps cb\etn
+ \grg\qla|\grN\qla\enotes}\relax
+%
+% for line 3
+\def\barnine{\notes\grg\pcgc a\grd c|\dblc\pcc ce\etn
+ \grg\qlf|\dblh\qlh\etn
+ \gre\qlf|\grg\qlh\enotes\xbarre}\relax
+\def\barten{\notes\dble\pcc ed|\grf\pcc gf\etn
+ \dbld\pcc dc|\dblf\pcc fe\etn
+ \grip\qlc|\gra\qle\enotes\xbarre}\relax
+\def\bareleven{\notes\grg\pcps cd|\grg\pcps ef\etn
+ \dblc\pcgc c\gre b|\dble\pcc ed\etn
+ \grip\qlb|\shkd\qld\enotes\xbarre}\relax
+\def\bartwelve{\notes\grg\pcps bc|\grg\pcps de\etn
+ \dblb\pcgc b\gre a|\dbld\pcc dc\etn
+ \wbirl\qla|\grip\qlc\enotes\alaligne}\relax
+%
+% for line 4
+\def\barthirteen{\barnine}\relax
+\def\barfourteen{\barten}\relax
+\def\barfifteen{\notes\grg\pcps cd|\grg\pcps ef\etn
+ \grg\qlc|\dble\qle\etn
+ \grip\pcps cb|\gra\pcps ed\enotes\xbarre}\relax
+\def\barsixteen{\notes\grg\pcc ab|\grg\pcgc c\thrwd d\etn
+ \dblc\qlc|\dble\qle\etn
+ \grip\qlc|\gra\qle\enotes}\relax
+%
+\autolines{13}{4}{48}%
+%line 1
+\leftrepeatsymbol
+\barone\bartwo\barthree\barfour
+% line 2
+\barfive\barsix\barseven\bareight\setrightrepeat\suspmorceau
+% line 3
+\reprmorceau
+\autolines{12}{4}{48}%
+\leftrepeatsymbol
+\barnine\barten\bareleven\bartwelve
+% line 4
+\autolines{12}{4}{48}%
+\barthirteen\barfourteen\barfifteen\barsixteen\setrightrepeat\suspmorceau
+%
+\byemedley
+\bye
diff --git a/macros/generic/bagpipe/README b/macros/generic/bagpipe/README
new file mode 100644
index 0000000000..ee2c9b167d
--- /dev/null
+++ b/macros/generic/bagpipe/README
@@ -0,0 +1,47 @@
+
+Bagpipe.tex is a macro-package for use on top of MusicTeX or
+MusixTeX, which are macro-packages for use with TeX or LaTeX. TeX
+is a language designed for typesetting technical documents,
+and is available for most platforms. Musi[c|x]TeX
+were written by Daniel Taupin, who is now deceased. They are
+available via anonymous ftp at CTAN sites and the Werner Icking
+Music Archive (WIMA). See WIMA for installation instructions.
+
+Version 3.02 of bagpipe.tex works with MusicTeX version 5.20 and
+MusixTeX version T.89. Since it redefines a few Musi(c|x)TeX
+macros, it may not work with later versions without modification.
+It definitely does not work with versions of MusicTeX earlier than
+4.7.
+
+MusixTeX differs from MusicTeX in that it relies on a three pass
+system to adjust the spacing instead of glue (stretchable space).
+MusixTeX is also the version under active development and has
+many features which MusicTeX does not. Most of these are
+irrelevant for bagpipe music.
+
+In this distribution:
+
+bagpipe.tex : the macro package.
+bagpipe.txt : same as above with a common extension
+bagpipe.ini : for generating a bagpipe format
+bagpipex.ini : for generating a bagpipex format
+bagdoc.tex : user's guide.
+
+quickref.tex : a reference 'card'.
+
+Green.tex }
+GreenTwo.tex } : sample tunes
+Bonnets.tex } : (note that in bagpipe music, two sharps are
+Washer.tex } : understood and the key signature is usually omitted as
+BlackDonald.tex } : in these samples)
+
+Notes: *.tex, *.ini, and *.mf are ascii.
+You may have to modify some settings to get your browser to
+download these files. The sample tunes and quickref in this
+distribution are set up to use MusixTeX.
+
+License is granted to distribute and use this product according
+to the LaTeX Project Public License (lppl1.3). This project is
+maintained by Walt Innes (walt (at) slac.stanford.edu).
+
+
diff --git a/macros/generic/bagpipe/Washer.pdf b/macros/generic/bagpipe/Washer.pdf
new file mode 100644
index 0000000000..e3f816ec5f
--- /dev/null
+++ b/macros/generic/bagpipe/Washer.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/Washer.tex b/macros/generic/bagpipe/Washer.tex
new file mode 100644
index 0000000000..3976585456
--- /dev/null
+++ b/macros/generic/bagpipe/Washer.tex
@@ -0,0 +1,135 @@
+%&bagpipe
+\input bagpipe
+%
+% Washer.tex
+%
+\newgrace\newpitch\noautoglue
+%
+\ifx\medleyflag\relax\else\normalwidth\nopagenumbers\fi
+%
+% for line 1
+\def\barone{\notes
+ \hdblf\bcsc dd3\bfp{\bd\grN}\bd\etn\grg\bcsc ac3\bap{\bd\grN}\bd\enotes\xbarre}
+\def\bartwo{\notes
+ \grg\bcsc ee3\bfp\bd\bf\etn\bcsc hf3\bhp\bg\bf\enotes\xbarre}
+\def\barthree{\notes
+ \grh\bcsc ee3\bgp{\be\gra}\be\etn\grg\bcsc cd3\bcp{\be\gra}\be\enotes\xbarre}
+\def\barfour{\notes
+ \grg\bcsc ae3{\bap\grd}\bc\be\etn\grh\bcsc ge3\bgp\bf\be\enotes\alaligne}
+%
+% for line 2
+\def\barfive{\barone}
+\def\barsix{\bartwo}
+\def\barseven{\notes
+ \grh\bcsc ff3\bgp\bf\bg\etn\grh\bscc eg3\be\bhp\bg\enotes\xbarre}
+\def\bareight{\notes
+ \grh\bcsc dd3\bfp{\bd\grN}\bd\etn\shkd\qld\etn\enotes}
+%
+% for line 3
+\def\barnine{\notes
+ \hdblf\bcsc dd3\bfp{\bd\grN}\bd\etn\bcsc dd3\bhp{\bd\grN}\bd\enotes\xbarre}
+\def\barten{\notes
+ \grg\bcsc dd3\bfp{\bd\grN}\bd\etn\bcsc hf3\bhp\bg\bf\enotes\xbarre}
+\def\bareleven{\barthree}
+\def\bartwelve{\notes
+ \grh\bcsc ee3\bgp{\be\gra}\be\etn\grg\bscc fg3\bf\bhp\bg\enotes\alaligne}
+%
+% for line 4
+\def\barthirteen{\barnine}
+\def\barfourteen{\barten}
+\def\barfifteen{\barseven}
+\def\barsixteen{\bareight}
+%
+% for line 5
+\def\barseventeen{\notes
+ \sk\bscc ff3\bf\bhp\bf\etn\dbld\bcsc cc3\bdp\bc\bd\enotes\xbarre}
+\def\bareighteen{\notes
+ \grg\bcsc a e3\bap\bd\bf\etn\bcsc hf3\bhp{\bg\grh}\bf\enotes\xbarre}
+\def\barnineteen{\notes
+ \sk\bcsc ff3{\bgp\grh}\bf\bg\etn\hdble\bcsc dd3\bep\bc\be\enotes\xbarre}
+\def\bartwenty{\barfour}
+%
+% for line 6
+\def\bartwentyone{\barseventeen}
+\def\bartwentytwo{\bareighteen}
+\def\bartwentythree{\barseven}
+\def\bartwentyfour{\bareight}
+%
+% for line 7
+\def\bartwentyfive{\notes
+ \grg\qlf\grip\cf\etn\bcsc hf3\bhp\bg\bf\enotes\xbarre}
+\def\bartwentysix{\bareighteen}
+\def\bartwentyseven{\notes
+ \grg\qle\grip\ce\etn\grh\bcsc ge3\bgp\bf\be\enotes\xbarre}
+\def\bartwentyeight{\barfour}
+%
+% for line 8
+\def\bartwentynine{\bartwentyfive}
+\def\barthirty{\bareighteen}
+\def\barthirtyone{\barseven}
+\def\barthirtytwo{\bareight}
+%
+% for line 9
+\def\barthirtythree{\bartwentyfive}
+\def\barthirtyfour{\bartwentysix}
+\def\barthirtyfive{\bartwentyseven}
+\def\barthirtysix{\bartwentyeight}
+%
+% for line 10
+\def\barthirtyseven{\notes
+ \grg\bscc ff3\bf\bhp\bf\etn\dbld\bcsc cc3\bdp\bc\bd\enotes\xbarre}
+\def\barthirtyeight{\bareighteen}
+\def\barthirtynine{\barseven}
+\def\barforty{\bareight}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\line{\moyen The Irish Washerwoman\hss
+\rm Jig\hss revised \today\hss}
+\bigskip
+%
+\generalmeter{\meterfrac 68}%
+%
+\debutmorceau
+%
+\autolines{13}{4}{13}%
+% line 1
+\leftrepeatsymbol
+\pickup{\ch}%
+\barone\bartwo\barthree\barfour
+% line 2
+\autolines{11}{4}{13}%
+\barfive\barsix\barseven\bareight\setrightrepeat\suspmorceau
+% line 3
+\line{\twelvebf Part 2\hss}
+\autolines{12}{4}{13}%
+\repreppickup{\ch}%
+\barnine\barten\bareleven\bartwelve
+% line 4
+\barthirteen\barfourteen\barfifteen\barsixteen\setrightrepeat\suspmorceau
+% line 5
+\line{\twelvebf Part 3\hss}
+\autolines{12}{4}{13}%
+\repreppickup{\ch}%
+\barseventeen\bareighteen\barnineteen\bartwenty
+% line 6
+\autolines{11}{4}{13}%
+\bartwentyone\bartwentytwo\bartwentythree\bartwentyfour
+\setrightrepeat\suspmorceau
+% line 7
+\line{\twelvebf Part 4\hss}
+\autolines{12}{4}{13}%
+\reppickup{\ce}%
+\bartwentyfive\bartwentysix\bartwentyseven\bartwentyeight
+% line 8
+\autolines{11}{4}{13}%
+\bartwentynine\barthirty\barthirtyone\barthirtytwo\suspmorceau
+% line 9
+\reppickup{\ce}%
+\barthirtythree\barthirtyfour\barthirtyfive\barthirtysix
+% line 10
+\barthirtyseven\barthirtyeight\barthirtynine\barforty
+\finmorceau
+%
+\byemedley
+\bye
diff --git a/macros/generic/bagpipe/bagdoc.pdf b/macros/generic/bagpipe/bagdoc.pdf
new file mode 100644
index 0000000000..48ee7c676f
--- /dev/null
+++ b/macros/generic/bagpipe/bagdoc.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/bagdoc.tex b/macros/generic/bagpipe/bagdoc.tex
new file mode 100644
index 0000000000..cd7a50e0bb
--- /dev/null
+++ b/macros/generic/bagpipe/bagdoc.tex
@@ -0,0 +1,563 @@
+%&plain
+%% This is a short write-up for bagpipe.tex
+%% Process this file with TeX using the plain format.
+% Computer modern fonts are used. Change the following three lines
+% if other fonts must be substituted.
+\font\twelverm=cmr12 scaled\magstephalf
+\font\twelvebf=cmbx12 scaled\magstephalf
+\font\fourteenrm=cmbx12 scaled\magstep1
+%
+\def\bsl#1{{\twelvebf$\backslash$#1}}
+\twelverm
+\baselineskip=16pt
+%
+{\fourteenrm\centerline{Using bagpipe.tex}}
+\bigskip
+\leftline{\twelvebf 1. Introduction}%
+
+\bigskip
+
+Bagpipe.tex is a macro-package for use on top of MusicTeX, or
+MusixTeX, which are
+macro-packages for use with TeX or LaTeX. TeX is a language
+designed for typesetting technical documents. It is public domain and
+is available for most platforms. Musi(c$|$x)TeX were written and are maintained
+by Daniel Taupin. They are available via anonymous ftp at
+the CTAN sites and the Werner Icking Music Archive (WIMA).
+WIMA is also a good place to find installation instructions.
+Bagpipe.tex itself is available via WWW from
+http://www.stanford.edu/\~ wrinnes/bagpipe.tex/.
+Musi(c$|$x)TeX files are usually found in MSDOS$|$Windows format, and bagpipe.tex
+files in UNIX format. If you transfer them in binary mode
+(as you would for a compressed TAR or zip file), you may have
+to do some conversion to get the carriage returns and line feeds
+correct. TeX itself is not too fussy about such things, but a
+platform which doesn't see a line break in the files may cause TeX
+to choke (this happens on MACs if you don't convert the sources).
+
+This write-up is for version 3.02. Version 3.02 of bagpipe.tex
+works with version 5.20 of MusicTeX and version T.89 of MusixTeX.
+Since it redefines a few Musi(c$|$x)TeX macros, it may not work
+with later versions without modification. It will not work with
+versions of MusicTeX before 4.7. Musi(c$|$x) TeX are designed to
+set complex multi-part scores. As a result, as delivered,
+typesetting bagpipe music is needlessly tedious. So, as suggested
+by Taupin in his write-up, I have written macros for commonly
+recurring complex codings. The result is that very few
+Musi(c$|$x)TeX macros appear directly in a score set with
+bagpipe.tex. Nevertheless, one should read Taupin's documentation
+to get an understanding of Musi(c$|$x)TeX's mode of operation and
+to find those macros which {\twelvebf are} used. I will not
+describe any Musi(c$|$x)TeX macros except when they interact with
+bagpipe.tex macros.
+
+MusixTeX differs from MusicTeX in that it relies on a three pass
+system to adjust the spacing instead of glue (stretchable space).
+MusixTeX is also the version under active development and has
+many features which MusicTeX does not. Most of these are
+irrelevant for bagpipe music. As of version 3.02, MusixTeX is the
+default. To revert to MusicTeX, comment out the line:\hfil\break
+\bsl{let}\bsl{usemusixtex}\bsl{relax}\%\ this sets the flag to use MusixTeX instead of MusicTeX,\hfil\break
+which is located near the beginning of the bagpipe.tex file.
+
+
+Permission is granted to use bagpipe.tex according to the
+LaTeX Project Public License, LPPL version 1.3, which may be found
+at\hfil\break http://www.ctan.org/license/lppl1.3 .
+
+\bigskip
+\leftline{\twelvebf 2. Basic definitions, melody notes.}%
+
+\bigskip
+
+The (usually) single part and limited range of bagpipe music allows for simplification.
+There are two schemes for indicating pitch. The default is the
+new scheme in which
+pitch values are designated by one of N, a, b, c, d, e, f, g, h.
+
+In the following
+I will represent one of these by x. To specify a pitch one types
+x or \bsl{x}.
+In forming macro names G may be used in place of N and A may be
+used in place of h. These last alternates may also be used for
+pitches providing a leading \bsl\ is used.
+An alternative scheme may invoked by \bsl{oldpitch}. In this
+alternate scheme the pitch values are designated by one of
+g, a, b, c, d, e, f, G, or A. A a leading \bsl\ is required.
+The new scheme may be
+restored at any time with a \bsl{newpitch}. In the examples in the
+rest of this note I will use the new scheme as do the sample
+tunes.
+
+To specify an isolated (not connected to a beam) melody note
+type \bsl{whx} for a whole note, \bsl{hx} for a half note,
+\bsl{qlx} for a quarter note,
+\bsl{cx} for an eighth note, \bsl{sx} for a sixteenth note, \bsl{tx} for a thirty-second
+note, and \bsl{sfx} for sixty-fourth note. Dotted melody notes are specified
+\bsl{hp x}, \bsl{qlp x}, \bsl{cp x}, \bsl{sp x}, \bsl{tp x}, \bsl{sfp}.
+Similarly, \bsl{hpp x}, \bsl{qlpp x}, and \bsl{cpp x}
+are used for double dotted notes.
+Beamed notes are specified as arguments of beam macros which will be described below.
+The arguments are \bsl{bx} for a plain note, \bsl{bxp}
+for a dotted note, and \bsl{bxpp} for a double dotted note.
+The time value is controlled by the beam macro.
+
+
+\bigskip
+\leftline{\twelvebf 3. Embellishments.}%
+
+\bigskip
+
+The big breakthrough in MusicTeX was to make possible arbitrary grace
+note sequences. I have coded macros for all the common and many not so
+common bagpipe grace notes and embellishments.
+These macros specify only the grace notes proper and not the
+following melody notes. Simple grace notes and strikes
+are entered as \bsl{grx}.
+Doublings are \bsl{dblx}, half doublings \bsl{hdblx}, thumb doublings
+\bsl{tdblx}, and slurred doublings \bsl{sdblx}.
+The throw on D is \bsl{thrwd}
+and on f is \bsl{thrwf}, the
+grip is \bsl{grip}, and the grip from d is \bsl{dgrip}.
+The \bsl{thrwf} is the same as the dare \bsl{dare}.
+There is also a grip-throw on D (with an extra low G), \bsl{gripthrwd}.
+The half throw on d is \bsl{hthrwd} and the throw on d from low G
+is \bsl{Nthrwd}. The grip from low G is \bsl{Ngrip}.
+The note sequences specified by these grips are often called
+by other names in particular contexts such as throws or leumluaths.
+I have not defined many such synonyms.
+When coding, look at what grace notes are
+actually there, not at the surrounding melody notes.
+The taorluath is \bsl{taor},
+the taorluath from g is \bsl{gtaor}, and from d \bsl{dtaor}.
+The half taorluath from low A is \bsl{ahtaor}.
+The birl is \bsl{birl},
+the strong birl \bsl{sbirl}, the weak birl \bsl{wbirl}, and the thumb birl
+\bsl{tbirl}.
+The slurs take x values a to f only.
+They are the slur \bsl{slurx}, half slur \bsl{hslurx}, and the
+thumb slur \bsl{tslurx}.
+In all of the slurs, ``slap'' may be used in place of ``slur''.
+Similarly shakes are \bsl{shkx} for x from a to g.
+There are also half shakes \bsl{hskx} and thumb shakes \bsl{tshkx}.
+Note that for a, b, c, and e
+shakes and slurs are the same.
+I have not defined such a synonym.
+There are slurred doublings \bsl{sdblx}, slurred half doublings
+\bsl{shdblx}, and slurred thumb doublings \bsl{stdblx}. There are the
+shaken doubling and thumb doubling on d \bsl{shkdbld}, \bsl{shtdbld}.
+
+Some less commonly used embellishments are the double grace notes
+\bsl{ydgrx} where y goes from d to t (t instead h), the double
+strikes \bsl{dstrx}, strong double strikes \bsl{gdstrx}, thumb
+double strikes \bsl{tdbstrx}, and the half double strikes
+\bsl{hdbstrx}. There is also the special case of the light
+half doulbe strike on D \bsl{lhdbstrd}. In exactly the same
+pattern as the double strikes there are triple strikes
+\bsl{tstrx}, etc. For x=b,c,d,e there are the pele's, sometimes
+called hornpipe shakes \bsl{pelx}, \bsl{tpelx}, \bsl{hpelx},
+\bsl{lpeld}, \bsl{ltpeld}, and \bsl{lhpeld}. For d and e these
+are the same as the slurred doublings. For x values of a through d there are
+catches \bsl{catchx}, strong catches \bsl{scatchx}, and
+thumb catches \bsl{tcatchx}.
+
+Note that some named movements such as tachums are
+not represented here because they consist of a combination of grace and
+melody notes. They need to be broken down for type setting.
+
+
+Piobaireachd embellishments include
+the crunluaths \bsl{crun}, \bsl{crunf}, \bsl{ahcrun}, \bsl{dcrun},
+\bsl{Nhcrun},
+ crunluath an machs \bsl{crunmb},
+\bsl{crunmc}, \bsl{crunmd}.
+The crunluath breabachs are \bsl{crunbr}, \bsl{dcrunbr},
+\bsl{ahcrunbr}.
+ \bsl{chelalho}, and the darodos \bsl{darodo} and \bsl{Ndarodo}.
+``darodo'' may be replaced by ``bubbly''. The \bsl{crunmd} is the same as
+the edre on d \bsl{edred}. There also the dre \bsl{dre},
+the edre \bsl{edre}, and edre's on b and c \bsl{edrex}.
+Other dre's and dare's are \bsl{gedre}, \bsl{gdare}, \bsl{tedre},
+bsl{tdare}, \bsl{Nedre}, \bsl{aedre}, \bsl{hdre}, \bsl{hedale},
+\bsl{hchechere}, \bsl{hedari}, \bsl{tchechere}.
+
+The piobaireachd throws are \bsl{enbain}, \bsl{otro}, \bsl{odro},
+\bsl{adela}, and similarly with leading g or t for the strong or
+thumb variations.
+There are also \bsl{dbstf} and \bsl{dbsth}.
+ Special piobaireachd throws on D are \bsl{tra}, and
+\bsl{trac}. Themal grace notes are coded \bsl{themx} and echo notes
+\bsl{echox}.
+The cadences are coded \bsl{cadxx} or \bsl{cadxxx}. The retarded
+variations are \bsl{fcadxx} or \bsl{fcadxx}.
+
+If your favorite embellishment is not (?!!) included, note that
+any set notes may turned into grace notes using them as the
+argument of \bsl{ggr}$\{\}$.
+For the standard thirty second note embellishments, you can use the
+\bsl{multigr} and \bsl{smultigr} macros. See the bagpipe.tex
+source for many examples.
+
+Versions 2.00 and later offer a different means of generating grace note spacing.
+This option is invoked by \bsl{newgrace} or \bsl{multipart}. A
+byproduct is that the afterruleskip can be be restored to closer
+to the MusicTeX standard value making typesetting somewhat easier.
+The old (default) scheme may be restored
+with the macro \bsl{oldgrace}.
+Good practice would dictate that you put one or the
+other at the beginning of each piece to prevent problems if you
+later mix sources or the default changes in a future version.
+I recommend the new mechanism.
+
+\bigskip
+\leftline{\twelvebf 4. Beamed note pairs.}
+
+\bigskip
+
+Because of there being only two notes, the location and slopes of beams for
+note pairs may be calculated from the note pitches. This allows for
+comparatively simple entry. Here I describe a group of macros for
+specifying these note pairs. They all have the form \bsl{pd...d} where
+there two to four d's. d represents either a note length (c, s, or t)
+, p indicating that the previous note is dotted,
+or g for a grace note. For each d (except p) the macro requires an appropriate
+argument. Note lengths require a pitch value x and a g requires
+any grace note macro, e.g. \bsl{grx}. An example of use is \bsl{pcps ab} which
+would set a dotted eighth note at pitch a beamed to a sixteenth note
+at pitch b. Another is \bsl{psgcp b}\bsl{grd c} which sets a sixteenth note at pitch
+b followed by a d grace note and then a dotted eighth note at pitch c.
+The b and
+the c are connected by a beam. The complete list of macros can be
+determined by looking into bagpipe.tex. All reasonable combinations are
+defined.
+
+\bigskip
+\leftline{\twelvebf 5. More general beamed note groups.}
+
+\bigskip
+
+Combinatorics being what they are, the above approach becomes impractical
+for more than two notes. Also there are a few cases where more flexibility
+is required even for pairs (e.g. sometimes the auto beam code puts the
+beam on top of the grace note !). For these reasons I have defined
+more general macros. These have the form \bsl{bd...d} where there from two to
+four d's. The d's represent time values (c, s, or t). These control the
+beam structure.
+The first three
+arguments specify the beam: starting pitch, ending pitch, and length
+in note spacings. Often the pitches will be those of the starting and
+ending note but may differ for many reasons as you will soon find out.
+The length is an integer from 1 to 9.
+An additional argument is required for each d. In their simplest
+form these arguments are beamed note specifiers \bsl{bx}, or \bsl{bxp}.
+If there
+is a grace note between two melody notes within the beamed group, it
+is specified by replacing the argument for the first melody note by
+$\{$\bsl{bx}\bsl{g}$\}$ or $\{$\bsl{bxp}\bsl{g}$\}$ where \bsl{g} represents any grace note macro.
+An example which might be found in a jig is
+\bsl{bccc cc3}$\{$\bsl{bc}\bsl{grd}$\}$$\{$\bsl{bc}\bsl{gre}$\}$\bsl{bc}.
+Again the complete list
+of macros can be found in the code. It is intended that all
+possibilities are defined up to 4 'd's. Longer beamed groups can be specified if
+the number beams for successive notes (not including the last) are the same.
+This is done by including multiple \bsl{bx} macros within a pair of braces.
+
+A note for TeX neophytes: macro
+names consist of letters only. Thus they are terminated by spaces, \bsl{}'s,
+braces and numbers.
+If a macro requires arguments the processor will take the following
+``tokens'' until a sufficient number have been found to feed to the
+macro. The braces serve to group macros so that they will be counted
+as one argument.
+
+\bsl{bgrx} was a work around for a bug which has been squashed. It has
+been removed.
+
+\bigskip
+\leftline{\twelvebf 6. Multiple parts}
+\bigskip
+
+Version 2.00 introduces the ability to set multiple parts
+(parts as in the melody plus seconds). The
+standard Musi(c$|$x)TeX instrument and staff definitions will work
+(if you invoke \bsl{noautoglue}, see below), but
+if all your parts are on bagpipe, you can use
+\bsl{multipart}$\{$n$\}$ where n is the number of parts.
+Note that \bsl{multipart$\{$1$\}$} is a simple way of setting
+the options for the newgrace note scheme and no autoglue.
+If you are content to line up only the beginning of the beats,
+you can use all bagpipe.tex macros. Otherwise you are on your
+own for beams. Start a bar with \bsl{notes}, set the first beat
+of the bottom part, enter a $|$ then the corresponding beat of the next part.
+Proceed through all the parts and then terminate with a \bsl{etn}.
+Then enter the music for the bottom part of the next beat and continue on.
+Terminate the last beat of the bar with an \bsl{enotes}.
+A bar in a two part, two beat per bar piece would go like:
+
+\bsl{notes}$\ldots|\ldots$\bsl{etn}$\ldots|\ldots$\bsl{enotes}\bsl{xbarre}
+
+If you do go your own way, you may have pending beams in both parts. In
+this case you must specify different beam numbers for the parts. Some
+of the macros have these beam numbers built in. 0 is used by the beam
+macros and 1 is used by the grace note macros, so avoid using these
+in your own beam number assignments.
+
+$|$'s and \&'s mean different things within the music environment than without.
+Thus the typical pattern of defining bars before \bsl{debutmorceau} will not
+work. This can be corrected two ways. The bar definitions can be
+sandwiched by a\hfil\break
+ \bsl{catcodesmusic} $\ldots$ \bsl{endcatcodesmusic} pair,
+or the defintions can be put immediately after the \bsl{debutmorceau}.
+If you do the latter, be very careful that there is no extraneous white
+space in the defintions. All definitions should be immediately followed
+by a \bsl{relax}.
+
+An \bsl{enotes} (or \bsl{etn}, \bsl{enn}, \bsl{ttn}) terminates a column of
+notes. Thus none of these can used in the interior of an intended note
+column. If you are building columns by the beat, then there can be none
+of these (and no glue) within the beat. This situation may arise when
+taking existing music for which the parts have been set separately and
+merging them into one multipart setting.
+
+
+\bigskip
+\leftline{\twelvebf 7. Miscellaneous macros.}
+\bigskip
+
+Pick-up notes require some special bookkeeping to keep the bar count correct.
+I have provided the following macro \bsl{pickup}$\{$any pick-up notes$\}$. This
+enters the specified notes, decrements the bar counter, and puts in a bar.
+Unfortunately this puts the bar number on the pick-up bar if this is not the
+first bar in the tune.
+Ending the previous line with \bsl{suspmorceau} and
+using \bsl{reppickup} in the place of \bsl{reprmorceau}\bsl{pickup} will
+fix this problem. It decrements the bar counter before the new line is started,
+thus suppressing the bar number on the pickup bar. An additional complication
+arises if the new line begins with a repeat symbol. In this case
+use \bsl{repreppickup} in place of \bsl{reprmorceau}\bsl{leftrepeat}
+\bsl{pickup}. The details of how these macros behave differ in the
+autoglue and noautoglue schemes.
+
+\bsl{psk}, and \bsl{fsk} provide for small horizontal spaces (they stand for
+point skip and flag skip). They are related to the note width for open
+music and to the note spacing for tight music.
+
+\bsl{Downtext} and \bsl{downtext} put text under the staff. These
+can be used for piobaireached shorthand and large scale repeat
+notations such as {\it Da Capo al Segno}.
+
+\bsl{etn} is the same as
+\bsl{enotes}\bsl{temps}\bsl{notes} which
+inserts some ``glue''.
+Glue stretches when there is space left on the line. I often use this
+after quarter notes and on beat boundaries in general. By default,
+beamed groups have one of these built in, so don't put one in explicitly.
+There is also implicit
+glue before a bar line which can double the glue at this point. To compensate
+one can put \bsl{etn} when the beat ends in a beamed group and
+\bsl{ttn} when it does not. \bsl{ttn} is \bsl{etn}\bsl{etn}.
+Best, turn off this feature with \bsl{noautoglue} and then
+use \bsl{etn} consistently between beats. No autoglue also turns
+\bsl{ttn} into \bsl{etn} so one gets about the same effect autoglue
+or no. \bsl{autoglue} turns autoglue back on. Note that autoglue
+is not compatible with multiple parts and \bsl{multipart} turns it off.
+
+\bsl{normalwidth}, \bsl{medwidewidth}, \bsl{widewidth} set up
+margins for various width layouts and odd and even pages.
+\bsl{normalheight}, \bsl{medtall}, and \bsl{tall}
+set vertical size and margins.
+
+\bsl{Afour} and \bsl{USletter} set the paper size. US letter is the
+default. Note that music optimized for one paper size will not look
+as good (or may not fit at all) on the other.
+
+\bsl{today} inserts the date. \bsl{USdate} and \bsl{Eurodate} specify
+the format. The US order (month day, year) is the default.
+
+\bsl{landscape} is implementation dependent. It will probably work if you
+use dvips by Tom Rokicki. \bsl{realwidewidth} is landscape with
+small margins.
+
+\bigskip
+
+\leftline{\twelvebf 8. Miscellaneous usage notes.}
+
+\bigskip
+
+This section will refer often to Musi(c$|$x)TeX macros. You need to have read
+the Musi(c$|$x)TeX documentation to follow the discussion.
+
+bagpipe.tex \bsl{inputs} the following MusicTeX files: muscinft.tex,
+musictex.tex, and musicvbm.tex or the follwing MusixTeX files:,
+musix.tex and musixcpt.tex. It sets Musi(c$|$x)TeX for single instruments
+and single staff. It adds teenynotes to the font definitions.
+
+I usually use \bsl{meterfrac} for the time signature. You may like to use \bsl{meterC}
+(commonly used for strathspeys) or
+\bsl{allabreve} (commonly used for reels).
+
+I prefer to keep complete control of line breaks. Therefore I use
+\bsl{xbarre}, and \bsl{alaligne} instead of \bsl{barre}.
+I recommend using \bsl{autolines} except when the music is tight. In
+this case the bagpipe.tex command \bsl{setelemq}$\{$f$\}$
+will set the elementary
+note spacing to f times the quarter note width. f=1.2 is the smallest
+value that looks decent.
+
+TeX treats any number of consecutive spaces, carriage returns, and line
+feeds as ``white space''. White space which terminates a macro name
+is eaten and has no further effect. Other white space will insert a space
+and some ``glue'' in the document. Because Musi(c$|$x)TeX does not know
+about this space, any pending beams or slurs
+will be messed up. Therefore it is best, within the music,
+to avoid all white space that
+is not needed to terminate a macro name.
+To accomplish this, lines which do not end with a macro name should
+be terminated with a \bsl{relax} command.
+
+Musi(c$|$x)TeX does not like to tie notes that are closer than 2.3
+quarternote-head widths. If the music is tightly set, extra
+space must be inserted between tied notes using \bsl{sk},
+\bsl{fsk}, or \bsl{psk}. A dot on the first tied note counts as
+space. Expanded glue does not.
+If the tied note is the last one in a beamed group, the
+\bsl{psk} should be grouped with that final note by using braces.
+
+Musi(c$|$x)TeX appears to have a roundoff problem when constructing
+sloped beams with more than three notes. As a result there are
+sometimes little bumps and for certain note spacings near
+\bsl{setelemq}$\{$1.7$\}$\ small gaps appear. The problems are
+worst at low resolution such as with a previewer. Work-arounds
+are: avoid the gap producing note spacing, print at as
+high a resolution as is available, don't use excessive
+beam slopes.
+
+In previous versions bagpipe.tex and by default in this version
+(i.e. unless
+you invoke \bsl{newgrace} or \bsl{multipart}),
+the after bar spacing is quite small to keep the
+distance from the bar to
+the first grace notes from being too large.
+If the bar began with a theme note, this resulted
+in too small a spacing, thus requiring that the
+bar begin with a \bsl{sk} or \bsl{psk} to alleviate this.
+This value is determined by
+\bsl{stdafterruleskip}. The Musi(c$|$x)TeX default is 4\bsl{Internote}.
+The default bagpipe.tex value is \bsl{Internote}.
+\bsl{newgrace} uses a different mechanism to set grace note
+spacing and does not suffer to the same degree.
+The \bsl{newgrace} value of \bsl{stdafterruleskip} is 3\bsl{Internote}.
+A similar problem can still occur between any pair of theme notes which
+do not have an embellishment in between. The solution is similar.
+
+In some tunes, it is difficult to squeeze four bars on a line.
+It may be better to just give up and use more paper.
+If you wish to persist, here are some techniques to save space.
+Set the width to \bsl{widewidth}. Set the \bsl{setelemq} to a number like 1.1.
+Use landscape or \bsl{realwidewidth}. Eliminate beginning of line bars
+unless there is a repeat on other than the
+first part. Use the reppickup macros. Use \bsl{musicsize}$=$16.
+
+Bagpipe.tex can be used by putting a \bsl{input bagpipe} at the
+beginning of your file. MusixTeX is the default. To use MusicTeX,
+the bagipe.tex file must be modified as described above.
+Alternatively, you can generate and use a bagpipe.fmt or a
+bagpipex.fmt file. The file bagpipe.ini may be used as the argument
+of initex to generate bagpipe.fmt (after the above modification to bagpipe.tex)
+and bagpipex.ini used to generate bagpipex.fmt.
+
+\bigskip
+\leftline{\twelvebf 9. MusixTex}
+
+The MusixTeX option is now the default. You may not shift between
+MusixTeX and MusicTeX in the same job.
+Be sure to read the fine MusixTeX manual.
+I give here a brief summary of the
+operation of MusixTeX and how it affects bagpipe.tex.
+On the first pass of MusixTeX over tune.tex, MusixTeX
+(via bagpipe.tex) generates
+a file tune.mx1 which contains the length of each line. The
+program musixflx is invoked to generate tune.mx2, which
+contains spatial scale factors for each line. A second
+pass of MusixTeX uses tune.mx2 (if available) to generate
+the final output. In principle, all the fussing needed to
+get good spacing with MusicTeX is done for you. For this
+to work, MusixTeX needs to know about ALL the space in the
+music. There must be NO extraneous white space. See the
+MusixTeX for descriptions of the likely symptoms and
+cures for extraneous space problems.
+
+This scheme can result in music which looks significantly
+different than with MusicTeX. In MusicTeX, only the glue
+is adjusted to fill out a line. In MusixTeX all spacing
+is adjusted. Glue is forbidden as are hard (not adjusted by
+musixflx) spaces. Putting glue on the beats and keeping the
+music within a beat relatively compact, gives results
+more in accord with usual bagpipe music setting practice than
+does MusixTeX. On the other hand, the MusixTeX scheme permits
+better looking ties because they don't have to stretch.
+
+Another area of different results peculiar to bagpipe music
+is the spacing of complex embellishments. Stretching the spaces
+within an embellishment can look ugly. This was a problem with
+the old grace note scheme that was cured with the new grace
+note scheme in MusicTeX. The fixed space used by the new grace
+scheme is not permitted by MusixTeX. For the old grace note
+scheme I just let them stretch. In the new grace note scheme
+I put the extra space before the embellishment and keep the
+embellishment itself compact. This may cause ugliness if
+the stretch is too large or too small.
+
+The musixtex option in bagpipe.tex \bsl{inputs} musixtex.tex
+and musixcpt.tex. The latter contains macros for compatibility
+with MusicTeX. Most of these are synonyms for macros whose
+names changed (usually to English from French) in MusixTeX.
+For a few such as \bsl{autolines}, the actual function has
+changed due to the fundamental difference between the packages.
+The default MusicTeX version has a number of synonyms for MusixTeX
+macros as an aid to backward compatibility for tunes coded in
+MusixTeX. These cover only a few of the most likely to be
+used macros and of course functions unique to MusixTeX cannot
+be handled by MusicTeX. If you care about other people
+using your settings, I recommend using the MusicTeX versions
+so that code is compatible with older bagpipe.tex versions.
+The synonyms are: \hfil\break
+ \bsl{en}~= \bsl{enotes},\hfil\break
+ \bsl{instrumentnumber}~= \bsl{nbinstruments},\hfil\break
+ \bsl{startpiece}~= \bsl{debutmorceau},\hfil\break
+ \bsl{bar}~= \bsl{barre},\hfil\break
+ \bsl{itie}~= \bsl{iten},\hfil\break
+ \bsl{ttie}~= \bsl{tten},\hfil\break
+ \bsl{contpiece}~= \bsl{reprmorceau},\hfil\break
+ \bsl{stoppiece}~= \bsl{suspmorceau},\hfil\break
+ \bsl{Stoppiece}~= \bsl{finmorceau},\hfil\break
+ \bsl{Endpiece}~= \bsl{finmorceau},\hfil\break
+ \bsl{leftrepeat}~= \bsl{leftrepeatsymbol},\hfil\break
+ \bsl{rightrepeat}~= \bsl{rightrepeatsymbol},\hfil\break
+ \bsl{setstaffs}1\#2~= \bsl{nbporteesi}\#2.
+
+\bigskip
+\leftline{\twelvebf 10. Concluding comments.}
+
+\bigskip
+
+The best way to understand this guide is to preview and study the
+examples. The ``example'' entitled quickref.tex is a sample sheet.
+It is often convenient to define a macro for each bar of music.
+Many definitions will then consist of previous bars, and the
+music proper will be mostly a list of bar macros.
+Using the template files and a good cut and paste type editor
+will save a lot of time.
+I have found that with practice it takes between
+one half and one hour to type-set a complex four part 6/8 march.
+This includes proofing and adjusting.
+A simple two part 3/4 march can be done in less than fifteen minutes.
+Send any comments, suggestions, or bug reports
+to walt@slac.stanford.edu .
+
+\vskip 0.5in
+Good luck and happy piping,
+
+Walt Innes
+
+\bye
diff --git a/macros/generic/bagpipe/bagpipe.ini b/macros/generic/bagpipe/bagpipe.ini
new file mode 100644
index 0000000000..546019d36e
--- /dev/null
+++ b/macros/generic/bagpipe/bagpipe.ini
@@ -0,0 +1,3 @@
+\input plain
+\input bagpipe
+\dump
diff --git a/macros/generic/bagpipe/bagpipe.tex b/macros/generic/bagpipe/bagpipe.tex
new file mode 100644
index 0000000000..607b5c1a1c
--- /dev/null
+++ b/macros/generic/bagpipe/bagpipe.tex
@@ -0,0 +1,1680 @@
+%
+% This is bagpipe.tex version 3.02
+%
+\def\bptversion{3.02}%
+\message{Version \bptversion\space -- May 27, 2014}%
+%
+% by Walt Innes (walt@slac.stanford.edu)
+%
+% Copyright Walt Innes. License is granted to distribute and use this product according to
+% the The LaTeX Project Public License (lp­pl1.3),
+% which may be found at http://www.ctan.org/license/lppl1.3.
+%
+%
+% This is a macro package for use with MusicTeX or MusiXTeX
+% by Daniel Taupin.
+% It is intended to aid the type setting of music for
+% Scottish Highland bagpipes. It contains a reasonably complete
+% set of definitions for grace notes and a mechanism for easily
+% defining any additional ones that might be needed for a particular
+% piece. There are also definitions for generating beamed note groups.
+% This package modifies a few macros in Musi(c|X)TeX. It has been tested
+% with MusicTeX version 5.20 and MusiXteX T.88.
+% It may not be compatible with
+% future releases of Musi(c|X)TeX. It is definitely not compatible
+% with releases earlier than MusicTeX 4.7.
+%
+% History:
+% 1.30 7/21/93 Changes in margin handling so that multipage documents
+% do odd/even margins automatically. Change beam structure for
+% groups of four notes with the two internal notes short.
+% \wideodd and \wideeven no longer exist. The user may define
+% them as being \widewidth for backward compatibility.
+%
+% 1.31 1/34/95 Fix oversight in newpitch and oldpitch macros for
+% \g and \G .
+%
+% 1.32 5/95 Minor spacing adjustments for \pscp and similar macros.
+%
+% 1.33 5/95 Adjust tight spacing code in an effort to prevent overlapping
+% notes.
+%
+% 1.40 5/95 Add additional pickup note macros so that the bar numbers can be
+% put after the pickup notes. Add \setelemq.
+%
+% 1.41 10/95 Add definitions for \h and \N to ease conversion of
+% oldpitch to newpitch
+%
+% 1.50 5/96 Add grace notes to match BMW. Add \medtall. Add \ggr{}.
+%
+% 1.51 5/96 Add more four note definitions.
+%
+% 1.52 6/96 Fix a duplicate macro name
+%
+% 1.53 6/13/96 Make changes to clean up the interface to MusicTeX 5.17
+%
+% 1.54 6/20/97 Change \landscape to use recommended \special
+%
+% 1.55 11/19/97 add \Afour and \USletter contributed by Phil Scott
+%
+% 1.56 12/19/97 add double dots and four new \bdddd macros
+% restore 11 pt fonts for small music grace notes
+% (9 pt fonts are broken)
+%
+% 1.57 01/15/98 some modifications of beam macros. 16/48 4 note beam
+% macros are known to not work with grace notes.
+% \bgrx work around for beam macro problems.
+%
+% 1.60 02/17/98 major change in the way grace notes are generated.
+% \notes..\enotes no longer used to change note
+% spacing if the \newgrace option is selected.
+% This eliminates a problem with some embedded
+% grace notes.
+%
+% 2.00 03/05/98 major changes to allow multiple parts: beam numbering,
+% [no]autoglue, some internal changes needed to make
+% things work on the extra staves,
+% a change in the way pickup notes are handled linked to
+% the [no]autoglue options. Remove \bgrx.
+%
+% 2.01 03/17/98 add \alabreve to accommodate a typo in bmw2tex
+%
+% 2.02 03/27/98 fix bug involving \newgrace and \staffspacing /= 1.
+%
+% 2.10 08/05/98 add switch for MusiXTeX
+%
+% 2.11 03/21/99 fix bug with edre and dare definitions
+%
+% 2.20 03/22/99 restore nine point fonts
+%
+% 2.21 03/13/00 fix bug in \btst. Bug report and fix by Peter Hurwood.
+%
+% 3.0 04/25/02 add many new embellishments for compatibility with bww
+%
+% 3.01 07/24/02 bug fixes submitted by Sven Axelsson. These fixes correct
+% problems with cadences.
+%
+% 3.02 05/27/14 make MusixTeX the default. Usage terms changed to the LaTeX Project Public License
+% ____________________________________________________________________
+%
+% load bagpipe.tex only once
+%
+\ifx\bagpipeisloaded\relax\endinput\else\let\bagpipeisloaded=\relax\fi
+%
+\let\usemusixtex\relax% this sets the flag to use MusixTeX instead of MusicTeX
+%
+%
+ \ifx\usemusixtex\undefined % the musictex version
+%
+ \input musicnft
+%
+% Select one set of nine point font declarations:
+%
+% \font\musicnine=musikn11% for use if 9pt fonts are not available (old, better solution below)
+% \font\beamnine=beamn11%
+%
+\font\musicnine=musikn11 at 9pt % for use with 16 pt musicsize
+\font\beamnine=beamn11 at 9pt %
+%
+ \input musictex%
+ \input musicvbm%
+%
+% at signs are now letters and can be used in control sequences
+ \def\makeatletter{\catcode`\@=11}
+% at signs are now not letters and can't be used in control sequences
+ \def\makeatother{\catcode`\@=12}
+%
+\else % the musixtex version
+ \input musixtex%
+ \font\musicnine=musix11 at 9pt% for use if 9pt fonts are not available
+% \font\musicnine=musix11% for use if 9pt fonts are not available
+ \input musixcpt%
+%
+\fi
+%
+% macros for setting page sizes and offsets. These have nothing do
+% with bagpipe music per se.
+% set default
+%
+\newcount\natv
+\newdimen\theoffset
+\newdimen\oddoffset\oddoffset=0.in%
+\newdimen\evenoffset\evenoffset=0.in%
+%
+\def\USletter{%
+ \hoffset=0.0in%
+ \hsize=7.0in%
+ \vsize=9.0in%
+ \voffset=0.in%
+% landscape works with Tom Rokicki's dvips.
+ \def\landscape{%
+ \special{papersize=11in,8.5in}\hoffset=0.in\hsize=9.0in\vsize=6.5in}%
+ \def\realwidewidth{%
+ \special{papersize=11in,8.5in}%
+ \hoffset=-10.0mm\voffset=-10mm\hsize=10in\vsize=6.5in}%
+% page layout tools
+ \def\normalwidth{\hsize=7.0in \oddoffset=-0.11in \evenoffset=-0.36in}%
+ \def\medwidewidth{\hsize=7.35in \oddoffset=-0.21in\evenoffset=-0.56in}%
+ \def\widewidth{\hsize=7.6in \oddoffset=-0.40in \evenoffset=-0.66in}%
+ \def\normalheight{\vsize=9.0in\voffset=0.in%
+ \def\makefootline{\baselineskip=0pt\line{\the\footline}}}%
+ \def\tall{\voffset=-.50in\vsize=10.25in%
+ \def\makefootline{\baselineskip=0pt\vskip-15pt\line{\the\footline}}}%
+ \def\medtall{\voffset=-.25in\vsize=9.5in%
+ \def\makefootline{\baselineskip=0pt\vskip-5pt\line{\the\footline}}}%
+}%
+%
+\def\Afour{%
+% set default
+% PSc was here 8-11-1997. These dimensions are modified for A4 paper
+ \hoffset=0.0in%
+ \hsize=160.0mm%
+ \vsize=247.0mm%
+ \voffset=0.in%
+% landscape works with Tom Rokicki's dvips.
+%
+% This is the (new) preferred dvips specification for landscape
+%
+ \def\landscape{%
+ \special{papersize=297mm,210mm}%
+ \voffset=-10.0mm\hoffset=0.0mm\hsize=247.0mm\vsize=175.0mm}%
+ \def\realwidewidth{%
+ \special{papersize=297mm,210mm}%
+ \hoffset=-10.0mm\voffset=-10mm\hsize=267.0mm\vsize=175.0mm}%
+% page layout tools
+ \def\normalwidth{\hsize=160.0mm \oddoffset=0.in \evenoffset=0.in}%
+ \def\medwidewidth{\hsize=170.0mm \hoffset=-5.0mm}%
+ \def\widewidth{\hsize=180.0mm \hoffset=-10.0mm}%
+ \def\normalheight{\vsize=247.0mm\voffset=0.in%
+ \def\makefootline{\baselineskip=0pt\line{\the\footline}}}%
+ \def\tall{\voffset=-.50in\vsize=10.25in%
+ \def\makefootline{\baselineskip=0pt\vskip-15pt\line{\the\footline}}}%
+}%
+%
+%
+\def\sectionedpagenumbers{%
+ \footline={\hss\tenrm\number\count1.\number\pageno\hss}}%
+\def\pagenumbers{%
+ \footline={\hss\tenrm\number\folio\hss}}%
+%
+%
+\USletter % set default paper size
+\pageno=1\normalwidth % set default page width and offset
+\nopagenumbers
+%
+% Speical ouput routine. This is needed to do different margins on
+% odd and even pages
+\output={%
+ \ifodd
+ \pageno\let\theoffset=\oddoffset
+ \else
+ \let\theoffset=\evenoffset
+ \fi
+ \shipout\vbox{%
+ \moveright\theoffset\vbox{\makeheadline\pagebody\makefootline}%
+ }%
+ \advancepageno
+ \ifnum\outputpenalty>-20000 \else\dosupereject\fi
+ }%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\catcodesmusic% various special characters change category for music
+%
+\makeatletter% at signs are now letters and can used in control sequences
+%
+% extend musicnft to add a teenynotesize
+% this is helpful only for musicsize=20 since we have no font
+% smaller than eleven
+%
+% new width definitions which aid setting compressed music
+%
+\newdimen\pskwidth
+\newdimen\f@kwidth
+\newdimen\fskwidth%
+\ifx\mxversion\undefined
+ \def\set@teenynotesize{%
+ \def\beamfont{\beamteenyfont}%
+ \def\musicnfont{\musicteenyfont}%
+ \def\i@nterbeam{0.41\Interligne}%
+ \def\b@alkthick{0.130\Interligne}}%
+\else
+ \def\set@teenynotesize{\let\musixfont\musicteenyfont
+ \let\xgregfont\xgregtinyfont
+ \b@amthick\p@ne30\Interligne \interbeam.41\Interligne}%
+\fi
+%
+%
+\ifx\mxversion\undefined
+ \def\computespecifics{\ifnum\musicsize=0\relax\musicsize=20\relax\fi
+ \ifnum\musicsize=20\relax
+ \def\ppff{\ppfftwenty}%
+ \def\beamnorfont{\beamtwenty}\def\musicnorfont{\musictwenty}%
+ \def\beamsmallfont{\beamsixteen}\def\musicsmallfont{\musicsixteen}%
+ \def\beamtinyfont{\beamthirteen}\def\musictinyfont{\musicthirteen}%
+ \def\beamteenyfont{\beameleven}\def\musicteenyfont{\musiceleven}%
+ \def\meternorfont{\cmbx}\def\metersmallfont{\cmbxsmall}%
+ \def\metertinyfont{\cmbxtiny}\def\slurnorfont{\slurntwenty}%
+ \def\meterbigfont{\cmbxbig}%
+ \else
+ \def\ppff{\ppffsixteen}%
+ \def\beamnorfont{\beamsixteen}\def\musicnorfont{\musicsixteen}%
+ \def\beamsmallfont{\beamthirteen}\def\musicsmallfont{\musicthirteen}%
+ \def\beamtinyfont{\beameleven}\def\musictinyfont{\musiceleven}%
+ \def\beamteenyfont{\beamnine}\def\musicteenyfont{\musicnine}% if available
+ \def\meternorfont{\cmbxsmall}\def\metersmallfont{\cmbxtiny}%
+ \def\metertinyfont{\cmbxmicro}\def\slurnorfont{\slurnsixteen}%
+ \def\meterbigfont{\cmbx}%
+ \fi
+ \Interligne=\musicsize pt\divide\Interligne by 4\relax
+ \Internote=0.5\Interligne %%%%%
+ \interbeam=\i@nterbeam
+ \computeqn@w}%
+\else
+ \def\comput@fonts{%
+ \ifnum\musicsize=\sixt@@n
+ \let\musicLargefont\musictwentyfour
+ \let\musiclargefont\musictwenty
+ \let\musicnorfont\musicsixteen
+ \let\musicsmallfont\musicthirteen
+ \let\musictinyfont\musiceleven
+ \let\musicteenyfont\musicnine
+ \let\xgregLargefont\xgregtwentyfour
+ \let\xgreglargefont\xgregtwenty
+ \let\xgregnorfont\xgregsixteen
+ \let\xgregsmallfont\xgregthirteen
+ \let\xgregtinyfont\xgregeleven
+ \let\slurd\slurdsixteen \let\sluru\slurusixteen
+ \let\hslurd\hslurdsixteen \let\hsluru\hslurusixteen
+ \let\meternorfont\tenbf \let\metersmallfont\eightbf
+ \let\meterbigfont\twelvebf \let\meterlargefont\bigfont
+ \let\meterLargefont\Bigfont
+ \let\ppff\ppffsixteen
+ \else\ifnum\musicsize=\@xxiv
+ \let\musicLargefont\musictwentynine
+ \let\musiclargefont\musictwentynine
+ \let\musicnorfont\musictwentyfour
+ \let\musicsmallfont\musictwenty
+ \let\musictinyfont\musicsixteen
+ \let\musicteenyfont\musicthirteen
+ \let\xgregLargefont\xgregtwentynine
+ \let\xgreglargefont\xgregtwentynine
+ \let\xgregnorfont\xgregtwentyfour
+ \let\xgregsmallfont\xgregtwenty
+ \let\xgregtinyfont\xgregsixteen
+ \let\sluru\slurutwenty \let\slurd\slurdtwenty
+ \let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
+ \let\meternorfont\bigfont \let\metersmallfont\twelvebf
+ \let\meterbigfont\Bigfont \let\meterlargefont\BIgfont
+ \let\meterlargefont\BIGfont
+ \let\ppff\ppfftwentyfour
+ \else\ifnum\musicsize=\@xxix
+ \let\musicLargefont\musictwentynine
+ \let\musiclargefont\musictwentynine
+ \let\musicnorfont\musictwentynine
+ \let\musicsmallfont\musictwentyfour
+ \let\musictinyfont\musictwenty
+ \let\musicteenyfont\musicsixteen
+ \let\xgregLargefont\xgregtwentynine
+ \let\xgreglargefont\xgregtwentynine
+ \let\xgregnorfont\xgregtwentynine
+ \let\xgregsmallfont\xgregtwentyfour
+ \let\xgregtinyfont\xgregtwenty
+ \let\sluru\slurutwenty \let\slurd\slurdtwenty
+ \let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
+ \let\slurud\slurutwentyd \let\slurdd\slurdtwentyd % +ickd
+ \let\hslurud\hslurutwentyd \let\hslurdd\hslurdtwentyd %+ickd
+ \let\meternorfont\Bigfont \let\metersmallfont\bigfont
+ \let\meterbigfont\BIgfont \let\meterlargefont\BIGfont
+ \let\meterLargefont\BIGfont
+ \let\ppff\ppfftwentynine
+ \else
+ \ifnum\musicsize=\tw@nty
+ \else\ifnum\musicsize=\z@
+ \else\errmessage{\noexpand\musicsize=\the\musicsize\space not supported, set to default of 20}%
+ \fi
+ \fi\musicsize\tw@nty
+ \let\musicLargefont\musictwentynine
+ \let\musiclargefont\musictwentyfour
+ \let\musicnorfont\musictwenty
+ \let\musicsmallfont\musicsixteen
+ \let\musictinyfont\musicthirteen
+ \let\musicteenyfont\musiceleven
+ \let\xgreglargefont\xgregtwentyfour
+ \let\xgregLargefont\xgregtwentynine
+ \let\xgregnorfont\xgregtwenty
+ \let\xgregsmallfont\xgregsixteen
+ \let\xgregtinyfont\xgregthirteen
+ \let\sluru\slurutwenty \let\slurd\slurdtwenty
+ \let\hsluru\hslurutwenty \let\hslurd\hslurdtwenty
+ \let\meternorfont\twelvebf \let\metersmallfont\tenbf
+ \let\meterbigfont\bigfont \let\meterlargefont\Bigfont
+ \let\meterLargefont\BIgfont
+ \let\ppff\ppfftwenty
+ \fi\fi\fi
+ }%
+\fi
+%
+\ifx\mxversion\undefined
+ \def\computeqn@w{%
+ \setbox\ch@box=\hbox{\w@h}\wn@width=\wd\ch@box
+ \setbox\ch@box=\hbox{\s@bv}\sb@width=\wd\ch@box
+ \setbox\ch@box=\hbox{\b@rv}\bv@width=\wd\ch@box
+ \setbox\ch@box=\hbox{\c@arrg}\gr@width=\wd\ch@box
+ \setbox\ch@box=\hbox{\h@a}\hn@width=\wd\ch@box
+ \setbox\ch@box=\hbox{\q@u}\qn@width=\wd\ch@box
+ \qd@skip=\qn@width\advance\qd@skip by -\hlthick
+ \hd@skip=\hn@width\advance\hd@skip by -\hlthick
+ \wd@skip=\wn@width\advance\wd@skip by -\hlthick
+ \setpskwidth\setf@kwidth\setfskwidth}%
+\else
+ \def\comput@sizes{%
+ \Interligne\fontdimen\fiv@\musicnorfont
+ \Internote\h@lf\Interligne \big@spc.6\Interligne
+ \qn@width\fontdimen\si@\musixfont
+ \wn@width1\qu@rt\qn@width
+ \txt@ff\h@lf\qn@width
+ \qd@skip\qn@width\advance\qd@skip-\hlthick
+ \setpskwidth\setf@kwidth\setfskwidth}%
+\fi
+%
+% add teeny fonts
+%
+\ifx\mxversion\undefined
+ \def\teenynotesize{\set@teenynotesize\computespecifics
+ \def\currentsize{\teenynotesize}}%
+\else
+ \def\teenynotesize{\set@teenynotesize\comput@specifics
+ \let\curr@ntsiz@\teenynotesize}%
+\fi
+%
+%
+\ifx\mxversion\undefined
+ \def\begininstrument{\global\advance\noinstrument by 1\relax
+ \selectinstr\resetstem
+ \ifdim\internote<0.60\Internote\csname set@teenynotesize\endcsname
+ \computespecifics
+ \else
+ \ifdim\internote<0.76\Internote\csname set@tinynotesize\endcsname
+ \computespecifics
+ \else
+ \ifdim\internote<0.95\Internote\csname set@smallnotesize\endcsname
+ \computespecifics
+ \else
+ \csname currentsize\endcsname
+ \fi
+ \fi
+ \fi
+ \global\noportee=0\relax\beginstaff
+ }%
+\else
+ \def\p@six{.6}%
+ \def\begininstrument{\advance\noinstrum@nt\@ne \s@l@ctinstr
+ \ifdim\internote<\p@six0\Internote \set@teenynotesize \comput@sizes
+ \else
+ \ifdim\internote<\p@seven6\Internote \set@tinynotesize \comput@sizes
+ \else
+ \ifdim\internote<.95\Internote \set@smallnotesize \comput@sizes
+ \else
+ \ifdim\internote<1.19\Internote \set@normalnotesize \comput@sizes
+ \else
+ \ifdim\internote<1.43\Internote \set@largenotesize \comput@sizes
+ \else
+ \set@Largenotesize \comput@sizes
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \noport@@\z@ \beginstaff}%
+\fi
+%
+% modify flag macros so that they tolerate very compressed music better.
+%
+\ifx\mxversion\undefined
+ \def\adv@locx@mqn{\advance\locx@skip by -\f@kwidth}%
+\else
+ \def\C@b#1#2{%
+ \n@ii\b@n \ifnum\n@ii<\z@ \n@ii-\n@ii \fi
+ \ifnum\n@ii>\n@v #1\fi
+ \loop
+ \advance\n@v\m@ne
+ \ifnum\n@ii=\n@v {\advance\locx@skip-\f@kwidth#2}\fi
+ \ifnum\n@v>\@ne \repeat}%
+\fi
+%
+% define some more skip macros
+\ifx\mxversion\undefined
+ \def\psk{\off\pskwidth}%
+ \def\f@k{\off\f@kwidth}%
+ \let\fsk=\f@k%
+ \def\bqsk{\off{1.3\qn@width}}%
+ \def\abqsk{\off{2.0\qn@width}}%
+ \def\nqsk{\off{-1.4\qn@width}}%
+ \def\tqsk{\off{2.5\qn@width}}%
+ \def\fgsk{\off{1.0\qn@width}}%
+ \def\setpskwidth{\ifdim 1.5\qn@width > \noteskip
+ \pskwidth=0.75\qn@width \else \pskwidth=0.5\noteskip \fi}%
+ \def\setf@kwidth{\ifdim 1.6\qn@width>\noteskip
+ \f@kwidth=.6\noteskip \else \f@kwidth=\qn@width \fi}%
+ \def\setfskwidth{\ifdim 1.6\qn@width>\noteskip
+ \fskwidth=.6\noteskip \else \fskwidth=\qn@width \fi}%
+\else
+ \def\psk{\off\pskwidth}%
+ \def\f@k{\off\f@kwidth}%
+ \def\fsk{\off\fskwidth}%
+ \def\bqsk{\off{1.3\qn@width}}%
+ \def\abqsk{\off{2.0\qn@width}}%
+ \def\nqsk{\off{-1.4\qn@width}}%
+ \def\tqsk{\off{2.2\qn@width}}%
+ \def\fgsk{\off{1.0\qn@width}}%
+ \def\vbqsk{\off{1.3\elemskip}}%
+ \def\vnabqsk{\off{1.0\elemskip}}%
+% \def\abqsk{\off{1.0\elemskip}}%
+% \def\nqsk{\off{-0.85\elemskip}}%
+ \def\vtqsk{\off{2.5\elemskip}}%
+% \def\setpskwidth{\ifdim 1.5\qn@width > \noteskip
+% \pskwidth=0.75\elemskip \else \pskwidth=0.5\noteskip \fi}%
+ \def\setpskwidth{\pskwidth=0.7\noteskip}%
+ \def\setf@kwidth{\ifdim 1.6\qn@width>\noteskip
+ \f@kwidth=.6\noteskip \else \f@kwidth=\qn@width \fi}%
+ \def\setfskwidth{\fskwidth=0.5\noteskip}%
+\fi
+%
+%
+\ifx\mxversion\undefined
+ \def\notes{\ifdim \elemskip<1.2\qn@width
+ \noteskip=1.2\qn@width \n@otes \else \vnotes 1.0\elemskip \fi
+ \setpskwidth\setf@kwidth\setfskwidth
+ \def\sf{\ccl f}}%
+\else
+ \def\notes{\vnotes 2.0\elemskip
+ \def\sf{\ccl f}}%
+\fi
+%
+% note spacings for grace notes
+%
+\ifx\mxversion\undefined
+ \def\gnotes{\ifdim .35\elemskip<0.75\qn@width
+ \noteskip=0.75\qn@width\n@otes \else \vnotes 0.35\elemskip \fi
+ }% teeny note spacing for grace notes
+ \def\Gnotes{\ifdim .7\elemskip<.9\qn@width
+ \noteskip=.9\qn@width\n@otes \else \vnotes 0.7\elemskip \fi
+ }% spacing between grace notes & normal notes
+ \def\GNotes{\ifdim .7\elemskip<1.2\qn@width
+ \noteskip=1.2\qn@width\n@otes \else \vnotes 0.7\elemskip \fi
+ }% spacing between grace notes & normal notes
+ \def\hnotes{\ifdim .7\elemskip<\qn@width
+ \noteskip=\qn@width\n@otes \else \vnotes 0.5\elemskip \fi
+ }% half of a note spacing
+\else
+ \def\gnotes{\vnotes 1.0\elemskip
+ }% teeny note spacing for grace notes
+ \def\Gnotes{\vnotes 1.5\elemskip
+ }% spacing between grace notes & normal notes
+ \def\GNotes{\vnotes 2.0\elemskip
+ }% spacing between grace notes & normal notes
+ \def\hnotes{\vnotes 1.0\elemskip
+ }% half of a note spacing
+\fi
+%
+\ifx\mxversion\undefined
+ \def\setelemq#1{\elemskip=#1\qn@width}%
+ \setelemq{1.6} % the default is unfortunate.
+\else
+ \def\setelemq#1{\relax}%
+ \autolines{8}{8}{48}%
+\fi
+%
+\makeatother% at signs are no longer letters
+%
+% some synonyms to make some music set for musixtex work with musictex
+%
+\ifx\mxversion\undefined
+ \let\en\enotes
+ \let\instrumentnumber\nbinstruments
+ \let\startpiece\debutmorceau
+ \let\bar\barre
+ \let\itie\iten
+ \let\ttie\tten
+ \let\contpiece\reprmorceau
+ \let\stoppiece\suspmorceau
+ \let\Stoppiece\finmorceau
+ \let\Endpiece\finmorceau
+ \let\leftrepeat\leftrepeatsymbol
+ \let\rightrepeat\rightrepeatsymbol
+ \def\setstaffs#1#2{natv#1\relax
+ \csname nbportees\romannumeral\natv\endcsname#2}%
+\fi
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\def\nbinstruments{1}% bagpipe music is written for one instrument
+% % although this could be redefined to add more.
+%
+% for multipart scores, set the number of staves and turn off auto glue
+% insertion
+% after beamed groups
+\def\multipart#1{\noautoglue\newgrace\nbporteesi=#1}%
+%
+\parindent=0pt%
+%
+\transpose=7
+\def\N{N}%
+\def\G{N}% define some alternate pitch names to allow
+\def\a{a}% consistent readable identifiers
+\def\b{b}%
+\def\c{c}%
+\def\d{d}%
+\def\e{e}%
+\def\f{f}%
+\def\g{g}%
+\def\A{h}%
+\def\h{h}%
+%
+% in pipe music melody notes are normally stem down, and since there are
+% only 9 pitches, let's define explicit macros for each note
+%
+\def\whG{\wh N}% whole notes
+\def\whN{\wh N}%
+\def\wha{\wh a}%
+\def\whb{\wh b}%
+\def\whc{\wh c}%
+\def\whd{\wh d}%
+\def\whe{\wh e}%
+\def\whf{\wh f}%
+\def\whg{\wh G}%
+\def\whA{\wh h}%
+\def\whh{\wh h}%
+%
+\def\hG{\hl N}% half notes
+\def\hN{\hl N}%
+\def\ha{\hl a}%
+\def\hb{\hl b}%
+\def\hc{\hl c}%
+\def\hd{\hl d}%
+\def\he{\hl e}%
+\def\hf{\hl f}%
+\def\hg{\hl g}%
+\def\hA{\hl h}%
+\def\hh{\hl h}%
+%
+\def\qlG{\ql N}% quarter notes
+\def\qlN{\ql N}%
+\def\qla{\ql a}%
+\def\qlb{\ql b}%
+\def\qlc{\ql c}%
+\def\qld{\ql d}%
+\def\qle{\ql e}%
+\def\qlf{\ql f}%
+\def\qlg{\ql g}%
+\def\qlA{\ql h}%
+\def\qlh{\ql h}%
+%
+\def\cG{\cl N}% eighth notes
+\def\cN{\cl N}%
+\def\ca{\cl a}%
+\def\cb{\cl b}%
+\def\cc{\cl c}%
+\def\cd{\cl d}%
+\def\ce{\cl e}%
+\def\cf{\cl f}%
+\def\cg{\cl g}%
+\def\cA{\cl h}%
+\def\ch{\cl h}%
+%
+\def\sG{\ccl N}% sixteenth notes
+\def\sN{\ccl N}%
+\def\sa{\ccl a}%
+\def\sb{\ccl b}%
+\def\sc{\ccl c}%
+\def\sd{\ccl d}%
+\def\se{\ccl e}%
+\def\sf{\ccl f}% caution : this redefines a macro used for sforzando
+\def\sg{\ccl g}%
+\def\sA{\ccl h}%
+\let\shp\sh%
+\def\sh{\ccl h}% caution : this redefines a macro for sharps
+%
+\def\tG{\cccl N}% thirtysecond notes
+\def\tN{\cccl N}%
+\def\ta{\cccl a}%
+\def\tb{\cccl b}%
+\def\tc{\cccl c}%
+\def\td{\cccl d}%
+\def\te{\cccl e}%
+\def\tf{\cccl f}%
+\def\tg{\cccl g}%
+\def\tA{\cccl h}%
+\def\th{\cccl h}%
+%
+\def\sfG{\ccccl N}% sixty-fourth notes
+\def\sfN{\ccccl N}%
+\def\sfa{\ccccl a}%
+\def\sfb{\ccccl b}%
+\def\sfc{\ccccl c}%
+\def\sfd{\ccccl d}%
+\def\sfe{\ccccl e}%
+\def\sff{\ccccl f}%
+\def\sfg{\ccccl g}%
+\def\sfA{\ccccl h}%
+\def\sfh{\ccccl h}%
+%
+\def\bG{\qb0N}% beam notes
+\def\bN{\qb0N}%
+\def\ba{\qb0a}%
+\def\bb{\qb0b}%
+\def\bc{\qb0c}%
+\def\bd{\qb0d}%
+\def\be{\qb0e}%
+\def\bf{\qb0f}%
+\def\bg{\qb0g}%
+\def\bA{\qb0h}%
+\def\bh{\qb0h}%
+%
+\def\bGp{\qbp0N\psk}% dotted beam notes
+\def\bNp{\qbp0N\psk}%
+\def\bap{\qbp0a\psk}%
+\def\bbp{\qbp0b\psk}%
+\def\bcp{\qbp0c\psk}%
+\def\bdp{\qbp0d\psk}%
+\def\bep{\qbp0e\psk}%
+\def\bfp{\qbp0f\psk}%
+\def\bgp{\qbp0g\psk}%
+\def\bAp{\qbp0h\psk}%
+\def\bhp{\qbp0h\psk}%
+%
+\def\bGpp{\qbpp0N\psk\psk}% double dotted beam notes
+\def\bNpp{\qbpp0N\psk\psk}%
+\def\bapp{\qbpp0a\psk\psk}%
+\def\bbpp{\qbpp0b\psk\psk}%
+\def\bcpp{\qbpp0c\psk\psk}%
+\def\bdpp{\qbpp0d\psk\psk}%
+\def\bepp{\qbpp0e\psk\psk}%
+\def\bfpp{\qbpp0f\psk\psk}%
+\def\bgpp{\qbpp0g\psk\psk}%
+\def\bApp{\qbpp0h\psk\psk}%
+\def\bhpp{\qbpp0h\psk\psk}%
+%
+% macros for dotted notes
+%
+\def\hp#1{\hl{.#1}\psk}%
+\def\qlp#1{\ql{.#1}\psk}% caution : this redefines a macro used for rests
+\def\cp#1{\cl{.#1}\psk}%
+\def\sp#1{\ccl{.#1}\psk}%
+\def\tp#1{\cccl{.#1}\psk}%
+\def\sfp#1{\cccl{.#1}\psk}%
+%
+% macros for double dotted notes
+%
+\def\hpp#1{\hlpp{#1}\psk\psk}%
+\makeatletter% at signs are now letters and can used in control sequences
+\ifx\usemusixtex\relax
+ \def\qlpp#1{\q@symbol\@qlpp{#1}\psk}%
+\else
+ \def\qlpp#1{\advancetrue\qlpp@z{#1}\psk}%
+\fi
+\makeatother% at signs are no longer letters
+\def\cpp#1{\clpp{#1}\psk\psk}%
+% some macros for beginning and ending grace note sequences
+%
+\def\tns{\teenynotesize}%
+%
+\ifx\mxversion\undefined
+ \def\nns{\ifdim\internote<0.76\Internote\tinynotesize
+ \else\ifdim\internote<0.95\Internote\smallnotesize
+ \else \normalnotesize
+ \fi\fi}%
+\else
+ \def\nns{\ifdim\internote<0.76\Internote\tinynotesize
+ \else\ifdim\internote<0.95\Internote\smallnotesize
+ \else\ifdim\internote<1.19\Internote\normalnotesize
+ \else\ifdim\internote<1.43\Internote\largenotesize
+ \else \Largenotesize
+ \fi\fi\fi\fi}%
+\fi
+%
+\def\gnss{\enotes\gnotes\tns}%
+\def\Gnss{\enotes\Gnotes\tns}%
+\def\GNss{\enotes\GNotes\tns}%
+\def\enn{\enotes\notes}%
+\def\etn{\enotes\temps\notes}%
+%\def\ehn{\enotes\hnotes}%
+\def\bart{\barre\temps}%
+\ifx\mxversion\undefined\relax\else\def\temps{\notes\sk\enotes}\fi
+%
+%
+\def\backput#1{\rlap{\off{-1.0\noteskip}#1}}
+%
+% the old way of doing grace notes
+\def\oldgrace{%
+ \ifx\mxversion\undefined\def\stdafterruleskip{\Internote}\else\relax\fi
+% simple grace notes
+ \def\Grace##1{\GNss\cccu {##1}\enn}%
+ \def\Echo##1{\GNss\ccu {##1}\enn}%
+ \def\Them##1{\GNss\cu {##1}\enn}%
+% general complex grace note macros
+% for transposed pitch specification ( N - h )
+ \ifx\mxversion\undefined
+ \def\multigr##1##2##3{\gnss\ibbbu1{##1}0\qh1{##2}\tbu1\Gnss\qh1{##3}\enn}%
+ \def\smultigr##1##2##3##4{\gnss\ibbbu1{##1}{##2}\qh1{##3}\Gnss\tbu1\qh1{##4}\enn}%
+ \else
+ \def\multigr##1##2##3{\gnss\ibbbu1{##1}0\qh1{##2}\tbu1%\Gnss
+ \qh1{##3}\off{0.6\elemskip}\enn}%
+ \def\smultigr##1##2##3##4{\gnss\ibbbu1{##1}{##2}\qh1{##3}%\Gnss
+ \tbu1\qh1{##4}\off{0.6\elemskip}\enn}%
+ \fi
+}% end \def\oldgrace
+%
+%
+% the new way of doing grace notes
+\def\newgrace{%
+% general complex grace note macros
+% for transposed pitch specification ( N - h )
+ \ifx\mxversion\undefined
+ \def\stdafterruleskip{3\Internote}%
+% general complex grace note macros
+% for transposed pitch specification ( N - h )
+% for simple grace notes
+ \def\Grace##1{\tns\zcccu##1\tqsk\nns}%
+ \def\Echo##1{\tns\zccu##1\tqsk\nns}%
+ \def\Them##1{\tns\zcu##1\tqsk\nns}%
+ \def\multigr##1##2##3{\tns\ibbbu1{##1}0\vargr##2\end\nqsk\tbu1\zqh1##3\abqsk\nns}%
+ \def\smultigr##1##2##3##4{\tns\ibbbu1{##1}{##2}\vargr##3\end\nqsk\tbu1\zqh1##4\abqsk\nns}%
+ \def\cadt##1##2##3##4{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\abqsk\zqh1##3\abqsk\tbbbu1\tbbu1\tbu1\zqh1##4\abqsk\nns}%
+ \def\cadf##1##2##3{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\abqsk\tbu1\zqh1##3\abqsk\nns}%
+ \def\cadl##1##2##3{\tns\ibu1{##1}0\zqh1##2\abqsk\tbbbu1\tbbu1\tbu1\zqh1##3\abqsk\nns}%
+ \def\tra{\tns\ibbu1c0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbu1\zqh1c\abqsk\nns}%
+ \def\trac{\tns\ibu1c0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbbu1\tbu1\zqh1c\abqsk\nns}%
+ \def\chelalho{\tns\ibu1e0\zqh1f\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbu1\zqh1e\abqsk\nns}%
+ \def\darodos{\tns\ibbu1e0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\zqh1N\bqsk\tbbbu1\zqh1c\bqsk\tbu1\zqh1N\abqsk\nns}%
+ \def\fcadt##1##2##3##4##5{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\abqsk\pointdorgue##5\zqh1##3\abqsk\tbbbu1\tbbu1\tbu1\zqh1##4\abqsk\nns}%
+ \def\fcadf##1##2##3##4{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\abqsk\tbu1\pointdorgue##4\zqh1##3\abqsk\nns}%
+ \def\fcadl##1##2##3##4{\tns\ibu1{##1}0\pointdorgue##4\zqh1##2\abqsk\tbbbu1\tbbu1\tbu1\zqh1##3\abqsk\nns}%
+ \else
+% for simple grace notes
+ \def\Grace##1{\vtqsk\llap{\tns\zcccu##1\tqsk\nns}}%
+ \def\Echo##1{\vtqsk\llap{\tns\zccu##1\tqsk\nns}}%
+ \def\Them##1{\vtqsk\llap{\tns\zcu##1\tqsk\nns}}%
+ \def\multigr##1##2##3{\varsp##2\end\vnabqsk
+ \llap{\tns\ibbbu1{##1}0\vargr##2\end\nqsk\tbu1\zqh1##3\abqsk\nns}}%
+ \def\smultigr##1##2##3##4{\varsp##3\end\vnabqsk
+ \llap{\tns\ibbbu1{##1}{##2}\vargr##3\end\nqsk\tbu1\zqh1##4\abqsk\nns}}%
+ \def\cadt##1##2##3##4{\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\bqsk\zqh1##3\bqsk\tbbbu1\tbbu1\tbu1\zqh1##4\abqsk\nns}}%
+ \def\cadf##1##2##3{\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\bqsk\tbu1\zqh1##3\abqsk\nns}}%
+ \def\cadl##1##2##3{\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\zqh1##2\bqsk\tbbbu1\tbbu1\tbu1\zqh1##3\abqsk\nns}}%
+ \def\tra{\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibbu1c0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbu1\zqh1c\abqsk\nns}}%
+ \def\trac{\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibu1c0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbbu1\tbu1\zqh1c\abqsk\nns}}%
+ \def\chelalho{\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibu1e0\zqh1f\bqsk\nbbbu1\zqh1d\bqsk\tbbbu1\tbu1\zqh1e\abqsk\nns}}%
+ \def\darodos{\vbqsk\vbqsk\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibbu1e0\zqh1N\bqsk\nbbbu1\zqh1d\bqsk\zqh1N\bqsk\tbbbu1\zqh1c\bqsk\tbu1\zqh1N\abqsk\nns}}%
+ \def\fcadt##1##2##3##4##5{\vbqsk\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\bqsk\pointdorgue##5\zqh1##3\bqsk\tbbbu1\tbbu1\tbu1\zqh1##4\abqsk\nns}}%
+ \def\fcadf##1##2##3##4{\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\rlap{\fgsk\tbbbu1\tbbu1}\zqh1##2\bqsk\tbu1\pointdorgue##4\zqh1##3\abqsk\nns}}%
+ \def\fcadl##1##2##3##4{\vbqsk\vnabqsk
+ \llap{\tns\ibu1{##1}0\pointdorgue##4\zqh1##2\bqsk\tbbbu1\tbbu1\tbu1\zqh1##3\abqsk\nns}}%
+ \fi
+}% end \def\new grace
+%
+\oldgrace % make the old grace note scheme the default
+%
+% compatible with new and old grace
+%
+% obsolete old grace note macros
+\def\grace#1{\Gnss\cccu {#1}\enn}%
+%
+% for non transposed pitch specification ( g - o ) (old way)
+\def\omultigr#1#2#3{\gnss\ibbbu1{`#1}0\qh1{#2}\tbu1\Gnss\qh1{`#3}\enn}%
+\def\osmultigr#1#2#3#4{\gnss\ibbbu1{`#1}{#2}\qh1{#3}\Gnss\tbu1\qh1{`#4}\enn}%
+%
+% the tricky variable argument number macro for new grace
+\def\vargr#1{\zqh1#1\bqsk\ifx#1\end\let\next=\relax\else\let\next=\vargr\fi\next}%
+% the note counting spacing macro for the muxiXtex version of the \newgrace scheme
+\def\varsp#1{\vbqsk\ifx#1\end\let\next=\relax\else\let\next=\varsp\fi\next}%
+%
+% make any sequence of notes grace notes (good for piobaireachd) (old way)
+% may cause problems when embedded in certain beamed note sequences
+% not compatible with multipart music.
+\def\ggr#1{\gnss #1\enn\psk}%
+%
+%
+%
+% now for the actual grace note definitions
+%
+% simple grace notes and strikes
+%
+\def\grG{\Grace N}%
+\def\grN{\Grace N}%
+\def\gra{\Grace a}%
+\def\grb{\Grace b}%
+\def\grc{\Grace c}%
+\def\grd{\Grace d}%
+\def\gre{\Grace e}%
+\def\grf{\Grace f}%
+\def\grg{\Grace g}%
+\def\grA{\Grace h}%
+\def\grh{\Grace h}%
+%
+%
+% doublings
+%
+\def\dblright#1{\smultigr e{-4}{g#1}d}%
+\def\dblG{\dblright{N}}%
+\def\dblN{\dblright{N}}%
+\def\dbla{\dblright{a}}%
+\def\dblb{\dblright{b}}%
+\def\dblc{\dblright{c}}%
+\def\dbld{\multigr f{gd}e}%
+\def\dble{\multigr f{ge}f}%
+\def\dblf{\multigr f{gf}g}%
+\def\dblg{\multigr fgf}% this is the same as \hdblG
+\def\dblA{\multigr fhg}% this is the same as \hdblA
+\let\dblh\dblA
+%
+% half doublings
+%
+\def\hdblright#1{\smultigr c{4}{#1}d}%
+\def\hdblG{\hdblright{N}}%
+\def\hdblN{\hdblright{N}}%
+\def\hdbla{\hdblright{a}}%
+\def\hdblb{\hdblright{b}}%
+\def\hdblc{\hdblright{c}}%
+\def\hdbld{\multigr dde}%
+\def\hdble{\multigr eef}%
+\def\hdblf{\multigr ffg}%
+\let\hdblg\dblg
+\let\hdblA\dblA
+\let\hdblh\dblA
+%
+% thumb doublings
+%
+\def\tdblright#1{\smultigr f{-4}{h#1}d}%
+\def\tdblG{\tdblright{N}}%
+\def\tdblN{\tdblright{N}}%
+\def\tdbla{\tdblright{a}}%
+\def\tdblb{\tdblright{b}}%
+\def\tdblc{\tdblright{c}}%
+\def\tdbld{\multigr f{hd}e}%
+\def\tdble{\multigr f{he}f}%
+\def\tdblf{\multigr f{hf}g}%
+\def\tdblg{\multigr f{hg}f}%
+%
+% slurred doublings
+%
+\def\sdblright#1{\smultigr e{-4}{g#1d#1}N}%
+\def\sdbla{\sdblright{a}}%
+\def\sdblb{\sdblright{b}}%
+\def\sdblc{\sdblright{c}}%
+\def\sdbld{\multigr f{gded}N}%
+\def\sdble{\multigr f{gefe}a}%
+\def\sdblf{\multigr f{gfgf}a}%
+\def\sdblg{\multigr f{gfg}a}%
+\def\sdblG{\multigr f{gfg}a}%
+\def\sdblA{\multigr f{hgh}a}%
+\def\sdblh{\multigr f{hgh}a}%
+%
+% slurred half doublings
+%
+\def\shdblright#1{\smultigr d{-3}{#1d#1}N}%
+\def\shdbla{\shdblright{a}}%
+\def\shdblb{\shdblright{b}}%
+\def\shdblc{\shdblright{c}}%
+\def\shdbld{\multigr f{ded}N}%
+\def\shdble{\multigr f{efe}a}%
+\def\shdblf{\multigr f{fgf}a}%
+\def\shdblg{\multigr f{gfg}a}%
+\def\shdblG{\multigr f{gfg}a}%
+\def\shdblA{\multigr f{hgh}a}%
+\def\shdblh{\multigr f{hgh}a}%
+%
+% slurred thumb doublings
+%
+\def\stdblright#1{\smultigr g{-4}{h#1d#1}N}%
+\def\stdbla{\stdblright{a}}%
+\def\stdblb{\stdblright{b}}%
+\def\stdblc{\stdblright{c}}%
+\def\stdbld{\multigr g{hded}N}%
+\def\stdble{\multigr g{hefe}a}%
+\def\stdblf{\multigr g{hfgf}a}%
+\def\stdblg{\multigr g{hfg}a}%
+\def\stdblG{\multigr g{hfg}a}%
+\def\stdblA{\multigr g{hgh}a}%
+\def\stdblh{\multigr g{hgh}a}%
+%
+% shaken doublings
+%
+%\def\shkdblright#1{\smultigr e{-4}{g#1d#1}N}%
+%\def\shkdbla{\shkdblright{a}}%
+%\def\shkdblb{\shkdblright{b}}%
+%\def\shkdblc{\shkdblright{c}}%
+\def\shkdbld{\multigr f{gded}c}%
+%\def\shkdble{\multigr f{gefe}a}%
+%\def\shkdblf{\multigr f{gfgf}e}%
+%\def\shkdblg{\multigr f{gfg}e}%
+%\def\shkdblG{\multigr f{gfg}e}%
+%
+% shaken thumb doublings
+%
+%\def\shtdblright#1{\smultigr g{-4}{h#1d#1}N}%
+%\def\shtdbla{\shtdblright{a}}%
+%\def\shtdblb{\shtdblright{b}}%
+%\def\shtdblc{\shtdblright{c}}%
+\def\shtdbld{\multigr g{hded}c}%
+%\def\shtdble{\multigr g{hefe}a}%
+%\def\shtdblf{\multigr g{hfgf}a}%
+%\def\shtdblg{\multigr g{hfg}a}%
+%\def\shtdblG{\multigr g{hfg}a}%
+%\def\shtdblA{\multigr g{hgh}a}%
+%\def\shtdblh{\multigr g{hgh}a}%
+%
+%
+% double grace notes
+%
+\def\dblgr#1#2{\multigr #1#1#2}
+\def\ddgrN{\dblgr dN}
+\def\ddgra{\dblgr da}
+\def\ddgrb{\dblgr db}
+\def\ddgrc{\dblgr dc}
+\def\edgrN{\dblgr eN}
+\def\edgra{\dblgr ea}
+\def\edgrb{\dblgr eb}
+\def\edgrc{\dblgr ec}
+\def\edgrd{\dblgr ed}
+\def\fdgrN{\dblgr fN}
+\def\fdgra{\dblgr fa}
+\def\fdgrb{\dblgr fb}
+\def\fdgrc{\dblgr fc}
+\def\fdgrd{\dblgr fd}
+\def\fdgre{\dblgr fe}
+\def\gdgrN{\dblgr gN}
+\def\gdgra{\dblgr ga}
+\def\gdgrb{\dblgr gb}
+\def\gdgrc{\dblgr gc}
+\def\gdgrd{\dblgr gd}
+\def\gdgre{\dblgr ge}
+\def\gdgrf{\dblgr gf}
+\def\tdgrN{\dblgr hN}
+\def\tdgra{\dblgr ha}
+\def\tdgrb{\dblgr hb}
+\def\tdgrc{\dblgr hc}
+\def\tdgrd{\dblgr hd}
+\def\tdgre{\dblgr he}
+\def\tdgrf{\dblgr hf}
+\def\tdgrg{\dblgr hg}
+%
+% miscellaneous common complex grace notes
+%
+\def\thrwd{\multigr d{Nd}c}%
+\def\hthrwd{\smultigr d{-1}{d}c}%
+\let\Nthrwd\hthrwd%
+\let\Gthrwd\hthrwd%
+\let\gthrwd\hthrwd%
+\def\thrwf{\multigr g{feg}e}%
+\def\gripthrwd{\multigr e{NdN}c}%
+\def\hgripthrwd{\multigr d{dN}c}%
+\def\grip{\multigr c{Nd}N}% also used for leumluaths and throws on b and c
+\def\dgrip{\multigr c{Nb}N}%
+\def\ggrip{\multigr cdN}%
+\let\Ggrip\ggrip%
+\let\Ngrip\ggrip%
+\def\taor{\multigr d{NdN}e}%
+\def\Ntaor{\multigr d{dN}e}%
+\let\Gtaor\Ntaor%
+\let\gtaor\Ntaor%
+\def\dtaor{\multigr d{NbN}e}%
+\def\ahtaor{\multigr e{da}e}%
+%
+% birls
+%
+\def\birl{\multigr c{aNa}N}%
+\def\sbirl{\multigr e{gaNa}N}%
+\def\wbirl{\multigr c{Na}N}%
+\def\tbirl{\multigr g{haNa}N}%
+%
+% slurs (sometimes called slaps)
+%
+\def\slur#1{\smultigr f{-8}{g#1}N}%
+\def\slura{\slur a}%
+\def\slurb{\slur b}%
+\def\slurc{\slur c}%
+\def\slurd{\slur d}%
+\def\slure{\smultigr f{-8}{ge}a}%
+\def\slurf{\smultigr f{-8}{gf}a}%
+\let\slapa\slura% slapx is a synonym for slurx
+\let\slapb\slurb
+\let\slapc\slurc
+\let\slapd\slurd
+\let\slape\slure
+\let\slapf\slurf
+%
+% half slurs (half slaps)
+%
+\def\hslur#1{\smultigr c{-4}{#1}N}%
+\def\hslura{\hslur a}%
+\def\hslurb{\hslur b}%
+\def\hslurc{\hslur c}%
+\def\hslurd{\hslur d}%
+\def\hslure{\smultigr c{-4}ea}%
+\def\hslurf{\smultigr d{-4}fa}%
+\let\hslapa\hslura
+\let\hslapb\hslurb
+\let\hslapc\hslurc
+\let\hslapd\hslurd
+\let\hslape\hslure
+\let\hslapf\hslurf
+%
+% thumb slurs (thumb slaps)
+%
+\def\tslur#1{\smultigr g{-8}{h#1}N}%
+\def\tslura{\tslur a}%
+\def\tslurb{\tslur b}%
+\def\tslurc{\tslur c}%
+\def\tslurd{\tslur d}%
+\def\tslure{\smultigr g{-8}{he}a}%
+\def\tslurf{\smultigr g{-8}{hf}a}%
+\let\tslapa\tslura
+\let\tslapb\tslub
+\let\tslapc\tslurc
+\let\tslapd\tslurd
+\let\tslape\tslure
+\let\tslapf\stslurf
+%
+% shakes
+%
+\let\shka\slura
+\let\shkb\slurb
+\let\shkc\slurc
+\def\shkd{\smultigr g{-3}{gd}c}%
+\def\shke{\smultigr g{-2}{ge}a}%
+\def\shkf{\smultigr g{-1}{gf}e}%
+\def\shkg{\smultigr h{-1}{hg}e}%
+\def\shkG{\smultigr h{-1}{hg}e}%
+%
+% half shakes
+%
+\let\hshka\hslura
+\let\hshkb\hslurb
+\let\hshkc\hslurc
+\let\hshkd\hthrwd%
+\def\hshke{\smultigr e{-1}{e}a}%
+\def\hshkf{\smultigr f{-1}{f}e}%
+\def\hshkg{\smultigr g{-1}{g}e}%
+\def\hshkG{\smultigr g{-1}{g}e}%
+%
+% thumb shakes
+%
+\let\tshka\tslura
+\let\tshkb\tslurb
+\let\tshkc\tslurc
+\def\tshkd{\smultigr g{-3}{hd}c}%
+\def\tshke{\smultigr g{-2}{he}a}%
+\def\tshkf{\smultigr g{-1}{hf}e}%
+%
+% catches
+%
+\def\catcha{\multigr d{aNd}N}%
+\def\catchb{\multigr d{bNd}N}%
+\def\catchc{\multigr d{cNd}N}%
+\def\catchd{\multigr d{dNb}N}%
+\def\catche{\multigr e{eNd}N}%
+\def\scatcha{\smultigr g{-3}{gaNd}N}%
+\def\scatchb{\smultigr g{-3}{gbNd}N}%
+\def\scatchc{\smultigr g{-3}{gcNd}N}%
+\def\scatchd{\smultigr g{-3}{gdNb}N}%
+\def\scatche{\smultigr g{-3}{geNd}N}%
+\def\tcatcha{\smultigr h{-3}{haNd}N}%
+\def\tcatchb{\smultigr h{-3}{hbNd}N}%
+\def\tcatchc{\smultigr h{-3}{hcNd}N}%
+\def\tcatchd{\smultigr h{-3}{hdNb}N}%
+\def\tcatche{\smultigr h{-3}{heNd}N}%
+%
+% double strikes
+%
+\def\dstra{\multigr a{Na}N}%
+\let\dstrb\dgrip %
+\def\dstrc{\multigr c{Nc}N}%
+\let\dstrd=\grip %
+\def\dstre{\multigr e{ae}a}%
+\def\dstrf{\multigr f{ef}e}%
+\def\ldstrd{\multigr d{cd}c}%
+%
+% g double strikes
+%
+\let\gdstra\sbirl
+\def\gdblstr#1#2{\multigr f{g#1#2#1}#2}%
+\def\gdstrb{\gdblstr bN}%
+\def\gdstrc{\gdblstr cN}%
+\def\gdstrd{\gdblstr dN}%
+\def\gdstre{\gdblstr ea}%
+\def\gdstrf{\gdblstr fe}%
+\def\lgdstrd{\multigr d{dcd}c}%
+%
+% thumb double strikes
+%
+\let\tdstra\tbirl
+\def\tdblstr#1#2{\multigr g{h#1#2#1}#2}%
+\def\tdstrb{\tdblstr bN}%
+\def\tdstrc{\tdblstr cN}%
+\def\tdstrd{\tdblstr dN}%
+\def\tdstre{\tdblstr ea}%
+\def\tdstrf{\tdblstr fe}%
+\def\tdstrg{\tdblstr gf}%
+\def\ltdstrd{\multigr g{hdcd}c}%
+%
+% half double strikes
+%
+\let\hdstra\grip
+\def\hdblstr#1#2{\multigr #1{#1#2#1}#2}%
+\def\hdstrb{\hdblstr bN}%
+\def\hdstrc{\hdblstr cN}%
+\def\hdstrd{\hdblstr dN}%
+\def\hdstre{\hdblstr ea}%
+\def\hdstrf{\hdblstr fe}%
+\def\hdstrg{\hdblstr gf}%
+\def\hdstrh{\hdblstr hg}%
+\def\lhdstrd{\multigr d{dcd}c}%
+%
+%
+% triple strikes
+%
+\def\tstra{\multigr a{NaNa}N}%
+\def\tstrb{\multigr b{NbNb}N}%
+\def\tstrc{\multigr c{NcNc}N}%
+\def\tstrd{\multigr d{NdNd}N}
+\def\ltstrd{\multigr d{cdcd}c}%
+\def\tstre{\multigr e{aeae}a}%
+\def\tstrf{\multigr f{efef}e}%
+\def\tstrg{\multigr f{fgfg}f}%
+\def\tstrh{\multigr g{ghgh}g}%
+%
+% g triple strikes
+%
+\def\gtrpstr#1#2{\multigr f{g#1#2#1#2#1}#2}%
+\def\gtstra{\gtrpstr aN}%
+\def\gtstrb{\gtrpstr bN}%
+\def\gtstrc{\gtrpstr cN}%
+\def\gtstrd{\gtrpstr dN}%
+\def\gtstre{\gtrpstr ea}%
+\def\gtstrf{\gtrpstr fe}%
+\def\lgtstrd{\gtrpstr dc}%
+%
+% thumb triple strikes
+%
+\def\ttrpstr#1#2{\multigr g{h#1#2#1#2#1}#2}%
+\def\ttstra{\ttrpstr aN}%
+\def\ttstrb{\ttrpstr bN}%
+\def\ttstrc{\ttrpstr cN}%
+\def\ttstrd{\ttrpstr dN}%
+\def\ttstre{\ttrpstr ea}%
+\def\ttstrf{\ttrpstr fe}%
+\def\ttstrg{\ttrpstr gf}%
+\def\lttstrd{\ttrpstr dc}%
+%
+% half triple strikes
+%
+\def\htrpstr#1#2{\multigr #1{#1#2#1#2#1}#2}%
+\def\htstra{\htrpstr aN}%
+\def\htstrb{\htrpstr bN}%
+\def\htstrc{\htrpstr cN}%
+\def\htstrd{\htrpstr dN}%
+\def\htstre{\htrpstr ea}%
+\def\htstrf{\htrpstr fe}%
+\def\htstrg{\htrpstr gf}%
+\def\htstrh{\htrpstr hg}%
+\def\lhtstrd{\htrpstr dc}%
+%
+% peles aka hornpipe shakes
+%
+\def\pel#1{\multigr g{g#1e#1}N}%
+\def\pelb{\pel b}%
+\def\pelc{\pel c}%
+\def\peld{\pel d}%
+\def\pele{\multigr g{gefe}a}%
+\def\lpeld{\multigr g{gded}c}%
+%
+\def\tpel#1{\multigr g{h#1e#1}N}%
+\def\tpelb{\tpel b}%
+\def\tpelc{\tpel c}%
+\def\tpeld{\tpel d}%
+\def\tpele{\multigr g{hefe}a}%
+\def\ltpeld{\multigr g{hded}c}%
+%
+\def\hpel#1{\multigr e{#1e#1}N}%
+\def\hpelb{\hpel b}%
+\def\hpelc{\hpel c}%
+\def\hpeld{\hpel d}%
+\def\hpele{\multigr f{efe}a}%
+\def\lhpeld{\multigr f{ded}c}%
+%
+%%%%%%%%%%%% piobaireachd grace notes %%%%%%%%%%%%%%%%%%%%%%
+%
+% echoes
+%
+\def\echoG{\Echo N}%
+\def\echoN{\Echo N}%
+\def\echoa{\Echo a}%
+\def\echob{\Echo b}%
+\def\echoc{\Echo c}%
+\def\echod{\Echo d}%
+\def\echoe{\Echo e}%
+\def\echof{\Echo f}%
+\def\echog{\Echo g}%
+\def\echoA{\Echo h}%
+\def\echoh{\Echo h}%
+%
+% themal grace notes
+%
+\def\themG{\Them N}%
+\def\themN{\Them N}%
+\def\thema{\Them a}%
+\def\themb{\Them b}%
+\def\themc{\Them c}%
+\def\themd{\Them d}%
+\def\theme{\Them e}%
+\def\themf{\Them f}%
+\def\themg{\Them g}%
+\def\themA{\Them h}%
+\def\themh{\Them h}%
+%
+\def\crun{\multigr e{NdNeaf}a}%
+\def\dcrun{\multigr e{NbNeaf}a}%
+\def\crunf{\multigr e{eaf}a}%
+\def\crunme{\multigr f{feg}e}%
+\def\crunmd{\multigr e{edf}d}%
+\def\crunmc{\multigr e{NdNcecf}c}%
+\def\crunmb{\multigr e{NdNbebf}b}%
+\def\ahcrun{\multigr e{daeaf}a}%
+\def\Nhcrun{\multigr e{dNeaf}a}%
+\def\crunbr{\multigr e{NdNeNf}N}%
+\def\dcrunbr{\multigr e{NbNeNf}N}%
+\def\ahcrunbr{\multigr e{dNeNf}N}%
+%
+\def\dre{\multigr e{aeaf}a}%
+\def\edre{\multigr e{eaf}a}%
+\def\edreb{\multigr e{ebf}b}%
+\def\edrec{\multigr e{ecf}c}%
+\let\edred\crunmd% same as crunmd
+\let\dare\thrwf% same as thrwf
+\def\gedre{\multigr f{geaf}a}%
+\def\gdare{\multigr f{gfeg}e}%
+\def\tedre{\multigr g{heaf}a}%
+\def\tdare{\multigr g{hfeg}e}%
+\def\tchechere{\multigr g{hgeh}e}%
+\def\hdre{\multigr f{af}a}%
+\def\hedale{\multigr g{eg}e}%
+\def\hchechere{\multigr g{eh}e}%
+\def\hedari{\multigr f{geh}e}%
+\let\Nedre\scatchb
+\let\aedre\scatchc
+%
+\def\deda{\multigr e{Ne}N}%
+%
+\def\bain#1{\multigr d{#1Nd}N}%
+\def\enbain{\bain a}%
+\def\otro{\bain b}%
+\def\odro{\bain c}%
+\def\adela{\multigr e{dNe}N}%
+\def\gbain#1{\multigr f{g#1Nd}N}%
+\def\genbain{\gbain a}%
+\def\gotro{\gbain b}%
+\def\godro{\gbain c}%
+\def\gadela{\gbain d}%
+\def\tbain#1{\multigr g{h#1Nd}N}%
+\def\tenbain{\tbain a}%
+\def\totro{\tbain b}%
+\def\todro{\tbain c}%
+\def\tadela{\tbain d}%
+%
+\def\hiharin{\multigr d{daNa}N}%
+%
+\def\dbstf{\multigr g{fg}f}%
+\def\dbsth{\multigr g{gh}g}%
+\let\dstrg\dbstf%
+\let\dstrh\dbsth%
+
+%
+\def\darodo{\multigr d{NdNc}N}%
+\def\gdarodo{\multigr d{dNc}N}%
+\let\Gdarodo\gdarodo
+\def\Ndarodo{\multigr d{dNc}N}%
+\let\bubbly\darodo% bubbly is a synonym for darodo
+\let\Nbubbly\Ndarodo
+\let\gbubbly\gdarodo
+\let\Gbubbly\gdarodo
+%
+\def\cadged{\cadt gged}
+\def\cadhed{\cadt hhed}
+\def\cadge{\cadf gge}
+\def\cadgf{\cadf ggf}
+\def\caded{\cadl eed}
+\def\cadhe{\cadf hhe}
+\def\fcadged{\fcadt ggedj}
+\def\fcadhed{\fcadt hhedk}
+\def\fcadge{\fcadf ggej}
+\def\fcadgf{\fcadf ggfj}
+\def\fcaded{\fcadl eedh}
+\def\fcadhe{\fcadf hhek}
+\def\fcade{\tns\pointdorgue g\zcu e\tqsk\nns}
+%
+% macros for switching between pitch schemes
+%
+\def\oldpitch{%
+\def\g{N}%
+\def\G{g}%
+\def\whg{\wh N}%
+\def\whG{\wh g}%
+\def\hg{\hl N}%
+\def\hG{\hl g}%
+\def\qlg{\ql N}%
+\def\qlG{\ql g}%
+\def\cg{\cl N}%
+\def\cG{\cl g}%
+\def\sg{\ccl N}%
+\def\sG{\ccl g}%
+\def\tg{\cccl N}%
+\def\tG{\cccl g}%
+\def\sfg{\ccccl N}%
+\def\sfG{\ccccl g}%
+\def\bg{\qb0 N}%
+\def\bG{\qb0 g}%
+\def\bgp{\qbp0 N\psk}%
+\def\bGp{\qbp0 g\psk}%
+\def\grg{\Grace N}%
+\def\grG{\Grace g}%
+\def\dblg{\dblright{N}}%
+\def\dblG{\multigr fgf}% this is the same as \hdblG
+\def\hdblg{\hdblright{N}}%
+\def\hdblG{\multigr fgf}%
+\def\tdblg{\tdblright{N}}%
+\def\tdblG{\multigr f{hg}f}%
+}%
+\def\newpitch{%
+\def\g{g}%
+\def\G{N}%
+\def\whG{\wh N}%
+\def\whg{\wh g}%
+\def\hG{\hl N}%
+\def\hg{\hl g}%
+\def\qlG{\ql N}%
+\def\qlg{\ql g}%
+\def\cG{\cl N}%
+\def\cg{\cl g}%
+\def\sG{\ccl N}%
+\def\sg{\ccl g}%
+\def\tG{\cccl N}%
+\def\tg{\cccl g}%
+\def\sfG{\ccccl N}%
+\def\sfg{\ccccl g}%
+\def\bG{\qb0 N}%
+\def\bg{\qb0 g}%
+\def\bGp{\qbp0 N\psk}%
+\def\bgp{\qbp0 g\psk}%
+\def\grG{\Grace N}%
+\def\grg{\Grace g}%
+\def\dblG{\dblright{g}}%
+\def\dblg{\multigr fgf}% this is the same as \hdblG
+\def\hdblG{\hdblright{g}}%
+\def\hdblg{\multigr fgf}%
+\def\tdblg{\multigr f{hg}f}%
+\def\tdblG{\tdblright{N}}%
+}%
+%
+% some options concerning automatic insertion of glue and spacing of
+% pickup notes
+%
+% \autoglue causes glue to be inserted after beamed note groups
+% \noautoglue turns this feature off
+\def\autoglue{\def\bmend{\etn}\def\ttn{\etn\etn}%
+% for pickup notes
+ \def\pickup##1{\notes\qsk##1\enotes\advance\barno by -1\relax\xbarre}%
+ \ifx\mxversion\undefined
+ \def\reppickup##1{%
+ \advance\barno by -1\relax\reprmorceau\notes\fsk##1\enotes\xbarre}%
+ \def\repreppickup##1{\advance\barno by -1\relax\reprmorceau%
+ \rlap\leftrepeatsymbol\notes\sk\fsk##1\fsk\enotes\xbarre}%
+ \else
+ \def\reppickup##1{%
+ \advance\barno by -1\relax\reprmorceau\notes\qsk##1\enotes\xbarre}%
+ \def\repreppickup##1{\advance\barno by -1\relax\reprmorceau%
+% \rlap\leftrepeatsymbol\notes\sk\qsk##1\qsk\enotes\xbarre}%
+ \leftrepeatsymbol\notes\psk##1\psk\enotes\xbarre}%
+ \fi
+}%
+%
+\def\noautoglue{%
+ \def\bmend{}\def\ttn{\etn}%
+% for pickup notes
+ \def\pickup##1{\notes##1\enotes\advance\barno by -1\relax\xbarre}%
+ \def\reppickup##1{%
+ \advance\barno by -1\relax\reprmorceau\notes##1\enotes\xbarre}%
+ \ifx\mxversion\undefined
+ \def\repreppickup##1{\advance\barno by -1\relax\reprmorceau%
+ \rlap\leftrepeatsymbol\notes\sk\fsk\enn##1\enotes\xbarre}%
+ \else
+ \def\repreppickup##1{\advance\barno by -1\relax\reprmorceau%
+% \rlap\leftrepeatsymbol\notes\sk\qsk\enn##1\enotes\xbarre}%
+ \leftrepeatsymbol\notes\psk##1\psk\enotes\xbarre}%
+ \fi
+}%
+% the default is to automatically insert glue after beamed note groups
+\autoglue
+% note that autoglue is incompatible with multipart settings and is
+% turned off by \multipart
+%
+% definitions for beamed combinations
+%
+% first for explicit arrangements of note pairs
+%
+\makeatletter
+%
+\def\pcc#1#2{\Ibl0#1{#2}1\qb0{#1}\tbl0\qb0{#2}\bmend}%
+\def\pcgc#1#2#3{\Ibl0#1{#3}4\qb0#1#2\tbl0\qb0#3\bmend}%
+\def\pcs#1#2{\Ibl0{#1}{#2}1\qb0{#1}\tbbl0\tbl0\qb0{#2}\bmend}%
+\def\pcps#1#2{\Ibl0{#1}{#2}1\qbp0{#1}\psk\tbbl0\tbl0\qb0{#2}\bmend}%
+\def\pcgs#1#2#3{\Ibl0{#1}{#3}2\qb0{#1}#2\tbbl0\tbl0\qb0{#3}\bmend}%
+\def\pcpgs#1#2#3{\Ibl0{#1}{#3}2\qbp0{#1}\psk#2\tbbl0\tbl0\qb0{#3}\bmend}%
+\def\psc#1#2{\Ibbl0{#1}{#2}1\rlap{\f@k\tbbl0}\qb0{#1}\tbl0\qb0{#2}\bmend}%
+\def\pscp#1#2{\Ibbl0{#1}{#2}1\rlap{\f@k\tbbl0}\qb0{#1}\tbl0\qbp0{#2}\psk\bmend}%
+\def\psgc#1#2#3{\Ibl0{#1}{#3}2\rlap{\f@k\tbbl0}\qb0{#1}#2\tbl0\qb0{#3}\bmend}%
+\def\psgcp#1#2#3{%
+ \Ibl0{#1}{#3}3\rlap{\f@k\tbbl0}\qb0{#1}#2\tbl0\qbp0{#3}\psk\bmend}%
+%
+\def\pss#1#2{\Ibbl0{#1}{#2}1\qb0{#1}\tbl0\qb0{#2}}%
+\def\psgs#1#2#3{\Ibbl0#1{#3}4\qb0#1#2\tbl0\qb0#3}%
+\def\pst#1#2{\Ibbl0{#1}{#2}1\qb0{#1}\tbbbl0\tbl0\qb0{#2}}%
+\def\pspt#1#2{\Ibbl0{#1}{#2}1\qbp0{#1}\psk\tbbbl0\tbl0\qb0{#2}}%
+\def\psgt#1#2#3{\Ibbl0{#1}{#3}2\qb0{#1}#2\tbbbl0\tbl0\qb0{#3}}%
+\def\pspgt#1#2#3{\Ibbl0{#1}{#3}2\qbp0{#1}\psk#2\tbbbl0\tbl0\qb0{#3}}%
+\def\pts#1#2{\Ibbbl0{#1}{#2}1\rlap{\f@k\tbbbl0}\qb0{#1}\tbl0\qb0{#2}}%
+\def\ptsp#1#2{\Ibbbl0{#1}{#2}1\rlap{\f@k\tbbbl0}\qb0{#1}\tbl0\qbp0{#2}\psk}%
+\def\ptgs#1#2#3{\Ibbl0{#1}{#3}2\rlap{\f@k\tbbbl0}\qb0{#1}#2\tbl0\qb0{#3}}%
+\def\ptgsp#1#2#3{\Ibbl0{#1}{#3}2\rlap{\f@k\tbbbl0}\qb0{#1}#2\tbl0\qbp0{#3}\psk}%
+%
+\def\ptt#1#2{\Ibbbl0{#1}{#2}1\qb0{#1}\tbl0\qb0{#2}}%
+%
+% now more general definitions where the beam is specified first and then
+% the notes.
+%
+% pairs
+%
+\def\bcc#1#2#3#4#5{\Ibl0#1#2#3#4\tbl0#5\bmend}%
+\def\bss#1#2#3#4#5{\Ibbl0#1#2#3#4\tbl0#5\psk}%
+\def\btt#1#2#3#4#5{\Ibbbl0#1#2#3#4\tbl0#5\psk}%
+%
+\def\bcs#1#2#3#4#5{\Ibl0#1#2#3#4\tbbl0\tbl0#5\bmend}%
+\def\bsc#1#2#3#4#5{\Ibl0#1#2#3\rlap{\f@k\tbbl0}#4\tbl0#5\bmend}%
+\def\bst#1#2#3#4#5{\Ibbl0#1#2#3#4\tbbbl0\tbl0#5\bmend}%
+\def\bts#1#2#3#4#5{\Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4\tbl0#5\bmend}%
+\def\bct#1#2#3#4#5{\Ibl0#1#2#3#4\tbbbl0\tbbl0\tbl0#5\bmend}%
+\def\btc#1#2#3#4#5{\Ibl0#1#2#3\rlap{\f@k\tbbbl0\tbbl0}#4\tbl0#5\bmend}%
+%\def\bct#1#2#3#4#5{%
+%\enotes\hnotes\Ibl0#1#2#3#4\nbbbl0\sk\tbbbl0\tbbbl0\tbl0#5\bmend}%
+%\def\btc#1#2#3#4#5{\enotes\hnotes\Ibbbl0#1#2#3#4\tbbbl0\tbbl0\sk\tbl0#5\bmend}%
+%
+% triplets
+%
+\def\bccc#1#2#3#4#5#6{\Ibl0#1#2#3#4#5\tbl0#6\bmend}%
+\def\bsss#1#2#3#4#5#6{\Ibbl0#1#2#3#4#5\tbl0#6\bmend}%
+\def\bttt#1#2#3#4#5#6{\Ibbbl0#1#2#3#4#5\tbl0#6\psk}%
+%
+\def\bccs#1#2#3#4#5#6{\Ibl0#1#2#3#4#5\tbbl0\tbl0#6\bmend}%
+\def\bcsc#1#2#3#4#5#6{\Ibl0#1#2#3#4\tbbl0#5\tbl0#6\bmend}%
+\def\bscc#1#2#3#4#5#6{\Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\tbl0#6\bmend}%
+%
+\def\bcss#1#2#3#4#5#6{\Ibl0#1#2#3#4\nbbl0#5\tbl0#6\bmend}%
+\def\bscs#1#2#3#4#5#6{\Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\tbbl0\tbl0#6\bmend}%
+\def\bssc#1#2#3#4#5#6{\Ibbl0#1#2#3#4\tbbl0#5\tbl0#6\bmend}%
+%
+\def\bsst#1#2#3#4#5#6{\Ibbl0#1#2#3#4#5\tbbbl0\tbl0#6\enn}%
+\def\bsts#1#2#3#4#5#6{\Ibbl0#1#2#3#4\tbbbl0#5\tbl0#6\enn}%
+\def\btss#1#2#3#4#5#6{\Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5\tbl0#6\enn}%
+%
+\def\bstt#1#2#3#4#5#6{\Ibbl0#1#2#3#4\nbbbl0#5\tbl0#6\psk}%
+\def\btst#1#2#3#4#5#6{\Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5\tbbbl0\tbl0#6\psk}%
+\def\btts#1#2#3#4#5#6{\Ibbbl0#1#2#3#4\tbbbl0#5\tbl0#6\psk}%
+%
+\def\bcst#1#2#3#4#5#6{\Ibl0#1#2#3#4\nbbl0#5\tbbbl0\tbl0#6\bmend}%
+\def\bsct#1#2#3#4#5#6{\Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\tbbbl0\tbbl0\tbl0#6\bmend}%
+\def\bcts#1#2#3#4#5#6{\Ibl0#1#2#3#4\nbbl0\rlap{\f@k\tbbbl0}#5\tbl0#6\bmend}%
+\def\bstc#1#2#3#4#5#6{\Ibbl0#1#2#3#4\tbbbl0\tbbl0#5\tbl0#6\bmend}%
+\def\btsc#1#2#3#4#5#6{\Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4\tbbl0#5\tbl0#6\bmend}%
+\def\btcs#1#2#3#4#5#6{\Ibl0#1#2#3\rlap{\f@k\tbbbl0\tbbl0}#4#5\tbbl0\tbl0#6\bmend}%
+%
+% quadruplets
+%
+% all the same
+%
+\def\bcccc#1#2#3#4#5#6#7{\Ibl0#1#2#3#4#5#6\tbl0#7\bmend}%
+\def\bssss#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4#5#6\tbl0#7\bmend}%
+\def\btttt#1#2#3#4#5#6#7{\Ibbbl0#1#2#3#4#5#6\tbl0#7\bmend}%
+%
+% 3 c's, 1 s
+%
+\def\bcccs#1#2#3#4#5#6#7{\Ibl0#1#2#3#4#5#6\tbbl0\tbl0#7\bmend}%
+\def\bccsc#1#2#3#4#5#6#7{\Ibl0#1#2#3#4#5\tbbl0#6\tbl0#7\bmend}%
+\def\bcscc#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\tbbl0#5#6\tbl0#7\bmend}%
+\def\bsccc#1#2#3#4#5#6#7{\Ibbl0#1#2#3\rlap{\f@k\tbbl0}#4#5#6\tbl0#7\bmend}%
+%
+% 2 c's, 2 s's
+%
+\def\bccss#1#2#3#4#5#6#7{\Ibl0#1#2#3#4#5\nbbl0#6\tbl0#7\bmend}%
+\def\bcscs#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\tbbl0#5#6\tbbl0\tbl0#7\bmend}%
+\def\bcssc#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\tbbl0#5\rlap{\f@k\tbbl0}#6\tbl0#7\bmend}%
+\def\bsccs#1#2#3#4#5#6#7{\Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5#6\tbbl0\tbl0#7\bmend}%
+\def\bscsc#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\rlap{\f@k\tbbl0}#6\tbl0#7\bmend}%
+\def\bsscc#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\tbbl0#5#6\tbl0#7\bmend}%
+%
+% 2 c's, 1 s, 1 t
+%
+\def\bccst#1#2#3#4#5#6#7{\Ibl0#1#2#3#4#5\nbbl0#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bccts#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3#4#5\nbbl0\rlap{\f@k\tbbbl0}#6\tbl0#7\bmend}%
+\def\bcstc#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\nbbl0#5\tbbbl0\tbbl0#6\tbl0#7\bmend}%
+\def\bctsc#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3#4\nbbl0\rlap{\f@k\tbbbl0}#5\tbbl0#6\tbl0#7\bmend}%
+\def\bstcc#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\tbbbl0\tbbl0#5#6\tbl0#7\bmend}%
+\def\btscc#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4\tbbl0#5#6\tbl0#7\bmend}%
+%
+% 1 c, 3 s's
+%
+\def\bcsss#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\nbbl0#5#6\tbbl0\tbl0#7\bmend}%
+\def\bscss#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\nbbl0#6\tbl0#7\bmend}%
+\def\bsscs#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\tbbl0#5#6\tbbl0\tbl0#7\bmend}%
+\def\bsssc#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4#5\tbbl0#6\tbl0#7\bmend}%
+%
+% 1 c, 2 s's, 1 t
+%
+\def\bcsst#1#2#3#4#5#6#7{\Ibl0#1#2#3#4\nbbl0#5#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bcsts#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3#4\nbbl0#5\rlap{\f@k\tbbbl0}#6\tbbl0\tbl0#7\bmend}%
+\def\bscst#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\nbbl0#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bscts#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3\rlap{\f@k\tbbl0}#4#5\nbbl0\rlap{\f@k\tbbbl0}#6\tbbl0\tbl0#7\bmend}%
+\def\bstcs#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3#4\tbbbl0\tbbl0#5#6\tbbl0\tbl0#7\bmend}%
+\def\btscs#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4\tbbl0#5#6\tbbl0\tbl0#7\bmend}%
+\def\bstsc#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3#4\tbbbl0\tbbl0#5\rlap{\f@k\tbbl0}#6\tbl0#7\bmend}%
+\def\btssc#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4\tbbl0#5\rlap{\f@k\tbbl0}#6\tbl0#7\bmend}%
+\def\btcss#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3\rlap{\f@k\tbbbl0\tbbl0}#4#5\nbbl0#6\tbl0#7\bmend}%
+\def\bctss#1#2#3#4#5#6#7{%
+ \Ibl0#1#2#3#4\tbbbl0\tbbl0#5\nbbl0#6\tbbl0\tbl0#7\bmend}%
+\def\bssct#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3#4\tbbl0#5#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bsstc#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3#4\tbbl0#5\rlap{\f@k\tbbbl0\tbbl0}#6\tbl0#7\bmend}%
+%
+% 3 s's, 1 t
+%
+\def\bssst#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4#5#6\tbbbl0\tbl0#7\bmend}%
+\def\bssts#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4#5\tbbbl0#6\tbl0#7\bmend}%
+\def\bstss#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\tbbbl0#5#6\tbl0#7\bmend}%
+\def\btsss#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5#6\tbbl0\tbl0#7\bmend}%
+%
+% 2 s's, 2 t's
+%
+\def\bsstt#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4#5\nbbbl0#6\tbl0#7\bmend}%
+\def\bstst#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\tbbbl0#5#6\tbbbl0\tbl0#7\bmend}%
+\def\bstts#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3#4\tbbbl0#5\rlap{\f@k\tbbbl0}#6\tbl0#7\bmend}%
+\def\btsst#1#2#3#4#5#6#7{\Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5#6\tbbbl0\tbl0#7\bmend}%
+\def\btsts#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5\rlap{\f@k\tbbbl0}#6\tbl0#7\bmend}%
+\def\bttss#1#2#3#4#5#6#7{\Ibbbl0#1#2#3#4\tbbbl0#5#6\tbl0#7\bmend}%
+%
+% 1 s, 3 t's
+%
+\def\bsttt#1#2#3#4#5#6#7{\Ibbl0#1#2#3#4\nbbbl0#5#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\btstt#1#2#3#4#5#6#7{%
+ \Ibbl0#1#2#3\rlap{\f@k\tbbbl0}#4#5\nbbbl0#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bttst#1#2#3#4#5#6#7{%
+ \Ibbbl0#1#2#3#4\tbbbl0#5#6\tbbbl0\tbbl0\tbl0#7\bmend}%
+\def\bttts#1#2#3#4#5#6#7{\Ibbbl0#1#2#3#4#5\tbbbl0#6\tbbl0\tbl0#7\bmend}%
+%
+\makeatother
+%
+\def\downtext#1{\zcharnote H{#1}}
+\def\Downtext#1{\zcharnote D{#1}}
+%
+\let\alabreve\allabreve% accommodate a typo in bmw2tex
+%
+\endcatcodesmusic% restore characters to their standard usage
+%
+% miscellaneous useful non-music macro definitions
+%
+\def\USdate{%
+\def\today{\ifcase\month\or Jan.\or Feb.\or Mar.\or Apr. \or
+ May.\or June\or July\or Aug.\or Sep.\or Oct.\or Nov.\or Dec.\fi
+ \ \number\day, \number\year}}% this is from the TeXbook
+%
+\def\Eurodate{%
+\def\today{\number\day\ \ifcase\month\or Jan.\or Feb.\or Mar.\or Apr. \or
+ May.\or June\or July\or Aug.\or Sep.\or Oct.\or Nov.\or Dec.\fi
+ \ \number\year}}% this is from the TeXbook
+%
+\USdate
+%
+\font\twelvebf=\fonthdg mbx12% useful for part headings
+%
+\def\medley{\let\medleyflag=\relax}% useful for making medleys
+\def\byemedley{\ifx\medleyflag\relax\endinput\fi}%
+%
+\endinput
+%
+\endmain
+\end{document}%
diff --git a/macros/generic/bagpipe/bagpipex.ini b/macros/generic/bagpipe/bagpipex.ini
new file mode 100644
index 0000000000..d80ee6645e
--- /dev/null
+++ b/macros/generic/bagpipe/bagpipex.ini
@@ -0,0 +1,4 @@
+\input plain
+\let\usemusixtex\relax
+\input bagpipe
+\dump
diff --git a/macros/generic/bagpipe/quickref.pdf b/macros/generic/bagpipe/quickref.pdf
new file mode 100644
index 0000000000..ba199630c0
--- /dev/null
+++ b/macros/generic/bagpipe/quickref.pdf
Binary files differ
diff --git a/macros/generic/bagpipe/quickref.tex b/macros/generic/bagpipe/quickref.tex
new file mode 100644
index 0000000000..01f042ab5f
--- /dev/null
+++ b/macros/generic/bagpipe/quickref.tex
@@ -0,0 +1,227 @@
+%&plain
+% bagpipe.tex
+\let\usemusixtex\relax%
+\input bagpipe
+\newpitch\newgrace\noautoglue
+%
+\centerline{\moyen bagpipe.tex quick reference}
+\bigskip
+\generalmeter{\meterfrac 44}%
+\setelemq{1.6} \debutmorceau \notes
+ \Uptext{grx; x=N,a,b,c,d,e,f,g,h(new scheme)}
+ \grN\gra\grb\grc\grd\gre\grf\grg\grh\sk\sk\sk
+ \enotes\barre
+\notes\Uptext{echox}\relax
+ \echoN\echoa\echob\echoc\echod\echoe\echof\echog\echoh\sk
+ \enotes\barre
+\notes\Uptext{themx}\relax
+ \themN\thema\themb\themc\themd\theme\themf\themg\themh
+ \enotes\alaligne
+\notes\Uptext{dblx}\dblN\dbla\dblb\dblc\dbld\dble\dblf\dblg\dblh\enotes\barre
+\notes\Uptext{hdblx}\hdblN\hdbla\hdblb\hdblc\hdbld\hdble\hdblf\hdblg\hdblh
+ \enotes\alaligne
+\notes\Uptext{tdblx}\tdblN\tdbla\tdblb\tdblc\tdbld\tdble\tdblf\tdblg
+ \enotes\barre
+\notes\Uptext{sdblx}\sdbla\sdblb\sdblc\sdbld\sdble\sdblf\sdblg\sdblh
+ \enotes\alaligne
+\notes\Uptext{shdblx}\shdbla\shdblb\shdblc\shdbld\shdble\shdblf\shdblg\shdblh
+ \enotes\barre
+\notes\Uptext{shkdbld}\shkdbld\enotes\barre
+\notes\Uptext{shtdbld}\shtdbld\enotes\barre
+\notes\Uptext{thrwd}\thrwd\sk\sk\Uptext{grip}\grip\sk
+ \Uptext{dgrip}\dgrip\sk\Uptext{Ngrip}\Ngrip\sk\sk\enotes\alaligne
+\notes\Uptext{taor}\taor\sk\Uptext{dtaor}\dtaor\sk\Uptext{Ntaor}\Ntaor\sk\sk
+ \Uptext{ahtaor}\ahtaor\sk\sk\enotes\barre
+\notes\Uptext{thrwf}\thrwf\sk\sk\Uptext{gripthrwd}\gripthrwd\sk\sk\sk
+\Uptext{hgripthrwd}\hgripthrwd\sk\sk\sk\sk\enotes\barre
+\notes\Uptext{birl}\birl\Uptext{sbirl}\sbirl\Uptext{wbirl}\wbirl\sk\sk
+ \Uptext{tbirl}\tbirl\enotes\barre
+\notes\Uptext{slurx or
+slapx}\slura\slurb\slurc\slurd\slure\slurf\enotes\alaligne
+\notes\Uptext{hslurx}\hslura\hslurb\hslurc\hslurd\hslure\hslurf\enotes\barre
+\notes\Uptext{tslurx}\tslura\tslurb\tslurc\tslurd\tslure\tslurf\enotes\barre
+\notes\Uptext{shkx}\shka\shkb\shkc\shkd\shke\shkf\shkg\enotes\barre
+\notes\Uptext{hshkx}\hshka\hshkb\hshkc\hshkd\hshke\hshkf\hshkg\enotes\alaligne
+\notes\Uptext{tshkx}\tshka\tshkb\tshkc\tshkd\tshke\tshkf\enotes\barre
+\notes\Uptext{dstrx}\dstra\dstrb\dstrc\dstrd\dstre\dstrf\dstrg\dstrh
+ \Uptext{ldstrd}\ldstrd\sk\enotes\barre
+\notes\Uptext{gdstrx}\gdstra\gdstrb\gdstrc\gdstrd\gdstre\gdstrf
+ \Uptext{lgdstrd}\lgdstrd\enotes\alaligne
+\notes\Uptext{tdstrx}\tdstra\tdstrb\tdstrc\tdstrd\tdstre\tdstrf
+ \Uptext{ltdstrd}\ltdstrd\enotes\barre
+\notes\Uptext{hdstrx}\hdstra\hdstrb\hdstrc\hdstrd\hdstre\hdstrf\hdstrg\hdstrh
+ \Uptext{lhdstrd}\lhdstrd\enotes\alaligne
+\notes\Uptext{tstrx}\tstra\tstrb\tstrc\tstrd\tstre\tstrf\tstrg\tstrh
+ \Uptext{ltstrd}\ltstrd\enotes\barre
+\notes\Uptext{gtstrx}\gtstra\gtstrb\gtstrc\gtstrd\gtstre\gtstrd\gtstrf
+ \Uptext{lgtstrd}\lgtstrd\enotes\alaligne
+\notes\Uptext{ttstrx}\ttstra\ttstrb\ttstrc\ttstrd\ttstre\ttstrf
+ \Uptext{lttstrd}\lttstrd\enotes\alaligne
+\notes\Uptext{htstrx}\htstra\htstrb\htstrc\htstrd\htstre\htstrf\htstrg\htstrh
+ \Uptext{lhtstrd}\lhtstrd\sk\enotes\barre
+\notes\Uptext{pelx}\pelb\pelc\peld\pele\Uptext{lpeld}\lpeld\enotes\alaligne
+\notes\Uptext{tpelx}\tpelb\tpelc\tpeld\tpele\Uptext{ltpeld}\ltpeld\enotes\barre
+\notes\Uptext{hpelx}\hpelb\hpelc\hpeld\hpele\enotes\barre
+\notes\Uptext{ddgrx}\ddgrN\ddgra\ddgrb\ddgrc\enotes\barre
+\notes\Uptext{edgrx}\edgrN\edgra\edgrb\edgrc\edgrd\enotes\barre
+\notes\Uptext{fdgrx}\fdgrN\fdgra\fdgrb\fdgrc\fdgrd\fdgre\enotes\alaligne
+\notes\Uptext{gdgrx}\gdgrN\gdgra\gdgrb\gdgrc\gdgrd\gdgre\gdgrf\enotes\barre
+\notes\Uptext{tdgrx}\tdgrN\tdgra\tdgrb\tdgrc\tdgrd\tdgre\tdgrf\tdgrg\enotes\barre
+\notes\Uptext{catchx}\catcha\catchb\catchc\catchd\catche\enotes\alaligne
+\notes\Uptext{scatchx}\scatcha\scatchb\scatchc\scatchd\scatche\enotes\barre
+\notes\Uptext{tcatchx}\tcatcha\tcatchb\tcatchc\tcatchd\tcatche\enotes\alaligne
+\notes\Uptext{crun}\crun\Uptext{crunf}\crunf\sk\Uptext{crunmb}\crunmb
+ \Uptext{crunmc}\crunmc\enotes\barre
+\notes\Uptext{crunmd}\crunmd\sk\sk\sk\Uptext{ahcrun}\ahcrun\sk\Uptext{Nhcrun}\Nhcrun\sk
+ \Uptext{dcrunbr}\dcrunbr\sk\Uptext{ahcrunbr}\ahcrunbr\sk\enotes\alaligne
+\notes\Uptext{dre}\dre\Uptext{edre}\edre\sk\Uptext{edrex}\edreb\edrec\edred
+ \Uptext{dare}\dare\enotes\barre
+\notes\Uptext{hedari}\hedari\sk\sk\Uptext{tra}\tra\sk\Uptext{trac}\trac\enotes\alaligne
+\notes\Uptext{gedre}\gedre\sk\Uptext{gdare}\gdare\sk\Uptext{tedre}\tedre\sk
+ \Uptext{tdare}\tdare\sk\Uptext{tchechere}\tchechere\sk\sk\sk\sk\Uptext{hdre}\hdre\sk\enotes\barre
+\notes\Uptext{hedale}\hedale\sk\sk\sk\Uptext{hchechere}\hchechere\sk\sk\sk\sk
+ \Uptext{deda}\deda\sk\enotes\alaligne
+\notes\Uptext{enbain}\enbain\sk\sk\Uptext{otro}\otro\sk\sk\Uptext{odro}\odro\sk\sk
+ \Uptext{adela}\adela\sk\enotes\barre
+\notes\Uptext{genbain}\genbain\sk\sk\Uptext{gotro}\gotro\sk\sk\Uptext{godro}\godro\sk\sk
+ \Uptext{gadela}\gadela\sk\enotes\alaligne
+\notes\Uptext{tenbain}\tenbain\sk\sk\Uptext{totro}\totro\sk\sk\Uptext{todro}\todro\sk\sk
+ \Uptext{tadela}\tadela\sk\enotes\barre
+\notes\Uptext{dbstf}\dbstf\sk\Uptext{dbsth}\dbsth\sk\enotes\barre
+\notes\Uptext{darodo}\darodo\sk\Uptext{Ndarodo}\Ndarodo\sk\sk\sk
+ \Uptext{darodos}\darodos\sk\sk\enotes\barre
+\notes\Uptext{hiharin}\hiharin\sk\sk\Uptext{chelalho}\chelalho\enotes\alaligne
+\notes\Uptext{cadged}\cadged\sk\sk\Uptext{cadhed}\cadhed\sk\sk
+ \Uptext{cadge}\cadge\sk\enotes\barre
+\notes\Uptext{cadhe}\cadhe\sk\sk\Uptext{caded}\caded\sk\sk\enotes\barre
+\notes\Uptext{fcadged}\fcadged\sk\Uptext{fcadhed}\fcadhed\sk
+ \Uptext{fcadge}\fcadge\sk
+ \Uptext{fcadhe}\fcadhe\sk\Uptext{fcaded}\fcaded\sk\Uptext{fcade}\fcade\enotes\alaligne
+%
+\notes\Uptext{pcc}\pcc cd\etn\Uptext{pcgc}\pcgc c\grg d\etn
+ \Uptext{pcs}\pcs cd\etn\Uptext{pcps}\pcps cd\enotes\barre
+\notes\Uptext{pcgs}\pcgs c\gre d\etn
+ \Uptext{pcpgs}\pcpgs c\gre d\etn
+ \Uptext{psc}\psc cd\etn\Uptext{pscp}\pscp cd\enotes\barre
+\notes\Uptext{psgc}\psgc c\gre d\etn
+ \Uptext{psgcp}\psgcp c\gre d\enotes\alaligne
+\notes\Uptext{pss}\pss cd\etn\Uptext{psgs}\psgs c\gre d\etn
+ \Uptext{pst}\pst cd\etn
+ \Uptext{pspt}\pspt cd\enotes\barre
+\notes\Uptext{psgt}\psgt c\gre d\etn
+ \Uptext{pspgt}\pspgt c\gre d\etn
+ \Uptext{pts}\pts cd\etn\Uptext{ptsp}\ptsp cd\enotes\barre
+\notes\Uptext{ptgs}\ptgs c\gre d\etn
+ \Uptext{ptgsp}\ptgsp c\gre d\enotes\alaligne
+\notes\Uptext{bdd; d=c,s,t}\bcc cd2\bc\bd\etn
+ \bss cd2\bc\bd\etn\btt cd2\bc\bd\enotes\barre
+\notes\bcs cd2\bc\bd\etn\bsc cd2\bc\bd\etn
+ \bst cd2\bc\bd\etn\bts cd2\bc\bd
+ \enotes\barre
+\notes\bct cd2\bc\bd\etn\btc cd2\bc\bd\enotes\barre
+\notes\Uptext{bddd; d=c,s,t}\bccc ae2\ba\bb\be\etn
+ \bccc ae3\bap\bbp\be\etn
+ \bccc ac3{\ba\grd}{\bb\gre}\bc\enotes\barre
+%
+\notes\sk\bsss ae2\ba\bb\be\sk\etn
+ \bttt ae2\ba\bb\be\enotes\alaligne
+%
+\notes\sk\bccs ae2\ba\bb\be\etn
+ \bcsc ae2\ba\bb\be\etn
+ \bscc ae2\ba\bb\be\enotes\barre
+\notes\sk\bcss ae2\ba\bb\be\etn
+ \bscs ae2\ba\bb\be\etn
+ \bssc ae2\ba\bb\be\enotes\barre
+%
+\notes\sk\bsst ae2\ba\bb\be\etn\bsts ae2\ba\bb\be\btss
+ae2\ba\bb\be\enotes\barre \notes\sk\bstt ae2\ba\bb\be\etn\btst
+ae2\ba\bb\be\etn\btts ae2\ba\bb\be\enotes\alaligne
+%
+\notes\sk\bcst ae2\ba\bb\be\etn
+ \bsct ae2\ba\bb\be\etn
+ \bcts ae2\ba\bb\be\enotes\barre
+\notes\sk\bstc ae2\ba\bb\be\etn
+ \btsc ae2\ba\bb\be\etn
+ \btcs ae2\ba\bb\be\enotes\barre
+%
+\notes\sk\Uptext{bdddd; d=c,s,t}\bcccc ad3\ba\bb\bc\bd\etn
+ \bssss ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\btttt ad3\ba\bb\bc\bd\etn
+ \bcccs ad3\ba\bb\bc\bd\enotes\alaligne
+%
+\notes\sk\bccsc ad3\ba\bb\bc\bd\etn
+ \bcscc ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bsccc ad3\ba\bb\bc\bd\etn
+ \bccss ad3\ba\bb\bc\bd\enotes\alaligne
+%
+\notes\sk\bcscs ad3\ba\bb\bc\bd\etn
+ \bcssc ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bsccs ad3\ba\bb\bc\bd\etn
+ \bscsc ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bsscc ad3\ba\bb\bc\bd\etn
+ \bccst ad3\ba\bb\bc\bd\enotes\barre
+%
+\notes\bccts ad3\ba\bb\bc\bd\etn
+ \bcstc ad3\ba\bb\bc\bd\enotes\alaligne
+\notes\bctsc ad3\ba\bb\bc\bd\etn
+ \bstcc ad3\ba\bb\bc\bd\enotes\barre
+\notes\btscc ad3\ba\bb\bc\bd\etn
+ \bcsss ad3\ba\bb\bc\bd\enotes\barre
+%
+\notes\sk\bscss ad3\ba\bb\bc\bd\etn
+ \bsscs ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bsssc ad3\ba\bb\bc\bd\etn
+ \bcsst ad3\ba\bb\bc\bd\enotes\alaligne
+%
+\notes\sk\bcsst ad3\ba\bb\bc\bd\etn
+ \bsstc ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bcsts ad3\ba\bb\bc\bd\etn
+ \bscst ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bscts ad3\ba\bb\bc\bd\etn
+ \bstcs ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\btscs ad3\ba\bb\bc\bd\etn
+ \bstsc ad3\ba\bb\bc\bd\enotes\alaligne
+\notes\sk\btssc ad3\ba\bb\bc\bd\etn
+ \btcss ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bctss ad3\ba\bb\bc\bd\etn%
+ \bssct ad3\ba\bb\bc\bd\enotes\barre
+%
+\notes\sk\bssts ad3\ba\bb\bc\bd\etn
+ \bstss ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\btsss ad3\ba\bb\bc\bd\etn
+ \bssst ad3\ba\bb\bc\bd\enotes\alaligne
+%
+\notes\sk\bstst ad3\ba\bb\bc\bd\etn
+ \bstts ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\btsst ad3\ba\bb\bc\bd\etn
+ \btsts ad3\ba\bb\bc\bd\enotes\barre
+\notes\sk\bttss ad3\ba\bb\bc\bd\etn
+ \bsttt ad3\ba\bb\bc\bd\enotes\barre
+%
+\notes\sk\btstt ad3\ba\bb\bc\bd\etn
+ \bttst ad3\ba\bb\bc\bd\enotes\alaligne
+\notes\sk\bttts ad3\ba\bb\bc\bd\enotes\barre
+%
+\notes\sk\Uptext{whx}\whN\wha\whb\whc\whd\whe\whf\whg\whh\enotes\barre
+\notes\sk\Uptext{hx}\hN\ha\hb\hc\hd\he\hf\hg\hh\enotes\barre
+\notes\sk\Uptext{qlx}\qlN\qla\qlb\qlc\qld\qle\qlf\qlg\qlh\enotes\alaligne
+\notes\sk\Uptext{cx}\cN\ca\cb\cc\cd\ce\cf\cg\ch\enotes\barre
+\notes\sk\Uptext{sx}\sN\sa\sb\sc\sd\se\sf\sg\sh\enotes\barre
+\notes\sk\Uptext{tx}\tN\ta\tb\tc\td\te\tf\tg\th\enotes\barre
+\notes\sk\Uptext{sfx}\sfN\sfa\sfb\sfc\sfd\sfe\sff\sfg\sfh\enotes\alaligne
+\notes\sk\Uptext{bx}\bccc Nb2\bN\ba\bb\bccc ce2\bc\bd\be\etn
+ \bccc fh2\bf\bg\bh\enotes\barre
+%
+\notes\sk\Uptext{bxp}\bccc Nb2\bNp\bap\bbp\etn
+ \bccc ce2\bcp\bdp\bep\etn
+ \bccc fh2\bfp\bgp\bhp\enotes\barre
+%
+\notes\sk\Uptext{hp x, qlp x, cp x, sp x, tp x, sfp x}
+ \hp a\sk\qlp b\sk\cp c\psk\sp d\psk\tp e\psk\sfp f\enotes\barre
+%
+\notes\sk\Uptext{hpp x, qlpp x, cpp x}\relax
+ \sk\sk\hpp a\qlpp b\cpp c\enotes
+%
+\finmorceau
+\byemedley
+\bye