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 posi-
tion 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 (Courier 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 out-
put.
.X text
Present text to the hidden page-makeup program as part
of a device-dependent output sequence x X text. Equiva-
lent to \X'text'.
Page 1 Plan 9 (printed 11/3/25)
MPM(6) MPM(6)
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,
in points.
Useful strings:
%e,%o
Even and odd page title commands, as .tl ''''.
FILES
/sys/lib/tmac/tmac.pm
/$cputype/bin/aux/pm
SEE ALSO
ms(6), troff(1)
B. W. Kernighan and C. J. Van Wyk, `The -mpm Macro Package',
UNIX Research System Programmer's Manual, 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/3/25)