(BSD System Compatibility)

ms(5bsd)


ms -- (BSD) text formatting macros

Synopsis

   nroff -ms [options] file . . .
   

troff -ms [options] file . . .

Description

This package of nroff(1bsd) and troff(1bsd) macro definitions provides a formatting facility for various styles of articles, theses, and books. When producing 2-column output on a terminal or lineprinter, or when reverse line motions are needed, filter the output through col(1). All external -ms macros are defined below.

Many nroff and troff requests are unsafe in conjunction with this package. However, the first four requests below may be used with impunity after initialization, and the last two may be used even before initialization:


.bp
begin new page

.br
break output line

.sp n
insert n spacing lines

.ce n
center next n lines

.ls n
line spacing: n=1 single, n=2 double space

.na
no alignment of right margin

Font and point size changes with \f and \s are also allowed; for example, \fIword\fR will italicize word. Output of the tbl(1bsd), eqn(1bsd) and refer(1bsd) preprocessors for equations, tables, and references is acceptable as input.

Requests

Macro Initial Break?  
Name Value Reset? Explanation
.AB x - y begin abstract; if x=no do not label abstract
.AE - y end abstract
.AI - y author's institution
.AM - n better accent mark definitions
.AU - y author's name
.B x - n embolden x; if no x, switch to boldface
.B1 - y begin text to be enclosed in a box
.B2 - y end boxed text and print it
.BD - y block display; center entire block
.BT date n bottom title, printed at foot of page
.BX x - n print word x in a box
.CD - y centered display with no keep
.CM if t n cut mark between pages
.CT - y,y chapter title: page number moved to CF (TM only)
.DA x if n n force date x at bottom of page; today if no x
.DE - y end display (unfilled text) of any kind
.DS x y I y begin display with keep; x=I,L,C,B; y=indent
.EF x - n even page footer x (3 part as for .tl)
.EH x - n even page header x (3 part as for .tl)
.EN - y end displayed equation produced by eqn
.EQ x y - y break out equation; x=L,I,C; y=equation number
.FE - n end footnote to be placed at bottom of page
.FP - n numbered footnote paragraph; may be redefined
.FS x - n start footnote; x is optional footnote label
.HD undef n optional page header below header margin
.I x - n italicize x; if no x, switch to italics
.ID y 8n,.5i y indented display with no keep; y=indent
.IP x y - y,y indented paragraph, with hanging tag x; y=indent
.IX x y - y index words x y and so on (up to 5 levels)
.KE - n end keep of any kind
.KF - n begin floating keep; text fills remainder of page
.KS - y begin keep; unit kept together on a single page
.LD - y left display with no keep
.LG - n larger; increase point size by 2
.LP - y,y left (block) paragraph.
.MC x - y,y multiple columns; x=column width
.ND x if t n no date in page footer; x is date on cover
.NH x y - y,y numbered header; x=level, x=0 resets, x=S sets to y
.NL 10p n set point size back to normal
.OF x - n odd page footer x (3 part as for .tl)
.OH x - n odd page header x (3 part as for .tl)
.P1 if TM n print header on first page
.PP - y,y paragraph with first line indented
.PT - % - n page title, printed at head of page
.PX x - y print index (table of contents); x=no suppresses title
.CP - y,y quote paragraph (indented and shorter)
.R on n return to Roman font
.RE 5n y,y retreat: end level of relative indentation
.RP x - n released paper format; x=no stops title on first page
.RS 5n y,y right shift: start level of relative indentation
.SH - y,y section header, in boldface
.SM - n smaller; decrease point size by 2
.TA 8n,5n n set TAB characters to 8n 16n ... (nroff) 5n 10n ... (troff)
.TC x - y print table of contents at end; x=no suppresses title
.TE - y end of table processed by tbl
.TH - y end multi-page header of table
.TL - y title in boldface and two points larger
.TM off n thesis mode
.TS x - y,y begin table; if x=H table has multi-page header
.UL x - n underline x, even in troff
.UX x - n UNIX; trademark message first time; x appended
.XA x y - y another index entry; x=page or no for none; y=indent
.XE - y end index entry (or series of .IX entries)
.XP - y,y paragraph with second and subsequent lines indented
.XS x y - y begin index entry; x=page or no for none; y=indent
.1C on y,y one column format, on a new page
.2C - y,y begin two column format
.]- - n beginning of refer reference
.[0 - n end of unclassifiable type of reference

 Macro     Initial   Break?
 Name      Value     Reset?   Explanation
 .AB x     -         y        begin abstract; if x=no do not label abstract
 .AE       -         y        end abstract
 .AI       -         y        author's institution
 .AM       -         n        better accent mark definitions
 .AU       -         y        author's name
 .B x      -         n        embolden x; if no x, switch to boldface
 .B1       -         y        begin text to be enclosed in a box
 .B2       -         y        end boxed text and print it
 .BD       -         y        block display; center entire block
 .BT       date      n        bottom title, printed at foot of page
 .BX x     -         n        print word x in a box
 .CD       -         y        centered display with no keep
 .CM       if t      n        cut mark between pages
 .CT       -         y,y      chapter title: page number moved to CF (TM only)
 .DA x     if n      n        force date x at bottom of page; today if no x
 .DE       -         y        end display (unfilled text) of any kind
 .DS x y   I         y        begin display with keep; x=I,L,C,B; y=indent
 .EF x     -         n        even page footer x (3 part as for .tl)
 .EH x     -         n        even page header x (3 part as for .tl)
 .EN       -         y        end displayed equation produced by eqn
 .EQ x y   -         y        break out equation; x=L,I,C; y=equation number
 .FE       -         n        end footnote to be placed at bottom of page
 .FP       -         n        numbered footnote paragraph; may be redefined
 .FS x     -         n        start footnote; x is optional footnote label
 .HD       undef     n        optional page header below header margin
 .I x      -         n        italicize x; if no x, switch to italics
 .ID y     8n,.5i    y        indented display with no keep; y=indent
 .IP x y   -         y,y      indented paragraph, with hanging tag x; y=indent
 .IX x y   -         y        index words x y and so on (up to 5 levels)
 .KE       -         n        end keep of any kind
 .KF       -         n        begin floating keep; text fills remainder of page
 .KS       -         y        begin keep; unit kept together on a single page
 .LD       -         y        left display with no keep
 .LG       -         n        larger; increase point size by 2
 .LP       -         y,y      left (block) paragraph.
 .MC x     -         y,y      multiple columns; x=column width
 .ND x     if t      n        no date in page footer; x is date on cover
 .NH x y   -         y,y      numbered header; x=level, x=0 resets, x=S sets to y
 .NL       10p       n        set point size back to normal
 .OF x     -         n        odd page footer x (3 part as for .tl)
 .OH x     -         n        odd page header x (3 part as for .tl)
 .P1       if TM     n        print header on first page
 .PP       -         y,y      paragraph with first line indented
 .PT       - % -     n        page title, printed at head of page
 .PX x     -         y        print index (table of contents); x=no suppresses title
 .CP       -         y,y      quote paragraph (indented and shorter)
 .R        on        n        return to Roman font
 .RE       5n        y,y      retreat: end level of relative indentation
 .RP x     -         n        released paper format; x=no stops title on first page
 .RS       5n        y,y      right shift: start level of relative indentation
 .SH       -         y,y      section header, in boldface
 .SM       -         n        smaller; decrease point size by 2
 .TA       8n,5n     n        set TAB characters to 8n 16n ... (nroff) 5n 10n ...
                              (troff)
 .TC x     -         y        print table of contents at end; x=no suppresses title
 .TE       -         y        end of table processed by tbl
 .TH       -         y        end multi-page header of table
 .TL       -         y        title in boldface and two points larger
 .TM       off       n        thesis mode
 .TS x     -         y,y      begin table; if x=H table has multi-page header
 .UL x     -         n        underline x, even in troff
 .UX x     -         n        UNIX; trademark message first time; x appended
 .XA x y   -         y        another index entry; x=page or no for none; y=indent
 .XE       -         y        end index entry (or series of .IX entries)
 .XP       -         y,y      paragraph with second and subsequent lines indented
 .XS x y   -         y        begin index entry; x=page or no for none; y=indent
 .1C       on        y,y      one column format, on a new page
 .2C       -         y,y      begin two column format
 .]-       -         n        beginning of refer reference
 .[0       -         n        end of unclassifiable type of reference

Registers

Formatting distances can be controlled in -ms by means of built-in number registers. For example, this sets the line length to 6.5 inches:
   	.nr  LL  6.5i

Here is a table of number registers and their default values:

Name Register Controls Takes Effect Default
PS point size paragraph 10
VS vertical spacing paragraph 12
LL line length paragraph 6i
LT title length next page same as LL
FL footnote length next .FS 5.5i
PD paragraph distance paragraph 1v (if n), .3v (if t)
DD display distance displays 1v (if n), .5v (if t)
PI paragraph indent paragraph 5n
CI quote indent next .CP 5n
FI footnote indent next .FS 2n
PO page offset next page 0 (if n), ~1i (if t)
HM header margin next page 1i
FM footer margin next page 1i
FF footnote format next .FS 0 (1, 2, 3 available)

 Name   Register Controls    Takes Effect   Default
 PS     point size           paragraph      10
 VS     vertical spacing     paragraph      12
 LL     line length          paragraph      6i
 LT     title length         next page      same as LL
 FL     footnote length      next .FS       5.5i
 PD     paragraph distance   paragraph      1v (if n), .3v (if t)
 DD     display distance     displays       1v (if n), .5v (if t)
 PI     paragraph indent     paragraph      5n
 CI     quote indent         next .CP       5n
 FI     footnote indent      next .FS       2n
 PO     page offset          next page      0 (if n), ~1i (if t)
 HM     header margin        next page      1i
 FM     footer margin        next page      1i
 FF     footnote format      next .FS       0 (1, 2, 3 available)

When resetting these values, make sure to specify the appropriate units. Setting the line length to 7, for example, will result in output with one character per line. Setting FF to 1 suppresses footnote superscripting; setting it to 2 also suppresses indentation of the first line; and setting it to 3 produces an .IP-like footnote paragraph.

Here is a list of string registers available in -ms; they may be used anywhere in the text:

Name String's Function
\*Q quote (``"'' in nroff, `` in troff )
\*U unquote (``"'' in nroff, '' in troff )
\*- dash (-- in nroff, -- in troff )
\*(MO month (month of the year)
\*(DY day (current date)
\** automatically numbered footnote
\*´ acute accent (before letter)
\*` grave accent (before letter)
\*[^ ]circumflex (before letter)
\*, cedilla (before letter)
\*: umlaut (before letter)
\*[~ ]tilde (before letter)

 Name    String's Function
 \*Q     quote (``"'' in nroff, `` in troff )
 \*U     unquote (``"'' in nroff, '' in troff )
 \*-     dash (-- in nroff,  in troff )
 \*(MO   month (month of the year)
 \*(DY   day (current date)
 \**     automatically numbered footnote
 \*´     acute accent (before letter)
 \*`     grave accent (before letter)
 \*^     circumflex (before letter)
 \*,     cedilla (before letter)
 \*:     umlaut (before letter)
 \*~     tilde (before letter)

When using the extended accent mark definitions available with .AM, these strings should come after, rather than before, the letter to be accented.

Files


/usr/ucb/lib/doctools/tmac/s

/usr/ucblib/doctools/tmac/ms.???

References

col(1), eqn(1bsd), nroff(1bsd), refer(1bsd), tbl(1bsd), troff(1bsd)

Notices

Floating keeps and regular keeps are diverted to the same space, so they cannot be mixed together with predictable results.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004