Doug McKenna wrote:
The solution, I think, is pretty easy.
"load-unicode-data.tex" already tests for certain compatibility conditions and
short-circuits itself accordingly. Its first executable lines are:
% The data can only be loaded by Unicode engines. Currently this is limited to
% XeTeX and LuaTeX, both of which define \Umathcode.
\ifx\Umathcode\undefined
\expandafter\endinput
\fi
% Just in case, check for the e-TeX extensions.
\ifx\eTeXversion\undefined
\expandafter\endinput
\fi
But the first of these tests is no longer a good test, because JSBox is a
Unicode/eTeX engine that does implement \Umathcode but has no need nor desire
to execute this file because JSBox's mapping tables have *already* been
initialized before any TeX code is ever pushed onto its execution stack, the
same as classic TeX does for simple one-byte characters.
How about delaying the definition of \Umathcode until after
"load-unicode-data.tex" has been processed ? Is that possible, and
would it have undesirable side-effects ?
Philip Taylor