roff-documentation/Tbl -- A Program to Format Tables.html

3406 lines
59 KiB
HTML
Raw Permalink Normal View History

2022-05-05 23:46:42 +02:00
<html><!-- this file was generated by troffcvt and tc2html --><head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>
Tbl -- A Program to Format Tables
</title>
</head>
<body>
<!-- TOC BEGIN -->
<ul>
<li>
<a href="#TOC_1">Introduction.</a>
</li><li>
<a href="#TOC_2">Input commands.</a>
</li><li>
<a href="#TOC_3">Usage.</a>
</li><li>
<a href="#TOC_4">Examples.</a>
</li><li>
<a href="#TOC_5">Acknowledgments.</a>
</li><li>
<a href="#TOC_6">References.</a>
</li><li>
<a href="#TOC_7">List of Tbl Command Characters and Words<br>
</a>
</li></ul>
<!-- TOC END -->
<h1>
<center>
Tbl -- A Program to Format Tables<br>
</center><center>
</center>
</h1>
<center>
<p>
<i>M. E. Lesk<br>
</i>
</p></center>
<center>
<p>
</p></center>
<p>
</p><center>
<i>ABSTRACT</i><br>
</center>
<blockquote>
<i>Tbl</i> is a document formatting preprocessor for<i> troff</i>
or<i> nroff</i> which makes even fairly complex tables easy to
specify and enter. It is available on the UNIX[[dagger]] [[footnote:
[[dagger]] UNIX is a trademark of Bell Laboratories. ]] system
and on Honeywell 6000 GCOS. Tables are made up of columns which
may be independently centered, right-adjusted, left-adjusted,
or aligned by decimal points. Headings may be placed over single
columns or groups of columns. A table entry may contain equations,
or may consist of several rows of text. Horizontal or vertical
lines may be drawn as desired in the table, and any table or element
may be enclosed in a box. For example:<br>
<br>
<center>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="4" align="CENTER">
1970 Federal Budget Transfers
</td>
</tr>
<tr>
<td colspan="4" align="CENTER">
(in billions of dollars)
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="2" align="CENTER">
State
</td>
<td align="CENTER">
Taxes
</td>
<td align="CENTER">
Money
</td>
<td rowspan="2" align="CENTER">
Net
</td>
</tr>
<tr>
<td align="CENTER">
collected
</td>
<td align="CENTER">
spent
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td>
New York
</td>
<td align="RIGHT">
22.91
</td>
<td align="RIGHT">
21.35
</td>
<td align="RIGHT">
-1.56
</td>
</tr>
<tr>
<td>
New Jersey
</td>
<td align="RIGHT">
8.33
</td>
<td align="RIGHT">
6.96
</td>
<td align="RIGHT">
-1.37
</td>
</tr>
<tr>
<td>
Connecticut
</td>
<td align="RIGHT">
4.12
</td>
<td align="RIGHT">
3.10
</td>
<td align="RIGHT">
-1.02
</td>
</tr>
<tr>
<td>
Maine
</td>
<td align="RIGHT">
0.74
</td>
<td align="RIGHT">
0.67
</td>
<td align="RIGHT">
-0.07
</td>
</tr>
<tr>
<td>
California
</td>
<td align="RIGHT">
22.29
</td>
<td align="RIGHT">
22.42
</td>
<td align="RIGHT">
+0.13
</td>
</tr>
<tr>
<td>
New Mexico
</td>
<td align="RIGHT">
0.70
</td>
<td align="RIGHT">
1.49
</td>
<td align="RIGHT">
+0.79
</td>
</tr>
<tr>
<td>
Georgia
</td>
<td align="RIGHT">
3.30
</td>
<td align="RIGHT">
4.28
</td>
<td align="RIGHT">
+0.98
</td>
</tr>
<tr>
<td>
Mississippi
</td>
<td align="RIGHT">
1.15
</td>
<td align="RIGHT">
2.32
</td>
<td align="RIGHT">
+1.17
</td>
</tr>
<tr>
<td>
Texas
</td>
<td align="RIGHT">
9.33
</td>
<td align="RIGHT">
11.13
</td>
<td align="RIGHT">
+1.80
</td>
</tr>
</tbody></table>
</center>
<br>
<br>
</blockquote>
Phototypesetting Documentation delim $$f1fP<br>
<a name="TOC_1">
<h2>
Introduction.
</h2>
</a>
<br>
<i>Tbl</i> turns a simple description of a table into a<i> troff</i>
or<i> nroff</i> [1] program (list of commands) that prints the
table.<i> Tbl</i> may be used on the UNIX [2] system and on the
Honeywell 6000 GCOS system. It attempts to isolate a portion of
a job that it can successfully handle and leave the remainder
for other programs. Thus<i> tbl</i> may be used with the equation
formatting program<i> eqn</i> [3] or various layout macro packages
[4,5,6], but does not duplicate their functions.<br>
This memorandum is divided into two parts. First we give the rules
for preparing<i> tbl</i> input; then some examples are shown.
The description of rules is precise but technical, and the beginning
user may prefer to read the examples first, as they show some
common table arrangements. A section explaining how to invoke<i>
tbl</i> precedes the examples. To avoid repetition, henceforth
read<i> troff</i> as<i> "troff</i> or<i> nroff."</i><br>
The input to<i> tbl</i> is text for a document, with tables preceded
by a ".TS" (table start) command and followed by a ".TE"
(table end) command.<i> Tbl</i> processes the tables, generating<i>
troff</i> formatting commands, and leaves the remainder of the
text unchanged. The ".TS" and ".TE" lines
are copied, too, so that<i> troff</i> page layout macros (such
as the memo formatting macros [4]) can use these lines to delimit
and place tables as they see fit. In particular, any arguments
on the ".TS" or ".TE" lines are copied but
otherwise ignored, and may be used by document layout macro commands.<br>
The format of the input is as follows:<br>
<pre> text
.TS
<i> table</i>
.TE
text
.TS
<i> table</i>
.TE
text
. . .
</pre>
where the format of each table is as follows:<br>
<pre> .TS
<i> options </i><b>;</b>
<i> format .
data
</i> .TE
</pre>
Each table is independent, and must contain formatting information
followed by the data to be entered in the table. The formatting
information, which describes the individual columns and rows of
the table, may be preceded by a few options that affect the entire
table. A detailed description of tables is given in the next section.<br>
<a name="TOC_2">
<h2>
Input commands.
</h2>
</a>
<br>
As indicated above, a table contains, first, global options, then
a format section describing the layout of the table entries, and
then the data to be printed. The format and data are always required,
but not the options. The various parts of the table are entered
as follows:<br>
<dl>
<dt>
1)
</dt>
<dd>
OPTIONS. There may be a single line of options affecting the whole
table. If present, this line must follow the .TS line immediately
and must contain a list of option names separated by spaces, tabs,
or commas, and must be terminated by a semicolon. The allowable
options are:<br>
</dd>
</dl>
<ul>
<dl>
<dt>
<b>center</b>
</dt>
<dd>
-- center the table (default is left-adjust);<br>
</dd>
<dt>
<b>expand</b>
</dt>
<dd>
-- make the table as wide as the current line length;<br>
</dd>
<dt>
<b>box</b>
</dt>
<dd>
-- enclose the table in a box;<br>
</dd>
<dt>
<b>allbox</b>
</dt>
<dd>
-- enclose each item in the table in a box;<br>
</dd>
<dt>
<b>doublebox</b>
</dt>
<dd>
-- enclose the table in two boxes;<br>
</dd>
<dt>
<b>tab </b>(<i>x</i>)
</dt>
<dd>
-- use <i>x</i> instead of tab to separate data items.<br>
</dd>
<dt>
<b>linesize (</b><i>n</i>)
</dt>
<dd>
-- set lines or rules (e.g. from <b>box</b>) in <i>n</i> point
type;<br>
</dd>
<dt>
<b>delim (</b><i>xy</i>)
</dt>
<dd>
-- recognize <i>x</i> and <i>y</i> as the <i>eqn</i> delimiters.<br>
</dd>
</dl>
</ul>
<p>
</p><dl>
<dt>
<br>
</dt>
<dd>
The<i> tbl</i> program tries to keep boxed tables on one page
by issuing appropriate "need" (<i>.ne</i>) commands.
These requests are calculated from the number of lines in the
tables, and if there are spacing commands embedded in the input,
these requests may be inaccurate; use normal<i> troff</i> procedures,
such as keep-release macros, in that case. The user who must have
a multi-page boxed table should use macros designed for this purpose,
as explained below under 'Usage.'<br>
</dd>
<dt>
2)
</dt>
<dd>
FORMAT. The format section of the table specifies the layout of
the columns. Each line in this section corresponds to one line
of the table (except that the last line corresponds to all following
lines up to the next .T&amp;, if any -- see below), and each line
contains a key-letter for each column of the table. It is good
practice to separate the key letters for each column by spaces
or tabs. Each key-letter is one of the following:<br>
</dd>
</dl>
<ul>
<dl>
<dt>
<b>L</b> or <b>l</b>
</dt>
<dd>
to indicate a left-adjusted column entry;<br>
</dd>
<dt>
<b>R</b> or <b>r</b>
</dt>
<dd>
to indicate a right-adjusted column entry;<br>
</dd>
<dt>
<b>C</b> or <b>c</b>
</dt>
<dd>
to indicate a centered column entry;<br>
</dd>
<dt>
<b>N</b> or <b>n</b>
</dt>
<dd>
to indicate a numerical column entry, to be aligned with other
numerical entries so that the units digits of numbers line up;<br>
</dd>
<dt>
<b>A</b> or <b>a</b>
</dt>
<dd>
to indicate an alphabetic subcolumn; all corresponding entries
are aligned on the left, and positioned so that the widest is
centered within the column (see example on page 12);<br>
</dd>
<dt>
<b>S</b> ori <b>s</b>
</dt>
<dd>
to indicate a spanned heading, i.e. to indicate that the entry
from the previous column continues across this column (not allowed
for the first column, obviously); or<br>
</dd>
<dt>
<b>^</b>
</dt>
<dd>
to indicate a vertically spanned heading, i.e. to indicate that
the entry from the previous row continues down through this row.
(Not allowed for the first row of the table, obviously).<br>
</dd>
</dl>
</ul>
<p>
</p><dl>
<dt>
<br>
</dt>
<dd>
When numerical alignment is specified, a location for the decimal
point is sought. The rightmost dot (.) adjacent to a digit is
used as a decimal point; if there is no dot adjoining a digit,
the rightmost digit is used as a units digit; if no alignment
is indicated, the item is centered in the column. However, the
special non-printing character string \&amp; may be used to override
unconditionally dots and digits, or to align alphabetic data;
this string lines up where a dot normally would, and then disappears
from the final output. In the example below, the items shown at
the left will be aligned (in a numerical column) as shown on the
right:<br>
<br>
<center>
<table cellpadding="3" border="">
<tbody><tr>
<td>
13
</td>
<td align="RIGHT">
13
</td>
</tr>
<tr>
<td>
4.2
</td>
<td align="RIGHT">
4.2
</td>
</tr>
<tr>
<td>
26.4.12
</td>
<td align="RIGHT">
26.4.12
</td>
</tr>
<tr>
<td>
abc
</td>
<td align="RIGHT">
abc
</td>
</tr>
<tr>
<td>
abc\&amp;
</td>
<td align="RIGHT">
abc
</td>
</tr>
<tr>
<td>
43\&amp;3.22
</td>
<td align="RIGHT">
433.22
</td>
</tr>
<tr>
<td>
749.12
</td>
<td align="RIGHT">
749.12
</td>
</tr>
</tbody></table>
</center>
<br>
<br>
</dd>
<dt>
<br>
</dt>
<dd>
<b>Note:</b> If numerical data are used in the same column with
wider<b> L</b> or<b> r</b> type table entries, the widest <i>number</i>
is centered relative to the wider<b> L</b> or<b> r</b> items (<b>L</b>
is used instead of <b>l</b> for readability; they have the same
meaning as key-letters). Alignment within the numerical items
is preserved. This is similar to the behavior of<b> a</b> type
data, as explained above. However, alphabetic subcolumns (requested
by the<b> a</b> key-letter) are always slightly indented relative
to<b> L</b> items; if necessary, the column width is increased
to force this. This is not true for <b>n</b> type entries.<br>
</dd>
<dt>
<br>
</dt>
<dd>
<i>Warning:</i> the <b>n</b> and <b>a</b> items should not be
used in the same column.<br>
</dd>
<dt>
<br>
</dt>
<dd>
For readability, the key-letters describing each column should
be separated by spaces. The end of the format section is indicated
by a period. The layout of the key-letters in the format section
resembles the layout of the actual data in the table. Thus a simple
format might appear as:<br>
c s s<br>
l n n .<br>
which specifies a table of three columns. The first line of the
table contains a heading centered across all three columns; each
remaining line contains a left-adjusted item in the first column
followed by two columns of numerical data. A sample table in this
format might be:<br>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="3" align="CENTER">
Overall title
</td>
</tr>
<tr>
<td>
Item-a
</td>
<td align="RIGHT">
34.22
</td>
<td align="RIGHT">
9.1
</td>
</tr>
<tr>
<td>
Item-b
</td>
<td align="RIGHT">
12.65
</td>
<td align="RIGHT">
.02
</td>
</tr>
<tr>
<td>
Items: c,d,e
</td>
<td align="RIGHT">
23
</td>
<td align="RIGHT">
5.8
</td>
</tr>
<tr>
<td>
Total
</td>
<td align="RIGHT">
69.87
</td>
<td align="RIGHT">
14.92
</td>
</tr>
</tbody></table>
<br>
<br>
There are some additional features of the key-letter system:<br>
</dd>
</dl>
<ul>
<dl>
<dt>
<i>Horizontal lines </i>
</dt>
<dd>
-- A key-letter may be replaced by '_' (underscore) to indicate
a horizontal line in place of the corresponding column entry,
or by '=' to indicate a double horizontal line. If an adjacent
column contains a horizontal line, or if there are vertical lines
adjoining this column, this horizontal line is extended to meet
the nearby lines. If any data entry is provided for this column,
it is ignored and a warning message is printed.<br>
</dd>
<dt>
<i>Vertical lines </i>
</dt>
<dd>
-- A vertical bar may be placed between column key-letters. This
will cause a vertical line between the corresponding columns of
the table. A vertical bar to the left of the first key-letter
or to the right of the last one produces a line at the edge of
the table. If two vertical bars appear between key-letters, a
double vertical line is drawn.<br>
</dd>
<dt>
<i>Space between columns </i>
</dt>
<dd>
-- A number may follow the key-letter. This indicates the amount
of separation between this column and the next column. The number
normally specifies the separation in<i> ens</i> (one en is about
the width of the letter 'n').* * More precisely, an en is a number
of points (1 point = 1/72 inch) equal to half the current type
size. If the "expand" option is used, then these numbers
are multiplied by a constant such that the table is as wide as
the current line length. The default column separation number
is 3. If the separation is changed the worst case (largest space
requested) governs.<br>
</dd>
<dt>
<i>Vertical spanning </i>
</dt>
<dd>
-- Normally, vertically spanned items extending over several rows
of the table are centered in their vertical range. If a key-letter
is followed by<b> t</b> or<b> T</b>, any corresponding vertically
spanned item will begin at the top line of its range.<br>
</dd>
<dt>
<i>Font changes </i>
</dt>
<dd>
-- A key-letter may be followed by a string containing a font
name or number preceded by the letter<b> f</b> or<b> F</b>. This
indicates that the corresponding column should be in a different
font from the default font (usually Roman). All font names are
one or two letters; a one-letter font name should be separated
from whatever follows by a space or tab. The single letters <b>B</b>,
<b>b</b>, <b>I</b>, and <b>i</b> are shorter synonyms for<b> fB</b>
and<b> fI</b>. Font change commands given with the table entries
override these specifications.<br>
</dd>
<dt>
<i>Point size changes </i>
</dt>
<dd>
-- A key-letter may be followed by the letter<b> p</b> or<b> P</b>
and a number to indicate the point size of the corresponding table
entries. The number may be a signed digit, in which case it is
taken as an increment or decrement from the current point size.
If both a point size and a column separation value are given,
one or more blanks must separate them.<br>
</dd>
<dt>
<i>Vertical spacing changes </i>
</dt>
<dd>
-- A key-letter may be followed by the letter<b> v</b> or<b> V</b>
and a number to indicate the vertical line spacing to be used
within a multi-line corresponding table entry. The number may
be a signed digit, in which case it is taken as an increment or
decrement from the current vertical spacing. A column separation
value must be separated by blanks or some other specification
from a vertical spacing request. This request has no effect unless
the corresponding table entry is a text block (see below).<br>
</dd>
<dt>
<i>Column width indication </i>
</dt>
<dd>
-- A key-letter may be followed by the letter<b> w</b> or<b> W</b>
and a width value in parentheses. This width is used as a minimum
column width. If the largest element in the column is not as wide
as the width value given after the <b>w</b>, the largest element
is assumed to be that wide. If the largest element in the column
is wider than the specified value, its width is used. The width
is also used as a default line length for included text blocks.
Normal<i> troff</i> units can be used to scale the width value;
if none are used, the default is ens. If the width specification
is a unitless integer the parentheses may be omitted. If the width
value is changed in a column, the <i>last</i> one given controls.<br>
</dd>
<dt>
<i>Equal width columns </i>
</dt>
<dd>
-- A key-letter may be followed by the letter<b> e</b> or<b> E</b>
to indicate equal width columns. All columns whose key-letters
are followed by <b>e</b> or <b>E</b> are made the same width.
This permits the user to get a group of regularly spaced columns.<br>
</dd>
<dt>
<b>Note:</b>
</dt>
<dd>
The order of the above features is immaterial; they need not be
separated by spaces, except as indicated above to avoid ambiguities
involving point size and font changes. Thus a numerical column
entry in italic font and 12 point type with a minimum width of
2.5 inches and separated by 6 ens from the next column could be
specified as<br>
np12w(2.5i)fI 6<br>
</dd>
<dt>
<i>Alternative notation </i>
</dt>
<dd>
-- Instead of listing the format of successive lines of a table
on consecutive lines of the format section, successive line formats
may be given on the same line, separated by commas, so that the
format for the example above might have been written:<br>
c s s, l n n .<br>
</dd>
<dt>
<i>Default </i>
</dt>
<dd>
-- Column descriptors missing from the end of a format line are
assumed to be <b>L</b>. The longest line in the format section,
however, defines the number of columns in the table; extra columns
in the data are ignored silently.<br>
</dd>
</dl>
</ul>
<dl>
<dt>
3)
</dt>
<dd>
DATA. The data for the table are typed after the format. Normally,
each table line is typed as one line of data. Very long input
lines can be broken: any line whose last character is \ is combined
with the following line (and the \ vanishes). The data for different
columns (the table entries) are separated by tabs, or by whatever
character has been specified in the option<i> tabs</i> option.
There are a few special cases:<br>
</dd>
</dl>
<ul>
<dl>
<dt>
<i>Troff commands within tables</i>
</dt>
<dd>
-- An input line beginning with a '.' followed by anything but
a number is assumed to be a command to<i> troff</i> and is passed
through unchanged, retaining its position in the table. So, for
example, space within a table may be produced by ".sp"
commands in the data.<br>
</dd>
<dt>
<i>Full width horizontal lines</i>
</dt>
<dd>
-- An input<i> line</i> containing only the character $fat "_"
$ (underscore) or <b>=</b> (equal sign) is taken to be a single
or double line, respectively, extending the full width of the<i>
table.</i><br>
</dd>
<dt>
<i>Single column horizontal lines</i>
</dt>
<dd>
-- An input table<i> entry</i> containing only the character $fat
"_" $ or <b>=</b> is taken to be a single or double
line extending the full width of the<i> column.</i> Such lines
are extended to meet horizontal or vertical lines adjoining this
column. To obtain these characters explicitly in a column, either
precede them by \&amp; or follow them by a space before the usual
tab or newline.<br>
</dd>
<dt>
<i>Short horizontal lines</i>
</dt>
<dd>
-- An input table<i> entry</i> containing only the string $fat
"\_"$ is taken to be a single line as wide as the contents
of the column. It is not extended to meet adjoining lines.<br>
</dd>
<dt>
<i>Vertically spanned items</i>
</dt>
<dd>
-- An input table entry containing only the character string<b>
\^</b> indicates that the table entry immediately above spans
downward over this row. It is equivalent to a table format key-letter
of '^'.<br>
</dd>
<dt>
<i>Text blocks</i>
</dt>
<dd>
-- In order to include a block of text as a table entry, precede
it by $fat roman "T{" $ and follow it by $fat roman
"T}" $. Thus the sequence<br>
. . . $fat roman "T{"$<br>
<i> block of<br>
text<br>
</i> $fat roman "T}"$ . . .<br>
is the way to enter, as a single entry in the table, something
that cannot conveniently be typed as a simple string between tabs.
Note that the $fat roman "T}" $ end delimiter must begin
a line; additional columns of data may follow after a tab on the
same line. See the example on page 11 for an illustration of included
text blocks in a table. If more than twenty or thirty text blocks
are used in a table, various limits in the<i> troff</i> program
are likely to be exceeded, producing diagnostics such as 'too
many string/macro names' or 'too many number registers.'<br>
</dd>
<dt>
<br>
</dt>
<dd>
Text blocks are pulled out from the table, processed separately
by<i> troff,</i> and replaced in the table as a solid block.
If no line length is specified in the<i> block of text</i> itself,
or in the table format, the default is to use $ L times C / (N+1)
$ where<i> L</i> is the current line length,<i> C</i> is the number
of table columns spanned by the text, and<i> N</i> is the total
number of columns in the table. The other parameters (point size,
font, etc.) used in setting the<i> block of text</i> are those
in effect at the beginning of the table (including the effect
of the ".TS" macro) and any table format specifications
of size, spacing and font, using the <b>p</b>, <b>v</b> and <b>f</b>
modifiers to the column key-letters. Commands within the text
block itself are also recognized, of course. However,<i> troff</i>
commands within the table data but not within the text block do
not affect that block.<br>
delim off<br>
f1fP<br>
</dd>
<dt>
<b>Warnings:</b>
</dt>
<dd>
-- Although any number of lines may be present in a table, only
the first 200 lines are used in calculating the widths of the
various columns. A multi-page table, of course, may be arranged
as several single-page tables if this proves to be a problem.
Other difficulties with formatting may arise because, in the calculation
of column widths all table entries are assumed to be in the font
and size being used when the ".TS" command was encountered,
except for font and size changes indicated (a) in the table format
section and (b) within the table data (as in the entry \s+3\fIdata\fP\s0).
Therefore, although arbitrary<i> troff</i> requests may be sprinkled
in a table, care must be taken to avoid confusing the width calculations;
use requests such as '.ps' with care.<br>
</dd>
</dl>
</ul>
<dl>
<dt>
4)
</dt>
<dd>
ADDITIONAL COMMAND LINES. If the format of a table must be changed
after many similar lines, as with sub-headings or summarizations,
the ".T&amp;" (table continue) command can be used to
change column parameters. The outline of such a table input is:<br>
<pre> .TS
<i> options </i><b>;</b><i>
format .
data
. . .
</i> .T&amp;
<i> format .
data
</i> .T&amp;
<i> format .
data
</i> .TE
</pre>
as in the examples on pages 10 and 13. Using this procedure, each
table line can be close to its corresponding format line.<br>
<i>Warning:</i> it is not possible to change the number of columns,
the space between columns, the global options such as <i>box,</i>
or the selection of columns to be made equal width.<br>
</dd>
</dl>
<a name="TOC_3">
<h2>
Usage.
</h2>
</a>
<br>
On UNIX,<i> tbl</i> can be run on a simple table with the command<br>
<pre> tbl input-file | troff
</pre>
but for more complicated use, where there are several input files,
and they contain equations and <i>ms</i> memorandum layout commands
as well as tables, the normal command would be<br>
<pre> tbl file-1 file-2 . . . | eqn | troff -ms
</pre>
and, of course, the usual options may be used on the<i> troff</i>
and<i> eqn</i> commands. The usage for<i> nroff</i> is similar
to that for<i> troff,</i> but only TELETYPE(r) Model 37 and Diablo-mechanism
(DASI or GSI) terminals can print boxed tables directly.<br>
For the convenience of users employing line printers without adequate
driving tables or post-filters, there is a special<i> -TX</i>
command line option to<i> tbl</i> which produces output that does
not have fractional line motions in it. The only other command
line options recognized by<i> tbl</i> are<i> -ms</i> and<i> -mm</i>
which are turned into commands to fetch the corresponding macro
files; usually it is more convenient to place these arguments
on the<i> troff</i> part of the command line, but they are accepted
by<i> tbl</i> as well.<br>
Note that when<i> eqn</i> and<i> tbl</i> are used together on
the same file<i> tbl</i> should be used first. If there are no
equations within tables, either order works, but it is usually
faster to run<i> tbl</i> first, since<i> eqn</i> normally produces
a larger expansion of the input than<i> tbl.</i> However, if there
are equations within tables (using the<i> delim</i> mechanism
in<i> eqn</i>),<i> tbl</i> must be first or the output will be
scrambled. Users must also beware of using equations in <b>n</b>-style
columns; this is nearly always wrong, since<i> tbl</i> attempts
to split numerical format items into two parts and this is not
possible with equations. The user can defend against this by giving
the<i> delim(xx)</i> table option; this prevents splitting of
numerical columns within the delimiters. For example, if the<i>
eqn</i> delimiters are<i> $$</i>, giving<i> delim($$)</i> a numerical
column such as "1245 $+- 16$" will be divided after
1245, not after 16.<br>
<i>Tbl</i> limits tables to twenty columns; however, use of more
than 16 numerical columns may fail because of limits in<i> troff,</i>
producing the 'too many number registers' message. <i>Troff</i>
number registers used by<i> tbl</i> must be avoided by the user
within tables; these include two-digit names from 31 to 99, and
names of the forms #<i>x</i>, <i>x</i>+, <i>x</i> |, ^<i>x</i>,
and <i>x</i>-, where <i>x</i> is any lower case letter. The names
##, #-, and #^ are also used in certain circumstances. To conserve
number register names, the <b>n</b> and <b>a</b> formats share
a register; hence the restriction above that they may not be used
in the same column.<br>
For aid in writing layout macros,<i> tbl</i> defines a number
register TW which is the table width; it is defined by the time
that the ".TE" macro is invoked and may be used in the
expansion of that macro. More importantly, to assist in laying
out multi-page boxed tables the macro T# is defined to produce
the bottom lines and side lines of a boxed table, and then invoked
at its end. By use of this macro in the page footer a multi-page
table can be boxed. In particular, the<i> ms</i> macros can be
used to print a multi-page boxed table with a repeated heading
by giving the argument H to the ".TS" macro. If the
table start macro is written<br>
.TS H<br>
a line of the form<br>
.TH<br>
must be given in the table after any table heading (or at the
start if none). Material up to the ".TH" is placed at
the top of each page of table; the remaining lines in the table
are placed on several pages as required. Note that this is<i>
not</i> a feature of<i> tbl,</i> but of the <i>ms</i> layout macros.<br>
<a name="TOC_4">
<h2>
Examples.
</h2>
</a>
<br>
Here are some examples illustrating features of<i> tbl.</i> The
symbol [[circle]] in the input represents a tab character.<br>
<b>Input:<br>
</b>.TS<br>
box;<br>
c c c<br>
l l l.<br>
Language[[circle]]Authors[[circle]]Runs on<br>
<br>
Fortran[[circle]]Many[[circle]]Almost anything<br>
PL/1[[circle]]IBM[[circle]]360/370<br>
C[[circle]]BTL[[circle]]11/45,H6000,370<br>
BLISS[[circle]]Carnegie-Mellon[[circle]]PDP-10,11<br>
IDS[[circle]]Honeywell[[circle]]H6000<br>
Pascal[[circle]]Stanford[[circle]]370<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td align="CENTER">
Language<br>
</td>
<td align="CENTER">
Authors<br>
</td>
<td align="CENTER">
Runs on<br>
</td>
</tr>
<tr>
<td><br></td>
<td><br></td>
<td><br></td>
</tr>
<tr>
<td>
Fortran<br>
</td>
<td>
Many<br>
</td>
<td>
Almost anything<br>
</td>
</tr>
<tr>
<td>
PL/1<br>
</td>
<td>
IBM<br>
</td>
<td>
360/370<br>
</td>
</tr>
<tr>
<td>
C<br>
</td>
<td>
BTL<br>
</td>
<td>
11/45,H6000,370<br>
</td>
</tr>
<tr>
<td>
BLISS<br>
</td>
<td>
Carnegie-Mellon<br>
</td>
<td>
PDP-10,11<br>
</td>
</tr>
<tr>
<td>
IDS<br>
</td>
<td>
Honeywell<br>
</td>
<td>
H6000<br>
</td>
</tr>
<tr>
<td>
Pascal<br>
</td>
<td>
Stanford<br>
</td>
<td>
370<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
allbox;<br>
c s s<br>
c c c<br>
n n n.<br>
AT&amp;T Common Stock<br>
Year[[circle]]Price[[circle]]Dividend<br>
1971[[circle]]41-54[[circle]]$2.60<br>
2[[circle]]41-54[[circle]]2.70<br>
3[[circle]]46-55[[circle]]2.87<br>
4[[circle]]40-53[[circle]]3.24<br>
5[[circle]]45-52[[circle]]3.40<br>
6[[circle]]51-59[[circle]].95*<br>
.TE<br>
* (first quarter only)<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="3" align="CENTER">
AT&amp;T Common Stock<br>
</td>
</tr>
<tr>
<td align="CENTER">
Year<br>
</td>
<td align="CENTER">
Price<br>
</td>
<td align="CENTER">
Dividend<br>
</td>
</tr>
<tr>
<td align="RIGHT">
1971<br>
</td>
<td align="RIGHT">
41-54<br>
</td>
<td align="RIGHT">
$2.60<br>
</td>
</tr>
<tr>
<td align="RIGHT">
2<br>
</td>
<td align="RIGHT">
41-54<br>
</td>
<td align="RIGHT">
2.70<br>
</td>
</tr>
<tr>
<td align="RIGHT">
3<br>
</td>
<td align="RIGHT">
46-55<br>
</td>
<td align="RIGHT">
2.87<br>
</td>
</tr>
<tr>
<td align="RIGHT">
4<br>
</td>
<td align="RIGHT">
40-53<br>
</td>
<td align="RIGHT">
3.24<br>
</td>
</tr>
<tr>
<td align="RIGHT">
5<br>
</td>
<td align="RIGHT">
45-52<br>
</td>
<td align="RIGHT">
3.40<br>
</td>
</tr>
<tr>
<td align="RIGHT">
6<br>
</td>
<td align="RIGHT">
51-59<br>
</td>
<td align="RIGHT">
.95*<br>
</td>
</tr>
</tbody></table>
<br>
* (first quarter only)<br>
<b>Input:<br>
</b>.TS<br>
box;<br>
c s s<br>
c | c | c<br>
l | l | n.<br>
Major New York Bridges<br>
=<br>
Bridge[[circle]]Designer[[circle]]Length<br>
_<br>
Brooklyn[[circle]]J. A. Roebling[[circle]]1595<br>
Manhattan[[circle]]G. Lindenthal[[circle]]1470<br>
Williamsburg[[circle]]L. L. Buck[[circle]]1600<br>
_<br>
Queensborough[[circle]]Palmer &amp;[[circle]]1182<br>
[[circle]] Hornbostel<br>
_<br>
[[circle]][[circle]]1380<br>
Triborough[[circle]]O. H. Ammann[[circle]]_<br>
[[circle]][[circle]]383<br>
_<br>
Bronx Whitestone[[circle]]O. H. Ammann[[circle]]2300<br>
Throgs Neck[[circle]]O. H. Ammann[[circle]]1800<br>
_<br>
George Washington[[circle]]O. H. Ammann[[circle]]3500<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="3" align="CENTER">
Major New York Bridges<br>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td align="CENTER">
Bridge<br>
</td>
<td align="CENTER">
Designer<br>
</td>
<td align="CENTER">
Length<br>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td>
Brooklyn<br>
</td>
<td>
J. A. Roebling<br>
</td>
<td align="RIGHT">
1595<br>
</td>
</tr>
<tr>
<td>
Manhattan<br>
</td>
<td>
G. Lindenthal<br>
</td>
<td align="RIGHT">
1470<br>
</td>
</tr>
<tr>
<td>
Williamsburg<br>
</td>
<td>
L. L. Buck<br>
</td>
<td align="RIGHT">
1600<br>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td>
Queensborough<br>
</td>
<td>
Palmer &amp;<br>
</td>
<td align="RIGHT">
1182<br>
</td>
</tr>
<tr>
<td><br></td>
<td>
Hornbostel<br>
</td>
<td><br></td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td><br></td>
<td><br></td>
<td align="RIGHT">
1380<br>
</td>
</tr>
<tr>
<td>
Triborough<br>
</td>
<td>
O. H. Ammann<br>
</td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td><br></td>
<td><br></td>
<td align="RIGHT">
383<br>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td>
Bronx Whitestone<br>
</td>
<td>
O. H. Ammann<br>
</td>
<td align="RIGHT">
2300<br>
</td>
</tr>
<tr>
<td>
Throgs Neck<br>
</td>
<td>
O. H. Ammann<br>
</td>
<td align="RIGHT">
1800<br>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
<tr>
<td>
George Washington<br>
</td>
<td>
O. H. Ammann<br>
</td>
<td align="RIGHT">
3500<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
c c<br>
np-2 | n | .<br>
[[circle]]Stack<br>
[[circle]]_<br>
1[[circle]]46<br>
[[circle]]_<br>
2[[circle]]23<br>
[[circle]]_<br>
3[[circle]]15<br>
[[circle]]_<br>
4[[circle]]6.5<br>
[[circle]]_<br>
5[[circle]]2.1<br>
[[circle]]_<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td><br></td>
<td align="CENTER">
Stack<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td align="RIGHT">
1<br>
</td>
<td align="RIGHT">
46<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td align="RIGHT">
2<br>
</td>
<td align="RIGHT">
23<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td align="RIGHT">
3<br>
</td>
<td align="RIGHT">
15<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td align="RIGHT">
4<br>
</td>
<td align="RIGHT">
6.5<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td align="RIGHT">
5<br>
</td>
<td align="RIGHT">
2.1<br>
</td>
</tr>
<tr>
<td><br></td>
<td align="CENTER">
---
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
box;<br>
L L L<br>
L L _<br>
L L | LB<br>
L L _<br>
L L L.<br>
january[[circle]]february[[circle]]march<br>
april[[circle]]may<br>
june[[circle]]july[[circle]]Months<br>
august[[circle]]september<br>
october[[circle]]november[[circle]]december<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td>
january<br>
</td>
<td>
february<br>
</td>
<td>
march<br>
</td>
</tr>
<tr>
<td>
april<br>
</td>
<td>
may<br>
</td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td>
june<br>
</td>
<td>
july<br>
</td>
<td>
<b>Months<br>
</b>
</td>
</tr>
<tr>
<td>
august<br>
</td>
<td>
september<br>
</td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td>
october<br>
</td>
<td>
november<br>
</td>
<td>
december<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
box;<br>
cfB s s s.<br>
Composition of Foods<br>
_<br>
.T&amp;<br>
c | c s s<br>
c | c s s<br>
c | c | c | c.<br>
Food[[circle]]Percent by Weight<br>
\^[[circle]]_<br>
\^[[circle]]Protein[[circle]]Fat[[circle]]Carbo-<br>
\^[[circle]]\^[[circle]]\^[[circle]]hydrate<br>
_<br>
.T&amp;<br>
l | n | n | n.<br>
Apples[[circle]].4[[circle]].5[[circle]]13.0<br>
Halibut[[circle]]18.4[[circle]]5.2[[circle]]. . .<br>
Lima beans[[circle]]7.5[[circle]].8[[circle]]22.0<br>
Milk[[circle]]3.3[[circle]]4.0[[circle]]5.0<br>
Mushrooms[[circle]]3.5[[circle]].4[[circle]]6.0<br>
Rye bread[[circle]]9.0[[circle]].6[[circle]]52.7<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="4" align="CENTER">
<b>Composition of Foods<br>
</b>
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="4" align="CENTER">
Food<br>
</td>
<td colspan="3" align="CENTER">
Percent by Weight<br>
</td>
</tr>
<tr>
<td align="CENTER">
---
</td>
<td align="CENTER">
---
</td>
<td align="CENTER">
---
</td>
</tr>
<tr>
<td rowspan="2" align="CENTER">
Protein<br>
</td>
<td rowspan="2" align="CENTER">
Fat<br>
</td>
<td align="CENTER">
Carbo-<br>
</td>
</tr>
<tr>
<td align="CENTER">
hydrate<br>
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td>
Apples<br>
</td>
<td align="RIGHT">
.4<br>
</td>
<td align="RIGHT">
.5<br>
</td>
<td align="RIGHT">
13.0<br>
</td>
</tr>
<tr>
<td>
Halibut<br>
</td>
<td align="RIGHT">
18.4<br>
</td>
<td align="RIGHT">
5.2<br>
</td>
<td align="RIGHT">
...<br>
</td>
</tr>
<tr>
<td>
Lima beans<br>
</td>
<td align="RIGHT">
7.5<br>
</td>
<td align="RIGHT">
.8<br>
</td>
<td align="RIGHT">
22.0<br>
</td>
</tr>
<tr>
<td>
Milk<br>
</td>
<td align="RIGHT">
3.3<br>
</td>
<td align="RIGHT">
4.0<br>
</td>
<td align="RIGHT">
5.0<br>
</td>
</tr>
<tr>
<td>
Mushrooms<br>
</td>
<td align="RIGHT">
3.5<br>
</td>
<td align="RIGHT">
.4<br>
</td>
<td align="RIGHT">
6.0<br>
</td>
</tr>
<tr>
<td>
Rye bread<br>
</td>
<td align="RIGHT">
9.0<br>
</td>
<td align="RIGHT">
.6<br>
</td>
<td align="RIGHT">
52.7<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
allbox;<br>
cfI s s<br>
c cw(1i) cw(1i)<br>
lp9 lp9 lp9.<br>
New York Area Rocks<br>
Era[[circle]]Formation[[circle]]Age (years)<br>
Precambrian[[circle]]Reading Prong[[circle]]&gt;1 billion<br>
Paleozoic[[circle]]Manhattan Prong[[circle]]400 million<br>
Mesozoic[[circle]]T{<br>
.na<br>
Newark Basin, incl.<br>
Stockton, Lockatong, and Brunswick<br>
formations; also Watchungs<br>
and Palisades.<br>
T}[[circle]]200 million<br>
Cenozoic[[circle]]Coastal Plain[[circle]]T{<br>
On Long Island 30,000 years;<br>
Cretaceous sediments redeposited<br>
by recent glaciation.<br>
.ad<br>
T}<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="3" align="CENTER">
<i>New York Area Rocks</i>
</td>
</tr>
<tr>
<td align="CENTER">
Era
</td>
<td align="CENTER">
Formation
</td>
<td align="CENTER">
Age (years)
</td>
</tr>
<tr>
<td>
Precambrian
</td>
<td>
Reading Prong
</td>
<td>
&gt;1 billion
</td>
</tr>
<tr>
<td>
Paleozoic
</td>
<td>
Manhattan Prong
</td>
<td>
400 million
</td>
</tr>
<tr>
<td>
Mesozoic
</td>
<td>
Newark Basin, incl. Stockton, Lockatong, and Brunswick formations;
also Watchungs and Palisades.
</td>
<td>
200 million
</td>
</tr>
<tr>
<td>
Cenozoic
</td>
<td>
Coastal Plain
</td>
<td>
On Long Island 30,000 years; Cretaceous sediments redeposited
by recent glaciation.
</td>
</tr>
</tbody></table>
<br>
<br>
<b>Input:</b><br>
.EQ<br>
delim $$<br>
.EN<br>
. . .<br>
.TS<br>
doublebox;<br>
c c<br>
l l.<br>
Name[[circle]]Definition<br>
.sp<br>
.vs +2p<br>
Gamma[[circle]]$GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$<br>
Sine[[circle]]$sin (x) = 1 over 2i ( e sup ix - e sup -ix )$<br>
Error[[circle]]$ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$<br>
Bessel[[circle]]$ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $<br>
Zeta[[circle]]$ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s &gt; 1)$<br>
.vs -2p<br>
.TE<br>
delim $$<br>
f1fP<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td align="CENTER">
Name<br>
</td>
<td align="CENTER">
Definition<br>
</td>
</tr>
<tr>
<td>
Gamma<br>
</td>
<td>
$GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$<br>
</td>
</tr>
<tr>
<td>
Sine<br>
</td>
<td>
$sin (x) = 1 over 2i ( e sup ix - e sup -ix )$<br>
</td>
</tr>
<tr>
<td>
Error<br>
</td>
<td>
$ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$<br>
</td>
</tr>
<tr>
<td>
Bessel<br>
</td>
<td>
$ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $<br>
</td>
</tr>
<tr>
<td>
Zeta<br>
</td>
<td>
$ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s &gt; 1)$<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
box, tab(:);<br>
cb s s s s<br>
cp-2 s s s s<br>
c || c | c | c | c<br>
c || c | c | c | c<br>
r2 || n2 | n2 | n2 | n.<br>
Readability of Text<br>
Line Width and Leading for 10-Point Type<br>
=<br>
Line:Set:1-Point:2-Point:4-Point<br>
Width:Solid:Leading:Leading:Leading<br>
_<br>
9 Pica:\-9.3:\-6.0:\-5.3:\-7.1<br>
14 Pica:\-4.5:\-0.6:\-0.3:\-1.7<br>
19 Pica:\-5.0:\-5.1: 0.0:\-2.0<br>
31 Pica:\-3.7:\-3.8:\-2.4:\-3.6<br>
43 Pica:\-9.1:\-9.0:\-5.9:\-8.8<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="5" align="CENTER">
<b>Readability of Text<br>
</b>
</td>
</tr>
<tr>
<td colspan="5" align="CENTER">
Line Width and Leading for 10-Point Type<br>
</td>
</tr>
<tr>
<td colspan="5"></td>
</tr>
<tr>
<td align="CENTER">
Line<br>
</td>
<td align="CENTER">
Set<br>
</td>
<td align="CENTER">
1-Point<br>
</td>
<td align="CENTER">
2-Point<br>
</td>
<td align="CENTER">
4-Point<br>
</td>
</tr>
<tr>
<td align="CENTER">
Width<br>
</td>
<td align="CENTER">
Solid<br>
</td>
<td align="CENTER">
Leading<br>
</td>
<td align="CENTER">
Leading<br>
</td>
<td align="CENTER">
Leading<br>
</td>
</tr>
<tr>
<td colspan="5"></td>
</tr>
<tr>
<td align="RIGHT">
9 Pica<br>
</td>
<td align="RIGHT">
-9.3<br>
</td>
<td align="RIGHT">
-6.0<br>
</td>
<td align="RIGHT">
-5.3<br>
</td>
<td align="RIGHT">
-7.1<br>
</td>
</tr>
<tr>
<td align="RIGHT">
14 Pica<br>
</td>
<td align="RIGHT">
-4.5<br>
</td>
<td align="RIGHT">
-0.6<br>
</td>
<td align="RIGHT">
-0.3<br>
</td>
<td align="RIGHT">
-1.7<br>
</td>
</tr>
<tr>
<td align="RIGHT">
19 Pica<br>
</td>
<td align="RIGHT">
-5.0<br>
</td>
<td align="RIGHT">
-5.1<br>
</td>
<td align="RIGHT">
0.0<br>
</td>
<td align="RIGHT">
-2.0<br>
</td>
</tr>
<tr>
<td align="RIGHT">
31 Pica<br>
</td>
<td align="RIGHT">
-3.7<br>
</td>
<td align="RIGHT">
-3.8<br>
</td>
<td align="RIGHT">
-2.4<br>
</td>
<td align="RIGHT">
-3.6<br>
</td>
</tr>
<tr>
<td align="RIGHT">
43 Pica<br>
</td>
<td align="RIGHT">
-9.1<br>
</td>
<td align="RIGHT">
-9.0<br>
</td>
<td align="RIGHT">
-5.9<br>
</td>
<td align="RIGHT">
-8.8<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
c s<br>
cip-2 s<br>
l n<br>
a n.<br>
Some London Transport Statistics<br>
(Year 1964)<br>
Railway route miles[[circle]]244<br>
Tube[[circle]]66<br>
Sub-surface[[circle]]22<br>
Surface[[circle]]156<br>
.sp .5<br>
.T&amp;<br>
l r<br>
a r.<br>
Passenger traffic \- railway<br>
Journeys[[circle]]674 million<br>
Average length[[circle]]4.55 miles<br>
Passenger miles[[circle]]3,066 million<br>
.T&amp;<br>
l r<br>
a r.<br>
Passenger traffic \- road<br>
Journeys[[circle]]2,252 million<br>
Average length[[circle]]2.26 miles<br>
Passenger miles[[circle]]5,094 million<br>
.T&amp;<br>
l n<br>
a n.<br>
.sp .5<br>
Vehicles[[circle]]12,521<br>
Railway motor cars[[circle]]2,905<br>
Railway trailer cars[[circle]]1,269<br>
Total railway[[circle]]4,174<br>
Omnibuses[[circle]]8,347<br>
.T&amp;<br>
l n<br>
a n.<br>
.sp .5<br>
Staff[[circle]]73,739<br>
Administrative, etc.[[circle]]5,582<br>
Civil engineering[[circle]]5,134<br>
Electrical eng.[[circle]]1,714<br>
Mech. eng. \- railway[[circle]]4,310<br>
Mech. eng. \- road[[circle]]9,152<br>
Railway operations[[circle]]8,930<br>
Road operations[[circle]]35,946<br>
Other[[circle]]2,971<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="2" align="CENTER">
Some London Transport Statistics<br>
</td>
</tr>
<tr>
<td colspan="2" align="CENTER">
<i>(Year 1964)<br>
</i>
</td>
</tr>
<tr>
<td>
Railway route miles<br>
</td>
<td align="RIGHT">
244<br>
</td>
</tr>
<tr>
<td>
Tube<br>
</td>
<td align="RIGHT">
66<br>
</td>
</tr>
<tr>
<td>
Sub-surface<br>
</td>
<td align="RIGHT">
22<br>
</td>
</tr>
<tr>
<td>
Surface<br>
</td>
<td align="RIGHT">
156<br>
</td>
</tr>
<tr>
<td>
Passenger traffic - railway<br>
</td>
<td><br></td>
</tr>
<tr>
<td>
Journeys<br>
</td>
<td align="RIGHT">
674 million<br>
</td>
</tr>
<tr>
<td>
Average length<br>
</td>
<td align="RIGHT">
4.55 miles<br>
</td>
</tr>
<tr>
<td>
Passenger miles<br>
</td>
<td align="RIGHT">
3,066 million<br>
</td>
</tr>
<tr>
<td>
Passenger traffic - road<br>
</td>
<td><br></td>
</tr>
<tr>
<td>
Journeys<br>
</td>
<td align="RIGHT">
2,252 million<br>
</td>
</tr>
<tr>
<td>
Average length<br>
</td>
<td align="RIGHT">
2.26 miles<br>
</td>
</tr>
<tr>
<td>
Passenger miles<br>
</td>
<td align="RIGHT">
5,094 million<br>
</td>
</tr>
<tr>
<td>
Vehicles<br>
</td>
<td align="RIGHT">
12,521<br>
</td>
</tr>
<tr>
<td>
Railway motor cars<br>
</td>
<td align="RIGHT">
2,905<br>
</td>
</tr>
<tr>
<td>
Railway trailer cars<br>
</td>
<td align="RIGHT">
1,269<br>
</td>
</tr>
<tr>
<td>
Total railway<br>
</td>
<td align="RIGHT">
4,174<br>
</td>
</tr>
<tr>
<td>
Omnibuses<br>
</td>
<td align="RIGHT">
8,347<br>
</td>
</tr>
<tr>
<td>
Staff<br>
</td>
<td align="RIGHT">
73,739<br>
</td>
</tr>
<tr>
<td>
Administrative, etc.<br>
</td>
<td align="RIGHT">
5,582<br>
</td>
</tr>
<tr>
<td>
Civil engineering<br>
</td>
<td align="RIGHT">
5,134<br>
</td>
</tr>
<tr>
<td>
Electrical eng.<br>
</td>
<td align="RIGHT">
1,714<br>
</td>
</tr>
<tr>
<td>
Mech. eng. - railway<br>
</td>
<td align="RIGHT">
4,310<br>
</td>
</tr>
<tr>
<td>
Mech. eng. - road<br>
</td>
<td align="RIGHT">
9,152<br>
</td>
</tr>
<tr>
<td>
Railway operations<br>
</td>
<td align="RIGHT">
8,930<br>
</td>
</tr>
<tr>
<td>
Road operations<br>
</td>
<td align="RIGHT">
35,946<br>
</td>
</tr>
<tr>
<td>
Other<br>
</td>
<td align="RIGHT">
2,971<br>
</td>
</tr>
</tbody></table>
<br>
delim off<br>
f1fP<br>
<b>Input:<br>
</b>.ps 8<br>
.vs 10p<br>
.TS<br>
center box;<br>
c s s<br>
ci s s<br>
c c c<br>
lB l n.<br>
New Jersey Representatives<br>
(Democrats)<br>
.sp .5<br>
Name[[circle]]Office address[[circle]]Phone<br>
.sp .5<br>
James J. Florio[[circle]]23 S. White Horse Pike, Somerdale 08083[[circle]]609-627-8222<br>
William J. Hughes[[circle]]2920 Atlantic Ave., Atlantic City 08401[[circle]]609-345-4844<br>
James J. Howard[[circle]]801 Bangs Ave., Asbury Park 07712[[circle]]201-774-1600<br>
Frank Thompson, Jr.[[circle]]10 Rutgers Pl., Trenton 08618[[circle]]609-599-1619<br>
Andrew Maguire[[circle]]115 W. Passaic St., Rochelle Park 07662[[circle]]201-843-0240<br>
Robert A. Roe[[circle]]U.S.P.O., 194 Ward St., Paterson 07510[[circle]]201-523-5152<br>
Henry Helstoski[[circle]]666 Paterson Ave., East Rutherford 07073[[circle]]201-939-9090<br>
Peter W. Rodino, Jr.[[circle]]Suite 1435A, 970 Broad St., Newark 07102[[circle]]201-645-3213<br>
Joseph G. Minish[[circle]]308 Main St., Orange 07050[[circle]]201-645-6363<br>
Helen S. Meyner[[circle]]32 Bridge St., Lambertville 08530[[circle]]609-397-1830<br>
Dominick V. Daniels[[circle]]895 Bergen Ave., Jersey City 07306[[circle]]201-659-7700<br>
Edward J. Patten[[circle]]Natl. Bank Bldg., Perth Amboy 08861[[circle]]201-826-4610<br>
.sp .5<br>
.T&amp;<br>
ci s s<br>
lB l n.<br>
(Republicans)<br>
.sp .5v<br>
Millicent Fenwick[[circle]]41 N. Bridge St., Somerville 08876[[circle]]201-722-8200<br>
Edwin B. Forsythe[[circle]]301 Mill St., Moorestown 08057[[circle]]609-235-6622<br>
Matthew J. Rinaldo[[circle]]1961 Morris Ave., Union 07083[[circle]]201-687-4235<br>
.TE<br>
.ps 10<br>
.vs 12p<br>
<b>Output:<br>
</b>
<br>
<center>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="3" align="CENTER">
New Jersey Representatives<br>
</td>
</tr>
<tr>
<td colspan="3" align="CENTER">
<i>(Democrats)<br>
</i>
</td>
</tr>
<tr>
<td align="CENTER">
Name<br>
</td>
<td align="CENTER">
Office address<br>
</td>
<td align="CENTER">
Phone<br>
</td>
</tr>
<tr>
<td>
<b>James J. Florio<br>
</b>
</td>
<td>
23 S. White Horse Pike, Somerdale 08083<br>
</td>
<td align="RIGHT">
609-627-8222<br>
</td>
</tr>
<tr>
<td>
<b>William J. Hughes<br>
</b>
</td>
<td>
2920 Atlantic Ave., Atlantic City 08401<br>
</td>
<td align="RIGHT">
609-345-4844<br>
</td>
</tr>
<tr>
<td>
<b>James J. Howard<br>
</b>
</td>
<td>
801 Bangs Ave., Asbury Park 07712<br>
</td>
<td align="RIGHT">
201-774-1600<br>
</td>
</tr>
<tr>
<td>
<b>Frank Thompson, Jr.<br>
</b>
</td>
<td>
10 Rutgers Pl., Trenton 08618<br>
</td>
<td align="RIGHT">
609-599-1619<br>
</td>
</tr>
<tr>
<td>
<b>Andrew Maguire<br>
</b>
</td>
<td>
115 W. Passaic St., Rochelle Park 07662<br>
</td>
<td align="RIGHT">
201-843-0240<br>
</td>
</tr>
<tr>
<td>
<b>Robert A. Roe<br>
</b>
</td>
<td>
U.S.P.O., 194 Ward St., Paterson 07510<br>
</td>
<td align="RIGHT">
201-523-5152<br>
</td>
</tr>
<tr>
<td>
<b>Henry Helstoski<br>
</b>
</td>
<td>
666 Paterson Ave., East Rutherford 07073<br>
</td>
<td align="RIGHT">
201-939-9090<br>
</td>
</tr>
<tr>
<td>
<b>Peter W. Rodino, Jr.<br>
</b>
</td>
<td>
Suite 1435A, 970 Broad St., Newark 07102<br>
</td>
<td align="RIGHT">
201-645-3213<br>
</td>
</tr>
<tr>
<td>
<b>Joseph G. Minish<br>
</b>
</td>
<td>
308 Main St., Orange 07050<br>
</td>
<td align="RIGHT">
201-645-6363<br>
</td>
</tr>
<tr>
<td>
<b>Helen S. Meyner<br>
</b>
</td>
<td>
32 Bridge St., Lambertville 08530<br>
</td>
<td align="RIGHT">
609-397-1830<br>
</td>
</tr>
<tr>
<td>
<b>Dominick V. Daniels<br>
</b>
</td>
<td>
895 Bergen Ave., Jersey City 07306<br>
</td>
<td align="RIGHT">
201-659-7700<br>
</td>
</tr>
<tr>
<td>
<b>Edward J. Patten<br>
</b>
</td>
<td>
Natl. Bank Bldg., Perth Amboy 08861<br>
</td>
<td align="RIGHT">
201-826-4610<br>
</td>
</tr>
<tr>
<td colspan="3" align="CENTER">
<i>(Republicans)<br>
</i>
</td>
</tr>
<tr>
<td>
<b>Millicent Fenwick<br>
</b>
</td>
<td>
41 N. Bridge St., Somerville 08876<br>
</td>
<td align="RIGHT">
201-722-8200<br>
</td>
</tr>
<tr>
<td>
<b>Edwin B. Forsythe<br>
</b>
</td>
<td>
301 Mill St., Moorestown 08057<br>
</td>
<td align="RIGHT">
609-235-6622<br>
</td>
</tr>
<tr>
<td>
<b>Matthew J. Rinaldo<br>
</b>
</td>
<td>
1961 Morris Ave., Union 07083<br>
</td>
<td align="RIGHT">
201-687-4235<br>
</td>
</tr>
</tbody></table>
</center>
<br>
This is a paragraph of normal text placed here only to indicate
where the left and right margins are. In this way the reader
can judge the appearance of centered tables or expanded tables,
and observe how such tables are formatted.<br>
<b>Input:</b><br>
.TS<br>
expand;<br>
c s s s<br>
c c c c<br>
l l n n.<br>
Bell Labs Locations<br>
Name[[circle]]Address[[circle]]Area Code[[circle]]Phone<br>
Holmdel[[circle]]Holmdel, N. J. 07733[[circle]]201[[circle]]949-3000<br>
Murray Hill[[circle]]Murray Hill, N. J. 07974[[circle]]201[[circle]]582-6377<br>
Whippany[[circle]]Whippany, N. J. 07981[[circle]]201[[circle]]386-3000<br>
Indian Hill[[circle]]Naperville, Illinois 60540[[circle]]312[[circle]]690-2000<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table width="100%" cellpadding="3" border="">
<tbody><tr>
<td colspan="4" align="CENTER">
Bell Labs Locations<br>
</td>
</tr>
<tr>
<td align="CENTER">
Name<br>
</td>
<td align="CENTER">
Address<br>
</td>
<td align="CENTER">
Area Code<br>
</td>
<td align="CENTER">
Phone<br>
</td>
</tr>
<tr>
<td>
Holmdel<br>
</td>
<td>
Holmdel, N. J. 07733<br>
</td>
<td align="RIGHT">
201<br>
</td>
<td align="RIGHT">
949-3000<br>
</td>
</tr>
<tr>
<td>
Murray Hill<br>
</td>
<td>
Murray Hill, N. J. 07974<br>
</td>
<td align="RIGHT">
201<br>
</td>
<td align="RIGHT">
582-6377<br>
</td>
</tr>
<tr>
<td>
Whippany<br>
</td>
<td>
Whippany, N. J. 07981<br>
</td>
<td align="RIGHT">
201<br>
</td>
<td align="RIGHT">
386-3000<br>
</td>
</tr>
<tr>
<td>
Indian Hill<br>
</td>
<td>
Naperville, Illinois 60540<br>
</td>
<td align="RIGHT">
312<br>
</td>
<td align="RIGHT">
690-2000<br>
</td>
</tr>
</tbody></table>
<br>
<b>Input:<br>
</b>.TS<br>
box;<br>
cb s s s<br>
c | c | c s<br>
ltiw(1i) | ltw(2i) | lp8 | lw(1.5i)p8.<br>
Some Interesting Places<br>
_<br>
Name[[circle]]Description[[circle]]Practical Information<br>
_<br>
T{<br>
American Museum of Natural History<br>
T}[[circle]]T{<br>
The collections fill 11.5 acres (Michelin) or 25 acres (MTA)<br>
of exhibition halls on four floors. There is a full-sized replica<br>
of a blue whale and the world's largest star sapphire (stolen in 1964).<br>
T}[[circle]]Hours[[circle]]10-5, ex. Sun 11-5, Wed. to 9<br>
\^[[circle]]\^[[circle]]Location[[circle]]T{<br>
Central Park West &amp; 79th St.<br>
T}<br>
\^[[circle]]\^[[circle]]Admission[[circle]]Donation: $1.00 asked<br>
\^[[circle]]\^[[circle]]Subway[[circle]]AA to 81st St.<br>
\^[[circle]]\^[[circle]]Telephone[[circle]]212-873-4225<br>
_<br>
Bronx Zoo[[circle]]T{<br>
About a mile long and .6 mile wide, this is the largest zoo in America.<br>
A lion eats 18 pounds<br>
of meat a day while a sea lion eats 15 pounds of fish.<br>
T}[[circle]]Hours[[circle]]T{<br>
10-4:30 winter, to 5:00 summer<br>
T}<br>
\^[[circle]]\^[[circle]]Location[[circle]]T{<br>
185th St. &amp; Southern Blvd, the Bronx.<br>
T}<br>
\^[[circle]]\^[[circle]]Admission[[circle]]$1.00, but Tu,We,Th free<br>
\^[[circle]]\^[[circle]]Subway[[circle]]2, 5 to East Tremont Ave.<br>
\^[[circle]]\^[[circle]]Telephone[[circle]]212-933-1759<br>
_<br>
Brooklyn Museum[[circle]]T{<br>
Five floors of galleries contain American and ancient art.<br>
There are American period rooms and architectural ornaments saved<br>
from wreckers, such as a classical figure from Pennsylvania Station.<br>
T}[[circle]]Hours[[circle]]Wed-Sat, 10-5, Sun 12-5<br>
\^[[circle]]\^[[circle]]Location[[circle]]T{<br>
Eastern Parkway &amp; Washington Ave., Brooklyn.<br>
T}<br>
\^[[circle]]\^[[circle]]Admission[[circle]]Free<br>
\^[[circle]]\^[[circle]]Subway[[circle]]2,3 to Eastern Parkway.<br>
\^[[circle]]\^[[circle]]Telephone[[circle]]718-638-5000<br>
_<br>
T{<br>
New-York Historical Society<br>
T}[[circle]]T{<br>
All the original paintings for Audubon's<br>
.I<br>
Birds of America<br>
.R<br>
are here, as are exhibits of American decorative arts, New York history,<br>
Hudson River school paintings, carriages, and glass paperweights.<br>
T}[[circle]]Hours[[circle]]T{<br>
Tues-Fri &amp; Sun, 1-5; Sat 10-5<br>
T}<br>
\^[[circle]]\^[[circle]]Location[[circle]]T{<br>
Central Park West &amp; 77th St.<br>
T}<br>
\^[[circle]]\^[[circle]]Admission[[circle]]Free<br>
\^[[circle]]\^[[circle]]Subway[[circle]]AA to 81st St.<br>
\^[[circle]]\^[[circle]]Telephone[[circle]]212-873-3400<br>
.TE<br>
<b>Output:<br>
</b>
<br>
<table cellpadding="3" border="">
<tbody><tr>
<td colspan="4" align="CENTER">
<b>Some Interesting Places</b>
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td align="CENTER">
Name
</td>
<td align="CENTER">
Description
</td>
<td colspan="2" align="CENTER">
Practical Information
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="5" valign="TOP">
<i>American Museum of Natural History</i>
</td>
<td rowspan="5" valign="TOP">
The collections fill 11.5 acres (Michelin) or 25 acres (MTA) of
exhibition halls on four floors. There is a full-sized replica
of a blue whale and the world's largest star sapphire (stolen
in 1964).
</td>
<td>
Hours
</td>
<td>
10-5, ex. Sun 11-5, Wed. to 9
</td>
</tr>
<tr>
<td>
Location
</td>
<td>
Central Park West &amp; 79th St.
</td>
</tr>
<tr>
<td>
Admission
</td>
<td>
Donation: $1.00 asked
</td>
</tr>
<tr>
<td>
Subway
</td>
<td>
AA to 81st St.
</td>
</tr>
<tr>
<td>
Telephone
</td>
<td>
212-873-4225
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="5" valign="TOP">
<i>Bronx Zoo</i>
</td>
<td rowspan="5" valign="TOP">
About a mile long and .6 mile wide, this is the largest zoo in
America. A lion eats 18 pounds of meat a day while a sea lion
eats 15 pounds of fish.
</td>
<td>
Hours
</td>
<td>
10-4:30 winter, to 5:00 summer
</td>
</tr>
<tr>
<td>
Location
</td>
<td>
185th St. &amp; Southern Blvd, the Bronx.
</td>
</tr>
<tr>
<td>
Admission
</td>
<td>
$1.00, but Tu,We,Th free
</td>
</tr>
<tr>
<td>
Subway
</td>
<td>
2, 5 to East Tremont Ave.
</td>
</tr>
<tr>
<td>
Telephone
</td>
<td>
212-933-1759
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="5" valign="TOP">
<i>Brooklyn Museum</i>
</td>
<td rowspan="5" valign="TOP">
Five floors of galleries contain American and ancient art. There
are American period rooms and architectural ornaments saved from
wreckers, such as a classical figure from Pennsylvania Station.
</td>
<td>
Hours
</td>
<td>
Wed-Sat, 10-5, Sun 12-5
</td>
</tr>
<tr>
<td>
Location
</td>
<td>
Eastern Parkway &amp; Washington Ave., Brooklyn.
</td>
</tr>
<tr>
<td>
Admission
</td>
<td>
Free
</td>
</tr>
<tr>
<td>
Subway
</td>
<td>
2,3 to Eastern Parkway.
</td>
</tr>
<tr>
<td>
Telephone
</td>
<td>
718-638-5000
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td rowspan="5" valign="TOP">
<i>New-York Historical Society</i>
</td>
<td rowspan="5" valign="TOP">
All the original paintings for Audubon's<i> Birds of America</i>
are here, as are exhibits of American decorative arts, New York
history, Hudson River school paintings, carriages, and glass paperweights.
</td>
<td>
Hours
</td>
<td>
Tues-Fri &amp; Sun, 1-5; Sat 10-5
</td>
</tr>
<tr>
<td>
Location
</td>
<td>
Central Park West &amp; 77th St.
</td>
</tr>
<tr>
<td>
Admission
</td>
<td>
Free
</td>
</tr>
<tr>
<td>
Subway
</td>
<td>
AA to 81st St.
</td>
</tr>
<tr>
<td>
Telephone
</td>
<td>
212-873-3400
</td>
</tr>
</tbody></table>
<br>
<br>
<p>
<a name="TOC_5">
</a></p><h2><a name="TOC_5">
Acknowledgments.
</a></h2><a name="TOC_5">
</a>
<br>
Many thanks are due to J. C. Blinn, who has done a large amount
of testing and assisted with the design of the program. He has
also written many of the more intelligible sentences in this document
and helped edit all of it. All phototypesetting programs on UNIX
are dependent on the work of J. F. Ossanna, whose assistance with
this program in particular has been most helpful. This program
is patterned on a table formatter originally written by J. F.
Gimpel. The assistance of T. A. Dolotta, B. W. Kernighan, and
J. N. Sturman is gratefully acknowledged.<br>
<a name="TOC_6">
<h2>
References.
</h2>
</a>
<br>
<dl>
<dt>
[1]
</dt>
<dd>
J. F. Ossanna,<i> NROFF/TROFF User's Manual,</i> Computing Science
Technical Report No. 54, Bell Laboratories, 1976.<br>
</dd>
<dt>
[2]
</dt>
<dd>
K. Thompson and D. M. Ritchie, "The UNIX Time-Sharing System,"
<i>Comm. ACM. </i><b>17</b>, pp. 365-75 (1974).<br>
</dd>
<dt>
[3]
</dt>
<dd>
B. W. Kernighan and L. L. Cherry, "A System for Typesetting
Mathematics," <i>Comm. ACM. </i><b>18</b>, pp. 151-57 (1975).<br>
</dd>
<dt>
[4]
</dt>
<dd>
M. E. Lesk,<i> Typing Documents on UNIX,</i> Bell Laboratories
internal memorandum.<br>
</dd>
<dt>
[5]
</dt>
<dd>
M. E. Lesk and B. W. Kernighan,<i> Computer Typesetting of Technical
Journals on UNIX,</i> Computing Science Technical Report No. 44,
Bell Laboratories, July 1976.<br>
</dd>
<dt>
[6]
</dt>
<dd>
J. R. Mashey and D. W. Smith,<i> PWB/MM -- Programmer's Workbench
Memorandum Macros,</i> Bell Laboratories memorandum.<br>
</dd>
</dl>
<a name="TOC_7">
<h2>
<center>
List of Tbl Command Characters and Words<br>
</center>
</h2>
</a>
<p>
delim $$<br>
gfont roman<br>
f1fP<br>
<br>
</p><center>
<table cellpadding="3" border="">
<tbody><tr>
<td align="CENTER">
<i>Command</i>
</td>
<td align="CENTER">
<i>Meaning</i>
</td>
<td align="CENTER">
<i>Section</i>
</td>
</tr>
<tr>
<td>
<b>a A</b>
</td>
<td>
Alphabetic subcolumn
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>allbox</b>
</td>
<td>
Draw box around all items
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>b B</b>
</td>
<td>
Boldface item
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>box</b>
</td>
<td>
Draw box around table
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>c C</b>
</td>
<td>
Centered column
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>center</b>
</td>
<td>
Center table in page
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>doublebox</b>
</td>
<td>
Doubled box around table
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>e E</b>
</td>
<td>
Equal width columns
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>expand</b>
</td>
<td>
Make table full line width
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>f F</b>
</td>
<td>
Font change
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>i I</b>
</td>
<td>
Italic item
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>l L</b>
</td>
<td>
Left adjusted column
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>n N</b>
</td>
<td>
Numerical column
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b></b><i>nnn</i>
</td>
<td>
Column separation
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>p P</b>
</td>
<td>
Point size change
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>r R</b>
</td>
<td>
Right adjusted column
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>s S</b>
</td>
<td>
Spanned item
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>t T</b>
</td>
<td>
Vertical spanning at top
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>tab </b>(<i>x</i>)
</td>
<td>
Change data separator character
</td>
<td align="RIGHT">
1
</td>
</tr>
<tr>
<td>
<b>$fat roman "T{" ~~ fat roman "T}"$</b>
</td>
<td>
Text block
</td>
<td align="RIGHT">
3
</td>
</tr>
<tr>
<td>
<b>v V</b>
</td>
<td>
Vertical spacing change
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>w W</b>
</td>
<td>
Minimum width value
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>.</b><i>xx</i>
</td>
<td>
Included <i>troff</i> command
</td>
<td align="RIGHT">
3
</td>
</tr>
<tr>
<td>
<b>[[bold-vertical]]</b>
</td>
<td>
Vertical line
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>[[bold-vertical]][[bold-vertical]]</b>
</td>
<td>
Double vertical line
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>^</b>
</td>
<td>
Vertical span
</td>
<td align="RIGHT">
2
</td>
</tr>
<tr>
<td>
<b>\^</b>
</td>
<td>
Vertical span
</td>
<td align="RIGHT">
3
</td>
</tr>
<tr>
<td>
<b>=</b>
</td>
<td>
Double horizontal line
</td>
<td align="RIGHT">
2,3
</td>
</tr>
<tr>
<td>
<b>$fat "_"$</b>
</td>
<td>
Horizontal line
</td>
<td align="RIGHT">
2,3
</td>
</tr>
<tr>
<td>
<b>$fat "\_"$</b>
</td>
<td>
Short horizontal line
</td>
<td align="RIGHT">
3
</td>
</tr>
</tbody></table>
</center>
<br>
<br>
<div id="grammalecte_menu_main_button_shadow_host" style="width: 0px; height: 0px;"></div></body><script src="Tbl%20--%20A%20Program%20to%20Format%20Tables_files/api.js"></script></html>