Subject: | |
From: | |
Reply To: | |
Date: | Thu, 18 Sep 2008 14:09:00 +0100 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
Hello all,
I'm taking a look at how to begin on siunitx in expl3, and I've already
found something I'm stuck with. The code I have at present is essentially:
\def\example#1{
\begingroup
\makeatletter
\@makeother{\,}%
\@makeother{\.}%
\@makeother{\+}%
\@makeother{\-}%
\def~{}%
\def\,{}%
\catcode`\~=\active\relax
\catcode`\^=\active\relax
\catcode`\_=\active\relax
\everyeof{\noexpand}%
\endlinechar\m@ne
\protected@xdef\storage{\scantokens{#1}}%
\endgroup
}
which results in \storage containing an expanded copy of #1, with any
hard spaces (~ and \,) removed. This may not be the best way, but it
works. (In siunitx, see \si@num for the context of this).
In expl3, I can only find \scantokens, \everyeof and \endlinechar in the
:D range, so these are out. I'm guessing that I should do things a
different way, but could do with enlightenment. Does no-one want
\scantokens?
--
Joseph Wright
|
|
|