texlive[41352] trunk: musixtex (7jun16)
commits+karl at tug.org
commits+karl at tug.org
Sat Jun 11 01:19:38 CEST 2016
Revision: 41352
http://tug.org/svn/texlive?view=revision&revision=41352
Author: karl
Date: 2016-06-11 01:19:38 +0200 (Sat, 11 Jun 2016)
Log Message:
-----------
musixtex (7jun16)
Modified Paths:
--------------
trunk/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua
trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-musixdoc.txt
trunk/Master/texmf-dist/doc/generic/musixtex/README
trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex
trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex
trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex
trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex
trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf
trunk/Master/texmf-dist/doc/generic/musixtex/musixtex-install.pdf
trunk/Master/texmf-dist/doc/generic/musixtex/scripts/musixtex.pdf
trunk/Master/texmf-dist/doc/man/man1/musixtex.1
trunk/Master/texmf-dist/doc/man/man1/musixtex.man1.pdf
trunk/Master/texmf-dist/scripts/musixtex/musixtex.lua
trunk/Master/texmf-dist/tex/generic/musixtex/musixsty.tex
trunk/Master/texmf-dist/tex/generic/musixtex/musixtex.tex
Added Paths:
-----------
trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-123.txt
Modified: trunk/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,6 +1,6 @@
#!/usr/bin/env texlua
-VERSION = "0.16c"
+VERSION = "0.16e"
--[[
musixtex.lua: processes MusiXTeX files using prepmx and/or pmxab and/or
@@ -29,6 +29,12 @@
ChangeLog:
+ version 0.16e 2016-03-02 DL
+ missing version information (caused by batchmode in 0.16c) fixed
+
+ version 0.16d 2016-03-02 RDT
+ filename argument in autosp failure message fixed
+
version 0.16c 2016-02-24 RDT
-interaction batchmode for -q
report_error reports only the first error
@@ -176,7 +182,7 @@
function defaults()
prepmx = "prepmx"
pmx = "pmxab"
- tex = "etex"
+ tex = "etex"
musixflx = "musixflx"
dvi = dvips
ps2pdf = "ps2pdf"
@@ -385,7 +391,7 @@
if execute ("autosp " .. basename .. ".aspc" ) == 0 then
extension = "tex"
else
- print ("!! autosp preprocessing of " .. filename .. " fails.")
+ print ("!! autosp preprocessing of " .. basename .. ".aspc fails.")
exit_code = exit_code+1
return
end
@@ -447,59 +453,80 @@
end
end
--- Extracting version and path information from tempname.
--- The targets below rely on the exact output format used by various
--- programs and TeX files.
-targets = {
-mtxtex = "%(([^(]+mtx%.tex)%s*$",
-mtxlatex = "%(([^(]+mtxlatex%.sty)",
-mtxLaTeX = ".*mtxLaTeX.*",
-pmxtex = "%(([^(]+pmx%.tex)",
-musixtex = "%(([^(]+musixtex%.tex)",
-musixltx = "%(([^(]+musixltx%.tex)",
-musixlyr = "%(([^(]+musixlyr%.tex)",
+---- Report version information on musixtex.log
+
+-- File names and message signatures to be looked for in a TeX log file.
+logtargets = {
+mtxtex = {"mtx%.tex","mtxTeX"},
+mtxlatex = {"mtxlatex%.sty","mtxLaTeX"},
+pmxtex = {"pmx%.tex","PMX"},
+musixtex = {"musixtex%.tex","MusiXTeX"},
+musixltx = {"musixltx%.tex","MusiXLaTeX"},
+musixlyr = {"musixlyr%.tex","MusiXLYR"}
+}
+
+-- Signatures of messages displayed on standard output by programs
+capturetargets = {
MTx = "This is (M%-Tx.->)",
PMX = "This is (PMX[^\n]+)",
pdftex = "This is (pdfTeX[^\n]+)",
musixflx = "Musixflx%S+",
autosp = "This is autosp.*$",
-index = "autosp,MTx,mtxtex,mtxlatex,mtxLaTeX,PMX,pmxtex,"..
- "musixtex,musixltx,musixlyr,musixflx,pdftex"
+index = "autosp,MTx,PMX,musixflx,pdftex"
}
-extra_line = { mtxtex=true, musixtex=true, musixltx=true, pmxtex=true,
- musixlyr=true }
+function report_texfiles(logname)
+ local log = logname and io.open(logname)
+ if not log then return end
+ local lines =
+ {"--- TeX files actually included according to "..logname.." ---"}
+ log = log:read"*a"
+-- The following pattern matches filenames input by TeX, even if
+-- interrupted by a line break. It may include the first word of
+-- an \immediate\write10 message emitted by the file.
+ for pos,filename in log:gmatch"%(()(%.?[/]%a[%-/%.%w\n]+)" do
+ local hit
+ repeat
+ local oldfilename = filename
+ filename = oldfilename:match"[^\n]+" -- up to next line break
+ hit = io.open(filename) -- success if the file exists
+ if hit then break end
+ filename = oldfilename:gsub("\n","",1) -- remove line break
+ until filename==oldfilename
+ if hit then
+ for target,sig in pairs(logtargets) do
+ if filename:match(sig[1]) then
+ local i,j = log:find(sig[2].."[^\n]+",pos)
+ if j then lines[#lines+1] = filename.."\n "..log:sub(i,j) end
+ end
+ end
+ end
+ end
+ return table.concat(lines,'\n').."\n"
+end
function report_versions(tempname)
if not tempname then return end -- only available with -q
local logs = io.open(tempname)
if not logs then
- print ("No version information: could not open "..tempname)
+ musixlog:write ("No version information: could not open "..tempname)
return
end
local versions = {}
- local extra
- musixlog:write("--- Packages actually used according to "..
- tempname.." ---\n")
+ musixlog:write("--- Programs actually executed according to "..tempname.." ---\n")
for line in logs:lines() do
- if extra then
- versions[extra] = versions[extra] .. "\n " ..line
- extra = false
- else for target, pattern in pairs(targets) do
+ for target in capturetargets.index:gmatch"[^,]+" do
if not versions[target] then
- local found = line:match(pattern)
+ local found = line:match(capturetargets[target])
if found then
- extra = extra_line[target] and target
versions[target] = found
+ musixlog:write(found,"\n")
end
end
- end end
+ end
end
logs:close()
- for target in targets.index:gmatch"[^,]+" do if versions[target] then
- if target=="mtxLaTeX" then musixlog:write" " end
- musixlog:write(versions[target],"\n")
- end end
+ return
end
------------------------------------------------------------------------
@@ -519,6 +546,9 @@
basename, extension = find_file(this_arg) -- nil,nil if not found
extension = preprocess(basename,extension)
tex_process(tex,basename,extension)
+ if io.open(basename..".log") then -- to be printed later
+ versions = report_texfiles(basename..".log")
+ end
if basename and cleanup then
remove("pmxaerr.dat")
for ext in ("mx1,mx2,dvi,ps,idx,log,ilg,pml"):gmatch"[^,]+" do
@@ -531,6 +561,7 @@
narg = narg+1
until narg > #arg
+musixlog:write(versions)
report_versions(tempname)
musixlog:close()
os.exit( exit_code )
Added: trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-123.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-123.txt (rev 0)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-123.txt 2016-06-10 23:19:38 UTC (rev 41352)
@@ -0,0 +1,6 @@
+
+Changes from MusiXTeX 122 to 123:
+
+ + added \xtr and \ptr ornaments
+ + adjusted spacing of \tr
+ + corrected definition of \C at Inter for \nblines > 6
Property changes on: trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-123.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-musixdoc.txt
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-musixdoc.txt 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/ChangeLog-musixdoc.txt 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,3 +1,7 @@
+2016-06-06 RDT
+
+ Revised the material on page layout.
+
2015-02-20 RDT
Clean up title page and preface(s).
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/README 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/README 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,4 +1,4 @@
-This is MusiXTeX, version 1.22 (2016-02-25).
+This is MusiXTeX, version 1.23 (2016-06-06).
MusiXTeX is a TeX-based system for typesetting music.
The main author was Daniel Taupin, who died in a climbing
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1910,7 +1910,7 @@
%\check
- \section{musixsty}\index{musixsty@{\tt musixsty.tex}}
+ \section{musixsty}\index{musixsty@{\tt musixsty.tex}}\label{musixsty}
Provides certain text-handling facilities for titles, footnotes, and other
items not related to lyrics. It should not be used with \LaTeX. It includes
@@ -1918,6 +1918,8 @@
\item definitions of \keyindex{hsize}, \keyindex{vsize},
\keyindex{hoffset}, \keyindex{voffset} suitable for A$4$ paper; those using
other sizes may wish to modify it once and for all;
+ \item a \keyindex{rectoverso}\verb|{|\emph{dimension}\verb|}| command to set up even/odd-page
+ asymmetric margins;
\item a set of text size commands:
\begin{description}\setlength{\itemsep}{0ex}
@@ -1931,7 +1933,7 @@
\item[\keyindex{twtypoint}] to get $20.74$ point font size;
\item[\keyindex{twfvpoint}] to get $24.88$ point font size;
\end{description}
- \item commands for creating titles:
+ \item commands for creating title-page headings:
\begin{itemize}\setlength{\itemsep}{0ex} \item \keyindex{author} or
\keyindex{fullauthor} to be put at the right of the first page, below the
title of the piece; the calling sequence is, for example
@@ -1949,6 +1951,9 @@
\item \keyindex{othermention} which is displayed on the left of the page,
vertically aligned with author's name. It may contain \verb|\\| to display it on
several lines;
+ \item \keyindex{headline} which displays the argument at the top of the title page (use
+ \verb|\hss| after or before the argument text or both to left-align or
+ right-align or center the text);
\item \keyindex{maketitle} which displays all the previous stuff;
\end{itemize}
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,6 +1,6 @@
\title{\Huge\bfseries\musixtex\\[\bigskipamount]
\LARGE\bfseries Using \TeX{} to write polyphonic\\or
-instrumental music\\\Large\itshape Version 1.22}
+instrumental music\\\Large\itshape Version 1.23}
%\author{\Large\rm Daniel \sc Taupin\\\large\sl
@@ -67,7 +67,7 @@
takes advantage of the greater capacity of the e\TeX\ version of \TeX.
This manual
is the definitive reference to all features of
-\musixtex\ version~1.22.
+\musixtex\ version~1.23.
Novice users need not start here.
Most
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -48,28 +48,76 @@
so that the first staff
on the page is all the way at the top and the last staff all the way at
the bottom.
-
The macro \keyindex{musicparskip} will allow the existing space between
systems to increase by up to \verb|5\Interligne|.
-The following values of page layout parameters will allow the maximum material
-to fit on each page, provided the printer allows the margins that are implied.
+The following values of page-layout parameters will allow as much material
+as possible
+on a page, provided the printer supports these dimensions, which
+imply approximately half-inch margins:
\begin{center}
-\begin{tabular}{|l|l|l|}\hline
-\multicolumn{1}{|c|}{A4}&\multicolumn{1}{|c|}{letter}&\multicolumn{1}{|c|}{A4 or letter}\\\hline
-\multicolumn{3}{|c|}{\tt\Bslash parindent= 0pt}\\\hline
-\multicolumn{3}{|c|}{\tt\Bslash hoffset= -15.4mm}\\\hline
-\multicolumn{3}{|c|}{\tt\Bslash voffset= -10mm}\\\hline
-\verb+\hsize= 190mm+&\verb+\hsize= 196mm+&\verb+\hsize= 190mm+\\\hline
-\verb+\vsize= 260mm+&\verb+\vsize= 247mm+&\verb+\vsize= 247mm+\\\hline
+\begin{tabular}{|l|l|}\hline
+\multicolumn{1}{|c|}{A$4$}&\multicolumn{1}{|c|}{letter}\\\hline
+\verb+\hsize=190mm+&\verb+\hsize=7.5in+\\\hline
+\verb+\vsize=270mm+&\verb+\vsize=10in+\\\hline
\end{tabular}
\end{center}
-%avre
\zkeyindex{parindent}\zkeyindex{hoffset}\zkeyindex{voffset}
\zkeyindex{hsize}\zkeyindex{vsize}
+You may have to be more conservative if you have headlines or footlines
+or want
+even/odd-page asymmetry, such as with the \keyindex{rectoverso}
+command in \verb|musixsty.tex| (Section~\ref{musixsty}).
+If a score is going to be ``published'' at a public repository (such as
+\mbox{\textsc{imslp}}), you may want to allow for \emph{either}
+A$4$ \emph{or} letter paper, for example by setting the \verb|\hsize| to~190~mm
+and the \verb|\vsize| to~10~in.
+To determine the maximal dimensions that \emph{your} printer is capable of,
+process the standard file \verb|testpage.tex| with \LaTeX\ and
+print the result. The ``rulers'' on four sides will indicate
+how much of the one-inch ``margin'' material outside the frame can actually be printed.
+Your \verb|\hsize| and \verb|\vsize| parameters can be increased, or, if necessary, decreased
+accordingly. If your score is going to be printed by a publisher or a colleague, you can send
+\verb|testpage.pdf| to them to determine what margins are necessary for their
+printer.
+
+For \emph{any} values of
+\verb|\hsize| and \verb|\vsize|,
+material will normally be centered on the page by using one of the following
+command sequences, which simply split the difference between the page size and the text size,
+and then subtract one inch because of \TeX\ conventions:
+\begin{enumerate}
+\item[For A$4$ paper (210~mm $\times$ 297~mm):]\quad\\[-2ex]
+\begin{verbatim}
+\hoffset=210mm\advance\hoffset-\hsize\divide\hoffset2
+\advance\hoffset-1.0in
+\voffset=297mm\advance\voffset-\vsize\divide\voffset2
+\advance\voffset-1.0in
+\end{verbatim}
+\item[For letter-size paper (8.5~in $\times$ 11~in):] \quad\\[-2ex]
+\begin{verbatim}
+\hoffset=8.5in\advance\hoffset-\hsize\divide\hoffset2
+\advance\hoffset-1.0in
+\voffset=11in\advance\voffset-\vsize\divide\voffset2
+\advance\voffset-1.0in
+\end{verbatim}
+\end{enumerate}
+However, if the margins on the \verb|testpage| output are \emph{not}
+symmetric,
+the printer is mis-aligned.
+If this can't be corrected, the margin offsets will
+have to be adjusted. Ideally, this should be done in the \TeX\ configuration
+so all \TeX\ output will be corrected, but offsets can be adjusted
+for just \verb|musixtex| output using
+\verb|\advance\hoffset ...| and/or
+\verb|\advance\voffset ...|
+after the ``normal'' settings given above.
+
+\pagebreak
+
\section{Page numbering, headers and footers}\index{page
number}\index{footnote}
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -79,7 +79,8 @@
\item \keyindex{flageolett}\pitchp~to put a
small circle above a note head at pitch $p$.
\end{itemize}
-These marks are horizontally centered relative to solid note heads. To
+These marks are horizontally centered relative to solid note heads.
+To
compensate for the fact that whole notes are wider, you should use
\keyindex{wholeshift}\verb|{|\ital{Any nonspacing macro}\verb|}| to center accents
and other items (e.g.,~\verb|\Fermataup|) above a whole note.
@@ -272,8 +273,18 @@
\item \keyindex{backturn}\pitchp\ for \hbox to 1.5em{\kern 0.6em\backturn 0\hss}
\item \keyindex{tr}\pitchp\ for \hbox to 1.5em{\kern 0.6em\tr 0\hss}
\item \keyindex{trt}\pitchp\ for \hbox to 1.5em{\kern 0.6em\trt 0\hss}\quad (J. S.~Bach's \textit{trillo und mordant})
+ \item \keyindex{xtr}\pitchp\ for \hbox to 1.5em{\kern 0.5em\xtr 0\hss}
+ \item \keyindex{ptr}\pitchp\ for \hbox to 1.5em{\kern 0.5em\ptr 0\hss}
\end{itemize}
+To
+compensate for the fact that whole notes are wider, you may use
+\begin{quote}
+\keyindex{wholeshift}\verb|{|\mbox{\ital{Any nonspacing macro}}\verb|}|
+\end{quote}
+to center any of these ornaments
+above a whole note.
+
In the following macros for fermatas, the argument $p$ is the pitch of the
notehead on which the fermata rests, assuming no additional vertical
adjustments are needed for stems or intervening staff lines. They are all
@@ -508,7 +519,6 @@
in combination with \keyindex{zchar} or \keyindex{zcharnote}.
Since the \hbox to .7cm{ \Ped\hss} symbol is rather wide, it might collide
with adjacent bass notes. To shift it horizontally, you could use \verb|\loff{\PED}|.
-\vfill
The following excerpt from \textit{Liebestr\"aume} by Franz Liszt illustrates
a more modern approach to specifying piano-pedal usage:
@@ -546,13 +556,13 @@
\bar%
\Notes\pdlud\ql B\sk\qpl\sk\qpl|%
\zhl{.c}\ds\ibu1i0\qb1{^d^hjh}\tqu1d\en
-\Notes\zqu{M}\hppl\sk\qpu\sk\qu M|%
+\Notes\zqu{M}\hppl\sk\sk\qpu\sk\qu M|%
\ds\ibu1i0\qb1{dhjh}\tqu1d\en
\bar%
\Notes\zmidstaff{$\cdots$}\sk\pdlu\sk|\en
\endpiece%
\end{music}
-\pagebreak
+\vspace*{2ex}\par\noindent
This has been coded using the following commands:
\begin{quote}
\begin{tabular}{lll}
@@ -596,7 +606,7 @@
\bar%
\Notes\pdlud\ql B\sk\qpl\sk\qpl|%
\zhl{c}\ds\ibu1i0\qb1{^d^hjh}\tqu1d\en
-\Notes\zqu{M}\hppl\sk\qpu\sk\qu M|%
+\Notes\zqu{M}\hppl\sk\sk\qpu\sk\qu M|%
\ds\ibu1i0\qb1{dhjh}\tqu1d\en
\bar%
\Notes\zmidstaff{$\cdots$}\sk\pdlu\sk|\en
@@ -605,6 +615,7 @@
\end{footnotesize}
\end{quote}
+\pagebreak
\noindent
The following ``mixed'' patterns are also supported:
\begin{quote}
@@ -665,7 +676,7 @@
\section{Brackets, parentheses, oblique lines and slides}\label{brapar}
-Several varieties of brackets, parentheses and oblique lines are provided for
+Several varieties of brackets\index{brackets}, parentheses\index{parentheses} and oblique lines\index{oblique lines} are provided for
use within a score.
\begin{itemize}\setlength{\itemsep}{0ex}
\item \keyindex{lpar}\verb|{|$p$\verb|}| and
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixdoc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/musixtex-install.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/musixtex/scripts/musixtex.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/man/man1/musixtex.1
===================================================================
--- trunk/Master/texmf-dist/doc/man/man1/musixtex.1 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/doc/man/man1/musixtex.1 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,5 +1,5 @@
.\" This manpage is licensed under the GNU Public License
-.TH MUSIXTEX 1 2016-02-20 "musixtex version 0.16" ""
+.TH MUSIXTEX 1 2016-06-06 "musixtex version 0.16" ""
.SH NAME
musixtex \- processes MusiXTeX files, using pre-processors prepmx, pmxab and autosp as necessary,
Modified: trunk/Master/texmf-dist/doc/man/man1/musixtex.man1.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/scripts/musixtex/musixtex.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/musixtex/musixtex.lua 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/scripts/musixtex/musixtex.lua 2016-06-10 23:19:38 UTC (rev 41352)
@@ -1,6 +1,6 @@
#!/usr/bin/env texlua
-VERSION = "0.16c"
+VERSION = "0.16e"
--[[
musixtex.lua: processes MusiXTeX files using prepmx and/or pmxab and/or
@@ -29,6 +29,12 @@
ChangeLog:
+ version 0.16e 2016-03-02 DL
+ missing version information (caused by batchmode in 0.16c) fixed
+
+ version 0.16d 2016-03-02 RDT
+ filename argument in autosp failure message fixed
+
version 0.16c 2016-02-24 RDT
-interaction batchmode for -q
report_error reports only the first error
@@ -176,7 +182,7 @@
function defaults()
prepmx = "prepmx"
pmx = "pmxab"
- tex = "etex"
+ tex = "etex"
musixflx = "musixflx"
dvi = dvips
ps2pdf = "ps2pdf"
@@ -385,7 +391,7 @@
if execute ("autosp " .. basename .. ".aspc" ) == 0 then
extension = "tex"
else
- print ("!! autosp preprocessing of " .. filename .. " fails.")
+ print ("!! autosp preprocessing of " .. basename .. ".aspc fails.")
exit_code = exit_code+1
return
end
@@ -447,59 +453,80 @@
end
end
--- Extracting version and path information from tempname.
--- The targets below rely on the exact output format used by various
--- programs and TeX files.
-targets = {
-mtxtex = "%(([^(]+mtx%.tex)%s*$",
-mtxlatex = "%(([^(]+mtxlatex%.sty)",
-mtxLaTeX = ".*mtxLaTeX.*",
-pmxtex = "%(([^(]+pmx%.tex)",
-musixtex = "%(([^(]+musixtex%.tex)",
-musixltx = "%(([^(]+musixltx%.tex)",
-musixlyr = "%(([^(]+musixlyr%.tex)",
+---- Report version information on musixtex.log
+
+-- File names and message signatures to be looked for in a TeX log file.
+logtargets = {
+mtxtex = {"mtx%.tex","mtxTeX"},
+mtxlatex = {"mtxlatex%.sty","mtxLaTeX"},
+pmxtex = {"pmx%.tex","PMX"},
+musixtex = {"musixtex%.tex","MusiXTeX"},
+musixltx = {"musixltx%.tex","MusiXLaTeX"},
+musixlyr = {"musixlyr%.tex","MusiXLYR"}
+}
+
+-- Signatures of messages displayed on standard output by programs
+capturetargets = {
MTx = "This is (M%-Tx.->)",
PMX = "This is (PMX[^\n]+)",
pdftex = "This is (pdfTeX[^\n]+)",
musixflx = "Musixflx%S+",
autosp = "This is autosp.*$",
-index = "autosp,MTx,mtxtex,mtxlatex,mtxLaTeX,PMX,pmxtex,"..
- "musixtex,musixltx,musixlyr,musixflx,pdftex"
+index = "autosp,MTx,PMX,musixflx,pdftex"
}
-extra_line = { mtxtex=true, musixtex=true, musixltx=true, pmxtex=true,
- musixlyr=true }
+function report_texfiles(logname)
+ local log = logname and io.open(logname)
+ if not log then return end
+ local lines =
+ {"--- TeX files actually included according to "..logname.." ---"}
+ log = log:read"*a"
+-- The following pattern matches filenames input by TeX, even if
+-- interrupted by a line break. It may include the first word of
+-- an \immediate\write10 message emitted by the file.
+ for pos,filename in log:gmatch"%(()(%.?[/]%a[%-/%.%w\n]+)" do
+ local hit
+ repeat
+ local oldfilename = filename
+ filename = oldfilename:match"[^\n]+" -- up to next line break
+ hit = io.open(filename) -- success if the file exists
+ if hit then break end
+ filename = oldfilename:gsub("\n","",1) -- remove line break
+ until filename==oldfilename
+ if hit then
+ for target,sig in pairs(logtargets) do
+ if filename:match(sig[1]) then
+ local i,j = log:find(sig[2].."[^\n]+",pos)
+ if j then lines[#lines+1] = filename.."\n "..log:sub(i,j) end
+ end
+ end
+ end
+ end
+ return table.concat(lines,'\n').."\n"
+end
function report_versions(tempname)
if not tempname then return end -- only available with -q
local logs = io.open(tempname)
if not logs then
- print ("No version information: could not open "..tempname)
+ musixlog:write ("No version information: could not open "..tempname)
return
end
local versions = {}
- local extra
- musixlog:write("--- Packages actually used according to "..
- tempname.." ---\n")
+ musixlog:write("--- Programs actually executed according to "..tempname.." ---\n")
for line in logs:lines() do
- if extra then
- versions[extra] = versions[extra] .. "\n " ..line
- extra = false
- else for target, pattern in pairs(targets) do
+ for target in capturetargets.index:gmatch"[^,]+" do
if not versions[target] then
- local found = line:match(pattern)
+ local found = line:match(capturetargets[target])
if found then
- extra = extra_line[target] and target
versions[target] = found
+ musixlog:write(found,"\n")
end
end
- end end
+ end
end
logs:close()
- for target in targets.index:gmatch"[^,]+" do if versions[target] then
- if target=="mtxLaTeX" then musixlog:write" " end
- musixlog:write(versions[target],"\n")
- end end
+ return
end
------------------------------------------------------------------------
@@ -519,6 +546,9 @@
basename, extension = find_file(this_arg) -- nil,nil if not found
extension = preprocess(basename,extension)
tex_process(tex,basename,extension)
+ if io.open(basename..".log") then -- to be printed later
+ versions = report_texfiles(basename..".log")
+ end
if basename and cleanup then
remove("pmxaerr.dat")
for ext in ("mx1,mx2,dvi,ps,idx,log,ilg,pml"):gmatch"[^,]+" do
@@ -531,6 +561,7 @@
narg = narg+1
until narg > #arg
+musixlog:write(versions)
report_versions(tempname)
musixlog:close()
os.exit( exit_code )
Modified: trunk/Master/texmf-dist/tex/generic/musixtex/musixsty.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/musixtex/musixsty.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/tex/generic/musixtex/musixsty.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -18,9 +18,10 @@
%
\ifx\undefined\Tenpoint \else \endinput\fi
-\immediate\write16{MusiXtextSTYle T.116\space<27 February 2015>}%
+\immediate\write16{MusiXtextSTYle T.123\space<04 March 2016>}%
% modified by RDT to be independent of Computer Modern (other than Math fonts)
+% RDT: added \headline{..} in \maketitle
\edef\catcodeat{\the\catcode`\@}\catcode`\@=11
\edef\catcode at gt{\the\catcode`\>}\catcode`\>=12
@@ -292,6 +293,9 @@
\let\othert at itremorceau\empty
\def\othermention#1{\def\othert at itremorceau{#1}}
+\let\headl at ne\undefined
+\def\headline#1{\def\headl at ne{#1}}
+
\let\s at hortauthor\empty
\def\shortauthor#1{\def\s at hortauthor{(#1)}}
@@ -310,7 +314,9 @@
\output{\outmorceau}
-\def\maketitle{\centerline{\BIGfont \ifx\headt at itremorceau\undefined
+\def\maketitle{%
+\ifx\headl at ne\undefined\else\line{\headl at ne}\bigskip\fi% for version 123 RDT
+\centerline{\BIGfont \ifx\headt at itremorceau\undefined
\titremorceau\else\headt at itremorceau\fi}
\medskip
\ifx\subt at itremorceau\undefined\else
@@ -353,16 +359,30 @@
\catcode`\<=\catcode at lt
\catcode`\@=\catcodeat
-\hsize=185mm
-\vsize=275mm
-\hoffset=210mm
-\advance\hoffset -\hsize
-\divide\hoffset 2\relax
-\advance\hoffset -2.54cm
+%%% A4 (210mm x 297mm):
+\hsize=190mm %%% adjust to increase/decrease printer margins
+\vsize=270mm %%% adjust to increase/decrease printer margins
+\hoffset=210mm\advance\hoffset-\hsize\divide\hoffset2
+\advance\hoffset-1.0in % TeX convention
+\voffset=297mm\advance\voffset-\vsize\divide\voffset2
+\advance\voffset-1.0in % TeX convention
+
+%%% letter-size (8.5in x 11.0in):
+%\hsize=7.5in %%% adjust to increase/decrease printer margins
+%\vsize=10.0in %%% adjust to increase/decrease printer margins
+%\hoffset=8.5in\advance\hoffset-\hsize\divide\hoffset2
+%\advance\hoffset-1.0in % TeX convention
+%\voffset=11.0in\advance\voffset-\vsize\divide\voffset2
+%\advance\voffset-1.0in % TeX convention
+
+%%% To determine the *minimal* margins supported by your
+%%% printer and check for printer mis-alignment, process
+%%% testpage.tex with LaTeX and print the result.
+
\tenpoint
-%%%%%%%%%%%%%%%%%%%%%%%%% local adjust to be tuned %%%%%%%%%%%%%%%%%%%%%%%%%%
-\advance\hoffset -5mm
-\voffset=-1.54cm
-%%%%%%%%%%%%%%%%%%%%%%%%% local adjust to be tuned %%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%% adjust here for a non-centering printer %%%%%%%%
+%\advance\hoffset 0mm
+%\advance\voffset 0mm
+
\endinput
Modified: trunk/Master/texmf-dist/tex/generic/musixtex/musixtex.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/musixtex/musixtex.tex 2016-06-10 23:19:01 UTC (rev 41351)
+++ trunk/Master/texmf-dist/tex/generic/musixtex/musixtex.tex 2016-06-10 23:19:38 UTC (rev 41352)
@@ -25,15 +25,21 @@
\def\mufl at x{0.83}%
\def\mxmajorvernumber{1}
-\def\mxminorvernumber{22}
+\def\mxminorvernumber{23}
\def\mxvernumber{\mxmajorvernumber\mxminorvernumber}% make it possible to compare with \ifnum
\def\mxversuffix{}%
\edef\mxversion{\mxmajorvernumber.\mxminorvernumber\mxversuffix}
-\def\mxdate{2016-02-24}
+\def\mxdate{2016-06-06}
\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}%
\everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}%
+% version 1.23
+
+% added \xtr and \ptr ornaments
+% adjusted spacing of \tr
+% corrected definition of \C at Inter for \nblines > 6
+
% version 1.22
% bi and sc font definitions added; sl and tt definitions for musixsty moved
@@ -1784,9 +1790,15 @@
\edef\internote{\csname i at n\romannumeral\noinstrum at nt\endcsname}%
\interportee\interfacteur\internote \interportee\tw@\interportee}
-\def\C at Inter{\stem at skip\interportee \advance\stem at skip-\@ight\internote
- \ifnum\nblines=\f at ur \advance\stem at skip\tw@\internote \fi
- \ifnum\nblines>\fiv@ \advance\stem at skip-\tw@\internote \fi}
+\def\C at Inter{% RDT: corrected to work if \nblines > 6 (version 1.23)
+ \stem at skip\interportee
+ \ifnum\nblines=\thr@@
+ \advance\stem at skip-\@ight\internote
+ \else
+ \advance\stem at skip-\nblines\internote
+ \advance\stem at skip-\nblines\internote
+ \advance\stem at skip\tw@\internote
+ \fi}
%%% loop over instruments and staffs
@@ -4090,9 +4102,14 @@
\def\mordent{\n at iv89\@Char}
\def\Mordent{\n at iv119\@Char}
\def\doublethumb{\n at iv121\@Char}
-\def\tr#1{\zcn{#1}{\ppff tr}}
\def\trt#1{\loffset{0.65}{\shake{#1}}\roffset{0.65}{\mordent{#1}}}
+
+\def\tr#1{\loffset{0.15}{\zcn{#1}{\ppff tr}}} % \loffset added version 1.23 RDT
+\def\xtr#1{\raise1.25\internote\hbox{\n at iv111\zcn{#1}\C at ChaR}} % added version 1.23 RDT
+\def\ptr#1{\raise1.25\internote\hbox{\n at iv117\zcn{#1}\C at ChaR}} % added version 1.23 RDT
+%\def\Xtr#1{\wholeshift{\xtr{#1}}} % unnecessary?
+
%%% accents
\def\upbow{{\musixfont\@xxiii}}
More information about the tex-live-commits
mailing list