DOKK / manpages / debian 12 / pmw / pmw.1.en
PMW(1) General Commands Manual PMW(1)

pmw - a program for typesetting music

pmw [options] [input file]

PMW (Philip's Music Writer) is a program for typesetting music. It is not an interactive program; instead, it reads a description of the music from a textual input file, which can be prepared by any text editor. The output from PMW is a PostScript file of page images of typeset music. This output uses the PMW-Music PostScript font, which must therefore be available for viewing, printing, or converting to PDF by an application such as GhostScript. A secondary output in the form of a MIDI file can be requested.

A full description of PMW and its markup language is given in the reference manual. This man page just summarizes the command line options.

The pages are A4-sized; print them 2-up, assuming A3 paper.
The pages are A5-sized; print them 2-up, assuming A4 paper.
The paper is A4, but the printer feeds it sideways, so rotate the page images before printing.
Show a compile-time option; exit with its value (0 or 1). Possible arguments are:


b2pf suport for B2PF processing
musicxml support for MusicXML input

Arrange to print <number> copies. This number is honoured by PostScript printers. It may not be honoured by other programs that interpret PostScript.
Write general debugging information to stderr. This option is of use only to the program maintainer.
Write debugging data for the bar to stderr. This option is of use only to the program maintainer.
Instead of using characters from the music font to print bar lines, generate PostScript drawing instructions. Some PostScript interpreters do not display the font bar line characters correctly on the screen when several of them are used to generate a long vertical line; drawing them instead may give a better result. -dbl is an abbreviation for -drawbarlines.
Instead of using characters from the music font to print stave lines, generate PostScript drawing instructions. Some PostScript interpreters do not display the font stave characters correctly on the screen; drawing them instead may give a better result. The default thickness of drawn stave lines is 0.3 points, scaled according to relative stave size and overall magnification. An integer number given with this option specifies the thickness in tenths of a point. -dsl is an abbreviation for -drawstavelines.
Write debugging positioning data for the bar to stderr. If there is more than one movement (not likely while debugging at this level), the data is output for every bar with the given number. If the number is -1, data is output for all bars. This option is of use only to the program maintainer.
This option sets the PostScript option for duplex printing (see also -tumble).
Write the output as encapsulated PostScript (useful if this is an illustration that is going to be included in some other document).
Set the maximum number of errors before the program gives up. The default is 40. This option is provided mainly so that an error test can generate a large number of errors. -em is an abbreviation for -errormaximum.
Search the given colon-separated list of directories for fontmetrics files, before searching the default directory that was set up when PMW was built. These directories are also searched for optional Unicode translation (.utr) files for fonts that do not use Adobe standard encoding, and for any special text fonts (.pfa files) that are requested to be included in the output.
Specifies a format name, used when the input file is set up to output in several different formats.
Use the given file as the PostScript header file, instead of the default that was set up when PMW was built.
Output a list of options, then stop. No file is read.
This option causes PMW to include the music font within the PostScript output that it generates. (If the PMW-Alpha font is used, that is also included.) If you use this option, there is no need to install the PMW music font(s) for GhostScript (or any other display program) to find.
Search the given colon-separated list of directories for PMW's music fonts, before searching the default directory that was set up when PMW was built.
Use the given file as the MIDIperc file, instead of the default that was set up when PMW was built. This file translates between names and "pitches" for untuned percussion voices.
Use the given file as the MIDIvoices file, instead of the default that was set up when PMW was built. This file translates voice names to MIDI voice numbers.
Set the `manualfeed' option in the generated PostScript. Most PostScript printers interpret this to mean that the paper should be taken from an alternate input tray or slot. Some also require the user to push a button before each page is printed.
Write MIDI output to the given file (in addition to the normal PostScript output). The stave selection (see -s below) also applies to MIDI output.
If -midi is given, write only the given bars to the MIDI output. The range can be two numbers separated by a hyphen or a single number for just one bar. A single number followed by a hyphen plays from that bar to the end of the movement. -mb is an abbreviation for -midibars.
For a multi-movement input file, this specifies the movement that is to be output as MIDI when -midi is given. The default is the first movement. -mm is an abbreviation for -midimovement.
Do not show version number for error output. This is useful to a maintainer when comparing output from different versions.
Do not read the caller's .pmwrc file. This must be the first option given.
When generating a MIDI output file, do not repeat repeated sections of the music. -nr is an abbreviation for -norepeats.
This option stops PMW from using the 100-point wide stave characters when printing staves. Instead, staves are constructed entirely from the 10-point wide characters. This option is provided because it seems that some PostScript interpreters cannot deal correctly with the very wide characters. -nw is an abbreviation for -nowidechars. The -drawstavelines option overrides this option.
Send the output to the given file, or, if "-" is given, to stdout. The default file name is the input file with the extension ".ps" replacing any existing extension, or being added if there is no extension. If there is no input file (input from stdin) the default output is to stdout.
Output only the specified pages. These can be individual page numbers, or pairs of numbers separated by a hyphen, to specify a range. Use commas to separate items in the list.
Output pages in pamphlet order. This is usually used in conjunction with -a5ona4 or -a4ona3.
Move the image on the page by (x,y) points.
This option specifies a distance by which righthand (recto) page images are moved to the right, and lefthand (verso) page images are moved to the left, thus creating a "gutter" for binding when the images are printed doublesided. The -printgutter setting applies only when pages are being printed 1-up. It is ignored for any of the 2-up printing styles.
Scale the output image by <n>.
Output only odd or only even pages; <n> must either be 1 or 2.
Output the pages in reverse order.
Search the given directory for "standard macro" files instead of searching the default directory that was set up when PMW was built.
Output only the specified staves. These can be individual stave numbers, or pair of numbers separated by a hyphen, to specify a range. Use commas to separate items in the list.
Specify a transposition, in semitones.
When -duplex is set, -tumble causes the PostScript option for "tumbled" duplex printing.
Output the PMW version number to stdout, then stop. No file is read.
Output verification information about the typesetting to stderr.

Error messages are written to the standard error stream. The return code is the C return code EXIT_SUCCESS (usually 0) for success, even if there were some warnings, and EXIT_FAILURE (usually 1) otherwise.


pmw myscore
pmw -format A5 -a5ona4 -pamphlet myscore
pmw -s 3 -o quartet-viola.ps quartet.pmw


Philip Hazel
Email local part: Philip.Hazel
Email domain: gmail.com


Last updated: 28 May 2022
Copyright (c) 2022 Philip Hazel