Giuseppe,

you may or may not know about these problems already, so I decided to simply send them all. I'm using t-nath.tex 2003.12.08, updated five minutes ago from www.tug.org, ConTeXt 2004.6.26, and pdfeTeX 3.14159-1.10b-2.1 (Web2C 7.4.5).

nath seems to have trouble with $$...$$-formulas. This file won't compile:

\usemodule[nath]

\starttext
\placeformula
$$a$$
\stoptext

Error message:
Runaway argument?
\@@dollar {\to \asciiB \ExpandBothAfter \doifincsnameelse \asciiA \asciiB \ETC.
! File ended while scanning use of \convertargument.


Replacing $$...$$ by \startformula...\stopformula fixes this, but the following file won't compile either:

\usemodule[nath]

\starttext
\placeformula
\startformula \sum_{i=0}^m a_i\stopformula
\stoptext


The culprit, it seems, is that \inlinemath uses \xdef, but \mathop@@@ puts unexpandable code into the argument of ^ and _. The following hackery seems to work:


\def\mathop@@@{%
 \ifsp@
  ^{\hbox{\edef\noexpand\!!stringa%
        [EMAIL PROTECTED]@toks}}%
   \def\noexpand\\{,\ }\noexpand\!!stringa}}
 \fi
 \ifsb@
  _{\hbox{\edef\noexpand\!!stringa%
        [EMAIL PROTECTED]@toks}}%
   \def\noexpand\\{,\ }\noexpand\!!stringa}}
 \fi}

Though I must confess I don't understand why the complexity with introducing \!!stringa is needed. The following version works for me:

\def\mathop@@@{%
 \pushmacro\\
 \def\\{\noexpand\text{, }}%
 \ifsp@
   [EMAIL PROTECTED]
 \fi
 \ifsb@
   [EMAIL PROTECTED]
 \fi
 \popmacro\\}



Parentheses in display formulas don't work:
\usemodule[nath]
\starttext
\startformula (x) \stopformula
\stoptext

I don't know if at some time ConTeXt placed \the\everymath inside \everydisplay, but with the current ConTeXt, you need to \appendtoks to both. I regard the output as broken, but at least it will compile.



Another bug: t-nath.tex defines \savecatcode and \restorecatcode, but these names have already been used in verb-ini.tex. I have locally replaced these with \nath!savecatcode and \nath!restorecatcode, seems to work.



A math problem not related to nath:
\starttext
\setupformulae[align=left]
\startformula
  \eqalignno{a&=b\cr c&=d}
\stopformula
\stoptext

doesn't work for me.  Anyone else?


Regards, Christopher Creutzig

PS: I won't be able to read mails in the next four weeks.
_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to