TH EQN 1
EQ
delim $$
EN
SH NAME
eqn \- typeset mathematics
SH SYNOPSIS
B eqn
[
I option ...
]
[
I file ...
]
SH DESCRIPTION
I Eqn
is a
IR troff (1)
preprocessor
for typesetting mathematics
on a typesetter.
Usage is almost always
IP
L
eqn file ... | troff
PP
If no files are specified,
I eqn
reads from the standard input.
I Eqn
prepares output for the typesetter
named in the
BI -T dest
option (default
BR -Tutf ;
see
IR troff (1)).
When run with other preprocessor filters,
I eqn
usually comes last.
PP
A line beginning with
B .EQ
marks the start of an equation;
the end of an equation
is marked by a line beginning with
BR .EN .
Neither of these lines is altered,
so they may be defined in macro packages
to get
centering, numbering, etc.
It is also possible to set two characters
as `delimiters';
text between delimiters is also
I eqn
input.
Delimiters may be set to characters
I x
and
I y
with the option
BI -d xy
or (more commonly) with
B delim
I xy
between
B .EQ
and
BR .EN .
Left and right delimiters may be identical.
(They are customarily taken to be
$font L "$$" )$.
Delimiters are turned off by
LR "delim off" .
All text that is neither between delimiters nor between
B .EQ
and
B .EN
is passed through untouched.
PP
Tokens within
I eqn
are separated by
spaces, tabs, newlines, braces, double quotes,
tildes or circumflexes.
Braces {} are used for grouping;
generally speaking,
anywhere a single character like
L x
could appear, a complicated construction
enclosed in braces may be used instead.
Tilde
L ~
represents a full space in the output,
circumflex
L ^
half as much.
PP
vs 13p
Subscripts and superscripts are produced with the keywords
B sub
and
BR sup .
Thus
L "x sub i"
makes
$x sub i$,
L "a sub i sup 2"
produces
$a sub i sup 2$,
and
L "e sup {x sup 2 + y sup 2}"
gives
$e sup {x sup 2 + y sup 2}$.
PP
B Over
makes fractions:
L "a over b"
yields $a over b$.
PP
B Sqrt
produces square roots:
L "1 over sqrt {ax sup 2 +bx+c}"
results in
$1 over sqrt {ax sup 2 +bx+c}$ .
PP
The keywords
B from
and
B to
introduce lower and upper
limits on arbitrary things:
$lim from {n -> inf} sum from 0 to n x sub i$
is made with
LR "lim from {n -> inf} sum from 0 to n x sub i" .
PP
Left and right brackets, braces, etc., of the right height are made with
B left
and
BR right :
L "left [ x sup 2 + y sup 2 over alpha right ] ~=~1"
produces
$left [ x sup 2 + y sup 2 over alpha right ] ~=~1$.
The
B right
clause is optional.
Legal characters after
B left
and
B right
are braces, brackets, bars,
B c
and
B f
for ceiling and floor,
and
B
""
for nothing at all (useful for a right-side-only bracket).
PP
Vertical piles of things are made with
BR pile ,
BR lpile ,
BR cpile ,
and
BR rpile :
L "pile {a above b above c}"
produces
$pile {a above b above c}$.
There can be an arbitrary number of elements in a pile.
B lpile
left-justifies,
B pile
and
B cpile
center, with different vertical spacing,
and
B rpile
right justifies.
PP
Matrices are made with
BR matrix :
L "matrix { lcol { x sub i above y sub 2 } ccol { 1 above 2 } }"
produces
$matrix { lcol { x sub i above y sub 2 } ccol { 1 above 2 } }$.
In addition, there is
B rcol
for a right-justified column.
PP
vs 12p
Diacritical marks are made with
BR prime ,
BR dot ,
BR dotdot ,
BR hat ,
BR tilde ,
BR bar ,
BR under ,
BR vec ,
BR dyad ,
and
BR under :
L "x sub 0 sup prime = f(t) bar + g(t) under"
is
$x sub 0 sup prime = f(t) bar + g(t) under$,
and
L "x vec = y dyad"
is
$x vec = y dyad$.
PP
Sizes and fonts can be changed with prefix operators
B size
IR n ,
B size
BI ± n \f1,
BR fat ,
BR roman ,
BR italic ,
BR bold ,
or
BR font
IR n .
Size and fonts can be changed globally in a document by
B gsize
I n
and
B gfont
IR n ,
or by the command-line arguments
BI -s n
and
BI -f n\f1.
PP
Normally subscripts and superscripts are reduced by
3 point sizes from the previous size;
this may be changed by the command-line argument
BI -p n\f1.
PP
Successive display arguments can be lined up.
Place
B mark
before the desired lineup point in the first equation;
place
B lineup
at the place that is to line up vertically in subsequent equations.
PP
Shorthands may be defined
or existing keywords redefined with
BR define :
L define
I thing
L %
I replacement
L %
defines a new token called
I thing
which will be replaced by
I replacement
whenever it appears thereafter.
The
L %
may be any character that does not occur in
LR replacement .
PP
Keywords like
L sum
EQ
( sum ),
EN
L int
EQ
( int ),
EN
L inf
EQ
( inf ),
EN
and shorthands like
L >=
EQ
(>=),
EN
L ->
EQ
(->),
EN
and
L !=
EQ
( != )
EN
are recognized.
Greek letters are spelled out in the desired case, as in
L alpha
or
LR GAMMA .
Mathematical words like
LR sin ,
LR cos ,
L log
are made Roman automatically.
IR Troff (1)
four-character escapes like
L \e(lh
(\(lh) can be used anywhere.
Strings enclosed in double quotes " "
are passed through untouched;
this permits keywords to be entered as text,
and can be used to communicate
with
I troff
when all else fails.
SH FILES
TF /sys/lib/troff/font/devutf
TP
B /sys/lib/troff/font/devutf
font descriptions for PostScript
SH SOURCE
B /sys/src/cmd/eqn
SH "SEE ALSO"
IR troff (1),
IR tbl (1)
br
J. F. Ossanna and B. W. Kernighan,
``Troff User's Manual''.
br
B. W. Kernighan and L. L. Cherry,
``Typesetting Mathematics\(emUser's Guide'',
I
Unix Research System Programmer's Manual,
Tenth Edition, Volume 2.
SH BUGS
To embolden digits, parens, etc.,
it is necessary to quote them,
as in
LR bold\ "12.3" .
EQ
delim off
EN