summaryrefslogtreecommitdiffstats
path: root/share/doc/usd
diff options
context:
space:
mode:
Diffstat (limited to 'share/doc/usd')
-rw-r--r--share/doc/usd/19.memacros/Makefile3
-rw-r--r--share/doc/usd/19.memacros/intro.me2348
-rw-r--r--share/doc/usd/20.meref/Makefile3
-rw-r--r--share/doc/usd/20.meref/ref.me2384
4 files changed, 4 insertions, 4734 deletions
diff --git a/share/doc/usd/19.memacros/Makefile b/share/doc/usd/19.memacros/Makefile
index 1febb24..c9d2e7d 100644
--- a/share/doc/usd/19.memacros/Makefile
+++ b/share/doc/usd/19.memacros/Makefile
@@ -2,7 +2,8 @@
# $FreeBSD$
VOLUME= usd/19.memacros
-SRCS= intro.me
+SRCS= meintro.me
MACROS= -me
+SRCDIR= ${.CURDIR}/../../../../contrib/groff/doc
.include <bsd.doc.mk>
diff --git a/share/doc/usd/19.memacros/intro.me b/share/doc/usd/19.memacros/intro.me
deleted file mode 100644
index c5e2012..0000000
--- a/share/doc/usd/19.memacros/intro.me
+++ /dev/null
@@ -1,2348 +0,0 @@
-.\" Copyright (c) 1986, 1993
-.\" The Regents of the University of California. 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 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 by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 THE REGENTS OR CONTRIBUTORS 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.
-.\"
-.\" @(#)intro.me 8.1 (Berkeley) 6/8/93
-.\" $FreeBSD$
-.\"
-.UC 7
-.ll 6.5i
-.lt 6.5i
-.pn 0
-.ds MO 2.27\" version of -me to which this applies
-.nr si 3n
-\".he 'USING NROFF AND \-ME''%'
-.eh 'USD:19-%''Writing Papers with NROFF using \-me'
-.oh 'Writing Papers with NROFF using \-me''USD:19-%'
-.ds U \s-1UNIX\s0
-.ds N \s-1NROFF\s0
-.ds T \s-1TROFF\s0
-.+c
-.(l C
-.sz 14
-.b "Writing Papers with NROFF using \-me"
-.sz
-.sp 2
-.ul
-Eric P. Allman*
-.(f
-*Author's current address:
-Computer Science Division,
-EECS,
-University of California,
-Berkeley, California 94720.
-.)f
-.sp
-Project INGRES
-Electronics Research Laboratory
-University of California, Berkeley
-Berkeley, California 94720
-.)l
-.sp 4
-.pp
-This document describes
-the text processing facilities
-available on the \*U\(dg
-.(f
-\(dg\*U is a trademark
-of AT&T Bell Laboratories
-.)f
-operating system
-via \*N\(dg and the
-\-me
-macro package.
-It is assumed
-that the reader
-already is generally familiar
-with the \*U operating system
-and a text editor
-such as
-.b ex .
-This is intended to be a casual introduction,
-and
-as such not all material is covered.
-In particular,
-many variations and additional features
-of the \-me macro package
-are not explained.
-For a complete discussion of this
-and other issues,
-see
-.ul
-The \-me Reference Manual
-and
-.ul
-The \*N/\*T Reference Manual.
-.pp
-\*N, a computer program
-that runs on the \*U operating system,
-reads an input file
-prepared by the user
-and outputs a formatted paper
-suitable for publication or framing.
-The input consists of
-.i text ,
-or words to be printed,
-and
-.i requests ,
-which give instructions
-to the \*N program
-telling how to format the printed copy.
-.pp
-Section 1
-describes the basics
-of text processing.
-Section 2
-describes the basic requests.
-Section 3
-introduces displays.
-Annotations,
-such as footnotes,
-are handled in
-section 4.
-The more complex requests
-which are not discussed in section 2
-are covered in section 5.
-Finally,
-section 6
-discusses things you will need
-to know
-if you want to typeset documents.
-If you are a novice,
-you probably won't want to read beyond section 4
-until you have tried some of the basic features out.
-.pp
-When you have your raw text ready,
-call the \*N formatter by typing
-as a request to the \*U shell:
-.(b
-nroff \-me \-T\c
-.i "type files"
-.)b
-where
-.i type
-describes the type of terminal
-you are outputting to.
-Common values are
-.b dtc
-for a DTC 300s
-(daisy-wheel type)
-printer and
-.b lpr
-for the line printer.
-If the
-.b \-T
-flag is omitted,
-a
-.q "lowest common denominator"
-terminal is assumed;
-this is good for previewing output
-on most terminals.
-A complete description of options
-to the \*N command can be found in
-.ul
-The \*N/\*T Reference Manual.
-.pp
-The word
-.i argument
-is used in this manual
-to mean a word or number
-which appears on the same line
-as a request
-which modifies the meaning
-of that request.
-For example,
-the request
-.(b
-\&.sp
-.)b
-spaces one line,
-but
-.(b
-\&.sp 4
-.)b
-spaces four lines.
-The number
-.b 4
-is an
-.i argument
-to the
-.b .sp
-request
-which says to space four lines
-instead of one.
-Arguments are separated from the request
-and from each other
-by spaces.
-.sh 1 "Basics of Text Processing"
-.pp
-The primary function
-of \*N
-is to
-.i collect
-words from input lines,
-.i fill
-output lines with those words,
-.i justify
-the right hand margin by inserting extra spaces
-in the line,
-and output the result.
-For example,
-the input:
-.(b
-Now is the time
-for all good men
-to come to the aid
-of their party.
-Four score and seven
-years ago,...
-.)b
-will be read,
-packed onto output lines,
-and justified
-to produce:
-.(b F
-Now is the time
-for all good men
-to come to the aid
-of their party.
-Four score and seven
-years ago,...
-.)b
-Sometimes you may want to start a new output line
-even though the line you are on
-is not yet full;
-for example,
-at the end of a paragraph.
-To do this
-you can cause a
-.i break ,
-which
-starts a new output line.
-Some requests
-cause a break automatically,
-as do blank input lines
-and input lines beginning with a space.
-.pp
-Not all input lines
-are text to be formatted.
-Some of the input lines
-are
-.i requests
-which describe
-how to format the text.
-Requests always have a period
-or an apostrophe
-(\c
-.q "\|\(aa\|" )
-as the first character
-of the input line.
-.pp
-The text formatter
-also does more complex things,
-such as automatically numbering pages,
-skipping over page folds,
-putting footnotes in the correct place,
-and so forth.
-.pp
-I can offer you a few hints
-for preparing text
-for input to \*N.
-First,
-keep the input lines short.
-Short input lines are easier to edit,
-and \*N will pack words onto longer lines
-for you anyhow.
-In keeping with this,
-it is helpful
-to begin a new line
-after every period,
-comma,
-or phrase,
-since common corrections
-are to add or delete sentences
-or phrases.
-Second,
-do not put spaces at the end of lines,
-since this can sometimes confuse the \*N
-processor.
-Third,
-do not hyphenate words at the end of lines
-(except words that should have hyphens in them,
-such as
-.q mother-in-law );
-\*N is smart enough to hyphenate words
-for you as needed,
-but is not smart enough
-to take hyphens out
-and join a word back together.
-Also,
-words such as
-.q mother-in-law
-should not be broken
-over a line,
-since then you will get a space
-where not wanted,
-such as
-.tr @-
-.nh
-.q "mother@\ in@law" .
-.br
-.tr @@
-.hy 14
-.sh 1 "Basic Requests"
-.sh 2 "Paragraphs"
-.pp
-Paragraphs are begun
-by using the
-.b .pp
-request.
-For example,
-the input:
-.(b
-\&.pp
-Now is the time for all good men
-to come to the aid of their party.
-Four score and seven years ago,...
-.)b
-produces a blank line
-followed by an indented first line.
-The result is:
-.(b F
-.ti +\n(piu
-Now is the time for all good men
-to come to the aid of their party.
-Four score and seven years ago,...
-.)b
-.pp
-Notice that the sentences
-of the paragraphs
-.i "must not"
-begin with a space,
-since blank lines
-and lines beginning with spaces
-cause a break.
-For example,
-if I had typed:
-.(b
-\&.pp
-Now is the time for all good men
- to come to the aid of their party.
-Four score and seven years ago,...
-.)b
-The output would be:
-.(b F
-.ti +\n(piu
-Now is the time for all good men
- to come to the aid of their party.
-Four score and seven years ago,...
-.)b
-A new line begins after the word
-.q men
-because the second line began with a space character.
-.pp
-There are many
-fancier
-types of paragraphs,
-which will be described later.
-.sh 2 "Headers and Footers"
-.pp
-Arbitrary headers and footers
-can be put
-at the top and bottom
-of every page.
-Two requests
-of the form
-.b .he \ \c
-.i title
-and
-.b .fo \ \c
-.i title
-define the titles to put at the head and the foot
-of every page,
-respectively.
-The titles are called
-.i three-part
-titles,
-that is,
-there is a left-justified part,
-a centered part,
-and a right-justified part.
-To separate these three parts
-the first character of
-.i title
-(whatever it may be)
-is used as a delimiter.
-Any character may be used,
-but
-backslash
-and double quote marks
-should be avoided.
-The percent sign
-is replaced by the current page number
-whenever found in the title.
-For example,
-the input:
-.(b
-\&.he \(aa\(aa%\(aa\(aa
-\&.fo \(aaJane Jones\(aa\(aaMy Book\(aa
-.)b
-results in the page number
-centered at the top
-of each page,
-.q "Jane Jones"
-in the lower left corner,
-and
-.q "My Book"
-in the lower right corner.
-.sh 2 "Double Spacing"
-.pp
-.ls 2
-\*N will double space output text automatically if you
-use the request
-.b ".ls\ 2" ,
-as is done in this section.
-You can revert to single spaced mode
-by typing
-.b ".ls\ 1" .
-.ls 1
-.sh 2 "Page Layout"
-.pp
-A number of requests allow
-you to change the way the printed copy looks,
-sometimes called the
-.i layout
-of the output page.
-Most of these requests adjust the placing
-of
-.q "white space"
-(blank lines or spaces).
-In these explanations,
-characters in italics
-should be replaced with values you wish to use;
-bold characters
-represent characters which should actually be typed.
-.pp
-The
-.b .bp
-request
-starts a new page.
-.pp
-The request
-.b .sp \ \c
-.i N
-leaves
-.i N
-lines of blank space.
-.i N
-can be omitted
-(meaning skip a single line)
-or can be of the form
-.i N \^\c
-.b i
-(for
-.i N
-inches)
-or
-.i N \^\c
-.b c
-(for
-.i N
-centimeters).
-For example, the input:
-.(b
-\&.sp 1.5i
-My thoughts on the subject
-\&.sp
-.)b
-leaves one and a half inches of space,
-followed by the line
-.q "My thoughts on the subject" ,
-followed by a single blank line.
-.pp
-The
-.b .in \ \c
-.i +N
-request
-changes the amount of white space
-on the left of the page
-(the
-.i indent ).
-The argument
-.i N
-can be of the form
-.b + \c
-.i N
-(meaning leave
-.i N
-spaces more than you are already leaving),
-.b \- \c
-.i N
-(meaning leave less than you do now),
-or just
-.i N
-(meaning leave exactly
-.i N
-spaces).
-.i N
-can be of the form
-.i N \^\c
-.b i
-or
-.i N \^\c
-.b c
-also.
-For example,
-the input:
-.(b
-initial text
-\&.in 5
-some text
-\&.in +1i
-more text
-\&.in \-2c
-final text
-.)b
-produces
-.q "some text"
-indented exactly five spaces
-from the left margin,
-.q "more text"
-indented five spaces
-plus one inch
-from the left margin
-(fifteen spaces
-on a pica typewriter),
-and
-.q "final text"
-indented five spaces
-plus one inch
-minus two centimeters
-from the margin.
-That is,
-the output is:
-.(b
-initial text
-.in +5
-some text
-.in +1i
-more text
-.in -2c
-final text
-.)b
-.pp
-The
-.b .ti \ \c
-.i +N
-(temporary indent)
-request is used like
-.b .in \ \c
-.i +N
-when the indent
-should apply to one line only,
-after which it should revert
-to the previous indent.
-For example,
-the input:
-.(b
-\&.in 1i
-\&.ti 0
-Ware, James R. The Best of Confucius,
-Halcyon House, 1950.
-An excellent book containing translations of
-most of Confucius\(aa most delightful sayings.
-A definite must for anyone interested in the early foundations
-of Chinese philosophy.
-.)b
-produces:
-.in 1i+\n($iu
-.ti \n($iu
-Ware, James R. The Best of Confucius,
-Halcyon House, 1950.
-An excellent book containing translations of
-most of Confucius' most delightful sayings.
-A definite must for anyone interested in the early foundations
-of Chinese philosophy.
-.pp
-Text lines can be centered
-by using the
-.b .ce
-request.
-The line after the
-.b .ce
-is centered
-(horizontally)
-on the page.
-To center more than one line,
-use
-.b .ce \ \c
-.i N
-(where
-.i N
-is the number of lines to center),
-followed by the
-.i N
-lines.
-If you want to center many lines
-but don't want to count them,
-type:
-.(b
-\&.ce 1000
-lines to center
-\&.ce 0
-.)b
-The
-.b ".ce\ 0"
-request tells \*N to center zero more lines,
-in other words,
-stop centering.
-.pp
-All of these requests
-cause a break;
-that is,
-they always start
-a new line.
-If you want to start a new line
-without performing any other action,
-use
-.b .br .
-.sh 2 "Underlining"
-.pp
-Text can be underlined
-using the
-.b .ul
-request.
-The
-.b .ul
-request
-causes the next input line
-to be underlined when output.
-You can underline multiple lines
-by stating a count of
-.i input
-lines to underline,
-followed by those lines
-(as with the
-.b .ce
-request).
-For example,
-the input:
-.(b
-\&.ul 2
-Notice that these two input lines
-are underlined.
-.)b
-will underline those eight words in \*N.
-(In \*T they will be set in italics.)
-.sh 1 "Displays"
-.pp
-Displays are sections of text
-to be set off
-from the body of the paper.
-Major quotes,
-tables,
-and figures
-are types of displays,
-as are all the examples
-used in this document.
-All displays
-except centered blocks
-are output
-single spaced.
-.sh 2 "Major Quotes"
-.pp
-Major quotes
-are quotes which are several lines long,
-and hence are set in from the rest
-of the text
-without quote marks
-around them.
-These can be generated
-using the commands
-.b .(q
-and
-.b .)q
-to surround the quote.
-For example,
-the input:
-.(b
-As Weizenbaum points out:
-\&.(q
-It is said that to explain is to explain away.
-This maxim is nowhere so well fulfilled
-as in the areas of computer programming,...
-\&.)q
-.)b
-generates as output:
-.lp
-As Weizenbaum points out:
-.(q
-It is said that to explain is to explain away.
-This maxim is nowhere so well fulfilled
-as in the areas of computer programming,...
-.)q
-.sh 2 "Lists"
-.pp
-A
-.i list
-is an indented,
-single spaced,
-unfilled display.
-Lists should be used
-when the material to be printed
-should not be filled and justified
-like normal text,
-such as columns of figures
-or the examples used in this paper.
-Lists are surrounded
-by the requests
-.b .(l
-and
-.b .)l .
-For example,
-type:
-.(b
-Alternatives to avoid deadlock are:
-\&.(l
-Lock in a specified order
-Detect deadlock and back out one process
-Lock all resources needed before proceeding
-\&.)l
-.)b
-will produce:
-.br
-Alternatives to avoid deadlock are:
-.(l
-Lock in a specified order
-Detect deadlock and back out one process
-Lock all resources needed before proceeding
-.)l
-.sh 2 "Keeps"
-.pp
-A
-.i keep
-is a display of lines
-which are kept on a single page
-if possible.
-An example of where you would use a keep
-might be a diagram.
-Keeps differ from lists
-in that lists may be broken
-over a page boundary
-whereas keeps will not.
-.pp
-Blocks are the basic kind of keep.
-They begin with the request
-.b .(b
-and end with the request
-.b .)b .
-If there is not room on the current page
-for everything in the block,
-a new page is begun.
-This has the unpleasant effect
-of leaving blank space
-at the bottom of the page.
-When this is not appropriate,
-you can use the alternative,
-called
-.i "floating keeps" .
-.pp
-.i "Floating keeps"
-move relative to the text.
-Hence,
-they are good for things
-which will be referred to
-by name,
-such as
-.q "See figure 3" .
-A floating keep will appear
-at the bottom of the current page
-if it will fit;
-otherwise,
-it will appear at the top
-of the next page.
-Floating keeps begin with the line
-.b .(z
-and end with the line
-.b .)z .
-For an example of a floating keep,
-see figure 1.
-.(z
-.in 1i
-.xl -1i
-.hl
-\&.(z
-\&.hl
-Text of keep to be floated.
-\&.sp
-\&.ce
-Figure 1. Example of a Floating Keep.
-\&.hl
-\&.)z
-.sp
-.ce
-Figure 1. Example of a Floating Keep.
-.hl
-.)z
-The
-.b .hl
-request is used
-to draw a horizontal line
-so that the figure
-stands out from the text.
-.sh 2 "Fancier Displays"
-.pp
-Keeps and lists are normally collected in
-.i nofill
-mode,
-so that they are good for tables and such.
-If you want a display
-in fill mode
-(for text),
-type
-.b ".(l\ F"
-(Throughout this section,
-comments applied to
-.b .(l
-also apply to
-.b .(b
-and
-.b .(z ).
-This kind of display
-will be indented from both margins.
-For example,
-the input:
-.(b
-\&.(l F
-And now boys and girls,
-a newer, bigger, better toy than ever before!
-Be the first on your block to have your own computer!
-Yes kids, you too can have one of these modern
-data processing devices.
-You too can produce beautifully formatted papers
-without even batting an eye!
-\&.)l
-.)b
-will be output as:
-.(b F
-And now boys and girls,
-a newer, bigger, better toy than ever before!
-Be the first on your block to have your own computer!
-Yes kids, you too can have one of these modern
-data processing devices.
-You too can produce beautifully formatted papers
-without even batting an eye!
-.)b
-.pp
-Lists and blocks are also normally indented
-(floating keeps are normally left justified).
-To get a left-justified list,
-type
-.b ".(l\ L" .
-To get a list centered
-line-for-line,
-type
-.b ".(l C" .
-For example,
-to get a filled,
-left justified list, enter:
-.(b
-\&.(l L F
-text of block
-\&.)l
-.)b
-The input:
-.(b
-\&.(l
-first line of unfilled display
-more lines
-\&.)l
-.)b
-produces the indented text:
-.(b
-first line of unfilled display
-more lines
-.)b
-Typing the character
-.b L
-after the
-.b .(l
-request produces the left justified result:
-.(b L
-first line of unfilled display
-more lines
-.)b
-Using
-.b C
-instead of
-.b L
-produces the line-at-a-time centered output:
-.(b C
-first line of unfilled display
-more lines
-.)b
-.pp
-Sometimes it may be
-that you want to center several lines
-as a group,
-rather than centering them
-one line at a time.
-To do this
-use centered blocks,
-which are surrounded by the requests
-.b .(c
-and
-.b .)c .
-All the lines are centered as a unit,
-such that the longest line is centered
-and the rest are
-lined up around that line.
-Notice that lines
-do not move
-relative to each other
-using centered blocks,
-whereas they do
-using the
-.b C
-argument to keeps.
-.pp
-Centered blocks are
-.i not
-keeps,
-and may be used
-in conjunction
-with keeps.
-For example,
-to center a group of lines
-as a unit
-and keep them
-on one page,
-use:
-.(b
-\&.(b L
-\&.(c
-first line of unfilled display
-more lines
-\&.)c
-\&.)b
-.)b
-to produce:
-.(b L
-.(c
-first line of unfilled display
-more lines
-.)c
-.)b
-If the block requests
-(\c
-.b .(b
-and
-.b .)b )
-had been omitted
-the result would have been the same,
-but with no guarantee
-that the lines of the centered block
-would have all been on one page.
-Note the use of the
-.b L
-argument to
-.b .(b ;
-this causes the centered block
-to center within the entire line
-rather than within the line
-minus the indent.
-Also,
-the center requests
-must
-be nested
-.i inside
-the keep requests.
-.sh 1 "Annotations"
-.pp
-There are a number of requests
-to save text
-for later printing.
-.i Footnotes
-are printed at the bottom of the current page.
-.i "Delayed text"
-is intended to be a variant form
-of footnote;
-the text is printed only
-when explicitly called for,
-such as at the end of each chapter.
-.i Indexes
-are a type of delayed text
-having a tag
-(usually the page number)
-attached to each entry
-after a row of dots.
-Indexes are also saved
-until called for explicitly.
-.sh 2 "Footnotes"
-.pp
-Footnotes begin with the request
-.b .(f
-and end with the request
-.b .)f .
-The current footnote number is maintained
-automatically,
-and can be used by typing \e**,
-to produce a footnote number\**.
-.(f
-\**Like this.
-.)f
-The number is automatically incremented
-after every footnote.
-For example,
-the input:
-.(b
-\&.(q
-A man who is not upright
-and at the same time is presumptuous;
-one who is not diligent and at the same time is ignorant;
-one who is untruthful and at the same time is incompetent;
-such men I do not count among acquaintances.\e**
-\&.(f
-\e**James R. Ware,
-\&.ul
-The Best of Confucius,
-Halcyon House, 1950.
-Page 77.
-\&.)f
-\&.)q
-.)b
-generates the result:
-.(q
-A man who is not upright
-and at the same time is presumptuous;
-one who is not diligent and at the same time is ignorant;
-one who is untruthful and at the same time is incompetent;
-such men I do not count among acquaintances.\**
-.(f
-\**James R. Ware,
-.ul
-The Best of Confucius,
-Halcyon House, 1950.
-Page 77.
-.)f
-.)q
-It is important
-that the footnote
-appears
-.i inside
-the quote,
-so that you can be sure
-that the footnote
-will appear
-on the same page
-as the quote.
-.sh 2 "Delayed Text"
-.pp
-Delayed text
-is very similar to a footnote
-except that it is printed
-when called for explicitly.
-This allows a list of
-references to
-appear
-(for example)
-at the end of each chapter,
-as is the convention in some disciplines.
-Use
-.b \e*#
-on delayed text
-instead of
-.b \e**
-as on footnotes.
-.pp
-If you are using delayed text
-as your standard reference mechanism,
-you can still use footnotes,
-except that you may want to reference them
-with special characters*
-.(f
-*Such as an asterisk.
-.)f
-rather than numbers.
-.sh 2 "Indexes"
-.pp
-An
-.q index
-(actually more like a table of contents,
-since the entries are not sorted alphabetically)
-resembles delayed text,
-in that it is saved until called for.
-However,
-each entry has the page number
-(or some other tag)
-appended to the last line
-of the index entry
-after a row of dots.
-.pp
-Index entries begin with the request
-.b .(x
-and end with
-.b .)x .
-The
-.b .)x
-request may have a argument,
-which is the value to print
-as the
-.q "page number" .
-It defaults to the current page number.
-If the page number given is an underscore
-(\c
-.q _ )
-no page number
-or line of dots
-is printed at all.
-To get the line of dots
-without a page number,
-type
-.b ".)x """"" ,
-which specifies an explicitly null page number.
-.pp
-The
-.b .xp
-request prints the index.
-.pp
-For example,
-the input:
-.(b
-\&.(x
-Sealing wax
-\&.)x
-\&.(x
-Cabbages and kings
-\&.)x _
-\&.(x
-Why the sea is boiling hot
-\&.)x 2.5a
-\&.(x
-Whether pigs have wings
-\&.)x ""
-\&.(x
-This is a terribly long index entry, such as might be used
-for a list of illustrations, tables, or figures; I expect it to
-take at least two lines.
-\&.)x
-\&.xp
-.)b
-generates:
-.(x
-Sealing wax
-.)x
-.(x
-Cabbages and kings
-.)x _
-.(x
-Why the sea is boiling hot
-.)x 2.5a
-.(x
-Whether pigs have wings
-.)x ""
-.(x
-This is a terribly long index entry, such as might be used
-for a list of illustrations, tables, or figures; I expect it to
-take at least two lines.
-.)x
-.xp
-.pp
-The
-.b .(x
-request may have a single character
-argument,
-specifying the
-.q name
-of the index;
-the normal index is
-.b x .
-Thus,
-several
-.q indices
-may be maintained simultaneously
-(such as a list of tables, table of contents, etc.).
-.pp
-Notice that the index must be printed
-at the
-.i end
-of the paper,
-rather than at the beginning
-where it will probably appear
-(as a table of contents);
-the pages may have to be physically rearranged
-after printing.
-.sh 1 "Fancier Features"
-.pp
-A large number of fancier requests
-exist,
-notably requests to provide other sorts of paragraphs,
-numbered sections of the form
-.b 1.2.3
-(such as used in this document),
-and multicolumn output.
-.sh 2 "More Paragraphs"
-.pp
-Paragraphs generally start with
-a blank line
-and with the first line
-indented.
-It is possible to get
-left-justified block-style paragraphs
-by using
-.b .lp
-instead of
-.b .pp ,
-as demonstrated by the next paragraph.
-.lp
-Sometimes you want to use paragraphs
-that have the
-.i body
-indented,
-and the first line
-exdented
-(opposite of indented)
-with a label.
-This can be done with the
-.b .ip
-request.
-A word specified on the same line as
-.b .ip
-is printed in the margin,
-and the body is lined up
-at a prespecified position
-(normally five spaces).
-For example,
-the input:
-.(b
-\&.ip one
-This is the first paragraph.
-Notice how the first line
-of the resulting paragraph lines up
-with the other lines in the paragraph.
-\&.ip two
-And here we are at the second paragraph already.
-You may notice that the argument to \c
-.b .ip
-appears
-in the margin.
-\&.lp
-We can continue text...
-.)b
-produces as output:
-.ip one
-This is the first paragraph.
-Notice how the first line of the resulting paragraph lines up
-with the other lines in the paragraph.
-.ip two
-And here we are at the second paragraph already.
-You may notice that the argument to
-.b .ip
-appears
-in the margin.
-.lp
-We can continue text without starting a new indented
-paragraph
-by using the
-.b .lp
-request.
-.pp
-If you have spaces in the label of a
-.b .ip
-request,
-you must use an
-.q "unpaddable space"
-instead of a regular space.
-This is typed as a backslash character
-(\c
-.q \e )
-followed by a space.
-For example,
-to print the label
-.q "Part 1" ,
-enter:
-.(b
-\&.ip "Part\e 1"
-.)b
-.pp
-If a label of an indented paragraph
-(that is, the argument to
-.b .ip )
-is longer than the space allocated for the label,
-.b .ip
-will begin a new line after the label.
-For example,
-the input:
-.(b
-\&.ip longlabel
-This paragraph had a long label.
-The first character of text on the first line
-will not line up with the text on second and subsequent lines,
-although they will line up with each other.
-.)b
-will produce:
-.ip longlabel
-This paragraph had a long label.
-The first character of text on the first line
-will not line up with the text on second and subsequent lines,
-although they will line up with each other.
-.pp
-It is possible to change the size of the label
-by using a second argument
-which is the size of the label.
-For example,
-the above example could be done correctly
-by saying:
-.(b
-\&.ip longlabel 10
-.)b
-which will make the paragraph indent
-10 spaces for this paragraph only.
-If you have many paragraphs to indent
-all the same amount,
-use the
-.i "number register"
-.b ii .
-For example, to leave one inch of space
-for the label,
-type:
-.(b
-\&.nr ii 1i
-.)b
-somewhere before the first call to
-.b .ip .
-Refer to the reference manual
-for more information.
-.pp
-If
-.b .ip
-is used
-with no argument at all
-no hanging tag will be printed.
-For example,
-the input:
-.(b
-\&.ip [a]
-This is the first paragraph of the example.
-We have seen this sort of example before.
-\&.ip
-This paragraph is lined up with the previous paragraph,
-but it has no tag in the margin.
-.)b
-produces as output:
-.ip [a]
-This is the first paragraph of the example.
-We have seen this sort of example before.
-.ip
-This paragraph is lined up with the previous paragraph,
-but it has no tag in the margin.
-.pp
-A special case of
-.b .ip
-is
-.b .np ,
-which automatically
-numbers paragraphs sequentially from 1.
-The numbering is reset at the next
-.b .pp ,
-.b .lp ,
-or
-.b .sh
-(to be described in the next section)
-request.
-For example,
-the input:
-.(b
-\&.np
-This is the first point.
-\&.np
-This is the second point.
-Points are just regular paragraphs
-which are given sequence numbers automatically
-by the .np request.
-\&.pp
-This paragraph will reset numbering by .np.
-\&.np
-For example,
-we have reverted to numbering from one now.
-.)b
-generates:
-.np
-This is the first point.
-.np
-This is the second point.
-Points are just regular paragraphs
-which are given sequence numbers automatically
-by the .np request.
-.pp
-This paragraph will reset numbering by .np.
-.np
-For example,
-we have reverted to numbering from one now.
-.pp
-The
-.b .bu
-request gives lists of this sort that are identified with
-bullets rather than numbers.
-The paragraphs are also crunched together.
-For example,
-the input:
-.(b
-\&.bu
-\&One egg yolk
-\&.bu
-\&One tablespoon cream or top milk
-\&.bu
-\&Salt, cayenne, and lemon juice to taste
-\&.bu
-\&A generous two tablespoonfuls of butter
-.)b
-produces\**:
-.(f
-\**By the way,
-if you put the first three ingredients in a heavy, deep pan
-and whisk the ingredients madly over a medium flame
-(never taking your hand off the handle of the pot)
-until the mixture reaches the consistency of custard
-(just a minute or two),
-then mix in the butter off-heat,
-you will have a wonderful Hollandaise sauce.
-.)f
-.bu
-One egg yolk
-.bu
-One tablespoon cream or top milk
-.bu
-Salt, cayenne, and lemon juice to taste
-.bu
-A generous two tablespoonfuls of butter
-.sh 2 "Section Headings"
-.pp
-Section numbers
-(such as the ones used in this document)
-can be automatically generated
-using the
-.b .sh
-request.
-You must tell
-.b .sh
-the
-.i depth
-of the section number
-and a section title.
-The depth
-specifies how many numbers
-are to appear
-(separated by decimal points)
-in the section number.
-For example,
-the section number
-.b 4.2.5
-has a depth of three.
-.pp
-Section numbers
-are incremented
-in a fairly intuitive fashion.
-If you add a number
-(increase the depth),
-the new number starts out
-at one.
-If you subtract section numbers
-(or keep the same number)
-the final number is incremented.
-For example,
-the input:
-.(b
-\&.sh 1 "The Preprocessor"
-\&.sh 2 "Basic Concepts"
-\&.sh 2 "Control Inputs"
-\&.sh 3
-\&.sh 3
-\&.sh 1 "Code Generation"
-\&.sh 3
-.)b
-produces as output the result:
-.(b
-.b
-1. The Preprocessor
-1.1. Basic Concepts
-1.2. Control Inputs
-1.2.1.
-1.2.2.
-2. Code Generation
-2.1.1.
-.)b
-.pp
-You can specify the section number to begin
-by placing the section number after the section title,
-using spaces instead of dots.
-For example,
-the request:
-.(b
-\&.sh 3 "Another section" 7 3 4
-.)b
-will begin the section numbered
-.b 7.3.4 ;
-all subsequent
-.b .sh
-requests will number relative to this number.
-.pp
-There are more complex features
-which will cause each section to be indented
-proportionally to the depth of the section.
-For example, if you enter:
-.(b
-\&.nr si \c
-.i N
-.)b
-each section will be indented by an amount
-.i N .
-.i N
-must have a scaling factor attached,
-that is, it must be of the form
-.i Nx ,
-where
-.i x
-is a character telling what units
-.i N
-is in.
-Common values for
-.i x
-are
-.b i
-for inches,
-.b c
-for centimeters,
-and
-.b n
-for
-.i ens
-(the width of a single character).
-For example,
-to indent each section
-one-half inch,
-type:
-.(b
-\&.nr si 0.5i
-.)b
-After this,
-sections will be indented by
-one-half inch
-per level of depth in the section number.
-For example,
-this document was produced
-using the request
-.(b
-\&.nr si 3n
-.)b
-at the beginning of the input file,
-giving three spaces of indent
-per section depth.
-.pp
-Section headers without automatically generated numbers
-can be done using:
-.(b
-\&.uh "Title"
-.)b
-which will do a section heading,
-but will put no number on the section.
-.sh 2 "Parts of the Basic Paper"
-.pp
-There are some requests
-which assist in setting up
-papers.
-The
-.b .tp
-request
-initializes for a title page.
-There are no headers or footers
-on a title page,
-and unlike other pages
-you can space down
-and leave blank space
-at the top.
-For example,
-a typical title page might appear as:
-.(b
-\&.tp
-\&.sp 2i
-\&.(l C
-THE GROWTH OF TOENAILS
-IN UPPER PRIMATES
-\&.sp
-by
-\&.sp
-Frank N. Furter
-\&.)l
-\&.bp
-.)b
-.pp
-The request
-.b .th
-sets up the environment
-of the \*N processor
-to do a thesis,
-using the rules established at Berkeley.
-It defines the correct headers and footers
-(a page number in the upper right hand corner only),
-sets the margins correctly,
-and double spaces.
-.pp
-The
-.b .+c \ \c
-.i T
-request can be used
-to start chapters.
-Each chapter is automatically numbered
-from one,
-and a heading is printed at the top of each chapter
-with the chapter number
-and the chapter name
-.i T .
-For example,
-to begin a chapter called
-.q Conclusions ,
-use the request:
-.(b
-\&.+c "CONCLUSIONS"
-.)b
-which will produce,
-on a new page,
-the lines
-.(b C
-CHAPTER 5
-CONCLUSIONS
-.)b
-with appropriate spacing for a thesis.
-Also, the header is moved to the foot of the page
-on the first page of a chapter.
-Although the
-.b .+c
-request was not designed to work only with the
-.b .th
-request,
-it is tuned for the format acceptable
-for a PhD thesis
-at Berkeley.
-.pp
-If the
-title parameter
-.i T
-is omitted from the
-.b .+c
-request,
-the result is a chapter with no heading.
-This can also be used at the beginning
-of a paper;
-for example,
-.b .+c
-was used to generate page one
-of this document.
-.pp
-Although
-papers traditionally have the abstract,
-table of contents,
-and so forth at the front of the paper,
-it is more convenient to format
-and print them last
-when using \*N.
-This is so that index entries
-can be collected and then printed
-for the table of contents
-(or whatever).
-At the end of the paper,
-issue the
-.b ".++ P"
-request,
-which begins the preliminary part
-of the paper.
-After issuing this request,
-the
-.b .+c
-request will begin a preliminary section
-of the paper.
-Most notably,
-this prints the page number
-restarted from one
-in lower case Roman numbers.
-.b .+c
-may be used repeatedly
-to begin different parts of the
-front material
-for example,
-the abstract,
-the table of contents,
-acknowledgments,
-list of illustrations,
-etc.
-The request
-.b ".++ B"
-may also be used
-to begin the bibliographic section
-at the end of the paper.
-For example,
-the paper might appear
-as outlined in figure 2.
-(In this figure,
-comments begin with the sequence
-.b \e" .)
-.(z
-.hl
-.if t .in 0.5i
-.if t .ta 2i
-.if n .ta 3i
-\&.th \e" set for thesis mode
-\&.fo \(aa\(aaDRAFT\(aa\(aa \e" define footer for each page
-\&.tp \e" begin title page
-\&.(l C \e" center a large block
-THE GROWTH OF TOENAILS
-IN UPPER PRIMATES
-\&.sp
-by
-\&.sp
-Frank Furter
-\&.)l \e" end centered part
-\&.+c INTRODUCTION \e" begin chapter named "INTRODUCTION"
-\&.(x t \e" make an entry into index `t'
-Introduction
-\&.)x \e" end of index entry
-text of chapter one
-\&.+c "NEXT CHAPTER" \e" begin another chapter
-\&.(x t \e" enter into index `t' again
-Next Chapter
-\&.)x
-text of chapter two
-\&.+c CONCLUSIONS
-\&.(x t
-Conclusions
-\&.)x
-text of chapter three
-\&.++ B \e" begin bibliographic information
-\&.+c BIBLIOGRAPHY \e" begin another `chapter'
-\&.(x t
-Bibliography
-\&.)x
-text of bibliography
-\&.++ P \e" begin preliminary material
-\&.+c "TABLE OF CONTENTS"
-\&.xp t \e" print index `t' collected above
-\&.+c PREFACE \e" begin another preliminary section
-text of preface
-.sp 2
-.in 0
-.ce
-Figure 2. Outline of a Sample Paper
-.hl
-.)z
-.sh 2 "Equations and Tables"
-.pp
-Two special \*U programs exist
-to format special types of material.
-.b Eqn
-and
-.b neqn
-set equations
-for the phototypesetter
-and \*N respectively.
-.b Tbl
-arranges to print
-extremely pretty tables
-in a variety of formats.
-This document will only describe
-the embellishments
-to the standard features;
-consult the reference manuals
-for those processors
-for a description of their use.
-.pp
-The
-.b eqn
-and
-.b neqn
-programs are described fully
-in the document
-.ul
-Typesetting Mathematics \- User's Guide
-by Brian W. Kernighan
-and Lorinda L. Cherry.
-Equations are centered,
-and are kept on one page.
-They are introduced by the
-.b .EQ
-request and terminated by the
-.b .EN
-request.
-.pp
-The
-.b .EQ
-request may take an
-equation number as an
-optional argument,
-which is printed vertically centered
-on the right hand side
-of the equation.
-If the equation becomes too long
-it should be split
-between two lines.
-To do this, type:
-.(b
-\&.EQ (eq 34)
-text of equation 34
-\&.EN C
-\&.EQ
-continuation of equation 34
-\&.EN
-.)b
-The
-.b C
-on the
-.b .EN
-request
-specifies that the equation
-will be continued.
-.pp
-The
-.b tbl
-program produces tables.
-It is fully described
-(including numerous examples)
-in the document
-.ul
-Tbl \- A Program to Format Tables
-by M. E. Lesk.
-Tables begin with the
-.b .TS
-request
-and end with the
-.b .TE
-request.
-Tables are normally kept on a single page.
-If you have a table which is too big
-to fit on a single page,
-so that you know it will extend
-to several pages,
-begin the table with the request
-.b ".TS\ H"
-and put the request
-.b .TH
-after the part of the table
-which you want
-duplicated at the top of every page
-that the table is printed on.
-For example, a table definition
-for a long table might look like:
-.ds TA \|\h'.4n'\v'-.2n'\s-4\zT\s0\v'.2n'\h'-.4n'\(ci\|
-.if n .ds TA \ \o'-T'\ \"
-.(b
-\&.TS H
-c s s
-n n n.
-THE TABLE TITLE
-\&.TH
-text of the table
-\&.TE
-.)b
-.pp
-.sh 2 "Two Column Output"
-.pp
-You can get two column output
-automatically
-by using the request
-.b .2c .
-This causes everything after it
-to be output in two-column form.
-The request
-.b .bc
-will start a new column;
-it differs from
-.b .bp
-in that
-.b .bp
-may leave a totally blank column
-when it starts a new page.
-To revert to single column output,
-use
-.b .1c .
-.sh 2 "Defining Macros"
-.pp
-A
-.i macro
-is a collection of requests and text
-which may be used
-by stating a simple request.
-Macros begin with the line
-.b ".de" \ \c
-.i xx
-(where
-.i xx
-is the name of the macro to be defined)
-and end with the line consisting of two dots.
-After defining the macro,
-stating the line
-.b . \c
-.i xx
-is the same as stating all the other lines.
-For example,
-to define a macro
-that spaces 3 lines
-and then centers the next input line,
-enter:
-.(b
-\&.de SS
-\&.sp 3
-\&.ce
-\&..
-.)b
-and use it by typing:
-.(b
-\&.SS
-\&Title Line
-(beginning of text)
-.)b
-.pp
-Macro names may be one or two characters.
-In order to avoid conflicts
-with names in \-me,
-always use upper case letters as names.
-The only names to avoid are
-.b TS ,
-.b TH ,
-.b TE ,
-.b EQ ,
-and
-.b EN .
-.sh 2 "Annotations Inside Keeps"
-.pp
-Sometimes you may want to put
-a footnote
-or index entry inside a keep.
-For example,
-if you want to maintain a
-.q "list of figures"
-you will want to do something like:
-.(b
-\&.(z
-\&.(c
-text of figure
-\&.)c
-\&.ce
-Figure 5.
-\&.(x f
-Figure 5
-\&.)x
-\&.)z
-.)b
-which you may hope
-will give you a figure
-with a label
-and an entry in the index
-.b f
-(presumably a list of figures index).
-Unfortunately,
-the
-index entry
-is read and interpreted
-when the keep is read,
-not when it is printed,
-so the page number in the index is likely to be wrong.
-The solution is to use the magic string
-.b \e!
-at the beginning of all the lines dealing with the index.
-In other words,
-you should use:
-.(b
-\&.(z
-\&.(c
-Text of figure
-\&.)c
-\&.ce
-Figure 5.
-\e!.(x f
-\e!Figure 5
-\e!.)x
-\&.)z
-.)b
-which will defer the processing of the index
-until the figure is output.
-This will guarantee
-that the page number in the index
-is correct.
-The same comments apply
-to
-blocks
-(with
-.b .(b
-and
-.b .)b )
-as well.
-.sh 1 "\*T and the Photosetter"
-.pp
-With a little care,
-you can prepare
-documents that
-will print nicely
-on either a regular terminal
-or when phototypeset
-using the \*T formatting program.
-.sh 2 "Fonts"
-.pp
-A
-.i font
-is a style of type.
-There are three fonts
-that are available simultaneously,
-Times Roman,
-Times Italic,
-and Times Bold,
-plus the special math font.
-The normal font is Roman.
-Text which would be underlined in \*N
-with the
-.b .ul
-request
-is set in italics
-in \*T.
-.pp
-There are ways of switching between fonts.
-The requests
-.b .r ,
-.b .i ,
-and
-.b .b
-switch to Roman,
-italic,
-and bold fonts respectively.
-You can set a single word
-in some font
-by typing (for example):
-.(b
-\&.i word
-.)b
-which will set
-.i word
-in italics
-but does not affect the surrounding text.
-In \*N,
-italic and bold text
-is underlined.
-.pp
-Notice that if you are setting more than one word
-in whatever font,
-you must surround that word with double quote marks
-(`\|"\|')
-so that it will appear to the \*N processor as a single word.
-The quote marks will not appear in the formatted text.
-If you do want a quote mark to appear,
-you should quote the entire string
-(even if a single word),
-and use
-.i two
-quote marks where you want one to appear.
-For example,
-if you want to produce the text:
-.(b
-.i """Master Control\|"""
-.)b
-in italics, you must type:
-.(b
-\&.i """Master Control\e|"""
-.)b
-The
-.b \e|
-produces a very narrow space
-so that the
-.q l
-does not overlap the quote sign in \*T,
-like this:
-.(b
-.i """Master Control"""
-.)b
-.pp
-There are also several
-.q pseudo-fonts
-available.
-The input:
-.(b
-\&.(b
-\&.u underlined
-\&.bi "bold italics"
-\&.bx "words in a box"
-\&.)b
-.)b
-generates
-.(b
-.u underlined
-.bi "bold italics"
-.bx "words in a box"
-.)b
-In \*N these all just underline
-the text.
-Notice that pseudo font requests
-set only the single parameter in the pseudo font;
-ordinary font requests will begin setting all text
-in the special font
-if you do not provide a parameter.
-No more than one word
-should appear
-with these three font requests
-in the middle of lines.
-This is because
-of the way \*T justifies text.
-For example,
-if you were to issue the requests:
-.(b
-\&.bi "some bold italics"
-and
-\&.bx "words in a box"
-.)b
-in the middle of a line
-\*T would produce
-.bi "some bold italics"
-and
-.bx "words in a box" ,\c
-.if t \p
-.if n \& \"
-.if t which I think you will agree does not look good.
-.if n which would look really lousy in \*T.
-.pp
-The second parameter
-of all font requests
-is set in the original font.
-For example,
-the font request:
-.(b
-\&.b bold face
-.)b
-generates
-.q bold
-in bold font,
-but sets
-.q face
-in the font of the surrounding text,
-resulting in:
-.(b
-.b bold face.
-.)b
-To set the two words
-.b bold
-and
-.b face
-both in
-.b "bold face" ,
-type:
-.(b
-\&.b "bold face"
-.)b
-.pp
-You can mix fonts in a word by using the
-special sequence
-.b \ec
-at the end of a line
-to indicate
-.q "continue text processing" ;
-this allows input lines
-to be joined together
-without a space between them.
-For example, the input:
-.(b
-\&.u under \ec
-\&.i italics
-.)b
-generates
-.u under \c
-.i italics ,
-but if we had typed:
-.(b
-\&.u under
-\&.i italics
-.)b
-the result would have been
-.u under
-.i italics
-as two words.
-.sh 2 "Point Sizes"
-.pp
-The phototypesetter
-supports different sizes of type,
-measured in points.
-The default point size
-is 10 points
-for most text,
-8 points for footnotes.
-To change the pointsize,
-type:
-.(b
-\&.sz \c
-.i +N
-.)b
-where
-.i N
-is the size wanted in points.
-The
-.i "vertical spacing"
-(distance between the bottom of most letters
-(the
-.i baseline )
-between adjacent lines)
-is set to be proportional
-to the type size.
-.pp
-These pointsize changes are
-.i temporary !!!
-For example,
-to reset the pointsize of basic text to twelve point, use:
-.(b
-\&.nr pp 12
-\&.nr sp 12
-\&.nr tp 12
-.)b
-to reset the default pointsize of
-paragraphs,
-section headers,
-and titles respectively.
-If you only want to set the names of sections in a larger pointsize,
-use:
-.(b
-\&.nr sp 11
-.)b
-alone \*- this sets section titles
-(e.g.,
-.b "Point Sizes"
-above)
-in a larger font than the default.
-.pp
-A single word or phrase can be set in a smaller pointsize
-than the surrounding text
-using the
-.b .sm
-request.
-This is especially convenient for words that are all capitals,
-due to the optical illusion that makes them look even larger
-than they actually are.
-For example:
-.(b
-\&.sm UNIX
-.)b
-prints as
-.sm UNIX
-rather than
-UNIX.
-.pp
-Warning:
-changing point sizes
-on the phototypesetter
-is a slow mechanical operation.
-On laser printers it may require loading new fonts.
-Size changes
-should be considered carefully.
-.sh 2 "Quotes"
-.pp
-It is conventional when using
-the typesetter to
-use pairs of grave and acute accents
-to generate double quotes,
-rather than the
-double quote character
-(`\|"\|').
-This is because it looks better
-to use grave and acute accents;
-for example, compare
-"quote" to
-``quote''.
-.pp
-In order to make quotes compatible
-between the typesetter and terminals,
-you may use the sequences
-.b \e*(lq
-and
-.b \e*(rq
-to stand for the left and right quote
-respectively.
-These both appear as
-.b """"
-on most terminals,
-but are typeset as
-.b ``
-and
-.b ''
-respectively.
-For example,
-use:
-.(b
-\e*(lqSome things aren\(aat true
-even if they did happen.\e*(rq
-.)b
-to generate the result:
-.(b
-.q "Some things aren't true even if they did happen."
-.)b
-As a shorthand,
-the special font request:
-.(b
-\&.q "quoted text"
-.)b
-will generate
-.q "quoted text" .
-Notice that you must surround
-the material to be quoted
-with double quote marks
-if it is more than one word.
-.sh 0
-.sp 1i
-.b Acknowledgments
-.pp
-I would like to thank
-Bob Epstein,
-Bill Joy,
-and Larry Rowe
-for having the courage
-to use the \-me macros
-to produce non-trivial papers
-during the development stages;
-Ricki Blau,
-Pamela Humphrey,
-and Jim Joyce
-for their help with the documentation phase;
-peter kessler
-for numerous complaints years after I was
-.q done
-with this project,
-most accompanied by fixes
-(hence forcing me to fix several small bugs);
-and the plethora of people who have contributed ideas
-and have given support for the project.
-.sp 1i
-This document was
-.if n \*N'ed
-.if t \*T'ed
-on \*(td
-and applies to version
-\*(MO
-of the \-me macros.
diff --git a/share/doc/usd/20.meref/Makefile b/share/doc/usd/20.meref/Makefile
index 98432e7..05f3afe 100644
--- a/share/doc/usd/20.meref/Makefile
+++ b/share/doc/usd/20.meref/Makefile
@@ -2,7 +2,8 @@
# $FreeBSD$
VOLUME= usd/20.meref
-SRCS= ref.me
+SRCS= meref.me
MACROS= -me
+SRCDIR= ${.CURDIR}/../../../../contrib/groff/doc
.include <bsd.doc.mk>
diff --git a/share/doc/usd/20.meref/ref.me b/share/doc/usd/20.meref/ref.me
deleted file mode 100644
index 66d0060..0000000
--- a/share/doc/usd/20.meref/ref.me
+++ /dev/null
@@ -1,2384 +0,0 @@
-.\" Copyright (c) 1986, 1993
-.\" The Regents of the University of California. 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 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 by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 THE REGENTS OR CONTRIBUTORS 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.
-.\"
-.\" @(#)ref.me 8.1 (Berkeley) 6/8/93
-.\"
-.UC 7
-.ll 6.5i
-.lt 6.5i
-.pn 0
-.ds MO 2.27\" \" mod number
-.de TL \" *** title line
-.lp
-.di XX
-..
-.de DE \" *** description
-\\\\h'|\\n(DIu'\\\\c
-.br
-.di
-.in +\\n(DIu
-.ti 0
-.cu 1000
-.XX
-.rm XX
-.cu 0
-..
-.ds N \s-1NROFF\s0
-.ds T \s-1TROFF\s0
-.nr DI 1.5i
-\".he '\-ME REFERENCE MANUAL''%'
-.de NR
-.b "\en\\$1" "\\$2"
-..
-.de ST
-.b "\e*\\$1" "\\$2"
-..
-.sc
-.eh 'USD:20-%''\-me Reference Manual'
-.oh '\-me Reference Manual''USD:20-%'
-.+c
-.ce 20
-.sz 14
-.b "\-ME REFERENCE MANUAL"
-.sz
-.sp
-.i "Release \*(MO"
-.sp 2
-.ul
-Eric P. Allman*
-.(f
-*Author's current address:
-Computer Science Division, EECS,
-University of California,
-Berkeley, California 94720.
-.)f
-.sp
-Project INGRES
-Electronics Research Laboratory
-University of California, Berkeley
-Berkeley, California 94720
-.ce 0
-.sp 4
-.pp
-This document describes
-in extremely terse form
-the features
-of the
-.b \-me
-macro package
-for version seven \*N/\*T\*(dg.
-.(f
-\(dg\*N and \*T may be trademarks of AT&T Bell Laboratories.
-.)f
-Some familiarity is assumed
-with
-those programs.
-Specifically,
-the reader should understand
-breaks,
-fonts,
-pointsizes,
-the use and definition of number registers
-and strings,
-how to define macros,
-and scaling factors for ens, points,
-.b v 's
-(vertical line spaces),
-etc.
-.pp
-For a more casual introduction
-to text processing
-using \*N,
-refer to the document
-.ul
-Writing Papers with \*N using \-me.
-.pp
-There are a number of macro parameters
-that may be adjusted.
-Fonts may be set to a font number only.
-Font 8 means bold font in \*T;
-in \*N font 8
-is underlined
-unless the
-.b \-rb3
-flag is specified to use
-.q "true bold"
-font
-(most versions of \*N do not interpret bold font nicely).
-Font 0 is no font change;
-the font of the surrounding text
-is used instead.
-Notice that fonts 0 and 8 are
-.q pseudo-fonts ;
-that is,
-they are simulated by the macros.
-This means that although it is legal to set a font register
-to zero or eight,
-it is not legal to use the escape character form,
-such as:
-.(b
-\ef8
-.)b
-.pp
-All distances
-are in basic units,
-so it is nearly always necessary
-to use a scaling factor.
-For example,
-the request
-to set the paragraph indent
-to eight one-en spaces is:
-.(b
-\&.nr pi 8n
-.)b
-and not
-.(b
-\&.nr pi 8
-.)b
-which would set the paragraph indent to eight basic units,
-or about 0.02 inch.
-Default parameter values are given in brackets
-in the remainder of this document.
-.pp
-Registers and strings
-of the form
-.b $ \c
-.i x
-may be used in expressions
-but should not be changed.
-Macros of the form
-.b $ \c
-.i x
-perform some function
-(as described)
-and may be redefined
-to change this function.
-This may be a sensitive operation;
-look at the body of the original macro
-before changing it.
-.pp
-All names in \-me
-follow a rigid naming convention.
-The user may define number registers,
-strings,
-and macros,
-provided that s/he
-uses single character upper case names
-or double character names
-consisting of letters and digits,
-with at least one upper case letter.
-In no case should special characters
-be used in user-defined names.
-.pp
-On daisy wheel type printers
-in twelve pitch,
-the
-.b \-rx1
-flag can be stated to make lines default to
-one eighth inch
-(the normal spacing for a newline in twelve-pitch).
-This is normally too small for easy readability,
-so the default is to space one sixth inch.
-.pp
-The
-.b \-rv2
-flag will indicates that this
-.i is
-being output on a C/A/T
-phototypesetter;
-this changes the page offset
-and inserts cut marks.
-.pp
-This documentation was
-.if n \*N'ed
-.if t \*T'ed
-on \*(td
-and applies to version
-\*(MO
-of the \-me macros.
-.sh 1 "Paragraphing"
-.pp
-These macros are used
-to begin paragraphs.
-The standard paragraph macro
-is
-.b .pp ;
-the others are all variants
-to be used for special purposes.
-.pp
-The first call to one of the paragraphing macros
-defined in this section
-or the
-.b .sh
-macro
-(defined in the next session)
-.i initializes
-the macro processor.
-After initialization
-it is not possible to use any of the following requests:
-.b .sc ,
-.b .lo ,
-.b .th ,
-or
-.b .ac .
-Also,
-the effects of changing parameters
-which will have a global effect
-on the format of the page
-(notably page length and header and footer margins)
-are not well defined
-and should be avoided.
-.TL
-.b .lp
-.DE
-Begin left-justified paragraph.
-Centering and underlining
-are turned off if they were on,
-the font is set to
-.NR (pf
-[1]
-the type size
-is set to
-.NR (pp
-[10p],
-and a
-.NR (ps
-space is inserted
-before the paragraph
-[0.35v in \*T, 1v or 0.5v in \*N
-depending on device resolution].
-The indent is reset
-to
-.NR ($i
-[0]
-plus
-.NR (po
-[0]
-unless the paragraph
-is inside a display.
-(see
-.b .ba ).
-At least
-the first two lines
-of the paragraph
-are kept together
-on a page.
-.TL
-.b .pp
-.DE
-Like
-.b .lp ,
-except that it puts
-.NR (pi
-[5n]
-units of indent.
-This is the standard paragraph macro.
-.TL
-.b .ip
-.i T
-.i I
-.DE
-Indented paragraph
-with hanging tag.
-The body of the following paragraph
-is indented
-.i I
-spaces
-(or
-.NR (ii
-[5n]
-spaces
-if
-.i I
-is not specified)
-more than a non-indented paragraph
-(such as with
-.b .pp )
-is.
-The title
-.i T
-is exdented (opposite of indented).
-The result is a paragraph
-with an even left edge
-and
-.i T
-printed in the margin.
-Any spaces in
-.i T
-must be unpaddable.
-If
-.i T
-will not fit in the space provided,
-.b .ip
-will start a new line.
-.TL
-.b .np
-.DE
-A variant of .ip which numbers paragraphs.
-Numbering is reset
-after a
-.b .lp ,
-.b .pp ,
-or
-.b .sh .
-The current paragraph number
-is in
-.NR ($p .
-.TL
-.b .bu
-.DE
-Like
-.b .np
-except that paragraphs are marked with bullets (\(bu).
-Leading space is eliminated to create compact lists.
-.sh 1 "Section Headings"
-.pp
-Numbered sections
-are similar to paragraphs
-except that a
-section number
-is automatically
-generated for each one.
-The section numbers are of the form
-.b 1.2.3 .
-The
-.i depth
-of the section
-is the count of numbers
-(separated by decimal points)
-in the section number.
-.pp
-Unnumbered section headings are similar,
-except that no number is attached
-to the heading.
-.TL
-.b .sh
-.i +N
-.i T
-.i "a b c d e f"
-.DE
-Begin numbered section
-of depth
-.i N .
-If
-.i N
-is missing
-the current depth
-(maintained in
-the number register
-.NR ($0 )
-is used.
-The values of
-the individual parts of the section number
-are maintained in
-.NR ($1
-through
-.NR ($6 .
-There is a
-.NR (ss
-[1v]
-space before the section.
-.i T
-is printed
-as a section title
-in font
-.NR (sf
-[8]
-and size
-.NR (sp
-[10p].
-The
-.q name
-of the section may be accessed via
-.ST ($n .
-If
-.NR (si
-is non-zero,
-the base indent
-is set to
-.NR (si
-times the section depth,
-and the section title
-is exdented.
-(See
-.b .ba .)
-Also,
-an additional indent of
-.NR (so
-[0]
-is added to the section title
-(but not to the body of the section).
-The font is then set
-to the paragraph font,
-so that more information may occur
-on the line
-with the section number
-and title.
-.b .sh
-insures that there is enough room
-to print the section head
-plus the beginning of a paragraph
-(about 3 lines total).
-If
-.i a
-through
-.i f
-are specified,
-the section number is set to that number
-rather than incremented automatically.
-If any of
-.i a
-through
-.i f
-are a hyphen
-that number is not reset.
-If
-.i T
-is a single underscore
-(\c
-.q _ )
-then the section depth and numbering is reset,
-but the base indent is not reset
-and nothing is printed out.
-This is useful to automatically
-coordinate section numbers with
-chapter numbers.
-.TL
-.b .sx
-.i +N
-.DE
-Go to section depth
-.i N
-[\c
-.b \-1 ],
-but do not print the number
-and title,
-and do not increment the section number
-at level
-.i N .
-This has the effect
-of starting a new paragraph
-at level
-.i N .
-.TL
-.b .uh
-.i T
-.DE
-Unnumbered section heading.
-The title
-.i T
-is printed
-with the same rules for spacing,
-font, etc.,
-as for
-.b .sh .
-.TL
-.b .$p
-.i T
-.i B
-.i N
-.DE
-Print section heading.
-May be redefined
-to get fancier headings.
-.i T
-is the title passed on the
-.b .sh
-or
-.b .uh
-line;
-.i B
-is the section number for this section,
-and
-.i N
-is the depth of this section.
-These parameters are not always present;
-in particular,
-.b .sh
-passes all three,
-.b .uh
-passes only the first,
-and
-.b .sx
-passes three,
-but the first two
-are null strings.
-Care should be taken if this macro
-is redefined;
-it is quite complex and subtle.
-.TL
-.b .$0
-.i T
-.i B
-.i N
-.DE
-This macro is called automatically
-after every call to
-.b .$p .
-It is normally undefined,
-but may be used
-to automatically put
-every section title
-into the table of contents
-or for some similar function.
-.i T
-is the section title
-for the section title which was just printed,
-.i B
-is the section number,
-and
-.i N
-is the section depth.
-.TL
-.b .$1
-\-
-.b .$6
-.DE
-Traps called just before printing that depth section.
-May be defined to
-(for example)
-give variable spacing
-before sections.
-These macros are called from
-.b .$p ,
-so if you redefine that macro
-you may lose this feature.
-.sh 1 "Headers and Footers"
-.ds TP \fI\(aal\|\(aam\^\(aar\^\(aa\fP
-.pp
-Headers and footers
-are put at the top and bottom
-of every page
-automatically.
-They are set in font
-.NR (tf
-[3]
-and size
-.NR (tp
-[10p].
-Each of the definitions
-apply as of the
-.i next
-page.
-Three-part titles
-must be quoted
-if there are two blanks adjacent
-anywhere in the title
-or more than eight blanks total.
-.pp
-The spacing
-of headers and footers
-are controlled by three number registers.
-.NR (hm
-[4v]
-is the distance from the top of the page
-to the top of the header,
-.NR (fm
-[3v]
-is the distance from the bottom of the page
-to the bottom of the footer,
-.NR (tm
-[7v]
-is the distance from the top of the page
-to the top of the text,
-and
-.NR (bm
-[6v]
-is the distance from the bottom of the page
-to the bottom of the text
-(nominal).
-The macros
-.b .m1 ,
-.b .m2 ,
-.b .m3 ,
-and
-.b .m4
-are also supplied for compatibility
-with
-\s-1ROFF\s0 documents.
-.TL
-.b .he
-\*(TP
-.DE
-Define three-part header,
-to be printed on the top
-of every page.
-.TL
-.b .fo
-\*(TP
-.DE
-Define footer,
-to be printed at the bottom
-of every page.
-.TL
-.b .eh
-\*(TP
-.DE
-Define header,
-to be printed at the top of every
-even-numbered page.
-.TL
-.b .oh
-\*(TP
-.DE
-Define header,
-to be printed at the top of every
-odd-numbered page.
-.TL
-.b .ef
-\*(TP
-.DE
-Define footer,
-to be printed at the bottom
-of every even-numbered page.
-.TL
-.b .of
-\*(TP
-.DE
-Define footer,
-to be printed at the bottom
-of every odd-numbered page.
-.TL
-.b .hx
-.DE
-Suppress headers and footers
-on the next page.
-.TL
-.b .m1
-.i +N
-.DE
-Set the space between the top of the page
-and the header
-[4v].
-.TL
-.b .m2
-.i +N
-.DE
-Set the space between the header
-and the first line of text
-[2v].
-.TL
-.b .m3
-.i +N
-.DE
-Set the space
-between the bottom of the text
-and the footer
-[2v].
-.TL
-.b .m4
-.i +N
-.DE
-Set the space
-between the footer
-and the bottom of the page
-[4v].
-.TL
-.b .ep
-.DE
-End this page,
-but do not begin the next page.
-Useful for forcing out footnotes,
-but other than
-that hardly every used.
-Must be followed by a
-.b .bp
-or the end of input.
-.TL
-.b .$h
-.DE
-Called at every page
-to print the header.
-May be redefined
-to provide fancy
-(e.g.,
-multi-line)
-headers,
-but doing so
-loses the function of the
-.b .he ,
-.b .fo ,
-.b .eh ,
-.b .oh ,
-.b .ef ,
-and
-.b .of
-requests,
-as well as the chapter-style title feature
-of
-.b .+c .
-.TL
-.b .$f
-.DE
-Print footer;
-same comments apply
-as in
-.b .$h .
-.TL
-.b .$H
-.DE
-A normally undefined macro
-which is called
-at the top of each page
-(after putting out
-the header,
-initial saved floating keeps,
-etc.);
-in other words,
-this macro is called immediately before
-printing text
-on a page.
-It can be used for column headings
-and the like.
-.sh 1 "Displays"
-.pp
-All displays except centered blocks
-and block quotes
-are preceded and followed
-by an extra
-.NR (bs
-[same as
-.NR (ps ]
-space.
-Quote spacing is stored in a separate register;
-centered blocks have no default initial or trailing space.
-The vertical spacing of all displays except quotes
-and centered blocks
-is stored in register
-.NR ($R
-instead of
-.NR ($r .
-.TL
-.b .(l
-.i m
-.i f
-.DE
-Begin list.
-Lists are single spaced,
-unfilled text.
-If
-.i f
-is
-.b F ,
-the list will be filled.
-If
-.i m
-[\c
-.b I ]
-is
-.b I
-the list is indented by
-.NR (bi
-[4m];
-if
-.b M
-the list is indented to the left margin;
-if
-.b L
-the list is left justified with respect to the text
-(different from
-.b M
-only if the base indent
-(stored in
-.NR ($i
-and set with
-.b .ba )
-is not zero);
-and if
-.b C
-the list is centered on a line-by-line basis.
-The list is set in font
-.NR (df
-[0].
-Must be matched by a
-.b .)l .
-This macro is almost like
-.b .(b
-except that no attempt is made
-to keep the display on one page.
-.TL
-.b .)l
-.DE
-End list.
-.TL
-.b .(q
-.DE
-Begin major quote.
-These are single spaced,
-filled,
-moved in from the text
-on both sides
-by
-.NR (qi
-[4n],
-preceded and followed
-by
-.NR (qs
-[same as
-.NR (bs ]
-space,
-and are set in point size
-.NR (qp
-[one point smaller than surrounding text].
-.TL
-.b .)q
-.DE
-End major quote.
-.TL
-.b .(b
-.i m
-.i f
-.DE
-Begin block.
-Blocks are a form of
-.i keep ,
-where the text of a keep
-is kept together on one page
-if possible
-(keeps are useful
-for tables and figures
-which should not be broken
-over a page).
-If the block will not fit
-on the current page
-a new page is begun,
-.i unless
-that would leave more than
-.NR (bt
-[0]
-white space
-at the bottom of the text.
-If
-.NR (bt
-is zero, the threshold feature
-is turned off.
-Blocks are not filled
-unless
-.i f
-is
-.b F ,
-when they are filled.
-The block will be left-justified
-if
-.i m
-is
-.b L ,
-indented by
-.NR (bi
-[4m]
-if
-.i m
-is
-.b I
-or absent,
-centered
-(line-for-line)
-if
-.i m
-is
-.b C ,
-and left justified to the margin
-(not to the base indent)
-if
-.i m
-is
-.b M .
-The block is set in font
-.NR (df
-[0].
-.TL
-.b .)b
-.DE
-End block.
-.TL
-.b .(z
-.i m
-.i f
-.DE
-Begin floating keep.
-Like
-.b .(b
-except that the keep is
-.i floated
-to the bottom of the page
-or the top of the next page.
-Therefore,
-its position relative to the text changes.
-The floating keep is preceded and followed
-by
-.NR (zs
-[1v]
-space.
-Also,
-it defaults to mode
-.b M .
-.TL
-.b .)z
-.DE
-End floating keep.
-.TL
-.b .(c
-.DE
-Begin centered block.
-The next keep
-is centered as a block,
-rather than on a line-by-line basis
-as with
-.b ".(b C" .
-This call may be nested
-inside keeps.
-.TL
-.b .)c
-.DE
-End centered block.
-.sh 1 Annotations
-.TL
-.b .(d
-.DE
-Begin delayed text.
-Everything in the next keep
-is saved for output
-later with
-.b .pd ,
-in a manner
-similar to footnotes.
-.TL
-.b .)d
-.i n
-.DE
-End delayed text.
-The delayed text number register
-.NR ($d
-and the associated string
-.ST #
-are incremented if
-.ST #
-has been referenced.
-.TL
-.b .pd
-.DE
-Print delayed text.
-Everything diverted via
-.b .(d
-is printed and truncated.
-This might be used
-at the end of each chapter.
-.TL
-.b .(f
-.DE
-Begin footnote.
-The text of the footnote
-is floated to the bottom
-of the page
-and set in font
-.NR (ff
-[1]
-and size
-.NR (fp
-[8p].
-Each entry
-is preceded by
-.NR (fs
-[0.2v]
-space,
-is indented
-.NR (fi
-[3n]
-on the first line,
-and is indented
-.NR (fu
-[0]
-from the right margin.
-Footnotes line up underneath
-two column output.
-If the text of the footnote
-will not all fit on one page
-it will be carried over
-to the next page.
-.TL
-.b .)f
-.i n
-.DE
-End footnote.
-The number register
-.NR ($f
-and the associated string
-.ST *
-are incremented
-if they have been referenced.
-.TL
-.b .$s
-.DE
-The macro to output the footnote separator.
-This macro may be redefined
-to give other size lines or other types
-of separators.
-Currently
-it draws a 1.5i line.
-.TL
-.b .(x
-.i x
-.DE
-Begin index entry.
-Index entries are saved in the index
-.i x
-[\c
-.b x ]
-until called up with
-.b .xp.
-Each entry is preceded
-by a
-.NR (xs
-[0.2v]
-space.
-Each entry is
-.q undented
-by
-.NR (xu
-[0.5i];
-this register tells how far the page number
-extends into the right margin.
-.TL
-.b .)x
-.i P
-.i A
-.DE
-End index entry.
-The index entry
-is finished with a row of dots
-with
-.i A
-[null]
-right justified on the last line
-(such as for an author's name),
-followed by P
-[\c
-.NR % ].
-If
-.i A
-is specified,
-.i P
-must be specified;
-.NR %
-can be used to print the current page number.
-If
-.i P
-is an underscore,
-no page number
-and no row of dots
-are printed.
-.TL
-.b .xp
-.i x
-.DE
-Print index
-.i x
-[\c
-.b x ].
-The index is formatted in the font, size, and so forth
-in effect at the time it is printed,
-rather than at the time it is collected.
-.sh 1 "Columned Output"
-.TL
-.b .2c
-.i +S
-.i N
-.DE
-Enter two-column mode.
-The column separation is set to
-.i +S
-[4n, 0.5i in ACM mode]
-(saved in
-.NR ($s ).
-The column width,
-calculated to fill the single column line length
-with both columns,
-is stored in
-.NR ($l .
-The current column
-is in
-.NR ($c .
-You can test register
-.NR ($m
-[1]
-to see if you are in single column
-or double column mode.
-Actually,
-the request enters
-.i N
-[2]
-column output.
-.TL
-.b .1c
-.DE
-Revert to single-column mode.
-.TL
-.b .bc
-.DE
-Begin column.
-This is like
-.b .bp
-except that it begins a new column
-on a new page
-only if necessary,
-rather than forcing a whole new page
-if there is another column left
-on the current page.
-.sh 1 "Fonts and Sizes"
-.TL
-.b .sz
-.i +P
-.DE
-The pointsize is set to
-.i P
-[10p],
-and the line spacing is set proportionally.
-The ratio of line spacing to pointsize
-is stored in
-.NR ($r .
-The ratio used internally
-by displays and annotations
-is stored in
-.NR ($R
-(although this is not used by
-.b .sz ).
-This size is
-.i not
-sticky beyond many macros:
-in particular,
-.NR (pp
-(paragraph pointsize)
-modifies the pointsize every time a new paragraph is begun
-using the
-.b \&.pp ,
-.b \&.lp ,
-.b \&.ip ,
-.b \&.np ,
-or
-.b \&.bu
-macros.
-Also,
-.NR (fp
-(footnote pointsize),
-.NR (qp
-(quote pointsize),
-.NR (sp
-(section header pointsize),
-and
-.NR (tp
-(title pointsize)
-may modify the pointsize.
-.TL
-.b .r
-.i W
-.i X
-.DE
-Set
-.i W
-in roman font,
-appending
-.i X
-in the previous font.
-To append different font requests,
-use
-.i X
-=
-.b \ec .
-If no parameters,
-change to roman font.
-.TL
-.b .i
-.i W
-.i X
-.DE
-Set
-.i W
-in italics,
-appending
-.i X
-in the previous font.
-If no parameters,
-change to italic font.
-Underlines in \*N.
-.TL
-.b .b
-.i W
-.i X
-.DE
-Set
-.i W
-in bold font
-and append
-.i X
-in the previous font.
-If no parameters,
-switch to bold font.
-In \*N,
-underlines.
-.TL
-.b .rb
-.i W
-.i X
-.DE
-Set
-.i W
-in bold font
-and append
-.i X
-in the previous font.
-If no parameters,
-switch to bold font.
-.b .rb
-differs from
-.b .b
-in that
-.b .rb
-does not underline in \*N.
-.TL
-.b .u
-.i W
-.i X
-.DE
-Underline
-.i W
-and append
-.i X .
-This is a true underlining,
-as opposed to the
-.b .ul
-request,
-which changes to
-.q "underline font"
-(usually italics in \*T).
-It won't work right
-if
-.i W
-is spread or broken (including hyphenated).
-In other words,
-it is safe in nofill mode only.
-.TL
-.b .q
-.i W
-.i X
-.DE
-Quote
-.i W
-and append
-.i X .
-In \*N
-this just surrounds
-.i W
-with double quote marks
-(`\|\c
-.b """" \|'),
-but in \*T
-uses directed quotes.
-.TL
-.b .bi
-.i W
-.i X
-.DE
-Set
-.i W
-in bold italics
-and append
-.i X .
-Actually,
-sets
-.i W
-in italic
-and overstrikes once.
-Underlines in \*N.
-It won't work right
-if
-.i W
-is spread or broken (including hyphenated).
-In other words,
-it is safe in nofill mode only.
-.TL
-.b .bx
-.i W
-.i X
-.DE
-Sets
-.i W
-in a box,
-with
-.i X
-appended.
-Underlines in \*N.
-It won't work right
-if
-.i W
-is spread or broken (including hyphenated).
-In other words,
-it is safe in nofill mode only.
-.TL
-.b sm
-.i W
-.i X
-.DE
-Sets
-.i W
-in a smaller pointsize,
-with
-.i X
-appended.
-.sh 1 "Roff Support"
-.TL
-.b .ix
-.i +N
-.DE
-Indent,
-no break.
-Equivalent to
-.b \(aain
-.i N .
-.TL
-.b .bl
-.i N
-.DE
-Leave
-.i N
-contiguous white space,
-on the next page if not enough room
-on this page.
-Equivalent to a
-.b .sp
-.i N
-inside a block.
-.TL
-.b .pa
-.i +N
-.DE
-Equivalent to
-.b .bp .
-.TL
-.b .ro
-.DE
-Set page number
-in roman numerals.
-Equivalent to
-.b ".af % i" .
-.TL
-.b .ar
-.DE
-Set page number in Arabic.
-Equivalent to
-.b ".af % 1" .
-.TL
-.b .n1
-.DE
-Number lines in margin from one
-on each page.
-.TL
-.b .n2
-.i N
-.DE
-Number lines from
-.i N ,
-stop if
-.i N
-= 0.
-.TL
-.b .sk
-.DE
-Leave the next output page blank,
-except for headers and footers.
-This is used to leave space
-for a full-page diagram
-which is produced externally
-and pasted in later.
-To get a partial-page paste-in display,
-say
-.b .sv \ \c
-.i N ,
-where
-.i N
-is the amount of space
-to leave;
-this space will be output immediately
-if there is room,
-and will otherwise be output
-at the top of the next page.
-However, be warned:
-if
-.i N
-is greater than the amount of available space
-on an empty page,
-no space will ever be output.
-.sh 1 "Preprocessor Support"
-.TL
-.b .EQ
-.i m
-.i T
-.DE
-Begin equation.
-The equation is centered
-if
-.i m
-is
-.b C
-or omitted,
-indented
-.NR (bi
-[4m]
-if
-.i m
-is
-.b I ,
-and left justified if
-.i m
-is
-.b L .
-.i T
-is a title printed on the right margin
-next to the equation.
-See
-.i "Typesetting Mathematics \- User's Guide"
-by Brian W. Kernighan
-and Lorinda L. Cherry.
-.TL
-.b .EN
-.i c
-.DE
-End equation.
-If
-.i c
-is
-.b C
-the equation must be continued
-by immediately following
-with another
-.b .EQ ,
-the text of which
-can be centered
-along with this one.
-Otherwise,
-the equation is printed,
-always on one page,
-with
-.NR (es
-[0.5v in \*T, 1v in \*N]
-space
-above and below it.
-.TL
-.b .TS
-.i h
-.DE
-Table start.
-Tables are single spaced
-and kept on one page
-if possible.
-If you have a large table
-which will not fit on one page,
-use
-.i h
-=
-.b H
-and follow the header part
-(to be printed on every page of the table)
-with a
-.b .TH .
-See
-.i "Tbl \- A Program to Format Tables"
-by M. E. Lesk.
-.TL
-.b .TH
-.DE
-With
-.b ".TS H" ,
-ends the header portion of the table.
-.TL
-.b .TE
-.DE
-Table end.
-Note that this table
-does not float,
-in fact,
-it is not even guaranteed to stay on one page
-if you use requests such as
-.b .sp
-intermixed with the text
-of the table.
-If you want it to float
-(or if you use requests
-inside the table),
-surround the entire table
-(including the
-.b .TS
-and
-.b .TE
-requests)
-with the requests
-.b .(z
-and
-.b .)z .
-.TL
-.b .PS
-.i h
-.i w
-.DE
-Begin
-.i pic
-picture.
-.i H
-is the height and
-.i w
-is the width,
-both in basic units.
-.i Ditroff
-only.
-.TL
-.b .PE
-.DE
-End picture.
-.TL
-.b .IS
-.DE
-Begin
-.i ideal
-picture.
-.TL
-.b .IE
-.DE
-End
-.i ideal
-picture.
-.TL
-.b .IF
-.DE
-End
-.i ideal
-picture (alternate form).
-.TL
-.b GS
-.DE
-Begin
-.i gremlin
-picture.
-.TL
-.b GE
-.DE
-End
-.i gremlin
-picture.
-.TL
-.b GF
-.DE
-End
-.i gremlin
-picture (alternate form).
-.sh 1 "Miscellaneous"
-.TL
-.b .re
-.DE
-Reset tabs.
-Set to every 0.5i
-in \*T
-and every 0.8i in \*N.
-.TL
-.b .ba
-.i +N
-.DE
-Set the base indent
-to
-.i +N
-[0]
-(saved in
-.NR ($i ).
-All paragraphs,
-sections,
-and displays
-come out indented by this amount.
-Titles and footnotes
-are unaffected.
-The
-.b .sh
-request performs a
-.b .ba
-request
-if
-.NR (si
-[0] is not zero,
-and sets the base indent to
-.NR (si \c
-.b * \c
-.NR ($0 .
-.TL
-.b .xl
-.i +N
-.DE
-Set the line length to
-.i N
-[6.0i].
-This differs
-from
-.b .ll
-because it only affects the current environment.
-.TL
-.b .ll
-.i +N
-.DE
-Set line length in all environments
-to
-.i N
-[6.0i].
-This should not be used
-after output has begun,
-and particularly not in two-column output.
-The current line length is stored in
-.NR ($l .
-.TL
-.b .hl
-.DE
-Draws a horizontal line
-the length of the page.
-This is useful
-inside floating keeps
-to differentiate
-between the text
-and the figure.
-.TL
-.b .lh
-.DE
-Print a letterhead at the current position on the page.
-The format of the letterhead must be defined
-in the file
-.b /usr/lib/me/letterhead.me
-by your local systems staff.
-Some environments may require
-.i ditroff
-for this macro
-to function properly.
-.TL
-.b .lo
-.DE
-This macro loads another set of macros
-(in
-.b /usr/lib/me/local.me )
-which is intended to be a set of locally defined macros.
-These macros
-should all be of the form
-.b .* \c
-.i X ,
-where
-.i X
-is any letter
-(upper or lower case)
-or digit.
-.sh 1 "Standard Papers"
-.TL
-.b .tp
-.DE
-Begin title page.
-Spacing at the top of the page
-can occur,
-and headers and footers are suppressed.
-Also,
-the page number
-is not incremented
-for this page.
-.TL
-.b .th
-.DE
-Set thesis mode.
-This defines the modes acceptable
-for a doctoral dissertation
-at Berkeley.
-It double spaces,
-defines the header
-to be a single page number,
-and changes the margins
-to be 1.5 inch on the left
-and one inch on the top.
-.b .++
-and
-.b .+c
-should be used with it.
-This macro must be stated
-before
-initialization,
-that is,
-before the first call of a paragraphing
-macro
-or
-.b .sh .
-.TL
-.b .++
-.i m
-.i H
-.DE
-This request defines the section of the paper
-which we are entering.
-The section type is defined by
-.i m .
-.b C
-means that we are entering the chapter portion
-of the paper,
-.b A
-means that we are entering the appendix portion
-of the paper,
-.b P
-means that the material following
-should be the preliminary portion
-(abstract, table of contents, etc.)
-portion of the paper,
-.b AB
-means that we are entering the abstract
-(numbered independently from 1
-in Arabic numerals),
-and
-.b B
-means that we are entering the bibliographic
-portion at the end of the paper.
-Also, the variants
-.b RC
-and
-.b RA
-are allowed,
-which specify renumbering of pages
-from one at the beginning of each
-chapter or appendix,
-respectively.
-The
-.i H
-parameter defines the new header.
-If there are any spaces in it,
-the entire header must be quoted.
-If you want the header to have the chapter number
-in it,
-Use the string
-.b "\e\e\e\en(ch" .
-For example, to number appendixes
-.b A.1
-etc.,
-type
-.b ".++ RA \(aa\(aa\(aa\e\e\e\en(ch.%\(aa" .
-Each section
-(chapter, appendix, etc.)
-should be preceded by the
-.b .+c
-request.
-It should be mentioned
-that it is easier when using
-\*T to put the front material
-at the end of the paper,
-so that the table of contents
-can be collected and put out;
-this material can then be physically
-moved to the beginning of the paper.
-.TL
-.b .+c
-.i T
-.DE
-Begin chapter with title
-.i T .
-The chapter number
-is maintained in
-.NR (ch .
-This register is incremented
-every time
-.b .+c
-is called with a parameter.
-The title and chapter number
-are printed by
-.b .$c .
-The header is moved to the footer
-on the first page
-of each chapter.
-If
-.i T
-is omitted,
-.b .$c
-is not called;
-this is useful for doing your own
-.q "title page"
-at the beginning of papers
-without a title page proper.
-.b .$c
-calls
-.b .$C
-as a hook so that chapter titles can be inserted
-into a table of contents automatically.
-The footnote numbering is reset to one.
-.TL
-.b .$c
-.i T
-.DE
-Print chapter number
-(from
-.NR (ch )
-and
-.i T .
-This macro can be redefined to your liking.
-It is defined by default
-to be acceptable
-for a PhD thesis
-at Berkeley.
-This macro calls
-.b $C ,
-which can be defined to make index entries,
-or whatever.
-.TL
-.b .$C
-.i K
-.i N
-.i T
-.DE
-This macro is called by
-.b .$c .
-It is normally undefined,
-but can be used to automatically insert
-index entries,
-or whatever.
-.i K
-is a keyword,
-either
-.q Chapter
-or
-.q Appendix
-(depending on the
-.b .++
-mode);
-.i N
-is the chapter or appendix number,
-and
-.i T
-is the chapter or appendix title.
-.TL
-.b .ac
-.i A
-.i N
-.DE
-This macro
-(short for
-.b .acm )
-sets up the \*N environment
-for camera-ready papers
-as used by the ACM.
-This format is 25% larger,
-and has no headers or footers.
-The author's name
-.i A
-is printed at the bottom of the page
-(but off the part which will be printed
-in the conference proceedings),
-together with the current page number
-and the total number of pages
-.i N .
-Additionally,
-this macro loads the file
-.b /usr/lib/me/acm.me ,
-which may later be augmented with other macros
-useful for printing papers
-for ACM conferences.
-It should be noted
-that this macro will not work correctly in version 7 \*T,
-since it sets the page length
-wider than the physical width
-of the C/A/T phototypesetter roll.
-.sh 1 "Predefined Strings"
-.TL
-.ST *
-.DE
-Footnote number, actually
-.ST [ \c
-.NR ($f \c
-.ST ] .
-This macro is incremented
-after each call to
-.b .)f .
-.TL
-.ST #
-.DE
-Delayed text number.
-Actually
-[\c
-.NR ($d ].
-.TL
-.ST [
-.DE
-Superscript.
-This string gives upward movement
-and a change to a smaller point size
-if possible,
-otherwise it gives the left bracket character
-(`\^\c
-.b [ \^').
-Extra space is left above the line
-to allow room for the superscript.
-.TL
-.ST ]
-.DE
-Unsuperscript.
-Inverse to
-.ST [ .
-For example,
-to produce a superscript
-you might type
-.b x \c
-.ST [ \c
-.b 2 \c
-.ST ] ,
-which will produce
-.b x\*[2\*] .
-.TL
-.ST <
-.DE
-Subscript.
-Defaults to
-`\^<\^'
-if half-carriage motion not possible.
-Extra space is left below the line
-to allow for the subscript.
-.TL
-.ST >
-.DE
-Inverse to
-.ST < .
-.TL
-.ST (dw
-.DE
-The day of the week,
-as a word.
-.TL
-.ST (mo
-.DE
-The month,
-as a word.
-.TL
-.ST (td
-.DE
-Today's date,
-directly printable.
-The date is of the form \*(td.
-Other forms of the date can be used
-by using
-.NR (dy
-(the day of the month;
-for example, \n(dy),
-.ST (mo
-(as noted above)
-or
-.NR (mo
-(the same,
-but as an ordinal number;
-for example, \*(mo is \n(mo),
-and
-.NR (yr
-(the last two digits of the current year).
-.TL
-.ST (lq
-.DE
-Left quote marks.
-Double quote in \*N.
-.TL
-.ST (rq
-.DE
-Right quote.
-.TL
-.ST \-
-.DE
-.ie \w'\(34'>0 \(34
-.el 3/4
-em dash in \*T;
-two hyphens in \*N.
-.sh 1 "Special Characters and Marks"
-.pp
-There are a number of special characters
-and diacritical marks
-(such as accents)
-available through \-me.
-To reference these characters,
-you must call the macro
-.b .sc
-to define the characters before using them.
-.TL
-.b .sc
-.DE
-Define special characters and diacritical marks, as described
-in the remainder of this section.
-This macro must be stated
-before initialization.
-The special characters available
-are listed below.
-.in +4n
-.ta 15 +5 +6
-.nf
-Name Usage Example
-Acute accent \e*\(aa a\e*\(aa a\*'
-Grave accent \e*\(ga e\e*\(ga e\*`
-Umlat \e*: u\e*: u\*:
-Tilde \e*~ n\e*~ n\*~
-Caret \e*^ e\e*^ e\*^
-Cedilla \e*, c\e*, c\*,
-Czech \e*v e\e*v e\*v
-Circle \e*o A\e*o A\*o
-There exists \e*(qe \*(qe
-For all \e*(qa \*(qa
-.fi
-.sp 1i
-.in 0
-.b Acknowledgments
-.pp
-I would like to thank
-Bob Epstein,
-Bill Joy,
-and Larry Rowe
-for having the courage
-to use the \-me macros
-to produce non-trivial papers
-during the development stages;
-Ricki Blau,
-Pamela Humphrey,
-and Jim Joyce
-for their help with the documentation phase;
-peter kessler
-for numerous complaints,
-most accompanied by fixes;
-and the plethora of people who have contributed ideas
-and have given support for the project.
-.bp
-.b Summary
-.pp
-This alphabetical list summarizes all macros, strings, and number registers
-available in the \-me macros.
-Selected
-.i troff
-commands, registers, and functions are included as well;
-those listed can generally be used with impunity.
-.pp
-The columns are the name of the
-command, macro, register, or string;
-the type of the object,
-and the description.
-Types are
-.b M
-for macro or builtin command
-(invoked with
-.b \&.
-or
-.b \&\'
-in the first input column),
-.b S
-for a string
-(invoked with
-.b \e*
-or
-.b \e*( ),
-.b R
-for a number register
-(invoked with
-.b \en
-or
-.b \en( ),
-and
-.b F
-for a
-.i troff
-builtin function
-(invoked by preceding it with a single backslash).
-.pp
-Lines marked with \(sc are
-.i troff
-internal codes.
-Lines marked with \(dg or \(dd
-may be defined by the user to get special functions;
-\(dd indicates that these are defined by default
-and changing them may have unexpected side effects.
-Lines marked with \(de
-are specific to
-.i ditroff
-(device-independent
-.i troff ).
-.de $H
-.ev 1
-.ta \w'\e(space)\(sc\ 'u +\w'TYPE 'u
-NAME TYPE DESCRIPTION
-.ev
-..
-.(l
-.$H
-\e(space) F\(sc unpaddable space
-\e" F\(sc comment (to end of line)
-\e*# S optional delayed text tag string
-\e$\fI\&N\fP F\(sc interpolate argument \fI\&N\fP
-\en($0 R section depth
-\&.$0 M\(dg invoked after section title printed
-\en($1 R first section number
-\&.$1 M\(dg invoked before printing depth 1 section
-\en($2 R second section number
-\&.$2 M\(dg invoked before printing depth 2 section
-\en($3 R third section number
-\&.$3 M\(dg invoked before printing depth 3 section
-\en($4 R fourth section number
-\&.$4 M\(dg invoked before printing depth 4 section
-\en($5 R fifth section number
-\&.$5 M\(dg invoked before printing depth 5 section
-\en($6 R sixth section number
-\&.$6 M\(dg invoked before printing depth 6 section
-\&.$C M\(dg called at beginning of chapter
-\&.$H M\(dg text header
-\en($R R\(dd relative vertical spacing in displays
-\en($c R current column number
-\&.$c M\(dd print chapter title
-\en($d R delayed text number
-\en($f R footnote number
-\&.$f M\(dd print footer
-\&.$h M\(dd print header
-\en($i R paragraph base indent
-\en($l R column width
-\en($m R number of columns in effect
-\e*($n S section name
-\en($p R numbered paragraph number
-\&.$p M\(dd print section heading (internal macro)
-\en($r R\(dd relative vertical spacing in text
-\en($s R column indent
-\&.$s M\(dd footnote separator (from text)
-\en% R\(sc current page number
-\e& F\(sc zero width character, useful for hiding controls
-\e(\fI\&xx\fP F\(sc interpolate special character \fI\&xx\fP
-\&.(b M begin block
-\&.(c M begin centered block
-\&.(d M begin delayed text
-\&.(f M begin footnote
-\&.(l M begin list
-\&.(q M begin quote
-\&.(x M begin index entry
-\&.(z M begin floating keep
-\&.)b M end block
-\&.)c M end centered block
-\&.)d M end delayed text
-\&.)f M end footnote
-\&.)l M end list
-\&.)q M end quote
-\&.)x M end index entry
-\&.)z M end floating keep
-\e*\fI\&x\fP F\(sc interpolate string \fI\&x\fP
-\e*(\fI\&xx\fP F\(sc interpolate string \fI\&xx\fP
-\e** S optional footnote tag string
-\&.++ M set paper section type
-\&.+c M begin chapter
-\e*, S cedilla
-\e\- F\(sc minus sign
-\e*\- S 3/4 em dash
-\e0 F\(sc unpaddable digit-width space
-\&.1c M revert to single column output
-\&.2c M begin two column output
-\e*: S umlat
-\e*< S begin subscript
-\e*> S end subscript
-\&.EN M end equation
-\&.EQ M begin equation
-\eL\'\fI\&d\fP\' F\(sc vertical line drawing function for distance \fI\&d\fP
-\&.GE M\(de end \fIgremlin\fP picture
-\&.GF M\(de end \fIgremlin\fP picture (with flyback)
-\&.GS M\(de start \fIgremlin\fP picture
-\&.IE M\(de end \fIideal\fP picture
-\&.IF M\(de end \fIideal\fP picture (with flyback)
-\&.IS M\(de start \fIideal\fP picture
-\&.PE M\(de end \fIpic\fP picture
-\&.PF M\(de end \fIpic\fP picture (with flyback)
-\&.PS M\(de start \fIpic\fP picture
-\&.TE M end table
-\&.TH M end header of table
-\&.TS M begin table
-\e*[ S begin superscript
-\en(\&.$ R\(sc number of arguments to macro
-\en(\&.i R\(sc current indent
-\en(\&.l R\(sc current line length
-\en(\&.s R\(sc current point size
-\e*(\&\' S acute accent
-\e*(\&\` S grave accent
-\e(\' F\(sc acute accent
-\e(\` F\(sc grave accent
-\e*] S end superscript
-\e^ F\(sc 1/12 em narrow space
-\e*^ S caret
-\&.ac M ACM mode
-\&.ad M\(sc set text adjustment
-\&.af M\(sc assign format to register
-\&.am M\(sc append to macro
-\&.ar M set page numbers in Arabic
-\&.as M\(sc append to string
-\&.b M bold font
-\&.ba M set base indent
-\&.bc M begin new column
-\&.bi M bold italic
-\en(bi R display (block) indent
-\&.bl M blank lines (even at top of page)
-\en(bm R bottom title margin
-\&.bp M\(sc begin page
-\&.br M\(sc break (start new line)
-\en(bs R display (block) pre/post spacing
-\en(bt R block keep threshold
-\&.bx M boxed
-\ec F\(sc continue input
-\&.ce M\(sc center lines
-\en(ch R current chapter number
-\&.de M\(sc define macro
-\en(df R display font
-\&.ds M\(sc define string
-\en(dw R\(sc current day of week
-\e*(dw S current day of week
-\en(dy R\(sc day of month
-\ee F\(sc printable version of \e
-\&.ef M set footer (even numbered pages only)
-\&.eh M set header (even numbered pages only)
-\&.el M\(sc else part of conditional
-\&.ep M end page
-\en(es R equation pre/post space
-\ef\fI\&f\fP F\(sc inline font change to font \fI\&f\fP
-\ef(\fI\&ff\fP F\(sc inline font change to font \fI\&ff\fP
-\&.fc M\(sc set field characters
-\en(ff R footnote font
-\&.fi M\(sc fill output lines
-\en(fi R footnote indent (first line only)
-\en(fm R footer margin
-\&.fo M set footer
-\en(fp R footnote pointsize
-\en(fs R footnote prespace
-\en(fu R footnote undent (from right margin)
-\eh\'\fI\&d\fP\' F\(sc local horizontal motion for distance \fI\&d\fP
-\&.hc M\(sc set hyphenation character
-\&.he M set header
-\&.hl M draw horizontal line
-\en(hm R header margin
-\&.hx M suppress headers and footers on next page
-\&.hy M\(sc set hyphenation mode
-\&.i M italic font
-\&.ie M\(sc conditional with else
-\&.if M\(sc conditional
-\en(ii R indented paragraph indent
-\&.in M\(sc indent (transient, use .ba for pervasive)
-\&.ip M begin indented paragraph
-\&.ix M indent, no break
-\el\'\fI\&d\fP\' F\(sc horizontal line drawing function for distance \fI\&d\fP
-\&.lc M\(sc set leader repetition character
-\&.lh M\(de interpolate local letterhead
-\&.ll M set line length
-\&.lo M load local macros
-\&.lp M begin left justified paragraph
-\e*(lq S left quote marks
-\&.ls M\(sc set multi-line spacing
-\&.m1 M set space from top of page to header
-\&.m2 M set space from header to text
-\&.m3 M set space from text to footer
-\&.m4 M set space from footer to bottom of page
-\&.mc M\(sc insert margin character
-\&.mk M\(sc mark vertical position
-\en(mo R\(sc month of year
-\e*(mo S current month
-\en\fI\&x\fP F\(sc interpolate number register \fI\&x\fP
-\en(\fI\&xx\fP F\(sc interpolate number register \fI\&xx\fP
-\&.n1 M number lines in margin
-\&.n2 M number lines in margin
-\&.na M\(sc turn off text adjustment
-\&.ne M\(sc need vertical space
-\&.nf M\(sc don't fill output lines
-\&.nh M\(sc turn off hyphenation
-\&.np M begin numbered paragraph
-\&.nr M\(sc set number register
-\&.ns M\(sc no space mode
-\e*o S circle (e.g., for Norse A\*o)
-\&.of M set footer (odd numbered pages only)
-\&.oh M set header (odd numbered pages only)
-\&.pa M begin page
-\&.pd M print delayed text
-\en(pf R paragraph font
-\en(pi R paragraph indent
-\&.pl M\(sc set page length
-\&.pn M\(sc set next page number
-\&.po M\(sc page offset
-\en(po R simulated page offset
-\&.pp M begin paragraph
-\en(pp R paragraph pointsize
-\en(ps R paragraph prespace
-\&.q M quoted
-\e*(qa S for all
-\e*(qe S there exists
-\en(qi R quote indent (also shortens line)
-\en(qp R quote pointsize
-\en(qs R quote pre/post space
-\&.r M roman font
-\&.rb M real bold font
-\&.re M reset tabs
-\&.rm M\(sc remove macro or string
-\&.rn M\(sc rename macro or string
-\&.ro M set page numbers in roman
-\e*(rq S right quote marks
-\&.rr M\(sc remove register
-\&.rs M\(sc restore spacing
-\&.rt M\(sc return to vertical position
-\es\fI\&S\fP F\(sc inline size change to size \fI\&S\fP
-\&.sc M load special characters
-\en(sf R section title font
-\&.sh M begin numbered section
-\en(si R relative base indent per section depth
-\&.sk M skip next page
-\&.sm M set argument in a smaller pointsize
-\&.so M\(sc source input file
-\en(so R additional section title offset
-\&.sp M\(sc vertical space
-\en(sp R section title pointsize
-\en(ss R section prespace
-\&.sx M change section depth
-\&.sz M set pointsize and vertical spacing
-\&.ta M\(sc set tab stops
-\&.tc M\(sc set tab repetition character
-\e*(td S today's date
-\en(tf R title font
-\&.th M set thesis mode
-\&.ti M\(sc temporary indent (next line only)
-\&.tl M\(sc three part title
-\en(tm R top title margin
-\&.tp M begin title page
-\en(tp R title pointsize
-\&.tr M\(sc translate
-\&.u M underlined
-\&.uh M unnumbered section
-\&.ul M\(sc underline next line
-\ev\'\fI\&d\fP\' F\(sc local vertical motion for distance \fI\&d\fP
-\e*v S inverted `v' for czeck ``e\*v''
-\ew\'\fI\&S\fP\' F\(sc return width of string \fI\&S\fP
-\&.xl M set line length (local)
-\&.xp M print index
-\en(xs R index entry prespace
-\en(xu R index undent (from right margin)
-\en(yr R\(sc year (last two digits only)
-\en(zs R floating keep pre/post space
-\e{ F\(sc begin conditional group
-\e| F\(sc 1/6 em narrow space
-\e} F\(sc end conditional group
-\e*~ S tilde
-.)l
-.rm $H
OpenPOWER on IntegriCloud