musixpss - a MusiXTeX Extention Package: PostScript Slurs by MetaPost

version 0.51 [2004/02/21]

Introduction

MusiXTeX is a very powerful system to writing a musical score. However, the appearance of slurs and ties are not so beautiful nor flexible since they are drawn by conbination of fonts.

This package provides a new method for slurs and ties to improve them: using Encapsulated PostScript (EPS) code generated by MetaPost.

Features

Disadvantages

Contents

* All text files are encoded with LF line termination (UNIX style).

Requirement

Followings are not essential, just recommended.

Installation

  1. Assume that TeX (or pdfTeX), MusiXTeX, and MetaPost work well on your system.
  2. Put musixpss.tex into the directry where the working score exists or where "TeX input files directry" in TEXMF tree (for example $TEXMF/tex/musixtex/misc/ ).
  3. Put musixpss.mp into the directry where the working score exists or where "MetaPost input files directry" in TEXMF tree (for example $TEXMF/metapost/musixtex/misc/ ).
  4. If your OS is Win32, put musixpss.exe into an appropriate directry registrated in PATH environment valuable; for example the directry where musixflx.exe is located. If not, modify musixpss.c line 44-45, compile it with an ANSI C compiler, and put the executable into appropriate directry.

Usage

Assume that the MusiXTeX score source is named foo.tex.

  1. Make a MusiXTeX score source foo.tex in conventional way.
  2. add a line \input musixpss.tex\relax after \input musixtex.tex .
  3. Run usual MusiXTeX procedure (pass 1, 2, 3):
    tex foo
    musixflx foo
    tex foo
    Some warnings such as No file foo.1. will appear on the terminal and LOG file. A file foo.slu containing parameters of slurs will be additionally generated.
  4. (Pass 4) Run the support program.
    musixpss foo
    The program musixpss.exe will translate foo.slu into foo.mp as MetaPost input. Filename extention is forcely regarded as .slu , regardless of its existence.
  5. (Pass 5) Run MetaPost.
    mpost foo
    where command line is system dependent, see the manual of your system. EPS files foo.1, foo.2 ... containing each slur will be generated.
  6. (Pass 6) Run TeX once more.
    tex foo
    The warnings will disappear and \special for including EPS files will be written in DVI file.
  7. Run DVIware, Ghostscript, Acrobat Reader, etc.

When correcting and retypesetting the score, it is not required to delete intermediate EPS files such as foo.1. Sometimes just one execution of TeX will do in case there is no change in both foo.mx2 and foo.slu (this is relatively rare case) .
In case a large change of score which requires total retypesetting, deleting EPS files before retypesetting will speed up operation of Pass 3 when using musixpss in general mode or pdfTeX exclusive mode.

Options and some advanced functions

Operation mode selection

This package has 3 operation modes to adapt itself to various environment.

Default is 'general mode'. This mode guarantees the same compatibility of dvi file as LaTeX2e graphicx package with [dvips] option, since the internal procedures are almost same. Use this mode in general.

'dvips/dvipdfm optimized mode' is designed for dvips and dvipdfm. This mode makes the 6th pass of typesetting procedure not required and thus provides much faster operation than 'general mode', since the internal procedures of this mode is much simpler. Also, this mode provides slightly good alignment. The resulting dvi file is, however, not compatible with some DVIwares because of the difference of low-level (not LaTeX2e-level) implementation of \special{PSfile=...} from dvips.

'pdfTeX exclusive mode' is just as the naming. This mode works well with pdfTeX ver.1.10a-devel or later. It is known that some old version of support macro files supp-pdf.tex and supp-mis.tex lead to unaccountable error. In that case please update these two files at first.

The author hopes to adapt this package to DVIwares not listed above (xdvi, etc.) but has no environment of such DVIwares, other TeX distributions and OS's. Informations and trial reports are welcome via 'TeX-music Mailing List' or direct email.

operation mode general mode dvips optimized mode pdfTeX exclusive mode
general DVIwares* OK dependent on DVIware NG
dvips OK OK NG
dvipdfm OK OK NG
pdfTeX NG NG OK
*Any DVIware compatible with LaTeX2e graphicx package with [dvips] option. for example dviout, etc.
operation mode general mode dvips optimized mode pdfTeX exclusive mode
code \input musixtex
\input musixpss
\relax
\input musixtex
\input musixpss
\relax
\psslurmode{dvips}%
\input musixtex
\input musixpss
\relax
\psslurmode{pdftex}%
procedure Total 6 pass
+ DVIware
  1. tex foo
  2. musixflx foo
  3. tex foo
  4. musixpss foo
  5. mpost foo
  6. tex foo
  7. %DVIWARE% foo
Total 5 pass
+ dvips or dvipdfm
  1. tex foo
  2. musixflx foo
  3. tex foo
  4. musixpss foo
  5. mpost foo
  6. dvips foo
    (or dvipdfm foo)
Total 6 pass
+ Acrobat Reader
  1. pdftex foo
  2. musixflx foo
  3. pdftex foo
  4. musixpss foo
  5. mpost foo
  6. pdftex foo
  7. (AcroRd32) foo

Slur thickness adjustment

The thickness of slurs can be changed by redefining a macro \psslurthickadj . For example, \def\psslurthickadj{2.5} makes the slurs 2.5 times thicker than the default.

Switching EPS-based slurs and font-based slurs

EPS-based slurs can be switched on and off at any place in the score source by:

This might enable coexistence with 'PostScript Slurs Type K' ...??

Support program: cleaning intermediate EPS files

The support program has a function for deleting intermediate EPS files. This function is useful when deleting EPS files before total retypesetting and so on.

musixpss -clean foo.slu
or the same
musixpss foo.slu -clean

removes all intermediate EPS files foo.1, foo.2, ...foo.n . (filename extention .slu can be omitted.)

License

Free Software; based on the GNU GPL ver.2 (or later). See the file COPYING.txt for details.

See also

Author

Hiroaki MORIMOTO
mailto: CQX05646@nifty.com

Acknowledgement

Thanks to Luigi Cataldi; providing Italian version document and giving compatibility reports about pdfTeX.


History

version 0.10 [2001/02/10] (first public release)

version 0.20 [2001/02/23]

version 0.21 [2001/04/30]

version 0.22 [2001/06/15]

version 0.23 [2001/10/17]

version 0.30 [2001/10/21] (first announcement to TeX-music Mailing List)

version 0.40 [2001/11/03]

version 0.41 [2002/06/01]

version 0.50 [2003/01/05]

version 0.51 [2004/02/21]

TODO:


Copyright (C) 2001-2004 Hiroaki MORIMOTO
All kinds of comments, suggestions, and bug reports are welcome. If you find any problems or ideas, please tell me via 'TeX-music Mailing List' or direct email.
mailto: CQX05646@nifty.com