|
|
1.1 ! root 1: .\" @(#)tbl 6.1 (Berkeley) 5/22/86 ! 2: .\" ! 3: .EH 'USD:28-%''Tbl \(em A Program to Format Tables' ! 4: .OH 'Tbl \(em A Program to Format Tables''USD:28-%' ! 5: .if \nM=1 .RP ! 6: \" .TM 76-1274-5 39199 39199-11 ! 7: .if \n(tm>0 .ND June 11, 1976* ! 8: .TL ! 9: Tbl \(em A Program to Format Tables ! 10: .AU "MH 2C-569" 6377 ! 11: M. E. Lesk ! 12: .AI ! 13: .MH ! 14: .if \n(tm>0 .FS ! 15: .if \n(tm>0 * This printing revised through August 5, 1977 ! 16: .if \n(tm>0 .FE ! 17: .AB ! 18: .I ! 19: Tbl ! 20: .R ! 21: is a document formatting preprocessor for ! 22: .I ! 23: troff ! 24: .R ! 25: or ! 26: .I ! 27: nroff ! 28: .R ! 29: which makes ! 30: even ! 31: fairly complex tables easy to specify and enter. ! 32: It is available on ! 33: the ! 34: .SM ! 35: .UX ! 36: .NL ! 37: system ! 38: and on Honeywell 6000 ! 39: .SM ! 40: GCOS. ! 41: .NL ! 42: Tables are made up of columns which may be independently centered, right-adjusted, ! 43: left-adjusted, or aligned by decimal points. ! 44: Headings may be placed over single columns or groups of columns. ! 45: A table entry may contain equations, or may consist of several rows of text. ! 46: Horizontal or vertical lines may be drawn as desired ! 47: in the table, ! 48: and any table or element may be enclosed in a box. ! 49: For example: ! 50: .in 0 ! 51: .ll ! 52: .sp .5 ! 53: .TS ! 54: center, box; ! 55: c s s s ! 56: c s s s ! 57: c |c |c |c ! 58: c |c |c |c ! 59: l |n |n |n. ! 60: 1970 Federal Budget Transfers ! 61: \s-2(in billions of dollars)\s0 ! 62: = ! 63: State Taxes Money Net ! 64: \^ collected spent \^ ! 65: _ ! 66: New York 22.91 21.35 \-1.56 ! 67: New Jersey 8.33 6.96 \-1.37 ! 68: Connecticut 4.12 3.10 \-1.02 ! 69: Maine 0.74 0.67 \-0.07 ! 70: California 22.29 22.42 +0.13 ! 71: New Mexico 0.70 1.49 +0.79 ! 72: Georgia 3.30 4.28 +0.98 ! 73: Mississippi 1.15 2.32 +1.17 ! 74: Texas 9.33 11.13 +1.80 ! 75: .TE ! 76: .AE ! 77: .OK ! 78: Phototypesetting ! 79: Documentation ! 80: .CS 16 0 16 0 12 6 ! 81: .tr # ! 82: .de e1 ! 83: .nr \\$1 \\$2 ! 84: .. ! 85: .de e2 ! 86: .if !\\n(\\$1=\\n% .tm Error in example \\$1: referred to page \\n(\\$1, is on page \\n% ! 87: .rr \\$1 ! 88: .. ! 89: .di qq ! 90: .EQ ! 91: delim $$ ! 92: .EN ! 93: .di ! 94: .rm qq ! 95: .SH ! 96: Introduction. ! 97: .PP ! 98: .I ! 99: Tbl ! 100: .R ! 101: turns a simple description ! 102: of a table into a ! 103: .I ! 104: troff ! 105: .R ! 106: or ! 107: .I ! 108: nroff ! 109: .R ! 110: [1] ! 111: program (list of commands) that prints the table. ! 112: .I ! 113: Tbl ! 114: .R ! 115: may be used on the ! 116: .UX ! 117: .NL ! 118: [2] system and on the Honeywell 6000 ! 119: .SM ! 120: GCOS ! 121: .NL ! 122: system. ! 123: It ! 124: attempts to isolate a portion of a job that it can ! 125: successfully ! 126: handle and leave the remainder for other programs. ! 127: Thus ! 128: .I ! 129: tbl ! 130: .R ! 131: may be used with the equation formatting ! 132: program ! 133: .I ! 134: eqn ! 135: .R ! 136: [3] ! 137: or various ! 138: layout macro packages ! 139: [4,5,6], ! 140: but does not duplicate their functions. ! 141: .PP ! 142: This memorandum is divided into two parts. ! 143: First we give the rules for preparing ! 144: .I ! 145: tbl ! 146: .R ! 147: input; then some examples are shown. ! 148: The description of rules is precise but technical, and ! 149: the beginning user may prefer to read the examples first, ! 150: as they show some common table arrangements. ! 151: A section explaining how to invoke ! 152: .I ! 153: tbl ! 154: .R ! 155: precedes the examples. ! 156: To avoid repetition, henceforth read ! 157: .I ! 158: troff ! 159: .R ! 160: as ! 161: .I ! 162: ``troff ! 163: .R ! 164: or ! 165: .I ! 166: nroff.'' ! 167: .R ! 168: .ds . \^\s14.\s0 ! 169: .PP ! 170: The input to ! 171: .I ! 172: tbl ! 173: .R ! 174: is text for a document, with tables preceded by a ``\*.TS'' ! 175: (table start) ! 176: command and followed by a ``\*.TE'' ! 177: (table end) command. ! 178: .I ! 179: Tbl ! 180: .R ! 181: processes the tables, generating ! 182: .I ! 183: troff ! 184: .R ! 185: formatting commands, ! 186: and leaves the remainder of the text unchanged. ! 187: The ``\*.TS'' and ``\*.TE'' ! 188: lines are copied, too, so that ! 189: .I ! 190: troff ! 191: .R ! 192: page layout macros ! 193: (such as the memo formatting macros [4]\|) can use these lines ! 194: to delimit and place tables as they see fit. ! 195: In particular, any arguments on the ``\*.TS'' or ``\*.TE'' ! 196: lines ! 197: are copied but otherwise ignored, and may be used by document layout ! 198: macro commands. ! 199: .PP ! 200: The format of the input is as follows: ! 201: .DS ! 202: \&text ! 203: \&\*.TS ! 204: \&\fItable\fR ! 205: \&\*.TE ! 206: \&text ! 207: \&\*.TS ! 208: \&\fItable\fR ! 209: \&\*.TE ! 210: \&text ! 211: \&\&\*. \*. \*. ! 212: .DE ! 213: where the format of each table is as follows: ! 214: .DS ! 215: \&\*.TS ! 216: \fIoptions \fB;\fR ! 217: \fIformat \*. ! 218: data ! 219: \&\fR\*.TE ! 220: .DE ! 221: Each table is independent, and must contain formatting ! 222: information ! 223: followed by the data to be entered in the table. ! 224: The formatting information, which describes the ! 225: individual columns and rows of the table, may be preceded ! 226: by a few options that affect the entire table. ! 227: A detailed description of tables is given in the next section. ! 228: .sp .5 ! 229: .SH ! 230: Input commands. ! 231: .PP ! 232: As indicated above, a table contains, first, global options, ! 233: then a format section describing the layout of the table ! 234: entries, and then the data to be printed. The format and data ! 235: are always required, but not the options. ! 236: The various parts of the table are entered as follows: ! 237: .sp .5v ! 238: .IP 1) ! 239: O\s-2PTIONS.\s0 ! 240: There may be a single line of options ! 241: affecting the whole table. ! 242: If present, this line must follow the \*.TS line immediately ! 243: and must contain a list of option names ! 244: separated by spaces, tabs, or commas, and must be terminated by a semicolon. ! 245: The allowable options are: ! 246: .RS ! 247: .IP \fB##center\fR 13 ! 248: \(em center the table (default is left-adjust); ! 249: .IP \fB##expand\fR ! 250: \(em make the table as wide as the current line length; ! 251: .IP \fB##box\fR ! 252: \(em enclose the table in a box; ! 253: .IP \fB##allbox\fR ! 254: \(em enclose each item in the table in a box; ! 255: .IP \fB##doublebox\fR ! 256: \(em enclose the table in two boxes; ! 257: .IP \fB##tab#\fR(\fIx\fR\^) ! 258: \(em use \fIx\fR instead of tab to separate data items. ! 259: .IP \fB##linesize#(\fIn\fR\^) ! 260: \(em set lines or rules (e.g. from \fBbox\fR\^) in \fIn\fR point type; ! 261: .IP \fB##delim#(\fIxy\fR\^) ! 262: \(em recognize \fIx\fR and \fIy\fR as the \fIeqn\fR delimiters. ! 263: .RE ! 264: .LP ! 265: .ns ! 266: .IP ! 267: The ! 268: .I ! 269: tbl ! 270: .R ! 271: program ! 272: tries to keep boxed tables on one page by issuing ! 273: appropriate ``need'' (\fI\*.ne\fR\|) commands. ! 274: These requests are calculated from the number of lines in the tables, ! 275: and if there are spacing commands embedded in the input, these requests may be inaccurate; ! 276: use normal ! 277: .I ! 278: troff ! 279: .R ! 280: procedures, such as keep-release macros, in that case. ! 281: The user who must have a multi-page boxed table ! 282: should use macros designed for this purpose, ! 283: as explained below under `Usage.' ! 284: .sp .5v ! 285: .IP 2) 5 ! 286: F\s-2ORMAT\s0. ! 287: The format section of the table specifies the layout ! 288: of the columns. ! 289: Each line in this section corresponds to one line ! 290: of the table (except that the last line corresponds to all following ! 291: lines up to the next \*.T&, if any \(em see below), ! 292: and each line contains a key-letter for each column ! 293: of the table. ! 294: It is good practice to separate the key letters for each ! 295: column by spaces or tabs. ! 296: Each key-letter is one of the following: ! 297: .RS ! 298: .cs B 25 ! 299: .IP "\ \ \fBL\fR\ or\ \fBl\fR" 10 ! 300: to indicate a left-adjusted column entry; ! 301: .IP "\ \ \fBR\fR\ or\ \fBr\fR ! 302: to indicate a right-adjusted column entry; ! 303: .IP "\ \ \fBC\fR\ or\ \fBc\fR ! 304: to indicate a centered column entry; ! 305: .IP "\ \ \fBN\fR\ or\ \fBn\fR ! 306: to indicate a numerical column entry, to be aligned with other ! 307: numerical entries so that the units digits of numbers line up; ! 308: .IP "\ \ \fBA\fR\ or\ \fBa\fR ! 309: to indicate an alphabetic subcolumn; ! 310: all corresponding entries are aligned on the left, and positioned ! 311: so that the widest is centered within the column (see ! 312: example on page 12); ! 313: .IP "\ \ \fBS\fR\ ori\ \fBs\fR ! 314: to indicate a spanned heading, i.e. to indicate that the ! 315: entry from the previous column continues across this ! 316: column ! 317: (not allowed for the first column, obviously); or ! 318: .IP \ \ \fB\s+4\v'6p'^\v'-6p'\s0\fR ! 319: to indicate a vertically spanned heading, i.e. to indicate that ! 320: the entry from the previous row continues down through this row. ! 321: (Not allowed for the first row of the table, obviously). ! 322: .cs B ! 323: .RE ! 324: .LP ! 325: .ns ! 326: .IP ! 327: When numerical alignment is specified, a location for the decimal ! 328: point is sought. The rightmost dot (\*.) ! 329: adjacent to a digit is used as a decimal point; if there is no ! 330: dot adjoining a digit, the rightmost digit is used as a units digit; ! 331: if no alignment is indicated, the item is centered in the column. ! 332: However, the special non-printing character string \e& may be used ! 333: to override unconditionally dots ! 334: and digits, or to align alphabetic data; ! 335: this string lines up where a dot normally would, ! 336: and then disappears from the final output. ! 337: In the example below, the items shown at the left will be ! 338: aligned (in a numerical column) as shown on the right: ! 339: .KS ! 340: .TS ! 341: center; ! 342: l6 n. ! 343: 13 13 ! 344: 4\*.2 4\&\*.2 ! 345: 26\*.4\*.12 26\*.4\&\*.12 ! 346: abc abc ! 347: abc\e& abc\& ! 348: 43\e&3\*.22 43\&3\*.22 ! 349: 749\*.12 749\&\*.12 ! 350: .TE ! 351: .KE ! 352: .IP ! 353: \fBNote:\fR ! 354: If numerical data are used in the same column with wider ! 355: .B L ! 356: or ! 357: .B r ! 358: type table entries, the widest \fInumber\fR is centered relative ! 359: to the wider ! 360: .B L ! 361: or ! 362: .B r ! 363: items (\fBL\fR is used instead of \fBl\fR for readability; ! 364: they have the same meaning as key-letters). ! 365: Alignment within the numerical items is preserved. ! 366: This is similar to the behavior of ! 367: .B a ! 368: type data, as explained above. ! 369: However, ! 370: alphabetic subcolumns (requested by the ! 371: .B ! 372: a ! 373: .R ! 374: key-letter) ! 375: are always slightly indented relative to ! 376: .B ! 377: L ! 378: .R ! 379: items; ! 380: if necessary, the column width is increased to force this. ! 381: This is not true for \fBn\fR type entries. ! 382: .IP ! 383: .bd I 3 ! 384: .ft I ! 385: Warning: ! 386: .ft 1 ! 387: .bd I ! 388: the \fBn\fR and \fBa\fR items should not be used in ! 389: the same column. ! 390: .IP ! 391: For readability, the key-letters describing each column should ! 392: be separated by spaces. ! 393: The end of the format section is indicated by a period. ! 394: The layout of the key-letters in the format section resembles ! 395: the layout of the actual data in the table. ! 396: Thus a simple format might appear as: ! 397: .br ! 398: .ne 3 ! 399: .in +2 ! 400: .nf ! 401: c s s ! 402: l n n \*. ! 403: .fi ! 404: .in -2 ! 405: which specifies a table of three columns. The first line ! 406: of the table contains a heading centered across all three ! 407: columns; each remaining line contains a left-adjusted item ! 408: in the first column followed by two columns of numerical ! 409: data. ! 410: A sample table in this format might be: ! 411: .br ! 412: .ne 6v ! 413: .br ! 414: .in +4 ! 415: .TS ! 416: c s s ! 417: l n n. ! 418: Overall title ! 419: Item-a 34.22 9.1 ! 420: Item-b 12.65 .02 ! 421: Items: c,d,e 23 5.8 ! 422: Total 69.87 14.92 ! 423: .TE ! 424: .in -4 ! 425: There are some additional features of the key-letter system: ! 426: .RS ! 427: .IP "\fI##Horizontal lines#\fR" ! 428: \(em A key-letter may be replaced by `\(ul' ! 429: (underscore) to indicate ! 430: a horizontal line in place of the corresponding column entry, ! 431: or by `=' to indicate a double horizontal line. ! 432: If an adjacent column contains a horizontal line, or if ! 433: there are vertical lines adjoining this column, ! 434: this horizontal line is extended to meet the nearby lines. ! 435: If any data entry is provided for this column, it is ignored and ! 436: a warning message is printed. ! 437: .QQ do the D(x) and M(x) to draw a line of 'x' characters. ! 438: .QQ D will draw divided lines, M merged lines. thus - is simplh M(\(ru) ! 439: .IP "\fI##Vertical lines#\fR" ! 440: \(em A vertical bar may be placed between column key-letters. This will ! 441: cause a vertical line between the corresponding columns of the table. ! 442: A vertical bar to the left of the first key-letter ! 443: or to the right of the last one produces a line at the ! 444: edge of the table. ! 445: If two vertical bars appear between key-letters, a double vertical ! 446: line is drawn. ! 447: .IP "\fI##Space between columns#\fR" ! 448: \(em A number may follow the key-letter. This indicates the amount of separation ! 449: between this column and the next column. ! 450: The number normally specifies the separation in ! 451: .I ! 452: ens ! 453: .R ! 454: (one ! 455: en ! 456: .ne 3 ! 457: is about the width of the letter `n').* ! 458: .FS ! 459: * More precisely, an en is a number of points (1 point = 1/72 inch) ! 460: equal to half the current type size. ! 461: .FE ! 462: If the ``expand'' option is used, then these numbers are multiplied ! 463: by a constant such that the table is as wide as the current line length. ! 464: The default column separation number is 3. ! 465: If the separation is changed the worst case (largest space requested) governs. ! 466: .IP "\fI##Vertical spanning#\fR" ! 467: \(em Normally, vertically spanned items extending over several ! 468: rows of the table are centered in their vertical range. ! 469: If a key-letter is followed by ! 470: .B ! 471: t ! 472: .R ! 473: or ! 474: .B T , ! 475: any corresponding vertically spanned item ! 476: will begin at the top line of its range. ! 477: .IP "\fI##Font changes#\fR" ! 478: \(em A key-letter may be followed by a string containing a font ! 479: name or number ! 480: preceded by the letter ! 481: .B f ! 482: or ! 483: .B F . ! 484: This indicates that the corresponding column should be in a different ! 485: font from the default font (usually Roman). ! 486: All font names are one or two letters; a one-letter font ! 487: name should be separated from whatever follows by a space or tab. ! 488: The single letters ! 489: \f3B\f1, \f3b\f1, \f3I\f1, ! 490: and ! 491: \f3i\f1 ! 492: are shorter synonyms for ! 493: .B f\^B ! 494: and ! 495: .B f\^I . ! 496: Font change commands given with the table entries ! 497: override these specifications. ! 498: .IP "\fI##Point size changes#\fR" ! 499: \(em A key-letter may be followed by the letter ! 500: .B p ! 501: or ! 502: .B P ! 503: and a number to indicate the point size of the corresponding table entries. ! 504: The number may be a signed digit, in which case it is taken as ! 505: an increment or decrement ! 506: from the current point size. ! 507: If both a point size and a column separation value are given, ! 508: one or more blanks must separate them. ! 509: .IP "\fI##Vertical spacing changes#\fR" ! 510: \(em A key-letter may be followed by the letter ! 511: .B v ! 512: or ! 513: .B V ! 514: and a number to indicate the vertical line spacing to be used ! 515: within a multi-line corresponding table entry. ! 516: The number may be a signed digit, in which case it is taken as an increment ! 517: or decrement from the current vertical spacing. ! 518: A column separation value must be separated by blanks or some other ! 519: specification from a vertical spacing request. ! 520: This request has no effect unless the corresponding table entry ! 521: is a text block (see below). ! 522: .IP "\fI##Column width indication#\fR" ! 523: \(em A key-letter may be followed by the letter ! 524: .B w ! 525: or ! 526: .B W ! 527: and a width value in parentheses. ! 528: This width is used as a minimum column width. ! 529: If the largest element in the column is not as wide as the width value ! 530: given after the \fBw\fR, the largest element is assumed to be that wide. ! 531: If the largest element in the column is wider than the specified value, ! 532: its width is used. ! 533: The width is also used as a default line ! 534: length for included text blocks. ! 535: Normal ! 536: .I ! 537: troff ! 538: .R ! 539: units can be used to scale the width value; if none are used, ! 540: the default is ! 541: ens. ! 542: If the width specification is a unitless integer ! 543: the parentheses may be omitted. ! 544: If the width value is changed in a column, the \fIlast\fR one given controls. ! 545: .IP "\fI##Equal width columns#\fR" ! 546: \(em A key-letter may be followed by the letter ! 547: .B e ! 548: or ! 549: .B E ! 550: to indicate equal width columns. ! 551: All columns whose ! 552: key-letters are followed by \fBe\fR or \fBE\fR are made the same width. ! 553: This permits the user to get a group of regularly spaced ! 554: columns. ! 555: .IP "##\fBNote:\fR#" ! 556: The order of the above features is immaterial; they need not be separated ! 557: by spaces, except as indicated above to avoid ambiguities involving ! 558: point size and font changes. Thus ! 559: a numerical column entry in italic font and 12 point type with a minimum ! 560: width of 2.5 inches and separated by 6 ens from the next column could ! 561: be specified as ! 562: .in +5 ! 563: np12w(2\*.5i)f\|I 6 ! 564: .in -5 ! 565: .IP "\fI##Alternative notation#\fR" ! 566: \(em Instead of listing the format of successive lines of a table ! 567: on consecutive lines of the format section, ! 568: successive line formats may be given on the same line, separated ! 569: by commas, so that the format for the example ! 570: above might have been written: ! 571: .in +5 ! 572: c s s, l n n \*. ! 573: .in -5 ! 574: .IP "\fI##Default#\fR" ! 575: \(em Column descriptors missing from the end ! 576: of a format line are assumed to be \fBL\fR. ! 577: The longest line in the format section, however, ! 578: defines the number of columns ! 579: in the table; ! 580: extra columns in the data are ignored silently. ! 581: .QQ put in the diagnostics. ! 582: .RE ! 583: .sp .5v ! 584: .IP 3) ! 585: D\s-2ATA\s0. ! 586: The data for the table are typed after the format. ! 587: Normally, each table line is typed as one line of data. ! 588: Very long input lines can be broken: any line whose last character is ! 589: \e is combined with the following line (and the \e vanishes). ! 590: The data for different columns (the table entries) are separated by tabs, ! 591: or by whatever character has been specified in the option ! 592: .I tabs ! 593: option. ! 594: There are a few special cases: ! 595: .RS ! 596: .IP "\fI##Troff commands within tables\fR#" ! 597: \(em An input line ! 598: beginning with a `\*.' followed by anything ! 599: but a number is assumed to be a command to ! 600: .I ! 601: troff ! 602: .R ! 603: and is passed through unchanged, retaining its position in the table. ! 604: So, for example, space within a table may be produced by ``\*.sp'' ! 605: commands ! 606: in the data. ! 607: .IP "\fI##Full width horizontal lines\fR#" ! 608: \(em An input ! 609: .I line ! 610: containing only the character $fat "\(ul" $ (underscore) ! 611: or \fB=\fR (equal sign) is taken to be a single or double ! 612: line, respectively, extending the ! 613: full width ! 614: of the ! 615: .I table. ! 616: .IP "\fI##Single column horizontal lines\fR#" ! 617: \(em An input table ! 618: .I entry ! 619: containing only the character $fat "\(ul" $ or \fB=\fR ! 620: is taken to be a single or double line extending ! 621: the full width of the ! 622: .I column. ! 623: Such lines are extended to meet horizontal or vertical ! 624: lines adjoining this column. ! 625: To obtain these characters explicitly in a column, either ! 626: precede them by \e& or ! 627: follow them by a space before the usual tab or newline. ! 628: .IP "\fI##Short horizontal lines\fR#" ! 629: \(em An input table ! 630: .I entry ! 631: containing only the string $fat "\e\(ul"$ ! 632: is taken to be a single line as wide as the contents of ! 633: the column. It is not extended to meet ! 634: adjoining lines. ! 635: .IP "\fI##Vertically spanned items\fR#" ! 636: \(em An input table entry containing only the ! 637: character string ! 638: .ft B ! 639: \e\s+2\v'2p'^\v'-2p'\s0 ! 640: .ft R ! 641: indicates that the table entry immediately ! 642: above spans downward over this row. It is equivalent ! 643: to a table format key-letter of `^'. ! 644: .IP "\fI##Text blocks\fR#" ! 645: \(em In order to include a block of text as a table entry, ! 646: precede it by $fat roman "T{" $ and follow ! 647: it by $fat roman "T}" $. ! 648: Thus the sequence ! 649: .in +2 ! 650: .nf ! 651: \*. \*. \*. $fat roman "T{"$ ! 652: .I ! 653: block of ! 654: text ! 655: .R ! 656: $fat roman "T}"$ \*. \*. \*. ! 657: .in -2 ! 658: .fi ! 659: is the way to enter, as a single entry in the table, something ! 660: that cannot conveniently be typed as a simple string between ! 661: tabs. ! 662: Note that the $fat roman "T}" $ end delimiter must begin a line; ! 663: additional columns of data may follow after a tab on the same line. ! 664: See the example on page 11 for an illustration of included text blocks ! 665: .e1 aa 11 ! 666: in a table. ! 667: If more than twenty or thirty text blocks are used in a table, ! 668: various limits in the ! 669: .I ! 670: troff ! 671: .R ! 672: program are likely to be exceeded, ! 673: producing diagnostics such as `too many string/macro names' or `too many ! 674: number registers.' ! 675: .IP ! 676: Text blocks are pulled out from the table, processed separately by ! 677: .I ! 678: troff, ! 679: .R ! 680: and replaced in the table as a solid block. If no line length ! 681: is specified in the ! 682: .I ! 683: block of text ! 684: .R ! 685: itself, or in the table format, ! 686: the default is to use ! 687: $ L times C / (N+1) $ ! 688: where ! 689: .I ! 690: L ! 691: .R ! 692: is the current line length, ! 693: .I ! 694: C ! 695: .R ! 696: is the number of table columns spanned by the text, ! 697: and ! 698: .I ! 699: N ! 700: .R ! 701: is the total number of columns in the table. ! 702: The other parameters (point size, font, etc.) used in setting the ! 703: .I ! 704: block of text ! 705: .R ! 706: are those in effect at the beginning of the table (including ! 707: the effect of the ``\*.TS'' macro) ! 708: and any table format specifications of size, spacing and font, ! 709: using the \fBp\fR, \fBv\fR and \fBf\fR modifiers to the column key-letters. ! 710: Commands within the text block itself are also recognized, of course. ! 711: However, ! 712: .I troff ! 713: commands within the table data but not within the text block ! 714: do not affect that block. ! 715: .br ! 716: .di RR ! 717: . this is going down a rathole ! 718: .EQ ! 719: delim off ! 720: .EN ! 721: .di ! 722: .rm RR ! 723: .IP "##\fBWarnings:\fR#" ! 724: \(em Although any number of lines may be present in a table, ! 725: only the first 200 lines are used in calculating ! 726: the widths of the various columns. A multi-page table, ! 727: of course, may be arranged as several single-page tables ! 728: if this proves to be a problem. ! 729: Other difficulties with formatting may arise because, ! 730: in the calculation of column widths all table entries ! 731: are assumed to be in the font and size being used when ! 732: the ``\*.TS'' command was encountered, except for font and size changes ! 733: indicated (a) in the table format section and (b) ! 734: within the table data (as in the entry ! 735: \es+3\efIdata\efP\es0\|). ! 736: Therefore, although arbitrary ! 737: .I ! 738: troff ! 739: .R ! 740: requests may be sprinkled in a table, care must be taken ! 741: to avoid confusing the width calculations; ! 742: use requests such as `\*.ps' with care. ! 743: .tr ## ! 744: .sp .5v ! 745: .RE ! 746: .IP 4) ! 747: A\s-2DDITIONAL COMMAND LINES\s0. ! 748: If the format of a table must be changed after ! 749: many similar lines, as with sub-headings or summarizations, the ``\*.T&'' ! 750: (table continue) ! 751: command can be used ! 752: to change column parameters. ! 753: The outline of such a table input is: ! 754: .DS ! 755: .ft R ! 756: \&\*.TS ! 757: .ft I ! 758: \&options \fB;\fP ! 759: \&format \*. ! 760: \&data ! 761: \&\*. \*. \*. ! 762: .ft R ! 763: \&\*.T& ! 764: .ft I ! 765: \&format \*. ! 766: \&data ! 767: .ft R ! 768: \&\*.T& ! 769: .ft I ! 770: \&format \*. ! 771: \&data ! 772: .ft R ! 773: \&\*.TE ! 774: .DE ! 775: as in the examples on pages 10 and 13. ! 776: .e1 ab 10 ! 777: .e1 ac 13 ! 778: Using this procedure, each table line can be close to its corresponding format line. ! 779: .bd I 3 ! 780: .br ! 781: .sp 3p ! 782: .ft I ! 783: Warning: ! 784: .ft R ! 785: .bd I ! 786: it is not possible to change the number of columns, the space ! 787: between columns, the global options such as \fIbox,\fR ! 788: or the selection of columns to be made equal width. ! 789: .SH ! 790: Usage. ! 791: .PP ! 792: On ! 793: \s-2UNIX\s0, ! 794: .I ! 795: tbl ! 796: .R ! 797: can be run on a simple table with the command ! 798: .DS ! 799: tbl input-file | troff ! 800: .DE ! 801: but ! 802: for more complicated use, where there are several input files, ! 803: and they contain equations and \fIms\fR memorandum layout commands as well ! 804: as tables, the normal command would be ! 805: .DS ! 806: tbl file-1 file-2 \*. \*. \*. | eqn | troff \-ms ! 807: .DE ! 808: and, of course, the usual options may be used on the ! 809: .I ! 810: troff ! 811: .R ! 812: and ! 813: .I ! 814: eqn ! 815: .R ! 816: commands. The usage for ! 817: .I ! 818: nroff ! 819: .R ! 820: is similar ! 821: to that for ! 822: .I ! 823: troff, ! 824: .R ! 825: but only ! 826: \s-2TELETYPE\s+2\(rg Model 37 and ! 827: Diablo-mechanism (\s-2DASI\s0 or \s-2GSI\s0) ! 828: terminals can print boxed tables directly. ! 829: .PP ! 830: For the convenience of users employing line printers without ! 831: adequate driving tables or post-filters, there is a special ! 832: .I \-TX ! 833: command line option to ! 834: .I tbl ! 835: which produces output that does not have fractional line ! 836: motions in it. ! 837: The only other command line options recognized by ! 838: .I tbl ! 839: are ! 840: .I \-ms ! 841: and ! 842: .I \-mm ! 843: which are turned into ! 844: commands to fetch the corresponding macro files; ! 845: usually it is more convenient to place these arguments ! 846: on the ! 847: .I troff ! 848: part of the command line, ! 849: but they are accepted by ! 850: .I tbl ! 851: as well. ! 852: .PP ! 853: Note that when ! 854: .I ! 855: eqn ! 856: .R ! 857: and ! 858: .I ! 859: tbl ! 860: .R ! 861: are used together on the same file ! 862: .I ! 863: tbl ! 864: .R ! 865: should be used first. ! 866: If there are no equations within tables, ! 867: either order works, but it is usually faster ! 868: to run ! 869: .I ! 870: tbl ! 871: .R ! 872: first, since ! 873: .I ! 874: eqn ! 875: .R ! 876: normally produces a larger expansion of the input ! 877: than ! 878: .I ! 879: tbl. ! 880: .R ! 881: However, if there are equations within tables ! 882: (using the ! 883: .I ! 884: delim ! 885: .R ! 886: mechanism in ! 887: .I ! 888: eqn\fR), ! 889: .I ! 890: tbl ! 891: .R ! 892: must be first or the output will be scrambled. ! 893: Users must also beware of using equations in ! 894: \fBn\fR-style columns; this is nearly always wrong, ! 895: since ! 896: .I ! 897: tbl ! 898: .R ! 899: attempts to split numerical format items into two parts and this ! 900: is not possible with equations. ! 901: The user can defend against this by giving the ! 902: .I delim(xx) ! 903: table option; ! 904: this prevents splitting of numerical columns within the delimiters. ! 905: For example, if the ! 906: .I eqn ! 907: delimiters ! 908: are ! 909: .I $$ , ! 910: giving ! 911: .I delim($$) ! 912: a numerical column such as ! 913: ``1245 $+- 16$'' ! 914: will be divided after 1245, not after 16. ! 915: .PP ! 916: .I ! 917: Tbl ! 918: .R ! 919: limits tables to twenty columns; however, ! 920: use of more than 16 numerical columns may fail because of ! 921: limits in ! 922: .I ! 923: troff, ! 924: .R ! 925: producing the `too many number registers' message. ! 926: \fITroff\fR number registers used by ! 927: .I ! 928: tbl ! 929: .R ! 930: must be avoided by the user within tables; ! 931: these include two-digit names from 31 to 99, ! 932: and names of the forms ! 933: #\fIx\fR, \fIx\fR+, \fIx\fR\ |, \v'3p'^\v'-3p'\fIx\fR, and \fIx\fR\(mi, ! 934: where ! 935: \fIx\fR is any lower case letter. ! 936: The names ! 937: ##, #\(mi, and #^ are also used in certain circumstances. ! 938: To conserve number register names, the ! 939: \fBn\fR ! 940: and ! 941: \fBa\fR ! 942: formats share a register; ! 943: hence the restriction above that they may not be used in the same column. ! 944: .PP ! 945: For aid in writing layout macros, ! 946: .I ! 947: tbl ! 948: .R ! 949: defines a number register TW which is ! 950: the table width; it is defined by the time that the ``\*.TE'' macro ! 951: is invoked and may be used in the expansion of that macro. ! 952: More importantly, to assist in laying out multi-page boxed tables ! 953: the macro T# is defined to produce the bottom lines and side lines of a boxed ! 954: table, and then invoked at its end. By use of this macro ! 955: in the page footer a multi-page table can be boxed. ! 956: In particular, the ! 957: .I ! 958: ms ! 959: .R ! 960: macros can be used to print a multi-page boxed table with a repeated heading ! 961: by giving the ! 962: argument H to the ``\*.TS'' macro. ! 963: If the table start macro is written ! 964: .br ! 965: \&\*.TS H ! 966: .br ! 967: a line of the form ! 968: .br ! 969: \&\*.TH ! 970: .br ! 971: must be given in the table after any table heading (or at the start if none). ! 972: Material up to the ``\*.TH'' is placed at the top of each page of table; ! 973: the remaining lines in the table are placed on several pages as required. ! 974: Note that this is ! 975: .I ! 976: not ! 977: .R ! 978: a feature of ! 979: .I ! 980: tbl, ! 981: .R ! 982: but of the \fIms\fR layout macros. ! 983: .SH ! 984: Examples. ! 985: .PP ! 986: Here are some examples illustrating features of ! 987: .I ! 988: tbl. ! 989: .R ! 990: .ds T \|\h'.4n'\v'-.2n'\s6\zT\s0\s10\v'.2n'\h'-.4n'\(ci\|\s0 ! 991: The symbol \*T in the input represents a tab character. ! 992: .de IN ! 993: .po \\n(POu ! 994: .sp |\\n(.hu ! 995: .sp ! 996: .ne \\$1 ! 997: .mk ! 998: .B ! 999: Input: ! 1000: .R ! 1001: .sp .5 ! 1002: .nf ! 1003: .in +3n ! 1004: .. ! 1005: .de OU ! 1006: .br ! 1007: .in -3n ! 1008: .rt ! 1009: .po +3i ! 1010: .B ! 1011: Output: ! 1012: .R ! 1013: .sp .5 ! 1014: .. ! 1015: .rm TS ! 1016: .rm TE ! 1017: .nf ! 1018: .IN 2.5i ! 1019: \&\*.TS ! 1020: \&box; ! 1021: \&c c c ! 1022: \&l l l\*. ! 1023: \&Language\*TAuthors\*TRuns on ! 1024: \& ! 1025: \&Fortran\*TMany\*TAlmost anything ! 1026: \&PL/1\*TIBM\*T360/370 ! 1027: \&C\*TBTL\*T11/45,H6000,370 ! 1028: \&BLISS\*TCarnegie-Mellon\*TPDP-10,11 ! 1029: \&IDS\*THoneywell\*TH6000 ! 1030: \&Pascal\*TStanford\*T370 ! 1031: \&\*.TE ! 1032: .OU ! 1033: .TS ! 1034: box; ! 1035: c c c ! 1036: l l l. ! 1037: Language Authors Runs on ! 1038: ! 1039: Fortran Many Almost anything ! 1040: PL/1 IBM 360/370 ! 1041: C BTL 11/45,H6000,370 ! 1042: BLISS Carnegie-Mellon PDP-10,11 ! 1043: IDS Honeywell H6000 ! 1044: Pascal Stanford 370 ! 1045: .TE ! 1046: .IN 2.8i ! 1047: \&\*.TS ! 1048: \&allbox; ! 1049: \&c s s ! 1050: \&c c c ! 1051: \&n n n\*. ! 1052: \&AT&T Common Stock ! 1053: \&Year\*TPrice\*TDividend ! 1054: \&1971\*T41-54\*T$2\*.60 ! 1055: \&2\*T41-54\*T2\*.70 ! 1056: \&3\*T46-55\*T2\*.87 ! 1057: \&4\*T40-53\*T3\*.24 ! 1058: \&5\*T45-52\*T3\*.40 ! 1059: \&6\*T51-59\*T\*.95* ! 1060: \&\*.TE ! 1061: \&* (first quarter only) ! 1062: .OU ! 1063: .TS ! 1064: allbox; ! 1065: c s s ! 1066: c c c ! 1067: n n n. ! 1068: AT&T Common Stock ! 1069: Year Price Dividend ! 1070: 1971 41-54 $2.60 ! 1071: 2 41-54 2.70 ! 1072: 3 46-55 2.87 ! 1073: 4 40-53 3.24 ! 1074: 5 45-52 3.40 ! 1075: 6 51-59 .95* ! 1076: .TE ! 1077: * (first quarter only) ! 1078: .IN 4i ! 1079: \&\*.TS ! 1080: \&box; ! 1081: \&c s s ! 1082: \&c | c | c ! 1083: \&l | l | n\*. ! 1084: \&Major New York Bridges ! 1085: \&= ! 1086: \&Bridge\*TDesigner\*TLength ! 1087: \&\(ul ! 1088: \&Brooklyn\*TJ\*. A\*. Roebling\*T1595 ! 1089: \&Manhattan\*TG\*. Lindenthal\*T1470 ! 1090: \&Williamsburg\*TL\*. L\*. Buck\*T1600 ! 1091: \&\(ul ! 1092: \&Queensborough\*TPalmer &\*T1182 ! 1093: \&\*T Hornbostel ! 1094: \&\(ul ! 1095: \&\*T\*T1380 ! 1096: \&Triborough\*TO\*. H\*. Ammann\*T\(ul ! 1097: \&\*T\*T383 ! 1098: \&\(ul ! 1099: \&Bronx Whitestone\*TO\*. H\*. Ammann\*T2300 ! 1100: \&Throgs Neck\*TO\*. H\*. Ammann\*T1800 ! 1101: \&\(ul ! 1102: \&George Washington\*TO\*. H\*. Ammann\*T3500 ! 1103: \&\*.TE ! 1104: .OU ! 1105: .TS ! 1106: box; ! 1107: c s s ! 1108: c | c | c ! 1109: l | l | n. ! 1110: Major New York Bridges ! 1111: = ! 1112: Bridge Designer Length ! 1113: _ ! 1114: Brooklyn J. A. Roebling 1595 ! 1115: Manhattan G. Lindenthal 1470 ! 1116: Williamsburg L. L. Buck 1600 ! 1117: _ ! 1118: Queensborough Palmer & 1182 ! 1119: Hornbostel ! 1120: _ ! 1121: 1380 ! 1122: Triborough O. H. Ammann _ ! 1123: 383 ! 1124: _ ! 1125: Bronx Whitestone O. H. Ammann 2300 ! 1126: Throgs Neck O. H. Ammann 1800 ! 1127: _ ! 1128: George Washington O. H. Ammann 3500 ! 1129: .TE ! 1130: .IN 3.0i ! 1131: \&\*.TS ! 1132: \&c c ! 1133: \&np-2 | n | \*. ! 1134: \&\*TStack ! 1135: \&\*T\(ul ! 1136: \&1\*T46 ! 1137: \&\*T\(ul ! 1138: \&2\*T23 ! 1139: \&\*T\(ul ! 1140: \&3\*T15 ! 1141: \&\*T\(ul ! 1142: \&4\*T6\*.5 ! 1143: \&\*T\(ul ! 1144: \&5\*T2\*.1 ! 1145: \&\*T\(ul ! 1146: \&\*.TE ! 1147: .OU ! 1148: .TS ! 1149: c c ! 1150: np-2 | n |. ! 1151: Stack ! 1152: _ ! 1153: 1 46 ! 1154: _ ! 1155: 2 23 ! 1156: _ ! 1157: 3 15 ! 1158: _ ! 1159: 4 6.5 ! 1160: _ ! 1161: 5 2.1 ! 1162: _ ! 1163: .TE ! 1164: .IN 2.5i ! 1165: \&\*.TS ! 1166: \&box; ! 1167: \&L L L ! 1168: \&L L \(ul ! 1169: \&L L | LB ! 1170: \&L L \(ul ! 1171: \&L L L\*. ! 1172: \&january\*Tfebruary\*Tmarch ! 1173: \&april\*Tmay ! 1174: \&june\*Tjuly\*TMonths ! 1175: \&august\*Tseptember ! 1176: \&october\*Tnovember\*Tdecember ! 1177: \&\*.TE ! 1178: .OU ! 1179: .TS ! 1180: box; ! 1181: L L L ! 1182: L L _ ! 1183: L L | LB ! 1184: L L _ ! 1185: L L L. ! 1186: january february march ! 1187: april may ! 1188: june july Months ! 1189: august september ! 1190: october november december ! 1191: .TE ! 1192: .IN 5.0i ! 1193: .e2 ab ! 1194: \&\*.TS ! 1195: \&box; ! 1196: \&cfB s s s\*. ! 1197: \&Composition of Foods ! 1198: \&\(ul ! 1199: \&\*.T& ! 1200: \&c | c s s ! 1201: \&c | c s s ! 1202: \&c | c | c | c\*. ! 1203: \&Food\*TPercent by Weight ! 1204: \&\e^\*T\(ul ! 1205: \&\e^\*TProtein\*TFat\*TCarbo- ! 1206: \&\e^\*T\e^\*T\e^\*Thydrate ! 1207: \&\(ul ! 1208: \&\*.T& ! 1209: \&l | n | n | n\*. ! 1210: \&Apples\*T\*.4\*T\*.5\*T13\*.0 ! 1211: \&Halibut\*T18\*.4\*T5\*.2\*T\*. \*. \*. ! 1212: \&Lima beans\*T7\*.5\*T\*.8\*T22\*.0 ! 1213: \&Milk\*T3\*.3\*T4\*.0\*T5\*.0 ! 1214: \&Mushrooms\*T3\*.5\*T\*.4\*T6\*.0 ! 1215: \&Rye bread\*T9\*.0\*T\*.6\*T52\*.7 ! 1216: \&\*.TE ! 1217: .OU ! 1218: .TS ! 1219: box; ! 1220: cfB s s s. ! 1221: Composition of Foods ! 1222: _ ! 1223: .T& ! 1224: c |c s s ! 1225: c |c s s ! 1226: c |c |c |c. ! 1227: Food Percent by Weight ! 1228: \^ _ ! 1229: \^ Protein Fat Carbo- ! 1230: \^ \^ \^ hydrate ! 1231: _ ! 1232: .T& ! 1233: l |n |n |n. ! 1234: Apples .4 .5 13.0 ! 1235: Halibut 18.4 5.2 ... ! 1236: Lima beans 7.5 .8 22.0 ! 1237: Milk 3.3 4.0 5.0 ! 1238: Mushrooms 3.5 .4 6.0 ! 1239: Rye bread 9.0 .6 52.7 ! 1240: .TE ! 1241: .IN 3.7i ! 1242: .e2 aa ! 1243: \&\*.TS ! 1244: \&allbox; ! 1245: \&cfI s s ! 1246: \&c cw(1i) cw(1i) ! 1247: \&lp9 lp9 lp9\*. ! 1248: \&New York Area Rocks ! 1249: \&Era\*TFormation\*TAge (years) ! 1250: \&Precambrian\*TReading Prong\*T>1 billion ! 1251: \&Paleozoic\*TManhattan Prong\*T400 million ! 1252: \&Mesozoic\*TT{ ! 1253: \&\*.na ! 1254: \&Newark Basin, incl\*. ! 1255: \&Stockton, Lockatong, and Brunswick ! 1256: \&formations; also Watchungs ! 1257: \&and Palisades\*. ! 1258: \&T}\*T200 million ! 1259: \&Cenozoic\*TCoastal Plain\*TT{ ! 1260: \&On Long Island 30,000 years; ! 1261: \&Cretaceous sediments redeposited ! 1262: \&by recent glaciation\*. ! 1263: \&\*.ad ! 1264: \&T} ! 1265: \&\*.TE ! 1266: .OU ! 1267: .fi ! 1268: .TS ! 1269: allbox; ! 1270: cfI s s ! 1271: c cw(1i) cw(1i) ! 1272: lp9 lp9 lp9. ! 1273: New York Area Rocks ! 1274: Era Formation Age (years) ! 1275: Precambrian Reading Prong >1 billion ! 1276: Paleozoic Manhattan Prong 400 million ! 1277: Mesozoic T{ ! 1278: .na ! 1279: Newark Basin, incl. ! 1280: Stockton, Lockatong, and Brunswick ! 1281: formations; also Watchungs ! 1282: and Palisades. ! 1283: T} 200 million ! 1284: Cenozoic Coastal Plain T{ ! 1285: On Long Island 30,000 years; ! 1286: Cretaceous sediments redeposited ! 1287: by recent glaciation. ! 1288: .ad ! 1289: T} ! 1290: .TE ! 1291: .IN 2i ! 1292: \&\*.EQ ! 1293: \&delim $$ ! 1294: \&\*.EN ! 1295: .sp ! 1296: \&\*. \*. \*. ! 1297: .sp ! 1298: \&\*.TS ! 1299: \&doublebox; ! 1300: \&c c ! 1301: \&l l\*. ! 1302: \&Name\*TDefinition ! 1303: \&\*.sp ! 1304: \&\*.vs +2p ! 1305: \&Gamma\*T$GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$ ! 1306: \&Sine\*T$sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ ! 1307: \&Error\*T$ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$ ! 1308: \&Bessel\*T$ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $ ! 1309: \&Zeta\*T$ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s > 1)$ ! 1310: \&\*.vs -2p ! 1311: \&\*.TE ! 1312: .di qq ! 1313: .EQ ! 1314: delim $$ ! 1315: .EN ! 1316: .di ! 1317: .rm qq ! 1318: .rs ! 1319: .OU ! 1320: .TS ! 1321: doublebox; ! 1322: c c ! 1323: l l. ! 1324: Name Definition ! 1325: .sp ! 1326: .vs +2p ! 1327: Gamma $GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$ ! 1328: Sine $sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ ! 1329: Error $ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$ ! 1330: Bessel $ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $ ! 1331: Zeta $ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s > 1)$ ! 1332: .vs -2p ! 1333: .TE ! 1334: .ds : \|:\| ! 1335: .IN 2i ! 1336: \&\*.TS ! 1337: \&box, tab(\*:); ! 1338: \&cb s s s s ! 1339: \&cp-2 s s s s ! 1340: \&c |\|| c | c | c | c ! 1341: \&c |\|| c | c | c | c ! 1342: \&r2 |\|| n2 | n2 | n2 | n\*. ! 1343: \&Readability of Text ! 1344: \&Line Width and Leading for 10-Point Type ! 1345: \&= ! 1346: \&Line\*:Set\*:1-Point\*:2-Point\*:4-Point ! 1347: \&Width\*:Solid\*:Leading\*:Leading\*:Leading ! 1348: \&_ ! 1349: \&9 Pica\*:\e-9\*.3\*:\e-6\*.0\*:\e-5\*.3\*:\e-7\*.1 ! 1350: \&14 Pica\*:\e-4\*.5\*:\e-0\*.6\*:\e-0\*.3\*:\e-1\*.7 ! 1351: \&19 Pica\*:\e-5\*.0\*:\e-5\*.1\*: 0\*.0\*:\e-2\*.0 ! 1352: \&31 Pica\*:\e-3\*.7\*:\e-3\*.8\*:\e-2\*.4\*:\e-3\*.6 ! 1353: \&43 Pica\*:\e-9\*.1\*:\e-9\*.0\*:\e-5\*.9\*:\e-8\*.8 ! 1354: \&\*.TE ! 1355: .OU ! 1356: .TS ! 1357: box, tab(:); ! 1358: cb s s s s ! 1359: cp-2 s s s s ! 1360: c ||c |c |c |c ! 1361: c ||c |c |c |c ! 1362: r2 ||n2 |n2 |n2 |n. ! 1363: Readability of Text ! 1364: Line Width and Leading for 10-Point Type ! 1365: = ! 1366: Line:Set:1-Point:2-Point:4-Point ! 1367: Width:Solid:Leading:Leading:Leading ! 1368: _ ! 1369: 9 Pica:\-9.3:\-6.0:\-5.3:\-7.1 ! 1370: 14 Pica:\-4.5:\-0.6:\-0.3:\-1.7 ! 1371: 19 Pica:\-5.0:\-5.1: 0.0:\-2.0 ! 1372: 31 Pica:\-3.7:\-3.8:\-2.4:\-3.6 ! 1373: 43 Pica:\-9.1:\-9.0:\-5.9:\-8.8 ! 1374: .TE ! 1375: .IN 7i ! 1376: .e2 ac ! 1377: \&\*.TS ! 1378: \&c s ! 1379: \&cip-2 s ! 1380: \&l n ! 1381: \&a n\*. ! 1382: \&Some London Transport Statistics ! 1383: \&(Year 1964) ! 1384: \&Railway route miles\*T244 ! 1385: \&Tube\*T66 ! 1386: \&Sub-surface\*T22 ! 1387: \&Surface\*T156 ! 1388: \&\*.sp \*.5 ! 1389: \&\*.T& ! 1390: \&l r ! 1391: \&a r\*. ! 1392: \&Passenger traffic \e- railway ! 1393: \&Journeys\*T674 million ! 1394: \&Average length\*T4\*.55 miles ! 1395: \&Passenger miles\*T3,066 million ! 1396: \&\*.T& ! 1397: \&l r ! 1398: \&a r\*. ! 1399: \&Passenger traffic \e- road ! 1400: \&Journeys\*T2,252 million ! 1401: \&Average length\*T2\*.26 miles ! 1402: \&Passenger miles\*T5,094 million ! 1403: \&\*.T& ! 1404: \&l n ! 1405: \&a n\*. ! 1406: \&\*.sp \*.5 ! 1407: \&Vehicles\*T12,521 ! 1408: \&Railway motor cars\*T2,905 ! 1409: \&Railway trailer cars\*T1,269 ! 1410: \&Total railway\*T4,174 ! 1411: \&Omnibuses\*T8,347 ! 1412: \&\*.T& ! 1413: \&l n ! 1414: \&a n\*. ! 1415: \&\*.sp \*.5 ! 1416: \&Staff\*T73,739 ! 1417: \&Administrative, etc\*.\*T5,582 ! 1418: \&Civil engineering\*T5,134 ! 1419: \&Electrical eng\*.\*T1,714 ! 1420: \&Mech\*. eng\*. \e- railway\*T4,310 ! 1421: \&Mech\*. eng\*. \e- road\*T9,152 ! 1422: \&Railway operations\*T8,930 ! 1423: \&Road operations\*T35,946 ! 1424: \&Other\*T2,971 ! 1425: \&\*.TE ! 1426: .OU ! 1427: .TS ! 1428: c s ! 1429: cip-2 s ! 1430: l n ! 1431: a n. ! 1432: Some London Transport Statistics ! 1433: (Year 1964) ! 1434: Railway route miles 244 ! 1435: Tube 66 ! 1436: Sub-surface 22 ! 1437: Surface 156 ! 1438: .sp .5 ! 1439: .T& ! 1440: l r ! 1441: a r. ! 1442: Passenger traffic \(mi railway ! 1443: Journeys 674 million ! 1444: Average length 4.55 miles ! 1445: Passenger miles 3,066 million ! 1446: .T& ! 1447: l r ! 1448: a r. ! 1449: Passenger traffic \(mi road ! 1450: Journeys 2,252 million ! 1451: Average length 2.26 miles ! 1452: Passenger miles 5,094 million ! 1453: .T& ! 1454: l n ! 1455: a n. ! 1456: .sp .5 ! 1457: Vehicles 12,521 ! 1458: Railway motor cars 2,905 ! 1459: Railway trailer cars 1,269 ! 1460: Total railway 4,174 ! 1461: Omnibuses 8,347 ! 1462: .T& ! 1463: l n ! 1464: a n. ! 1465: .sp .5 ! 1466: Staff 73,739 ! 1467: Administrative, etc. 5,582 ! 1468: Civil engineering 5,134 ! 1469: Electrical eng. 1,714 ! 1470: Mech. eng. \(mi railway 4,310 ! 1471: Mech. eng. \(mi road 9,152 ! 1472: Railway operations 8,930 ! 1473: Road operations 35,946 ! 1474: Other 2,971 ! 1475: .TE ! 1476: .po \n(POu ! 1477: .sp |\n(.hu ! 1478: .de IN ! 1479: .sp ! 1480: .ne 1i ! 1481: .B ! 1482: Input: ! 1483: .R ! 1484: .sp .5 ! 1485: .in +3n ! 1486: .nf ! 1487: .. ! 1488: .de OU ! 1489: .sp ! 1490: .in -3n ! 1491: .ne 1i ! 1492: .B ! 1493: Output: ! 1494: .R ! 1495: .sp .5 ! 1496: .. ! 1497: .ns ! 1498: .EQ ! 1499: delim off ! 1500: .EN ! 1501: .IN ! 1502: \&\*.ps 8 ! 1503: \&\*.vs 10p ! 1504: \&\*.TS ! 1505: center box; ! 1506: \&c s s ! 1507: \&ci s s ! 1508: \&c c c ! 1509: \&lB l n\*. ! 1510: \&New Jersey Representatives ! 1511: \&(Democrats) ! 1512: \&\*.sp \*.5 ! 1513: \&Name\*TOffice address\*TPhone ! 1514: \&\*.sp \*.5 ! 1515: \&James J\*. Florio\*T23 S\*. White Horse Pike, Somerdale 08083\*T609-627-8222 ! 1516: \&William J\*. Hughes\*T2920 Atlantic Ave\*., Atlantic City 08401\*T609-345-4844 ! 1517: \&James J\*. Howard\*T801 Bangs Ave\*., Asbury Park 07712\*T201-774-1600 ! 1518: \&Frank Thompson, Jr\*.\*T10 Rutgers Pl\*., Trenton 08618\*T609-599-1619 ! 1519: \&Andrew Maguire\*T115 W\*. Passaic St\*., Rochelle Park 07662\*T201-843-0240 ! 1520: \&Robert A\*. Roe\*TU\*.S\*.P\*.O\*., 194 Ward St\*., Paterson 07510\*T201-523-5152 ! 1521: \&Henry Helstoski\*T666 Paterson Ave\*., East Rutherford 07073\*T201-939-9090 ! 1522: \&Peter W\*. Rodino, Jr\*.\*TSuite 1435A, 970 Broad St\*., Newark 07102\*T201-645-3213 ! 1523: \&Joseph G\*. Minish\*T308 Main St\*., Orange 07050\*T201-645-6363 ! 1524: \&Helen S\*. Meyner\*T32 Bridge St\*., Lambertville 08530\*T609-397-1830 ! 1525: \&Dominick V\*. Daniels\*T895 Bergen Ave\*., Jersey City 07306\*T201-659-7700 ! 1526: \&Edward J\*. Patten\*TNatl\*. Bank Bldg\*., Perth Amboy 08861\*T201-826-4610 ! 1527: \&\*.sp \*.5 ! 1528: \&\*.T& ! 1529: \&ci s s ! 1530: \&lB l n\*. ! 1531: \&(Republicans) ! 1532: \&\*.sp \*.5v ! 1533: \&Millicent Fenwick\*T41 N\*. Bridge St\*., Somerville 08876\*T201-722-8200 ! 1534: \&Edwin B\*. Forsythe\*T301 Mill St\*., Moorestown 08057\*T609-235-6622 ! 1535: \&Matthew J\*. Rinaldo\*T1961 Morris Ave\*., Union 07083\*T201-687-4235 ! 1536: \&\*.TE ! 1537: \&\*.ps 10 ! 1538: \&\*.vs 12p ! 1539: .ne 3.2i ! 1540: .OU ! 1541: .ps 8 ! 1542: .vs 10p ! 1543: .TS ! 1544: center box; ! 1545: c s s ! 1546: ci s s ! 1547: c c c ! 1548: lB l n. ! 1549: New Jersey Representatives ! 1550: (Democrats) ! 1551: .sp .5 ! 1552: Name Office address Phone ! 1553: .sp .5 ! 1554: James J. Florio 23 S. White Horse Pike, Somerdale 08083 609-627-8222 ! 1555: William J. Hughes 2920 Atlantic Ave., Atlantic City 08401 609-345-4844 ! 1556: James J. Howard 801 Bangs Ave., Asbury Park 07712 201-774-1600 ! 1557: Frank Thompson, Jr. 10 Rutgers Pl., Trenton 08618 609-599-1619 ! 1558: Andrew Maguire 115 W. Passaic St., Rochelle Park 07662 201-843-0240 ! 1559: Robert A. Roe U.S.P.O., 194 Ward St., Paterson 07510 201-523-5152 ! 1560: Henry Helstoski 666 Paterson Ave., East Rutherford 07073 201-939-9090 ! 1561: Peter W. Rodino, Jr. Suite 1435A, 970 Broad St., Newark 07102 201-645-3213 ! 1562: Joseph G. Minish 308 Main St., Orange 07050 201-645-6363 ! 1563: Helen S. Meyner 32 Bridge St., Lambertville 08530 609-397-1830 ! 1564: Dominick V. Daniels 895 Bergen Ave., Jersey City 07306 201-659-7700 ! 1565: Edward J. Patten Natl. Bank Bldg., Perth Amboy 08861 201-826-4610 ! 1566: .sp .5 ! 1567: .T& ! 1568: ci s s ! 1569: lB l n. ! 1570: (Republicans) ! 1571: .sp .5v ! 1572: Millicent Fenwick 41 N. Bridge St., Somerville 08876 201-722-8200 ! 1573: Edwin B. Forsythe 301 Mill St., Moorestown 08057 609-235-6622 ! 1574: Matthew J. Rinaldo 1961 Morris Ave., Union 07083 201-687-4235 ! 1575: .TE ! 1576: .ps 10 ! 1577: .vs 12p ! 1578: .sp ! 1579: .fi ! 1580: This is a paragraph of normal text placed here only to indicate where ! 1581: the left and right margins are. In this way the reader can judge ! 1582: the appearance of centered tables or expanded tables, and observe ! 1583: how such tables are formatted. ! 1584: .IN ! 1585: \&\*.TS ! 1586: \&expand; ! 1587: \&c s s s ! 1588: \&c c c c ! 1589: \&l l n n\*. ! 1590: \&Bell Labs Locations ! 1591: \&Name\*TAddress\*TArea Code\*TPhone ! 1592: \&Holmdel\*THolmdel, N\*. J\*. 07733\*T201\*T949-3000 ! 1593: \&Murray Hill\*TMurray Hill, N\*. J\*. 07974\*T201\*T582-6377 ! 1594: \&Whippany\*TWhippany, N\*. J\*. 07981\*T201\*T386-3000 ! 1595: \&Indian Hill\*TNaperville, Illinois 60540\*T312\*T690-2000 ! 1596: \&\*.TE ! 1597: .ne 1.3i ! 1598: .OU ! 1599: .TS ! 1600: expand; ! 1601: c s s s ! 1602: c c c c ! 1603: l l n n. ! 1604: Bell Labs Locations ! 1605: Name Address Area Code Phone ! 1606: Holmdel Holmdel, N. J. 07733 201 949-3000 ! 1607: Murray Hill Murray Hill, N. J. 07974 201 582-6377 ! 1608: Whippany Whippany, N. J. 07981 201 386-3000 ! 1609: Indian Hill Naperville, Illinois 60540 312 690-2000 ! 1610: .TE ! 1611: .br ! 1612: .ps 8 ! 1613: .vs 9p ! 1614: .ne 5i ! 1615: .IN ! 1616: \&\*.TS ! 1617: \&box; ! 1618: \&cb s s s ! 1619: \&c | c | c s ! 1620: \<iw(1i) | ltw(2i) | lp8 | lw(1\*.5i)p8\*. ! 1621: \&Some Interesting Places ! 1622: \&_ ! 1623: \&Name\*TDescription\*TPractical Information ! 1624: \&_ ! 1625: \&T{ ! 1626: \&American Museum of Natural History ! 1627: \&T}\*TT{ ! 1628: \&The collections fill 11\*.5 acres (Michelin) or 25 acres (MTA) ! 1629: \&of exhibition halls on four floors\*. There is a full-sized replica ! 1630: \&of a blue whale and the world's largest star sapphire (stolen in 1964)\*. ! 1631: \&T}\*THours\*T10-5, ex\*. Sun 11-5, Wed\*. to 9 ! 1632: \&\e^\*T\e^\*TLocation\*TT{ ! 1633: \&Central Park West & 79th St\*. ! 1634: \&T} ! 1635: \&\e^\*T\e^\*TAdmission\*TDonation: $1\*.00 asked ! 1636: \&\e^\*T\e^\*TSubway\*TAA to 81st St\*. ! 1637: \&\e^\*T\e^\*TTelephone\*T212-873-4225 ! 1638: \&_ ! 1639: \&Bronx Zoo\*TT{ ! 1640: \&About a mile long and \*.6 mile wide, this is the largest zoo in America\*. ! 1641: \&A lion eats 18 pounds ! 1642: \&of meat a day while a sea lion eats 15 pounds of fish\*. ! 1643: \&T}\*THours\*TT{ ! 1644: \&10-4:30 winter, to 5:00 summer ! 1645: \&T} ! 1646: \&\e^\*T\e^\*TLocation\*TT{ ! 1647: \&185th St\*. & Southern Blvd, the Bronx\*. ! 1648: \&T} ! 1649: \&\e^\*T\e^\*TAdmission\*T$1\*.00, but Tu,We,Th free ! 1650: \&\e^\*T\e^\*TSubway\*T2, 5 to East Tremont Ave\*. ! 1651: \&\e^\*T\e^\*TTelephone\*T212-933-1759 ! 1652: \&_ ! 1653: \&Brooklyn Museum\*TT{ ! 1654: \&Five floors of galleries contain American and ancient art\*. ! 1655: \&There are American period rooms and architectural ornaments saved ! 1656: \&from wreckers, such as a classical figure from Pennsylvania Station\*. ! 1657: \&T}\*THours\*TWed-Sat, 10-5, Sun 12-5 ! 1658: \&\e^\*T\e^\*TLocation\*TT{ ! 1659: \&Eastern Parkway & Washington Ave\*., Brooklyn\*. ! 1660: \&T} ! 1661: \&\e^\*T\e^\*TAdmission\*TFree ! 1662: \&\e^\*T\e^\*TSubway\*T2,3 to Eastern Parkway\*. ! 1663: \&\e^\*T\e^\*TTelephone\*T718-638-5000 ! 1664: \&_ ! 1665: \&T{ ! 1666: \&New-York Historical Society ! 1667: \&T}\*TT{ ! 1668: \&All the original paintings for Audubon's ! 1669: \&\*.I ! 1670: \&Birds of America ! 1671: \&\*.R ! 1672: \&are here, as are exhibits of American decorative arts, New York history, ! 1673: \&Hudson River school paintings, carriages, and glass paperweights\*. ! 1674: \&T}\*THours\*TT{ ! 1675: \&Tues-Fri & Sun, 1-5; Sat 10-5 ! 1676: \&T} ! 1677: \&\e^\*T\e^\*TLocation\*TT{ ! 1678: \&Central Park West & 77th St\*. ! 1679: \&T} ! 1680: \&\e^\*T\e^\*TAdmission\*TFree ! 1681: \&\e^\*T\e^\*TSubway\*TAA to 81st St\*. ! 1682: \&\e^\*T\e^\*TTelephone\*T212-873-3400 ! 1683: \&\*.TE ! 1684: .br ! 1685: .ps \n(PS ! 1686: .vs \n(VSp ! 1687: .OU ! 1688: .fi ! 1689: .rr 10 11 12 13 14 15 16 17 18 19 20 21 22 98 99 ! 1690: .rr 60 61 62 63 64 65 66 67 68 69 70 ! 1691: .rr 43 44 45 46 47 48 49 50 51 52 53 ! 1692: .rr 83 84 85 86 87 88 89 90 91 92 93 ! 1693: .rr #a ! 1694: .rr #b ! 1695: .rr #c ! 1696: .rr #d ! 1697: .rr #e ! 1698: .rr YY ! 1699: .rr OJ ! 1700: .rr P ! 1701: .rr AV CW GW DW FL KN SJ A1 A2 A3 I1 I2 I3 ! 1702: .in 0 ! 1703: .hy 1 ! 1704: .TS ! 1705: box; ! 1706: cb s s s ! 1707: c | c | c s ! 1708: ltiw(1i) | ltw(2i) | lp8| lw(1.5i)p8. ! 1709: Some Interesting Places ! 1710: _ ! 1711: Name Description Practical Information ! 1712: _ ! 1713: T{ ! 1714: American Museum of Natural History ! 1715: T} T{ ! 1716: The collections fill 11.5 acres (Michelin) or 25 acres (MTA) ! 1717: of exhibition halls on four floors. There is a full-sized replica ! 1718: of a blue whale and the world's largest star sapphire (stolen in 1964). ! 1719: T} Hours 10-5, ex. Sun 11-5, Wed. to 9 ! 1720: \^ \^ Location T{ ! 1721: Central Park West & 79th St. ! 1722: T} ! 1723: \^ \^ Admission Donation: $1.00 asked ! 1724: \^ \^ Subway AA to 81st St. ! 1725: \^ \^ Telephone 212-873-4225 ! 1726: _ ! 1727: Bronx Zoo T{ ! 1728: About a mile long and .6 mile wide, this is the largest zoo in America. ! 1729: A lion eats 18 pounds ! 1730: of meat a day while a sea lion eats 15 pounds of fish. ! 1731: T} Hours T{ ! 1732: 10-4:30 winter, to 5:00 summer ! 1733: T} ! 1734: \^ \^ Location T{ ! 1735: 185th St. & Southern Blvd, the Bronx. ! 1736: T} ! 1737: \^ \^ Admission $1.00, but Tu,We,Th free ! 1738: \^ \^ Subway 2, 5 to East Tremont Ave. ! 1739: \^ \^ Telephone 212-933-1759 ! 1740: _ ! 1741: Brooklyn Museum T{ ! 1742: Five floors of galleries contain American and ancient art. ! 1743: There are American period rooms and architectural ornaments saved ! 1744: from wreckers, such as a classical figure from Pennsylvania Station. ! 1745: T} Hours Wed-Sat, 10-5, Sun 12-5 ! 1746: \^ \^ Location T{ ! 1747: Eastern Parkway & Washington Ave., Brooklyn. ! 1748: T} ! 1749: \^ \^ Admission Free ! 1750: \^ \^ Subway 2,3 to Eastern Parkway. ! 1751: \^ \^ Telephone 718-638-5000 ! 1752: _ ! 1753: T{ ! 1754: New-York Historical Society ! 1755: T} T{ ! 1756: All the original paintings for Audubon's ! 1757: .I ! 1758: Birds of America ! 1759: .R ! 1760: are here, as are exhibits of American decorative arts, New York history, ! 1761: Hudson River school paintings, carriages, and glass paperweights. ! 1762: T} Hours T{ ! 1763: Tues-Fri & Sun, 1-5; Sat 10-5 ! 1764: T} ! 1765: \^ \^ Location T{ ! 1766: Central Park West & 77th St. ! 1767: T} ! 1768: \^ \^ Admission Free ! 1769: \^ \^ Subway AA to 81st St. ! 1770: \^ \^ Telephone 212-873-3400 ! 1771: .TE ! 1772: .rr 40 ! 1773: .rr 41 ! 1774: .rr 42 ! 1775: .rr 43 ! 1776: .rr 80 ! 1777: .rr 81 ! 1778: .rr 82 ! 1779: .rr 83 ! 1780: .rr 60 ! 1781: .rr 61 ! 1782: .rr 62 ! 1783: .rr 63 ! 1784: .rr #a ! 1785: .rr #b ! 1786: .rr #c ! 1787: .rr #d ! 1788: .rr #e ! 1789: .rr ## ! 1790: .ne 2i ! 1791: .fi ! 1792: .LP ! 1793: .SH ! 1794: Acknowledgments. ! 1795: .PP ! 1796: Many thanks are due to J. C. Blinn, who has done a large amount ! 1797: of testing and assisted with the design of the program. ! 1798: He has also written many of the more intelligible sentences ! 1799: in this document and helped edit all of it. ! 1800: All phototypesetting programs on \s-2UNIX\s0 are dependent on the work ! 1801: of J. F. Ossanna, whose assistance with this program in particular ! 1802: has been most helpful. ! 1803: This program is patterned on a table formatter originally ! 1804: written by J. F. Gimpel. ! 1805: The assistance of ! 1806: T. A. Dolotta, B. W. Kernighan, and J. N. Sturman ! 1807: is gratefully acknowledged. ! 1808: .SG MH-1274-MEL-troff ! 1809: .ne 2i ! 1810: .SH ! 1811: References. ! 1812: .IP [1] ! 1813: J. F. Ossanna, ! 1814: .I ! 1815: N\s-2ROFF\s0/T\s-2ROFF\s0 User's Manual, ! 1816: .R ! 1817: Computing Science Technical Report No. 54, ! 1818: Bell Laboratories, 1976. ! 1819: .IP [2] ! 1820: K. Thompson and D. M. Ritchie, ! 1821: ``The U\s-2NIX\s0 Time-Sharing System,'' ! 1822: \fIComm. ACM. \fB17\fR, pp. 365\(mi75 (1974). ! 1823: .IP [3] ! 1824: B. W. Kernighan and L. L. Cherry, ! 1825: ``A System for Typesetting Mathematics,'' ! 1826: \fIComm. ACM. \fB18\fR, pp. 151\(mi57 (1975). ! 1827: .IP [4] ! 1828: M. E. Lesk, ! 1829: .I ! 1830: Typing Documents on U\s-2NIX\s0, ! 1831: .R ! 1832: Bell Laboratories internal memorandum. ! 1833: .IP [5] ! 1834: M. E. Lesk and B. W. Kernighan, ! 1835: .I ! 1836: Computer Typesetting of Technical Journals on U\s-2NIX\s0, ! 1837: .R ! 1838: Computing Science Technical Report No. 44, ! 1839: Bell Laboratories, July 1976. ! 1840: .IP [6] ! 1841: J. R. Mashey and D. W. Smith, ! 1842: .I ! 1843: \s-2PWB/MM\s0 \(em Programmer's Workbench Memorandum Macros, ! 1844: .R ! 1845: Bell Laboratories memorandum. ! 1846: .sp 3 ! 1847: .SH ! 1848: .ce ! 1849: List of Tbl Command Characters and Words ! 1850: .LP ! 1851: .EQ ! 1852: delim $$ ! 1853: gfont roman ! 1854: .EN ! 1855: .TS ! 1856: center; ! 1857: cI cI cI ! 1858: aB lf1 nf1 . ! 1859: Command Meaning Section ! 1860: a A Alphabetic subcolumn 2 ! 1861: allbox Draw box around all items 1 ! 1862: b B Boldface item 2 ! 1863: box Draw box around table 1 ! 1864: c C Centered column 2 ! 1865: center Center table in page 1 ! 1866: doublebox Doubled box around table 1 ! 1867: e E Equal width columns 2 ! 1868: expand Make table full line width 1 ! 1869: f F Font change 2 ! 1870: i I Italic item 2 ! 1871: l L Left adjusted column 2 ! 1872: n N Numerical column 2 ! 1873: \fInnn\fR Column separation 2 ! 1874: p P Point size change 2 ! 1875: r R Right adjusted column 2 ! 1876: s S Spanned item 2 ! 1877: t T Vertical spanning at top 2 ! 1878: tab \fR(\fIx\|\fR) Change data separator character 1 ! 1879: $fat roman "T{" ~~ fat roman "T}"$ Text block 3 ! 1880: v V Vertical spacing change 2 ! 1881: w W Minimum width value 2 ! 1882: \&\s+4.\s0\fIxx\fR Included \fItroff\fR command 3 ! 1883: \(bv Vertical line 2 ! 1884: \(bv\|\(bv Double vertical line 2 ! 1885: \&\s+4\v'4p'^\v'-4p'\s0 Vertical span 2 ! 1886: \e\&\s+4\v'4p'^\v'-4p'\s0 Vertical span 3 ! 1887: \&= Double horizontal line 2,3 ! 1888: \&$fat "_"$ Horizontal line 2,3 ! 1889: \&$fat "\e\|_"$ Short horizontal line 3 ! 1890: .TE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.