summaryrefslogtreecommitdiff
path: root/support
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-02-12 03:01:46 +0000
committerNorbert Preining <norbert@preining.info>2023-02-12 03:01:46 +0000
commitf76939750d63d6088b9bdeac794ce3fdf33d1269 (patch)
tree0cd0d327b53fe3a657722ae4188983b8b100468d /support
parent73abb311c03e955ad9f7b7464390a5722b20b915 (diff)
CTAN sync 202302120301
Diffstat (limited to 'support')
-rwxr-xr-xsupport/pmx/OSX/pmxabbin739752 -> 0 bytes
-rwxr-xr-xsupport/pmx/OSX/scor2prtbin118268 -> 0 bytes
-rw-r--r--support/pmx/README3
-rw-r--r--support/pmx/doc/ChangeLog4
-rw-r--r--support/pmx/doc/pmx298.pdfbin355137 -> 0 bytes
-rw-r--r--support/pmx/doc/pmx300.pdfbin0 -> 362113 bytes
-rw-r--r--support/pmx/doc/pmx300.tex (renamed from support/pmx/doc/pmx298.tex)50
-rw-r--r--support/pmx/doc/pmxab.14
-rw-r--r--support/pmx/doc/ref300.pdf (renamed from support/pmx/doc/ref298.pdf)bin66121 -> 66769 bytes
-rw-r--r--support/pmx/doc/ref300.tex (renamed from support/pmx/doc/ref298.tex)44
-rw-r--r--support/pmx/tex/pmx.tex11
11 files changed, 78 insertions, 38 deletions
diff --git a/support/pmx/OSX/pmxab b/support/pmx/OSX/pmxab
deleted file mode 100755
index ca49c9ce38..0000000000
--- a/support/pmx/OSX/pmxab
+++ /dev/null
Binary files differ
diff --git a/support/pmx/OSX/scor2prt b/support/pmx/OSX/scor2prt
deleted file mode 100755
index c7446385a5..0000000000
--- a/support/pmx/OSX/scor2prt
+++ /dev/null
Binary files differ
diff --git a/support/pmx/README b/support/pmx/README
index 4102cf4bd8..faacc32d2d 100644
--- a/support/pmx/README
+++ b/support/pmx/README
@@ -1,4 +1,5 @@
-This is PMX, version 2.98a (2022-03-06). PMX provides a preprocessor for MusiXTeX.
+This is PMX, version 3.00 (2023-01-27). 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
diff --git a/support/pmx/doc/ChangeLog b/support/pmx/doc/ChangeLog
index e5389c77f5..c3474966f8 100644
--- a/support/pmx/doc/ChangeLog
+++ b/support/pmx/doc/ChangeLog
@@ -1,3 +1,7 @@
+3.00
+ Provides an option to remove the limit of 9 on forced
+ beams. A side benefit of selecting the option is that all
+ beams are vectorized and 2-digit figured bass are allowed.
2.98
Fix beaming in 6/2 time by setting mapfb(5) and (6) = 0 in make1bar(...)
2.97
diff --git a/support/pmx/doc/pmx298.pdf b/support/pmx/doc/pmx298.pdf
deleted file mode 100644
index ee89215541..0000000000
--- a/support/pmx/doc/pmx298.pdf
+++ /dev/null
Binary files differ
diff --git a/support/pmx/doc/pmx300.pdf b/support/pmx/doc/pmx300.pdf
new file mode 100644
index 0000000000..53de16c305
--- /dev/null
+++ b/support/pmx/doc/pmx300.pdf
Binary files differ
diff --git a/support/pmx/doc/pmx298.tex b/support/pmx/doc/pmx300.tex
index 82e8d24a4e..d3231f33f3 100644
--- a/support/pmx/doc/pmx298.tex
+++ b/support/pmx/doc/pmx300.tex
@@ -1,6 +1,6 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% pmx298.tex 2/4/2022
+% pmx300.tex 1/28/2023
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[11pt]{article}
@@ -47,7 +47,7 @@
PMX~--~a Preprocessor for \MusiXTeX{}\\
\null\vskip-15pt
\Large\sl
- Version 2.98~--~4 February 2022\\
+ Version 3.00~--~28 January 2023\\
\author{\Large\rm Don \sc Simons\\
\large\sl
Dr. Don's PC and Harpsichord Emporium\\
@@ -66,11 +66,12 @@
\maketitle
\section*{Preface}
-Compared to version 2.94, \PMX version 2.98 does not have any new functionality.
-As documented in the opening comments in the source code file pmx298.for,
-it does have several bug fixes, and changes in coding formalism to make it more
-broadly compatible with other FORTRAN compilers beyond GNU, and for translation from
-FORTRAN to C.
+Compared to version 2.98, \PMX version 3.00 has very minor changes. It provides
+an option to remove the limit of 9 on the slope of forced beams. A side benefit
+of selecting the option is that all beams will be {\it vectorized}, i.e., no
+longer created with font characters, thereby removing some very slight jogs in
+longer beams (\ref{Acommands}). It also allows 2-digit figured bass
+figures (\ref{figbass}).
\setcounter{page}1
% Need extra line to push last line of TOC to next page
@@ -100,7 +101,7 @@ The \MusiXTeX~community was stunned by the sudden death of Werner Icking on
February 8, 2001. He had been a benevolent patriarch, touching many
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
+and generosity. His spirit runs deep through all of \PMXX. His encouragement
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
@@ -1237,12 +1238,18 @@ immediately by several options.
grouping to a prior one started in another system (see below).
One, two, or three consecutive integers, each preceded with {\tt +}
-or {\tt -} , will affect the beam's appearance. The first integer is
+or {\tt -} , will affect the beam's geometry. The first integer is
an adjustment to the starting level (in \bs{\tt internote}s) and may range
from -30 to 30; the second is a slope adjustment with the same
-permissible range; the third is an alternate adjustment to the
+permissible range. The final slope parameter passed to \MusiXTeX{} will be the
+internally computed one plus the adjustment. If it exceeds 9 in magnitude, \PMX
+by default will reduce the magnitude to 9. Rarely a user may wish to enable
+final slopes of larger magnitude. This can be done with the global option
+{\tt AB} (see section ~\ref{Acommands}).
+
+The third number, if present, is an alternate adjustment to the
starting level (in beam thicknesses) and may only range from 1 to 3,
-always acting to increase the stem length. The latter may be used to
+always acting to increase the stem length. This may be used to
align consecutive horizontal beams which have internal multiplicity
changes. For example, in 2/4 time, {\tt c84~c1~c~c~c~c8} would cause two
beams but the
@@ -2092,6 +2099,19 @@ For \NEW{2.7} printing on {\bf l}etter or a{\bf 4} paper, the command {\tt Acl}
of the printed area so it will be properly centered with no further
adjustments needed when running {\bfx dvips}.
+{\bf Removing restriction on beam slopes.}\label{beamslope}
+\PMX and \MusiXTeX{} by \NEW{3.0}default limit the magnitude of beam slopes to 9. The
+global \PMX command {\tt AB} removes that restriction for forced beams only.
+With {\tt AB} in force, the second numerical parameter for a forced beam can be
+used to create beams having slope magnitudes up to 30. To use this option, the
+file {\tt musixvbm.tex} must be present in the \TeX system. However, with the
+suboption {\tt f}, i.e., with {\tt ABf}, very advanced users may suppress
+loading {\tt musixvbm.tex}, but will need to provide their own \TeX files
+to admit larger beam slopes. A side effect of {\tt AB} is to cause all beams
+to be {\it vectorized}, i.e., drawn rather than relying on fonts. Some may wish
+use {\tt AB} solely for this purpose, as it eliminates the occasional jogs seen
+even in shallower font-based beams.
+
\subsubsection{Extra hardspace, horizontal shifts} \label{hardspace}
Despite the author's best intentions to relieve you of the chore
@@ -2353,13 +2373,17 @@ entered with an \bs{\tt input} command. This feature is retained mainly for
backward compatibility; it has been essentially replaced by the various options
for in-line \TeX ~strings.
-\subsection{Figured Bass}
+\subsection{Figured Bass}\label{figbass}
Figure commands are entered {\it after} their associated note commands.
They only work in the first (lowest) voice, and in any one other voice\NEW{2.6}.
Enter the characters as
they would appear from top to bottom, and as you might pronounce them,
-e.g., {\tt 64} or {\tt 73}. Flats here are {\tt -} (minus), sharps are
+e.g., {\tt 64} or {\tt 73}.
+Figures may range from 2 to 19\NEW{3.0}. The ones larger than 9 are entered as two
+consecutive digits. They may likewise be combined with others to produce a stack, so
+for example {\tt 119} will produce {\tt 11} over {\tt 9}.
+Flats in figures are {\tt -} (minus), sharps are
{\tt \#}, and
naturals {\tt n}, {\it before} the number (if there is a number) (notice
the characters are different here than in notes).
diff --git a/support/pmx/doc/pmxab.1 b/support/pmx/doc/pmxab.1
index 348517f4ae..e9d648c164 100644
--- a/support/pmx/doc/pmxab.1
+++ b/support/pmx/doc/pmxab.1
@@ -1,4 +1,4 @@
-.TH pmxab 1 "12 Feb 2018" "Version 2.8.4" "PMX Manual Page"
+.TH pmxab 1 "30 August 2022" "Version 2.8.4" "PMX Manual Page"
.SH NAME
pmxab \- a MusiXTeX preprocessor
.SH SYNOPSIS
@@ -10,7 +10,7 @@ pmxab is a preprocessor for MusiXTeX.
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
+The goal of PMX is to facilitate 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.
diff --git a/support/pmx/doc/ref298.pdf b/support/pmx/doc/ref300.pdf
index 77f7ef2674..ae4ef88737 100644
--- a/support/pmx/doc/ref298.pdf
+++ b/support/pmx/doc/ref300.pdf
Binary files differ
diff --git a/support/pmx/doc/ref298.tex b/support/pmx/doc/ref300.tex
index af2b40d8bd..ab98f9c9bd 100644
--- a/support/pmx/doc/ref298.tex
+++ b/support/pmx/doc/ref300.tex
@@ -1,6 +1,6 @@
%%%%%%%%%%%%%%%%%
%%
-%% ref298.tex (latex)
+%% ref300.tex (latex)
%%
%%%%%%%%%%%%%%%%%
\ifx\documentstyle\undefined
@@ -43,8 +43,8 @@
%\let\blank\ \def\ {\blank\blank}
\centerline{QUICK REFERENCE TABLE FOR {\bf PMX},
-Version 2.98,
-Feb 2022~~~
+Version 3.00,
+Feb 2023~~~
\hfill Don Simons (dsimons@roadrunner.com)}
%\begin{multicols}{2}
@@ -253,7 +253,9 @@ A & Miscellaneous controls.
\ [cl,c4] & Set vert. and horiz. page sizes and offsets for letter or a4 paper.\\
\ [V +,- {\it n1} +,- {\it n2}] & Vertical skips, \bsn{}internotes, before and after next
~\bsn{}eject.\\
-\dhline
+\ [B] & Remove limit of 9 on beam slopes. Requires musixvbm.tex by default.\\
+\ \ [f] & Do not require access to musixvbm.tex\\
+\newcol
B & Toggles default stem direction for middle line of bass clef.
(intial direction is up).\\
\dhline
@@ -261,7 +263,7 @@ C & Clef change.\\
\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, octave treble\\
-\newcol
+\dhline
D & Dynamics.\\
\ p,pp,...,ffff & Pre-defined standard dynamics.\\
\ "{\it text}" & Any text string.\\
@@ -299,7 +301,7 @@ I & MIDI controls. Only at start of an input block.\\
\ [MR{\it i}] & Start recording macro {\it i}.\\
\ [M] & Stop recording.\\
\ [MP{\it i}] & Playback (insert) macro {\it i}.\\
-\dhline
+\newcol
K & Key signature change and/or transposition.\\
\ [n] & Suppress printing naturals.\\
\ [i {\it i}] & Applies only to instrument {\it i}.\\
@@ -307,7 +309,7 @@ K & Key signature change and/or transposition.\\
by 1/2 step to same-name key.\\
\ \ +,- {\it i} & New key signature.\\
\ \ \ [i {\it i}]... & Applies to another instrument {\it i}.\\
-\newcol
+\dhline
l & Next input line is a text string
to appear below top staff.\\
\dhline
@@ -339,12 +341,12 @@ m & Meter change. Voice \#1 only. Start of input block only.\\
\ \ {\it d1}[{\it d2}]/ & true denominator \\
\ \ \ {\it d1}[{\it d2}]/ & printed numerator \\
\ \ \ \ {\it d1}[{\it d2}] & printed denominator \\
-\dhline
+\newcol
M & Macro. If alone, ends recording or saving.\\
\ [R,S,P] & Record (store and execute), save (store but do not execute),
or playback. \\
\ \ {\it i} & Macro ID number, from 1 to 20. \\
-\newcol
+\dhline
P & Start page numbering in this page. Voice \#1 only.
Start of input block only.\\
\ [{\it i}] & Starting page number. Default is 1.\\
@@ -376,13 +378,13 @@ T & Title string. Only at start of first input block.\\
vertical space below entire title block.
{\tt Tt} must come after {\tt Ti} and {\tt Tc} for this to work.\\
{\it text}\bs\bs{\it text} & Make a line break in the title string.\\
-\dhline
+\newcol
V & Toggle for Volta. Voice \#1 only. Start of bar only.
For scor2prt, only allowed one per input block,
and it must come at start of block.\\
\ [{\it text}] & Text for start of volta. May not be ``b" or ``x".\\
\ b,x & At end of volta, boxed end or horizontal (no box).\\
-\newcol
+\dhline
W & Set new minimum horizontal space between noteheads.\\
\ . & Decimal point (required).\\
\ \ {\it d1} & Tenths of notehead width. Default is 3.\\
@@ -390,7 +392,7 @@ W & Set new minimum horizontal space between noteheads.\\
x & Floating figure (offset to right).\\
\ {\it d1} & Number of note-length units of offset.\\
\ \ {\it d2} & Note-length unit. Same code as for note durations.\\
-\ \ \ 2,3,\dots,9,\break\rightline{\#,-,n,0{\it d1}}
+\ \ \ 2,3,\dots,9,\break\rightline{\#,-,n,0{\it x}}
& Characters for floating figure,
arranged as in normal figure.\\
\dhline
@@ -403,16 +405,18 @@ X & Shift or insert hardspace. \\
\ [P] & Use only in part, not score. \\
\ [B] & Use in both score and part. \\
\dhline
-2,3,\dots,9,\#,-,n & Normal figure.
+1,2,3,\dots,9,\break\rightline{\#,-,n} & Normal single-digit figure.
Combine characters as needed. See manual.\\
+\ [1,2,3,\dots,9] & Following 1, 2nd digit of 2-digit figure.\\
\ [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. \\
-\ [+{\it i}] & In any figure, raise by {\it i}~\bs internotes. \\
-\ [s] & (With 2,4,5,6,9) add slash. Must have font cmrj. \\
-\dhline
+\ \ [:] & Insert if followed by another figure.\\
+\_ {\rm (underscore)} & Placeholder figure, to lower the next one.\\
+\ [+{\it i}] & In any figure, raise by {\it i}~\bs internotes.\\
+\ [s] & After 2,4,5,6, or 9, add slash. Must have font cmrj.\\
+\newcol
[ & Start a forced beam.\\
\ [j] & Continue an existing staff-\break jumping beam.\\
\ [u,l] & Direction of forced beam.\\
@@ -428,7 +432,7 @@ X & Shift or insert hardspace. \\
\dhline
] & End forced beam.\\
\ [j] & Keep beam open, prepare to jump to other staff \\
-\newcol
+\dhline
][ & Between two notes in a forced beam,
decrease multiplicity to 1, then immediately increase.
Treated as a single symbol, set off by spaces.\\
@@ -456,7 +460,7 @@ X & Shift or insert hardspace. \\
\dhline
[|] & Bar line. Only used for checking, except required after
end-of-bar inserted hardspace.\\
-\dhline
+\newcol
/ & Terminate input for a staff in this input block.\\
\dhline
// & Terminate first line of music on this staff for this input
@@ -474,7 +478,7 @@ 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.\\
-\newcol
+\dhline
"\break\null\ {\it text}" & Lyrics. See pmx294.pdf section 2.2.15 for details.\\
\ \ [@] & Set a vertical offset\\
\ \ \ a,b & Above or below the staff\\
diff --git a/support/pmx/tex/pmx.tex b/support/pmx/tex/pmx.tex
index 3576f581cf..abde2e0710 100644
--- a/support/pmx/tex/pmx.tex
+++ b/support/pmx/tex/pmx.tex
@@ -4,7 +4,8 @@
%% %%
%%%%%%%%%%%%%%%%%%%%%%%
\ifx\pmxversion\undefined\else\endinput\fi
-\def\pmxversion{2.94}\def\pmxdate{23 Jan 20}
+\def\pmxversion{3.00}\def\pmxdate{27 Jan 23}
+% 3.00 add steep beam stuff
% 2.94 add def'ns of \hbp, \hbpp
% 2.80 add def'n of \slx, real stemlength
% 2.73 4 Feb 16 Fix \pmxclefsym to include \smalltreblelowoct
@@ -60,7 +61,6 @@
\def\mtr#1{\zcharnote{#1}%
{\specfnt\kern 1.5\internote\raise 0.3\internote\hbox to 0pt{/\hss}%
\kern -0.7\internote\raise 1.0\internote\hbox to 0pt{/\hss}}}
-%
\newif\ifolder%
%
% Older fonts had clefs at different heights. If you have the older
@@ -864,6 +864,13 @@ depth \h@lf\pcil width \razclef\kern-\h@lf\razclef\kern-\h@lf\pcil\kern-.1pt
\def\hbp{\h@symbol\@qbp}%
\def\hbpp{\h@symbol\@qbpp}%
%
+%
+% For allowing steeper beams
+%
+\def\C@ib#1{\max@n@v\@l\min@n@v{-\@l}\global\b@p\n@v
+\getcurpos \global\b@x\y@v \b@z#14.333\interbeam \advance\b@z\altportee
+\pl@base \global\advance\b@z\y@i}
+%
\catcode`\@=\catcodeat
\endinput