On 22/05/2010, at 4:56 PM, Aditya Mahajan wrote:
> The idea is to have a single file that contains all the data
> relevant for
> unicode math support in all flavors of TeX (cs names, math classes,
> etc). A
> script can then be used to transform this data in a form required
> by LaTeX and
> ConTeXt.
This sounds like exactly what I am looking for.
What I'm trying to do is automate the interweaving of MathML markup
with the (La)TeX source descriptions of the same piece of mathematics.
Thus for each Unicode entity, I need to know which macro might have
been used to produce it in the TeX version.
I'm doing this with a Perl script, so have an array whose entries
are pieces of regular expressions, which will be used for matching.
e.g.
'21CB' => '\leftrightharpoons',
'21CC' => '\rightleftharpoons',
'21CD' => '(\not\L|\nL)eftarrow',
'21CE' => '(\not\L|\nL)eftrightarrow',
'21CF' => '(\not\R|\nR)ightarrow',
'21D0' => '\Leftarrow',
'21D1' => '\Uparrow',
...
'1D466' => '(\it)y?',
'1D467' => '(\it)z?',
'1D468' => '\b(fit|m|oldsymbol)(A|{A})',
'1D469' => '\b(fit|m|oldsymbol)(B|{B})',
'1D46A' => '\b(fit|m|oldsymbol)(C|{C})',
...
'1D536' => '\(math)?frak(A|{y})',
'1D537' => '\(math)?frak(A|{z})',
'1D538' => '\(math|B)bb(A|{A})',
'1D539' => '\(math|B)bb(B|{B})',
'1D53A' => '\(math|B)bb(C|{C})', # non-unicode, see '2102'
'1D53B' => '\(math|B)bb(D|{D})',
>
> I was using ConTeXt's char-def.lua as a starting point.
>
>
http://source.contextgarden.net/tex/context/base/char-def.lua
>
> That file contains a big lua table with the information required by
> ConTeXt (the
> math tables no where near completion).
>
> As a proof of concept, I wrote a lua script which generates
> unicode-math-tables.tex that can then be used by Will's unicode
> math package.
> It never moved further than a proof of concept because of time
> limitation.
OK. So I'll need to get a copy of this unicode-math-tables.tex
and merge what it has with my own array.
>
>> You and Barbara and I (and Hans, if he's got something to do with
>> unicode-math in ConTeXt; he may not be interested, however) should
>> organise some time to discuss this at TUG2010. It's important we
>> start to use a public master document to base these mappings on.
>> (I.e., a TeX equivalent of David Carlisle's "XML Entity
>> Definitions for Characters".)
>
> You mean discuss the glyph names? Arriving on a consensus on that
> will be
> difficult.
I don't see any need to agree on single names for each symbol.
What is important. however, is to avoid name clashes.
The problem that I see looming with the release of the STIX fonts,
is what are the MathML/XML guys going to do to support all those
(~1000) new characters in the Private Use area?
I suppose it just won't be so Private anymore.
> Barabara's list is fairly complete and I think that it should be a
> starting point (as opentype-math does).
Certainly. As this figures to be what the bigger math publishers
will most likely be using, for the STIX fonts.
Also, it figures to be reasonably back-compatible with existing names
used with earlier (Type 1) fonts and their supporting packages.
>
> In ConTeXt, we have been discussing supporting multiple variants of
> cs names: a
> AMS variant (infty, coloneq, etc) and a "full" variant (infinity,
> colonequals,
> etc.)
Yes. This is what I need too.
Ultimately I want to be able to process existing LaTeX source
and produce fully tagged PDF, without the need to change anything
in the document source at all. It will just be a different TeX
engine and an enriched format file, doing the extra work.
>
> On a different note, does anyone know if the STIX font is going to
> be a single
> opentype math font or (as it appears in the glyph list) eight or
> nine opentype
> fonts, each covering a partial range?
I've seen nothing to suggest anything other than multiple fonts.
>
> Aditya
All the best,
Ross
------------------------------------------------------------------------
Ross Moore
ross....@mq.edu.au
Mathematics Department office: E7A-419
Macquarie University tel:
+61 (0)2 9850 8955
Sydney, Australia 2109 fax:
+61 (0)2 9850 8114
------------------------------------------------------------------------