diff options
author | Karl Berry <karl@freefriends.org> | 2012-01-16 23:55:45 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-01-16 23:55:45 +0000 |
commit | 503ec6c5f74d002c0d4d6fa3739e42f5e3e6c503 (patch) | |
tree | cccd70dd32c9dcde6d51180944065b1ee5067ec2 /Master/texmf-dist | |
parent | 427e710b6b79ff0939b7276ce81e1dfea3056f19 (diff) |
new latex package gtrcrd (15jan12)
git-svn-id: svn://tug.org/texlive/trunk@25121 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/latex/gtrcrd/README | 28 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.pdf | bin | 0 -> 143529 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.tex | 132 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/gtrcrd/gtrcrd.sty | 812 |
4 files changed, 972 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/gtrcrd/README b/Master/texmf-dist/doc/latex/gtrcrd/README new file mode 100644 index 00000000000..7fb7e945e45 --- /dev/null +++ b/Master/texmf-dist/doc/latex/gtrcrd/README @@ -0,0 +1,28 @@ +Package name: gtrcrd (Guitar chords) +Author: Riccardo Bresciani - gtrcrd@tex.nopkoguo.net + +Copyright 2012 Riccardo Bresciani + +Description: This package is suitable to add chords to lyrics. +The main advantages of using this package is that chords are +written before the text they refer to and LaTeX takes care of +typesetting them above the lyrics in the right place: thanks to +this we avoid the task of correctly aligning chords above the +lyrics, which is tedious in the case of a monospaced font and +absolutely non-trivial in the case of variable-width fonts. + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either +version 1.3c of this license or (at your option) any +later version. +The latest version of the license is in + http://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of LaTeX +version 2005/12/01 or later. + +This work consists of the files: README, gtrcrd.sty, +gtrcrd-doc.tex, gtrcrd-doc.pdf + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +2012/01/15: v1.0
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.pdf b/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.pdf Binary files differnew file mode 100644 index 00000000000..35a4aaa2f32 --- /dev/null +++ b/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.pdf diff --git a/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.tex b/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.tex new file mode 100644 index 00000000000..d7c021338c5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/gtrcrd/gtrcrd-doc.tex @@ -0,0 +1,132 @@ +\documentclass[green,a4paper,oneside,openany,noparindent,noparskip,article,nomatter]{bookest} + +\usepackage{gtrcrd} +\usepackage{hyperref} +\usepackage{fancyvrb} + +\VerbatimFootnotes +\setleftmark{} +\setrightmark{} + +%pdfLaTeX +\hypersetup{ +pdftitle={gtrcrd}, +pdfsubject={A LaTeX package which is suitable to add chords to lyrics.}, +pdfauthor={Riccardo Bresciani}, +pdfkeywords={gtrcrd, LaTeX, chords, lyrics, TeX}, +pdfstartview=FitV, +%colorlinks +} + + +% Aliases +\newcommand{\ie}{\emph{i.e.} } + +\author{Riccardo Bresciani} +\title{gtrcrd\hfill{\small\href{http://tex.nopkoguo.net/gtrcrd}{http://tex.nopkoguo.net/gtrcrd}}} +\newcommand{\belowLine}{{\normalsize Version 1.0 --- \today}} + +\makeatletter +\renewcommand{\maketitle}{\thispagestyle{plain}{\Huge\textbf{\colorB\@title}\Large\\\vspace{2ex} +\@author{\colorA\hrule}\vspace{1ex}\belowLine\\\vspace{2ex}}} +\makeatother + + \geometry{ + hmargin=2.6cm, + vmargin={3.5cm,3cm}, + bindingoffset=0mm, + columnsep=20pt + } + + \pagestyle{plain} + +\begin{document} + +\maketitle + +\begin{abstract}{Brief description of the package:} +This package is suitable to add chords to lyrics. The main advantages of using this package is that chords are written before the text they refer to and \LaTeX\ takes care of typesetting them above the lyrics in the right place: thanks to this we avoid the task of correctly aligning chords above the lyrics, which is tedious in the case of a monospaced font and absolutely non-trivial in the case of variable-width fonts. +\end{abstract} + +\artsection{Usage} +\artsubsection{Chords} + +The following commands typeset a chord above a given text: + +\begin{center} +\ttfamily \textbackslash\A A \quad\textbackslash\B B \quad\textbackslash\C C \quad\textbackslash\D D \quad\textbackslash\E E \quad\textbackslash\F F \quad\textbackslash\G G + +\textbackslash\Ab Ab \quad\textbackslash\Bb Bb \quad\textbackslash\Cb Cb \quad\textbackslash\Db Db \quad\textbackslash\Eb Eb \quad\textbackslash\Fb Fb \quad\textbackslash\Gb Gb + +\textbackslash\As As \quad\textbackslash\Bs Bs \quad\textbackslash\Cs Cs \quad\textbackslash\Ds Ds \quad\textbackslash\Es Es \quad\textbackslash\Fs Fs \quad\textbackslash\Gs Gs + +\textbackslash\Am Am \quad\textbackslash\Bm Bm \quad\textbackslash\Cm Cm \quad\textbackslash\Dm Dm \quad\textbackslash\Em Em \quad\textbackslash\Fm Fm \quad\textbackslash\Gm Gm + +\textbackslash\Abm Abm \quad\textbackslash\Bbm Bbm \quad\textbackslash\Cbm Cbm \quad\textbackslash\Dbm Dbm \quad\textbackslash\Ebm Ebm \quad\textbackslash\Fbm Fbm \quad\textbackslash\Gbm Gbm + +\textbackslash\Asm Asm \quad\textbackslash\Bsm Bsm \quad\textbackslash\Csm Csm \quad\textbackslash\Dsm Dsm \quad\textbackslash\Esm Esm \quad\textbackslash\Fsm Fsm \quad\textbackslash\Gsm Gsm +\end{center} + +For example \texttt{\textbackslash Bb\{text\}} produces the following: \Bb{text}. + +\ppar +Each command takes an optional argument, in order to allow users to typeset variations of the above chords. + +For example \texttt{\textbackslash G[7sus4]\{text\}} produces the following: \G[7sus4]{text}. + +\artsubsubsection{An Example: London Bridge is Falling Down} + +\begin{tabular}{p{6cm}l} +\G London bridge is falling down &\texttt{\textbackslash G London bridge is falling down}\\ + +\D[7] Falling down, \G falling down. &\texttt{\textbackslash D[7] Falling down, \textbackslash G falling down.}\\ + +\G London bridge is falling down, &\texttt{\textbackslash G London bridge is falling down,}\\ + +\D my fair \G lady. &\texttt{\textbackslash D my fair \textbackslash G lady.} +\end{tabular} + +\artsubsection{Operations on chords}\label{opts} + +It is sometimes useful to transpose a song by a certain number of half-tones. This package provides the following commands to do this: + +\begin{center}\ttfamily +\begin{tabular}{p{4cm}p{4cm}p{4cm}} + +\textbackslash transposeOneUp &\textbackslash transposeTwoUp &\textbackslash transposeThreeUp\\ + +\textbackslash transposeFourUp &\textbackslash transposeFiveUp &\textbackslash transposeSixUp\\ + +\textbackslash transposeOneDown &\textbackslash transposeTwoDown &\textbackslash transposeThreeDown\\ + +\textbackslash transposeFourDown &\textbackslash transposeFiveDown &\textbackslash transposeSixDown +\end{tabular} +\end{center} + +Things can be brought back to normal via the command \texttt{\textbackslash notranspose}. + +\ppar +Another possibility is to convert all chords with a $\flat$ to the corresponding chords with a $\sharp$ or vice-versa: this is achieved with the commands \texttt{\textbackslash sharponly} and \texttt{\textbackslash flatonly}. + +\ppar +Finally it is possible to avoid all occurrences of E$\sharp$, F$\flat$, B$\sharp$ and C$\flat$ and replace them with F, E, C and B respectively by using the command \texttt{\textbackslash normalize}. + +\artsubsection{Package Options} +All commands from \S\ref{opts} can be run at the beginning of the document by using the desired ones as package options --- the initial backslash has to be omitted of course! + +\artsubsection{Changing the Way Things Look} +The line spacing in presence of a chord is controlled by the length \texttt{\textbackslash crdheight} --- the default setting is \texttt{3ex}. + +\ppar +The font of the chord is controlled by the command \texttt{\textbackslash crdfont} --- the default setting is \texttt{\textbackslash footnotesize \textbackslash sffamily}. + +\ppar +All chords are specific instances of the command \texttt{\textbackslash CHORD}, which takes two mandatory arguments and an optional one: the first argument is concatenated to the optional argument (respectively the chord and its variation) and is typeset above the text given as second argument. + +It is possible to change the way a chord is typeset by redefining this command --- and this does not compromise the functionality of the commands in \S\ref{opts} as long as the meaning of the arguments of \texttt{\textbackslash CHORD} is not changed. + +\artsection{Contacts} +If you have comments or want to report any bug, please send a mail to \textsl{\href{mailto:gtrcrd@tex.nopkoguo.net}{gtrcrd@tex.nopkoguo.net}}. + + +\end{document}
\ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/gtrcrd/gtrcrd.sty b/Master/texmf-dist/tex/latex/gtrcrd/gtrcrd.sty new file mode 100644 index 00000000000..c7d331af2fc --- /dev/null +++ b/Master/texmf-dist/tex/latex/gtrcrd/gtrcrd.sty @@ -0,0 +1,812 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% %% +%% Package name: gtrcrd %% +%% Author: Riccardo Bresciani - gtrcrd@tex.nopkoguo.net %% +%% %% +%% Copyright 2012 Riccardo Bresciani %% +%% %% +%% Description: This package is suitable to add chords to lyrics. %% +%% The main advantages of using this package is that chords are %% +%% written before the text they refer to and LaTeX takes care of %% +%% typesetting them above the lyrics in the right place: thanks to %% +%% this we avoid the task of correctly aligning chords above the %% +%% lyrics, which is tedious in the case of a monospaced font and %% +%% absolutely non-trivial in the case of variable-width fonts. %% +%% %% +%% This work may be distributed and/or modified under the %% +%% conditions of the LaTeX Project Public License, either %% +%% version 1.3c of this license or (at your option) any %% +%% later version. %% +%% The latest version of the license is in %% +%% http://www.latex-project.org/lppl.txt %% +%% and version 1.3c or later is part of all distributions of LaTeX %% +%% version 2005/12/01 or later. %% +%% %% +%% This work consists of the files: README, gtrcrd.sty, %% +%% gtrcrd-doc.tex, gtrcrd-doc.pdf %% +%% %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\ProvidesPackage{gtrcrd} [2012/01/15 v1.0 Guitar chords] + +\newlength{\wordwidth} +\newlength{\crdwidth} +\newlength{\crdheight} +\setlength{\crdheight}{3ex} + +\newcommand{\crdfont}{\footnotesize \sffamily} + +\newcommand{\CHORD}[3][]{% +\settowidth{\wordwidth}{#3}% +\settowidth{\crdwidth}{{\crdfont #2#1}}% +#3% +\hspace{-\wordwidth}\raisebox{2.2ex}{\parbox[b][\crdheight][b]{\crdwidth}{\crdfont #2#1}}% +\addtolength{\wordwidth}{-\crdwidth}% +\hspace{\wordwidth}% +} + + +\newcommand{\crdA}[2][]{\CHORD[#1]{A}{#2}} +\newcommand{\crdB}[2][]{\CHORD[#1]{B}{#2}} +\newcommand{\crdC}[2][]{\CHORD[#1]{C}{#2}} +\newcommand{\crdD}[2][]{\CHORD[#1]{D}{#2}} +\newcommand{\crdE}[2][]{\CHORD[#1]{E}{#2}} +\newcommand{\crdF}[2][]{\CHORD[#1]{F}{#2}} +\newcommand{\crdG}[2][]{\CHORD[#1]{G}{#2}} + +\newcommand{\crdAm}[2][]{\CHORD[#1]{Am}{#2}} +\newcommand{\crdBm}[2][]{\CHORD[#1]{Bm}{#2}} +\newcommand{\crdCm}[2][]{\CHORD[#1]{Cm}{#2}} +\newcommand{\crdDm}[2][]{\CHORD[#1]{Dm}{#2}} +\newcommand{\crdEm}[2][]{\CHORD[#1]{Em}{#2}} +\newcommand{\crdFm}[2][]{\CHORD[#1]{Fm}{#2}} +\newcommand{\crdGm}[2][]{\CHORD[#1]{Gm}{#2}} + +\newcommand{\crdAb}[2][]{\CHORD[#1]{A$\flat$}{#2}} +\newcommand{\crdBb}[2][]{\CHORD[#1]{B$\flat$}{#2}} +\newcommand{\crdCb}[2][]{\CHORD[#1]{C$\flat$}{#2}} +\newcommand{\crdDb}[2][]{\CHORD[#1]{D$\flat$}{#2}} +\newcommand{\crdEb}[2][]{\CHORD[#1]{E$\flat$}{#2}} +\newcommand{\crdFb}[2][]{\CHORD[#1]{F$\flat$}{#2}} +\newcommand{\crdGb}[2][]{\CHORD[#1]{G$\flat$}{#2}} + +\newcommand{\crdAbm}[2][]{\CHORD[#1]{A$\flat$m}{#2}} +\newcommand{\crdBbm}[2][]{\CHORD[#1]{B$\flat$m}{#2}} +\newcommand{\crdCbm}[2][]{\CHORD[#1]{C$\flat$m}{#2}} +\newcommand{\crdDbm}[2][]{\CHORD[#1]{D$\flat$m}{#2}} +\newcommand{\crdEbm}[2][]{\CHORD[#1]{E$\flat$m}{#2}} +\newcommand{\crdFbm}[2][]{\CHORD[#1]{F$\flat$m}{#2}} +\newcommand{\crdGbm}[2][]{\CHORD[#1]{G$\flat$m}{#2}} + +\newcommand{\crdAs}[2][]{\CHORD[#1]{A$\sharp$}{#2}} +\newcommand{\crdBs}[2][]{\CHORD[#1]{B$\sharp$}{#2}} +\newcommand{\crdCs}[2][]{\CHORD[#1]{C$\sharp$}{#2}} +\newcommand{\crdDs}[2][]{\CHORD[#1]{D$\sharp$}{#2}} +\newcommand{\crdEs}[2][]{\CHORD[#1]{E$\sharp$}{#2}} +\newcommand{\crdFs}[2][]{\CHORD[#1]{F$\sharp$}{#2}} +\newcommand{\crdGs}[2][]{\CHORD[#1]{G$\sharp$}{#2}} + +\newcommand{\crdAsm}[2][]{\CHORD[#1]{A$\sharp$m}{#2}} +\newcommand{\crdBsm}[2][]{\CHORD[#1]{B$\sharp$m}{#2}} +\newcommand{\crdCsm}[2][]{\CHORD[#1]{C$\sharp$m}{#2}} +\newcommand{\crdDsm}[2][]{\CHORD[#1]{D$\sharp$m}{#2}} +\newcommand{\crdEsm}[2][]{\CHORD[#1]{E$\sharp$m}{#2}} +\newcommand{\crdFsm}[2][]{\CHORD[#1]{F$\sharp$m}{#2}} +\newcommand{\crdGsm}[2][]{\CHORD[#1]{G$\sharp$m}{#2}} + +\newcommand{\notranspose}{ +\let\A\crdA +\let\B\crdB +\let\C\crdC +\let\D\crdD +\let\E\crdE +\let\F\crdF +\let\G\crdG + +\let\Am\crdAm +\let\Bm\crdBm +\let\Cm\crdCm +\let\Dm\crdDm +\let\Em\crdEm +\let\Fm\crdFm +\let\Gm\crdGm + +\let\Ab\crdAb +\let\Bb\crdBb +\let\Cb\crdCb +\let\Db\crdDb +\let\Eb\crdEb +\let\Fb\crdFb +\let\Gb\crdGb + +\let\Abm\crdAbm +\let\Bbm\crdBbm +\let\Cbm\crdCbm +\let\Dbm\crdDbm +\let\Ebm\crdEbm +\let\Fbm\crdFbm +\let\Gbm\crdGbm + +\let\As\crdAs +\let\Bs\crdBs +\let\Cs\crdCs +\let\Ds\crdDs +\let\Es\crdEs +\let\Fs\crdFs +\let\Gs\crdGs + +\let\Asm\crdAsm +\let\Bsm\crdBsm +\let\Csm\crdCsm +\let\Dsm\crdDsm +\let\Esm\crdEsm +\let\Fsm\crdFsm +\let\Gsm\crdGsm +} + +\newcommand\transposeOneUp{ +\let\A\crdBb +\let\B\crdC +\let\C\crdDb +\let\D\crdEb +\let\E\crdF +\let\F\crdGb +\let\G\crdAb + +\let\Am\crdBbm +\let\Bm\crdCm +\let\Cm\crdDbm +\let\Dm\crdEbm +\let\Em\crdFm +\let\Fm\crdGbm +\let\Gm\crdAbm + +\let\Ab\crdA +\let\Bb\crdB +\let\Cb\crdC +\let\Db\crdD +\let\Eb\crdE +\let\Fb\crdF +\let\Gb\crdG + +\let\Abm\crdAm +\let\Bbm\crdBm +\let\Cbm\crdCm +\let\Dbm\crdDm +\let\Ebm\crdEm +\let\Fbm\crdFm +\let\Gbm\crdGm + +\let\As\crdB +\let\Bs\crdCs +\let\Cs\crdD +\let\Ds\crdE +\let\Es\crdFs +\let\Fs\crdG +\let\Gs\crdA + +\let\Asm\crdBm +\let\Bsm\crdCsm +\let\Csm\crdDm +\let\Dsm\crdEm +\let\Esm\crdFsm +\let\Fsm\crdGm +\let\Gsm\crdAm +} + +\newcommand\transposeTwoUp{ +\let\A\crdB +\let\B\crdCs +\let\C\crdD +\let\D\crdE +\let\E\crdFs +\let\F\crdG +\let\G\crdA + +\let\Am\crdBm +\let\Bm\crdCsm +\let\Cm\crdDm +\let\Dm\crdEm +\let\Em\crdFsm +\let\Fm\crdGm +\let\Gm\crdAm + +\let\Ab\crdBb +\let\Bb\crdC +\let\Cb\crdDb +\let\Db\crdEb +\let\Eb\crdF +\let\Fb\crdGb +\let\Gb\crdAb + +\let\Abm\crdBbm +\let\Bbm\crdCm +\let\Cbm\crdDbm +\let\Dbm\crdEbm +\let\Ebm\crdFm +\let\Fbm\crdGbm +\let\Gbm\crdAbm + +\let\As\crdC +\let\Bs\crdD +\let\Cs\crdEb +\let\Ds\crdF +\let\Es\crdG +\let\Fs\crdAb +\let\Gs\crdBb + +\let\Asm\crdCm +\let\Bsm\crdDm +\let\Csm\crdEbm +\let\Dsm\crdFm +\let\Esm\crdGm +\let\Fsm\crdAbm +\let\Gsm\crdBbm +} + +\newcommand\transposeThreeUp{ +\let\A\crdC +\let\B\crdD +\let\C\crdEb +\let\D\crdF +\let\E\crdG +\let\F\crdAb +\let\G\crdBb + +\let\Am\crdCm +\let\Bm\crdDm +\let\Cm\crdEbm +\let\Dm\crdFm +\let\Em\crdGm +\let\Fm\crdAbm +\let\Gm\crdBbm + +\let\Ab\crdB +\let\Bb\crdCs +\let\Cb\crdD +\let\Db\crdE +\let\Eb\crdFs +\let\Fb\crdG +\let\Gb\crdA + +\let\Abm\crdBm +\let\Bbm\crdCsm +\let\Cbm\crdDm +\let\Dbm\crdEm +\let\Ebm\crdFsm +\let\Fbm\crdGm +\let\Gbm\crdAm + +\let\As\crdCs +\let\Bs\crdDs +\let\Cs\crdE +\let\Ds\crdFs +\let\Es\crdGs +\let\Fs\crdA +\let\Gs\crdB + +\let\Asm\crdCsm +\let\Bsm\crdDsm +\let\Csm\crdEm +\let\Dsm\crdFsm +\let\Esm\crdGsm +\let\Fsm\crdAm +\let\Gsm\crdBm +} + +\newcommand\transposeFourUp{ +\let\A\crdCs +\let\B\crdDs +\let\C\crdE +\let\D\crdFs +\let\E\crdGs +\let\F\crdA +\let\G\crdB + +\let\Am\crdCsm +\let\Bm\crdDsm +\let\Cm\crdEm +\let\Dm\crdFsm +\let\Em\crdGsm +\let\Fm\crdAm +\let\Gm\crdBm + +\let\Ab\crdC +\let\Bb\crdD +\let\Cb\crdEb +\let\Db\crdF +\let\Eb\crdG +\let\Fb\crdAb +\let\Gb\crdBb + +\let\Abm\crdCm +\let\Bbm\crdDm +\let\Cbm\crdEbm +\let\Dbm\crdFm +\let\Ebm\crdGm +\let\Fbm\crdAbm +\let\Gbm\crdBbm + +\let\As\crdD +\let\Bs\crdE +\let\Cs\crdF +\let\Ds\crdG +\let\Es\crdA +\let\Fs\crdBb +\let\Gs\crdC + +\let\Asm\crdDm +\let\Bsm\crdEm +\let\Csm\crdFm +\let\Dsm\crdGm +\let\Esm\crdAm +\let\Fsm\crdBbm +\let\Gsm\crdCm +} + +\newcommand\transposeFiveUp{ +\let\A\crdD +\let\B\crdE +\let\C\crdF +\let\D\crdG +\let\E\crdA +\let\F\crdBb +\let\G\crdC + +\let\Am\crdDm +\let\Bm\crdEm +\let\Cm\crdFm +\let\Dm\crdGm +\let\Em\crdAm +\let\Fm\crdBbm +\let\Gm\crdCm + +\let\Ab\crdCs +\let\Bb\crdDs +\let\Cb\crdE +\let\Db\crdFs +\let\Eb\crdGs +\let\Fb\crdA +\let\Gb\crdB + +\let\Abm\crdCsm +\let\Bbm\crdDsm +\let\Cbm\crdEm +\let\Dbm\crdFsm +\let\Ebm\crdGsm +\let\Fbm\crdAm +\let\Gbm\crdBm + +\let\As\crdDs +\let\Bs\crdEs +\let\Cs\crdFs +\let\Ds\crdGs +\let\Es\crdAs +\let\Fs\crdB +\let\Gs\crdCs + +\let\Asm\crdDsm +\let\Bsm\crdEsm +\let\Csm\crdFsm +\let\Dsm\crdGsm +\let\Esm\crdAsm +\let\Fsm\crdBm +\let\Gsm\crdCsm +} + +\newcommand\transposeSixUp{ +\let\A\crdDs +\let\B\crdEs +\let\C\crdFs +\let\D\crdGs +\let\E\crdAs +\let\F\crdB +\let\G\crdCs + +\let\Am\crdDsm +\let\Bm\crdEsm +\let\Cm\crdFsm +\let\Dm\crdGsm +\let\Em\crdAsm +\let\Fm\crdBm +\let\Gm\crdCsm + +\let\Ab\crdD +\let\Bb\crdE +\let\Cb\crdF +\let\Db\crdG +\let\Eb\crdA +\let\Fb\crdBb +\let\Gb\crdC + +\let\Abm\crdDm +\let\Bbm\crdEm +\let\Cbm\crdFm +\let\Dbm\crdGm +\let\Ebm\crdAm +\let\Fbm\crdBbm +\let\Gbm\crdCm + +\let\As\crdE +\let\Bs\crdFs +\let\Cs\crdG +\let\Ds\crdA +\let\Es\crdB +\let\Fs\crdC +\let\Gs\crdD + +\let\Asm\crdEm +\let\Bsm\crdFsm +\let\Csm\crdGm +\let\Dsm\crdAm +\let\Esm\crdBm +\let\Fsm\crdCm +\let\Gsm\crdDm +} + +\newcommand{\transposeSixDown}{\transposeSixUp} + +\newcommand{\transposeFiveDown}{ +\let\A\crdE +\let\B\crdFs +\let\C\crdG +\let\D\crdA +\let\E\crdB +\let\F\crdC +\let\G\crdD + +\let\Am\crdEm +\let\Bm\crdFsm +\let\Cm\crdGm +\let\Dm\crdAm +\let\Em\crdBm +\let\Fm\crdCm +\let\Gm\crdDm + +\let\Ab\crdDs +\let\Bb\crdEs +\let\Cb\crdFs +\let\Db\crdGs +\let\Eb\crdAs +\let\Fb\crdB +\let\Gb\crdCs + +\let\Abm\crdDsm +\let\Bbm\crdEsm +\let\Cbm\crdFsm +\let\Dbm\crdGsm +\let\Ebm\crdAsm +\let\Fbm\crdBm +\let\Gbm\crdCsm + +\let\As\crdF +\let\Bs\crdG +\let\Cs\crdAb +\let\Ds\crdBb +\let\Es\crdC +\let\Fs\crdDb +\let\Gs\crdEb + +\let\Asm\crdGm +\let\Bsm\crdGm +\let\Csm\crdAbm +\let\Dsm\crdBbm +\let\Esm\crdCm +\let\Fsm\crdDbm +\let\Gsm\crdEbm +} + +\newcommand{\transposeFourDown}{ +\let\A\crdF +\let\B\crdG +\let\C\crdAb +\let\D\crdBb +\let\E\crdC +\let\F\crdDb +\let\G\crdEb + +\let\Am\crdFm +\let\Bm\crdGm +\let\Cm\crdAbm +\let\Dm\crdBbm +\let\Em\crdCm +\let\Fm\crdDbm +\let\Gm\crdEbm + +\let\Ab\crdE +\let\Bb\crdFs +\let\Cb\crdG +\let\Db\crdA +\let\Eb\crdB +\let\Fb\crdCs +\let\Gb\crdD + +\let\Abm\crdEm +\let\Bbm\crdFsm +\let\Cbm\crdGm +\let\Dbm\crdAm +\let\Ebm\crdBm +\let\Fbm\crdCsm +\let\Gbm\crdDm + +\let\As\crdFs +\let\Bs\crdGs +\let\Cs\crdA +\let\Ds\crdB +\let\Es\crdCs +\let\Fs\crdD +\let\Gs\crdE + +\let\Asm\crdFsm +\let\Bsm\crdGsm +\let\Csm\crdAm +\let\Dsm\crdBm +\let\Esm\crdCsm +\let\Fsm\crdDm +\let\Gsm\crdEm +} + +\newcommand{\transposeThreeDown}{ +\let\A\crdFs +\let\B\crdGs +\let\C\crdA +\let\D\crdB +\let\E\crdCs +\let\F\crdD +\let\G\crdE + +\let\Am\crdFsm +\let\Bm\crdGsm +\let\Cm\crdAm +\let\Dm\crdBm +\let\Em\crdCsm +\let\Fm\crdDm +\let\Gm\crdEm + +\let\Ab\crdF +\let\Bb\crdG +\let\Cb\crdAb +\let\Db\crdBb +\let\Eb\crdC +\let\Fb\crdDb +\let\Gb\crdEb + +\let\Abm\crdFm +\let\Bbm\crdGm +\let\Cbm\crdAbm +\let\Dbm\crdBbm +\let\Ebm\crdCm +\let\Fbm\crdDbm +\let\Gbm\crdEbm + +\let\As\crdG +\let\Bs\crdA +\let\Cs\crdBb +\let\Ds\crdC +\let\Es\crdD +\let\Fs\crdEb +\let\Gs\crdF + +\let\Asm\crdGm +\let\Bsm\crdAm +\let\Csm\crdBbm +\let\Dsm\crdCm +\let\Esm\crdDm +\let\Fsm\crdEbm +\let\Gsm\crdFm +} + +\newcommand{\transposeTwoDown}{ +\let\A\crdG +\let\B\crdA +\let\C\crdBb +\let\D\crdC +\let\E\crdD +\let\F\crdEb +\let\G\crdF + +\let\Am\crdGm +\let\Bm\crdAm +\let\Cm\crdBbm +\let\Dm\crdCm +\let\Em\crdDm +\let\Fm\crdEbm +\let\Gm\crdFm + +\let\Ab\crdFs +\let\Bb\crdGs +\let\Cb\crdA +\let\Db\crdB +\let\Eb\crdCs +\let\Fb\crdDs +\let\Gb\crdE + +\let\Abm\crdFsm +\let\Bbm\crdGsm +\let\Cbm\crdAm +\let\Dbm\crdBm +\let\Ebm\crdCsm +\let\Fbm\crdDsm +\let\Gbm\crdEm + +\let\As\crdGs +\let\Bs\crdAs +\let\Cs\crdB +\let\Ds\crdCs +\let\Es\crdDs +\let\Fs\crdE +\let\Gs\crdFs + +\let\Asm\crdGsm +\let\Bsm\crdAsm +\let\Csm\crdBm +\let\Dsm\crdCsm +\let\Esm\crdDsm +\let\Fsm\crdEm +\let\Gsm\crdFsm +} + +\newcommand{\transposeOneDown}{ +\let\A\crdGs +\let\B\crdAs +\let\C\crdB +\let\D\crdCs +\let\E\crdDs +\let\F\crdE +\let\G\crdFs + +\let\Am\crdGsm +\let\Bm\crdAsm +\let\Cm\crdBm +\let\Dm\crdCsm +\let\Em\crdDsm +\let\Fm\crdEm +\let\Gm\crdFsm + +\let\Ab\crdG +\let\Bb\crdA +\let\Cb\crdBb +\let\Db\crdC +\let\Eb\crdD +\let\Fb\crdEb +\let\Gb\crdF + +\let\Abm\crdGm +\let\Bbm\crdAm +\let\Cbm\crdBbm +\let\Dbm\crdCm +\let\Ebm\crdDm +\let\Fbm\crdEbm +\let\Gbm\crdFm + +\let\As\crdA +\let\Bs\crdB +\let\Cs\crdC +\let\Ds\crdD +\let\Es\crdE +\let\Fs\crdF +\let\Gs\crdG + +\let\Asm\crdAm +\let\Bsm\crdBm +\let\Csm\crdCm +\let\Dsm\crdDm +\let\Esm\crdEm +\let\Fsm\crdFm +\let\Gsm\crdGm +} + +\DeclareOption{notranspose}{ +\notranspose +} + +\DeclareOption{transposeOneUp}{ +\transposeOneUp +} + +\DeclareOption{transposeTwoUp}{ +\transposeTwoUp +} + +\DeclareOption{transposeThreeUp}{ +\transposeThreeUp +} + +\DeclareOption{transposeFourUp}{ +\transposeFourUp +} + +\DeclareOption{transposeFiveUp}{ +\transposeFiveUp +} + +\DeclareOption{transposeSixUp}{ +\transposeSixUp +} + +\DeclareOption{transposeSixDown}{ +\transposeSixDown +} + +\DeclareOption{transposeFiveDown}{ +\transposeFiveDown +} + +\DeclareOption{transposeFourDown}{ +\transposeFourDown +} + +\DeclareOption{transposeThreeDown}{ +\transposeThreeDown +} + +\DeclareOption{transposeTwoDown}{ +\transposeTwoDown +} + +\DeclareOption{transposeOneDown}{ +\transposeOneDown +} + +\newcommand{\normalize}{ +\renewcommand\crdBs[2][]{\crdC[##1]{##2}} +\renewcommand\crdEs[2][]{\crdF[##1]{##2}} +\renewcommand\crdBsm[2][]{\crdCm[##1]{##2}} +\renewcommand\crdEsm[2][]{\crdFm[##1]{##2}} + +\renewcommand\crdCb[2][]{\crdB[##1]{##2}} +\renewcommand\crdFb[2][]{\crdE[##1]{##2}} +\renewcommand\crdCbm[2][]{\crdBm[##1]{##2}} +\renewcommand\crdEbm[2][]{\crdDsm[##1]{##2}} +} + +\newcommand{\sharponly}{ +\renewcommand\crdAb[2][]{\crdGs[##1]{##2}} +\renewcommand\crdBb[2][]{\crdAs[##1]{##2}} +\renewcommand\crdCb[2][]{\crdB[##1]{##2}} +\renewcommand\crdDb[2][]{\crdCs[##1]{##2}} +\renewcommand\crdEb[2][]{\crdDs[##1]{##2}} +\renewcommand\crdFb[2][]{\crdE[##1]{##2}} +\renewcommand\crdGb[2][]{\crdFs[##1]{##2}} + +\renewcommand\crdAbm[2][]{\crdGsm[##1]{##2}} +\renewcommand\crdBbm[2][]{\crdAsm[##1]{##2}} +\renewcommand\crdCbm[2][]{\crdBm[##1]{##2}} +\renewcommand\crdDbm[2][]{\crdCsm[##1]{##2}} +\renewcommand\crdEbm[2][]{\crdDsm[##1]{##2}} +\renewcommand\crdFbm[2][]{\crdEm[##1]{##2}} +\renewcommand\crdGbm[2][]{\crdFsm[##1]{##2}} +} + +\newcommand{\flatonly}{ +\renewcommand\crdAs[2][]{\crdBb[##1]{##2}} +\renewcommand\crdBs[2][]{\crdC[##1]{##2}} +\renewcommand\crdCs[2][]{\crdDb[##1]{##2}} +\renewcommand\crdDs[2][]{\crdEb[##1]{##2}} +\renewcommand\crdEs[2][]{\crdF[##1]{##2}} +\renewcommand\crdFs[2][]{\crdGb[##1]{##2}} +\renewcommand\crdGs[2][]{\crdAb[##1]{##2}} + +\renewcommand\crdAsm[2][]{\crdBbm[##1]{##2}} +\renewcommand\crdBsm[2][]{\crdCm[##1]{##2}} +\renewcommand\crdCsm[2][]{\crdDbm[##1]{##2}} +\renewcommand\crdDsm[2][]{\crdEbm[##1]{##2}} +\renewcommand\crdEsm[2][]{\crdFm[##1]{##2}} +\renewcommand\crdFsm[2][]{\crdGbm[##1]{##2}} +\renewcommand\crdGsm[2][]{\crdAbm[##1]{##2}} +} + +\DeclareOption{sharponly}{ +\sharponly +} + +\DeclareOption{flatonly}{ +\flatonly +} + +\DeclareOption{normalize}{ +\normalize +} + +\ExecuteOptions{notranspose} +\ProcessOptions
\ No newline at end of file |