|
|
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.