1.\" Copyright (c) 1990, 1991 Regents of the University of California. 2.\" All rights reserved. 3.\" 4.\" %sccs.include.proprietary.roff% 5.\" 6.\" @(#)tbl.1 6.4 (Berkeley) 08/09/91 7.\" 8.Dd 9.Dt TBL 1 10.Os ATT 7th 11.Sh NAME 12.Nm tbl 13.Nd format tables for nroff or troff 14.Sh SYNOPSIS 15.Nm tbl 16.Op Ar files 17.Ar ... 18.Sh DESCRIPTION 19.Nm Tbl 20is a preprocessor for formatting tables for 21.Xr nroff 22or 23.Xr troff 1 . 24The input files are copied to the standard output, except for lines between 25\&.TS and 26\&.TE command lines, which are assumed to describe tables 27and are reformatted. 28Details are given in the 29.%T TBL 30reference manual. 31.Sh EXAMPLE 32.Pp 33As an example, letting \et represent a tab (which should be typed as a genuine 34tab) the input 35.Bd -literal -offset indent 36\&.TS 37c s s 38c c s 39c c c 40l n n. 41Household Population 42Town\\tHouseholds 43\\tNumber\\tSize 44Bedminster\\t789\\t3.26 45Bernards Twp.\\t3087\\t3.74 46Bernardsville\\t2018\\t3.30 47Bound Brook\\t3425\\t3.04 48Branchburg\\t1644\\t3.49 49Bridgewater\\t7897\\t3.81 50Far Hills\\t240\\t3.19 51\&.TE 52.Ed 53.Pp 54yields 55.Bd -unfilled -offset indent 56.ne 10 57.TS 58.nr 35 \n(.u 59.nr 79 0n 60.nr 80 \n(79 61.nr 40 \n(79 62.nr 38 \n(79+\w!Town! 63.if \n(80<\n(38 .nr 80 \n(38 64.nr 38 \n(79+\w!! 65.if \n(80<\n(38 .nr 80 \n(38 66.nr 38 \n(79+\w!Bedminster! 67.if \n(80<\n(38 .nr 80 \n(38 68.nr 38 \n(79+\w!Bernards Twp.! 69.if \n(80<\n(38 .nr 80 \n(38 70.nr 38 \n(79+\w!Bernardsville! 71.if \n(80<\n(38 .nr 80 \n(38 72.nr 38 \n(79+\w!Bound Brook! 73.if \n(80<\n(38 .nr 80 \n(38 74.nr 38 \n(79+\w!Branchburg! 75.if \n(80<\n(38 .nr 80 \n(38 76.nr 38 \n(79+\w!Bridgewater! 77.if \n(80<\n(38 .nr 80 \n(38 78.nr 38 \n(79+\w!Far Hills! 79.if \n(80<\n(38 .nr 80 \n(38 80.nr 81 \n(80 81.nr 41 \n(80 82.nr 38 \n(80+\w!Number! 83.if \n(81<\n(38 .nr 81 \n(38 84.nr 31 0 85.nr 32 0 86.nr 38 \w!789! 87.if \n(31<\n(38 .nr 31 \n(38 88.nr 38 \w!! 89.if \n(32<\n(38 .nr 32 \n(38 90.nr 38 \w!3087! 91.if \n(31<\n(38 .nr 31 \n(38 92.nr 38 \w!! 93.if \n(32<\n(38 .nr 32 \n(38 94.nr 38 \w!2018! 95.if \n(31<\n(38 .nr 31 \n(38 96.nr 38 \w!! 97.if \n(32<\n(38 .nr 32 \n(38 98.nr 38 \w!3425! 99.if \n(31<\n(38 .nr 31 \n(38 100.nr 38 \w!! 101.if \n(32<\n(38 .nr 32 \n(38 102.nr 38 \w!1644! 103.if \n(31<\n(38 .nr 31 \n(38 104.nr 38 \w!! 105.if \n(32<\n(38 .nr 32 \n(38 106.nr 38 \w!7897! 107.if \n(31<\n(38 .nr 31 \n(38 108.nr 38 \w!! 109.if \n(32<\n(38 .nr 32 \n(38 110.nr 38 \w!240! 111.if \n(31<\n(38 .nr 31 \n(38 112.nr 38 \w!! 113.if \n(32<\n(38 .nr 32 \n(38 114.nr 61 \n(80+\n(31 115.nr 38 \n(61+\n(32 116.if \n(38>\n(81 .nr 81 \n(38 117.if \n(38<\n(81 .nr 61 +(\n(81-\n(38)/2 118.nr 82 \n(81 119.nr 42 \n(81 120.nr 38 \n(81+\w!Size! 121.if \n(82<\n(38 .nr 82 \n(38 122.nr 31 0 123.nr 32 0 124.nr 38 \w!3! 125.if \n(31<\n(38 .nr 31 \n(38 126.nr 38 \w!.26! 127.if \n(32<\n(38 .nr 32 \n(38 128.nr 38 \w!3! 129.if \n(31<\n(38 .nr 31 \n(38 130.nr 38 \w!.74! 131.if \n(32<\n(38 .nr 32 \n(38 132.nr 38 \w!3! 133.if \n(31<\n(38 .nr 31 \n(38 134.nr 38 \w!.30! 135.if \n(32<\n(38 .nr 32 \n(38 136.nr 38 \w!3! 137.if \n(31<\n(38 .nr 31 \n(38 138.nr 38 \w!.04! 139.if \n(32<\n(38 .nr 32 \n(38 140.nr 38 \w!3! 141.if \n(31<\n(38 .nr 31 \n(38 142.nr 38 \w!.49! 143.if \n(32<\n(38 .nr 32 \n(38 144.nr 38 \w!3! 145.if \n(31<\n(38 .nr 31 \n(38 146.nr 38 \w!.81! 147.if \n(32<\n(38 .nr 32 \n(38 148.nr 38 \w!3! 149.if \n(31<\n(38 .nr 31 \n(38 150.nr 38 \w!.19! 151.if \n(32<\n(38 .nr 32 \n(38 152.nr 62 \n(81+\n(31 153.nr 38 \n(62+\n(32 154.if \n(38>\n(82 .nr 82 \n(38 155.if \n(38<\n(82 .nr 62 +(\n(82-\n(38)/2 156.nr 38 \n(79+\w!Household Population!-\n(82 157.if \n(38>0 .nr 38 \n(38/2 158.if \n(38<0 .nr 38 0 159.nr 61 +1*\n(38 160.nr 81 +1*\n(38 161.nr 41 +1*\n(38 162.nr 62 +2*\n(38 163.nr 82 +2*\n(38 164.nr 42 +2*\n(38 165.nr 38 \n(80+\w!Households!-\n(82 166.if \n(38>0 .nr 38 \n(38/1 167.if \n(38<0 .nr 38 0 168.nr 62 +1*\n(38 169.nr 82 +1*\n(38 170.nr 42 +1*\n(38 171.nr 38 1n 172.nr 41 +3*\n(38 173.nr 81 +3*\n(38 174.nr 61 +3*\n(38 175.if n .if \n(61%24>0 .nr 61 +12u 176.nr 42 +6*\n(38 177.nr 82 +6*\n(38 178.nr 62 +6*\n(38 179.if n .if \n(62%24>0 .nr 62 +12u 180.nr TW \n(82 181.fc ! : 182.ta \n(82u 183\&!:Household Population:! 184.ta \n(80u \n(82u 185\&\h'|\n(40u'!:Town:!\h'|\n(41u'!:Households:! 186.ta \n(80u \n(81u \n(82u 187\&\h'|\n(40u'!::!\h'|\n(41u'!:Number:!\h'|\n(42u'!:Size:! 188.ta \n(80u \n(61u \n(62u \n(82u 189\&\h'|\n(40u'!Bedminster:!\h'|\n(41u'!:789!\h'|\n(42u'!:3!!.26:! 190.ta \n(80u \n(61u \n(62u \n(82u 191\&\h'|\n(40u'!Bernards Twp.:!\h'|\n(41u'!:3087!\h'|\n(42u'!:3!!.74:! 192.ta \n(80u \n(61u \n(62u \n(82u 193\&\h'|\n(40u'!Bernardsville:!\h'|\n(41u'!:2018!\h'|\n(42u'!:3!!.30:! 194.ta \n(80u \n(61u \n(62u \n(82u 195\&\h'|\n(40u'!Bound Brook:!\h'|\n(41u'!:3425!\h'|\n(42u'!:3!!.04:! 196.ta \n(80u \n(61u \n(62u \n(82u 197\&\h'|\n(40u'!Branchburg:!\h'|\n(41u'!:1644!\h'|\n(42u'!:3!!.49:! 198.ta \n(80u \n(61u \n(62u \n(82u 199\&\h'|\n(40u'!Bridgewater:!\h'|\n(41u'!:7897!\h'|\n(42u'!:3!!.81:! 200.ta \n(80u \n(61u \n(62u \n(82u 201\&\h'|\n(40u'!Far Hills:!\h'|\n(41u'!:240!\h'|\n(42u'!:3!!.19:! 202.fc 203.mk ## 204.nr ## -1v 205.if \n(35>0 .fi 206.TE 207.Ed 208.Pp 209If no arguments are given, 210.Nm tbl 211reads the standard input, so it may be used as a filter. When 212.Nm tbl 213is used with 214.Xr eqn 215or 216.Xr neqn 217the 218.Nm tbl 219command should be first, to minimize the volume of data passed through pipes. 220.Sh SEE ALSO 221.Xr troff 1 , 222.Xr eqn 1 223.Rs 224.%T TBL , 225.%A M. E. Lesk . 226.Re 227.Sh HISTORY 228The 229.Nm 230command appeared in Version 7 AT&T UNIX. 231