summaryrefslogtreecommitdiff
path: root/macros/musixtex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-07-08 03:00:51 +0000
committerNorbert Preining <norbert@preining.info>2021-07-08 03:00:51 +0000
commitf008fc632f906448b4bdbc5cd96ab7d98e68b0b9 (patch)
tree1bd4642b99cce05d6ca1dde2577729d865f402c8 /macros/musixtex
parent4747884efc69f5b8ad51cc818467f7bbf428b815 (diff)
CTAN sync 202107080300
Diffstat (limited to 'macros/musixtex')
-rw-r--r--macros/musixtex/README2
-rw-r--r--macros/musixtex/doc/ChangeLog-133.txt6
-rw-r--r--macros/musixtex/doc/musixdoc.pdfbin1410802 -> 1410320 bytes
-rw-r--r--macros/musixtex/doc/musixdoc/frontmatter.tex2
-rw-r--r--macros/musixtex/doc/musixdoc/miscellaneous.tex17
-rw-r--r--macros/musixtex/tex/musixtex.tex137
6 files changed, 113 insertions, 51 deletions
diff --git a/macros/musixtex/README b/macros/musixtex/README
index a9ae8ac381..1d3a097d19 100644
--- a/macros/musixtex/README
+++ b/macros/musixtex/README
@@ -1,4 +1,4 @@
-This is MusiXTeX, version 1.33 (2021-07-04).
+This is MusiXTeX, version 1.33a (2021-07-07).
MusiXTeX is a TeX-based system for typesetting music.
The main author was Daniel Taupin, who died in a climbing
diff --git a/macros/musixtex/doc/ChangeLog-133.txt b/macros/musixtex/doc/ChangeLog-133.txt
index e6e4a70cc9..226ded73bf 100644
--- a/macros/musixtex/doc/ChangeLog-133.txt
+++ b/macros/musixtex/doc/ChangeLog-133.txt
@@ -1,8 +1,8 @@
-Changes from MusiXTeX 132 to 133:
+Changes from MusiXTeX 132 to 133a:
* \tabfnt etc. now uses (Helvetica) bold for tablature notes
- * replace ledger lines by slashes (/) for tablature notes below the staff
- * new commands \tzqu, \tzcup, etc. for stems without noteheads, for use in
+ * replace ledger lines by slashes (/) or numbers for tablature notes below the staff
+ * new commands \tzqu, \tzcup, etc. for tiny notes to indicate duration, for use in
tablature
diff --git a/macros/musixtex/doc/musixdoc.pdf b/macros/musixtex/doc/musixdoc.pdf
index d3410b5dde..48fc1a33af 100644
--- a/macros/musixtex/doc/musixdoc.pdf
+++ b/macros/musixtex/doc/musixdoc.pdf
Binary files differ
diff --git a/macros/musixtex/doc/musixdoc/frontmatter.tex b/macros/musixtex/doc/musixdoc/frontmatter.tex
index bd14bf64bd..7feaad8416 100644
--- a/macros/musixtex/doc/musixdoc/frontmatter.tex
+++ b/macros/musixtex/doc/musixdoc/frontmatter.tex
@@ -68,7 +68,7 @@ Since then, the only significant update to \musixtex\ has been in version 1.15 (
takes advantage of the greater capacity of the e\TeX\ version of \TeX.
This manual
is the definitive reference to all features of
-\musixtex\ version~1.32.
+\musixtex\ version~1.33a.
Novice users need not start here.
Most
diff --git a/macros/musixtex/doc/musixdoc/miscellaneous.tex b/macros/musixtex/doc/musixdoc/miscellaneous.tex
index 3375bd121b..db1ae9cf1e 100644
--- a/macros/musixtex/doc/musixdoc/miscellaneous.tex
+++ b/macros/musixtex/doc/musixdoc/miscellaneous.tex
@@ -844,7 +844,8 @@ are as follows:
\item \keyindex{tab}\verb|{|$n$\verb|}|\verb|{|$p$\verb|}|
puts $p$ on string $n$
(counting from top to bottom); $p$ is centered, using \verb|\ccharnote|.
-Ledger lines are replaced by slashes (/) for $n$ greater than the number of staff lines.
+Ledger lines are replaced by slashes (/) for $n$ greater than the number of staff lines,
+or simply the number of courses below the staff if this is greater than 3.
\item \keyindex{ltab}\verb|{|$n$\verb|}|\verb|{|$p$\verb|}|
uses \verb|\zcharnote| so $p$
spills to the right and
@@ -860,7 +861,7 @@ is a non-spacing \verb|\rtab|.
\end{itemize}
A size-dependent font \keyindex{tabfnt} is used for tab characters; Helvetica bold is the default font family.
-The default tablature style is to place the fingering notations \emph{on} the staff line;
+The default tablature style is to place fingering notations \emph{on} staff lines;
Postscript specials are used to ``blank'' staff lines below
the tab characters.
If it is desired to locate the fingering notations \emph{above} staff lines, use
@@ -957,8 +958,7 @@ The coding is
&\zql K\ibbu0g{-1}\qb0g\slur edd2\qb0e\qb0f\tqu0d\en
\NOtesp\zltab50\zltab40\ltab30&\zhl{d}\zhu{f}\qu{.h}\en
\Notes\ltab30&\cu{h}\en
-\bar%
-\zendextract
+\bar\zendextract
\end{verbatim}\end{quote}
\end{footnotesize}
@@ -1014,7 +1014,7 @@ Here is the same example with \verb|\tabstylespacetrue|:
\medskip
\noindent
-In pure tablature, note durations are typically specified by stems without noteheads immediately
+In pure tablature, note durations can be specified by tiny notes
above the staff, as in:
\medskip
@@ -1060,13 +1060,12 @@ above the staff, as in:
\end{music}
\medskip
\noindent
-Note that this notation does not
-specify the duration of \emph{every} note.
\smallskip
-A stem (without a notehead) is generated immediately above the staff using one of the commands
-\keyindex{tzqu}, \keyindex{tzqup}, \keyindex{tzcu}, \keyindex{tzcup}, \keyindex{tzccu}, \ldots\
+\noindent
+A tiny note can be generated above the staff using one of the commands
+\keyindex{tzwh}, \keyindex{tzwhp}, \keyindex{tzhu}, \keyindex{tzhup}, \keyindex{tzqu}, \keyindex{tzqup}, \keyindex{tzcu}, \keyindex{tzcup}, \keyindex{tzccu}, \ldots\
\emph{before} a spacing command. Coding
for the notes in the example above is as follows:
\begin{footnotesize}
diff --git a/macros/musixtex/tex/musixtex.tex b/macros/musixtex/tex/musixtex.tex
index a105d6dfb6..d91c665a68 100644
--- a/macros/musixtex/tex/musixtex.tex
+++ b/macros/musixtex/tex/musixtex.tex
@@ -27,13 +27,19 @@
\def\mxmajorvernumber{1}
\def\mxminorvernumber{33}
\def\mxvernumber{\mxmajorvernumber\mxminorvernumber}% make it possible to compare with \ifnum
-\def\mxversuffix{}%
+\def\mxversuffix{a}%
\edef\mxversion{\mxmajorvernumber.\mxminorvernumber\mxversuffix}
-\def\mxdate{2021-07-04}
+\def\mxdate{2021-07-07}
\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}%
\everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}%
+% version 1.33a
+%
+% improved implementations of the tablature commands:
+% + 4-7 slashes are replaced by numbers 4-7
+% + notehead-less stems are replaced by tiny notes (without ledger lines)
+
% version 1.33
%
% \tabfnt etc. now uses (Helvetica) bold
@@ -5489,6 +5495,10 @@
% %
% 1.33 RDT %
% replace ledger lines by slashes (/) for string numbers > number of staff lines %
+% %
+% 1.34 RDT %
+% replace 4-7 slashes by numbers 4-7 %
+% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcount\stringraise
@@ -5581,7 +5591,7 @@
\nslashes=\stringnum
\advance\nslashes by -\nblines
\def\numslashes{\the\nslashes}
-\ifcase\numslashes\or\ccn{-3}{\tabfnt/#2}\or\ccn{-3}{\tabfnt//#2}\or\ccn{-3}{\tabfnt///#2}\or\ccn{-3}{\tabfnt////#2}\or\ccn{-3}{\tabfnt/////#2}\or\ccn{-3}{\tabfnt//////#2}\or\ccn{-3}{\tabfnt///////#2}\fi%
+\ifcase\numslashes\or\zcn{-3}{\tabfnt/#2}\or\zcn{-3}{\tabfnt//#2}\or\zcn{-3}{\tabfnt///#2}\or\zcn{-3}{\tabfnt 4}\or\zcn{-3}{\tabfnt 5}\or\zcn{-3}{\tabfnt 6}\or\zcn{-3}{\tabfnt 7}\fi%
\else\tabbox{#1}{#2}\fi}
% left spilling \ztab
@@ -5591,7 +5601,7 @@
\nslashes=\stringnum
\advance\nslashes by -\nblines
\def\numslashes{\the\nslashes}
-\ifcase\numslashes\or\zcn{-3}{\tabfnt/#2}\or\zcn{-3}{\tabfnt//#2}\or\zcn{-3}{\tabfnt///#2}\or\zcn{-3}{\tabfnt////#2}\or\zcn{-3}{\tabfnt/////#2}\or\zcn{-3}{\tabfnt//////#2}\or\zcn{-3}{\tabfnt///////#2}\fi%
+\ifcase\numslashes\or\zcn{-3}{\tabfnt/#2}\or\zcn{-3}{\tabfnt//#2}\or\zcn{-3}{\tabfnt///#2}\or\zcn{-3}{\tabfnt 4}\or\zcn{-3}{\tabfnt 5}\or\zcn{-3}{\tabfnt 6}\or\zcn{-3}{\tabfnt 7}\fi%
\else\ltabbox{#1}{#2}\fi}
% right spilling \ztab
@@ -5601,7 +5611,7 @@
\nslashes=\stringnum
\advance\nslashes by -\nblines
\def\numslashes{\the\nslashes}
-\ifcase\numslashes\or\lcn{-3}{\tabfnt/#2}\or\lcn{-3}{\tabfnt//#2}\or\lcn{-3}{\tabfnt///#2}\or\lcn{-3}{\tabfnt////#2}\or\lcn{-3}{\tabfnt/////#2}\or\lcn{-3}{\tabfnt//////#2}\or\lcn{-3}{\tabfnt///////#2}\fi%
+\ifcase\numslashes\or\zcn{-3}{\tabfnt/#2}\or\zcn{-3}{\tabfnt//#2}\or\zcn{-3}{\tabfnt///#2}\or\zcn{-3}{\tabfnt 4}\or\zcn{-3}{\tabfnt 5}\or\zcn{-3}{\tabfnt 6}\or\zcn{-3}{\tabfnt 7}\fi%
\else\rtabbox{#1}{#2}\fi}
%
@@ -5621,38 +5631,91 @@
\ifnum\nblines=6\lower1.5\internote\box1
\else\ifnum\nblines=4\lower3.5\internote\box1\else\lower2.5\internote\box1\fi\fi}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% stems without noteheads for use above tablature staff %
-% 1.33 RDT %
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\newcount\stem@hgt % = 2 * \nblines -1
-\def\tzqu{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@qu{\the\stem@hgt}}
-\def\tzqup{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@qup{\the\stem@hgt}}
-\def\tzcu{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@cu{\the\stem@hgt}}
-\def\tzcup{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@cup{\the\stem@hgt}}
-\def\tzccu{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@ccu{\the\stem@hgt}}
-\def\tzccup{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@ccup{\the\stem@hgt}}
-\def\tzcccu{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@cccu{\the\stem@hgt}}
-\def\tzcccup{\advancefalse%
-\stem@hgt=\nblines\multiply\stem@hgt by 2\advance\stem@hgt by -1
-\def\q@u{}\@cccup{\the\stem@hgt}}
-
-
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% tiny duration notes placed above tablature staff %
+% 1.34 RDT %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcount\tiny@hgt % = 2 * \nblines + 1
+
+% need to suppress ledger lines and prevent raising dots in dotted notes
+
+\def\settiny@hgt{\tiny@hgt=\nblines\multiply\tiny@hgt by 2\advance\tiny@hgt by1}
+
+\def\tzwh{%
+\settiny@hgt
+\tinynotesize\advancefalse\def\w@h{\musixfont\nin@}\y@v\wn@width
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@w \let\n@sym\w@h
+\pl@base\setst@m\resetst@m\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzwhp{%
+\settiny@hgt
+\tinynotesize\advancefalse\def\w@h{\musixfont\nin@}\y@v\wn@width
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@w \let\n@sym\w@h
+\pl@base\setst@m\resetst@m\raise\y@i\hbox{\n@sym\musixchar\z@}\advancetrue\fi}
+
+\def\tzhu{%
+\settiny@hgt
+\tinynotesize\advancefalse
+\check@staff\getn@i{\the\tiny@hgt}\relax\y@v\qn@width
+\pl@base\setst@m\upst@m\raise\y@i\hbox{\musixfont\@ight}\advancetrue\fi}
+
+\def\tzhup{%
+\settiny@hgt
+\tinynotesize\advancefalse
+\check@staff\getn@i{\the\tiny@hgt}\relax\y@v\qn@width
+\pl@base\setst@m\upst@m\raise\y@i\hbox{\musixfont{\@ight}\musixchar\z@}\advancetrue\fi}
+
+\def\tzqu{%
+\settiny@hgt
+\tinynotesize\advancefalse
+\check@staff\getn@i{\the\tiny@hgt}\relax\y@v\qn@width
+\pl@base\setst@m\upst@m\raise\y@i\hbox{\musixfont\s@v@n}\advancetrue\fi}
+
+\def\tzqup{%
+\settiny@hgt
+\tinynotesize\advancefalse
+\check@staff\getn@i{\the\tiny@hgt}\relax\y@v\qn@width
+\pl@base\setst@m\upst@m\raise\y@i\hbox{\musixfont{\s@v@n}\musixchar\z@}\advancetrue\fi}
+
+\def\tzcu{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii\@xl
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@q \let\n@sym\q@u\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzcup{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii\@xl
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@qp \let\n@sym\q@up\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzccu{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii\@xli
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@q \let\n@sym\q@u\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzccup{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii\@xli
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@qp \let\n@sym\q@up\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzcccu{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii42
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@q \let\n@sym\q@u\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+\def\tzcccup{%
+\settiny@hgt
+\tinynotesize\advancefalse\q@symbol\n@vii42
+\check@staff\getn@i{\the\tiny@hgt}\relax\let\n@fon\g@qp \let\n@sym\q@up\y@v\qn@width
+\pl@base\setst@m\up@flag\raise\y@i\hbox{\n@sym}\advancetrue\fi}
+
+
+%%%%%%%% end of tablature support %%%%%%%%%%%%
\let\origin@lwrit@staffs\writ@staffs
\def\writ@staffs{%