texlive[51251] Master/texmf-dist: musicography (28may19)

commits+karl at tug.org commits+karl at tug.org
Tue May 28 23:25:28 CEST 2019


Revision: 51251
          http://tug.org/svn/texlive?view=revision&revision=51251
Author:   karl
Date:     2019-05-28 23:25:28 +0200 (Tue, 28 May 2019)
Log Message:
-----------
musicography (28may19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/musicography/musicography.pdf
    trunk/Master/texmf-dist/doc/latex/musicography/musicography.tex
    trunk/Master/texmf-dist/tex/latex/musicography/musicography.sty

Modified: trunk/Master/texmf-dist/doc/latex/musicography/musicography.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/musicography/musicography.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/musicography/musicography.tex	2019-05-28 21:25:12 UTC (rev 51250)
+++ trunk/Master/texmf-dist/doc/latex/musicography/musicography.tex	2019-05-28 21:25:28 UTC (rev 51251)
@@ -27,7 +27,7 @@
     {\nolinkurl{andrewacashner at gmail.com}}%
     }%
 }
-\date{May 21, 2018}
+\date{May 28, 2019}
 
 \begin{document}
 \maketitle
@@ -39,7 +39,8 @@
 This package makes available the most commonly used symbols in writing about
 music in a way that can be used with \code{pdflatex} and looks consistent and
 attractive.
-It includes accidentals, meters, and notes of different rhythmic values.
+It includes accidentals, meters, notes of different rhythmic values, and
+automatic formatting of figured bass.
 
 This package builds on the approach used in the \code{harmony} package, where
 the symbols are taken from the MusiXTeX fonts.
@@ -58,6 +59,9 @@
 The \code{bigger} option provides larger font sizes that match better with
 certain fonts.
 
+The package now (2019) provides full support for figured-bass notation using the
+\verb|\musFig| command.
+
 The \verb|\musNumFont| command allows you to change the font of the numerals
 used.
 For example, if using the \code{ebgaramond} font package, it looks better if you
