Date:Sun, 19 May 2002 13:26:56 +0300
Reply-To:Dekel Tsur <[log in to unmask]>
Sender:Hebrew TeX list <[log in to unmask]>
From:Dekel Tsur <[log in to unmask]>
Organization:Tel Aviv University
Subject:Re: Conflict between packages in elatex
In-Reply-To:<[log in to unmask]>; from Rama
Porrat on Sun, May 19, 2002 at 11:40:26AM +0300
On Sun, May 19, 2002 at 11:40:26AM +0300, Rama Porrat wrote:
> If you have the time, can you explain in a few
> words why is this a working solution?
The rlbabel.def redefines the \arabic macro (or more precisely, the internal
\@arabic macro) in the following way:
The \@@number insert \beginL .. \endL around the number, unless TeX is in
math mode, in which these primitives are forbidden.
The endnotes package define \theendnote by
The \endnote performs (among other things) the following definition:
Since \edef is used, the \@@number macro is expanded at the time the
\endnote macro is called, and since TeX is not in math mode, the token list
of \@theenmark will contain the \beginL,\endL primitives.
Since endnotes typeset the endnote mark in math mode, an error occurs.
My proposed solution was to redefine \theendnote so it won't use
the \@@number macro:
A very minor problem with this solution is that if the user writes
\theendnote in his text, the number will not be reversed.
1) Redefine the appropriate macros from endnotes.sty so the endnote mark
will not be typeset in math mode (endnotes.sty uses math mode in order to
typeset the mark in superscript, but the proper way to do it in latex2e is
to use \textsuperscript).
2) A more general solution, is to redefine the \@@number macro in a way
that it will work also when it is used inside \edef:
However, I'm not sure whether this has bad side effects.