File:  [MW Coherent from dump] / coherent / b / bin / troff / etc / fwb.tbl
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed May 29 04:56:36 2019 UTC (7 years, 2 months ago) by root
Branches: MarkWilliams, MAIN
CVS tags: relic, HEAD
coherent

From lepanto!fred  Thu Jul 23 08:30:58 1992 remote from mwc
Received: by igor.mwc.com (smail2.5.2-coh) id AA00722; 23 Jul 92 08:30:58 
Received: by mwc.com (smail2.5.3-coh) id AA00391; 23 Jul 92 02:16:25 
Received: by lepanto.mwc.com (smail2.5.3-coh) id AA17866; 22 Jul 92 20:42:12 
Message-Id: <[email protected]>
Date: 22 Jul 92 20:42:11
From: [email protected] (Fred Butzen)
To: norman steve

Norm, Steve:

Just for grins, I ran the following test through the "eroff" implementation
of "tbl":

.TS
allbox;
c s s
c c c
n n n.
AT&T Common Stock
Year	Price	Dividend
1971	41-54	$2.60
2	45-54	2.70
3	46-55	2.87
4	40-53	3.24
5	45-52	3.40
6	51-59	.95*
.TE
*(first quarter only)

It produced the following output:

.ds f. test2.tbl
.TS
.if \n+(b.=1 .nr d. \n(.c-\n(c.-1
.de 35
.ps \n(.s
.vs \n(.vu
.in \n(.iu
.if \n(.u .fi
.if \n(.j .ad
.if \n(.j=0 .na
..
.nf
.nr #~ 0
.if \n(.T .if n .nr #~ 0.6n
.ds #d .d
.if \n(.z .ds #d nl
.fc
.nr 33 \n(.s
.nr 39 \n(.s
.rm 48 49 50
.if \n(.z \{\
.	ch #f
.	wh \n(nlu+\n(.tu-2v #f\}
.eo
.de #f
.ie \n(#& \{ \
.	nr #& 0
.	nr #| 1
.	di #o \}
.el \{ \
.	ch #f
.	nr T. 1
.	if \n(#| .sp
.	T#
.	sp \n(.tu
.	mk #T
.	nr #a \n(#T
.	nr #c \n(#T
.	nr ^a \n(#T
.	nr ^b \n(#T
.	nr ^c \n(#T
.	if \n(#| \{ \
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.		in 0
.		#+
.		in
.		rm #+
.		mk 32
.		nr #| 0\}
.	wh \n(nlu+\n(.tu-2v #f \}
..
.de #%
.if \n(.z#o \{ \
.	sp |0u
.	in 0
.	#+
.	in
.	sp |\n(.hu
.	di
.	rn #o #+ \}
..
.ec
.nr 48 0
.nr 38 \wYear
.if \n(48<\n(38 .nr 48 \n(38
.nr 31 0
.nr 32 0
.nr 38 \w1971
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w2
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w3
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w4
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w5
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w6
.if \n(31<\n(38 .nr 31 \n(38
.48
.rm 48
.nr 44 \n(31
.nr 38 \n(44+\n(32
.if \n(38>\n(48 .nr 48 \n(38
.if \n(38<\n(48 .nr 44 +(\n(48-\n(38)/2
.nr 49 0
.nr 38 \wPrice
.if \n(49<\n(38 .nr 49 \n(38
.nr 31 0
.nr 32 0
.nr 38 \w41-54
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w45-54
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w46-55
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w40-53
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w45-52
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w51-59
.if \n(31<\n(38 .nr 31 \n(38
.49
.rm 49
.nr 45 \n(31
.nr 38 \n(45+\n(32
.if \n(38>\n(49 .nr 49 \n(38
.if \n(38<\n(49 .nr 45 +(\n(49-\n(38)/2
.nr 50 0
.nr 38 \wDividend
.if \n(50<\n(38 .nr 50 \n(38
.nr 31 0
.nr 32 0
.nr 38 \w$2
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w.60
.if \n(32<\n(38 .nr 32 \n(38
.nr 38 \w2
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w.70
.if \n(32<\n(38 .nr 32 \n(38
.nr 38 \w2
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w.87
.if \n(32<\n(38 .nr 32 \n(38
.nr 38 \w3
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w.24
.if \n(32<\n(38 .nr 32 \n(38
.nr 38 \w3
.if \n(31<\n(38 .nr 31 \n(38
.nr 38 \w.40
.if \n(32<\n(38 .nr 32 \n(38
.nr 38 \w.95*
.if \n(32<\n(38 .nr 32 \n(38
.50
.rm 50
.nr 46 \n(31
.nr 38 \n(46+\n(32
.if \n(38>\n(50 .nr 50 \n(38
.if \n(38<\n(50 .nr 46 +(\n(50-\n(38)/2
.nr 38 \wAT&T Common Stock-\n(48-3n-\n(49-3n-\n(50
.if \n(38>0 .nr 38 \n(38/2
.if \n(38<0 .nr 38 0
.nr 44 +\n(38/2
.nr 48 +\n(38
.nr 45 +\n(38/2
.nr 49 +\n(38
.nr 38 1n
.nr 47 0
.nr 40 \n(47+((2*\n(38)/2)
.nr 48 +\n(40
.nr 44 +\n(40
.nr 41 \n(48+((6*\n(38)/2)
.nr 49 +\n(41
.nr 45 +\n(41
.nr 42 \n(49+((6*\n(38)/2)
.nr 50 +\n(42
.nr 46 +\n(42
.nr TW \n(50
.nr TW +((2*\n(38)/2)
.ne 8v+(0u*(\n(.vu-\n(.sp))+(2u*(\n(.vu-\n(.sp))
.fc  
.nr #T 0-1
.nr #a 0-1
.nr #c 0-1
.nr #a 0-1
.eo
.de T#
.nr 38 \n(.s
.ps \n(39p
.nr 35 1m
.ds #d .d
.if \n(.z .ds #d nl
.mk ##
.nr ## -1v
.ls 1
.if \n(T. .vs \n(.vu-\n(.sp
.if \n(T. \h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.if \n(T. .vs
.if \n(#T>=0 .nr #a \n(#T
.if \n(#c<0  .nr #c \n(#T
.if \n(#a>=0 \{\
.	sp -1
.	ie \n(#a=\n(#T \{\
\h'|0'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}
.	el \{\
\h'|0'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\h'|\n(TWu'\}\}
.if \n(#c>=0 \{\
.	sp -1
.	ie \n(#c=\n(#T \{\
.		ie \n(3a \{\
\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'\}
.		el \{\
\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'\}\}
.	el \{\
.	nr 3a 1
\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'\}\}
.if \n(#c>=0 \{\
.	sp -1
.	ie \n(#c=\n(#T \{\
.		ie \n(3a \{\
\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'\}
.		el \{\
\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'\}\}
.	el \{\
.	nr 3a 1
\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'\}\}
.if \n(#a>=0 \{.sp -1
.	ie \n(#a=\n(#T \{\
\h'|\n(TWu'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\}
.	el \{\
\h'|\n(TWu'\s\n(33\h'-\n(#~u'\L'|\n(#au-1v'\s0\v'\n(\*(#du-\n(#au+1v'\}\}
.nr #c 0-1
.ls
.ps \n(38p
..
.ec
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.mk #a
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'AT&T Common Stock
.if \n(.tu<=2v .#f
.nr tH 0
.mk #c
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(48u \n(49u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'Year\h'|\n(41u'Price\h'|\n(42u'Dividend
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'1971\h'|\n(41u'41-54\h'|\n(42u'$2.60
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'2\h'|\n(41u'45-54\h'|\n(42u'2.70
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'3\h'|\n(41u'46-55\h'|\n(42u'2.87
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'4\h'|\n(41u'40-53\h'|\n(42u'3.24
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'5\h'|\n(41u'45-52\h'|\n(42u'3.40
.if \n(.tu<=2v .#f
.nr tH 0
.nr 36 \n(.v
.vs \n(.vu-\n(.sp
\h'|0'\s\n(33\l'|\n(TWu\(ul'\s0
.vs \n(36u
.nr 32 0
.nr 32 \n(32u+\n(.du+2p
.ta \n(44u \n(45u \n(46u \n(50u 
.nr 35 1m
.nr 31 \n(.f
\&\h'|\n(40u'6\h'|\n(41u'51-59\h'|\n(42u'.95*
.fc
.ch #f
.rm #f
.nr T. 1
.T# \n(T.
.rm T#
.rr 3a
.35
.nr #a 0
.nr #c 0
.TE
.if \n-(b.=0 .nr c. \n(.c-\n(d.-13
*(first quarter only)

This dies with numerous errors, the most important being the inability
to remove number registers with numeric names and the lack of an
implementation of the .fc primitive.  I don't know if it would be worth
it to make our troff be able to digest tbl output (although I'd love
to have a tbl of my own), but here's something you can work with.



[email protected]                  --   Fred Butzen   --
                               President, William Billings Chapter,
                                   Don Carlo Gesualdo Fan Club



unix.superglobalmegacorp.com

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