933 lines
22 KiB
Plaintext
933 lines
22 KiB
Plaintext
.\" $NetBSD: ms,v 1.1 2007/11/29 12:35:07 mjf Exp $
|
|
.\"
|
|
.\" Copyright (C) Caldera International Inc. 2001-2002.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code and documentation must retain the above
|
|
.\" copyright notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed or owned by Caldera
|
|
.\" International, Inc.
|
|
.\" 4. Neither the name of Caldera International, Inc. nor the names of other
|
|
.\" contributors may be used to endorse or promote products derived from
|
|
.\" this software without specific prior written permission.
|
|
.\"
|
|
.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA
|
|
.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT,
|
|
.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
|
.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.\" @(#)ms 8.2 (Berkeley) 6/1/94
|
|
.\"
|
|
.if n \{\
|
|
.po 5n
|
|
.ll 70n
|
|
.\}
|
|
.EH 'USD:17-%''Using the \-ms Macros with Troff and Nroff'
|
|
.OH 'Using the \-ms Macros with Troff and Nroff''USD:17-%'
|
|
.\".RP
|
|
.\" ....TM 76-1274-16 39199 39199-11
|
|
.\" ....ND October 8, 1976
|
|
.nr CW 2.85i
|
|
.nr GW .3i
|
|
.TL
|
|
Typing Documents on the UNIX System:
|
|
.br
|
|
\!.br
|
|
Using the \-ms Macros with Troff and Nroff
|
|
.AU "MH 2C-572" 6377
|
|
M. E. Lesk
|
|
.AI
|
|
.\" .MH
|
|
.\" .OK
|
|
\"Text Formatting
|
|
\"Phototypesetting
|
|
.AB
|
|
This document describes a set of easy-to-use macros
|
|
for preparing documents on the UNIX system.
|
|
Documents may be produced on either the
|
|
phototypesetter or on a computer terminal,
|
|
without changing the input.
|
|
.PP
|
|
The macros provide facilities for paragraphs, sections (optionally
|
|
with automatic numbering), page titles, footnotes,
|
|
equations,
|
|
tables, two-column format, and
|
|
cover pages for papers.
|
|
.PP
|
|
This memo includes, as an appendix,
|
|
the text of the ``Guide to Preparing
|
|
Documents with \-ms''
|
|
which contains additional examples
|
|
of features of \-ms.
|
|
.PP
|
|
This manual is a revision of, and replaces,
|
|
``Typing Documents on UNIX,''
|
|
dated November 22, 1974.
|
|
.AE
|
|
.\" .CS 6 6 12 1 0 8
|
|
.bd I 3
|
|
.PP
|
|
.I
|
|
Introduction.
|
|
.R
|
|
This memorandum describes a package of commands to produce
|
|
papers
|
|
using the
|
|
.bd I
|
|
.I
|
|
troff
|
|
.R
|
|
and
|
|
.I nroff
|
|
formatting programs on the
|
|
.SM
|
|
UNIX
|
|
.NL
|
|
system.
|
|
As with other
|
|
.I roff -derived
|
|
programs,
|
|
text is prepared interspersed with formatting commands.
|
|
However, this package,
|
|
which itself is written in
|
|
.I troff
|
|
commands,
|
|
provides higher-level commands
|
|
than those provided with the basic
|
|
.I troff
|
|
program.
|
|
The commands available in this package are listed in
|
|
Appendix A.
|
|
.bd I 3
|
|
.PP
|
|
.I
|
|
Text.
|
|
.R
|
|
Type normally, except that instead of indenting for paragraphs,
|
|
place a line reading ``.PP'' before each paragraph.
|
|
This will produce indenting and extra space.
|
|
.LP
|
|
Alternatively, the command .LP that was used here will produce
|
|
a left-aligned (block) paragraph.
|
|
The paragraph spacing can be changed: see below under ``Registers.''
|
|
.PP
|
|
.I
|
|
Beginning.
|
|
.R
|
|
For a document with a paper-type cover sheet, the input should start as follows:
|
|
.DS L
|
|
[optional overall format .RP \- see below]
|
|
.TL
|
|
Title of document (one or more lines)
|
|
.AU
|
|
Author(s) (may also be several lines)
|
|
.AI
|
|
Author's institution(s)
|
|
.AB
|
|
Abstract; to be placed on the cover sheet of a paper.
|
|
Line length is 5/6 of normal; use .ll here to change.
|
|
.AE (abstract end)
|
|
text ... (begins with .PP, which see)
|
|
.DE
|
|
To omit some of the standard headings
|
|
(e.g. no abstract, or no author's institution) just
|
|
omit the corresponding fields and command lines.
|
|
The word
|
|
.SM
|
|
ABSTRACT
|
|
.NL
|
|
can be suppressed by writing ``.AB no'' for ``.AB''.
|
|
Several interspersed .AU and .AI lines can be used for multiple authors.
|
|
The headings are not compulsory: beginning
|
|
with a .PP command is perfectly OK and will just
|
|
start printing an ordinary paragraph.
|
|
.I Warning:
|
|
You can't just begin a document with a line of text.
|
|
Some \-ms command must
|
|
precede any text input. When in doubt, use .LP
|
|
to get proper initialization, although any of
|
|
the commands .PP, .LP, .TL, .SH, .NH is good enough.
|
|
Figure 1 shows the legal arrangement of commands at the
|
|
start of a document.
|
|
.PP
|
|
.I
|
|
Cover Sheets and First Pages.
|
|
.R
|
|
The first line
|
|
of a document signals the general format of the first page.
|
|
In particular, if it is ".RP" a cover sheet with title and
|
|
abstract is prepared.
|
|
The default format
|
|
is useful for scanning drafts.
|
|
.PP
|
|
In general \-ms is arranged so that only one form
|
|
of a document need be stored, containing all
|
|
information; the first command gives the format,
|
|
and unnecessary items for that format are ignored.
|
|
.PP
|
|
Warning: don't put extraneous material
|
|
between the .TL and .AE commands. Processing
|
|
of the titling items is
|
|
special, and other data placed in them may not behave
|
|
as you expect.
|
|
Don't forget that some \-ms command must precede any input text.
|
|
.PP
|
|
.I
|
|
Page headings.
|
|
.R
|
|
The \-ms macros, by default, will print a page heading containing
|
|
a page number (if greater than 1).
|
|
A default page footer is provided only in
|
|
.I nroff ,
|
|
where the date is used.
|
|
The user can make minor adjustments to the page headings/footings
|
|
by redefining the
|
|
strings
|
|
LH, CH, and RH
|
|
which are the left, center and right portions of the page headings,
|
|
respectively; and the
|
|
strings
|
|
LF, CF, and RF,
|
|
which are the left, center and right portions of the page footer.
|
|
For more complex formats, the user can redefine
|
|
the macros PT and BT, which are invoked respectively at the top
|
|
and bottom of each page.
|
|
The margins (taken from registers HM and FM for the top and bottom
|
|
margin respectively) are normally 1 inch; the page header/footer are
|
|
in the middle of that space.
|
|
The user who redefines these macros should be careful
|
|
not to change parameters such as point size or font
|
|
without resetting them to default values.
|
|
.PP
|
|
.I
|
|
Multi-column formats.
|
|
.R
|
|
If you place the command ``.2C'' in your document, the document will
|
|
be printed in double column format beginning
|
|
at that point. This feature is not too useful in computer
|
|
terminal output, but is often desirable on the typesetter.
|
|
The command ``.1C'' will go
|
|
back to one-column format and also skip to a new page.
|
|
The ``.2C'' command is actually a special case of the command
|
|
.DS L
|
|
.MC [column width [gutter width]]
|
|
.DE
|
|
which makes multiple columns with the specified column
|
|
and gutter width; as many columns as will fit across the page
|
|
are used.
|
|
Thus triple, quadruple, ... column pages can be printed.
|
|
Whenever the number of columns is changed (except going from
|
|
full width to some larger number of columns)
|
|
a new page is started.
|
|
.PP
|
|
.I
|
|
Headings.
|
|
.R
|
|
To produce a special heading, there are two commands.
|
|
If you type
|
|
.DS L
|
|
.NH
|
|
type section heading here
|
|
may be several lines
|
|
.DE
|
|
you will get automatically numbered section headings (1, 2, 3, ...),
|
|
in boldface.
|
|
For example,
|
|
.DS L
|
|
.NH
|
|
Care and Feeding of Department Heads
|
|
.DE
|
|
produces
|
|
.NH
|
|
Care and Feeding of Department Heads
|
|
.PP
|
|
Alternatively,
|
|
.DS L
|
|
.SH
|
|
Care and Feeding of Directors
|
|
.DE
|
|
will print the heading with no number added:
|
|
.SH
|
|
Care and Feeding of Directors
|
|
.PP
|
|
Every section heading, of either type, should be followed
|
|
by a paragraph beginning with .PP or .LP, indicating
|
|
the end of the heading.
|
|
Headings may contain more than one line
|
|
of text.
|
|
.PP
|
|
The .NH command also supports more complex numbering schemes.
|
|
If a numerical argument is given, it is taken to be a
|
|
``level'' number and an appropriate sub-section
|
|
number is generated.
|
|
Larger level numbers indicate deeper
|
|
sub-sections, as in this example:
|
|
.DS L
|
|
.NH
|
|
Erie-Lackawanna
|
|
.NH 2
|
|
Morris and Essex Division
|
|
.NH 3
|
|
Gladstone Branch
|
|
.NH 3
|
|
Montclair Branch
|
|
.NH 2
|
|
Boonton Line
|
|
.DE
|
|
.ne 1i
|
|
generates:
|
|
.NH
|
|
Erie-Lackawanna
|
|
.NH 2
|
|
Morris and Essex Division
|
|
.NH 3
|
|
Gladstone Branch
|
|
.NH 3
|
|
Montclair Branch
|
|
.NH 2
|
|
Boonton Line
|
|
.PP
|
|
An explicit ``.NH 0'' will reset the numbering of level 1
|
|
to one, as here:
|
|
.DS L
|
|
.NH 0
|
|
Penn Central
|
|
.DE
|
|
.ft 3
|
|
.if n .ul 1
|
|
.sp 1
|
|
1. Penn Central
|
|
.PP
|
|
.I
|
|
Indented paragraphs.
|
|
.R
|
|
(Paragraphs with hanging numbers, e.g. references.)
|
|
The sequence
|
|
.DS L
|
|
.IP [1]
|
|
Text for first paragraph, typed
|
|
normally for as long as you would
|
|
like on as many lines as needed.
|
|
.IP [2]
|
|
Text for second paragraph, ...
|
|
.DE
|
|
produces
|
|
.IP [1]
|
|
Text for first paragraph, typed normally for as long
|
|
as you would like on as many lines as
|
|
needed.
|
|
.IP [2]
|
|
Text for second paragraph, ...
|
|
.LP
|
|
A series of indented paragraphs may be followed by an ordinary paragraph
|
|
beginning with .PP or .LP,
|
|
depending on whether you wish indenting or not.
|
|
The command .LP was used here.
|
|
.PP
|
|
More sophisticated uses of .IP are also possible.
|
|
If the label is omitted, for example, a plain block indent
|
|
is produced.
|
|
.DS L
|
|
.IP
|
|
This material will
|
|
just be turned into a
|
|
block indent suitable for quotations or
|
|
such matter.
|
|
.LP
|
|
.DE
|
|
will produce
|
|
.IP
|
|
This material
|
|
will just be turned
|
|
into a block indent
|
|
suitable for
|
|
quotations or such matter.
|
|
.LP
|
|
If a non-standard amount of indenting is required,
|
|
it may be specified after the label (in character positions)
|
|
and will remain in effect until the next .PP or .LP.
|
|
Thus, the general form of the .IP command
|
|
contains two additional fields: the label and the indenting
|
|
length. For example,
|
|
.DS L
|
|
.IP first: 9
|
|
Notice the longer label, requiring larger
|
|
indenting for these paragraphs.
|
|
.IP second:
|
|
And so forth.
|
|
.LP
|
|
.DE
|
|
produces this:
|
|
.IP first: 9
|
|
Notice the longer label, requiring larger
|
|
indenting for these paragraphs.
|
|
.IP second:
|
|
And so forth.
|
|
.LP
|
|
It is also possible to produce multiple nested indents;
|
|
the command .RS indicates that the next .IP starts from the
|
|
current indentation level.
|
|
Each .RE will eat up one level of indenting
|
|
so you should balance .RS and .RE commands.
|
|
The .RS command should be thought of as ``move right'' and
|
|
the .RE command as ``move left''.
|
|
As an example
|
|
.DS L
|
|
.IP 1.
|
|
Bell Laboratories
|
|
.RS
|
|
.IP 1.1
|
|
Murray Hill
|
|
.IP 1.2
|
|
Holmdel
|
|
.IP 1.3
|
|
Whippany
|
|
.RS
|
|
.IP 1.3.1
|
|
Madison
|
|
.RE
|
|
.IP 1.4
|
|
Chester
|
|
.RE
|
|
.LP
|
|
.DE
|
|
will result in
|
|
.IP 1.
|
|
Bell Laboratories
|
|
.RS
|
|
.IP 1.1
|
|
Murray Hill
|
|
.IP 1.2
|
|
Holmdel
|
|
.IP 1.3
|
|
Whippany
|
|
.RS
|
|
.IP 1.3.1
|
|
Madison
|
|
.RE
|
|
.IP 1.4
|
|
Chester
|
|
.RE
|
|
.LP
|
|
All of these variations on .LP leave the right
|
|
margin untouched. Sometimes, for purposes
|
|
such as setting off a quotation, a paragraph indented
|
|
on both right and left is required.
|
|
.QP
|
|
A single paragraph
|
|
like this is obtained
|
|
by preceding it with .QP.
|
|
More complicated material (several paragraphs) should be
|
|
bracketed with .QS and .QE.
|
|
.LP
|
|
.I
|
|
Emphasis.
|
|
.R
|
|
To get
|
|
italics
|
|
(on the typesetter) or underlining (on the terminal)
|
|
say
|
|
.DS L
|
|
.I
|
|
as much text as you want
|
|
can be typed here
|
|
.R
|
|
.DE
|
|
.bd I
|
|
.br
|
|
as was done for
|
|
.I
|
|
these three words.
|
|
.R
|
|
The .R command restores the normal (usually Roman) font.
|
|
If only one word is to be italicized, it
|
|
may be just given on the line with the .I command,
|
|
.br
|
|
.bd I 3
|
|
.DS
|
|
.I word
|
|
.DE
|
|
and in this case no .R is needed to restore
|
|
the previous font.
|
|
.B
|
|
Boldface
|
|
.R
|
|
can be produced by
|
|
.DS L
|
|
.B
|
|
Text to be set in boldface
|
|
goes here
|
|
.R
|
|
.DE
|
|
and also will be underlined on the terminal or line printer.
|
|
As with .I, a single word can be placed in boldface
|
|
by placing it on the same line as the .B command.
|
|
.PP
|
|
A few size changes
|
|
can be specified similarly with
|
|
the commands .LG (make larger), .SM (make smaller), and .NL
|
|
(return to normal size).
|
|
The size change
|
|
is two points; the commands may be repeated for
|
|
.SM
|
|
increased
|
|
.SM
|
|
effect
|
|
.NL
|
|
(here one .NL canceled two .SM commands).
|
|
.PP
|
|
If actual
|
|
.UL underlining
|
|
as opposed to italicizing is required on the typesetter,
|
|
the command
|
|
.DS
|
|
.UL word
|
|
.DE
|
|
will underline a word. There is no way to underline
|
|
multiple words on the typesetter.
|
|
.PP
|
|
.I
|
|
Footnotes.
|
|
.R
|
|
Material placed between lines with the commands .FS
|
|
(footnote) and .FE (footnote end) will
|
|
be collected, remembered, and finally placed
|
|
at the bottom of the current page*.
|
|
By default, footnotes are 11/12th the
|
|
length of normal text,
|
|
but this can be changed using the FL register (see below).
|
|
.FS
|
|
* Like this.
|
|
.FE
|
|
.PP
|
|
.I
|
|
Displays and Tables.
|
|
.R
|
|
To prepare displays of lines, such as tables, in which
|
|
the lines should not be re-arranged,
|
|
enclose them in the commands .DS and .DE
|
|
.DS L
|
|
.DS
|
|
table lines, like the
|
|
examples here, are placed
|
|
between .DS and .DE
|
|
.DE
|
|
.DE
|
|
By default, lines between .DS and .DE are indented and left-adjusted.
|
|
You can also center lines, or retain the left margin.
|
|
Lines bracketed by .DS C and .DE commands are
|
|
centered (and not re-arranged); lines bracketed
|
|
by .DS L and .DE are left-adjusted, not indented, and
|
|
not re-arranged.
|
|
A plain .DS is equivalent
|
|
to .DS I, which indents and left-adjusts. Thus,
|
|
.DS C
|
|
these lines were preceded
|
|
by .DS C and followed by
|
|
a .DE command;
|
|
.DE
|
|
whereas
|
|
.DS L
|
|
these lines were preceded
|
|
by .DS L and followed by
|
|
a .DE command.
|
|
.DE
|
|
Note that .DS C centers each line; there is a variant .DS B
|
|
that makes the display into a left-adjusted block of text, and
|
|
then centers that entire block.
|
|
Normally a display is kept together, on one page.
|
|
If you wish to have a long display which
|
|
may be split across page
|
|
boundaries,
|
|
use .CD, .LD, or .ID in place of
|
|
the commands .DS C, .DS L, or .DS I respectively.
|
|
An extra argument to the .DS I or .DS command is taken
|
|
as an amount to indent.
|
|
Note: it is tempting to assume that .DS R will right adjust
|
|
lines, but it doesn't work.
|
|
.PP
|
|
.I
|
|
Boxing words or lines.
|
|
.R
|
|
To draw rectangular boxes around words the command
|
|
.DS L
|
|
.BX word
|
|
.DE
|
|
will print
|
|
.BX word
|
|
as shown.
|
|
The boxes will not be neat on a terminal, and this
|
|
should not be used as a substitute for italics.
|
|
.B1
|
|
Longer pieces of text may be boxed
|
|
by enclosing them with .B1 and .B2:
|
|
.DS L
|
|
.B1
|
|
text...
|
|
.B2
|
|
.DE
|
|
as has been done here.
|
|
.B2
|
|
.ne 1i
|
|
.PP
|
|
.I
|
|
Keeping blocks together.
|
|
.R
|
|
If you wish to keep a table or other block of lines
|
|
together on a page, there are ``keep - release'' commands.
|
|
If a block of lines preceded by .KS and followed by .KE does
|
|
not fit on the remainder of the current page, it will begin
|
|
on a new page.
|
|
Lines bracketed by .DS and .DE commands are automatically
|
|
kept together this way.
|
|
There is also a ``keep floating'' command: if the
|
|
block to be kept together is preceded by .KF instead of .KS
|
|
and does not fit
|
|
on the current page, it will be moved down through the text
|
|
until the top of the next page. Thus, no large blank space
|
|
will be introduced in the document.
|
|
.PP
|
|
.I
|
|
Nroff/Troff commands.
|
|
.R
|
|
Among the useful commands from the basic formatting programs
|
|
are the following. They all work with both typesetter and
|
|
computer terminal output:
|
|
.DS L
|
|
.bp - begin new page.
|
|
.br - ``break'', stop running text
|
|
from line to line.
|
|
.sp n - insert n blank lines.
|
|
.na - don't adjust right margins.
|
|
.DE
|
|
.PP
|
|
.I
|
|
Date.
|
|
.R
|
|
By default, documents produced on computer terminals have the
|
|
date at the bottom of each page; documents produced on
|
|
the typesetter don't.
|
|
To force the date, say ``.DA''. To force no date, say ``.ND''.
|
|
To lie about the date, say ``.DA July 4, 1776''
|
|
which puts the specified date at the bottom of each page.
|
|
The command
|
|
.DS L
|
|
.ND May 8, 1945
|
|
.DE
|
|
in ".RP" format
|
|
places the specified date on the cover sheet and nowhere else.
|
|
Place this line before the title.
|
|
.PP
|
|
.I
|
|
Registers.
|
|
.R
|
|
Certain of the registers used by \-ms can
|
|
be altered to change default
|
|
settings.
|
|
They should be changed with .nr commands,
|
|
as with
|
|
.DS
|
|
.nr PS 9
|
|
.DE
|
|
.bd I
|
|
to make the default point size 9 point.
|
|
If the effect is needed immediately, the
|
|
normal
|
|
.I
|
|
troff
|
|
.R
|
|
command should be used
|
|
in addition to changing the number register.
|
|
.br
|
|
.ps 9
|
|
.vs 10p
|
|
.TS
|
|
c0 c c c
|
|
c c c c
|
|
a l l l.
|
|
Register Defines Takes Default
|
|
effect
|
|
PO page offset next page 1\(fm\(fm
|
|
LL line length next para. 6\(fm\(fm
|
|
LT title length next para. 6\(fm\(fm
|
|
HM top margin next page 1\(fm\(fm
|
|
FM bottom margin next page 1\(fm\(fm
|
|
PS point size next para. 10 pts
|
|
VS line spacing next para. 12 pts
|
|
PI para. indent next para. 5 ens
|
|
PD para. spacing next para. 0.3 VS
|
|
QI quote para ind next para. 5 ens
|
|
FL footnote length next FS *5/6 LL
|
|
FI footnote indent next FS *5/6 LL
|
|
FF footnote format next FS *5/6 LL
|
|
MINGW min. column wid next page 2 ens
|
|
.TE
|
|
.ps \n(PS
|
|
.vs \n(VS
|
|
You may also alter
|
|
the strings
|
|
LH, CH, and RH which are the left, center, and right headings
|
|
respectively; and similarly LF, CF, and RF which are strings in the
|
|
page footer.
|
|
The page number on
|
|
.I
|
|
output
|
|
.R
|
|
is taken from register PN, to permit
|
|
changing its output style.
|
|
For more complicated headers and footers
|
|
the macros PT and BT can be redefined, as
|
|
explained earlier.
|
|
.bd I 3
|
|
.PP
|
|
.I
|
|
Accents.
|
|
.R
|
|
To simplify typing certain foreign words,
|
|
strings representing common accent marks are defined.
|
|
They precede the letter over which the mark
|
|
is to appear.
|
|
Here are the strings:
|
|
.TS
|
|
center;
|
|
c c6 c c.
|
|
Input Output Input Output
|
|
\e*\(fme \*'e \e*~a \*~a
|
|
\e*\(gae \*`e \e*Ce \h'0.15m'\v'-0.6m'\s6\zv\s0\v'0.6m'\h'-0.15m'e
|
|
\e*:u \*:u \e*,c \*,c
|
|
\e*^e \o'^e'
|
|
.TE
|
|
.PP
|
|
.I
|
|
Use.
|
|
.R
|
|
After your document is prepared and stored on a file,
|
|
you can print it on a terminal with the command*
|
|
.bd I
|
|
.FS
|
|
* If .2C was used, pipe the
|
|
.I nroff
|
|
output
|
|
through
|
|
.I col;
|
|
make the first line of the input
|
|
``.pi /usr/bin/col.''
|
|
.br
|
|
.FE
|
|
.DS L
|
|
.I
|
|
nroff \-ms file
|
|
.R
|
|
.DE
|
|
and you can print it on the typesetter with the
|
|
command
|
|
.DS L
|
|
.I
|
|
troff \-ms file
|
|
.R
|
|
.DE
|
|
(many options are possible).
|
|
In each case, if your document is stored in several files,
|
|
just list all the filenames
|
|
where we have used ``file''.
|
|
If equations or tables are used,
|
|
.I
|
|
eqn
|
|
.R
|
|
and/or
|
|
.I
|
|
tbl
|
|
.R
|
|
must be invoked as preprocessors.
|
|
.br
|
|
.bd I 3
|
|
.PP
|
|
.I
|
|
References and further study.
|
|
.R
|
|
If you have to do Greek or mathematics, see
|
|
.I eqn
|
|
[1]
|
|
for equation setting.
|
|
To aid
|
|
.I eqn
|
|
users,
|
|
.I \-ms
|
|
provides definitions of .EQ and .EN
|
|
which normally center the equation and set it off slightly.
|
|
An argument on .EQ is taken to be an equation
|
|
number and placed in the right margin near the equation.
|
|
In addition, there are three special arguments to EQ:
|
|
the letters C, I, and L indicate centered (default),
|
|
indented, and left adjusted equations, respectively.
|
|
If there is both a format argument
|
|
and an equation number,
|
|
give the format argument first, as in
|
|
.bd I
|
|
.DS
|
|
.EQ L (1.3a)
|
|
.DE
|
|
for a left-adjusted equation numbered (1.3a).
|
|
.PP
|
|
Similarly,
|
|
the macros .TS and .TE
|
|
are defined
|
|
to separate tables (see [2]) from text with a little space.
|
|
A very long table with a heading may be broken
|
|
across pages by beginning it with .TS H
|
|
instead of .TS,
|
|
and placing the line .TH in the table data
|
|
after the heading. If the table
|
|
has no heading repeated from page to page,
|
|
just use the ordinary .TS and .TE macros.
|
|
.PP
|
|
To learn more about
|
|
.I troff
|
|
see
|
|
[3] for a general introduction, and [4]
|
|
for the full details (experts only).
|
|
Information on related UNIX commands
|
|
is in [5].
|
|
For jobs that do not seem well-adapted
|
|
to \-ms, consider other macro packages.
|
|
It is often far easier to write a specific macro packages
|
|
for such tasks as imitating particular journals than
|
|
to try to adapt \-ms.
|
|
.PP
|
|
.bd I 3
|
|
.I
|
|
Acknowledgment.
|
|
.R
|
|
Many thanks are due to Brian Kernighan for
|
|
his help in the design and implementation of this package,
|
|
and for his assistance in preparing this manual.
|
|
.bd I
|
|
.SH
|
|
.ce
|
|
References
|
|
.PP
|
|
.IP [1]
|
|
B. W. Kernighan and L. L. Cherry,
|
|
.I
|
|
Typesetting Mathematics \(em Users Guide (2nd edition),
|
|
.R
|
|
Bell Laboratories Computing Science Report no. 17.
|
|
.IP [2]
|
|
M. E. Lesk,
|
|
.I
|
|
Tbl \(em A Program to Format Tables,
|
|
.R
|
|
Bell Laboratories Computing Science Report no. 45.
|
|
.IP [3]
|
|
B. W. Kernighan,
|
|
.I
|
|
A Troff Tutorial,
|
|
.R
|
|
Bell Laboratories, 1976.
|
|
.IP [4]
|
|
J. F. Ossanna,
|
|
.I
|
|
Nroff\|/Troff Reference Manual,
|
|
.R
|
|
Bell Laboratories Computing Science Report no. 51.
|
|
.IP [5]
|
|
K. Thompson and D. M. Ritchie,
|
|
.I
|
|
UNIX Programmer's Manual,
|
|
.R
|
|
Bell Laboratories, 1978.
|
|
.1C
|
|
.SH
|
|
.ce
|
|
Appendix A
|
|
.ce
|
|
List of Commands
|
|
.ft R
|
|
.TS
|
|
expand;
|
|
l2 l5 l2 l.
|
|
1C Return to single column format. LG Increase type size.
|
|
2C Start double column format. LP Left aligned block paragraph.
|
|
AB Begin abstract.
|
|
AE End abstract.
|
|
AI Specify author's institution.
|
|
AU Specify author. ND Change or cancel date.
|
|
B Begin boldface. NH Specify numbered heading.
|
|
DA Provide the date on each page. NL Return to normal type size.
|
|
DE End display. PP Begin paragraph.
|
|
DS Start display (also CD, LD, ID).
|
|
EN End equation. R Return to regular font (usually Roman).
|
|
EQ Begin equation. RE End one level of relative indenting.
|
|
FE End footnote. RP Use released paper format.
|
|
FS Begin footnote. RS Relative indent increased one level.
|
|
I Begin italics. SH Specify section heading.
|
|
SM Change to smaller type size.
|
|
IP Begin indented paragraph. TL Specify title.
|
|
KE Release keep.
|
|
KF Begin floating keep. UL Underline one word.
|
|
KS Start keep.
|
|
.TE
|
|
.sp
|
|
.ce
|
|
.ft B
|
|
Register Names
|
|
.ft R
|
|
.PP
|
|
The following register names are used by \-ms internally.
|
|
Independent use of these names in one's own macros may
|
|
produce incorrect output.
|
|
Note that no lower case letters are used in any \-ms internal name.
|
|
.TS
|
|
expand;
|
|
c s s s s s s s s s s
|
|
l l l l l l l l l l l.
|
|
Number registers used in \-ms
|
|
: DW GW HM IQ LL NA OJ PO T. TV
|
|
#T EF H1 HT IR LT NC PD PQ TB VS
|
|
\&.T FC H2 IF IT MF ND PE PS TC WF
|
|
1T FL H3 IK KI MM NF PF PX TD YE
|
|
AV FM H4 IM L1 MN NS PI RO TN YY
|
|
CW FP H5 IP LE MO OI PN ST TQ ZN
|
|
.TE
|
|
.sp
|
|
.TS
|
|
expand;
|
|
c s s s s s s s s s s
|
|
l l l l l l l l l l l.
|
|
String registers used in \-ms
|
|
\(fm A5 CB DW EZ I KF MR R1 RT TL
|
|
\(ga AB CC DY FA I1 KQ ND R2 S0 TM
|
|
^ AE CD E1 FE I2 KS NH R3 S1 TQ
|
|
~ AI CF E2 FJ I3 LB NL R4 S2 TS
|
|
: AU CH E3 FK I4 LD NP R5 SG TT
|
|
, B CM E4 FN I5 LG OD RC SH UL
|
|
1C BG CS E5 FO ID LP OK RE SM WB
|
|
2C BT CT EE FQ IE ME PP RF SN WH
|
|
A1 C D EL FS IM MF PT RH SY WT
|
|
A2 C1 DA EM FV IP MH PY RP TA XD
|
|
A3 C2 DE EN FY IZ MN QF RQ TE XF
|
|
A4 CA DS EQ HO KE MO R RS TH XK
|
|
.TE
|
|
.\" .(z
|
|
.\".so fig1.pic
|
|
.ce 2
|
|
Figure 1:\ \ Order of Commands in Input
|
|
.ce 0
|
|
.\" .)z
|