[texhax] Can't use \d (dot below) with \edef
Oleg Katsitadze
olegkat at gmail.com
Fri Jun 29 14:11:11 CEST 2007
On Fri, Jun 29, 2007 at 12:20:11PM +0100, Philip Taylor (Webmaster) wrote:
> Are you /sure/ ? Here is my test case :
>
> \toks 0 = {[ABC 123 def]}
> \def \MacroNotToBeExpanded {[\oalign]}
> \def \MacroToBeExpanded {[\space A\space \the \toks 0 ]}
> \edef\savedfirstmark{\noexpand\MacroNotToBeExpanded \the\toks0 \MacroToBeExpanded}
> \message {\meaning \savedfirstmark}
> \toks 0 = \expandafter {\savedfirstmark}
> [\the \toks 0 ]
> \end
Sorry, my bad -- I should have reread that message twice, as too much
time passed. Of course, because \savedfirstmark is \edef'd, the space
after \the\toks0 is removed during the expansion. My correction
should apply to a \def'd macro, like Philip's \MacroToBeExpanded --
the space after 0 _is_ there in the macro, but is removed when the
macro is expanded/typeset (so it is not in the _expansion_ of
\MacroToBeExpanded and not in \savedfirstmark).
Sorry for the blunder, and thanks for catching it,
Oleg
More information about the texhax
mailing list