MUSIXTEX(1)
π MUSIXTEX β the manual page, but make it cute
okay so bestie, this is the page for musixtex β manual section 1, user commands, iykyk. it does the whole MusiXTeX pipeline for you, calling on the pre-processors prepmx, xml2pmx, pmxab and autosp as needed, and then it cleans up after itself by deleting the intermediate and log files (unless you pass -i, ofc π).
β¨ SYNOPSIS β¨
[ texlua ] musixtex[.lua] { option | jobname [ .xml | .mtx | .pmx |
.aspc | .tex | .ltx ] } ...
π DESCRIPTION π
so when a jobname argument has a .tex extension, the default glow-up is to process that file with:
etex(1)β the first passmusixflx(1)β the second passetex(1)β the third passdvips(1)β dvi to Postscriptps2pdf(1)β Postscript to Portable Document Format
...and then normally it deletes the intermediate and log files, like a good little cleaner-upper. π
but heads up: a log file musixtex.log is still generated, even if all the other log files get yeeted. that one stays, no cap.
if your jobname argument has a .pmx extension, the file gets preprocessed first using pmxab(1), and then the resulting .tex file gets processed exactly like above. π¦
if it has a .xml extension, the file is preprocessed first using xml2pmx(1), and the resulting .pmx file is then processed as above. πΈ
if it has a .mtx extension, it's preprocessed first using prepmx(1), and the resulting .pmx file is processed as above. π
if it has a .ltx extension, the file is processed using latex(1) (or pdflatex(1)) in place of etex. main character energy, different engine. π
if it has a .aspc extension, it's preprocessed first using autosp(1), and the resulting .tex or .ltx file is processed as above. β
and if your jobname has none of these extensions at all? the script literally goes shopping for a file β it looks for jobname.xml or jobname.mtx or jobname.pmx or jobname.aspc or jobname.tex or jobname.ltx, in that order, and processes whichever one it finds, same as above. the order matters, so don't come for me. π«Ά
π OPTIONS π
-v,-version,--versionβ spits out the program name and version number, then dips. π-h,-help,--helpβ prints the usage summary and quits. your lil cheat sheet.-lβ assume the source is LaTeX; this is implied automatically if the file has a.ltxextension.-pβ switches the TeX processor topdfetex(1)orpdflatex(1)(and, key detail, it does not run a dvi processor).-cβ preprocesses the pmx file usingpmxchords(1).-dβ doesn't generate a.psfile, and switches the dvi processor todvipdfm(1).-Ddvix β uses dvix as the dvi processor; e.g.-D "dvipdfm -m 0.9". use-dbefore-Dto suppress.psgeneration. π-Pps2pdf β uses ps2pdf as the Postscript processor; e.g.-P "ps2pdf -sPAPERSIZE=a4".-Ffmt β uses fmt as the TeX processor; e.g.-F "luatex --output-format=dvi". another example: it's possible to minimize TeX output by using-F "texfot etex". π₯-mβ stops processing at the pmx file.-Mmtxx β uses mtxx as the mtx preprocessor; e.g.-M "prepmx -i".-Xpmxx β uses pmxx as the pmx preprocessor; e.g.-X "./pmxab",-Aaspcx β uses aspcx as the aspc preprocessor; e.g.-A "autosp -l".-Lxmlx β uses xmlx as the xml preprocessor; e.g.-L "./XML2PMX".-tβ stops processing at the tex/mid files.-sβ stops processing at the dvi file.-gβ stops processing at the ps file.-iβ retains the intermediate and log files (the opposite of the default clean-up, bestie π§).-1β one-pass[pdf][la]texprocessing; i.e., without callingmusixflx.-xβ callsmakeindex(1)to update the index database.-fβ restores default processing.-qβ quiet mode (onlymusixtex's own messages); other messages get diverted to a temporary file. if an error occurs at the TeX stage, processing halts immediately and the tail of the log file is sent to stderr. version information is copied from the temporary file to the log file. π€«
options affect processing of all succeeding MusiXTeX files unless changed by another option. option flags cannot be combined; e.g., use-l -xrather than-lx. one flag per vibe, please. π
note that four TeX engines are available via the -l and -p options:
etex default
latex -l
pdfetex -p
pdflatex -l -p
if the -F option is used, options -l and -p need to be set if the engine name does not contain "latex" and "pdf" respectively. for example, the above four engines can be replaced by:
-F "luatex --output-format=dvi"
-F "lualatex --output-format=dvi"
-F "luatex" -p
-F "lualatex" -p
π SEE ALSO π
autosp(1), etex(1), latex(1), pdfetex(1), pdflatex(1), makeindex(1), musixflx(1), dvipdfm(1), dvips(1), pmxab(1), pmxchords(1), prepmx(1), ps2pdf(1), xml2pmx(1) and musixdoc.pdf. go read them, they're iconic. π
π¦ AUTHOR π¦
this manual page was written by Bob Tennent <rdt@cs.queensu.ca>. to generate PDF, use groff -man musixtex.1 -T pdf > musixtex.1.pdf. slay. β¨
and that's the whole thing, bestie β musixtex version 0.23, dated 2024-04-18. periodt. π
π¦ where this page comes from
- alpine 3.24: texmf-dist-music-doc 2026.0-r0 Β· LPPL-1.0 AND LPPL-1.1 AND LPPL-1.2 AND LPPL-1.3a AND LPPL-1.3c AND GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms