[NTG-context] Re: Re: nath catcode issues
Giuseppe Bilotta
gip.bilotta at iol.it
Sat Aug 7 16:58:24 CEST 2004
Monday, July 5, 2004 Nikolai Weibull wrote:
> * Giuseppe Bilotta <gip.bilotta at iol.it> [Jul 05, 2004 14:00]:
>> Weird indeed. I'm not using the latest ConTeXt. (Actually I'm
>> quite back with the updates ... gotta get down to it.) I'll see
>> if upgrading gives me the same problem and in case get a fix.
> OK.
I'm now using
ConTeXt ver: 2004.6.30 fmt: 2004.7.27 int: english mes: english
and your example
\usemodule[nath]
\starttext
$a, b, \dots, n$
\[
a=b, \dots c=d \dots
\]
\stoptext
uses, in order, \ldots, \ldots, \cdots which sounds like the
correct behaviour to me. The engine is
This is pdfeTeX, Version 3.141592-1.20a-rc4-2.1 (MiKTeX 2.4)
>> >> \def\over{\ifmmode\n at err{Disabled command \string\over }
>> >> {No more a valid command. Replace {A \over B} with \frac A
>> >> B.}\else\o at over\fi}
>> >> \def\atop{\ifmmode\n at err{Disabled command \string\atop }
>> >> {No more a valid command. Use array instead.}\else\o at atop\fi}
>> >> \def\choose{\ifmmode\n at err{Disabled command \string\choose }
>> >> {No more a valid command. Replace {A \choose B} with \binom A
>> >> B.}\else\o at choose\fi}
>>
>> > Ah, of course...
>> > nikolai
>>
>> It works like that? Excellent.
> It seems I spoke too soon. It does in fact not work. \o at over can't be
> put like that inside the if-statement. A suggestion would be to re-work
> the whole section and instead make it
> \appendtoks
> \def\over{\n at err{Disabled command \string\over }
> {No more a valid command. Replace {A \string\over B} with \string\frac A B.}}
> \def\atop{\n at err{Disabled command \string\atop }
> {No more a valid command. Use array instead.}}
> \def\choose{\n at err{Disabled command \string\choose }
> {No more a valid command. Replace {A \string\choose B}
> with \string\binom A B. >>> }}
> \to\everymath
> but I don't know if that's a good solution. It forces you to use
> \string\over in the second argument to \n at err which I don't understand
> why, but otherwise TeX runs out of stack space. I suppose it's being
> expanded even though it shouldn't be.
> nikolai
Also, I'm not sure that will work with text inside math. Can
you design a small test case that uses \over (directly or
indirectly) in normal text and in some \text inside a math
environment so that I can see what solution works fine?
In the meantime, I'm thinking along the lines of something like
\def\over{%
\ifmmode\n at err{Disabled command \string\over }
{No more a valid command. Replace {A \over B} with \frac A B.}%
\let\next\relax
\else\let\next\o at over\fi\next}
\def\atop{%
\ifmmode\n at err{Disabled command \string\atop }
{No more a valid command. Use array instead.}%
\let\next\relax
\else\let\next\o at atop\fi\next}
\def\choose{%
\ifmmode\n at err{Disabled command \string\choose }
{No more a valid command. Replace {A \choose B} with \binom A B.}%
\lext\next\relax
\else\let\next\o at choose\fi\next}
which should be robust enough. Can you try it in the context
where my previous solution busted?
--
Giuseppe "Oblomov" Bilotta
More information about the ntg-context
mailing list