[NTG-context] Bad interaction between new interpretation of underscore and modules

Wolfgang Schuster schuster.wolfgang at googlemail.com
Fri Jan 14 12:13:57 CET 2011


Am 14.01.2011 um 12:01 schrieb Hans Hagen:

> just add a space before the _ when it directly follows a \cs, so
> 
> ... $\cs _2$ ...
> 
> but regular text like
> 
> ... $x_2$ ...
> 
> can be left as it is

He put the definitions in a external file which he loads with \usemodule and then this won’t work


\starttexcode
\def\lambdaone{\lambda_x}
\stoptexcode

\starttexcode
\def\lambdatwo{\lambda _x}
\stoptexcode

\starttexcode
\pushcatcodetable\donknuthmode
\def\lambdathree{\lambda_x}
\popcatcodes
\stoptexcode

\starttext
\doifmode{one}  {$\lambdaone  $}
\doifmode{two}  {$\lambdatwo  $}
\doifmode{three}{$\lambdathree$}
\stoptext


1. context --mode=one test.tex

! Undefined control sequence.
\lambdaone ->\lambda_x 
                       
<argument> $\lambdaone 
                       $
\firstofoneargument #1->#1
                          
l.16 \doifmode{one}  {$\lambdaone  $}
                                     
? 


2. context --mode=two test.tex

! Undefined control sequence.
\lambdatwo ->\lambda _
                      x
<argument> $\lambdatwo 
                       $
\firstofoneargument #1->#1
                          
l.17 \doifmode{two}  {$\lambdatwo  $}
                                     
? 


3. context --mode=three test.tex

-> test.pdf


Wolfgang



More information about the ntg-context mailing list