MPM(6) MPM(6)
NAME
mpm, mspe - macros for page makeup
SYNOPSIS
troff -mpm file ...
troff -mspe file ...
DESCRIPTION
These troff(1) macros, largely compatible with ms(6), make
better pages. They silently invoke and provide information
to a postprocessor that moves floating figures, avoids wid-
ows, and justifies pages vertically by stretching vertical
spaces that result from .PP, .LP, .IP, .QP, .SH, .NH,
.DS/.DE, .EQ/.EN, .TS/.TE, .PS/.PE, .P1/.P2, and .QS/.QE.
The packages support different styles:
-mpm generic
-mspe Software-Practice and Experience
The following macros are different from or not part of -ms.
Values denoted n have default value 1v.
.BP Begin a new page.
.FL Flush: force out previous keeps.
.FC Finish a two-column region and start a new one.
.KF m Floating keep, with preferred center at vertical
position m. Special values `top' (default) and
`bottom' are permitted.
.NE n Start new page if remaining vertical space on this
page is less than n.
.P1 Begin a program display (constant width font).
.P2 End a program display.
.P3 Insert optional break point in program display.
.SP n exactly
.SP n Insert vertical space of height n, stretchable
unless exactly is present.
.Tm text Place page number and text on the standard error
output.
.X text Present text to the hidden page-makeup program as
part of a device-dependent output sequence x X
text. Equivalent to \X'text'.
Useful number registers:
HM Header margin; default 1 inch.
FM Footer margin; default 1 inch.
FO Footer position; default 10 inches.
%# Page number of current page.
dP,dV
Shrinkage of point size and vertical spacing for .P1,
Page 1 Plan 9 (printed 11/4/25)
MPM(6) MPM(6)
in points.
Useful strings:
%e,%o
Even and odd page title commands, as .tl ''''.
FILES
/sys/lib/tmac/tmac.pm
/$cputype/bin/aux/pm
SOURCE
/sys/src/cmd/pm
SEE ALSO
ms(6), troff(1)
B. W. Kernighan and C. J. Van Wyk, ``The -mpm Macro Pack-
age'', Unix Research System Programmer's Manual, Tenth Edi-
tion, Volume 2.
BUGS
These features of -ms are missing:
Document styles other than the default .RP.
Space between front matter and first paragraph.
Recover it with .SP 2.
Separating rule above footnotes.
Keeps assigned to a separate page.
Pages with more than two columns.
Troff option -o doesn't work with -mpm because only the
postprocessor knows the page numbers.
Page 2 Plan 9 (printed 11/4/25)