M-Tx Preprocessor Source Code
=============================

This is a development version of `prepmx`, the M-Tx Preprocessor. It contains the file `mtx.tex` and all the sources for generating the binary executable file (`prepmx`, `prepmx.exe`, etc., depending on your operating system). There is no documentation and there are no examples. These are included with the stable release available in the TeXLive and MikTeX distributions of TeX. (If you have not installed one of those, you will be unable to do any useful work with `prepmx`.)

You probably got it from <https://github.com/dlaurie/M-Tx>. If not, you should; that may well contain newer code by now.

The development version is provided for people who need more recent features than the most recent stable release has, in the hope that they will be willing to report bugs and maybe even suggest how those can be fixed. Send e-mail to the Werner Icking Music Archive mailing list <tex-music@tug.org> or directly to Dirk Laurie <dirk.laurie@gmail.com>.

You need the Free Pascal compiler. Any version from 1.0.10 onwards should work; 2.4.4 certainly did on 2014-02-01 and 2.6.2 on 2015-04-24. You may get away with other Pascal compilers, including Borland Pascal 7.0 and the Pascal-to-C translator `p2c`, but no effort has been made to retain compliance. Older versions of this README included details, all probably obsolete by now.

"GNU System" means any system on which standard GNU utilities such as "bash" and "make" is available. Typical GNU systems are

-   Linux
-   Windows with the Cygwin package installed

You do not need a GNU system to use M-Tx, but it is easier to make the executable on a GNU system.

If your system has GNU Make, simply type

    make

Otherwise, find the line in the Makefile starting with `fpc` and type that into your terminal.

For experts only
----------------

You can modify the source code as you wish -- this is open source software and the license is MIT. If you wish to redistribute your modified version, please augment the name so that there is no risk of confusion: e.g. if you are Johannes Brahms and you have made changes to mtxC054f.zip, call it mtxC054f-brahms.zip.

Even better, send me an e-mail with your changes so that I can insert them into the current development version.

Or fork the repository.

The Makefile can make various other things. I don't want to document those, since then I would be constrained to maintain them. Use at your peril.

