[XeTeX] XeTeX: ready for full-time math?
Ross Moore
ross at ics.mq.edu.au
Tue Aug 22 05:59:23 CEST 2006
Hi Jonathan,
In a different thread ...
On 06/08/2006, at 8:40 AM, Jonathan Kew wrote:
> One way to achieve this, noting that maqqef is Unicode character U
> +05BE, would be to make this an "active character" and program it to
> insert a discretionary break after itself. Something like this:
>
> \catcode"05BE = \active
> \def^^^^05be{\char"05BE\discretionary{}{}{}}
>
> (The use of uppercase "05BE" and lowercase "05be" here is deliberate
> and required!)
Can the ^^^^ notation be used/extended to create a token for
plane-1 (or higher-plane) characters ?
e.g., mathematics needs to access Plane-1
U+1D515 (fraktur R)
I can declare a macro \frakR to have an expansion
that includes \char"1D515 .
But I want to do also:
\catcode"1D515\active
\let^^^^^1d515\frakR
so that a character that is input directly will have
the same result as using the named macro.
But I want even more than this, since I want to be able
to include coding, such as above, inside a macro-expansion.
e.g. using a declaration such as:
\DeclareActiveMathCharacter{1D515}{\frakR}{\mathord}
being expanded using a meta-macro something like:
\def\DeclareActiveMathCharacter#1#2#3{%
\def#2{\ensuremath{\text{#3{\char"#1}}}}%
\catcode"#1\active \lowercase{\let^^^^^#1#2}%
}
This currently cannot work, even with just 4 hex-bits,
since the ^^^^ is resolved on input of the macro-code,
whereas I need it to be delayed until the
meta-macro \DeclareActiveMathCharacter is called.
Can this idea be made to work ?
One way is to have the meta-macro writing out, then re-reading
an auxiliary file. But all that I/O is rather time-consuming,
when there are 1000s of math-symbols to be declared.
>
> HTH,
>
> JK
Cheers,
Ross
------------------------------------------------------------------------
Ross Moore ross at maths.mq.edu.au
Mathematics Department office: E7A-419
Macquarie University tel: +61 +2 9850 8955
Sydney, Australia 2109 fax: +61 +2 9850 8114
------------------------------------------------------------------------
More information about the XeTeX
mailing list