@@ -66,6 +70,7 @@
     \verb|\renewcommand{\musNumFont}[1]{\liningnums{#1}}|.
 \end{quote}
 
+
 \section{Symbols and Commands}
 
 \subsection{Accidentals}
@@ -92,6 +97,8 @@
     Eighth note (corchea) & \verb|\musEighth| or \verb|\musCorchea| &
     \musEighth\\
     Sixteenth note & \verb|\musSixteenth| & \musSixteenth\\
+    Thirty-second note & \verb|\musThirtySecond| & \musThirtySecond\\
+    Sixty-fourth note & \verb|\musSixtyFourth| & \musSixtyFourth\\
 \end{codetable}
 
 A dot may be added to any of the above by adding \code{Dotted} to the end of the
@@ -100,6 +107,8 @@
 \begin{codetable}
     Dotted whole note & \verb|\musWholeDotted| & \musWholeDotted\\
     Dotted quarter note & \verb|\musQuarterDotted| & \musQuarterDotted\\
+    Dotted thirty-second note & \verb|\musThirtySecondDotted| &
+    \musThirtySecondDotted\\
 \end{codetable}
 
 \subsection{Meter Signatures}
@@ -111,13 +120,67 @@
     Ternary with $3:2$ proportion & \verb|\meterCThreeTwo| &
     \meterCThreeTwo\\
     Spanish 17th-cent. ternary & \verb|\meterCZ| & \meterCZ\\
+    Medieval \term{tempus perfectum} & \verb|\meterO| & \meterO\\
 \end{codetable}
 
-For other time signatures, use \verb|\musMeter{}{}|. 
-The command \verb|\musFigures| is an alias for \verb|\musMeter| that can be used
-for notating figured bass. 
-Both commands take two arguments and stack the arguments vertically.
+For other time signatures, use \verb|\musMeter{}{}|; the two arguments are the
+numerator and denominator of the fraction, respectively.
 
+\subsection{Figured Bass}
+
+For figured-bass notation, use \verb|\musFig{}|.
+The command, as of May 2019 now re-implemented using the \code{stackengine}
+package, takes a single argument which may contain as many space-separated
+elements as you like. 
+(The \verb|\musFig| command is implemented with \verb|\musStack{}|, which is
+also used to for \verb|\musMeter|.)
+
+The elements in the argument will be stacked vertically and left-aligned.
+Multiple figures in a row should be enclosed in brackets if there are spaces
+between them.
+
+To align figures when there are empty slots, as in \musFig{6--5
+\noFig[5--]\musSharp}, use \verb|\noFig[]|. 
+It will insert horizontal space the
+same width as its optional argument when typeset; the default value is the
+width of the numeral 5.
+It does this using \verb|\hphantom|, so you should supply the same text in the
+argument as the figure with which you want to align. 
+The code for the example at the beginning of this paragraph was 
+\verb|\musFig{6--5 \noFig[5--]\musSharp}|.
+
+The font may be controlled by redefining \verb|\musFigFont{}|.
+Its default value is as follows:
+\begin{Verbatim}
+\NewDocumentCommand{\musFigFont}{}{%
+    \scriptsize
+    \let\musFontLarge\musFontBig
+}
+\end{Verbatim}
+This reduces the size of numbers and the music font so that they fit better with
+surrounding text and so that numerals and accidentals in the figures match.
+
+
+
+{\renewcommand{\arraystretch}{2.5}
+\small
+\begin{codetable}
+    Two figures & \verb|\musFig{7 5\musSharp}| 
+    & \musFig{7 5\musSharp}\\
+    Three figures & \verb|\musFig{7\musFlat{} 5 3}| 
+    & \musFig{7\musFlat{} 5 3}\\
+    Four figures & \verb|\musFig{7 5 4 2}| &
+    \musFig{9 7 5 3}\\
+    Voice leading & \verb|\musFig{7--6 5--4 3}| 
+    & \musFig{7--6 5--4 3}\\
+    Voice leading & \verb|\musFig{6--7 4--5 \noFig[2--]3}| 
+    & \musFig{7--6 5--4 \noFig[2--]3}\\
+    Multiple figures per row 
+    & \verb|\musFig{{6\musFlat{} 5} {\noFig[6\musFlat] \musSharp}}|
+    & \musFig{{6\musFlat{} 5} {\noFig[6\musFlat] \musSharp}}\\
+\end{codetable}}
+
+
 \subsection{Customization}
 
 It would be a simple matter of using \verb|\newcommand| or \verb|\let| to create
@@ -129,14 +192,33 @@
 
 \section{Changes}
 
-\begin{tabular}{r p{0.75\textwidth}}
-    2018/05/21 & Override semantic-markup's \verb|\fl|, \verb|\sh|, \verb|\na|
-    commands if it is loaded \\
-    2017/10/31 & Corrected glyph used for \verb|\musHalf| and documented
-    \verb|\musMeter| and \verb|\musFigures|\\
-    2017/08/29 & First version on CTAN\\
-    2017/04/12 & Created\\
-\end{tabular}
+\begin{itemize}
+    \item[2019/05/28] Bux fixes and new features, especially figured bass
+        \begin{itemize}
+            \item Fix issue 1 on Bitbucket, thanks to Christian Mondrup
+                \begin{itemize}
+                    \item Correct mistaken notehead symbol for values less than
+                        quarter note (was hollow, now filled)
+                    \item Add 32nd and 64th notes, regular and dotted varieties
+                    \item \verb|\musSymbol| is now typeset inside an
+                        \verb|\mbox| to fix alignment problems when used in
+                        tables
+                \end{itemize}
+            \item New features (some requested in issue no. 1):
+                \begin{itemize}
+                    \item Add medieval perfect meter
+                    \item Add aliases for \term{fusa} ($=$ corchea $=$ eighth note)
+                    \item Replace musStack implementation with \code{stackengine}
+                    \item Add full figured-bass support
+                \end{itemize}
+        \end{itemize}
+    \item[2018/05/21] Override semantic-markup's \verb|\fl|, \verb|\sh|,
+        \verb|\na| commands if it is loaded
+    \item[2017/10/31] Corrected glyph used for \verb|\musHalf| and documented
+        \verb|\musMeter| and \verb|\musFigures|
+    \item[2017/08/29] First version on CTAN
+    \item[2017/04/12] Created
+\end{itemize}
 
 \section{Code}
 

Modified: trunk/Master/texmf-dist/tex/latex/musicography/musicography.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/musicography/musicography.sty	2019-05-28 21:25:12 UTC (rev 51250)
+++ trunk/Master/texmf-dist/tex/latex/musicography/musicography.sty	2019-05-28 21:25:28 UTC (rev 51251)
@@ -1,8 +1,8 @@
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{musicography}[2018/05/21
+\ProvidesPackage{musicography}[2019/05/28
   Symbols for music writing with pdflatex]
 
-% Copyright 2017 Andrew A. Cashner, andrewacashner at gmail.com
+% Copyright 2019 Andrew A. Cashner, andrewacashner at gmail.com
 
 % This work may be distributed and/or modified under the 
 % conditions of the LaTeX Project Public License, either
@@ -19,6 +19,17 @@
 % and the documentation file musicography.tex.
 
 % CHANGE LOG
+% 2019-05-28 - Fix issue #1:
+%               + Correct notehead symbol for values < quarter note
+%                 (was hollow, should be filled)
+%               + Add 32nd and 64th notes regular and dotted
+%               + \musSymbol now inside an \mbox to fix alignment problems
+%            - New features (some requested in issue #1)
+%               + Add medieval perfect meter
+%               + Add aliases for fusa (= corchea = eighth note)
+%               + Replace musStack implementation with stackengine:
+%                 Now takes any number of space-separated arguments to stack
+%                 numerals, allowing for full figured-bass notation
 % 2018-05-21 Override semantic-markup's \fl, \sh, \na commands if it is loaded
 % 2017-10-31 Corrected glyph for \musHalf and documented
 %              \musMeter and \musFigures
@@ -55,7 +66,7 @@
 %  #4 kern after     
 %  #5 symbol code (e.g., \symbol{4}) 
 \NewDocumentCommand{\musSymbol}{ O{\musFont} m m m m }{%
-    {#1\kern#2\raisebox{#3}{#5}\kern#4}%
+    \mbox{#1\kern#2\raisebox{#3}{#5}\kern#4}%
 }
 
 % Accidentals
@@ -119,11 +130,17 @@
     \musStemmedNote{\symbol{7}}%
 }
 \NewDocumentCommand{\musEighth}{}{%
-    \musFlaggedNote{\symbol{8}}{\symbol{40}}%
+    \musFlaggedNote{\symbol{7}}{\symbol{40}}%
 }
 \NewDocumentCommand{\musSixteenth}{}{%
-    \musFlaggedNote{\symbol{8}}{\symbol{41}}%
+    \musFlaggedNote{\symbol{7}}{\symbol{41}}%
 }
+\NewDocumentCommand{\musThirtySecond}{}{%
+    \musFlaggedNote{\symbol{7}}{\symbol{42}}%
+}
+\NewDocumentCommand{\musSixtyFourth}{}{%
+    \musFlaggedNote{\symbol{7}}{\symbol{43}}%
+}
 
 \NewDocumentCommand{\musWholeDotted}{}{%
     \musDottedNote{\musWhole}%
@@ -140,43 +157,19 @@
 \NewDocumentCommand{\musSixteenthDotted}{}{%
     \musDottedNote{\musSixteenth}%
 }
+\NewDocumentCommand{\musThirtySecondDotted}{}{%
+    \musDottedNote{\musThirtySecond}%
+}
+\NewDocumentCommand{\musSixtyFourthDotted}{}{%
+    \musDottedNote{\musSixtyFourth}%
+}
 
-% Command to stack numerals
-% Adapted from harmony.sty's \ueber command 
-\newdimen\tmpdima
-\newdimen\tmpdimb
-\newdimen\tmpdimc
-\newdimen\tmpdimd
-\newdimen\tmpdime
-\newbox\nbxa
-\newbox\nbxb
-\newbox\nbxc
-\newbox\nbxd
-\newbox\nbxe
-\newbox\nbxf
-\newbox\nbxg
-\newbox\nbxh
-\newbox\nbxi
 
-\NewDocumentCommand{\musStack}{ m m }{%
-    \setbox\nbxi=\hbox{%
-        \setbox\nbxa=\hbox{\scriptsize{\musNumFont{#1}}}%
-        \setbox\nbxb=\hbox{\scriptsize{\musNumFont{#2}}}%
-        \ifdim\wd\nbxa>\wd\nbxb%
-        \tmpdima=\wd\nbxa%
-        \else%
-        \tmpdima=\wd\nbxb%
-        \fi%
-        \setbox\nbxa=\hbox to \tmpdima{%
-            \scriptsize\hss{\musNumFont{#1}}\hss}%
-        \setbox\nbxb=\hbox to \tmpdima{\scriptsize\hss{%
-            \musNumFont{#2}}\hss}%
-        \lower0.3ex\copy\nbxb%
-        \kern-\wd\nbxb%
-        \raise0.8\ht\nbxb%
-        \box\nbxa%
-    }%
-    \unhbox\nbxi%
+% Command to stack numerals for metrical symbols or figured bass
+% Takes any number of space-separated arguments and stacks them vertically
+\RequirePackage{stackengine}
+\NewDocumentCommand{\musStack}{ O{\musNumFont} m }{%
+    {#1\Shortstack[l]{#2}}%
 }
 
 % Meter symbols
@@ -193,10 +186,19 @@
 %  #1 number on top
 %  #2 number on bottom
 \NewDocumentCommand{\musMeter}{ m m }{%
-    \musStack{#1}{#2}\kern0.05em
+    \musStack{#1 #2}\kern0.05em
 }
 % Same command used for figured bass
-\NewDocumentCommand{\musFigures}{}{\musMeter}
+\NewDocumentCommand{\musFigFont}{}{%
+    \scriptsize
+    \let\musFontLarge\musFontBig
+}
+\NewDocumentCommand{\musFig}{ m }{%
+    \musStack[\musFigFont]{#1}%
+}
+\NewDocumentCommand{\noFig}{ O{5} }{%
+    \hphantom{#1}%
+}
 
 \NewDocumentCommand{\meterC}{}{%
     \musSymbolMeter{\symbol{83}}%
@@ -215,15 +217,22 @@
 \NewDocumentCommand{\meterCZ}{}{%
     \meterCplus{Z}%
 }
+% Perfect meter in medieval music
+\NewDocumentCommand{\meterO}{}{%
+    $\bigcirc$
+}
 
+
 % Aliases for older note names
 \NewDocumentCommand{\musSemibreve}         {}{\musWhole}
 \NewDocumentCommand{\musMinim}             {}{\musHalf}
 \NewDocumentCommand{\musSemiminim}         {}{\musQuarter}
 \NewDocumentCommand{\musCorchea}           {}{\musEighth}
+\NewDocumentCommand{\musFusa}              {}{\musEighth}
 \NewDocumentCommand{\musSemibreveDotted}   {}{\musWholeDotted}
 \NewDocumentCommand{\musMinimDotted}       {}{\musHalfDotted}
 \NewDocumentCommand{\musSeminiminimDotted} {}{\musQuarterDotted}
 \NewDocumentCommand{\musCorcheaDotted}     {}{\musEighthDotted}
+\NewDocumentCommand{\musFusaDotted}        {}{\musEighthDotted}
 
 \endinput



More information about the tex-live-commits mailing list