From 0c9aa4f80b0f44658e8ba13f2261a2386e99c774 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 25 Jan 2019 22:35:15 +0000 Subject: m-tx (24jan19) git-svn-id: svn://tug.org/texlive/trunk@49818 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/generic/m-tx/mtx.tex | 125 +++++++++++++++++--------- Master/texmf-dist/tex/latex/m-tx/mtxlatex.sty | 98 ++++++++++++++++++++ 2 files changed, 182 insertions(+), 41 deletions(-) create mode 100644 Master/texmf-dist/tex/latex/m-tx/mtxlatex.sty (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/generic/m-tx/mtx.tex b/Master/texmf-dist/tex/generic/m-tx/mtx.tex index 82ca95d111d..398ef5948f4 100644 --- a/Master/texmf-dist/tex/generic/m-tx/mtx.tex +++ b/Master/texmf-dist/tex/generic/m-tx/mtx.tex @@ -1,6 +1,6 @@ % mtx.tex © 2001–2016 Dirk Laurie License: MIT (see file LICENSE) % Some code © 2001 André van Ryckeghem License: GPL -% Corrections: see mtxtexdate, below. +% Revised font-handling copyright 2019 Bob Tennent License: GPL % All TeX commands put directly into PMX files by M-Tx are defined below, % except the following: @@ -18,8 +18,8 @@ \ifx\mtxtexversion\undefined\else\endinput\fi -\def\mtxtexversion{0.62} -\def\mtxtexdate{20 October 2016} +\def\mtxtexversion{0.63c} +\def\mtxtexdate{15 January 2019} \let\:=\relax \immediate\write10{% mtxTeX \mtxtexversion\space<\mtxtexdate>} @@ -36,62 +36,105 @@ mtxTeX \mtxtexversion\space<\mtxtexdate>} % M-Tx font definitions % \mtxeightsf etc: defines \eightsf etc by analogy to \eightrm. % \mtxEightsf etc: same, but also immediately does \eightsf. + % \mtxPalatino: replaces Computer Modern font definitions of % \eightrm, \eightit, \eightbf etc by Palatino +% \mtxTimes: replaces Computer Modern font definitions of +% \eightrm, \eightit, \eightbf etc by Times % \mtxHelvetica: replaces Computer Modern font definitions of % \eightsf etc by Helvetica -\def\mtxeightsf{\font\eightsf=cmss8} -\def\mtxEightsf{\mtxeightsf\eightsf} +\font\mtxeightsf=cmss8 +\def\mtxEightsf{\mtxeightsf} + +\font\mtxtensf=cmss10 +\def\mtxTensf{\mtxtensf} + +\font\mtxelevensf=cmss10 scaled \magstephalf +\def\mtxElevensf{\mtxelevensf} + +\font\mtxtwelvesf=cmss12 +\def\mtxTwelvesf{\mtxtwelvesf} -\def\mtxtensf{\font\tensf=cmss10} -\def\mtxTensf{\mtxtensf\tensf} +% define "big" Sans fonts for "italic" as well as "Roman" -\def\mtxelevensf{\font\elevensf=cmss10 scaled \magstephalf} -\def\mtxElevensf{\mtxelevensf\elevensf} +\font\mtxfrtsf=cmss12 scaled \magstep1 +\font\mtxfrtsi=cmssi12 scaled \magstep1 -\def\mtxtwelvesf{\font\twelvesf=cmss12} -\def\mtxTwelvesf{\mtxtwelvesf\twelvesf} +\font\mtxsvtsf=cmss12 scaled \magstep2 +\font\mtxsvtsi=cmssi12 scaled \magstep2 -\def\mtxbigsf{\font\Bigtype=cmss9 scaled \magstep1} -\def\mtxBIgsf{\font\Bigtype=cmss9 scaled \magstep2} -\def\mtxBIGsf{\font\BIGtype=cmss9 scaled \magstep3} -\def\mtxBIGsf{\font\BIGtype=cmss9 scaled \magstep4} +\font\mtxtwtysf=cmss12 scaled \magstep3 +\font\mtxtwtysi=cmssi12 scaled \magstep3 + +\font\mtxtwfvsf=cmss12 scaled \magstep4 +\font\mtxtwfvsi=cmssi12 scaled \magstep4 \def\mtxPalatino{ -\font\eightrm=pplr at 8truept -\font\eightbf=pplb at 8truept -\font\eightit=pplri at 8truept - -\font\tenrm=pplr at 10truept -\font\tenbf=pplb at 10truept -\font\tenit=pplri at 10truept - -\font\elevenrm=pplr at 11truept -\font\elevenbf=pplb at 11truept -\font\elevenit=pplri at 11truept - -\font\twelverm=pplr at 12truept -\font\twelvebf=pplb at 12truept -\font\twelveit=pplri at 12truept - -\font\bigtype=pplb at 14truept -\font\Bigtype=pplb at 17truept -\font\BIgtype=pplb at 20truept -\font\BIGtype=pplb at 25truept + \input musixplt + \def\bigtype{\bigfont\bf} + \def\Bigtype{\Bigfont\bf} + \def\BIgtype{\BIgfont\bf} + \def\BIGtype{\BIGfont\bf} + \elevenrm +} + +\def\mtxTimes{ + \input musixtmr + \def\bigtype{\bigfont\bf} + \def\Bigtype{\Bigfont\bf} + \def\BIgtype{\BIgfont\bf} + \def\BIGtype{\BIGfont\bf} + \elevenrm } \def\mtxHelvetica{ - \def\mtxeightsf{\font\eightsf=\phvr at 8truept} - \def\mtxtensf{\font\tensf=\phvr at 10truept} - \def\mtxelevensf{\font\elevensf=\phvr at 11truept} - \def\mtxtwelvesf{\font\twelvesf=\phvr at 12truept} + \font\mtxeightsf=phvr8t at 8pt + \font\mtxtensf=phvr8t at 10pt + \font\mtxelevensf=phvr8t at 11pt + \font\mtxtwelvesf=phvr8t at 12pt + + \font\mtxfrtsf=phvr8t scaled \magstep2 + \font\mtxfrtsi=phvro8t scaled \magstep2 + + \font\mtxsvtsf=phvr8t scaled \magstep3 + \font\mtxsvtsi=phvro8t scaled \magstep3 + + \font\mtxtwtysf=phvr8t scaled \magstep4 + \font\mtxtwtysi=phvro8t scaled \magstep4 + + \font\mtxtwfvsf=phvr8t scaled \magstep5 + \font\mtxtwfvsi=phvro8t scaled \magstep5 } +\def\mtxAllsf{ + \def\bigtype{ + \let\rm\mtxfrtsf + \let\it\mtxfrtsi + \rm + } + \def\Bigtype{ + \let\rm\mtxsvtsf + \let\it\mtxsvtsi + \rm + } + \def\BIgtype{ + \let\rm\mtxtwtysf + \let\it\mtxtwtysi + \rm + } + \def\BIGtype{ + \let\rm\mtxtwfvsf + \let\it\mtxtwfvsi + \rm + } + \mtxelevensf +} + + \def\mtxInstrfont{\twelvebf} -\def\mtxAllsf{\mtxeightsf\mtxtensf\mtxElevensf\mtxtwelvesf\mtxBigsf\mtxBIGsf} -\def\sit\eightit \def\srm\eightrm \def\sbf\eightbf \def\ssf\eightsf +% \def\sit\eightit \def\srm\eightrm \def\sbf\eightbf \def\ssf\eightsf % \def\elevenpt{\def\rm\elevenrm \def\it\elevenit \def\bf\elevenbf} % M-Tx music sizes diff --git a/Master/texmf-dist/tex/latex/m-tx/mtxlatex.sty b/Master/texmf-dist/tex/latex/m-tx/mtxlatex.sty new file mode 100644 index 00000000000..dfd2d509c7c --- /dev/null +++ b/Master/texmf-dist/tex/latex/m-tx/mtxlatex.sty @@ -0,0 +1,98 @@ +% mtxlatex.sty: Macro package to make music scores using Latex +% or produce LaTeX documents containing music examples +% Dirk Laurie dlaurie@na-net.ornl.gov 2001-12-27 +% Update: see \mtxdate below +% Some comments on usage appear at the bottom +\ifx\mtxlatex\undefined\else\endinput\fi +\def\mtxlatexdate{20 October 2016} +\immediate\write10{% +mtxLaTeX\space<\mtxlatexdate>} + +\usepackage{etex} + +\def\MTx{\mbox{\textbf{\textsl{M-Tx}}}} +\def\PMX{\textbf{PMX}} +\def\musixlyr{\texttt{\textbf{musixlyr}}} + +\input musixtex +\input musixltx + +% Preamble TeX commands for documents that contain .ex files +% generated by M-Tx/PMX + +\def\mtxlatex{ +\input mtx +\renewcommand{\BIGtype}{\Huge\bfseries} +\renewcommand{\BIgtype}{\huge\bfseries} +\renewcommand{\Bigtype}{\LARGE\bfseries} +\renewcommand{\bigtype}{\Large\bfseries} +% Kill the PMX definition of \parskip. +\parskip=0pt plus 1pt +} +% Extra vertical space evenly spread between systems +\renewcommand\alaligne{\stoppiece\vfill\contpiece} +\def\scoreheight{\textheight 270mm} +\def\scorewidth{\textwidth 193mm} + +\newcommand{\startscore}{\let\SmuF\startmuflex\let\EmuF\endmuflex +\scorewidth\scoreheight +\oddsidemargin -15mm\evensidemargin -15mm\topmargin -20mm +\ifx\mysizes\undefined\else\mysizes\fi +\let\startmuflex\relax\let\endmuflex\relax\let\bye\relax% +\let\nopagenumbers\relax\musicparskip} +\newcommand\headingandcontents[1]{\markboth{#1}{#1}\addcontentsline{toc} + {section}{\protect\numberline{}{#1}}} + +% The environment 'Score' is suitable for scores submitted to the +% Werner Icking music archive +\newenvironment{Score}[2]{\headingandcontents{#1} +\startscore\input #2 +}{\markboth{}{}} + +% The environment 'score' requires you to do your own input +\newenvironment{score}{\startscore}{} + +\newenvironment{excerpts}{ +\newlength\keepOSM\setlength\keepOSM\oddsidemargin +\newlength\keepTM\setlength\keepTM\topmargin +\global\setlength\oddsidemargin{-13mm} \global\setlength\topmargin{-20mm} +\let\startmuflex\relax\let\endmuflex\relax +\let\nopagenumbers\relax \let\bye\relax \let\vfill\relax \let\eject\relax +\musicparskip +\renewcommand{\BIGtype}{\huge\bfseries} +\renewcommand{\BIgtype}{\LARGE\bfseries} +\renewcommand{\Bigtype}{\Large\bfseries} +\renewcommand{\bigtype}{\large\bfseries} +}{\global\setlength\oddsidemargin\keepOSM\global\setlength\topmargin\keepTM} + +\newenvironment{mus}% +{\begin{minipage}{260mm}\startscore\musicparskip}% +{\assignlyrics1{}\assignlyrics2{}% +\gdef\mtxTitle{}\end{minipage}} + +\def\example#1#2#3#4#5#6#7#8{ +\noindent\begin{minipage}[t]{#3} +\begin{mus} \vskip #6 +\input{#1.tex} +\end{mus} +\end{minipage}\hskip #4 +\begin{minipage}[#7]{#5} \vskip #8 +\verbatiminput{#1.#2} +\end{minipage}} + +\mtxlatex + +\endinput + +============================================================================ + +\example{basename}{ext} + {musicwidth}{separation}{codewidth} + {musicvskip}{alignment}{codevskip} + +Set music example together with M-Tx (or other) code. + +basename - musicfile is basename.tex +ext - codefile is basename.ext +separation - distance between music and code minipages +alignment - c, t or b (for code minipage) -- cgit v1.2.3