summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
l---------Master/bin/alpha-linux/pmx2pdf1
l---------Master/bin/amd64-freebsd/pmx2pdf1
l---------Master/bin/amd64-netbsd/pmx2pdf1
l---------Master/bin/armel-linux/pmx2pdf1
l---------Master/bin/armhf-linux/pmx2pdf1
l---------Master/bin/i386-cygwin/pmx2pdf1
l---------Master/bin/i386-freebsd/pmx2pdf1
l---------Master/bin/i386-linux/pmx2pdf1
l---------Master/bin/i386-netbsd/pmx2pdf1
l---------Master/bin/i386-solaris/pmx2pdf1
l---------Master/bin/powerpc-linux/pmx2pdf1
l---------Master/bin/sparc-solaris/pmx2pdf1
l---------Master/bin/universal-darwin/pmx2pdf1
l---------Master/bin/x86_64-cygwin/pmx2pdf1
l---------Master/bin/x86_64-darwin/pmx2pdf1
l---------Master/bin/x86_64-linux/pmx2pdf1
l---------Master/bin/x86_64-solaris/pmx2pdf1
-rw-r--r--Master/texmf-dist/doc/generic/pmx/README2
-rwxr-xr-xMaster/texmf-dist/doc/generic/pmx/d2utmpq6fZoL0
-rw-r--r--Master/texmf-dist/doc/generic/pmx/examples/netsoos.pmx24
-rw-r--r--Master/texmf-dist/doc/generic/pmx/examples/staffcrossall.pmx162
-rw-r--r--Master/texmf-dist/doc/generic/pmx/install_run_pmx270.pdfbin72472 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/install_run_pmx270.tex182
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx-install.pdfbin96704 -> 30836 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx-install.tex39
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx25-274.html (renamed from Master/texmf-dist/doc/generic/pmx/pmx25-27.html)50
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx270.pdfbin320848 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx274.pdfbin0 -> 267772 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx274.tex (renamed from Master/texmf-dist/doc/generic/pmx/pmx270.tex)305
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmx2pdf.html181
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmxab.html61
-rw-r--r--Master/texmf-dist/doc/generic/pmx/pmxab.pdfbin0 -> 4022 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/ref270.pdfbin65815 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/ref274.pdfbin0 -> 67375 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pmx/ref274.tex (renamed from Master/texmf-dist/doc/generic/pmx/ref270.tex)49
-rw-r--r--Master/texmf-dist/doc/generic/pmx/scor2prt.html55
-rw-r--r--Master/texmf-dist/doc/generic/pmx/scor2prt.pdfbin0 -> 3675 bytes
-rw-r--r--Master/texmf-dist/doc/man/man1/pmx2pdf.1106
-rw-r--r--Master/texmf-dist/doc/man/man1/pmx2pdf.man1.pdfbin4452 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/man/man1/pmxab.18
-rw-r--r--Master/texmf-dist/doc/man/man1/pmxab.man1.pdfbin4118 -> 15462 bytes
-rw-r--r--Master/texmf-dist/doc/man/man1/scor2prt.12
-rw-r--r--Master/texmf-dist/doc/man/man1/scor2prt.man1.pdfbin3746 -> 14692 bytes
-rwxr-xr-xMaster/texmf-dist/scripts/pmx/pmx2pdf.lua176
-rw-r--r--Master/texmf-dist/tex/generic/pmx/pmx.tex158
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
-rw-r--r--Master/tlpkg/tlpsrc/pmx.tlpsrc2
47 files changed, 638 insertions, 942 deletions
diff --git a/Master/bin/alpha-linux/pmx2pdf b/Master/bin/alpha-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/alpha-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/amd64-freebsd/pmx2pdf b/Master/bin/amd64-freebsd/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/amd64-freebsd/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/amd64-netbsd/pmx2pdf b/Master/bin/amd64-netbsd/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/amd64-netbsd/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/armel-linux/pmx2pdf b/Master/bin/armel-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/armel-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/armhf-linux/pmx2pdf b/Master/bin/armhf-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/armhf-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/i386-cygwin/pmx2pdf b/Master/bin/i386-cygwin/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/i386-cygwin/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/i386-freebsd/pmx2pdf b/Master/bin/i386-freebsd/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/i386-freebsd/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/i386-linux/pmx2pdf b/Master/bin/i386-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/i386-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/i386-netbsd/pmx2pdf b/Master/bin/i386-netbsd/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/i386-netbsd/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/i386-solaris/pmx2pdf b/Master/bin/i386-solaris/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/i386-solaris/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/powerpc-linux/pmx2pdf b/Master/bin/powerpc-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/powerpc-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/sparc-solaris/pmx2pdf b/Master/bin/sparc-solaris/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/sparc-solaris/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/universal-darwin/pmx2pdf b/Master/bin/universal-darwin/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/universal-darwin/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/x86_64-cygwin/pmx2pdf b/Master/bin/x86_64-cygwin/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/x86_64-cygwin/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/x86_64-darwin/pmx2pdf b/Master/bin/x86_64-darwin/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/x86_64-darwin/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/x86_64-linux/pmx2pdf b/Master/bin/x86_64-linux/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/x86_64-linux/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/bin/x86_64-solaris/pmx2pdf b/Master/bin/x86_64-solaris/pmx2pdf
deleted file mode 120000
index 73d88404556..00000000000
--- a/Master/bin/x86_64-solaris/pmx2pdf
+++ /dev/null
@@ -1 +0,0 @@
-../../texmf-dist/scripts/pmx/pmx2pdf.lua \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pmx/README b/Master/texmf-dist/doc/generic/pmx/README
index bec1d270c76..c5725475eaf 100644
--- a/Master/texmf-dist/doc/generic/pmx/README
+++ b/Master/texmf-dist/doc/generic/pmx/README
@@ -1,4 +1,4 @@
-This is PMX, version 2.7.0 (2014-11-22). PMX provides a preprocessor for MusiXTeX.
+This is PMX, version 2.7.4 (2016-02-20). PMX provides a preprocessor for MusiXTeX.
pmxab builds a TeX input file based on a .pmx input file in a much
simpler language, making most of the layout decisions by itself. It has
diff --git a/Master/texmf-dist/doc/generic/pmx/d2utmpq6fZoL b/Master/texmf-dist/doc/generic/pmx/d2utmpq6fZoL
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/d2utmpq6fZoL
diff --git a/Master/texmf-dist/doc/generic/pmx/examples/netsoos.pmx b/Master/texmf-dist/doc/generic/pmx/examples/netsoos.pmx
new file mode 100644
index 00000000000..894cc1c3c79
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/examples/netsoos.pmx
@@ -0,0 +1,24 @@
+2 -2 1 1 3 4 3 4 0.00000 2 1 1 20 0
+
+
+60
+./
+w190m
+\\setinterinstrument{1}{9\Interligne}\
+\\sepbarrules\
+\\grouptop12\groupbottom11\
+\\input musixlyr \
+\\def\at#1{\lyrraisehere{#1\internote}}\
+
+"Net soos ek is, net soos ek is, O Lam van God, ek kom."
+ a43 a4 a4 | g2d | g4 g4 g4 | f2d | b4- g4+ f4 | e2 a4- | d2d ofd RD //
+
+ "Net soos ek is, O Lam van God,- ek kom."@a-4
+rp+6 | b43 e4 d4 | c2d | a4 d4 c4 | (S b2d | b2 )S g4 | f2d /
+
+"Net soos ek is, net soos ek is, O Lam van God, ek kom."@b+6
+ d44s g4 f4 | e2d | e4 f4 e4 | d2d | d4 d4r d4 | d2 c4 | d2d //
+
+"Net soos ek is, net soos ek is, O Lam van God, ek kom."@a+6
+ b44 b4 b4 | b2d | a4 a4 a4 | a2d | d4 e4- f4 | g2 e4 | d2d of /
+
diff --git a/Master/texmf-dist/doc/generic/pmx/examples/staffcrossall.pmx b/Master/texmf-dist/doc/generic/pmx/examples/staffcrossall.pmx
new file mode 100644
index 00000000000..069fb317660
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/examples/staffcrossall.pmx
@@ -0,0 +1,162 @@
+2 1 2 4 2 4 0 0
+1 6 20 0
+
+bt
+./
+Ai.86
+Tt
+\raise12pt\hbox{Staff-Crossing Beamed Chords}
+[l+24+1 g83 g zc b b ]j /
+\zcharnote{14}{Both-to-both,}\
+\zcharnote{10}{One voice per staff}\
+[jl c84 rb e e ] /
+%
+g82 g g g //
+[+11 g83 g g g ]j /
+\zcharnote{22}{Both-to-both,}\zcharnote{40}{~}\
+\zcharnote{18}{2 voices per staff}\
+[j g84 g g g ] //
+g85 g g g /
+%
+[u+11 g83 g g g ]j /
+[j g84 g g g ] //
+\zcharnote{22}{Both-to-both,}\
+\zcharnote{18}{2-voice upper staff}\
+g85 g g g /
+%
+g82 g g g //
+[+15 g83 g g g ]j /
+\zcharnote{16}{Both-to-both,}\
+\zcharnote{12}{2-voice lower staff}\
+[jl g84 g g g ] /
+%
+a13 r1 rd4 | a2 /
+\zcharnote{10}{Flagged stem}\
+[-10 b14 ] r1 rd4 |
+ \zcharnote{10}{No flag}\
+ b2L14 /
+%
+L2
+[+28 g83 g g ]j rb /
+\zcharnote{12}{Low-to-high}\
+rb8 [lj g84 g g ] /
+%
+[+28 g83 g g ]j rb8 /
+\zcharnote{12}{Low-to-high}\
+rb8 [fj g84 g g ] /
+%
+[+28 g83 g g g ]j /
+\zcharnote{12}{Low-to-both}\
+rb8 [fj g84 g g ] /
+%
+rb8 [fj g83 ]j [j g ]j [fj g ] /
+\zcharnote{12}{High-to-low}\
+[ g84 ]j [j g ]j [j g ]j rb8 /
+%
+rb8 [fj g83 ]j [j g ]j [fj g ] /
+\zcharnote{12}{High-to-both}\
+[ g84 ]j [j g ]j [j g ]j [j g ]j /
+%
+[fj g83 g g ]j [fj g ] /
+\zcharnote{12}{Both-to-low}\
+[ g84 g ]j [j g ]j rb8 /
+%
+rb8 [fj g83 g ]j [fj g ] /
+\zcharnote{12}{High-to-low}\
+[ g84 g ]j [j g ]j rb8 /
+%
+[f+15 g83 g ]j [j g ]j rb8 /
+\zcharnote{12}{Both-to-high}\
+[j g84 g g ]j [fj g ] /
+%
+[+28 g23x5n+21 g g g g ]j /
+\zcharnote{14}{X both-to-both}\
+[lj g24x5 g g g g ] /
+%
+[+28 g23x5n+21 g g g rb ]j /
+\zcharnote{14}{X low-to-high}\
+[jf rb2x5 g4 g g g ] /
+%
+[+28 g23x5n+21 g g g g ]j /
+\zcharnote{14}{X low-to-both}\
+[fj rb2x5 g84 g g g ] /
+%
+[+28 rb2x5n+21 g3 g g g ]j /
+\zcharnote{14}{X high-to-both}\
+[jf g24x5 g g g g ] /
+%
+[+28 g23x5n+21 g g g g ]j /
+\zcharnote{14}{X both-to-low}\
+[jf g24x5 g g g rb ] /
+%
+[+28 rb2x5n+21 g3 g g g ]j /
+\zcharnote{14}{X high-to-low}\
+[jf g24x5 g g g rb ] /
+%
+[+28 g23x5n+21 g g g rb ]j /
+\zcharnote{14}{X both-to-high}\
+[jf g24x5 g g g g ] /
+%
+[+28 g23x5n+21 g rb g g ]j /
+\zcharnote{14}{X both-to-both}\
+[lj g24x5 rb g rb g ] /
+%
+[+28 g23x5n+21 g g rb rb ]j /
+\zcharnote{14}{X low-to-high}\
+[jf rb2x5 rb g4 g g ] /
+%
+[+28 g23x5n+21 g g g g ]j /
+\zcharnote{14}{X low-to-both}\
+[fj rb2x5 rb rb g84 g ] /
+%
+[+28 rb2x5n+21 rb g3 g g ]j /
+\zcharnote{14}{X high-to-both}\
+[jf g24x5 g rb g g ] /
+%
+[+28 g23x5n+21 g rb g g ]j /
+\zcharnote{14}{X both-to-low}\
+[jf g24x5 g g rb rb ] /
+%
+[+28 rb2x5n+21 rb g3 g g ]j /
+\zcharnote{14}{X high-to-low}\
+[jf g24x5 g g rb rb ] /
+%
+[+28 g23x5n+21 rb g g rb ]j /
+\zcharnote{14}{X both-to-high}\
+[jf g24x5 g rb g g ] /
+%
+% Xtups as normal
+%
+[+28 g23x4n g g g ]j /
+\zcharnote{14}{XN both-to-both}\
+[lj g24x4 g g g ] /
+%
+[+28 g23x4n g g rb ]j /
+\zcharnote{14}{XN low-to-high}\
+[jf rb2x4 g4 g g ] /
+%
+[+28 g23x4n g g g ]j /
+\zcharnote{14}{XN low-to-both}\
+[fj rb2x4 g84 g g ] /
+%
+[+28 rb2x4n g3 g g ]j /
+\zcharnote{14}{XN high-to-both}\
+[jf g24x4 g g g ] /
+%
+[+28 g23x4n g g g ]j /
+\zcharnote{14}{XN both-to-low}\
+[jf g24x4 g g rb ] /
+%
+[+28 rb2x4n g3 g g ]j /
+\zcharnote{14}{XN high-to-low}\
+[jf g24x4 g g rb ] /
+%
+[+28 g23x4n g g rb ]j /
+\zcharnote{14}{XN both-to-high}\
+[jf g24x4 g g g ] /
+
+
+
+
+
+
diff --git a/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.pdf b/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.pdf
deleted file mode 100644
index 78c247cc964..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.tex b/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.tex
deleted file mode 100644
index c4e187315ba..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/install_run_pmx270.tex
+++ /dev/null
@@ -1,182 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% install_run_pmx270.tex 28 Mar 2013
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\documentclass[11pt]{article}
-\usepackage[dvips,colorlinks=true,linkcolor=blue]{hyperref}
-\usepackage[dvips]{graphicx}
-\def\MusiXTeX{MusiX\TeX}
-\def\bs{{\tt\char'134}}
-\newcommand\PMXX{\textbf{PMX}}
-\newcommand\PMX{\PMXX~}
-%
-% Use \bfx for program names only. Use \bf for single embedded letters
-%
-\font\bfx=cmb10 scaled\magstephalf
-\font\bbfx=cmb10 scaled1800
-\setcounter{secnumdepth}3
-\def\Bslash{\tt\char'134}
-\textheight= 9.5in \voffset-.8in%
-\textwidth= 6.5in \hoffset-1.0in
-\hoffset-54pt
-\begin{document}
-
-\raggedright
-\parindent24pt
-
-\title{
- \bbfx
- Installing and Running the WIMA PMX Distribution
- \null\vskip10pt
- \Large\sl
- Version 2.7~--~March 2013
- \null\vskip-5pt
- \author{\Large\rm Don \sc Simons\\
- \includegraphics[scale=0.4]{file600.eps}}}
-\date{}
-\maketitle
-
-\setcounter{page}1
-\pagestyle{headings}
-
-\section{Introduction}
-
- This document explains in detail how to install and run \PMX in
-a Windows operating system, using the distribution
-\href{http://icking-music-archive.org/software/pmx/pmx270.zip}
-{\underline{\tt pmx270.zip}}, which resides in the
-\href{http://icking-music-arihive.org}
-{\underline{Werner Icking Music Archive}} (WIMA).
-That is the basic distribution assembled
-by the code's author. The executable
-files in it will only run under Windows. For other operating systems,
-other options include
-either compiling the FORTRAN source files in {\tt pmx270.zip} and then following or
-adapting the
-remainder of the guidance provided here, or (for Windows as well) using other
-distributions which will be derived in due course from {\tt pmx270.zip}, archived in
-various \TeX\ repositories, and supplied with their own installation guides.
-Links to those other repositories can be found in the
-\href{http://www.icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html}
-{\underline{software section}} of the Werner Icking Music Archive (WIMA).
-
-It is assumed
-here that \TeX\ and \MusiXTeX\ version 1.15 or later are already present. If not, WIMA also
-provides instructions and links for acquiring and installing those programs from the same
-repositories.
-
-\section{Setup from scratch}
-
- Assuming \TeX\ and \MusiXTeX\ have already been installed,
-decompress {\tt pmx270.zip} to any temporary folder.
-It will contain the
-FORTRAN source files {\tt pmxab.for} and {\tt scor2prt.for},
-Windows executables {\tt pmxab.exe} and {\tt scor2prt.exe}, several sample
-{\tt .pmx} files,
-%{\tt pmx.tex}, {\tt ref270.tex} (\TeX\ source for a command summary),
-%{\tt pmx270.tex }(\TeX\ source for this file),
-the full manual {\tt pmx270.pdf}, a very condensed summary of all \PMX commands
-{\tt ref270.pdf}, {\tt pmx25-27.html} showing
-changes from version 2.50 to 2.70, and this installation manual
-{\tt install\_run\_PMX270.pdf}. If necessary, compile the FORTRAN programs.
-I have tried to keep the source code as generic as possible, but minor
-modifications may be needed for FORTRAN-to-C translation and/or other
-compilers.
-
- Once you have assembled a full set of files, put the executables
-somewhere in your search path or in your working directory, {\tt pmx.tex} somewhere
-where \TeX\ can find it (which may or may not be part of a
-TDS-compliant file structure), and the sample {\tt *.pmx} files in your working
-directory (the one from which you will run \PMXX). The rest of the files can reside
-wherever is convenient. Refresh the \TeX\ file name database.
-
-\section{Updating an existing \PMX installation}
-
-If you already have an older version of \PMX installed, then after unzipping the distribution
-to a temporary folder, simply replace the old copies of
-{\tt pmxab.exe}, {\tt scor2prt.exe}, and {pmx.tex}. Nothing more needs to be done.
-
-\section{Running \PMX}
-
-Running \PMX will be demonstrated by example, with the file {\tt barsant.pmx}.
-The first thing you need to do is specify where the generated \TeX\ file is to be
-placed. The path to that location is part of the setup data in the
-\PMX source file, in this case the 15th line of {\tt barsant.pmx}. It is set
-to {\tt ./} which represents the current folder, the one from which you will
-run \PMX and the one where {\tt barsant.pmx} resides. If for some reason you
-want the \TeX\ file
-to go somewhere else, then replace {\tt ./} with a path---either relative
-or absolute---to the desired folder.
-
-If you haven't done so, open a command window and navigate to the
-folder containing {\tt barsant.pmx}. Execute \PMX by typing
-{\tt pmxab barsant} . Alternatively, you may
-just type {\tt pmxab <return>} and you will be prompted
-for a jobname, which in this case is just {\tt barsant} .
-{\bfx pmxab} will generate two files in the working
-directory: {\tt barsant.pml}
-is a log file, and {\tt pmxaerr.dat} contains a single integer, 0 if
-the run was successful, otherwise the line number in the {\tt .pmx} file of the
-fatal error (useful for batch processing). Also, on successful completion,
-{\tt barsant.tex} will be placed in the path specified in the setup.
-
-Now you are right where you would be after
-entering, debugging, and rough-editing the {\tt .tex} file manually. To see
-the results, process {\tt barsant.tex} just as you would for any \MusiXTeX{}
-file. You must first run {\tt etex}, then {\tt musixflx}, and then {\tt etex}
-again. You may view the {\tt .dvi} file so produced with a program like {\bfx yap},
-or go on and run
-{\tt dvips} to create a postscript file and view that with a postscript viewer
-such as {\bf GSview}. If you have used postscript slurs, dvi viewers have the disadvantage
-that they will not
-display them.
-
-To make
-separate parts, run {\bfx scor2prt} by typing {\tt scor2prt barsant}.
-The program will create a new {\tt .pmx} file for each instrument, in this
-case {\tt barsant1.pmx} and {\tt barsant2.pmx}.
-You may then process these
-files like you did the original one to create separate parts.
-
-\section{Using scripts to ease processing}
-Rather than having to manually run five programs every time you want to
-process and view a {\tt .pmx} file, you may use a batch script. Such
-scripts are generally platform-dependent.
-
-For Windows, the following is a possible batch script which produces a
-postscript file:
-
-\begin{verbatim}
-pmxab %1
-echo off
-echo errorlevel
-echo %errorlevel%
-if not errorlevel 1 goto continue
-echo stopping
-goto :end
-:continue
-del *.mx?
-etex %1
-musixflx %1
-etex %1
-dvips -O0.25in,-0.22in %1
-:end
-\end{verbatim}
-
-To use it, copy the script into a text file, save it with a name like
-{\tt gopmx.bat}, and execute it by typing {\tt gopmx barsant}.
-
-At the {\tt dvips} stage, this script uses offsets appropriate to the
-default output of \PMX with letter-size paper, assuming that the \PMX option
-{\tt Acl} has {\it not} been invoked.
-
-If you wish to go on and produce a PDF file, most \TeX\ systems come with
-a program {\tt ps2pdf}. You could run this manually or include it in the main batch
-script. It may require that the file name provided to it include the extension {\tt .ps}.
-
-If you have installed \PMX from one of the distribution sites, either under Windows or some
-other OS, there will probably be an included script {\tt pmx2pdf}. You should be able
-to produce a PDF file directly from {\tt barsant.pmx} by simply typing {\tt pmx2pdf barsant}.
-
-\end{document}
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx-install.pdf b/Master/texmf-dist/doc/generic/pmx/pmx-install.pdf
index 47ea2622a4e..b3bcb1dc9cb 100644
--- a/Master/texmf-dist/doc/generic/pmx/pmx-install.pdf
+++ b/Master/texmf-dist/doc/generic/pmx/pmx-install.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx-install.tex b/Master/texmf-dist/doc/generic/pmx/pmx-install.tex
index 28498d90591..b15d7763394 100644
--- a/Master/texmf-dist/doc/generic/pmx/pmx-install.tex
+++ b/Master/texmf-dist/doc/generic/pmx/pmx-install.tex
@@ -5,7 +5,7 @@
\RequirePackage{hyperref}
\usepackage{xcolor}
\newcommand{\myurl}[1]{\textcolor{blue}{\underline{\textcolor{black}{\url{#1}}}}}
-\newcommand{\pmxVersion}{2.7.0}
+\newcommand{\pmxVersion}{2.7.3}
\begin{document}
\title{Installation of the CTAN PMX Distribution}
\author{Bob Tennent\\
@@ -36,7 +36,7 @@ and installing files\footnote{%
In this distribution of PMX, most of the files to be installed
(including macros, documentation, and a processing script) are in
-\texttt{tex-archive/install/support/pmx.tds.zip} at CTAN.
+\myurl{http://mirror.ctan.org/install/support/pmx.tds.zip} at CTAN.
The file \verb|pmx.tds.zip| is a zipped TEXMF
hierarchy; simply download it and unzip in the root folder/directory of whichever TEXMF tree
you decide is most appropriate, likely a ``local'' or ``personal'' one.
@@ -61,7 +61,7 @@ and \texttt{scor2prt}, an executable used to produce single-player parts from mu
On Windows
systems, one can install \texttt{pmxab.exe} and
-\texttt{scor2prt.exe} in the \texttt{Windows} sub-directory; these are pre-compiled
+\texttt{scor2prt.exe} in the \texttt{Windows} 32 bit or 64~bit sub-directories; these are pre-compiled
executables and should be copied to any
folder on the PATH of executables.
This might entail creating a suitable folder and adding that folder
@@ -72,8 +72,8 @@ click on
View System Information\quad$\rightarrow$\quad Advanced\quad$\rightarrow$\quad Environment Variables
\end{center}
scroll
-down to ``path'', select it, click edit, and add the path to \verb|...\scripts\musixtex\Windows| after a semi-colon.
-The batch script \verb|pmx2pdf.bat| should also be installed to a folder on the PATH.
+down to ``path'', select it, click edit, and add the path
+to the folder after a semi-colon.
On the MAC OS-X platform (version 10.2 or better), one can install \texttt{pmxab} and \texttt{scor2prt} that are in the
@@ -115,11 +115,12 @@ to install in your own path.
You should now have executables \verb\pmxab\ and
\verb\scor2prt\ available for use.
-\section{The Processing Script}
+\section{The \texttt{musixtex.lua} Processing Script}
-The Lua script \verb\.../scripts/pmx/pmx2pdf.lua\
-is simply a convenient wrapper that
-by default runs the following processes in order (and then deletes intermediate files):
+The Lua script \verb\musixtex.lua\
+is simply a convenient wrapper that,
+on files with extension \verb\.pmx\, by default runs the
+following processes in order (and then deletes intermediate files):
\begin{itemize}\topsep=0pt\itemsep=0pt
\item \verb\pmxab\ (pre-processing pass)
\item \verb\etex\ (1st pass)
@@ -129,24 +130,8 @@ by default runs the following processes in order (and then deletes intermediate
\item \verb\ps2pdf\ (to convert \verb\ps\ output to Portable Document Format)
\end{itemize}%
There are many options to vary the default behaviour.
-
-On a Unix-like system (with \texttt{texlua} installed), put a
-symbolic link \texttt{pmx2pdf} in any directory on the executable PATH as follows:
-\begin{list}{}{}
-\item \verb\ln -s <path to pmx2pdf.lua> pmx2pdf \
-\end{list}
-On Windows, you can \emph{either}
-copy the batch file
-\begin{list}{}{}
-\item \verb|Windows\pmx2pdf.bat|
-\end{list}
-to a folder
-on the executable PATH \emph{or} add the folder
-\verb|Windows| to the executable PATH, as explained above.
-
-Documentation for \verb\pmx2pdf\ is in the
-\verb\doc/generic/pmx/ \ directory.
-
+If the \verb|musixtex| has been properly installed on your system, you should
+be able to just enter the command \verb\musixtex myfile\.
\section{Discussion}
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx25-27.html b/Master/texmf-dist/doc/generic/pmx/pmx25-274.html
index d42010cbcc1..8e66cbb279c 100644
--- a/Master/texmf-dist/doc/generic/pmx/pmx25-27.html
+++ b/Master/texmf-dist/doc/generic/pmx/pmx25-274.html
@@ -9,7 +9,7 @@
<body bgcolor="#E1E1E1">
<p align="center"><a href="../indexmt6.html#pmx">Return</a></p>
-<h2>Changes from PMX 2.5 to the Latest Beta (2.622), 18 March 2013</h2>
+<h2>Changes from PMX 2.5 to the Latest Full Release (2.74), 16 February 2016</h2>
<p>2.501 <strong>(Note: new scor2prt)</strong></p>
<ul>
@@ -269,10 +269,52 @@
"IT[+/- n1][+/- n2]..." now transposes MIDI by \internotes, not half steps
as before. E.g. to transpose MIDI of 2nd instrument out of 3 up by one octave,
use "IT+0+7+0". May also use to untranspose a transposing instrument that
- has been entered transposed, to make MIDI come out right.</li>
+ has been entered transposed, to make MIDI come out at concert pitch.</li>
+</ul>
-<p align="center"><a href="../indexmt6.html#pmx">Return</a></p>
-<p>Revised 18 March 2013, Don Simons (dsimons at roadrunner dot com)</p>
+<p>2.70 <strong>(Note: new scor2prt.exe and pmx.tex)</strong></p>
+<ul>
+ <li>Bugfix in AN, to make it behave as advertised, which is to assign user-
+ defined names to part files rather than using the default.</li>
+</ul>
+
+<p>2.71 <strong>(Note: new pmx.tex and MusiXTeX 1.21)</strong></p>
+<ul>
+ <li>Octave treble clef ("C8" command).</li>
+ <li>In figured bass, apply vertical shift for remainder of line with
+ option "v[-](number)" to the figure command</li>
+ <li>Internal changes in multi-bar rests to accommodate changes in
+ musixtex.tex.</li>
+ <li>Slurs aligned with stem ends, postscript slurs only, option "v".</li>
+ <li>Coda "oC".</li>
+ <li>New, smaller segno "oG". Unlike "og", must enter on every staff. </li>
+</ul>
+
+<p>2.72 <strong>(Note: new pmx.tex; still requires MusiXTeX 1.21)</strong></p>
+<ul>
+ <li>Bugfix when arpeggios go from one voice to another in the same staff.</li>
+ <li>Further tweaks in multibar rests.</li>
+ <li>Tweaks in centered full-bar rests.</li>
+ <li>Fix bug in clef changes for multi-staff instruments.</li>
+</ul>
+
+<p>2.73 <strong>(Note: new pmx.tex)</strong></p>
+<ul>
+ <li>Enabled lyrics with "[text]".</li>
+ <li>Internally replace each '\' in pathname in input file with '/', so files made
+ in Window are compatible with linux systems.
+</ul>
+
+<p>2.74 <strong>(Note: new pmx.tex, new scor2prt)</strong></p>
+<ul>
+ <li>Enabled staff-crossing chords with single stems, as ordinary beams, and as
+ beamed xtuplets.</li>
+ <li>Allow \" in lyrics string, for umlaut.</li>
+ <li>Fix bug in scor2prt that was causing crashes when last line started with %.</li>
+ <li>Enable note option Lx to lengthen a stem by x \internotes.</li>
+</ul>
+
+<p>Revised 16 February 2016, Don Simons (dsimons at roadrunner dot com)</p>
</body>
</html>
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx270.pdf b/Master/texmf-dist/doc/generic/pmx/pmx270.pdf
deleted file mode 100644
index b99972ce5db..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/pmx270.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx274.pdf b/Master/texmf-dist/doc/generic/pmx/pmx274.pdf
new file mode 100644
index 00000000000..df50add9e31
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/pmx274.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx270.tex b/Master/texmf-dist/doc/generic/pmx/pmx274.tex
index 3f2f1162369..3d6630157f4 100644
--- a/Master/texmf-dist/doc/generic/pmx/pmx270.tex
+++ b/Master/texmf-dist/doc/generic/pmx/pmx274.tex
@@ -1,6 +1,6 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% pmx270.tex 19 Mar 2013
+% pmx274.tex 20 Feb 2016
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[11pt]{article}
@@ -35,7 +35,7 @@
\hoffset-54pt
-\let\rulet\rule\def\rule#1#2{\if#1<#2\rulet{.05in}{#2}\else\relet{#1}{.05in}\fi}
+%\let\rulet\rule\def\rule#1#2{\if#1<#2\rulet{.05in}{#2}\else\rulet{#1}{.05in}\fi}
\begin{document}
@@ -47,7 +47,7 @@
PMX~--~a Preprocessor for \MusiXTeX{}\\
\null\vskip-15pt
\Large\sl
- Version 2.7~--~March 2013\\
+ Version 2.74~--~February 2016\\
\author{\Large\rm Don \sc Simons\\
\large\sl
Dr. Don's PC and Harpsichord Emporium\\
@@ -58,18 +58,18 @@
% (3) gwin32 -sDEVICE=pnggray -sOutputFile=file.png -r100 -dEPSCrop -dbatch -q
% -dNOPAUSE -dTextAlphaBits=4 file.eps -c quit
% (4) file.png -> GIMP (crop out blank space) -> save as .eps.
+%
\includegraphics[scale=0.4]{file600.eps}}}
+
\date{}
\maketitle
\section*{Preface}
-Compared to releases prior to version 2.60, \PMX has been expanded
-to take advantage of the increased capacity of \MusiXTeX~T.115. To directly
-process
-\TeX~files created by \PMX2.60 or later, a decision was made to require both
-\MusiXTeX~T.115 and e-\TeX. Free versions of both are readily available on the internet,
-and together they can process any earlier \PMX source file.
+Compared to version 2.73, \PMX version 2.74 has minor enhancements to lyrics capabilities,
+behind-the-scenes modifications to allow staff-crossing chords that are unbeamed or beamed as
+illustrated in {\tt staffcrossall.pmx},
+and several bugfixes in \bf scor2prt and {\tt pmx.tex}.
\setcounter{page}1
\tableofcontents
@@ -93,8 +93,8 @@ The \MusiXTeX~community was stunned by the sudden death of Werner Icking on
of us not only
with his technical savvy and gentle guidance, but also his genuine kindness
and generosity. His spirit runs deep through all of \PMX. His encouragement
-fueled its development from the very beginning up to its current state. Most
-of the enhancements have been his proposals, including one he made on what
+fueled its development from its very beginning. Many
+enhancements have been his proposals, including one he made on what
turned out to be his last day. Werner, my friend, I dedicate this work to
you and your memory.
}
@@ -108,7 +108,7 @@ $$\boxit{\box4}$$
%\setcounter{secnumdepth}1
\PMX is a preprocessor for \MusiXTeX{}. Before using it you should
-have installed \MusiXTeX~Version 2.15 \NEW{2.6} or higher, and
+have installed \MusiXTeX~Version 1.21 \NEW{2.71} or higher, and
any available version of \TeX~that includes e-\TeX. The goal of \PMX is to
facilitate the efficient typesetting of scores and parts
that have an almost professional appearance. It can do {\it all} the work
@@ -117,7 +117,7 @@ selecting groups of
notes to be beamed, defining beam heights and slopes, spreading the
entire piece evenly over specified numbers of systems and pages, and inserting
extra spaces where needed to make room for accidentals, flags, dots,
-and new clefs. The input language for \PMX is much simpler than
+and new clefs. The input language for \PMX is much simpler than
\MusiXTeX. You can enter note values and rests from 64ths to double
whole notes ({\it breves}), ornaments, slurs, and limited text strings. Every
voice in every bar must have exactly the correct number of beats in
@@ -140,18 +140,18 @@ that defines the score and the individual parts.
The basic \PMX
distribution as of this version of the manual is
-\href{http://icking-music-archive.org/software/pmx/pmx270.zip}
-{\underline{\tt pmx270.zip}}. It
-contains the FORTRAN sources, and binaries that will run in a DOS
-window on a PC with WINDOWS95 or higher.
-The
+\href{http://icking-music-archive.org/software/pmx/pmx273.zip}
+{\underline{\tt pmx273.zip}}.\NEW{2.73} It
+contains the FORTRAN sources, binaries that will run in a DOS
+window on a PC with WINDOWS95 or higher, manuals for useage and for installation
+in DOS/Windows, and example typesetting files. Alternatively, the
\href{http://www.icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html}
{\underline{software section}} of the Werner Icking Music Archive (WIMA) has instructions
for acquiring and installing \MusiXTeX~and \PMX on various platforms
(Windows, Mac-OSX, Unix-like systems) including using automated procedures from
several external \TeX~distribution sites.
The packages from those other sites will
-all eventually incorporate all the upgrades in {\tt pmx270.zip} but will take
+all eventually incorporate all the upgrades in {\tt pmx273.zip} but will take
varying amounts of time to do so. \PMX is often upgraded; the most current version will
always be available directly from the ``News'' paragraph
\href{http://www.icking-music-archive.org/software/htdocs/htdocs.html}{\underline{here}}.
@@ -203,15 +203,15 @@ FORTRAN source code, users of other OS's
may either adapt these instructions as needed or use one of the other setup
methods referenced earlier.
-After decompressing the distribution file {\tt pmx270.zip},
+After decompressing the distribution file {\tt pmx273.zip},
you should have these
-files: \NEW{2.7} {\tt pmx270.for}, {\tt scor2prt.for}, two
+files: \NEW{2.73} {\tt pmx273.for}, {\tt scor2prt.for}, two
Windows executables {\tt pmxab.exe} and {\tt scor2prt.exe}, several sample
{\tt .pmx} files,
-{\tt pmx.tex}, {\tt ref270.tex} (\TeX\ source for a command summary),
-{\tt pmx270.tex }(\TeX\ source for this file),
-PDF images of the latter two files, {\tt pmx25-27.html} showing
-changes from version 2.50 to 2.70, {\tt install\_run\_PMX.pdf} which gives more
+{\tt pmx.tex}, {\tt ref273.tex} (\TeX\ source for a command summary),
+{\tt pmx273.tex }(\TeX\ source for this file),
+PDF images of the latter two files, {\tt pmx25-273.html} showing
+changes from version 2.50 to 2.73, and {\tt install\_run\_PMX.pdf} which gives more
details about installing and running on different platforms.
%If necessary, compile the FORTRAN programs.
@@ -395,9 +395,9 @@ want instrument names to appear, you must still leave {\tt noinst}
blank lines here. Next comes a single string of {\tt nv}
letters or numbers for the clefs, again starting with the bottom staff:
\label{ClefCodes}
-{\tt b,~r,~n,~a,~m,~s,~t,~f} or digits 0-7 respectively for {\bf b}ass,
+{\tt b,~r,~n,~a,~m,~s,~t,~f,~8} or digits 0-8 \NEW{2.71} respectively for {\bf b}ass,
ba{\bf r}itone, te{\bf n}or, {\bf a}lto, {\bf m}ezzo-soprano, {\bf s}oprano,
-{\bf t}reble, or \NEW{2.2} {\bf F}rench violin clef.
+{\bf t}reble,\NEW{2.2} {\bf F}rench violin clef, or octave treble clef.
The last line of setup data contains the path to the directory
where you want the {\tt tex} file to go when \PMX creates it. The one
in {\tt barsant.pmx}~,
@@ -543,11 +543,16 @@ more {\tt +} or {\tt -} . In earlier versions, {\tt +} or {\tt -} was
ignored if an octave number was specified. This is a slight backward
incompatibility; \PMX prints a warning when it happens.
-Stem length \NEW{2.4} can be shortened by {\it x} \bs{\tt internote} with
-the option {\tt S}{\it x}~. {\it x} is restricted to the range (0.5,4.0).
+Stem length \NEW{2.73} can be {\bf s}hortened or {\bf l}engthened by {\it x}
+\bs{\tt internote} with the options {\tt S}{\it x} or {\tt L}{\it x}~.
+{\it x} is restricted to the range (0.5,4.0) for shortening and 0.5 to 27.5
+for lengthening.
The shortening can be made ``sticky'' by following the number {\it x} with
{\tt :} . Then every note's stem in the voice will be shortened until
-one is encountered with the option {\tt S:} .
+one is encountered with the option {\tt S:} . By lengthening a stem enough
+to span to the next staff and connect with notes there, unflagged staff-spanning
+chords can be constructed. See section \ref{chords}~for further details
+about staff-spanning chords.
The first note command in each voice in a block must
contain at a minimum the note name or {\tt r} for a rest (see below),
@@ -750,6 +755,76 @@ in section~\ref{beams}.
If you are unhappy with the result, you can manually tweak the horizontal
positions as described in section~\ref{AccidentalPosition}.
+Although there is no dedicated command for it, chords can be made to span from
+one staff to another using various techniques\NEW{2.73}. The approach will depend on
+whether
+the chord is single-stemmed with no flag, single-stemmed with a flag, or beamed.
+If beamed, it will also depend on whether it is an xtuplet or not. Examples of all
+the basic possibilities are contained in the sample file {\tt staffcrossall.pmx}.
+
+For unbeamed, unflagged staff-crossing chords,
+by lengthening the stem with the {\tt L} option on the main note, it can
+be made long enough to join with an unflagged single-stemmed note or chord in the
+next staff. Single-stemmed notes with one or more flags can be joined across staves
+with a trick discovered by Andre Van Ryckeghem: In one staff create a standard note or
+chord with
+the stem pointing away from the other staff. In the other staff, place the chord notes
+in a one-note forced beam that has been lowered or raised into the first staff
+(e.g. {\tt [-10 b14 ]}); that
+will stretch the stem to join the other notes, but with just one note (or chord) in the
+beam, the crossbar will have zero length and be invisible.
+
+Beamed chords may also span from one staff to another, using joined beams (see
+section~\ref{beams}). The general approach is to construct a set of chords
+(or single notes, if the other chord notes are in the other staff) in each of
+the two staves, enclose each set in a separate forced beam, and join the two
+beams with {\tt ]j}...{\tt [j}~. It is important to remember that the
+lower staff is processed first. So in most cases, the end of the segment in the lower
+staff must be joined (using {\tt ]j}) to the start of the upper segment (with {\tt [j}).
+It turns out that for non-xtuplet beamed chords, in all cases where the chord at the
+beginning of the beam has a note
+in the {\it lower} staff, this works fine provided that the forced beams are of equal
+duration and cover the same time span, and that positions in either staff with no note
+are represented with
+blank rests \bs{\tt rb} inside the force beam. So for example a set of beamed chords
+that starts only in the
+lower staff and ends only in the upper could be represented by
+
+\medskip
+{\tt [+28 g83 g g rb ]j /
+
+[jf rb g84 g g ] /}
+\medskip
+
+This example highlights some other issues, viz., that the beam height or direction of one
+or both beam groups may need to be altered. Often this will require trial and error.
+
+Unfortunately this two-group procedure breaks down if the first chord in the beam has no
+notes in the lower staff. There are tricks to get around this; the user is referred to
+the file {\tt staffcrossall.pmx} for examples. However, there is a much more
+straightforward way to define
+staff-crossing beamed chords that begin in the upper staff: it simply requires defining
+the beamed group in each staff as an xtuplet within a forced beam. It turns out that
+the treatment of
+staff-crossing beamed xtuplets is more robust than for non-xtuplets, and will admit
+more intuitive coding. So for example, the reverse of the above example, where
+the beam starts in the upper staff and ends in the lower, could be obtained with
+
+\medskip
+{\tt [+28 rb2x4n g3 g g ]j /
+
+[jf g24x4 g g rb ] /}
+
+\medskip
+\newdimen\psav\psav=\parindent\parindent=0pt where we used the option {\tt n} to
+suppress printing the number. As you might expect, more general staff-crossing
+beamed chordal xtuplets follow the same concepts already described for non-xtuplets,
+but as noted, they are more robust and admit patterns that start in the upper staff
+and end in the lower one. {\tt staffcrossall.pmx} also contains examples this
+approach.
+
+\parindent=\psav
+
\subsubsection{Grace notes}\label{graces}
A grace note command starts with a {\tt G}. It is entered in its natural
@@ -786,12 +861,12 @@ on the main note and end on the last one in the grace.
Commands for ornaments are entered {\it after} their associated
note command. The ornaments now available are shake ({\tt ot}), {\bf m}ordent
({\tt om}), ``x"- or ``+"-shaped ornament symbols ({\tt ox, o+}), pizzicato
-({\tt ou}), strong {\bf p}izzicato ({\tt op}), left parenthesis before
-\NEW{1.4}
+({\tt ou}), strong {\bf p}izzicato ({\tt op}), left parenthesis before
notehead ({\tt o(}), right parenthesis after notehead ({\tt o)}),
upper {\bf f}ermata ({\tt of}), {\bf d}own {\bf f}ermata ({\tt ofd}),
-staccato ({\tt o.}), tenuto ({\tt o\_}), se{\bf g}no
-({\tt og}), arbitrary-length wavy-line {\bf t}rill with {\it tr} ({\tt oT}),
+staccato ({\tt o.}), tenuto ({\tt o\_}), two different se{\bf g}nos
+({\tt og} or {\tt oG}), {\bf C}oda ({\tt oC})\NEW{2.71},
+arbitrary-length wavy-line {\bf t}rill with {\it tr} ({\tt oT}),
arbitrary-length wavy-line
trill without {\it tr} ({\tt oTt}), sforzando ({\tt o>}),
%duncecap ({\tt o}\hbox to 6pt{\tt\^~}), \NEW{2.4}{\bf c}aesura ({\tt oc}), and
@@ -804,23 +879,27 @@ head, and staccato and tenuto just above or below depending on the
stem direction. The only difference between staccato and
pizzicato is the vertical positioning of the dot.
-The trill and segno command may have additional optional
-characters. Either trill command may include a decimal number
+Either type of trill may immediately include an unsigned decimal number
to specify the length of the printed symbol in current \bs{\tt noteskip}s; the
-default is 1. Thus {\tt oT0} represents {\it tr} with no wavy line.
-A segno must be entered in the first (lowest) staff, but will appear above
-every staff. It may be immediately followed by a positive or negative
-integer, which indicates a number of points that it will be offset
-horizontally.
+default is 1. Thus {\tt oT0} represents {\it tr} with no wavy line.
- Once the ornament type has been specified, most of them can be raised
+Once the ornament type has been specified, most of them can be raised
or lowered from their default position by appending
a signed integer to the command, representing the vertical offset
-in \bs{\tt internote}s. \NEW{2.4}Caesura and breath may have in addition a signed
-number giving horizontal shift from default in notehead widths. These two
-ornaments also differ from the others in their default horizontal position,
+in \bs{\tt internote}s. \NEW{2.4}. A second signed integer specifies a
+horizontal shift from default in notehead widths.
+
+The caesura and breath marks differ from the others in their default horizontal position,
which is 0.5\bs{\tt noteskip} past the note.
+The {\tt og} segno has several special properties. It must be entered in the first (lowest)
+staff, but will appear above
+every staff. Its vertical position cannot be altered, but if appended by a number...unsigned
+if positive...all appearances will be shifted horizontally by that number of points. On the
+other hand, the {\tt oG} segno\NEW{2.71} has a smaller symbol than {\tt og},
+applies only to the note after which it is entered, and can be shifted just as a
+normal ornament.
+
An ornament can be automatically repeated on a series of consecutive notes,
provided the notes are all in the same voice and the same input block.
To activate this feature, terminate
@@ -887,16 +966,20 @@ open at the same time within one voice, such as when several chord
notes are tied. Using ID codes in such cases tells \PMX which open slur to
close. ID codes cannot be used with font-based {\tt t} slurs.
-The rules for finding the default direction and position of the a slur
+The rules for finding the default direction and position of a slur
are complex; many factors enter into defining visually pleasing values. But
there's no need for gory details here; the result will usually satisfy, and if
-not, all can easily be tweaked. The default direction of curvature can be
+not, it can easily be tweaked. The default direction of curvature can be
overridden with {\tt u} ({\bf u}pper), {\tt l} ({\bf l}ower),
or equivalently {\tt d} ({\bf d}own).
Starting or ending position can be shifted from its default by
entering one or two explicitly signed numbers. The first, which must be
an integer, represents the vertical shift in \bs{\tt internote}s; the second,
-which may be decimal, the horizontal offset in notehead widths.
+which may be decimal, the horizontal offset in notehead widths. \NEW{2.71}Starting
+or ending
+position of a postscript slur or tie can be made to align with the end of the stem
+of an unbeamed note by using the option {\tt v}. No other options are permitted
+with {\tt sv}, but any desired position can be forced with the numeric options.
The shape of the slur may be altered as well\NEW{2.1}. This paragraph
deals with font-based slurs, for which the shapes may be less
@@ -1160,16 +1243,95 @@ still only be one staff-jumping beam open at a time.
\subsubsection{Clefs}
A clef change is signaled by {\tt C} followed by a single lower-case
-letter using the code specified in
-section~\ref{ClefCodes}. Numbers may also be used as
-defined in the \MusiXTeX{} documentation. If clefs come out at the wrong
+letter or digit using the code specified in
+section~\ref{ClefCodes}. If clefs come out at the wrong
vertical position, refer to the note in {\tt pmx.tex}.
\subsubsection{Arpeggios}
To set an arpeggio (a vertical wavy line), simply place the command {\tt ?}
after the commands for both the first and last note. To shift the symbol to
-the left by {\it x} notehead widths, use the option {\tt -}[{\it x}]\NEW{2.6} .
+the left by {\it x} notehead widths, use the option {\tt -}[{\it x}]\NEW{2.6} .
+
+\subsubsection{Lyrics}\NEW{2.73}\label{lyrics}
+
+Lyrics depend on the underlying \TeX\ command {\tt\bs pmxlyr} developed by Dirk
+Laurie, which is defined in {\tt pmx.tex}. It in turn makes use of the macro
+package {\tt musixlyr.tex} developed by Rainer Dunker. So to enable lyrics within \PMXX,
+you will need to
+ensure that {\tt musixlyr.tex} is installed somewhere in your system where your
+\TeX\ processor can find it.
+
+Lyrics can be inserted by enclosing them in double-quotes inside the music line
+just before the first note to which they apply, as in
+{\tt "us-ing lyr---ics now\_\hglue1pt\_ "}. Once the first double quote is encountered, \PMX will
+ensure that {\tt musixflx.tex} is input into the \TeX~file.
+
+Lyrics for several notes can be defined in one go.
+The lyrics in each input string demand a specific number of notes, depending on
+the number of syllables, hyphens, and underscores. If there are not enough lyrics,
+question marks will appear; if too many, the excess syllables will not appear.
+
+The rules for aligning lyrics properly with notes are as follows. Words are
+separated by whitespace, with any number of spaces counting as one. Syllables
+within a word that require just one note each are separated by a single hyphen. There are
+two ways to extend a syllable over two or more notes. If it is the last syllable in
+a word (like {\tt "now\_\hglue1pt\_ "}), follow it with consecutive underscores, one for each extra
+note, and finally a space. It will be printed with a continuous underscore.
+To extend a syllable within a word (like {\tt "lyr---ics"}), insert one extra hyphen
+(with no spaces) for each
+extra note, and it will be printed with some number of hyphens filling the proper
+space between syllables. Conversely, a tilde ({\tt \char126}) between two words
+(with no spaces) prints a space between them while assigning the last syllable of the
+first and the first syllable of the second to a single note\footnote{This is just an
+example of using a standard \TeX\ feature within lyrics.}. So in the end, in a voice
+with lyrics, every note must be associated with a syllable, its extension, or two
+syllables joined with a tilde.
+
+Although underscores within a word or consecutive hyphens at the end may not crash the
+code, they are not recommended for any foreseen useful purpose.
+
+By default, lyrics will be placed below the staff where they are entered, half way between that
+and the next lower staff. You may want to
+alter the vertical position of a lyrics line, especially if both voices in
+a staff have lyrics. This is accomplished with the opfion {\tt @}, immediately
+following the closing quote of the
+lyrics string with no space. That must be followed by either {\tt a} or {\tt b} for
+{\bf a}bove or {\bf b}elow the staff, then a signed integer for the number of
+\bs{\tt internote}s above or below the default height. This command is "sticky"; it
+will remain in force for later lyircs in the same voice until altered.
+
+It may also be necessary to allow extra vertical space where the lyrics are positioned.
+There is no \PMX command for this, but type 2 inline \TeX~can be used to insert extra
+vertical space above any instrument. For example, if the voice is in instrument \#2 and
+lyrics are below that staff,
+\bs\bs{\tt interinstrument=0\bs internote\bs\bs setinterinstrument1\{8\bs internote\}}\bs~ will
+add \newline 8 \bs{\tt internote}s in the space for the lyrics.
+
+Present limitations allow lyrics at upper and lower voices on the bottom two
+staves of instruments 1 to 4. Elsewhere they are quietly ignored.
+
+Most scores with lyrics will benefit from the type 2 command \bs\bs{\tt sepbarrules}\bs, which
+stops bar lines from crossing through the vertical space between instruments.
+
+The notation {\tt "us-ing lyr---ics now\_\hglue1pt\_ "} is actually shorthand for the inline \TeX\
+string {\tt\bs pmxlyr\{us-ing lyr---ics now\_\hglue1pt\_ \}\bs}. All the rules given in
+section~\ref{LitTeX}~for
+Type~1 \TeX\ strings apply. To ensure that the length of all the Type 1 \TeX\
+strings belonging to a particular note combined does not exceed 128, remember
+to account for the nine characters in {\tt\bs pmxlyr\{\}}.
+
+This way of entering lyrics is a convenient interface to a small subset of the
+facilities offered by {\tt musixlyr}. If more advanced features than those supported by
+{\tt\bs pmxlyr} are needed, the necessary {\tt musixlyr} macros could be entered as
+in-line \TeX\ directly into the .pmx file - see the example file {\tt netsoos.pmx} for
+some of those.
+
+If really advanced features are needed (such as having several verses of lyrics
+at once), most users would prefer the convenient interface to {\tt musixlyr} via
+the program {\bfx M-Tx} developed by Dirk Laurie. It is a pre-preprocessor which produces
+a {\tt .pmx} file containing the proper in-line \TeX\ commands. Its input language
+is similar (but not identical) to \PMX and includes most \PMX functionality as a subset.
\subsection{Commands That Affect All Voices} \label{pmxcmds}
@@ -1409,7 +1571,8 @@ In all of the cases discussed, if the patterns of commands in the table are foll
separate parts can be made as usual using {\bfx scor2prt}. They will
automatically come out transposed as desired.
-\pagebreak
+\medskip
+%\pagebreak
{\bfx Texts of the transposition sample files:}
% Note: when editing is done, figure out how to make scripts size work without page break.
\begin{scriptsize}
@@ -1540,6 +1703,8 @@ number representing the space in \bs{\tt internote}s. This only works if
The {\tt D} command can be used to enter arbitrary text as described in
section~\ref{dynamics}.
+Lyrics may be entered as described in section~\ref{lyrics}.\NEW{2.73}
+
\subsubsection{Page numbering, centered header text}
If you want pages to be numbered at the top left or right, place
@@ -1955,7 +2120,13 @@ in your \TeX~system, and then just put an {\tt s} after the number.
The program
positions all the figures for each system below the lowest staff of that
system, with their tops aligned, and just low enough to clear the
-lowest beam, notehead, or stem that could interfere. If you want a figure to
+lowest beam, notehead, or stem that could interfere. If you would like to
+change the vertical alignment for the remainder of the staff starting at a
+figure after the first, \NEW{2.71}append {\tt v}[{\it n}], where {\it n} is an
+integer representing the vertical shift in \bs{\tt internote}s, which may
+have a minus sign.
+
+If you want a figure to
align horizontally in the second tier, insert the placeholder figure
{\tt\_} (underscore) before the one you want lowered. This is equivalent to
lowering the figure stack by 4 \bs{\tt internote}s.
@@ -2088,23 +2259,6 @@ the first one would be meaningless, or worse, uncorrected errors could
cause crashes. In any event, all the output from {\bfx pmxab} will be
stored in the log file [{\it jobname}]{\tt.pml}.
-\subsection{Lyrics}
-
- \PMX has no special provisions for lyrics. One way to include them
-is by using the macro package
-\href{http://www.icking-music-archive.org/software/musixtex/add-ons/musixlyr21c.zip}
-{\underline{\tt musixlyr.tex}} developed
-by Rainer Dunker. It introduces lyrics into \TeX\ more easily than with
-\MusiXTeX's own facilities. The macros could be
-entered as in-line \TeX\ directly into the {\tt .pmx} file, but most would
-prefer the convenient interface to {\tt musixlyr} via the
-program
-\href{http://www.icking-music-archive.org/software/mtx/}{\underline{\bfx M-Tx}}
-developed by Dirk Laurie. It is a pre-preprocessor which
-produces a {\tt .pmx} file containing the proper in-line \TeX\ commands.
-Its input language is similar (but not identical) to \PMX and includes most
-\PMX functionality as a subset.
-
%\setcounter{secnumdepth}1
\section{Making Parts from a Score} \label{scor2prt}
@@ -2486,6 +2640,12 @@ Matthias Weckmann
(1616-1674). It uses many techniques peculiar to keyboard scores, most notably
two voices per staff.
+{\tt netsoos.pmx}\NEW{2.73} is an example with lyrics, including several inline \TeX\
+commands to enhance the layout.
+
+{\tt staffcrossall.pmx}\NEW{2.74} contains examples of staff-crossing chords. Some are
+single-stemmed, some are beamed non-xtuplets, and finally beamed xtuplets.
+
\subsection{A Benign Bug}
When \TeX 'ing the output of \PMX you will usually get an {\tt Underfull
@@ -2513,7 +2673,8 @@ to my colleague John DiPol (a non-musician!) for the idea of using binary masks
to define beam groupings;
to Joel Hunsberger for unraveling some deep \MusiXTeX~tangles;
to Dirk Laurie
-for making \PMX accessible to vocal music by creating {\bfx M-Tx};
+for making \PMX accessible to vocal music by creating {\tt\bs pmxlyr}
+and {\bfx M-Tx};
to Stanislav Kneifl and Hiroaki Morimoto for developing the postscript
slur packages; to
Christian Mondrup, Andre Van Ryckeghem, Christof Biebricher, Joerg Anders,
diff --git a/Master/texmf-dist/doc/generic/pmx/pmx2pdf.html b/Master/texmf-dist/doc/generic/pmx/pmx2pdf.html
deleted file mode 100644
index 2f4f2c6c2b9..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/pmx2pdf.html
+++ /dev/null
@@ -1,181 +0,0 @@
-Content-type: text/html
-
-<HTML><HEAD><TITLE>Manpage of pmx2pdf</TITLE>
-</HEAD><BODY>
-<H1>pmx2pdf</H1>
-Section: (1)<BR>Updated: 2013-12-11<BR><A HREF="#index">Index</A>
-<A HREF="http://localhost/cgi-bin/man/man2html">Return to Main Contents</A><HR>
-
-<P>
-<A NAME="lbAB">&nbsp;</A>
-<H2>NAME</H2>
-
-pmx2pdf - This script processes pmx files and then deletes intermediate files
-<P>
-<A NAME="lbAC">&nbsp;</A>
-<H2>SYNOPSIS</H2>
-
-[ texlua ]
-<B>pmx2pdf</B>
-
-{
-<I>option</I>
-
-|
-<I>jobname</I>
-
-[ .pmx ]
-} ...
-<DL COMPACT>
-<DT>The default effect is to process each file using <DD>
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+pmxab">pmxab</A></B>(1)
-
-<DD>
-(pre-processing pass)
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+etex">etex</A></B>(1)
-
-<DD>
-(first pass)
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+musixflx">musixflx</A></B>(1)
-
-<DD>
-(second pass)
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+etex">etex</A></B>(1)
-
-<DD>
-(third pass)
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvips">dvips</A></B>(1)
-
-<DD>
-(dvi to Postscript)
-<DT><B><A HREF="http://localhost/cgi-bin/man/man2html?1+ps2pdf">ps2pdf</A></B>(1)
-
-<DD>
-(Postscript to Portable Document Format)
-<DT>followed by removal of intermediate files.<DD>
-<P>
-</DL>
-<A NAME="lbAD">&nbsp;</A>
-<H2>OPTIONS</H2>
-
-<DL COMPACT>
-<DT><B>-v </B>
-
-<DD>
-output program name and version number, and quit
-<DT><B>-h</B>
-
-<DD>
-output usage summary and quit
-<DT><B>-l </B>
-
-<DD>
-changes the TeX processor to
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+latex">latex</A></B>(1)
-
-or
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pdflatex">pdflatex</A></B>(1)
-
-<DT><B>-p </B>
-
-<DD>
-changes the TeX processor to
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pdfetex">pdfetex</A></B>(1)
-
-or
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pdflatex">pdflatex</A></B>(1)
-
-(and doesn't run
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvips">dvips</A></B>(1)
-
-and
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+ps2pdf">ps2pdf</A></B>(1)
-
-or
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvipdfm">dvipdfm</A></B>(1)
-
-)
-<DT><B>-d </B>
-
-<DD>
-changes the dvi processor to
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvipdfm">dvipdfm</A></B>(1)
-
-<DT><B>-s </B>
-
-<DD>
-stops processing at the dvi file
-<DT><B>-t</B>
-
-<DD>
-stops processing at the tex (and midi) files
-<DT><B>-i</B>
-
-<DD>
-retain intermediate files
-<DT><B>-c</B>
-
-<DD>
-preprocess using pmxchords
-<DT><B>-F fmt</B>
-
-<DD>
-use fmt as the TeX processor
-<DT><B>-f</B>
-
-<DD>
-default processing
-<DT>Options affect processing of all succeeding PMX files unless changed by another option.<DD>
-<P>
-</DL>
-<A NAME="lbAE">&nbsp;</A>
-<H2>SEE ALSO</H2>
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pmxab">pmxab</A></B>(1)
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+scor2prt">scor2prt</A></B>(1)
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+etex">etex</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+latex">latex</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pdfetex">pdfetex</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pdflatex">pdflatex</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+musixflx">musixflx</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvipdfm">dvipdfm</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+dvips">dvips</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+ps2pdf">ps2pdf</A></B>(1),
-
-<B><A HREF="http://localhost/cgi-bin/man/man2html?1+pmxchords">pmxchords</A></B>(1).
-
-<BR>
-
-pmx270.pdf
-<P>
-<A NAME="lbAF">&nbsp;</A>
-<H2>AUTHOR </H2>
-
-This manual page was written by Bob Tennent &lt;<A HREF="mailto:rdt@cs.queensu.ca">rdt@cs.queensu.ca</A>&gt;.
-<P>
-
-<HR>
-<A NAME="index">&nbsp;</A><H2>Index</H2>
-<DL>
-<DT><A HREF="#lbAB">NAME</A><DD>
-<DT><A HREF="#lbAC">SYNOPSIS</A><DD>
-<DT><A HREF="#lbAD">OPTIONS</A><DD>
-<DT><A HREF="#lbAE">SEE ALSO</A><DD>
-<DT><A HREF="#lbAF">AUTHOR </A><DD>
-</DL>
-<HR>
-This document was created by
-<A HREF="http://localhost/cgi-bin/man/man2html">man2html</A>,
-using the manual pages.<BR>
-Time: 22:18:07 GMT, December 11, 2013
-</BODY>
-</HTML>
diff --git a/Master/texmf-dist/doc/generic/pmx/pmxab.html b/Master/texmf-dist/doc/generic/pmx/pmxab.html
deleted file mode 100644
index aeff22bf217..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/pmxab.html
+++ /dev/null
@@ -1,61 +0,0 @@
-Content-type: text/html
-
-<HTML><HEAD><TITLE>Manpage of pmxab</TITLE>
-</HEAD><BODY>
-<H1>pmxab</H1>
-Section: PMX Manual Page (1)<BR>Updated: 19 Jan 2013<BR><A HREF="#index">Index</A>
-<A HREF="http://localhost/cgi-bin/man/man2html">Return to Main Contents</A><HR>
-
-<A NAME="lbAB">&nbsp;</A>
-<H2>NAME</H2>
-
-pmxab - a MusiXTeX preprocessor
-<A NAME="lbAC">&nbsp;</A>
-<H2>SYNOPSIS</H2>
-
-<B>pmxab</B>
-
-basename<I>[.pmx]</I>
-
-<P>
-<A NAME="lbAD">&nbsp;</A>
-<H2>DESCRIPTION</H2>
-
-pmxab is a preprocessor for MusiXTeX.
-It's usually invoked by a frontend <A HREF="http://localhost/cgi-bin/man/man2html?1+pmx2pdf">pmx2pdf</A>(1).
-To use it to its full benefit you should have installed MusiXTeX Version 1.15
-or higher, and TeX itself.
-The goal of PMX is to faciliate the efficient typesetting of scores and parts
-that have an almost professional appearance. To learn more about typesetting
-with PMX, please read the PMX Manual.
-<P>
-When invoked directly, pmxab produces tex output utilizing the MusiXTeX
-macro set.
-<A NAME="lbAE">&nbsp;</A>
-<H2>SEE ALSO</H2>
-
-<A HREF="http://localhost/cgi-bin/man/man2html?1+pmx2pdf">pmx2pdf</A>(1), <A HREF="http://localhost/cgi-bin/man/man2html?1+scor2prt">scor2prt</A>(1), <A HREF="http://localhost/cgi-bin/man/man2html?1+musixtex">musixtex</A>(1)
-<A NAME="lbAF">&nbsp;</A>
-<H2>AUTHORS</H2>
-
-PMX was written by Don Simons &lt;<A HREF="mailto:dsimons@roadrunner.com">dsimons@roadrunner.com</A>&gt;.
-This manual page was written by Roland Stigge &lt;<A HREF="mailto:stigge@antcom.de">stigge@antcom.de</A>&gt; for the Debian
-project and revised by Bob Tennent &lt;<A HREF="mailto:rdt@cs.queensu.ca">rdt@cs.queensu.ca</A>&gt;.
-<P>
-
-<HR>
-<A NAME="index">&nbsp;</A><H2>Index</H2>
-<DL>
-<DT><A HREF="#lbAB">NAME</A><DD>
-<DT><A HREF="#lbAC">SYNOPSIS</A><DD>
-<DT><A HREF="#lbAD">DESCRIPTION</A><DD>
-<DT><A HREF="#lbAE">SEE ALSO</A><DD>
-<DT><A HREF="#lbAF">AUTHORS</A><DD>
-</DL>
-<HR>
-This document was created by
-<A HREF="http://localhost/cgi-bin/man/man2html">man2html</A>,
-using the manual pages.<BR>
-Time: 21:36:16 GMT, December 11, 2013
-</BODY>
-</HTML>
diff --git a/Master/texmf-dist/doc/generic/pmx/pmxab.pdf b/Master/texmf-dist/doc/generic/pmx/pmxab.pdf
new file mode 100644
index 00000000000..6e022bbf25b
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/pmxab.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/ref270.pdf b/Master/texmf-dist/doc/generic/pmx/ref270.pdf
deleted file mode 100644
index 2165a99d6bf..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/ref270.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/ref274.pdf b/Master/texmf-dist/doc/generic/pmx/ref274.pdf
new file mode 100644
index 00000000000..f14160f0227
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/ref274.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pmx/ref270.tex b/Master/texmf-dist/doc/generic/pmx/ref274.tex
index a1f6506c92f..cd3d7bbe89e 100644
--- a/Master/texmf-dist/doc/generic/pmx/ref270.tex
+++ b/Master/texmf-dist/doc/generic/pmx/ref274.tex
@@ -1,6 +1,6 @@
%%%%%%%%%%%%%%%%%
%%
-%% ref270.tex (latex2e?)
+%% ref274.tex (latex)
%%
%%%%%%%%%%%%%%%%%
\ifx\documentstyle\undefined
@@ -43,9 +43,9 @@
%\let\blank\ \def\ {\blank\blank}
\centerline{QUICK REFERENCE TABLE FOR {\bf PMX},
-Version 2.7,
-March 2013~~~
-\hfill by Don Simons (dsimons@roadrunner.com)}
+Version 2.74,
+February 2016~~~
+\hfill Don Simons (dsimons@roadrunner.com)}
%\begin{multicols}{2}
\null
@@ -97,9 +97,9 @@ a,b,c,d,e,f,g & Note name.\\
\ [D] & In xtuplet note only, double duration. Reduce number of
notes in xtup by 1.\\
\ [F] & As above, and add dot.\\
-\ [S{\it x}] & Shrink stem length by {\it x} \bs{\tt internote}.\\
+\ [S,L {\it x}] & Shrink or lengthen stem length by {\it x} \bs{\tt internote}.\\
\ \ [:] & Make it sticky.\\
-\ [S:] & Shrink this stem, then turn off stem shrinkage.\\
+\ [S,L :] & Shrink or lengthen this stem, then return to default.\\
\ [Ao] & In main chord note, post accidentals in order entered.\\
\newcol
~ & Note options, continued\\
@@ -161,11 +161,14 @@ o & Ornament. Symbol comes after note.\\
Default is one \bsn{}noteskip.
Use {\tt oT0} for {\it tr} .\\
\ g & Segno. Voice \#1 only.\\
+\ \ [-]{\it n} & Horizontal shift, points. \\
+\ G & Smaller segno, any voice. \\
\ \ [[-]{\it d1}[{\it d1}]] & Offset of segno symbol in points.\\
\ e & Editorial accidental. \\
\ \ s,f,n & Sharp, flat, natural. \\
\ \ \ [?] & Editorial accidental is dubious. \\
-\ \ ? & Text is dubious. \\
+\ \ ? & Text is dubious. \\
+\ C & Coda. \\
\ [+,- {\it i}] & (After~setting~ornament~type)\break Raise/lower by
{\it i} \bsn{}internotes from default.\\
\ [:] & Repeat toggle. Must come last. First instance, after setting
@@ -185,12 +188,12 @@ G & Grace note group.\\
\ ({\it first note}) & Must follow above options.
Use same symbols as normal note.\\
\dhline
-s,t,) & Slur toggle. Place after note. If {\tt Ap} is on, {\tt t} causes
+s,);t,\} & Slur/tie toggle, after note. With {\tt Ap}, {\tt t} or {\tt\}} causes
true tie.\\
-( & Placed before note, same as {\tt s} placed after. \\
+(;\{ & Placed before note, same as {\tt s} or {\tt\}} placed after. \\
\ [{\it c}] & Optional ID code, {\tt 1-9} or {\tt A-Z} . Must be first
- after {\tt s,t,(,)} .\\
-\ [u,d,l] & Force slur direction. Only allowed at slur start.\\
+ after {\tt s,t,(,\{} .\\
+\ [u,d,l] & Force direction. Only allowed at slur/tie start.\\
\ [t] & Position slur end as tie rather than slur. With postscript
slurs, print a true tie.\\
\ [b] & Dotted slur.\\
@@ -198,17 +201,18 @@ s,t,) & Slur toggle. Place after note. If {\tt Ap} is on, {\tt t} caus
\ \ [+,- {\it x}] & Horizontal shift start/end of slur, notehead widths. \\
\ \ \ [+,- {\it i}] & Mid-height alteration, nonzero, only on termination.\\
\ \ \ \ [:{\it d1d2}] & Alter starting and ending slope, 1-7.\\
-\ [f,n,h,H,HH] & Flatten, normalize, or increase curvature. For font-based slurs, only allowed
- on termination. For Type K linebreak slurs, applies to first segment if on start,
- second if on end.\\
+\ [f,n,h,H,HH] & Flatten, normalize, or increase curve. For font-based, on end
+ only. For Type K linebrk, 1st seg if on start,
+ 2nd if on end.\\
\ [s +,- {\it i}] & On start of a line-breaking type K slur or tie, vertical adjustment
of end of first segment.\\
\ \ +,- {\it x} & Horizontal tweak of end of first segment.\\
-\ \ \ [+,- {\it i}] & Vertical adjustment of start of second segment.\\
+\ \ \ [s +,- {\it i}] & Vertical adjustment of start of second segment.\\
\ \ \ \ +,- {\it x} & Horizontal tweak of start of second segment.\\
\ [p] & Local change in postscript slur or tie adjustment.\\
\ \ +,- & Turn on or off automatic adjustment.\\
\ \ \ s,t & Adjust slur or tie.\\
+\ [v] & Stem slur, postscript only.\\
\newcol
A & Miscellaneous controls.
Only at start of first block except {\tt i} , {\tt I}\\
@@ -238,17 +242,15 @@ A & Miscellaneous controls.
\ [R] & Read in normal include file.\\
\ \ {\it filename} & File name, may include path.\\
\ [K] & Activate special rules for rest positions in 2-staff keyboard scores.\\
-\dhline
\ [cl,c4] & Set vert. and horiz. page sizes and offsets for letter or a4 paper.\\
-
-
+\dhline
B & Toggles default stem direction for middle line of bass clef.
(intial direction is up).\\
\dhline
C & Clef change.\\
-\hbox{\ t,s,m,a,n,r,}\hbox{\ b,f or 0-7} & New clef. ({\bf t}reble, {\bf s}oprano,
+\hbox{\ t,s,m,a,n,r,}\hbox{\ b,f,8 or 0-8} & {\bf t}reble, {\bf s}oprano,
{\bf m}ezzo-soprano, {\bf a}lto, te{\bf n}or, ba{\bf r}itone,
- {\bf b}ass, {\bf F}rench violin).\\
+ {\bf b}ass, {\bf F}rench violin, octave treble\\
\newcol
D & Dynamics.\\
\ p,pp,...,ffff & Pre-defined standard dynamics.\\
@@ -389,6 +391,8 @@ X & Shift or insert hardspace. \\
\dhline
2,3,\dots,9,\#,-,n & Normal figure.
Combine characters as needed. See manual.\\
+\ [v] & Start vertical shift for this line.\\
+\ \ [+,- {\it i}] & Vertical offset, \bsn{}internotes.\\
0 {\rm (zero)} & Continuation figure.\\
\ {\it x} & Length in \bsn{}internotes.\\
\_ {\rm (underscore)} & Placeholder figure, to lower the next one. \\
@@ -456,6 +460,11 @@ X & Shift or insert hardspace. \\
\dhline
,\break\null\ {\it note command} & Detatched 2:1 shortcut. Note will have
1/2 duration of prior note. See note name command.\\
+\dhline
+"\break\null\ {\it text}" & Lyrics. See pmx274.pdf section 2.2.14 for details.\\
+\ \ [@] & Set a vertical offset\\
+\ \ \ a,b & Above or below the staff\\
+\ \ \ \ +,- {\it i} & Amount of offset, \bsn{}internotes\\
\hline
\end{tabular}
\end{center}
diff --git a/Master/texmf-dist/doc/generic/pmx/scor2prt.html b/Master/texmf-dist/doc/generic/pmx/scor2prt.html
deleted file mode 100644
index 0afa91decbf..00000000000
--- a/Master/texmf-dist/doc/generic/pmx/scor2prt.html
+++ /dev/null
@@ -1,55 +0,0 @@
-Content-type: text/html
-
-<HTML><HEAD><TITLE>Manpage of scor2prt</TITLE>
-</HEAD><BODY>
-<H1>scor2prt</H1>
-Section: scor2prt Manual Page (1)<BR>Updated: 5 March 2012<BR><A HREF="#index">Index</A>
-<A HREF="http://localhost/cgi-bin/man/man2html">Return to Main Contents</A><HR>
-
-<A NAME="lbAB">&nbsp;</A>
-<H2>NAME</H2>
-
-scor2prt - source-parts separation program for pmx, a MusiXTeX preprocessor
-<A NAME="lbAC">&nbsp;</A>
-<H2>SYNOPSIS</H2>
-
-<B>scor2prt</B>
-
-basename<I>[.pmx]</I>
-
-<A NAME="lbAD">&nbsp;</A>
-<H2>DESCRIPTION</H2>
-
-scor2prt is part of <A HREF="http://localhost/cgi-bin/man/man2html?1+pmx">pmx</A>(1), a preprocessor for MusiXTeX. It can automatically
-create parts from a score by generating a set of .pmx files, one for each part,
-from a single .pmx file for the score. The appearance of the parts can be
-controlled by special commands in the main file. Read the PMX Manual for more
-information about that.
-<A NAME="lbAE">&nbsp;</A>
-<H2>SEE ALSO</H2>
-
-<A HREF="http://localhost/cgi-bin/man/man2html?1+pmx">pmx</A>(1), <A HREF="http://localhost/cgi-bin/man/man2html?1+pmxab">pmxab</A>(1), <A HREF="http://localhost/cgi-bin/man/man2html?1+musixtex">musixtex</A>(1), PMX Manual
-<A NAME="lbAF">&nbsp;</A>
-<H2>AUTHORS</H2>
-
-PMX was written by Don Simons &lt;<A HREF="mailto:dsimons@roadrunner.com">dsimons@roadrunner.com</A>&gt;.
-This manual page was written by Roland Stigge &lt;<A HREF="mailto:stigge@antcom.de">stigge@antcom.de</A>&gt; for the Debian
-project and revised by Bob Tennent &lt;<A HREF="mailto:rdt@cs.queensu.ca">rdt@cs.queensu.ca</A>&gt;.
-<P>
-
-<HR>
-<A NAME="index">&nbsp;</A><H2>Index</H2>
-<DL>
-<DT><A HREF="#lbAB">NAME</A><DD>
-<DT><A HREF="#lbAC">SYNOPSIS</A><DD>
-<DT><A HREF="#lbAD">DESCRIPTION</A><DD>
-<DT><A HREF="#lbAE">SEE ALSO</A><DD>
-<DT><A HREF="#lbAF">AUTHORS</A><DD>
-</DL>
-<HR>
-This document was created by
-<A HREF="http://localhost/cgi-bin/man/man2html">man2html</A>,
-using the manual pages.<BR>
-Time: 21:36:40 GMT, December 11, 2013
-</BODY>
-</HTML>
diff --git a/Master/texmf-dist/doc/generic/pmx/scor2prt.pdf b/Master/texmf-dist/doc/generic/pmx/scor2prt.pdf
new file mode 100644
index 00000000000..0711bba5e3f
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pmx/scor2prt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/man/man1/pmx2pdf.1 b/Master/texmf-dist/doc/man/man1/pmx2pdf.1
deleted file mode 100644
index 6ec7f033ec1..00000000000
--- a/Master/texmf-dist/doc/man/man1/pmx2pdf.1
+++ /dev/null
@@ -1,106 +0,0 @@
-.\" This manpage is licensed under the GNU Public License
-.TH pmx2pdf 1 2013-12-11 "pmx2pdf script, version 0.3.1" ""
-
-.SH NAME
-pmx2pdf \- This script processes pmx files and then deletes intermediate files
-
-.SH SYNOPSIS
-[ texlua ]
-.B pmx2pdf
-{
-.IR option
-|
-.IR jobname
-[ .pmx ]
-} ...
-.TP
-The default effect is to process each file using
-.TP 12
-.BR pmxab (1)
-(pre-processing pass)
-.TP
-.BR etex (1)
-(first pass)
-.TP
-.BR musixflx (1)
-(second pass)
-.TP
-.BR etex (1)
-(third pass)
-.TP
-.BR dvips (1)
-(dvi to Postscript)
-.TP
-.BR ps2pdf (1)
-(Postscript to Portable Document Format)
-.TP
-followed by removal of intermediate files.
-
-.SH OPTIONS
-.TP 8
-.B -v
-output program name and version number, and quit
-.TP
-.B -h
-output usage summary and quit
-.TP
-.B -l
-changes the TeX processor to
-.BR latex (1)
-or
-.BR pdflatex (1)
-.TP
-.B -p
-changes the TeX processor to
-.BR pdfetex (1)
-or
-.BR pdflatex (1)
-(and doesn't run
-.BR dvips (1)
-and
-.BR ps2pdf (1)
-or
-.BR dvipdfm (1)
-)
-.TP
-.B -d
-changes the dvi processor to
-.BR dvipdfm (1)
-.TP
-.B -s
-stops processing at the dvi file
-.TP
-.B -t
-stops processing at the tex (and midi) files
-.TP
-.B -i
-retain intermediate files
-.TP
-.B -c
-preprocess using pmxchords
-.TP
-.B -F fmt
-use fmt as the TeX processor
-.TP
-.B -f
-default processing
-.TP 0
-Options affect processing of all succeeding PMX files unless changed by another option.
-
-.SH SEE ALSO
-.BR pmxab (1)
-.BR scor2prt (1)
-.BR etex (1),
-.BR latex (1),
-.BR pdfetex (1),
-.BR pdflatex (1),
-.BR musixflx (1),
-.BR dvipdfm (1),
-.BR dvips (1),
-.BR ps2pdf (1),
-.BR pmxchords (1).
-.br
-pmx270.pdf
-
-.SH AUTHOR
-This manual page was written by Bob Tennent <rdt@cs.queensu.ca>.
diff --git a/Master/texmf-dist/doc/man/man1/pmx2pdf.man1.pdf b/Master/texmf-dist/doc/man/man1/pmx2pdf.man1.pdf
deleted file mode 100644
index 4fc23287ff5..00000000000
--- a/Master/texmf-dist/doc/man/man1/pmx2pdf.man1.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/man/man1/pmxab.1 b/Master/texmf-dist/doc/man/man1/pmxab.1
index 806efcce76c..381324e5641 100644
--- a/Master/texmf-dist/doc/man/man1/pmxab.1
+++ b/Master/texmf-dist/doc/man/man1/pmxab.1
@@ -1,4 +1,4 @@
-.TH pmxab 1 "19 Jan 2013" "Version 2.6.19" "PMX Manual Page"
+.TH pmxab 1 "2 Feb 2016" "Version 2.7.3" "PMX Manual Page"
.SH NAME
pmxab \- a MusiXTeX preprocessor
.SH SYNOPSIS
@@ -7,8 +7,8 @@ pmxab \- a MusiXTeX preprocessor
.SH DESCRIPTION
pmxab is a preprocessor for MusiXTeX.
-It's usually invoked by a frontend pmx2pdf(1).
-To use it to its full benefit you should have installed MusiXTeX Version 1.15
+It's usually invoked by a frontend musixtex(1).
+To use it to its full benefit you should have installed MusiXTeX Version 1.21
or higher, and TeX itself.
The goal of PMX is to faciliate the efficient typesetting of scores and parts
that have an almost professional appearance. To learn more about typesetting
@@ -17,7 +17,7 @@ with PMX, please read the PMX Manual.
When invoked directly, pmxab produces tex output utilizing the MusiXTeX
macro set.
.SH SEE ALSO
-pmx2pdf(1), scor2prt(1), musixtex(1)
+scor2prt(1), musixtex(1)
.SH AUTHORS
PMX was written by Don Simons <dsimons@roadrunner.com>.
This manual page was written by Roland Stigge <stigge@antcom.de> for the Debian
diff --git a/Master/texmf-dist/doc/man/man1/pmxab.man1.pdf b/Master/texmf-dist/doc/man/man1/pmxab.man1.pdf
index ca8cefd24f0..7744acf6065 100644
--- a/Master/texmf-dist/doc/man/man1/pmxab.man1.pdf
+++ b/Master/texmf-dist/doc/man/man1/pmxab.man1.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/man/man1/scor2prt.1 b/Master/texmf-dist/doc/man/man1/scor2prt.1
index 4e38a161cb0..23abdf4c197 100644
--- a/Master/texmf-dist/doc/man/man1/scor2prt.1
+++ b/Master/texmf-dist/doc/man/man1/scor2prt.1
@@ -1,4 +1,4 @@
-.TH scor2prt 1 "5 March 2012" "Version 2.6.17" "scor2prt Manual Page"
+.TH scor2prt 1 "2 Feb 2016" "Version 2.7.3" "scor2prt Manual Page"
.SH NAME
scor2prt \- source-parts separation program for pmx, a MusiXTeX preprocessor
.SH SYNOPSIS
diff --git a/Master/texmf-dist/doc/man/man1/scor2prt.man1.pdf b/Master/texmf-dist/doc/man/man1/scor2prt.man1.pdf
index effdedcee16..d58a2df2fdd 100644
--- a/Master/texmf-dist/doc/man/man1/scor2prt.man1.pdf
+++ b/Master/texmf-dist/doc/man/man1/scor2prt.man1.pdf
Binary files differ
diff --git a/Master/texmf-dist/scripts/pmx/pmx2pdf.lua b/Master/texmf-dist/scripts/pmx/pmx2pdf.lua
deleted file mode 100755
index 4f441763844..00000000000
--- a/Master/texmf-dist/scripts/pmx/pmx2pdf.lua
+++ /dev/null
@@ -1,176 +0,0 @@
-#!/usr/bin/env texlua
-
-VERSION = "0.3.2"
-
---[[
- pmx2pdf: processes MusiXTeX files using pmxab as a pre-processor
- (and deletes intermediate files)
-
- (c) Copyright 2011-13 Bob Tennent rdt@cs.queensu.ca
-
- 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 (at your
- option) 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.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
---]]
-
---[[
-
- ChangeLog:
-
- version 0.3.2 2013-12-14 RDT
- restore the -c option that somehow got dropped
-
- version 0.3.1 2013-12-11 RDT
- added -F fmt option
-
- version 0.3.0 2013-12-10 RDT
- added -c option to preprocess using pmxchords
-
- version 0.2.1 2012-05-15 RDT
- renamed to avoid possible name clashes
-
- version 0.2 2011-11-28 RDT
- added -i (retain intermediate files) option
-
- version 0.1 2011-07-12 RDT
-
---]]
-
-function usage()
- print("Usage: [texlua] pmx2pdf { option | basename[.pmx] } ... ")
- print("options: -v version")
- print(" -h help")
- print(" -l latex (or pdflatex)")
- print(" -p pdfetex (or pdflatex)")
- print(" -d dvipdfm")
- print(" -s stop at dvi")
- print(" -t stop at tex/mid")
- print(" -i retain intermediate files")
- print(" -c preprocess using pmxchords")
- print(" -F fmt use fmt as the TeX processor")
- print(" -f restore default processing")
-end
-
-function whoami ()
- print("This is pmx2pdf version ".. VERSION .. ".")
-end
-
-whoami()
-if #arg == 0 then
- usage()
- os.exit(0)
-end
-
--- defaults:
-pmxab = "pmxab"
-tex = "etex"
-musixflx = "musixflx"
-dvi = "dvips"
-ps2pdf = "ps2pdf"
-intermediate = 1
-
-exit_code = 0
-narg = 1
-repeat
- this_arg = arg[narg]
- if this_arg == "-v" then
- os.exit(0)
- elseif this_arg == "-h" then
- usage()
- os.exit(0)
- elseif this_arg == "-l" then
- if tex == "pdfetex" then
- tex = "pdflatex"
- else
- tex = "latex"
- end
- elseif this_arg == "-p" then
- if tex == "latex" then
- tex = "pdflatex"
- else
- tex = "pdfetex"
- end
- dvi = ""; ps2pdf = ""
- elseif this_arg == "-d" then
- dvi = "dvipdfm"; ps2pdf = ""
- elseif this_arg == "-s" then
- dvi = ""; ps2pdf = ""
- elseif this_arg == "-f" then
- pmxab = "pmxab"; tex = "etex"; dvi = "dvips"; ps2pdf = "ps2pdf"; intermediate = 1
- elseif this_arg == "-t" then
- tex = ""; dvi = ""; ps2pdf = ""
- elseif this_arg == "-i" then
- intermediate = 0
- elseif this_arg == "-c" then
- pmxab = "pmxchords"
- elseif this_arg == "-F" then
- narg = narg+1
- tex = arg[narg]
- else
- filename = this_arg
- if filename ~= "" and string.sub(filename, -4, -1) == ".pmx" then
- filename = string.sub(filename, 1, -5)
- end
- if not io.open(filename .. ".pmx", "r") then
- print("Non-existent file: ", filename .. ".pmx")
- else
- print("Processing ".. filename .. ".pmx" .. " using " .. pmxab .. "." )
- os.remove( filename .. ".mx2" )
- os.execute(pmxab .. " " .. filename )
- pmxaerr = io.open("pmxaerr.dat", "r")
- if (not pmxaerr) then
- print("No log file.")
- os.exit(1)
- end
- linebuf = pmxaerr:read()
- err = tonumber(linebuf)
- pmxaerr:close()
- if ( err == 0 ) and
- (tex == "" or os.execute(tex .. " " .. filename) == 0) and
- (tex == "" or os.execute(musixflx .. " " .. filename) == 0) and
- (tex == "" or os.execute(tex .. " " .. filename) == 0) and
- ((tex ~= "latex" and tex ~= "pdflatex")
- or (os.execute(tex .. " " .. filename) == 0)) and
- (dvi == "" or (os.execute(dvi .. " " .. filename) == 0)) and
- (ps2pdf == "" or (os.execute(ps2pdf .. " " .. filename .. ".ps") == 0) )
- then
- if ps2pdf ~= "" then
- print(filename .. ".pdf generated by " .. ps2pdf .. ".")
- end
- if intermediate == 1 then -- clean-up:
- os.remove( "pmxaerr.dat" )
- os.remove( filename .. ".mx1" )
- os.remove( filename .. ".mx2" )
- if dvi ~= "" then
- os.remove( filename .. ".dvi" )
- end
- if ps2pdf ~= "" then
- os.remove( filename .. ".ps" )
- end
- end
- else
- print("PMX/MusiXTeX processing of " .. filename .. ".pmx fails.\n")
- exit_code = 2
- --[[ uncomment for debugging
- print("tex = ", tex)
- print("dvi = ", dvi)
- print("ps2pdf = ", ps2pdf)
- --]]
- end
-
- end --if not io.open ...
- end --if this_arg == ...
- narg = narg+1
-until narg > #arg
-os.exit( exit_code )
diff --git a/Master/texmf-dist/tex/generic/pmx/pmx.tex b/Master/texmf-dist/tex/generic/pmx/pmx.tex
index 80131a498cc..3dcd94e4391 100644
--- a/Master/texmf-dist/tex/generic/pmx/pmx.tex
+++ b/Master/texmf-dist/tex/generic/pmx/pmx.tex
@@ -3,8 +3,10 @@
%% pmx.tex %%
%% %%
%%%%%%%%%%%%%%%%%%%%%%%
-\def\pmxversion{2.7}\def\pmxdate{3 April 13}
-
+\ifx\pmxversion\undefined\else\endinput\fi
+\def\pmxversion{2.74}\def\pmxdate{4 Feb 20}
+% 2.73 4 Feb 16 Fix \pmxclefsym to include \smalltreblelowoct
+% 2.73 Added \pmxlyr command.
% 2.619 At movement break, directly set \nbinstruments in \newmovement;
% probably don't need \newnoi any more.
% (2.619a) Added \resetlyrics in \newmovement.
@@ -37,9 +39,16 @@
% 1 July inserted stuff for hairpins
% 31 May 99 Redefined \smno
%
-\ifx\pmxnewclefs\undefined\else\endinput\fi
\immediate\write10%
-{PMX, a Preprocessor for MusiXTeX, Version\space\pmxversion a\space<\pmxdate>}%
+{PMX, a Preprocessor for MusiXTeX, Version\space\pmxversion b\space<\pmxdate>}%
+% Check for MusiXTeX version. TeX generates an error, not an ordinary
+% \end, because the \ifnum is not completed.
+\ifnum\mxvernumber<121\immediate\write16{ }
+\immediate\write16{****************}
+\immediate\write16{! STOPPING TeX because MusiXTeX Version = \mxvernumber}
+\immediate\write16{ while PMX 2.71+ requires at least 121}
+\immediate\write16{****************}
+\immediate\write16{ }\end{document}\fi
%
\edef\catcodeat{\the\catcode`\@}\catcode`\@=11
%
@@ -70,7 +79,8 @@
\newtoks\pmxclefsym
\def\pmxclef#1#2{\ifnum#1=0\def\pmxclefsym{\smalltrebleclef}\else\ifnum#1<5%
\def\pmxclefsym{\smallaltoclef}\else\ifnum#1=7\def\pmxclefsym{\smalltrebleclef}%
-\else\def\pmxclefsym{\smallbassclef}\fi\fi\fi%
+\else\ifnum#1=8\def\pmxclefsym{\smalltreblelowoct}%
+\else\def\pmxclefsym{\smallbassclef}\fi\fi\fi\fi%
% Adjust height here for older clef default heights.
\reflect#2\ifolder\ifnum#1=0\advance\reflect-2\else\ifnum#1<5\advance\reflect-4%
\else\advance\reflect-6\fi\fi\fi%
@@ -94,7 +104,8 @@
%
%\def\Gshl#1{\off{-#1pt}\tinynotesize}%
%\def\Gshr#1{\normalnotesize\off{#1pt}}%
-\def\segnoo#1#2{\zcharnote{#2}{\kern#1pt\musicsmallfont\char"56}}
+\def\segnoo#1#2{\zcharnote{#2}{\kern#1pt\musicsmallfont\char"56}}%
+\def\ssegno#1{\zcharnote{#1}{\musictinyfont\char86}}%
%
% Some ornaments...
%
@@ -207,8 +218,9 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
%\font\BIGfont=cmbx10 scaled\magstep4
%\font\Bigfont=cmbx10 scaled\magstep2
\font\xtrfont=cmsy10
-\font\BIGfont=\fontid bx10 scaled\magstep4
-\font\Bigfont=\fontid bx10 scaled\magstep2
+% Definitions deleted per Bob Tennent's request 150726
+%\font\BIGfont=\fontid bx10 scaled\magstep4
+%\font\Bigfont=\fontid bx10 scaled\magstep2
\font\tempo=\fontid bx12%
\font\dyn=\fontid bx10%
\fi\fi
@@ -319,21 +331,25 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
%
\smallaccid%
%
-% Put in a new time signature
+% Put in a new time signature. Modified 151226
%
\def\newtimes#1%
{\ifnum#1=0%
\n@wbar\writ@newclefs\advance\barsinlin@\@ne%
+%
+% Added 151216
+%
\wbarno@x\Writ@newsigns%
\advance\n@skip0.3\afterruleskip\widthtyp@\@ne\t@rmskip%
- \Writ@meters\addspace\afterruleskip%
+ \Writ@meters\lastbarpos\lin@pos\addspace\afterruleskip%
\else\ifnum#1=1%
\alaligne
\else
+ \wbarno@x%
%
-% Start new page
+% Added 151226
%
- \wbarno@x%
+\addspace\afterruleskip
%
% -0.7 gave too much space before meter.
%
@@ -409,9 +425,13 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
\kern-3.2\Interligne\kern-\parindent\kern-\afterruleskip%
\kern-\sign@skip%
\vbox{\vskip#1\Interligne
-\ifx\relax#2\relax\else{\Bigtype\leftlines{#2}}\fi\vskip#3\Interligne%
-\ifx\relax#4\relax\else{\BIGtype\centerlines{#4}}\fi\vskip#5\Interligne%
-\ifx\relax#6\relax\else{\Bigtype\rightlines{#6}}\fi\vskip#7\Interligne}}%
+% Next 3 lines replaced at Bob Tennent's request 150726
+%\ifx\relax#2\relax\else{\Bigtype\leftlines{#2}}\fi\vskip#3\Interligne%
+%\ifx\relax#4\relax\else{\BIGtype\centerlines{#4}}\fi\vskip#5\Interligne%
+%\ifx\relax#6\relax\else{\Bigtype\rightlines{#6}}\fi\vskip#7\Interligne}}%
+\ifx\relax#2\relax\else{\bigtype\leftlines{#2}}\fi\vskip#3\Interligne%
+\ifx\relax#4\relax\else{\BIgtype\centerlines{#4}}\fi\vskip#5\Interligne%
+\ifx\relax#6\relax\else{\bigtype\rightlines{#6}}\fi\vskip#7\Interligne}}%
%
% Slashes on stems
%
@@ -733,31 +753,41 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
\ifx\volta@startcor\undefined \else\advance\y@ii\cut@v\fi%
\advance\y@ii-#2pt\advance\y@ii-#3pt\kern-#3pt%
\kern-\h@lf\y@ii\lrlap{#1}\kern\h@lf\y@ii\kern#3pt}%
+%
+% mbrest mods 151226. Changed # of args in mbrest from 3 to 1;
+% changed pmx271 accordingly
+% 160103 back to 3 args
+%
+\def\mbgap{\qsk\hqsk}%
\def\mbrest#1#2#3{%
+\CenterBar{\ccn{9}{\meterfont#1}}{#2}{#3}%
\CenterBar{%
-\ifnum #1<10\raise 9\internote\lrlap{\meterfont #1}\fi%
\ifcase #1%
\relax%
-%\or\lrlap{\pause\off{\qn@width}}%
-\or\pausc%
-%\or\lrlap{\PAuse\off{\txt@ff}}%
-\or\PAusc%
-\or\lrlap{\PAuse\qsk\pause\off{\qn@width}}%
-\or\lrlap{\PAUSe\off{0.5\txt@ff}}%
-\or\lrlap{\PAUSe\qsk\pause\off{\qn@width}}%
-\or\lrlap{\PAUSe\qsk\PAuse\off{\txt@ff}}%
-\or\lrlap{\PAUSe\qsk\PAuse\qsk\pause\off{\txt@ff}\off{\qn@width}}%
-\or\lrlap{\PAUSe\qsk\PAUSe\off{\txt@ff}}%
-\or\lrlap{\PAUSe\qsk\PAUSe\qsk\pause\off{\txt@ff}\off{\qn@width}}%
-\else\def\vertpart{\hbox{\vrule width.6pt height1.5\internote depth1.5\internote}}%
-\raise\f@ur\internote\hbox{%
-\vertpart\hbox{%
-\advance\y@ii-\cut@v\advance\y@ii-\volta@startcor\advance\y@ii-\volta@endcor%
+\or\cpause% 1
+\or\cPAuse% 2
+\or\cPAuse\mbgap\cpause% 3
+\or\cPAUSe% 4
+\or\cPAUSe\mbgap\cpause% 5
+\or\cPAUSe\mbgap\cPAuse% 6
+\or\cPAUSe\mbgap\cPAuse\mbgap\cpause% 7
+\or\cPAUSe\mbgap\cPAUSe% 8
+\or\cPAUSe\mbgap\cPAUSe\mbgap\cpause% 9
+\else
+\def\vertpart{\hbox{\vrule width.6pt height1.5\internote depth1.5\internote}}%
+\raise4\internote\hbox{\vertpart%
\vrule width0.7\y@ii height.5\internote depth.5\internote%
-\kern-0.35\y@ii\raise5\internote\lrlap{\meterfont #1}\kern0.35\y@ii}%
\vertpart}%
\fi}{#2}{#3}}%
%
+% 151226 Redefine \xchangecontext to add in \afterruleskip
+%
+\def\xchangecontext{\n@wbar\writ@newclefs
+ \wbarno@x\Writ@newsigns\Writ@meters\lastbarpos\lin@pos\addspace\afterruleskip}%
+%
+% 151227 Define \ccoda so it positions like any other ornament
+%
+\def\ccoda{\n@iv85\@Char}%
\def\pcaesura#1#2{\raise#1\internote\hbox{%
\rlap{\kern.5\noteskip\kern#2\qn@width\musixchar79}}}%
\def\pbreath#1#2{\zcharnote6{\raise#1\internote\hbox{%
@@ -776,4 +806,68 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
\roffset{#2}{\zcharnote0{\raise#1\internote\hbox{\varline0{6pt}{20}}}}}%
\def\arpgu#1{\arpg{#1}{.8}}%
%
+% \pmxlyr command, see Usage afer \endinput. Dirk Laurie 2016-01-24
+% The unrolled loops are necessary because \assignlyricshere must have
+% a raw string literal as argument.
+\def\pmxlyr#1{%
+\ifnum\noinstrum@nt=1%
+ \ifnum\noport@@=1%
+ \if@pmx@nextvoice\setlyrics{I1P1V2}{#1}\assignlyricshere{I1P1V2}%
+ \else\setlyrics{I1P1V1}{#1}\assignlyricshere{I1P1V1}\fi\fi%
+ \ifnum\noport@@=2%
+ \if@pmx@nextvoice\setlyrics{I1P2V2}{#1}\assignlyricshere{I1P2V2}%
+ \else\setlyrics{I1P2V1}{#1}\assignlyricshere{I1P2V1}\fi\fi\fi%
+\ifnum\noinstrum@nt=2%
+ \ifnum\noport@@=1%
+ \if@pmx@nextvoice\setlyrics{I2P1V2}{#1}\assignlyricshere{I2P1V2}%
+ \else\setlyrics{I2P1V1}{#1}\assignlyricshere{I2P1V1}\fi\fi%
+ \ifnum\noport@@=2%
+ \if@pmx@nextvoice\setlyrics{I2P2V2}{#1}\assignlyricshere{I2P2V2}%
+ \else\setlyrics{I2P2V1}{#1}\assignlyricshere{I2P2V1}\fi\fi\fi%
+\ifnum\noinstrum@nt=3%
+ \ifnum\noport@@=1%
+ \if@pmx@nextvoice\setlyrics{I3P1V2}{#1}\assignlyricshere{I3P1V2}%
+ \else\setlyrics{I3P1V1}{#1}\assignlyricshere{I3P1V1}\fi\fi%
+ \ifnum\noport@@=2%
+ \if@pmx@nextvoice\setlyrics{I3P2V2}{#1}\assignlyricshere{I3P2V2}%
+ \else\setlyrics{I3P2V1}{#1}\assignlyricshere{I3P2V1}\fi\fi\fi%
+\ifnum\noinstrum@nt=4%
+ \ifnum\noport@@=1%
+ \if@pmx@nextvoice\setlyrics{I4P1V2}{#1}\assignlyricshere{I4P1V2}%
+ \else\setlyrics{I4P1V1}{#1}\assignlyricshere{I4P1V1}\fi\fi%
+ \ifnum\noport@@=2%
+ \if@pmx@nextvoice\setlyrics{I4P2V2}{#1}\assignlyricshere{I4P2V2}%
+ \else\setlyrics{I4P2V1}{#1}\assignlyricshere{I4P2V1}\fi\fi\fi%
+}%
+%
+% Definition for \lyrlink&\at, used with pmxlyr strings with '~'and '@'
+%
+\def\lk{\lyrlink}%
+\def\at#1{\lyrraisehere{#1\internote}}%
+
\catcode`\@=\catcodeat
+\endinput
+
+Usage:
+ \pmxlyr{TEXT} (assigns TEXT as lyrics in the current context)
+
+In PMX, enter the command with a trailing backslash. Starting at PMX 2.73,
+"TEXT" on a music line is equivalent to \pmxlyr{TEXT}.
+
+Spaces and hyphens separate TEXT into syllables. An underscore between
+words combines syllables from different words into a single syllable.
+
+TEXT may contain any TeX macro, in particular:
+ \space Space character that does not separate syllables
+ \lyrhyphenchar Hyphen that does not separate syllables
+ {\empty} Invisible syllable (for notes that get no lyrics)
+
+\pmxlyr uses the unexpanded contents of TEXT when looking for the
+syllable splitters, e.g. \def\mylyrics{many words of poetry} followed
+by \pmxlyr{\mylyrics} will put all those words on one note.
+
+For more information on what is acceptable in TEXT, consult mxlyrdoc.pdf.
+
+Limits: Lyrics are recognized only on the first two staves of instruments
+1 to 4. Elsewhere they are ignored.
+
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 32abd5560fc..e26412907ca 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -818,7 +818,6 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'pl', "&MAKEflatten",
'plain', "die 'skipping, just plain.tex, rest in knuth-lib",
'pl-qx', "&MAKEplqx",
- 'pmx', "die 'skipping, for TL16 per rdt'",
'pointRuler', "die 'skipping, requires compilation'",
'poltawski', "&MAKEcopy",
'polyglossia-kannada', "die 'skipping, now in polyglossia proper'",
diff --git a/Master/tlpkg/tlpsrc/pmx.tlpsrc b/Master/tlpkg/tlpsrc/pmx.tlpsrc
index 65de47076a9..af212821e9d 100644
--- a/Master/tlpkg/tlpsrc/pmx.tlpsrc
+++ b/Master/tlpkg/tlpsrc/pmx.tlpsrc
@@ -1,8 +1,6 @@
-binpattern f bin/${ARCH}/pmx2pdf
binpattern f bin/${ARCH}/pmxab
binpattern f bin/${ARCH}/scor2prt
#
-docpattern +f texmf-dist/doc/man/man1/pmx2pdf.*
docpattern +f texmf-dist/doc/man/man1/pmxab.*
docpattern +f texmf-dist/doc/man/man1/scor2prt.*