diff options
Diffstat (limited to 'Master/texmf-dist/tex/xmltex/base/mathml2.xmt')
-rw-r--r-- | Master/texmf-dist/tex/xmltex/base/mathml2.xmt | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/xmltex/base/mathml2.xmt b/Master/texmf-dist/tex/xmltex/base/mathml2.xmt new file mode 100644 index 00000000000..1895c725152 --- /dev/null +++ b/Master/texmf-dist/tex/xmltex/base/mathml2.xmt @@ -0,0 +1,191 @@ + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% mathml2.xmt + +%% Copyright 2003 David Carlisle, Sebastian Rahtz + +%% This file is distributed under the LaTeX Project Public License +%% (LPPL) as found at http://www.latex-project.org/lppl.txt +%% Either version 1.0, or at your option, any later version. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\DeclareNamespace{m}{http://www.w3.org/1998/Math/MathML} + + +\XMLstring\att@BLOCK<>block</> +\XMLstring\att@PREFIX<>prefix</> +\XMLstring\att@EQUATION<>equation</> + +\XMLname{m:math}{\MATH} +\XMLname{m:mlabeledtr}{\LABELEDTR} + +\XMLnamespaceattribute{m}{open}{\XML@fenceopen}{(} +\XMLnamespaceattribute{m}{close}{\XML@fenceclose}{)} +\XMLnamespaceattribute{m}{width}{\XML@mspacewidth}{0} + +\XMLelement{m:math} + {\XMLattribute{display}{\XML@mathmlmode}{foo} + } + {\def\GATHER{1}% + \ifx\XML@mathmlmode\att@BLOCK\[\else\(\fi + } + { + \ifx\XML@mathmlmode\att@BLOCK\]\else\)\fi + } + + +\XMLelement{m:mi} + {} + {\xmlgrab} + {\def\a{#1}\mi@test#1\relax} + +\gdef\mi@test#1#2\relax{ + \ifx\mi@test#2\mi@test + \expandafter#1 + \else + \mathrm{#1#2} + \fi} + +\XMLelement{m:mn} + {} + {\xmlgrab} + {\mathrm{#1}} + +\XMLelement{m:mo} + {\XMLattribute{form}{\XML@mathmlform}{inline}} + {\xmlgrab} + {\ifx\XML@mathmlform\att@PREFIX + \mathop{{\operator@font #1}}% + \else + #1% + \fi + } + +\XMLelement{m:mrow} + {} + {} + {} + + +\XMLelement{m:msub} + {} + {\xmlgrab} + {\xmltextwochildren\@firstofone\sb#1} + +\XMLelement{m:msup} + {} + {\xmlgrab} + {\xmltextwochildren\@firstofone\sp#1} + + +\XMLelement{m:msubsup} + {} + {\xmlgrab} + {\xmltexthreechildren\@firstofone\sb\sp#1} + +\XMLelement{m:mroot} + {} + {\xmlgrab} + {\xmltextwochildren\mathmlroot{}#1} + +\gdef\mathmlroot#1#2{\root#2\of{#1}} + + +\XMLelement{m:mfrac} + {} + {\xmlgrab} + {\xmltextwochildren\frac{}#1} + + +\XMLelement{m:msqrt} + {} + {\xmlgrab} + {\sqrt{#1}} + +\XMLelement{m:mtext} + {} + {\xmlgrab} + {\hbox{#1}} + + +\XMLelement{m:mover} + {} + {\xmlgrab} + {\xmltextwochildren\mathmlmover{}#1} +\XMLelement{m:munder} + {} + {\xmlgrab} + {\xmltextwochildren\mathmlmunder{}#1} + +\gdef\mathmlmover#1#2{\overset{#2}{#1}} +\gdef\mathmlmunder#1#2{\underset{#2}{#1}} + +% \DeclareMathDelimiter{{}{\mathopen} {operators}{"28}{largesymbols}{"00} +\global\delcode`{"66308 +\global\delcode`}"67309 + +\XMLelement{m:mfenced} + { } + {\left\XML@fenceopen} + {\right\XML@fenceclose} + +\XMLelement{m:mtable} + {\XMLattribute{class}{\XML@mtableclass}{}} + { + \def\StartTable{1}% + \def\LABELED{0}% + \ifx\XML@mtableclass\att@EQUATION + \def\GATHER{1}% + \begin{gathered} + \else + \def\GATHER{0}% + \begin{array}{*{99}{c}} + \fi + } + { + \ifx\XML@mtableclass\att@EQUATION + \end{gathered} + \else + \end{array} + \fi + } + + +\XMLelement{m:mtr} + {} + {\xmlgrab} + {\ifnum\StartTable=1 + \gdef\temp{#1\def\StartTable{0}}% + \else + \gdef\temp{\\#1}% + \fi + \aftergroup\temp} + +\XMLelement{m:mlabeledtr} + {} + {\xmlgrab} + {\xmltextwochildren{\tag*}\@firstofone#1\gdef\temp{\\}\aftergroup\temp} + +\XMLelement{m:mtd} + {} + {\xmlgrab} + {\ifnum\GATHER=1 + \gdef\temp{#1}% + \else + \gdef\temp{#1\tabcellsep}% + \fi + \aftergroup\temp + } + +\XMLelement{m:munderover} + {} + {} + {} + +\XMLelement{m:mspace} + {} + {} + {\@defaultunits\dimen@\XML@mspacewidth pt\relax\@nnil + \ifnum\dimen@=\z@\else\kern\dimen@\fi} + |