summaryrefslogtreecommitdiff
path: root/macros/musixtex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-01-08 03:01:46 +0000
committerNorbert Preining <norbert@preining.info>2021-01-08 03:01:46 +0000
commitb3f791edc2a8218e3e64f40d7c10d1310362972c (patch)
treea0e388e019e52634b56ab5a7576868dd3ccf8b43 /macros/musixtex
parent1dad166b3cb710b4aa32b8c21b91dbca02b2e408 (diff)
CTAN sync 202101080301
Diffstat (limited to 'macros/musixtex')
-rw-r--r--macros/musixtex/README2
-rw-r--r--macros/musixtex/doc/ChangeLog-131.txt4
-rw-r--r--macros/musixtex/doc/musixdoc.pdfbin1373998 -> 1374931 bytes
-rw-r--r--macros/musixtex/doc/musixdoc/barlines.tex4
-rw-r--r--macros/musixtex/doc/musixdoc/frontmatter.tex2
-rw-r--r--macros/musixtex/doc/musixdoc/layout.tex5
-rw-r--r--macros/musixtex/doc/musixdoc/repeats.tex2
-rw-r--r--macros/musixtex/doc/musixdoc/restsdoc.tex2
-rw-r--r--macros/musixtex/doc/scripts/musixtex.124
-rw-r--r--macros/musixtex/doc/scripts/musixtex.pdfbin23215 -> 23518 bytes
-rwxr-xr-xmacros/musixtex/scripts/musixtex.lua48
-rw-r--r--macros/musixtex/tex/musixps.tex5
-rw-r--r--macros/musixtex/tex/musixtex.tex60
13 files changed, 110 insertions, 48 deletions
diff --git a/macros/musixtex/README b/macros/musixtex/README
index 3e87b0e509..248beeb18b 100644
--- a/macros/musixtex/README
+++ b/macros/musixtex/README
@@ -1,4 +1,4 @@
-This is MusiXTeX, version 1.30 (2020-03-20).
+This is MusiXTeX, version 1.31 (2021-01-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-131.txt b/macros/musixtex/doc/ChangeLog-131.txt
new file mode 100644
index 0000000000..93fac608e5
--- /dev/null
+++ b/macros/musixtex/doc/ChangeLog-131.txt
@@ -0,0 +1,4 @@
+
+Changes from MusiXTeX 130 to 131:
+
+ * defined \zzdoublebar, \zzbar, \zendpiece
diff --git a/macros/musixtex/doc/musixdoc.pdf b/macros/musixtex/doc/musixdoc.pdf
index 073774546f..6c62fbdec4 100644
--- a/macros/musixtex/doc/musixdoc.pdf
+++ b/macros/musixtex/doc/musixdoc.pdf
Binary files differ
diff --git a/macros/musixtex/doc/musixdoc/barlines.tex b/macros/musixtex/doc/musixdoc/barlines.tex
index 92cd5624c7..b3f1d545a7 100644
--- a/macros/musixtex/doc/musixdoc/barlines.tex
+++ b/macros/musixtex/doc/musixdoc/barlines.tex
@@ -17,7 +17,9 @@ by a double bar.
There is no specific command to print a thin-thick double bar line, but
\keyindex{setdoubleBAR} will cause one in the same cases where
\verb|\setdoublebar| would cause a thin-thin double bar line.
-To typeset a double-bar line in the middle of a bar, use \keyindex{zdoublebar}.
+To typeset a double-bar line in the middle of a bar, use \keyindex{zdoublebar};
+use \keyindex{zzdoublebar} to force the mid-bar double-bar line to the end
+of a system.
To make the next bar line invisible, use \keyindex{setemptybar} before
\verb|\bar|.
diff --git a/macros/musixtex/doc/musixdoc/frontmatter.tex b/macros/musixtex/doc/musixdoc/frontmatter.tex
index 64be0c29fe..e1402cfb3e 100644
--- a/macros/musixtex/doc/musixdoc/frontmatter.tex
+++ b/macros/musixtex/doc/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.30}
+instrumental music\\\Large\itshape Version 1.31}
\author{}
diff --git a/macros/musixtex/doc/musixdoc/layout.tex b/macros/musixtex/doc/musixdoc/layout.tex
index 5d2b353b79..a22a88255c 100644
--- a/macros/musixtex/doc/musixdoc/layout.tex
+++ b/macros/musixtex/doc/musixdoc/layout.tex
@@ -11,7 +11,8 @@ You can force a line or page break by replacing \keyindex{bar} with
to forbid line-breaking at a particular bar, replace \verb|\bar|
with \keyindex{xbar}. To force a line or page break where there is
no bar line, use \keyindex{zalaligne} or \keyindex{zalapage}. To mark any
-mid-bar location as an optional line-breaking point, use \keyindex{zbar}.
+mid-bar location as an optional line-breaking point, use \keyindex{zbar};
+to force the mid-bar bar line to the end of a system, use \keyindex{zzbar}.
The heavy final double bar of a piece is one of the consequences of
\keyindex{Endpiece} or \keyindex{Stoppiece}. If you just want to terminate
@@ -19,7 +20,7 @@ the text with a simple bar, say \keyindex{stoppiece} or \keyindex{endpiece}.
To terminate it with no bar line at all, code \keyindex{zstoppiece}.
If you want to suppress right-justification of the last line of a score,
use \keyindex{raggedstoppiece}; the bar line can be suppressed by
-using \keyindex{setemptybar}.
+using \keyindex{zendpiece} (or \keyindex{setemptybar}).
Once you have stopped the score by any of these means, you may want to restart
it, and there are several ways to do so. If you don't need to change the key
diff --git a/macros/musixtex/doc/musixdoc/repeats.tex b/macros/musixtex/doc/musixdoc/repeats.tex
index 5924d92d43..a0c89b5f59 100644
--- a/macros/musixtex/doc/musixdoc/repeats.tex
+++ b/macros/musixtex/doc/musixdoc/repeats.tex
@@ -73,7 +73,7 @@ correctly adjusted, using \keyindex{writezbarno} for the continuation
if \keyindex{systemnumbers} is in use.
As an example, here is
-a \emph{bour\'ee} by G.-F.~Handel coded using \verb|\zleftrepeat| at the beginning
+a \emph{bourr\'ee} by G.-F.~Handel coded using \verb|\zleftrepeat| at the beginning
of the \textbf{A} section and \verb|\zzleftrightrepeat|
between the \textbf{A} and the \textbf{B} sections:
diff --git a/macros/musixtex/doc/musixdoc/restsdoc.tex b/macros/musixtex/doc/musixdoc/restsdoc.tex
index 1e3a33431c..2bf4aebfb6 100644
--- a/macros/musixtex/doc/musixdoc/restsdoc.tex
+++ b/macros/musixtex/doc/musixdoc/restsdoc.tex
@@ -83,6 +83,7 @@ half rest. The ordinary \verb|\pause| or
must be added to distinguish between the whole and the half rest. The commands,
which are non-spacing\footnote{Editor's note: The reason for having defined these
as non-spacing is not obvious}, are
+are
\begin{itemize}\setlength{\itemsep}{0ex}
\item \keyindex{liftpause}~$n$ to get a
\hbox to10pt{\liftpause{-2}\hss}
@@ -95,6 +96,7 @@ as non-spacing is not obvious}, are
\item \keyindex{lifthpausep}~$n$ to get
\hbox to10pt{\lifthpausep{-1}\hss} raised the same way.
\end{itemize}
+
%\check
\section{Bar-centered rests}\label{barcentered}
Sometimes it is necessary to place a rest (or some other symbols) exactly in the middle
diff --git a/macros/musixtex/doc/scripts/musixtex.1 b/macros/musixtex/doc/scripts/musixtex.1
index 839d07a882..59b6c8874e 100644
--- a/macros/musixtex/doc/scripts/musixtex.1
+++ b/macros/musixtex/doc/scripts/musixtex.1
@@ -1,9 +1,9 @@
.\" This manpage is licensed under the GNU Public License
-.TH MUSIXTEX 1 2020-03-20 "musixtex version 0.22" ""
+.TH MUSIXTEX 1 2020-05-21 "musixtex version 0.23" ""
.SH NAME
-musixtex \- processes MusiXTeX files, using pre-processors prepmx, pmxab and autosp as necessary,
-and then deletes intermediate and log files (unless
+musixtex \- processes MusiXTeX files, using pre-processors prepmx, xml2pmx, pmxab and autosp
+as necessary, and then deletes intermediate and log files (unless
.B -i
is used)
.SH SYNOPSIS
@@ -13,7 +13,7 @@ is used)
.I option
|
.I jobname
-[ .mtx | .pmx | .aspc | .tex | .ltx ] } ...
+[ .xml | .mtx | .pmx | .aspc | .tex | .ltx ] } ...
.SH DESCRIPTION
.TP
If a jobname argument has a .tex extension, the default effect is to process the file using
@@ -39,6 +39,10 @@ If a jobname argument has a .pmx extension, the file is first preprocessed using
.BR pmxab (1)
and the resulting .tex file is processed as above.
.P
+If a jobname argument has a .xml extension, the file is first preprocessed using
+.BR xml2pmx (1)
+and the resulting .pmx file is processed as above.
+.P
If a jobname argument has a .mtx extension, the file is first preprocessed using
.BR prepmx (1)
and the resulting .pmx file is processed as above.
@@ -55,6 +59,8 @@ If a jobname argument has a .aspc extension, the file is first preprocessed usin
and the resulting .tex or .ltx file is processed as above.
.P
If a jobname argument has none of these extensions, the script will look for a file
+.IR jobname .xml
+or
.IR jobname .mtx
or
.IR jobname .pmx
@@ -128,6 +134,11 @@ use
.B aspcx
as the aspc preprocessor; e.g., -A "autosp -l".
.TP
+.B -L xmlx
+use
+.B xmlx
+as the xml preprocessor; e.g., -L "./XML2PMX".
+.TP
.B -t
stop processing at the tex/mid files
.TP
@@ -184,9 +195,10 @@ If the -F option is used, options -l and -p need to be set if the engine name do
.BR dvipdfm (1),
.BR dvips (1),
.BR pmxab (1),
-.BR pmxchords (1)
+.BR pmxchords (1),
.BR prepmx (1),
-.BR ps2pdf (1)
+.BR ps2pdf (1),
+.BR xml2pmx (1)
and musixdoc.pdf.
.SH AUTHOR
This manual page was written by Bob Tennent <rdt@cs.queensu.ca>.
diff --git a/macros/musixtex/doc/scripts/musixtex.pdf b/macros/musixtex/doc/scripts/musixtex.pdf
index ec49d4a3d6..30246ff59f 100644
--- a/macros/musixtex/doc/scripts/musixtex.pdf
+++ b/macros/musixtex/doc/scripts/musixtex.pdf
Binary files differ
diff --git a/macros/musixtex/scripts/musixtex.lua b/macros/musixtex/scripts/musixtex.lua
index 5f600b9955..930e90d70f 100755
--- a/macros/musixtex/scripts/musixtex.lua
+++ b/macros/musixtex/scripts/musixtex.lua
@@ -1,10 +1,10 @@
#!/usr/bin/env texlua
-VERSION = "0.22"
+VERSION = "0.23a"
--[[
- musixtex.lua: processes MusiXTeX files using prepmx and/or pmxab and/or
- autosp as pre-processors (and deletes intermediate files)
+ musixtex.lua: processes MusiXTeX files using xml2pmx and/or prepmx and/or pmxab
+ and/or autosp as pre-processors (and deletes intermediate files)
(c) Copyright 2011-2020 Bob Tennent rdt@cs.queensu.ca
and Dirk Laurie dirk.laurie@gmail.com
@@ -29,6 +29,12 @@ VERSION = "0.22"
ChangeLog:
+ version 0.23a 2020-08-14 RDT
+ pmxprep files now deleted by xml2pmx
+
+ version 0.23 2020-05-21 RDT
+ added support for xml2pmx pre-preprocessing
+
version 0.22 2020-03-20 RDT
add -X option
add -version, --version, -help, --help options
@@ -131,12 +137,12 @@ local orig_print = print
function usage()
orig_print
[[
-Usage: [texlua] musixtex.lua { option | basename[.mtx | .pmx | .aspc | .tex | .ltx] } ...
+Usage: [texlua] musixtex.lua { option | basename[ .xml | .mtx | .pmx | .aspc | .tex | .ltx] } ...
When no extension is given, extensions are tried in the above order
- until a source file is found. Preprocessing goes mtx-pmx-tex or
- aspc-etex/ltx, with the entry point determined by the extension.
+ until a source file is found. Preprocessing goes xml-pmx-tex or mtx-pmx-tex or
+ aspc-tex, with the entry point determined by the extension.
The normal route after preprocessing goes tex-dvi-ps-pdf, but shorter
- routes are also available, see the options. The default processing route
+ routes are also available, see the options. The default 3-pass processing route
for .tex files is etex-musixflx-etex.
Options: -v, --version version
-h, --help help
@@ -148,9 +154,10 @@ Options: -v, --version version
-P ps2pdfxx use ps2pdfxx as the Postscript processor
-c preprocess pmx file using pmxchords
-m stop at pmx
- -M prepmxx use prepmxx as the mtx preprocessor
- -A autospx use autospx as the aspc preprocessor
- -X pmxabx use pmxabx as the pmx preprocessor
+ -M prepmxx use prepmxx as the mtx preprocessor
+ -A autospx use autospx as the aspc preprocessor
+ -X pmxabx use pmxabx as the pmx preprocessor
+ -L xmlx use xmlx as the xml preprocessor
-t stop at tex/mid
-s stop at dvi
-g stop at ps
@@ -207,6 +214,7 @@ end
-- dvi == false "do not process the DVI file" (but stop after TeX)
local dvips = "dvips -e0"
function defaults()
+ xml2pmx = "xml2pmx"
prepmx = "prepmx"
pmx = "pmxab"
autosp = "autosp"
@@ -340,6 +348,9 @@ function process_option(this_arg)
elseif this_arg == "-A" then
narg = narg+1
autosp = arg[narg]
+ elseif this_arg == "-L" then
+ narg = narg+1
+ xml2pmx = arg[narg]
elseif this_arg == "-q" then
if not tempname then
tempname = tempname or os.tmpname()
@@ -360,19 +371,19 @@ end
function find_file(this_arg)
basename, extension = this_arg:match"(.*)%.(.*)"
- extensions = {["mtx"] = true, ["pmx"] = true, ["aspc"] = true, ["tex"] = true, ["ltx"] = true}
+ extensions = {["xml"] = true, ["mtx"] = true, ["pmx"] = true, ["aspc"] = true, ["tex"] = true, ["ltx"] = true}
if extensions[extension] then
return basename, extension
end
basename, extension = this_arg, null
- for ext in ("mtx,pmx,aspc,tex,ltx"):gmatch"[^,]+" do
+ for ext in ("xml,mtx,pmx,aspc,tex,ltx"):gmatch"[^,]+" do
if exists (basename .. "." .. ext) then
extension = ext
break
end
end
if extension == null then
- print("!! No file " .. basename .. ".[mtx|pmx|aspc|tex|ltx]")
+ print("!! No file " .. basename .. ".[xml|mtx|pmx|aspc|tex|ltx]")
exit_code = exit_code+1
return
end
@@ -381,14 +392,21 @@ end
function preprocess(basename,extension)
if not (basename and extension) then return end
- if extension == "mtx" then
+ if extension == "xml" then
+ if execute(xml2pmx .. " " .. basename .. ".xml" .. " " .. basename .. ".pmx" ) == 0 then
+ extension = "pmx"
+ else
+ print ("!! xml2pmx preprocessing of " .. basename .. ".xml fails.")
+ return
+ end
+ elseif extension == "mtx" then
if execute(prepmx .. " " .. basename ) == 0 then
extension = "pmx"
else
print ("!! prepmx preprocessing of " .. basename .. ".mtx fails.")
return
end
- end
+ end
if extension == "pmx" then
local OK = true
if pmx then
diff --git a/macros/musixtex/tex/musixps.tex b/macros/musixtex/tex/musixps.tex
index 6e877494e7..9ab8b0ce3f 100644
--- a/macros/musixtex/tex/musixps.tex
+++ b/macros/musixtex/tex/musixps.tex
@@ -1,11 +1,12 @@
%% PostScript slurs, ties and crescendos
% Coded by Stanislav Kneifl
% RDT added \psRslurskip \iRslur \tRslur \psRtieskip \tRtie \psLtieskip \tLtie 2019/06/17
+% RDT added \iRtieu \iRtied 2020/09/07
\ifx\undefined\startpiece\errmessage{Input musixtex.tex before musixps.tex}\fi
\ifx\undefined\liftcresc\else\endinput\fi
-\immediate\write16{MusiXPS PostScript slurs, ties and crescendos 0.93 (17.2.2015)}%
+\immediate\write16{MusiXPS PostScript slurs, ties and crescendos 0.94 (07.09.2020)}%
\catcode`\@=11
@@ -603,6 +604,8 @@
\def\iltied#1#2{\iTied{#1}{#2}{\pslslurskip}}
\def\irtieu#1#2{\iTieu{#1}{#2}{\psrslurskip}}
\def\irtied#1#2{\iTied{#1}{#2}{\psrslurskip}}
+\def\iRtieu#1#2{\iTieu{#1}{#2}{\psRslurskip}}
+\def\iRtied#1#2{\iTied{#1}{#2}{\psRslurskip}}
\def\ttie#1{\tTie{#1}{\psttieskip}}
\def\tltie#1{\tTie{#1}{\psltieskip}}
\def\trtie#1{\tTie{#1}{\psrtieskip}}
diff --git a/macros/musixtex/tex/musixtex.tex b/macros/musixtex/tex/musixtex.tex
index b11caaa6b5..ba5b4f3880 100644
--- a/macros/musixtex/tex/musixtex.tex
+++ b/macros/musixtex/tex/musixtex.tex
@@ -25,33 +25,37 @@
\def\mufl@x{0.83}%
\def\mxmajorvernumber{1}
-\def\mxminorvernumber{30}
+\def\mxminorvernumber{31}
\def\mxvernumber{\mxmajorvernumber\mxminorvernumber}% make it possible to compare with \ifnum
-\def\mxversuffix{beta}%
+\def\mxversuffix{}%
\edef\mxversion{\mxmajorvernumber.\mxminorvernumber\mxversuffix}
-\def\mxdate{2018-08-09}
+\def\mxdate{2021-01-07}
\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}%
\everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}%
+% version 1.31
+%
+% defined \zzdoublebar, \zzbar, \zendpiece
% version 1.30
+%
% defined \zdoublebar for use within a bar
% defined \hbp and \hbpp
% version 1.29
-
+%
% defined \tabfnt, \tabcleffnt, \tabstringfnt, \tab etc. to support tablature
% version 1.28
-
+%
% defined
% \z[left|right|leftright]repeat, for use *within* a bar
% \zz...repeat, to force to the end of a system
% corrected definition of \C@Inter for \nblines < 4
% version 1.27
-
+%
% introduced \meterN
% eliminated \ds@oup
% introduced \nqqb \nqqh \nqqqb \nqqqh abbreviations and
@@ -62,18 +66,18 @@
% introduced \xxtuplet
% version 1.26
-
+%
% deleted spurious definition in \resetlayout and
% spurious space in definition of \interfacteur...
% version 1.25
-
+%
% included a "dummy" tuplet.tex in the distribution
% added \ignorespaces in musixltx.tex
% defined \qap, \qapp, \tqsk
% version 1.24
-
+%
% preserve changes to \transpose in an hboxed tremolo command
% test that musixtex.tex has already been loaded in some extensions:
% musixps, musixec, musixhv, musixplt, musixtmr, musixppff
@@ -83,13 +87,13 @@
% correct typos \twtybf[g] \svtbf[g]
% version 1.23
-
+%
% added \xtr and \ptr ornaments
% adjusted spacing of \tr
% corrected definition of \C@Inter for \nblines > 6
% version 1.22
-
+%
% bi and sc font definitions added; sl and tt definitions for musixsty moved
% explicit font choices for \txtfont replaced by generic commands \smalltype\it etc.
% \pdlud \halfwidthbigwedge and \raise-height font-dependent
@@ -97,7 +101,7 @@
% version 1.21
-
+%
% RDT adjusted the offsets and/or vertical positions for some tremolos
% RDT moved \lastbarpos\lin@pos after calls to \Writ@meters
% to correct \centerbar positioning
@@ -108,24 +112,24 @@
% RDT added support for piano-pedal bracket notation
% version 1.20
-
+%
% RDT re-defined tremolo commands to allow for numerical pitches;
% use of \raise and \hbox suggested by Jean-Pierre Colon
% version 1.19:
-
+%
% RDT corrected typos in the definition of \comput@fonts
% affecting ppff fonts for \Largemusicsize
% RDT introduced definitions for tremolo commands \trml, \trmu, etc.
% RDT turned off lyrics for \metron and \metronequiv notes
% version 1.18:
-
+%
% RDT added definitions of \raggedstoppiece and \slide from musixext.tex
% RDT increased the length of beam stems (adapted from J.-P. Coulon)
% version 1.17:
-
+%
% RDT re-defined \txtfont for non-normal staff sizes
% RDT defined \tinyppff and \ppfftwelve, and re-defined \ppff to be staffsize dependent
% RDT introduced \tqqb \tqqh \tqqqb \tqqqh abbreviations
@@ -136,7 +140,7 @@
% RDT introduced double-dotted rests \qppp, \dspp, \qspp, etc.
% version 1.16:
-
+%
% RDT corrected the definitions of \nnotes and \nnnotes
% HM corrected the definitions for cautionary small accidentals
@@ -162,7 +166,7 @@
% added dynamic-mark macros \sfz \sfzp
% version 1.15:
-
+%
% moved out:
% - 1/128th beams -> musixbm
% - triple pointed notes -> musixtri
@@ -2288,7 +2292,7 @@
% if you need a line which appears ragged
\def\raggedstoppiece{\ifx\ragg@d\empty \fil@{r}\fi % version 1.18 RDT (from musixext)
\check@nopen\n@wbar\hfill\z@suspend\@nds@ction}
-\def\zendpiece{\setemptybar\raggedstoppiece}
+\def\zendpiece{\setemptybar\raggedstoppiece} % RDT version 1.31
\def\Stoppiece{\setdoubleBAR\stoppiece}
\let\Endpiece\Stoppiece
@@ -2303,6 +2307,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
\piece@beginc\Writ@meters\lastbarpos\lin@pos\let\pdl@cut\empty\addspace\afterruleskip}
%%% 1.21: added \lastbarpos and \pdl@cut settings
@@ -2550,7 +2555,7 @@
\let\leftrepeat\leftrepeat@II
\let\zleftrepeat\zleftrepeat@II % RDT 1.28
-\def\zzleftrepeat{% % RDT 1.28
+\def\zzleftrepeat{% % RDT 1.28
\advance\barno\m@ne%
\stoppiece%
\let\z@sw\@ne%
@@ -2610,6 +2615,21 @@
\def\zdoublebar{\advance\barno\m@ne\doublebar} % RDT 1.30
+\def\zzdoublebar{% % RDT 1.31
+\advance\barno\m@ne%
+\setdoublebar%
+\stoppiece%
+\let\z@sw\@ne%
+\contpiece%
+}
+
+\def\zzbar{% % RDT 1.31
+\advance\barno\m@ne%
+\stoppiece%
+\let\z@sw\@ne%
+\contpiece%
+}
+
\def\alapage{\stoppiece\eject\contpiece}
\def\zalapage{\zstoppiece\eject\contpiece}