diff options
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua | 66 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/musixtex/addons/curly.tex | 11 | ||||
-rw-r--r-- | Master/texmf-dist/dvips/musixtex/psslurs.pro | 282 | ||||
-rw-r--r-- | Master/texmf-dist/fonts/map/dvipdfm/musixtex/musix.map | 71 | ||||
-rwxr-xr-x | Master/texmf-dist/scripts/musixtex/Windows/musixflx.bat | 3 | ||||
-rwxr-xr-x | Master/texmf-dist/scripts/musixtex/Windows/musixtex.bat | 3 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/musixtex/doc/musixflx.1 | 7 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/musixtex/doc/musixflx.pdf | bin | 0 -> 4339 bytes | |||
-rw-r--r-- | Master/texmf-dist/scripts/musixtex/doc/musixtex.1 | 39 | ||||
-rw-r--r-- | Master/texmf-dist/scripts/musixtex/doc/musixtex.pdf | bin | 0 -> 3951 bytes | |||
-rwxr-xr-x | Master/texmf-dist/scripts/musixtex/musixtex.lua | 66 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/musixflx.1 | 7 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/musixflx.man1.pdf | bin | 4150 -> 4148 bytes | |||
-rw-r--r-- | Master/texmf/doc/man/man1/musixtex.1 | 39 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/musixtex.man1.pdf | bin | 3903 -> 3850 bytes |
15 files changed, 157 insertions, 437 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua b/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua index 3d8c4482e0f..c567af06950 100755 --- a/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua +++ b/Build/source/texk/texlive/linked_scripts/musixtex/musixtex.lua @@ -1,9 +1,9 @@ #!/usr/bin/env texlua -VERSION = "0.2" +VERSION = "0.3" --[[ - musixtex.lua: runs [pdf]etex -> musixflx -> [pdfe]tex [ -> dvips -> ps2pdf ] + musixtex.lua: processes a MusiXTeX file and then deletes intermediate files (c) Copyright 2011 Bob Tennent rdt@cs.queensu.ca @@ -27,6 +27,9 @@ VERSION = "0.2" ChangeLog: + version 0.3 2011-04-25 RDT + Add -d (dvipdfm) and -s (stop at dvi) options. + version 0.2 2011-04-21 RDT Allow basename.tex as filename. Add -p option for pdfetex processing. @@ -34,14 +37,13 @@ VERSION = "0.2" --]] - -tex = "etex" -musixflx = "musixflx" -dvips = "dvips -q" -ps2pdf = "ps2pdf" - function usage() - print("Usage: [texlua] musixtex.lua [options] basename[.tex]") + print("Usage: [texlua] musixtex.lua [option] [basename[.tex]]") + print("options: -v version") + print(" -h help") + print(" -p pdfetex") + print(" -d dvipdfm") + print(" -s stop at dvi") end function whoami () @@ -49,8 +51,9 @@ function whoami () end if #arg == 0 then + whoami() usage() - os.exit(1) + os.exit(0) end narg = 1 @@ -63,9 +66,19 @@ elseif arg[narg] == "-h" then os.exit(0) end -while narg ~= #arg do +-- defaults: +tex = "etex" +musixflx = "musixflx" +dvi = "dvips -q" +ps2pdf = "ps2pdf" + +if narg < #arg then if arg[narg] == "-p" then - tex = "pdfetex" + tex = "pdfetex"; dvi = ""; ps2pdf = "" + elseif arg[narg] == "-d" then + tex = "etex"; dvi = "dvipdfm"; ps2pdf = "" + elseif arg[narg] == "-s" then + tex = "etex"; dvi = ""; ps2pdf = "" else print("Argument \"".. arg[narg] .. "\" ignored.") end @@ -94,21 +107,32 @@ end whoami() print("Processing ".. basename .. ".tex") os.remove( basename .. ".mx2" ) -if - (os.execute(tex .. " " .. basename) == 0) - and (os.execute(musixflx .. " " .. basename) == 0) - and (os.execute(tex .. " " .. basename) == 0) - and (tex == "pdfetex" or (os.execute(dvips .. " -o " .. basename ..".ps " .. basename) == 0) ) - and (tex == "pdfetex" or (os.execute(ps2pdf .. " " .. basename .. ".ps " .. basename .. ".pdf") == 0) ) +if (os.execute(tex .. " " .. basename) == 0) and + (os.execute(musixflx .. " " .. basename) == 0) and + (os.execute(tex .. " " .. basename) == 0) and + (dvi == "" or (os.execute(dvi .. " " .. basename) == 0)) and + (ps2pdf == "" or (os.execute(ps2pdf .. " " .. basename .. ".ps") == 0) ) then - print(basename .. ".pdf generated.") + if dvi ~= "" then + print(basename .. ".pdf generated.") + end exit_code = 0 else - print("musixtex processing fails.") + print("Musixtex processing fails.") +--[[ uncomment for debugging + print("tex = ", tex) + print("dvi = ", dvi) + print("ps2pdf = ", ps2pdf) +--]] exit_code = 3 end + +-- clean-up: os.remove( basename .. ".mx1" ) os.remove( basename .. ".mx2" ) -os.remove( basename .. ".dvi" ) +if dvi ~= "" then + os.remove( basename .. ".dvi" ) +end os.remove( basename .. ".ps" ) + os.exit( exit_code ) diff --git a/Master/texmf-dist/doc/generic/musixtex/addons/curly.tex b/Master/texmf-dist/doc/generic/musixtex/addons/curly.tex index 622b5c6d3cd..e1999f1089b 100644 --- a/Master/texmf-dist/doc/generic/musixtex/addons/curly.tex +++ b/Master/texmf-dist/doc/generic/musixtex/addons/curly.tex @@ -3,6 +3,8 @@ % % % submitted by Mthimkhulu Molekwa <eMKay.sa@gmail.com> % % to the mutex list on 19 May 1999 % +% allow for non-standard \interstaff; patch + suggested by Rainer Dunker (1977) % % % % % usage: % @@ -29,9 +31,11 @@ \noinstrum@nt=#1\s@l@ctinstr\b@zi\altitude \noinstrum@nt=#2\s@l@ctinstr\b@zii\altitude \advance\b@zii-\b@zi - \advance\b@zii-\Interligne - \C@Inter - \advance\b@zii\stem@skip + % correction here by Rainer Dunker + \C@Inter + \advance\b@zii\nblines\internote + \advance\b@zii\nblines\internote + \advance\b@zii-2\internote \n@v\b@zii \sp@pt\tw@ \advance\n@v\@cxxviii \divide\b@zii\tw@ \advance\b@zi\b@zii @@ -41,4 +45,3 @@ \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%% End of curly.tex %%%%%%%%%%%%%%%%%%%%%%%%%% - diff --git a/Master/texmf-dist/dvips/musixtex/psslurs.pro b/Master/texmf-dist/dvips/musixtex/psslurs.pro deleted file mode 100644 index 1d560a0f969..00000000000 --- a/Master/texmf-dist/dvips/musixtex/psslurs.pro +++ /dev/null @@ -1,282 +0,0 @@ -% This file can be used instead of psslurs.pro, it is only commented -% and indented. -% -% VERSION: 1.0 -% -% WARNING! This is a heavy magic! If you want something more understandable, -% you will have to write it yourself (if it is possible in a stack-oriented -% language that PostScript is). There are some constants you can -% change and see what happens, but I think the slurs should be almost -% always satisfiable. When not, let me know at: -% standa@hiero.cz -% Also any bug reports and comments are welcomed. -% -% Stanislav Kneifl. - -/slur@Dict 200 dict def - -% this dictionary is for \setslurtext, overriding some dvips's definitions -/temp@xx@dict 4 dict def temp@xx@dict begin - /a { moveto ax1 ay1 rmoveto } def - /V {gsave newpath transform round exch round exch itransform - exch ax1 add exch ay1 add moveto rulex 0 rlineto 0 ruley neg - rlineto rulex neg 0 rlineto fill grestore} def -end - -TeXDict begin -% get dimen from TeX's string ("125pt" -> 125 PS points) -/GD { dup length 2 sub 0 exch getinterval cvr 1.045 mul} def -% get dimen adjusted to Resolution -/GDAR { dup length 2 sub 0 exch getinterval cvr 4 AR mul 1.045 mul} def -% Adjust to Resolution -/AR { Resolution mul 300 div } def -% the distances in dvips's PostScript are resolution dependant! -end - -slur@Dict begin -/CP /currentpoint load def -/ED { exch def } bind def -/AR { Resolution mul 300 div } def % stands for Adjust to Resolution, -/VS { dup /ay1 exch ay1 exch linew mul 4 mul add def /ay2 exch ay2 exch linew mul 4 mul add def } def -/y { 3 2 roll ax1 ay1 rmoveto show moveto } def -/M { mul } def -/A { add } def -/SB { sub } def -/P { pop } def -/DP { dup } def -/R { roll } def - -/drawseg { 0 0 moveto - ax1 ay1 - ax1 0.6 mul ax2 0.4 mul add ay1 0.6 mul ay2 0.4 mul add - ax1 ax2 add 2 div ay1 ay2 add 2 div curveto - ax1 0.4 mul ax2 0.6 mul add ay1 0.4 mul ay2 0.6 mul add - ax2 ay2 - x2 0 curveto } def - -/DS { - AR /maxe ED - /ifadjust ED - /ifdash ED - AR /m ED % max height of the slur - /e ED % "angularity" of the slur; 0.1 = very angular, - % 0.3 = very round - /aa exch neg def % what to multiply the height with - % AFTER the max height checking - /y2 ED % y coordinate of the end of the slur - /x2 ED % x coordinate of the end of the slur - /y1 ED % y coordinate of the beginning of the slur - /x1 ED % x coordinate of the beginning of the slur - /yr2 ED - /yr1 ED - /internote ED - /x2 x2 x1 sub def % x2=x2-x1 - /y2 y2 y1 sub def % y2=y2-y1 - /sx y2 x2 div def - /b x2 300 mul Resolution div abs sqrt AR 2 mul def % b=2*sqrt(x2) - b 3 AR lt {/b 3 AR def} if % b=max(b,3) - b m gt {/b m def} if % b=min(b,m) - /aa b aa mul def % aa=aa*b - /s 90 x2 y2 atan sub def % s=90-arctan(x2,y2) slope of the slur - /aa aa s cos div def % aa=aa/cos(s) height of the slur - /x2 s neg cos x2 mul s neg sin y2 mul sub def % x2 = x2*cos(-s) - y2*sin(-s) - % is the length of the slur - e x2 mul maxe gt { /e maxe x2 div def } if - /beta e x2 mul aa neg atan def - beta 90 gt {/beta 180 beta sub def} if - /ax1 e x2 mul def % control points - /ay1 aa def - /ax2 1 e sub x2 mul def - /ay2 aa def - -% check if the starting and endin vector stay in desired quadrants -% => beta < abs(s) - beta s abs lt { - /b aa abs s abs 2 add sin mul s abs 2 add cos div def - s aa mul 0 lt { - s cos 0.75 lt { /ax1 ax1 b 1 s cos sub mul 0.5 mul sub def /ay1 ay1 s cos mul 0.8 mul def } if -% ^^^^ ^^^ ^^^ -% (values to play with) - /ax2 x2 b sub def - } - { - /ax1 b def - s cos 0.75 lt { /ax2 b 1 s cos sub mul 0.5 mul ax2 add def /ay2 ay2 s cos mul 0.8 mul def } if -% ^^^^ ^^^ ^^^ - } ifelse - } if - -% align the slur to the staff lines - - gsave - x1 y1 translate - s rotate -% [1 0 sx 1 0 0] concat - drawseg - gsave - initmatrix - flattenpath - pathbbox - exch pop - sub - /slh ED % in slh we have the height of the whole slur - pop - grestore - - /yr s aa mul 0 ge { yr1 } { yr2 } ifelse internote div def - /slh yr slh internote div aa 0 gt { add } { sub } ifelse 2 div def -% check if the slur gets too close to staff line - /shift 0 def - slh 4.45 lt slh -0.5 gt and { - /slh slh dup truncate sub def - slh 0 lt { /slh 1 slh add def } if - aa 0 gt { /slh 1 slh sub def } if - - % slh now contains the position ot the slur top/bottom in the space - % between the nearest staff lines (from <0,1>), regardless direction - - % slur is too low: - slh 0.45 lt { /shift 0.45 slh sub def } if - % slur is too high, but we can be shift it down: - slh 0.7 gt slh 0.85 lt and { /shift 0.7 slh sub def } if - % slur is too high, must be shifted up: - slh 0.85 ge { /shift 1.45 slh sub def } if - } if - - aa 0 gt { /shift shift neg def } if - - ifadjust 0 eq { - /shift 0 def - } if - - -% and finally draw it... - - grestore - gsave - /linew internote 0.06 mul AR def - linew 4 mul setlinewidth - 1 setlinecap - 0 setlinejoin - ifdash 1 eq - { [internote 8 mul AR internote 5 mul AR] 0 setdash } if - x1 y1 shift neg 2 mul internote mul 4 AR mul add translate - s rotate -% [1 sx 0 1 0 0] concat - -% uncomment this to see the control points -% 5 AR setlinewidth ax1 ay1 moveto 0.1 0 rlineto stroke -% ax2 ay2 moveto 0.1 0 rlineto stroke linew setlinewidth - - drawseg - 1 VS - drawseg - -2 VS - drawseg - x2 20 AR gt { - 3 VS - drawseg - } if - x2 50 AR gt { - -4 VS - drawseg - } if - x2 80 AR gt { - 5 VS - drawseg - } if - stroke - - grestore - - % now some \slurtext code... - - /x1 ax1 ax2 add 2 div def % middle of the slur - /y1 ay1 ay2 add 2 div def - x1 s cos mul y1 s sin mul add neg - y1 s cos mul x1 s sin mul sub - aa 0 lt {1} {0} ifelse - end - - % this is a hack to place the slurtext in the middle of the slur. - % From unknown reasons simple 'ax1 ay1 translate' did not work, - % so we have to overlay some definitions with our own, namely - % 'a', which is originally 'moveto' and 'V' for drawing rules. - % maybe there are some other operations that should be redefined, - % but for almost all cases this will be sufficient. If you find - % anything that won't be typeset at the correct position, let me know... - - temp@xx@dict begin - /dir exch def - /ay1 exch def - /ax1 exch def -} def - -% crescendos -/DC { - /y2 ED - /x2 ED - /y1 ED - /x1 ED - gsave - 1 AR ceiling setlinewidth % line thickness: this results - 1 setlinecap % to exactly 2 pixels in 300 dpi - 1 setlinejoin - x2 y2 10 AR add moveto % the 10's specify wideness of the - x1 y1 lineto % open end of the crescendo, - x2 y2 10 AR sub lineto % similarly the 11's below - stroke - grestore -} def - -% half crescendos -/DHC { - /y2 ED - /x2 ED - /y1 ED - /x1 ED - gsave - 1 AR ceiling setlinewidth - 1 setlinecap - 1 setlinejoin - x2 y2 11 AR add moveto - x1 y1 4 AR add lineto stroke - x1 y1 4 AR sub moveto - x2 y2 11 AR sub lineto - stroke - grestore -} def - -% differenced line - -/DLN { - gsave - GDAR ceiling setlinewidth - GDAR exch GDAR neg rlineto - stroke - grestore -} def - -% sloped line - -/DSLN { - gsave - GDAR ceiling setlinewidth - GDAR exch 1.125 mul neg rotate 0 rlineto - stroke - grestore -} def - -% free line (init & terminate) - -/DFLN { - gsave - GDAR ceiling setlinewidth - CP moveto - lineto - stroke - grestore -} def - -end - diff --git a/Master/texmf-dist/fonts/map/dvipdfm/musixtex/musix.map b/Master/texmf-dist/fonts/map/dvipdfm/musixtex/musix.map deleted file mode 100644 index 622d08ad6f2..00000000000 --- a/Master/texmf-dist/fonts/map/dvipdfm/musixtex/musix.map +++ /dev/null @@ -1,71 +0,0 @@ -musix11 default musix11.pfb -musix13 default musix13.pfb -musix16 default musix16.pfb -musix20 default musix20.pfb -musix24 default musix24.pfb -musix29 default musix29.pfb -musixsps default musixsps.pfb -musixspx default musixspx.pfb -xgreg11 default xgreg11.pfb -xgreg13 default xgreg13.pfb -xgreg16 default xgreg16.pfb -xgreg20 default xgreg20.pfb -xgreg24 default xgreg24.pfb -xgreg29 default xgreg29.pfb -xsld11 default xsld11.pfb -xsld11d default xsld11d.pfb -xsld13 default xsld13.pfb -xsld13d default xsld13d.pfb -xsld16 default xsld16.pfb -xsld16d default xsld16d.pfb -xsld20 default xsld20.pfb -xsld20d default xsld20d.pfb -xsld24 default xsld24.pfb -xsld24d default xsld24d.pfb -xsld29 default xsld29.pfb -xsld29d default xsld29d.pfb -xsldd20 default xsldd20.pfb -xsldu20 default xsldu20.pfb -xslhd11 default xslhd11.pfb -xslhd11d default xslhd11d.pfb -xslhd13 default xslhd13.pfb -xslhd13d default xslhd13d.pfb -xslhd16 default xslhd16.pfb -xslhd16d default xslhd16d.pfb -xslhd20 default xslhd20.pfb -xslhd20d default xslhd20d.pfb -xslhd24 default xslhd24.pfb -xslhd24d default xslhd24d.pfb -xslhd29 default xslhd29.pfb -xslhd29d default xslhd29d.pfb -xslhu11 default xslhu11.pfb -xslhu11d default xslhu11d.pfb -xslhu13 default xslhu13.pfb -xslhu13d default xslhu13d.pfb -xslhu16 default xslhu16.pfb -xslhu16d default xslhu16d.pfb -xslhu20 default xslhu20.pfb -xslhu20d default xslhu20d.pfb -xslhu24 default xslhu24.pfb -xslhu24d default xslhu24d.pfb -xslhu29 default xslhu29.pfb -xslhu29d default xslhu29d.pfb -xslhz20 default xslhz20.pfb -xslhz20d default xslhz20d.pfb -xslu11 default xslu11.pfb -xslu11d default xslu11d.pfb -xslu13 default xslu13.pfb -xslu13d default xslu13d.pfb -xslu16 default xslu16.pfb -xslu16d default xslu16d.pfb -xslu20 default xslu20.pfb -xslu20d default xslu20d.pfb -xslu24 default xslu24.pfb -xslu24d default xslu24d.pfb -xslu29 default xslu29.pfb -xslu29d default xslu29d.pfb -xslud20 default xslud20.pfb -xslup20 default xslup20.pfb -xslz20 default xslz20.pfb -xslz20d default xslz20d.pfb -xtie20 default xtie20.pfb diff --git a/Master/texmf-dist/scripts/musixtex/Windows/musixflx.bat b/Master/texmf-dist/scripts/musixtex/Windows/musixflx.bat index d24a84b1cc7..684441ebb3d 100755 --- a/Master/texmf-dist/scripts/musixtex/Windows/musixflx.bat +++ b/Master/texmf-dist/scripts/musixtex/Windows/musixflx.bat @@ -1,5 +1,6 @@ :: wrapper script to call musixflx.lua
-:: Usage: musixflx basename[.mx1 | .tex]
+:: Usage: musixflx basename[.mx1 | .tex] [debug mode]
+:: Suggested by Tomasz Luczak (Tomek) t34www@googlemail.com
@for /f "delims=" %%I in ('kpsewhich --format=texmfscripts %~n0.lua') do texlua "%%I" %*
:end
diff --git a/Master/texmf-dist/scripts/musixtex/Windows/musixtex.bat b/Master/texmf-dist/scripts/musixtex/Windows/musixtex.bat index ede163de69c..70c136972de 100755 --- a/Master/texmf-dist/scripts/musixtex/Windows/musixtex.bat +++ b/Master/texmf-dist/scripts/musixtex/Windows/musixtex.bat @@ -1,5 +1,6 @@ :: wrapper script to call musixtex.lua
-:: Usage: musixtex basename[.tex]
+:: Usage: musixtex [options] basename[.tex]
+:: Suggested by Tomasz Luczak (Tomek) t34www@googlemail.com
@for /f "delims=" %%I in ('kpsewhich --format=texmfscripts %~n0.lua') do texlua "%%I" %*
:end
diff --git a/Master/texmf-dist/scripts/musixtex/doc/musixflx.1 b/Master/texmf-dist/scripts/musixtex/doc/musixflx.1 index 33548ef4b88..a3c214535e2 100644 --- a/Master/texmf-dist/scripts/musixtex/doc/musixflx.1 +++ b/Master/texmf-dist/scripts/musixtex/doc/musixflx.1 @@ -5,9 +5,10 @@ musixflx \- process mx1 files (the second pass of 3-pass MusiXTeX typesetting) .SH SYNOPSIS -.RI [ texlua ] -.B musixflx.lua -.IR jobname [ .mx1 " | " .tex ] +[ texlua ] +.B musixflx[.lua] +.I jobname +[ .mx1 | .tex ] [ .I debugmode ] diff --git a/Master/texmf-dist/scripts/musixtex/doc/musixflx.pdf b/Master/texmf-dist/scripts/musixtex/doc/musixflx.pdf Binary files differnew file mode 100644 index 00000000000..506805a49c0 --- /dev/null +++ b/Master/texmf-dist/scripts/musixtex/doc/musixflx.pdf diff --git a/Master/texmf-dist/scripts/musixtex/doc/musixtex.1 b/Master/texmf-dist/scripts/musixtex/doc/musixtex.1 index e7902ab7594..1a233867a9f 100644 --- a/Master/texmf-dist/scripts/musixtex/doc/musixtex.1 +++ b/Master/texmf-dist/scripts/musixtex/doc/musixtex.1 @@ -1,40 +1,49 @@ .\" This manpage is licensed under the GNU Public License -.TH MUSIXTEX 1 2011-04-21 "musixtex version 0.2" "" +.TH MUSIXTEX 1 2011-04-25 "musixtex version 0.3" "" .SH NAME -musixtex \- processes a MusiXTeX file using [pdf]etex -> musixflx -> [pdf]etex [ -> dvips -> ps2pdf ] and -then deletes intermediate files +musixtex \- processes a MusiXTeX file and then deletes intermediate files .SH SYNOPSIS -[ -.IR texlua -] -.BR musixtex.lua +[ texlua ] +.B musixtex[.lua] [ -.IR options +.IR option ] +[ .IR jobname [ .tex ] +] .SH OPTIONS .TP 8 -.BR -v +.B -v output program name and version number, and quit .TP -.BR -h +.B -h output usage summary and quit .TP -.BR -p -changes the TeX processor from -.BR etex (1) -to +.B -p +changes the TeX processor to .BR pdfetex (1) -(and doesn't run dvips and ps2pdf) +(and doesn't run +.BR dvips (1) +and +.BR ps2pdf (1) +) +.TP +.B -d +changes the dvi processor to +.BR dvipdfm (1) +.TP +.B -s +stops processing at the dvi file .SH SEE ALSO .BR etex (1), .BR pdfetex (1), .BR musixflx (1), +.BR dvipdfm (1), .BR dvips (1), .BR ps2pdf (1). .br diff --git a/Master/texmf-dist/scripts/musixtex/doc/musixtex.pdf b/Master/texmf-dist/scripts/musixtex/doc/musixtex.pdf Binary files differnew file mode 100644 index 00000000000..8fe95568e7b --- /dev/null +++ b/Master/texmf-dist/scripts/musixtex/doc/musixtex.pdf diff --git a/Master/texmf-dist/scripts/musixtex/musixtex.lua b/Master/texmf-dist/scripts/musixtex/musixtex.lua index 3d8c4482e0f..c567af06950 100755 --- a/Master/texmf-dist/scripts/musixtex/musixtex.lua +++ b/Master/texmf-dist/scripts/musixtex/musixtex.lua @@ -1,9 +1,9 @@ #!/usr/bin/env texlua -VERSION = "0.2" +VERSION = "0.3" --[[ - musixtex.lua: runs [pdf]etex -> musixflx -> [pdfe]tex [ -> dvips -> ps2pdf ] + musixtex.lua: processes a MusiXTeX file and then deletes intermediate files (c) Copyright 2011 Bob Tennent rdt@cs.queensu.ca @@ -27,6 +27,9 @@ VERSION = "0.2" ChangeLog: + version 0.3 2011-04-25 RDT + Add -d (dvipdfm) and -s (stop at dvi) options. + version 0.2 2011-04-21 RDT Allow basename.tex as filename. Add -p option for pdfetex processing. @@ -34,14 +37,13 @@ VERSION = "0.2" --]] - -tex = "etex" -musixflx = "musixflx" -dvips = "dvips -q" -ps2pdf = "ps2pdf" - function usage() - print("Usage: [texlua] musixtex.lua [options] basename[.tex]") + print("Usage: [texlua] musixtex.lua [option] [basename[.tex]]") + print("options: -v version") + print(" -h help") + print(" -p pdfetex") + print(" -d dvipdfm") + print(" -s stop at dvi") end function whoami () @@ -49,8 +51,9 @@ function whoami () end if #arg == 0 then + whoami() usage() - os.exit(1) + os.exit(0) end narg = 1 @@ -63,9 +66,19 @@ elseif arg[narg] == "-h" then os.exit(0) end -while narg ~= #arg do +-- defaults: +tex = "etex" +musixflx = "musixflx" +dvi = "dvips -q" +ps2pdf = "ps2pdf" + +if narg < #arg then if arg[narg] == "-p" then - tex = "pdfetex" + tex = "pdfetex"; dvi = ""; ps2pdf = "" + elseif arg[narg] == "-d" then + tex = "etex"; dvi = "dvipdfm"; ps2pdf = "" + elseif arg[narg] == "-s" then + tex = "etex"; dvi = ""; ps2pdf = "" else print("Argument \"".. arg[narg] .. "\" ignored.") end @@ -94,21 +107,32 @@ end whoami() print("Processing ".. basename .. ".tex") os.remove( basename .. ".mx2" ) -if - (os.execute(tex .. " " .. basename) == 0) - and (os.execute(musixflx .. " " .. basename) == 0) - and (os.execute(tex .. " " .. basename) == 0) - and (tex == "pdfetex" or (os.execute(dvips .. " -o " .. basename ..".ps " .. basename) == 0) ) - and (tex == "pdfetex" or (os.execute(ps2pdf .. " " .. basename .. ".ps " .. basename .. ".pdf") == 0) ) +if (os.execute(tex .. " " .. basename) == 0) and + (os.execute(musixflx .. " " .. basename) == 0) and + (os.execute(tex .. " " .. basename) == 0) and + (dvi == "" or (os.execute(dvi .. " " .. basename) == 0)) and + (ps2pdf == "" or (os.execute(ps2pdf .. " " .. basename .. ".ps") == 0) ) then - print(basename .. ".pdf generated.") + if dvi ~= "" then + print(basename .. ".pdf generated.") + end exit_code = 0 else - print("musixtex processing fails.") + print("Musixtex processing fails.") +--[[ uncomment for debugging + print("tex = ", tex) + print("dvi = ", dvi) + print("ps2pdf = ", ps2pdf) +--]] exit_code = 3 end + +-- clean-up: os.remove( basename .. ".mx1" ) os.remove( basename .. ".mx2" ) -os.remove( basename .. ".dvi" ) +if dvi ~= "" then + os.remove( basename .. ".dvi" ) +end os.remove( basename .. ".ps" ) + os.exit( exit_code ) diff --git a/Master/texmf/doc/man/man1/musixflx.1 b/Master/texmf/doc/man/man1/musixflx.1 index 33548ef4b88..a3c214535e2 100644 --- a/Master/texmf/doc/man/man1/musixflx.1 +++ b/Master/texmf/doc/man/man1/musixflx.1 @@ -5,9 +5,10 @@ musixflx \- process mx1 files (the second pass of 3-pass MusiXTeX typesetting) .SH SYNOPSIS -.RI [ texlua ] -.B musixflx.lua -.IR jobname [ .mx1 " | " .tex ] +[ texlua ] +.B musixflx[.lua] +.I jobname +[ .mx1 | .tex ] [ .I debugmode ] diff --git a/Master/texmf/doc/man/man1/musixflx.man1.pdf b/Master/texmf/doc/man/man1/musixflx.man1.pdf Binary files differindex afa37b993b3..4f6c87f4a28 100644 --- a/Master/texmf/doc/man/man1/musixflx.man1.pdf +++ b/Master/texmf/doc/man/man1/musixflx.man1.pdf diff --git a/Master/texmf/doc/man/man1/musixtex.1 b/Master/texmf/doc/man/man1/musixtex.1 index e7902ab7594..1a233867a9f 100644 --- a/Master/texmf/doc/man/man1/musixtex.1 +++ b/Master/texmf/doc/man/man1/musixtex.1 @@ -1,40 +1,49 @@ .\" This manpage is licensed under the GNU Public License -.TH MUSIXTEX 1 2011-04-21 "musixtex version 0.2" "" +.TH MUSIXTEX 1 2011-04-25 "musixtex version 0.3" "" .SH NAME -musixtex \- processes a MusiXTeX file using [pdf]etex -> musixflx -> [pdf]etex [ -> dvips -> ps2pdf ] and -then deletes intermediate files +musixtex \- processes a MusiXTeX file and then deletes intermediate files .SH SYNOPSIS -[ -.IR texlua -] -.BR musixtex.lua +[ texlua ] +.B musixtex[.lua] [ -.IR options +.IR option ] +[ .IR jobname [ .tex ] +] .SH OPTIONS .TP 8 -.BR -v +.B -v output program name and version number, and quit .TP -.BR -h +.B -h output usage summary and quit .TP -.BR -p -changes the TeX processor from -.BR etex (1) -to +.B -p +changes the TeX processor to .BR pdfetex (1) -(and doesn't run dvips and ps2pdf) +(and doesn't run +.BR dvips (1) +and +.BR ps2pdf (1) +) +.TP +.B -d +changes the dvi processor to +.BR dvipdfm (1) +.TP +.B -s +stops processing at the dvi file .SH SEE ALSO .BR etex (1), .BR pdfetex (1), .BR musixflx (1), +.BR dvipdfm (1), .BR dvips (1), .BR ps2pdf (1). .br diff --git a/Master/texmf/doc/man/man1/musixtex.man1.pdf b/Master/texmf/doc/man/man1/musixtex.man1.pdf Binary files differindex 57cdaf926c3..ee5bb253c54 100644 --- a/Master/texmf/doc/man/man1/musixtex.man1.pdf +++ b/Master/texmf/doc/man/man1/musixtex.man1.pdf |