From addf7c02e26bbdd9ec7eec8b4b7ee7954fbfb7aa Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 14 May 2021 20:13:45 +0000 Subject: musixtex (14may21) git-svn-id: svn://tug.org/texlive/trunk@59196 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/generic/musixtex/ChangeLog-132.txt | 6 + .../texmf-dist/doc/generic/musixtex/musixdoc.pdf | Bin 1374931 -> 1396006 bytes .../doc/generic/musixtex/musixdoc/beams.tex | 5 + .../doc/generic/musixtex/musixdoc/extensions.tex | 34 ++++ .../doc/generic/musixtex/musixdoc/frontmatter.tex | 4 +- .../generic/musixtex/musixdoc/miscellaneous.tex | 6 +- .../doc/generic/musixtex/musixdoc/musixdoc.sty | 1 + .../doc/generic/musixtex/scripts/musixflx.pdf | Bin 4074 -> 9286 bytes .../texmf-dist/tex/generic/musixtex/musixtex.tex | 13 +- .../texmf-dist/tex/generic/musixtex/musixvbm.tex | 211 +++++++++++++++++++++ 10 files changed, 271 insertions(+), 9 deletions(-) create mode 100644 Master/texmf-dist/doc/generic/musixtex/ChangeLog-132.txt create mode 100644 Master/texmf-dist/tex/generic/musixtex/musixvbm.tex (limited to 'Master') diff --git a/Master/texmf-dist/doc/generic/musixtex/ChangeLog-132.txt b/Master/texmf-dist/doc/generic/musixtex/ChangeLog-132.txt new file mode 100644 index 00000000000..2d288c95bcb --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/ChangeLog-132.txt @@ -0,0 +1,6 @@ + +Changes from MusiXTeX 131 to 132: + + * commented out spurious \let\doublebar\doublebar@II + * forbid line-breaking at \zdoublebar + * new add-on musixvbm.tex to support vectorized beams diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf b/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf index 6c62fbdec48..8503c824110 100644 Binary files a/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf and b/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf differ diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex index 2805e0aff61..6cf562a9c3c 100644 --- a/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex @@ -620,3 +620,8 @@ In this example we see not only multiple uses of \keyindex{nextstaff} and \keyindex{prevstaff}, but also the character \verb|*| to make virtual beam notes (see Section~\ref{CollectiveCoding}). + + \section{Discontinuities in Long Beams} +Beams are normally produced by \texttt{musixtex} using special fonts. Unfortunately, very long beams may have +unsightly discontinuities (gaps or bumps). See Section~\ref{musixvbm} +for an experimental solution to this problem. diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex index 7d60a4dbc58..5bf8dd667d8 100644 --- a/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex @@ -2176,6 +2176,40 @@ Available are: \keyindex{qbppp} and \keyindex{zqbppp}. + \section{musixvbm}\ixtt{musixvbm.tex} +\label{musixvbm} +Beams are normally produced by \texttt{musixtex} using special fonts. Unfortunately, very long beams may have +unsightly discontinuities (gaps or bumps). This experimental add-on +(by Hiroaki \textsc{Morimoto}) produces vectorized beams without these +discontinuities. Compare +\begin{description} +\item{} +\begin{music} +\nostartrule +\setclef1{\bass} +\startextract +\nnotes\ibbl0G1\qb0{GJKLMLMLMLMLMLMK}\tqb0L\en +\endextract +\end{music} +\end{description} +and +\begin{description} +\item{} +\begin{music} +\input musixvbm +\nostartrule +\setclef1{\bass} +\startextract +\nnotes\ibbl0G1\qb0{GJKLMLMLMLMLMLMK}\tqb0L\en +\endextract +\end{music} +\end{description} +especially when magnified. + +The only known disadvantage is that some \texttt{dvi} viewers +including \texttt{xdvi} and \texttt{yap} do not support the \texttt{tpic} specials +that implement the vectorized beams so that no beams are shown; however, Postscript and PDF +output generated using \texttt{dvips} and \texttt{ps2pdf} (or \texttt{dvipdfm}) should be satisfactory. \section{tuplet} diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex index e1402cfb3e6..e0d9515830c 100644 --- a/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex @@ -1,6 +1,6 @@ \title{\Huge\bfseries\musixtex\\[\bigskipamount] \LARGE\bfseries Using \TeX{} to write polyphonic\\or -instrumental music\\\Large\itshape Version 1.31} +instrumental music\\\Large\itshape Version 1.32} \author{} @@ -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.30. +\musixtex\ version~1.32. Novice users need not start here. Most diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex index f212b769d74..a9e8fad4bbf 100644 --- a/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex @@ -48,9 +48,9 @@ or \section{Accents} You may use\footnote{Note from the editor: the reason the names of some of -these macros don't seem to be constructed to suggest the terms used in the -descriptions is that whoever originally defined the macros had in mind terms -that did not agree with normal English usage.} +these macros don't seem to suggest the terms used in the +descriptions is that apparently Daniel Taupin had in mind other terms, +such as \emph{pizzicato}.} \begin{itemize}\setlength{\itemsep}{0ex} \item \keyindex{upz}\pitchp~(upper \itxem{staccato}) to put a dot above a note head at pitch $p$, diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.sty b/Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.sty index d752fc8b027..95b9c5a2915 100644 --- a/Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.sty +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.sty @@ -47,6 +47,7 @@ \usepackage{textcomp} \input musixtex +%\input musixvbm % experimental vectorized beams \input musixbm \input musixcho \input musixdat diff --git a/Master/texmf-dist/doc/generic/musixtex/scripts/musixflx.pdf b/Master/texmf-dist/doc/generic/musixtex/scripts/musixflx.pdf index 934b9097b9d..0d6b152bc78 100644 Binary files a/Master/texmf-dist/doc/generic/musixtex/scripts/musixflx.pdf and b/Master/texmf-dist/doc/generic/musixtex/scripts/musixflx.pdf differ diff --git a/Master/texmf-dist/tex/generic/musixtex/musixtex.tex b/Master/texmf-dist/tex/generic/musixtex/musixtex.tex index ba5b4f38801..9cf493ca184 100644 --- a/Master/texmf-dist/tex/generic/musixtex/musixtex.tex +++ b/Master/texmf-dist/tex/generic/musixtex/musixtex.tex @@ -25,15 +25,20 @@ \def\mufl@x{0.83}% \def\mxmajorvernumber{1} -\def\mxminorvernumber{31} +\def\mxminorvernumber{32} \def\mxvernumber{\mxmajorvernumber\mxminorvernumber}% make it possible to compare with \ifnum \def\mxversuffix{}% \edef\mxversion{\mxmajorvernumber.\mxminorvernumber\mxversuffix} -\def\mxdate{2021-01-07} +\def\mxdate{2021-05-13} \immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}% \everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}% +% version 1.32 + +% commented out spurious \let\doublebar\doublebar@II +% forbid line-breaking at \zdoublebar + % version 1.31 % % defined \zzdoublebar, \zzbar, \zendpiece @@ -2307,7 +2312,7 @@ \let\T@bil\iftrue \let\everyst@ff\everystaff \let\fil@spc\empty \let\fil@termskip\empty \let\fil@signs\empty \let\fil@barno\empty \let\leftrepeat\leftrepeat@II \let\leftrightrepeat\leftrightrepeat@II - \let\doublebar\doublebar@II +% \let\doublebar\doublebar@II % commented out by RDT version 1.32 \piece@beginc\Writ@meters\lastbarpos\lin@pos\let\pdl@cut\empty\addspace\afterruleskip} %%% 1.21: added \lastbarpos and \pdl@cut settings @@ -2613,7 +2618,7 @@ \let\zleftrightrepeat\zleftrightrepeat@II % RDT 1.28 -\def\zdoublebar{\advance\barno\m@ne\doublebar} % RDT 1.30 +\def\zdoublebar{\advance\barno\m@ne\setdoublebar\xbar} % RDT revised 1.32 \def\zzdoublebar{% % RDT 1.31 \advance\barno\m@ne% diff --git a/Master/texmf-dist/tex/generic/musixtex/musixvbm.tex b/Master/texmf-dist/tex/generic/musixtex/musixvbm.tex new file mode 100644 index 00000000000..09fa03da422 --- /dev/null +++ b/Master/texmf-dist/tex/generic/musixtex/musixvbm.tex @@ -0,0 +1,211 @@ +%% +%% musixvbm.tex - MusiXTeX Extention, Vectorized Beams (& crescendos) +%% by tpic specials / pdfTeX raw literal +%% +%% Copyright (C) 2000-2007 Hiroaki MORIMOTO (Kuuku) +%% +%% This program is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; either version 2 +%% of the License, or any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +%% +%% \def\domain{nifty.com} +%% Author: +%% Hiroaki MORIMOTO +%% Tokyo, Japan +%% URL: http://kuuku.no.coocan.jp/pub/musixtex/index-e.html +%% +%% based on musixtex.tex T.104, line 3255-3290. +%% MusiXTeX : (C) Daniel Taupin et al. +%% +%% January 1, 2007 version 1.20-beta6 +%% This is a successor of `musixtpb.tex' ver.1.10. +%% +\ifx\ifvectorizedbeam\undefined\else\endinput\fi +\immediate\write16{MusiXTeX Extention, Vectorized Beams and crescendos v1.20-beta6 <2007/01/01>}% +% +\edef\catcodeat{\the\catcode`\@}\catcode`\@=11 +% +% Allocation of registers +% No register is required except for scratch (\dimen@, \count@) +% +% Modes definition (default: true) +\newif\ifvectorizedbeam \vectorizedbeamtrue +% +% Operation mode automatic selection (v1.20) +% +\let\@beammodesel\relax% +\ifx\pdftexversion\undefined\else% + \ifnum\pdfoutput>0\relax + \immediate\write16{musixvbm: uses pdfTeX raw literal}% + \edef\@beammodesel{pdftex}% + \fi +\fi +\ifx\@beammodesel\relax + \immediate\write16{musixvbm: uses tpic specials}% + \edef\@beammodesel{tpic}% +\fi +% +% Overriding beam termination code (v1.20) +% +\let\@beam@font=\@beam\relax +\def\@beam{% + \ifvectorizedbeam + \csname @beam@\@beammodesel\endcsname + \else + \@beam@font + \fi +}% +% +% Main routine for tpic-version beam +% \y@ii : length, \b@p : slope, \y@i : altitude +% +\def\@beam@tpic{% + % X of end + \@dimentomil{\y@ii}{\@Xend}% + % Y of start + \y@iii\y@i + \advance\y@iii -\b@amthick + \@dimentomil{-\y@iii}{\@Ystart@l}% + \advance\y@iii \tw@\b@amthick + \@dimentomil{-\y@iii}{\@Ystart@u}% + % Y of end + \y@iv\y@i + \dimen@=\b@p\y@ii \divide\dimen@ \tw@nty% \tw@nty=20 def'd in musixtex.tex + \advance\y@iv \dimen@ + \advance\y@iv -\b@amthick + \@dimentomil{-\y@iv}{\@Yend@l}% + \advance\y@iv \tw@\b@amthick + \@dimentomil{-\y@iv}{\@Yend@u}% +% \special{pn 1}% + \special{sh 1}% + \@addbeampath{0}{\@Ystart@l}% + \@addbeampath{\@Xend}{\@Yend@l}% + \@addbeampath{\@Xend}{\@Yend@u}% + \@addbeampath{0}{\@Ystart@u}% + \@addbeampath{0}{\@Ystart@l}% + \special{ip}% + \kern\y@ii +}% +% +% +% Subroutines for tpic-version beam +% +\def\@dimentomil#1#2{{% + % 1m-in = 0.07227pt, 1pt = 13.837m-in + % \count@=\count255 \dimen@=\dimen0 def'd in plain + \dimen@=#1\relax\dimen@=13.837\dimen@\relax + \count@\dimen@ + \ifnum\count@>0 + \advance\count@ by 32768 + \else + \advance\count@ by -32768 + \fi + \divide\count@ by 65536 + \xdef#2{\the\count@}}}% +% +\def\@addbeampath#1#2{\special{pa #1 #2}}% +% +% +% Main routine for pdfTeX +% +\def\@beam@pdftex{% + % X of end + \edef\@Xend{\strip@pt\y@ii}% + % Y of start + \y@iii\y@i + \advance\y@iii -\b@amthick + \edef\@Ystart@l{\strip@pt\y@iii}% + \advance\y@iii \tw@\b@amthick + \edef\@Ystart@u{\strip@pt\y@iii}% + % Y of end + \y@iv\y@i + \dimen@=\b@p\y@ii \divide\dimen@ \tw@nty% \tw@nty=20 def'd in musixtex.tex + \advance\y@iv \dimen@ + \advance\y@iv -\b@amthick + \edef\@Yend@l{\strip@pt\y@iv}% + \advance\y@iv \tw@\b@amthick + \edef\@Yend@u{\strip@pt\y@iv}% + \pdfliteral{q 0 g 0 \@Ystart@l\space m \@Xend\space\@Yend@l\space l \@Xend\space\@Yend@u\space l 0 \@Ystart@u\space l 0 \@Ystart@l\space l f Q}% + \kern\y@ii +}% +% +% Subroutines for pdfTeX +% (taken from latex.ltx 2003/12/01) +\begingroup + \catcode`P=12 + \catcode`T=12 + \lowercase{% + \def\x{\def\rem@pt##1.##2PT{##1\ifnum##2>\z@.##2\fi}}}% + \expandafter\endgroup\x +\def\strip@pt{\expandafter\rem@pt\the}% +% +% +% vectorized version of crescendo, decrescendo (under construction) +% +\let\C@cresc@font=\C@cresc\relax +% +% for tpic-version crescendo +% #1=length (any TeX dimension, no limit)) +\def\C@cresc@tpic#1{% + \y@iv#1\relax +% \rlap{\vrule width\y@iv height1pt}% + \@dimentomil{\y@iv}{\@Xend}% + \dimen@=2.5pt \advance\dimen@ by.00125\y@iv\relax% see musixspx.mf + \@dimentomil{\dimen@}{\@Yend@l}% + \special{pn 6}% 0.4pt=5.5348mil see musixspx.mf + \ifnum\n@ii=\@cxv% decrescendo see musixtex.tex T.112 line 3870 + \@addbeampath{0}{\@Yend@l}% + \@addbeampath{\@Xend}{0}% + \special{fp}% + \@addbeampath{0}{-\@Yend@l}% + \@addbeampath{\@Xend}{0}% + \special{fp}% + \else + \@addbeampath{\@Xend}{\@Yend@l}% + \@addbeampath{0}{0}% + \special{fp}% + \@addbeampath{\@Xend}{-\@Yend@l}% + \@addbeampath{0}{0}% + \special{fp}% + \fi +% \C@cresc@font#1% +}% +% +% for pdfTeX-version crescendo +% #1=length (any TeX dimension, no limit)) +\def\C@cresc@pdftex#1{% + \y@iv#1\relax +% \rlap{\vrule width\y@iv height1pt}% + \edef\@Xend{\strip@pt\y@iv}% + \dimen@=2.5pt \advance\dimen@ by.00125\y@iv\relax% see musixspx.mf + \edef\@Yend@l{\strip@pt\dimen@}% + \ifnum\n@ii=\@cxv% decrescendo see musixtex.tex T.112 line 3870 + \pdfliteral{.4 w q 0 g 0 \@Yend@l\space m \@Xend\space 0 l S Q q 0 g 0 -\@Yend@l\space m \@Xend\space 0 l S Q}% + \else + \pdfliteral{.4 w q 0 g \@Xend\space \@Yend@l\space m 0 0 l S Q q 0 g \@Xend\space -\@Yend@l\space m 0 0 l S Q}% + \fi +% \C@cresc@font#1% +}% +% +% Overriding crescendo (v1.20) +% +\def\C@cresc#1{% + \ifvectorizedbeam + \csname C@cresc@\@beammodesel\endcsname#1 + \else + \C@cresc@font#1 + \fi +}% +% +\catcode`\@=\catcodeat +\endinput -- cgit v1.2.3