Annotation of coherent/b/bin/troff/etc/fwb.tbl, revision 1.1.1.1

1.1       root        1: From lepanto!fred  Thu Jul 23 08:30:58 1992 remote from mwc
                      2: Received: by igor.mwc.com (smail2.5.2-coh) id AA00722; 23 Jul 92 08:30:58 
                      3: Received: by mwc.com (smail2.5.3-coh) id AA00391; 23 Jul 92 02:16:25 
                      4: Received: by lepanto.mwc.com (smail2.5.3-coh) id AA17866; 22 Jul 92 20:42:12 
                      5: Message-Id: <[email protected]>
                      6: Date: 22 Jul 92 20:42:11
                      7: From: [email protected] (Fred Butzen)
                      8: To: norman steve
                      9: 
                     10: Norm, Steve:
                     11: 
                     12: Just for grins, I ran the following test through the "eroff" implementation
                     13: of "tbl":
                     14: 
                     15: .TS
                     16: allbox;
                     17: c s s
                     18: c c c
                     19: n n n.
                     20: AT&T Common Stock
                     21: Year   Price   Dividend
                     22: 1971   41-54   $2.60
                     23: 2      45-54   2.70
                     24: 3      46-55   2.87
                     25: 4      40-53   3.24
                     26: 5      45-52   3.40
                     27: 6      51-59   .95*
                     28: .TE
                     29: *(first quarter only)
                     30: 
                     31: It produced the following output:
                     32: 
                     33: .ds f. test2.tbl
                     34: .TS
                     35: .if \n+(b.=1 .nr d. \n(.c-\n(c.-1
                     36: .de 35
                     37: .ps \n(.s
                     38: .vs \n(.vu
                     39: .in \n(.iu
                     40: .if \n(.u .fi
                     41: .if \n(.j .ad
                     42: .if \n(.j=0 .na
                     43: ..
                     44: .nf
                     45: .nr #~ 0
                     46: .if \n(.T .if n .nr #~ 0.6n
                     47: .ds #d .d
                     48: .if \n(.z .ds #d nl
                     49: .fc
                     50: .nr 33 \n(.s
                     51: .nr 39 \n(.s
                     52: .rm 48 49 50
                     53: .if \n(.z \{\
                     54: .      ch #f
                     55: .      wh \n(nlu+\n(.tu-2v #f\}
                     56: .eo
                     57: .de #f
                     58: .ie \n(#& \{ \
                     59: .      nr #& 0
                     60: .      nr #| 1
                     61: .      di #o \}
                     62: .el \{ \
                     63: .      ch #f
                     64: .      nr T. 1
                     65: .      if \n(#| .sp
                     66: .      T#
                     67: .      sp \n(.tu
                     68: .      mk #T
                     69: .      nr #a \n(#T
                     70: .      nr #c \n(#T
                     71: .      nr ^a \n(#T
                     72: .      nr ^b \n(#T
                     73: .      nr ^c \n(#T
                     74: .      if \n(#| \{ \
                     75: .nr 36 \n(.v
                     76: .vs \n(.vu-\n(.sp
                     77: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                     78: .vs \n(36u
                     79: .              in 0
                     80: .              #+
                     81: .              in
                     82: .              rm #+
                     83: .              mk 32
                     84: .              nr #| 0\}
                     85: .      wh \n(nlu+\n(.tu-2v #f \}
                     86: ..
                     87: .de #%
                     88: .if \n(.z#o \{ \
                     89: .      sp |0u
                     90: .      in 0
                     91: .      #+
                     92: .      in
                     93: .      sp |\n(.hu
                     94: .      di
                     95: .      rn #o #+ \}
                     96: ..
                     97: .ec
                     98: .nr 48 0
                     99: .nr 38 \wYear
                    100: .if \n(48<\n(38 .nr 48 \n(38
                    101: .nr 31 0
                    102: .nr 32 0
                    103: .nr 38 \w1971
                    104: .if \n(31<\n(38 .nr 31 \n(38
                    105: .nr 38 \w2
                    106: .if \n(31<\n(38 .nr 31 \n(38
                    107: .nr 38 \w3
                    108: .if \n(31<\n(38 .nr 31 \n(38
                    109: .nr 38 \w4
                    110: .if \n(31<\n(38 .nr 31 \n(38
                    111: .nr 38 \w5
                    112: .if \n(31<\n(38 .nr 31 \n(38
                    113: .nr 38 \w6
                    114: .if \n(31<\n(38 .nr 31 \n(38
                    115: .48
                    116: .rm 48
                    117: .nr 44 \n(31
                    118: .nr 38 \n(44+\n(32
                    119: .if \n(38>\n(48 .nr 48 \n(38
                    120: .if \n(38<\n(48 .nr 44 +(\n(48-\n(38)/2
                    121: .nr 49 0
                    122: .nr 38 \wPrice
                    123: .if \n(49<\n(38 .nr 49 \n(38
                    124: .nr 31 0
                    125: .nr 32 0
                    126: .nr 38 \w41-54
                    127: .if \n(31<\n(38 .nr 31 \n(38
                    128: .nr 38 \w45-54
                    129: .if \n(31<\n(38 .nr 31 \n(38
                    130: .nr 38 \w46-55
                    131: .if \n(31<\n(38 .nr 31 \n(38
                    132: .nr 38 \w40-53
                    133: .if \n(31<\n(38 .nr 31 \n(38
                    134: .nr 38 \w45-52
                    135: .if \n(31<\n(38 .nr 31 \n(38
                    136: .nr 38 \w51-59
                    137: .if \n(31<\n(38 .nr 31 \n(38
                    138: .49
                    139: .rm 49
                    140: .nr 45 \n(31
                    141: .nr 38 \n(45+\n(32
                    142: .if \n(38>\n(49 .nr 49 \n(38
                    143: .if \n(38<\n(49 .nr 45 +(\n(49-\n(38)/2
                    144: .nr 50 0
                    145: .nr 38 \wDividend
                    146: .if \n(50<\n(38 .nr 50 \n(38
                    147: .nr 31 0
                    148: .nr 32 0
                    149: .nr 38 \w$2
                    150: .if \n(31<\n(38 .nr 31 \n(38
                    151: .nr 38 \w.60
                    152: .if \n(32<\n(38 .nr 32 \n(38
                    153: .nr 38 \w2
                    154: .if \n(31<\n(38 .nr 31 \n(38
                    155: .nr 38 \w.70
                    156: .if \n(32<\n(38 .nr 32 \n(38
                    157: .nr 38 \w2
                    158: .if \n(31<\n(38 .nr 31 \n(38
                    159: .nr 38 \w.87
                    160: .if \n(32<\n(38 .nr 32 \n(38
                    161: .nr 38 \w3
                    162: .if \n(31<\n(38 .nr 31 \n(38
                    163: .nr 38 \w.24
                    164: .if \n(32<\n(38 .nr 32 \n(38
                    165: .nr 38 \w3
                    166: .if \n(31<\n(38 .nr 31 \n(38
                    167: .nr 38 \w.40
                    168: .if \n(32<\n(38 .nr 32 \n(38
                    169: .nr 38 \w.95*
                    170: .if \n(32<\n(38 .nr 32 \n(38
                    171: .50
                    172: .rm 50
                    173: .nr 46 \n(31
                    174: .nr 38 \n(46+\n(32
                    175: .if \n(38>\n(50 .nr 50 \n(38
                    176: .if \n(38<\n(50 .nr 46 +(\n(50-\n(38)/2
                    177: .nr 38 \wAT&T Common Stock-\n(48-3n-\n(49-3n-\n(50
                    178: .if \n(38>0 .nr 38 \n(38/2
                    179: .if \n(38<0 .nr 38 0
                    180: .nr 44 +\n(38/2
                    181: .nr 48 +\n(38
                    182: .nr 45 +\n(38/2
                    183: .nr 49 +\n(38
                    184: .nr 38 1n
                    185: .nr 47 0
                    186: .nr 40 \n(47+((2*\n(38)/2)
                    187: .nr 48 +\n(40
                    188: .nr 44 +\n(40
                    189: .nr 41 \n(48+((6*\n(38)/2)
                    190: .nr 49 +\n(41
                    191: .nr 45 +\n(41
                    192: .nr 42 \n(49+((6*\n(38)/2)
                    193: .nr 50 +\n(42
                    194: .nr 46 +\n(42
                    195: .nr TW \n(50
                    196: .nr TW +((2*\n(38)/2)
                    197: .ne 8v+(0u*(\n(.vu-\n(.sp))+(2u*(\n(.vu-\n(.sp))
                    198: .fc  
                    199: .nr #T 0-1
                    200: .nr #a 0-1
                    201: .nr #c 0-1
                    202: .nr #a 0-1
                    203: .eo
                    204: .de T#
                    205: .nr 38 \n(.s
                    206: .ps \n(39p
                    207: .nr 35 1m
                    208: .ds #d .d
                    209: .if \n(.z .ds #d nl
                    210: .mk ##
                    211: .nr ## -1v
                    212: .ls 1
                    213: .if \n(T. .vs \n(.vu-\n(.sp
                    214: .if \n(T. \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    215: .if \n(T. .vs
                    216: .if \n(#T>=0 .nr #a \n(#T
                    217: .if \n(#c<0  .nr #c \n(#T
                    218: .if \n(#a>=0 \{\
                    219: .      sp -1
                    220: .      ie \n(#a=\n(#T \{\
                    221: \h'|0'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}
                    222: .      el \{\
                    223: \h'|0'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}\}
                    224: .if \n(#c>=0 \{\
                    225: .      sp -1
                    226: .      ie \n(#c=\n(#T \{\
                    227: .              ie \n(3a \{\
                    228: \h'(|\n(41u+|\n(48u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}
                    229: .              el \{\
                    230: \h'(|\n(41u+|\n(48u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#cu-\n(35u'\s0\v'\n(\*(#du-\n(#cu+\n(35u'\h'|\n(TWu'\}\}
                    231: .      el \{\
                    232: .      nr 3a 1
                    233: \h'(|\n(41u+|\n(48u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#cu-\n(35u'\s0\v'\n(\*(#du-\n(#cu+\n(35u'\h'|\n(TWu'\}\}
                    234: .if \n(#c>=0 \{\
                    235: .      sp -1
                    236: .      ie \n(#c=\n(#T \{\
                    237: .              ie \n(3a \{\
                    238: \h'(|\n(42u+|\n(49u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}
                    239: .              el \{\
                    240: \h'(|\n(42u+|\n(49u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#cu-\n(35u'\s0\v'\n(\*(#du-\n(#cu+\n(35u'\h'|\n(TWu'\}\}
                    241: .      el \{\
                    242: .      nr 3a 1
                    243: \h'(|\n(42u+|\n(49u)/2u'\s\n(33\h'-\n(#~u'\L'|\n(#cu-\n(35u'\s0\v'\n(\*(#du-\n(#cu+\n(35u'\h'|\n(TWu'\}\}
                    244: .if \n(#a>=0 \{.sp -1
                    245: .      ie \n(#a=\n(#T \{\
                    246: \h'|\n(TWu'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\}
                    247: .      el \{\
                    248: \h'|\n(TWu'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\}\}
                    249: .nr #c 0-1
                    250: .ls
                    251: .ps \n(38p
                    252: ..
                    253: .ec
                    254: .if \n(.tu<=2v .#f
                    255: .nr tH 0
                    256: .nr 36 \n(.v
                    257: .vs \n(.vu-\n(.sp
                    258: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    259: .vs \n(36u
                    260: .mk #a
                    261: .nr 32 0
                    262: .nr 32 \n(32u+\n(.du+2p
                    263: .ta \n(50u 
                    264: .nr 35 1m
                    265: .nr 31 \n(.f
                    266: \&\h'|\n(40u'AT&T Common Stock
                    267: .if \n(.tu<=2v .#f
                    268: .nr tH 0
                    269: .mk #c
                    270: .nr 36 \n(.v
                    271: .vs \n(.vu-\n(.sp
                    272: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    273: .vs \n(36u
                    274: .nr 32 0
                    275: .nr 32 \n(32u+\n(.du+2p
                    276: .ta \n(48u \n(49u \n(50u 
                    277: .nr 35 1m
                    278: .nr 31 \n(.f
                    279: \&\h'|\n(40u'Year\h'|\n(41u'Price\h'|\n(42u'Dividend
                    280: .if \n(.tu<=2v .#f
                    281: .nr tH 0
                    282: .nr 36 \n(.v
                    283: .vs \n(.vu-\n(.sp
                    284: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    285: .vs \n(36u
                    286: .nr 32 0
                    287: .nr 32 \n(32u+\n(.du+2p
                    288: .ta \n(44u \n(45u \n(46u \n(50u 
                    289: .nr 35 1m
                    290: .nr 31 \n(.f
                    291: \&\h'|\n(40u'1971\h'|\n(41u'41-54\h'|\n(42u'$2.60
                    292: .if \n(.tu<=2v .#f
                    293: .nr tH 0
                    294: .nr 36 \n(.v
                    295: .vs \n(.vu-\n(.sp
                    296: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    297: .vs \n(36u
                    298: .nr 32 0
                    299: .nr 32 \n(32u+\n(.du+2p
                    300: .ta \n(44u \n(45u \n(46u \n(50u 
                    301: .nr 35 1m
                    302: .nr 31 \n(.f
                    303: \&\h'|\n(40u'2\h'|\n(41u'45-54\h'|\n(42u'2.70
                    304: .if \n(.tu<=2v .#f
                    305: .nr tH 0
                    306: .nr 36 \n(.v
                    307: .vs \n(.vu-\n(.sp
                    308: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    309: .vs \n(36u
                    310: .nr 32 0
                    311: .nr 32 \n(32u+\n(.du+2p
                    312: .ta \n(44u \n(45u \n(46u \n(50u 
                    313: .nr 35 1m
                    314: .nr 31 \n(.f
                    315: \&\h'|\n(40u'3\h'|\n(41u'46-55\h'|\n(42u'2.87
                    316: .if \n(.tu<=2v .#f
                    317: .nr tH 0
                    318: .nr 36 \n(.v
                    319: .vs \n(.vu-\n(.sp
                    320: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    321: .vs \n(36u
                    322: .nr 32 0
                    323: .nr 32 \n(32u+\n(.du+2p
                    324: .ta \n(44u \n(45u \n(46u \n(50u 
                    325: .nr 35 1m
                    326: .nr 31 \n(.f
                    327: \&\h'|\n(40u'4\h'|\n(41u'40-53\h'|\n(42u'3.24
                    328: .if \n(.tu<=2v .#f
                    329: .nr tH 0
                    330: .nr 36 \n(.v
                    331: .vs \n(.vu-\n(.sp
                    332: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    333: .vs \n(36u
                    334: .nr 32 0
                    335: .nr 32 \n(32u+\n(.du+2p
                    336: .ta \n(44u \n(45u \n(46u \n(50u 
                    337: .nr 35 1m
                    338: .nr 31 \n(.f
                    339: \&\h'|\n(40u'5\h'|\n(41u'45-52\h'|\n(42u'3.40
                    340: .if \n(.tu<=2v .#f
                    341: .nr tH 0
                    342: .nr 36 \n(.v
                    343: .vs \n(.vu-\n(.sp
                    344: \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
                    345: .vs \n(36u
                    346: .nr 32 0
                    347: .nr 32 \n(32u+\n(.du+2p
                    348: .ta \n(44u \n(45u \n(46u \n(50u 
                    349: .nr 35 1m
                    350: .nr 31 \n(.f
                    351: \&\h'|\n(40u'6\h'|\n(41u'51-59\h'|\n(42u'.95*
                    352: .fc
                    353: .ch #f
                    354: .rm #f
                    355: .nr T. 1
                    356: .T# \n(T.
                    357: .rm T#
                    358: .rr 3a
                    359: .35
                    360: .nr #a 0
                    361: .nr #c 0
                    362: .TE
                    363: .if \n-(b.=0 .nr c. \n(.c-\n(d.-13
                    364: *(first quarter only)
                    365: 
                    366: This dies with numerous errors, the most important being the inability
                    367: to remove number registers with numeric names and the lack of an
                    368: implementation of the .fc primitive.  I don't know if it would be worth
                    369: it to make our troff be able to digest tbl output (although I'd love
                    370: to have a tbl of my own), but here's something you can work with.
                    371: 
                    372: 
                    373: 
                    374: [email protected]                  --   Fred Butzen   --
                    375:                                President, William Billings Chapter,
                    376:                                    Don Carlo Gesualdo Fan Club
                    377: 
                    378: &&

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.