Even this goes wrong:

\edef\mychar{�}\mychar

The real reason is that \dobuildtextaccent and \nobuildtextaccent are
protected macros.

Error log:

{\edef}

�->\Adiaeresis 

\Adiaeresis ->\dohandlecharacter {Adiaeresis}

\dohandlecharacter #1->\csname \ifcsname \characterencoding #1\endcsname \chara
cterencoding \else \nocharacterencoding \fi #1\endcsname 
#1<-Adiaeresis
{\csname}
{\ifcsname}

\characterencoding ->@default@
{true}

\characterencoding ->@default@
{\else}

\@default@Adiaeresis ->\buildtextaccent \textdiaeresis A

\buildtextaccent ->\ifignoreaccent \expandafter \nobuildtextaccent \else \expan
dafter \dobuildtextaccent \fi 
{\iffalse}
{false}
{\expandafter}
{\fi}

                       <========= \dobuildtextaccent ( protected )
                                                      is not expanded after \fi
\textdiaeresis ->\dohandlecharacter {textdiaeresis}

\dohandlecharacter #1->\csname \ifcsname \characterencoding #1\endcsname \chara
cterencoding \else \nocharacterencoding \fi #1\endcsname 
#1<-textdiaeresis
{\csname}
{\ifcsname}

\characterencoding ->@default@
{true}

\characterencoding ->@default@
{\else}

\@default@textdiaeresis ->\char 127 

\mychar ->\dobuildtextaccent \char 127 A

\dobuildtextaccent #1#2->{\let \char \normalaccent #1\let \char \normalchar #2}
#1<-\char 
#2<-1
{begin-group character {}
{\let}
{\accent}
! Missing number, treated as zero.
<to be read again> 
                   \let 
\dobuildtextaccent ... \char \normalaccent #1\let 
                                                  \char \normalchar #2}
\mychar ->\dobuildtextaccent \char 1
                                    27 A
l.21 \edef\mychar{�}\mychar
                           
? x

Simon

On Sat, Feb 08, 2003 at 09:52:54PM +0100, Simon Pepping wrote:
> I have an expansion problem in natural tables. I need to have this:
> 
> \bTD\XMLDBcontinuepartrue\ignorespaces\XMLflush{revremark}\eTD
> 
> but \XMLflush{revremark} must be expanded. When I do that using
> \expanded,
> 
> \expanded{\bTD\noexpand\XMLDBcontinuepartrue\ignorespaces\XMLflush{#1}}\eTD
> 
> I get errors when I have compound characters:
> 
> \XMLDBcontinuepartrue\ignorespaces 
>   Kleine \dobuildtextaccent\char 127 A{}nderung
> 
> It should be 
> 
> \dobuildtextaccent{\char 127} A 
> 
> for it to be valid. Or it should be 
> 
> \buildtextaccent\textdiaeresis A

-- 
Simon Pepping
email: [EMAIL PROTECTED]

_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to