[NTG-context] bug with active :!;?

Hans Hagen Outside pragma at wxs.nl
Mon Aug 29 12:50:51 CEST 2005


Olivier wrote:

>Hi,
>
>Seems like the following crashes conTeXt:
>
>  
>
see patch below

>Strangely enough, the bug doesn't seem to occur in
>  \placeformula[eq:A]
>  
>
references get their labels cleaned up

>Many thanks for hinting a fix,
>  
>
\unprotect

\def\dopreventmode[#1]%
  {\protect
   \cleanuplabel{#1}%
   \rawprocesscommalist[\cleanlabel]\dodopreventmode}

\def\doenablemode[#1]%
  {\protect
   \cleanuplabel{#1}%
   \rawprocesscommalist[\cleanlabel]\dodoenablemode }

\def\dodisablemode[#1]%
  {\protect
   \cleanuplabel{#1}%
   \rawprocesscommalist[\cleanlabel]\dododisablemode}

\def\docheckformode#1#2#3% will be sped up with a quit
  {\cleanuplabel{#3}%
   \protect
   \checkedmodefalse
   \rawprocesscommacommand[\cleanlabel]\dodocheckformode
   \ifcheckedmode\@EA#1\else\@EA#2\fi}

\def\docheckforallmodes#1#2#3% will be sped up with a quit
  {\cleanuplabel{#3}%
   \protect
   \checkedmodetrue
   \rawprocesscommacommand[\cleanlabel]\dodocheckforallmodes
   \ifcheckedmode\@EA#1\else\@EA#2\fi}

\long\def\dodostartsetups#1#2#3% watch out: not \grabuntil
  {\cleanuplabel{\??su#2:#3}%
   \dograbuntil#1{\egroup\dodoglobal\long\setvalue\cleanlabel}} 

\def\dosetupsA#1%
  {\cleanuplabel{#1}%
   \processcommacommand[\cleanlabel]\dosetups}

\def\dosetupsB[#1]%
 {\cleanuplabel{#1}%
  \processcommacommand[\cleanlabel]\dosetups}

\def\dosetupsC[#1]%
  {\cleanuplabel{#1}%
   \dosetups\cleanlabel}

\protect

\useencoding [ffr] \mainlanguage[fr]

\setupheadertexts[text][\setups{run:left}]

\startsetups run:left
    nothing
\stopsetups

\starttext
    Nothing special here
\stoptext

\endinput

With the next pdftex we will not need this active mess any more since pre-char spacing will be supported natively; by that time we need to adapt the ffr files 

Hans 

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------



More information about the ntg-context mailing list