[comp.text.tex] TeXing tex.tex

dhosek@sif.claremont.edu (Hosek, Donald A.) (08/25/90)

Those of you who have attempted to TeX TeX.TeX generated with
weave 4.1, have discovered, much to your surprise, a nasty bug:
TeX had made E active to allow identifiers like TEX_inputs to be
printed with a dropped E. However, weave 4.1 defines control
sequences \ET and \ETs which are used for printing some items in
the WEAVE output. By inserting the change below into your system
change file, the proper output can again be restored (or if
you're attempting to print the original TeX source without
changes, than use this as the whole change file.

@x [0] DAH: Fix problems WEAVEing TeX and BibTeX.
\def\drop{\kern-.1667em\lower.5ex\hbox{E}\kern-.125em} % middle of TeX
\catcode`E=13 \uppercase{\def E{e}}
\def\\#1{\hbox{\let E=\drop\it#1\/\kern.05em}} % italic type for identifiers
@y
\def\\{\catcode`\E=13
   \finishid}
\catcode`\E=13 \uppercase{\def E{e}}
\def\finishid#1{\hbox{\let E=\cape
    \it#1\/\kern.05em}%
    \catcode`\E=11\relax} % Guess what terrible thing happens if the
                          % \relax is left out with the text below.
\catcode`\E=11
\def\drop{\kern-.1667em\lower.5ex\hbox{E}\kern-.125em} % Middle of TeX
\def\cape#1{\if X#1\drop\else E\fi#1} % E's in identifiers
@z

(By the way, this *is* a genuine TeX bug so it should ultimately
find its way into the WEB source. Do I get a check? :-)

-dh


---
Don Hosek                       TeX, LaTeX, and Metafont support, consulting 
dhosek@ymir.claremont.edu       installation and production work. 
dhosek@ymir.bitnet              Free Estimates.
uunet!jarthur!ymir              Phone: 714-625-0147
                                finger dhosek@ymir.claremont.edu for more info