Subsections

- Small Examples
  - MusiXTeX
  - PMX
  - M-Tx
  - Autosp
  - Xml2pmx
- Primary Documentation for MusiXTeX, PMX, M-Tx, autosp, xml2pmx and the musixtex script

# Introduction

MusiXTeX, created by Daniel Taupin, Andreas Egler and Ross Mitchell, is software that uses a typesetting system called TeX to typeset music. To use it, one produces a text file describing the music to be typeset; then the software processes the input file and eventually produces the typeset music as a PDF or other printable format. In fact, MusiXTeX processing normally requires three passes: MusixTeX itself, followed by a program called MusiXflx, followed by MusixTeX again; then, it is usually necessary to convert the resulting file to a suitable format, such as Postscript or PDF.

To simplify the inputting of instrumental music, a pre-processor PMX by Don Simons can be used. Inputs to PMX are considerably simpler than those for MusiXTeX itself because PMX makes many typesetting decisions itself, and then produces a file suitable for processing by MusiXTeX. An auxiliary program scor2prt in the PMX package makes parts from a multi-part score. PMX can make a MIDI file of your score. For vocal music, a pre-preprocessor called M-Tx by Dirk Laurie is available; its output is suitable for pre-processing by PMX.

The autosp pre-processor by Bob Tennent simplifies input of music for MusiXTeX without requiring the user to learn a completely different input language. MusiXTeX itself requires a user to specify horizontal-spacing commands, which can be rather complicated, especially for multi-instrument scores. The autosp pre-processor automates the generation of horizontal-spacing commands for MusiXTeX, allowing a user to input notes for a part without concern for note-spacing changes within the part or spacing requirements of other parts; compare quod.tex and quod2.aspc.

Finally there is a program xml2pmx that translates MusicXML, a standard exchange format, to PMX. Most music notation-editing systems such as Finale, Sibelius, musescore and lilypond will allow you to export a score in MusicXML format.

A script that automates use of these pre-processors and the multiple passes is available; for example, the single command

musixtex mymusic

will process a file mymusic.mtx and produce mymusic.pdf, calling in turn the M-Tx pre-processor prepmx, the PMX preprocessor pmxab, and the three passes of MusiXTeX itself; finally, the output is converted to PDF and intermediate files are deleted. Usually, users need not know anything about the details.

It is possible to create inputs for MusiXTeX, PMX, M-Tx or autosp using any text editor, such as notepad or vi or emacs. Currently there is no graphical user interface for generating input files, other than TeX-oriented integrated graphical development environments such as TeXWorks.

##
Small Examples

### MusiXTeX

Quodlibet by J. S. Bach (1685–1750)

- input: quod.tex
- output: quod.pdf

### PMX

Adagio by Francesco Barsanti (1690–1772)

- input: barsant.pmx
- outputs: barsant.tex, barsant.pdf, barsant.mid

### M-Tx

Net soos ek is, English lyrics ("Just as I am") by Charlotte Elliott (1789–1871)

- input: netsoos.mtx
- outputs: netsoos.pmx, netsoos.tex, netsoos.pdf

### Autosp

Quodlibet by J. S. Bach (1685–1750)

- input: quod2.aspc
- outputs: quod2.tex, quod2.pdf

### Xml2pmx

Fantasia 1 for Recorder by G. P. Telemann (1681–1767)

- input: Telemanm.xml
- outputs: Teleman.pmx, Telemann.pdf

## Primary Documentation for MusiXTeX, PMX, M-Tx, autosp, xml2pmx and the musixtex script

- MusiXTeX, by Daniel Taupin, Ross Mitchell, Andreas Egler, Oliver Vogel, Don Simons, Andre van Ryckeghem, Cornelius Noack, Hiroaki Morimoto and Bob Tennent
- MusiXTeX Reference Table
- PMX Manual, by Don Simons
- PMX Tutorial, by Cornelius C. Noack
- PMX Reference Table, by Don Simons
- PMX Tips and Tricks, contributed by users
- One-page PMX tour de force, showing most PMX commands, by Don Simons
- M-Tx User's Guide, by Dirk Laurie
- autosp manual, by Bob Tennent
- xml2pmx manual, by Bob Tennent and Dieter Gloetzel
- musixtex script manual, by Bob Tennent

Additional and more specialized documentation is available here.