[tex-eplain] Incompatibility: Eplain 3.4 and AMSTeX 2.2?

Dan Luecking luecking at uark.edu
Mon Feb 28 21:06:32 CET 2011


At 04:20 AM 2/28/2011, Stefan Becuwe wrote:

>Hello,
>
>I'm using TL 2010 with Eplain 3.4, AMSTeX 2.2, amsppt 2.2.  It seems
>they don't like to work together.  Same setup with Eplain 2.8.1,
>AMSTeX 2.1, amsppt 2.1h did work.
>
>Consider following input file:
>
>\input amstex
>\documentstyle{amsppt}
>\input amssym.def
>
>\input eplain
>\input miniltx
>\beginpackages
>\usepackage{graphicx}
>\endpackages
>
>Test
>
>\eqdefn{eq:al}
>$$\align
>a &= b \tag\eqsubdef{eq:a}\\
>c &= d \tag\eqsubdef{eq:b}
>\endalign$$
>
>
>\bye
>
>Any idea how to solve following two errors?  Thanks in advance.

The first error can be avoided by loading eplain
before amstex. This is the natural order, because
eplain expects plain tex to be unmodified, and
amstex modifies many of plain tex's macros.

The second error comes from incorrect syntax. You
need to put the argument to \tag in braces:
   a &= b \tag{\eqsubdef{eq:a}}\\
   c &= d \tag{\eqsubdef{eq:b}}

Finally, the default of both eplain and amstex is to
add parentheses arround the equation number. This
results in one too many. You can instruct eplain not
to do this. Since it is ultimately \eqprint that produces
the result, you simply define it to return its argument
unmodified:
   \def\eqprint#1{#1}
It is possible to do the same with amstex:
   {\makeatletter
   \gdef\tagform@#1{\hbox{\rm\ignorespaces#1\unskip}}
   }
(I just copied the definition from amstex.tex and
removed the parentheses.) You should do one or the other,
unless you want no parentheses, then do both.


Dan


Daniel H. Luecking
Department of Mathematical Sciences
Fayetteville, Arkansas
http://www-cs-faculty.stanford.edu/~knuth/iaq.html 



More information about the tex-eplain mailing list