2.1 ?????

  2.1.1 TeX Engine
  2.1.2 latex.ltx
  2.1.3 plain.sty
  2.1.4 Palin + LaTeX
  2.1.5 Amsmath
  2.1.6 amsopn

<..configure mathltx Preamble..>
 \ifx \a:mathltx\:UnDef
    \NewConfigure{mathltx}{1}
    \Configure{mathltx}{}
 \fi
 \def\mml:class{class}
-_-_-

<..plain,latex mathltx..>
 <.nolimit functions.>
 <.limit functions.>
-_-_-

<..plain,latex mathltx..>+
 \let\A:displaylines=\a:displaylines
 \let\B:displaylines=\b:displaylines
 \let\C:displaylines=\c:displaylines
 \let\D:displaylines=\d:displaylines
 \Configure{displaylines}
    {\ifmmode
      \def\A:displaylines{\HCode{<mtable
                                    \mml:class="displaylines">}}%
      \def\B:displaylines{\HCode{</mtable>}}%
      \def\C:displaylines{\HCode{<mtr\Hnewline
                               \mml:class="displaylines"><mtd>}}%
      \def\D:displaylines{\HCode{</mtd></mtr>}}%
     \fi
     \A:displaylines}
    {\B:displaylines} {\C:displaylines}{\D:displaylines}
-_-_-

<..mathltx m:env..>
 \def\m:env#1{\HCode{<mtable
   \mml:class="#1"><mtr><mtd>}%
    \def\endm:env{\HCode
       {</mtd></mtr></mtable>}}}
-_-_-

<..amstex.tex mathltx..>
 \Configure{pmatrix}
    {\bgroup\m:env{pmatrix}}
    {\endm:env\egroup}
 \Configure{multline}
    {\HCode{<mtable\mml:class="multline">}}           {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline\mml:class="multline"><mtd>}}{\HCode{</mtd></mtr>}}
 \Configure{smallmatrix}
    {\HCode{<mtable\mml:class="smallmatrix">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline\mml:class="smallmatrix">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline\mml:class="smallmatrix">}}
    {\HCode{</mtd>}}
 \Configure{bmatrix}
    {\bgroup\m:env{bmatrix}}
    {\endm:env\egroup}
 \Configure{vmatrix}{\bgroup\m:env{vmatrix}}{\endm:env\egroup}
 \Configure{Vmatrix}{\bgroup\m:env{Vmatrix}}{\endm:env\egroup}
 \Configure{aligned}
    {\HCode{<mtable\mml:class="aligned">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline\mml:class="aligned">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline\mml:class="aligned">}}
    {\HCode{</mtd>}}
 \Configure{xalignat}
    {\HCode{<mtable\mml:class="xalignat">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline \mml:class="xalignat">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline  \mml:class="xalignat">}}
    {\HCode{</mtd>}}
 \Configure{xxalignat}
    {\HCode{<mtable  \mml:class="xxalignat">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline  \mml:class="xxalignat">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline  \mml:class="xxalignat">}}
    {\HCode{</mtd>}}
 \Configure{alignedat}
    {\HCode{<mtable \mml:class="alignedat">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline  \mml:class="alignedat">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline \mml:class="alignedat">}}
    {\HCode{</mtd>}}
 \Configure{gathered}
    {\HCode{<mtable \mml:class="gathered">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline \mml:class="gathered">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline \mml:class="gathered">}}
    {\HCode{</mtd>}}
-_-_-

<..mathltx..>
 % mathltx.4ht (2014-05-24-11:52), generated from tex4ht-mathltx.tex
 % Copyright (C) 2009-2010 TeX Users Group
 % Copyright (C) 2005-2009 Eitan M. Gurari
 <.TeX4ht copywrite.>
-_-_-

<..html-mltx..>
 % html-mltx.4ht (2014-05-24-11:52), generated from tex4ht-mathltx.tex
 % Copyright (C) 2009-2010 TeX Users Group
 % Copyright (C) 2005-2009 Eitan M. Gurari
 <.TeX4ht copywrite.>
-_-_-

<..configure mathltx tex4ht..>
 <.tex compiler mathltx.>
 <.sub, sup, subsup.>
 <.limits sub, sup, subsup.>
-_-_-

<..html4 font decorations..>
 \Configure{htf}{0}{+}{<span\Hnewline
    class="}{\%s}{-\%s}{x-x-\%d}{}{">}{</span>}%
 \Configure{htf}{1}{+}{<img\Hnewline
    src="}{" alt="}{" class="}{\%s}{-\%d}{x-x-\%x}{"\xml:empty>}%
 \Configure{htf}{3}{+}{<img\Hnewline
    src="}{" alt="}{" class="\%s-}{\%s}{-\%d}{x-x-\%x}%
    {" style="text-align:middle;"\xml:empty>}%
 \Configure{htf}{4}{+}{<small\Hnewline
    class="}{}{}{}{}{small-caps">}{</small>}%
 \Configure{htf}{6}{+}{<u\Hnewline
    class="}{}{}{}{}{underline">}{</u>}%
 \Configure{htf}{8}{+}
    {<sup class="htf"><strong>}{}{}{}{}{}{</strong></sup>}%
 \Configure{htf}{10}{+}
    {<span class="htf-cmbx">}{}{}{}{}{}{</span>}%
 \Configure{htf}{12}{+}
    {<span\Hnewline class="htf-calligraphy">}{}{}{}{}{}{</span>}%
-_-_-

<..no html4 font decorations..>
 \Configure{htf}{0}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{1}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{3}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{4}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{6}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{8}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{10}{+}{}{}{}{}{}{}{}%
 \Configure{htf}{12}{+}{}{}{}{}{}{}{}%
-_-_-

<..configure mathltx tex4ht..>+
 \def\mml:htfsym{\Configure
    {htf}{254}{+}{<mglyph\Hnewline fontfamily="}{\%s"}{
    index="\%s"}{ mathsize="\%d\%\%"}{}{ alt="}{"/>}}
 \def\ext:htfsym{\Configure{htf}{254}{+}{}{}{}{}{}{}{}}
-_-_-

<..configure mathltx-mml tex4ht..>
 \append:def\mml:htfsym{<.no html4 font decorations.>}
 \append:def\ext:htfsym{<.html4 font decorations.>}
-_-_-

We reserve code 254 (and 255) for unknown symbols.

<..configure mathltx latex..>
 \:CheckOption{core}\if:Option \expandafter\endinput \fi
 <.mathltx latex.>
 <.plain,latex mathltx.>
-_-_-

<..configure mathltx fontmath..>
 <.mathltx plain,fontmath.>
-_-_-

<..configure mathltx plain..>
 \:CheckOption{core}\if:Option \expandafter\endinput \fi
 <.mathltx plain.>
 <.mathltx plain,fontmath.>
 <.plain,latex mathltx.>
-_-_-

<..mathltx plain,fontmath..>
 <.rlbabel everypar.>
 <.plain,fontmath math classes.>
-_-_-

<..configure mathltx amsmath..>
 <.arr amsmath, amstex1.>
 <.amsmath mathltx.>
 <.amsmath symbols.>
-_-_-

<..configure mathltx amsmath..>+
 \Configure{intertext}
     {\IgnorePar \ifinalign@
         \HCode{</mtd></mtr><\a:mathltx
                         mtr><mtd columnspan="\HCol"
                                             \mml:class="intertext">}%
      \else \ifingather@
         \HCode{<mtr><mtd columnspan="\HCol"
                                             \mml:class="intertext">}%
      \fi\fi
      \AA:text{intertext}%
     }
     {\BB:text \ifvmode \IgnorePar \fi \EndP\ifinalign@
         \HCode{</mtd></mtr><\a:mathltx
                                            mtr><mtd>}%
      \else \ifingather@
          \HCode{</mtd></mtr>}%
      \fi\fi
     }
-_-_-

<..configure mathltx amsmath..>+
 \Configure{maketag}
   {\ifmathltx
      \ifmtext \expandafter\expandafter\expandafter\no:maketag\fi
    \else \expandafter\no:maketag\fi
    \AA:text{maketag}\hbox\bgroup\:gobbleIII :@:}
   {\egroup\BB:text }
 \def\no:maketag#1:@:#2\b:maketag{\hbox{#2}}
-_-_-

<..configure mathltx amstext..>
 \Configure{text}{\AA:text{text}}{\BB:text}
-_-_-

<..amsmath symbols..>
 \def\:tempc{\DOTSI\protect\:idotsint}
 \HLet\idotsint=\:tempc
 \def\:idotsint{%
   \mathop{\intop\cdotp\cdotp\cdotp\intop }\ilimits@
 }
-_-_-

<..configure mathltx amsopn..>
 <.amsopn / amstex.sty mathltx.>
-_-_-

<..configure mathltx amstex1..>
 % amstex.sty
 <.arr amsmath, amstex1.>
 <.amstex.sty mathltx.>
 <.amsopn / amstex.sty mathltx.>
   
-_-_-

<..configure mathltx amstex..>
 % amstex.tex
 <.mathltx m:env.>
 <.amstex.tex mathltx.>
-_-_-

<..configure mathltx vanilla..>
       <.vanilla mathltx.>
   
-_-_-

<..plain,latex mathltx..>+
 \let\mathltx:on=\relax
 \Configure{ }
    {\ifmathltx \ifmtext \space \else\HCode{\string\ }\fi
     \else \:nbsp\fi}
-_-_-

<..mathltx latex..>+
 \Configure{hspace}
   {\ifmathltx\ifmtext\else
    \HCode{\string\l:brace\the\tmp:dim\r:brace}\fi\fi}{}{ }
-_-_-

<..mathltx latex..>+
 \Configure{romannumeral}
    {\ifmathltx\ifmtext\else \HCode{<mrow  \mml:class="romannumeral">}\fi\fi}
    {\ifmathltx\ifmtext\else \HCode{</mrow>}\fi\fi}
-_-_-

<..configure html-mltx latex..>+
 \Configure{romannumeral}
    {\ifmtext\else
       \HCode{<\ifmathltx mrow \else span \fi \mml:class="romannumeral">}\fi
    }
    {\ifmtext\else \HCode{</\ifmathltx mrow\else span\fi>}\fi }
-_-_-

<..configure html-mltx latex..>+
 \Configure{hspace}
   {\ifmathltx \ifmtext \else
    \HCode{\string\l:brace\the\tmp:dim\r:brace}\fi\fi}
   {}{\ifmathltx  \else \:nbsp\fi}
-_-_-

<..configure html-mltx plain..>
 <.plain,latex html-mltx.>
-_-_-

<..configure html-mltx latex..>+
 <.plain,latex html-mltx.>
-_-_-

<..plain,latex mathltx..>+
 \def\:tempc#1{\HCode{\string\widehat\l:brace}#1\HCode{\r:brace}}
 \HLet\widehat=\:tempc
 \def\:tempc#1{\HCode{\string\widetilde\l:brace}#1\HCode{\r:brace}}
 \HLet\widetilde=\:tempc
-_-_-

<..plain,latex html-mltx..>
 \:CheckOption{new-accents}     \if:Option \else
    \ifx \mathltx:on\:UnDef
       \Configure{accents}
         {\ifmmode \expandafter\mathord\fi
          {<.temp hcode accents.>%
          \ht:special{t4ht@[}\if!#1!x\else#2\fi\ht:special{t4ht@]}}}
         {\ifmmode
              \Tg<mrow
                 \mml:class="accent#1">\mathord{#3}\Tg</mrow>%
           \else \HCode{<span class="accent#1">}#3\HCode{</span>}%
           \fi
         }%
    \fi
 \fi
-_-_-

<..plain,latex mathltx..>+
 \:CheckOption{new-accents}     \if:Option \else
    \ifx \mathltx:on\:UnDef
       \Configure{accents}
         {\ifmmode \expandafter\mathord\fi
          {<.temp hcode accents.>%
           \ht:special{t4ht@[}\if!#1!x\else#2\fi\ht:special{t4ht@]}}}
         {\Tg<mrow
                 \mml:class="accent#1">\mathord{#3}\Tg</mrow>%
         }%
    \fi
 \fi
-_-_-

<..temp hcode accents..>
 \leavevmode
 \if !#1!\ht:special{t4ht@+&{35}x#2;}%
 \else \expandafter \ifx\csname U#2#1\endcsname\relax
     \ht:special{t4ht@+&{35}x#2;}%
 \else
     \ht:special{t4ht@+&{35}x\csname U#2#1\endcsname;}%
 \fi \fi x%
-_-_-

The special replaces the ‘x’ character.

<..configure mathltx Preamble..>+
 \Configure{PROLOG}{VERSION,DOCTYPE,*XML-STYLESHEET}
 \:CheckOption{no-DOCTYPE} \if:Option
    \Configure{PROLOG}{VERSION,*XML-STYLESHEET}
 \fi
-_-_-

<..mathltx dtd..>
 \Configure{DOCTYPE}{\HCode
   {<!DOCTYPE html <.xhtml+mathltx dtd.>%
    >\Hnewline
 }}
-_-_-

<..xhtml+mathltx dtd..>
 PUBLIC
      "-//W3C//DTD XHTML 1.1 plus Mathltx 2.0//<.dtd lang.>"\Hnewline
      "http://www.w3.org/Math/DTD/mathltx2/xhtml-math11-f.dtd"
-_-_-

<..dtd lang..>
 \expandafter
 \ifx \csname a:dtd-lang\endcsname\relax EN\else
   \csname a:dtd-lang\endcsname
 \fi
-_-_-

<..xmlns..>
 xmlns="http://www.w3.org/1999/xhtml"
-_-_-

<..plain,latex mathltx..>+
 \let\mml:TeX=\TeX
 \def\TeX{\ifmathltx
    \HCode{<mtext
       \mml:class="TeX">TeX</mtext>}\else \mml:TeX\fi}
-_-_-

2.1.1 TeX Engine

<..sub, sup, subsup..>
 \Configure{SUB}
    {\Send{BACK}
      {\l:brace}\HCode{\r:brace\string_\l:brace}\trap:base}
    {\HCode{\r:brace}}
 \Configure{SUP}
    {\Send{BACK}
       {\l:brace}\HCode{\r:brace\string^\l:brace}\trap:base}
    {\HCode{\r:brace}}
 \Configure{SUBSUP}
    {\Send{BACK}
       {\l:brace}\HCode{\r:brace\string_\l:brace}\trap:base}
    {\HCode{\r:brace\string^\l:brace}\trap:base}
    {\HCode{\r:brace}}
 \def\trap:base{{\HCode{}}}
-_-_-

The \trap:base is to catch empty bases of exponents like, e.g., in $a^{^b}$.

<..mathltx Link..>
 \LinkCommand\mtxt:link{mtext, xlink:href, id,,,}
 \LinkCommand\msp:link{mstyle-3,%
    xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href,
    id, \mml:class="label",,}
 \let\M:Link=\Link
 \def\Link{\ifmathltx
      \ifmtext <.end mtext space.>\HCode{\%\Hnewline\%\string\begin{ref}}%
               \bgroup \let\:newlnch\space
               \expandafter\expandafter\expandafter\mtxt:link
      \else    \expandafter\expandafter\expandafter\msp:link\fi
    \else \expandafter\M:Link\fi}
 \let\M:EndLink=\EndLink
 \def\EndLink{\ifmathltx
      \ifmtext    <.end mtext space.>%
         \egroup \HCode{\%\Hnewline\%}\Endmtxt:link
         \HCode{\string\end{ref}\Hnewline}<.start mtext space.>%
      \else  \HCode{</mstyle-5><!--endlabel-->}\fi
    \else \expandafter\M:EndLink\fi}
-_-_-

<..tex compiler mathltx..>
 \Configure{DviMath}
     {\HCode{<!--l. \the\inputlineno-->}%
      \a:DviMathltx \mathltxtrue
        \ifOption{mml-fonts}{}{\mml:htfsym\NoFonts}%
        \IgnoreRule \a:math
        <.sv dvimath par.>\HCode{<![CDATA[}\IgnorePar}
     {\HCode{]]>}\EndIgnoreRule
      \ifOption{mml-fonts}{}{\ext:htfsym\EndNoFonts}%
      \mathltxfalse \After:Math \b:DviMathltx
      <.recall dvimath par.>}
 \NewConfigure{DviMathltx}{2}
-_-_-

<..tex compiler mathltx..>+
 \def\After:Math{\After:EndMath
    \global\let\After:EndMath=\empty}
 \let\After:EndMath=\empty
 \def\AfterMath#1{\append:def\After:EndMath{#1}%
    \global\let\After:EndMath=\After:EndMath}
-_-_-

<..configure mathltx latex..>+
 \let\m:Make:Label\Make:Label
 \def\Make:Label#1#2{%
    \ifmathltx \edef\:temp{#1}%
               \expandafter\AfterMath\expandafter{\expandafter\Make:Label
                                                 \expandafter{\:temp}{#2}}%
    \else      \m:Make:Label{#1}{#2}%
    \fi
 }
-_-_-

<..tex compiler mathltx..>+
 \newif\ifmathltx \mathltxfalse
 \newif\ifmtext \mtextfalse
 <.mathltx Link.>
 \NewConfigure{math}{1}
 \NewConfigure{@math}{1}
 \def\IgnoreRule{\ht:special{t4ht@\string_}}
 \def\EndIgnoreRule{\ht:special{t4ht@\string_\string_}}
 \Configure{$$}
    {\Configure{@math}{<.block display.>}\IgnorePar
     <.inline end-par comment.>\EndP\DviMath
     \HCode{\string $\string $}}
    {\HCode{\string $\string $}\EndDviMath
        \ShowPar\par{\csname HCondtrue\endcsname\noindent}}
    {\DisplayMathtrue}
 \Configure{$}
    {\Configure{@math}{<.inline display.>}\DviMath
     \HCode{\string $}}
    {\HCode{\string $}\EndDviMath}{}
 
 \newif\ifDisplayMath  \DisplayMathfalse
-_-_-

<..display math-..>
 \Configure{$$}
    {\Configure{@math}{<.block display.>}\IgnorePar
     <.inline end-par comment.>\EndP\DviMath }
    {\EndDviMath\ShowPar\csname par\endcsname
      {\csname HCondtrue\endcsname\noindent}}
    {\DisplayMathtrue}%
-_-_-

<..tex compiler mathltx..>+
 \Configure{radical}
   {\HCode{\string\sqrt}
    \special{t4ht\string~!e<\string{}%
    \special{t4ht\string~!e>\string}}%
    \special{t4ht\string~!ee/}%
    \special{t4ht\string~!ese-}%
   }
-_-_-

<..inline end-par comment..>
 \ifvmode\else \HCode{<!--tex4ht:inline-->}\fi
-_-_-

<..?..>
 \def\MathRow#1{%
    \Configure{\expandafter\:gobble\string#1*}{*}%
       {<mrow\Hnewline
          \mml:class="\expandafter\:gobble\string#1">}{</mrow>}%
       {\Configure{\expandafter\:gobble\string#1}{}{}{}{}}#1}%
-_-_-

<..recall dvimath par..>
 \sv:ignore
-_-_-

<..sv dvimath par..>
 \edef\sv:ignore{\if:nopar
     \noexpand\IgnorePar\else \noexpand\ShowPar\fi}%
-_-_-

The \MathRow requests a <mrow\Hnewline>...</mrow>, instead of the contributions of \mathop, \mathrel,...., for the next parameter.

<..tex compiler mathltx..>+
 \def\:MT{\ifmathltx m\fi}
 \Configure{halignTB}{\HCode{<\:MT table }\halignTBL}{\HCode{>}}
 \Configure{halignTBL}
    {t}{\ifmathltx \HCode{ style="text-align:top;" }\fi}
    {b}{\ifmathltx \HCode{ style="text-align:baseline;" }\fi}
    {c}{\ifmathltx \HCode{ style="text-align:axis;" }\fi}
    {}
 \def\t:HA{\HCode{</\:MT table>}}
 \def\R:HA{\HCode{<\:MT tr \Hnewline style="vertical-align:baseline;">}}
 \def\r:HA{\HCode{</\:MT tr>}}
 \def\D:HA{\HCode{<\:MT td \ifnum \HMultispan>1 colspan="\HMultispan"\fi}%
    \halignTD \HCode{\Hnewline>}}
 \def\d:HA{\HCode{</\:MT td>}}
-_-_-

2.1.2 latex.ltx

<..configure mathltx latex..>+
 \def\set:label#1{\ifmathltx
    \HCode{\%\Hnewline\%\string\begin{label}}%
      {\ht:special{t4ht@, }\let\:newlnch\space \mathltxfalse #1}%
    \HCode{\string\end{label}\Hnewline}%
   \else #1\fi
 }
-_-_-

<..configure mathltx latexNO..>
 \HAssign\set:labelN=0
 \def\set:label#1{\ifmmode
     \gHAdvance\set:labelN by 1
     \expandafter\gdef\csname sl:\set:labelN\endcsname
          {\set:label{#1}}%
     \expandafter\aftergroup\csname sl:\set:labelN\endcsname
   \else \gHAssign\set:labelN=0 #1\fi
 }
-_-_-

<..start mtext space..>
 \ht:special{t4ht@,&\#x00A0;}%
-_-_-

<..start mtext space..>+
 \ht:special{t4ht@, }%
-_-_-

<..end mtext space..>
 \ht:special{t4ht@,}%
-_-_-

<..configure html-mltx latex..>+
 \Configure{newline}
   {\ifmtext <.end mtext space.>\HCode{</mtext><mtext\Hnewline
                                              \mml:class="newline">}%
             <.start mtext space.>%
    \else \Tg<br\Hnewline class="newline" />\fi}
-_-_-

<..mathltx latex..>+
 \Configure{newline}
   {<.end mtext space.>\HCode{</mtext><\a:mathltx
                          mtext\Hnewline \mml:class="newline">}<.start mtext space.>}
-_-_-

<..mathltx latex..>+
 \Configure{[]}
   {\Configure{@math}{<.block display.>}\csname a:mathltx[]\endcsname
    \DviMath\HCode{\string\[}$$\DisplayMathtrue }
   {$$\HCode{\string\]}\EndDviMath\csname b:mathltx[]\endcsname}
 \Configure{()}
   {\Configure{@math}{<.inline display.>}\csname a:mathltx()\endcsname
    \DviMath\HCode{\string\(}$}
   {$\HCode{\string\)}\EndDviMath\csname b:mathltx()\endcsname}
 \NewConfigure{mathltx[]}{2}
 \NewConfigure{mathltx()}{2}
 <.config array.>
-_-_-

<..configure html-mltx latex..>+
 \Configure{mathltx[]}
   {\edef\MathPar{\ifvmode par-\fi}\IgnorePar\endgraf\EndP
     \HCode{<div class="\MathPar math-display">}}
   {\HCode{</div>}<.try inline par.>}
 \Css{div.math-display, div.par-math-display{text-align:center;}}
-_-_-

<..configure mathltx rlbabel..>
 \Configure{[]}
   {\Configure{@math}{<.block display.>}\csname a:mathltx[]\endcsname
    \DviMath\Tg<mrow\Hnewline>$$\DisplayMathtrue }
   {$$\Tg</mrow>\EndDviMath\csname b:mathltx[]\endcsname
    \if@rl\else\beginR\fi }
-_-_-

<..configure mathltx array..>
 <.config array.>
-_-_-

<..config array..>
 \Configure{halignTB<>}{array}{\HCode{\Hnewline
    equalrows="false"
    equalcolumns="false" class="array"}<>\HAlign}
 \Configure{array}
    {\expandafter\tmp:toks\expandafter{\Clr}%
     \HCode{\string\begin{array}{\the\tmp:toks}\Hnewline}}
    {\ifvmode \IgnorePar\fi \HCode{\string\end{array}}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}
    {}
    {<.mtd array.>}
    {}
 \ConfigureEnv{array}
    {\bgroup\Configure{$}{}{}{}}
    {\egroup}
    {}{}
-_-_-

<..configure html-mltx latex..>+
 \ConfigureEnv{array}
    {\PushStack\Col:Marg\AllColMargins
     \bgroup\Configure{$}{}{}{}}
    {\egroup \PopStack\Col:Marg\AllColMargins}
    {}{}
-_-_-

<..configure html-mltx array..>
 \ConfigureEnv{array}
    {\PushStack\Col:Marg\AllColMargins
     \bgroup\Configure{$}{}{}{}}
    {\egroup \PopStack\Col:Marg\AllColMargins}
    {}{}
-_-_-

<..mtd array..>
 \HCode{\ifnum \HCol>1 \a:math:amp\fi
   \ifnum 1<\HMultispan
      \string\multicolumn\l:brace\HMultispan\r:brace \fi}%
-_-_-

<..mtd matrix..>
 \HCode{\ifnum \HCol>1 \a:math:amp\fi
   \ifnum 1<\HMultispan
      \string\multicolumn\l:brace\HMultispan\r:brace \fi}%
-_-_-

<..configure mathltx tex4ht..>+
 \NewConfigure{math:amp}{1}
 \Configure{math:amp}{\string&}
-_-_-

<..insert Clr..>
 \expandafter\tmp:toks\expandafter{\Clr}%
 \HCode{<!---->}%
-_-_-

<..mathltx latex..>+
 \def\:MM{m}
 \Configure{HBorder}
    {<mtr\Hnewline \mml:class="hline">}
    {<.mml hline.>}
    {</mtr>}
    {<mtr\Hnewline \mml:class="cline">}
    {<mtd></mtd>}
    {<.mml hline.>}
    {</mtr>}
    {<mtr\Hnewline \mml:class="vspace" style="font-size:\HBorderspace">}
    {<mtd\Hnewline></mtd>}
    {</mtr>}
-_-_-

<..configure html-mltx latex..>+
 \def\:MM{\ifmathltx m\fi}
 \Configure{HBorder}
    {<\:MM tr\Hnewline
        \ifmathltx \expandafter\mml:class\else class\fi="hline">}
    {\ifmathltx<.mml hline.>\else
             <td><hr\xml:empty></td>\fi}
    {</\:MM tr>}
    {<\:MM tr\Hnewline
        \ifmathltx \expandafter\mml:class\else class\fi ="cline">}
    {<\:MM td></\:MM td>}
    {\ifmathltx<.mml hline.>\else
             <td><hr\xml:empty></td>\fi}
    {</\:MM tr>}
    {<\:MM tr\Hnewline
          \ifmathltx \expandafter\mml:class\else  class\fi="vspace"
          style="font-size:\HBorderspace">}
    {<\:MM td\Hnewline>\ifmathltx\else\string&\#x00A0;\fi
       </\:MM td>}
    {</\:MM tr>}
 \Configure{halign}
    {\EndP\halignTB{halign}}   \t:HA
    \R:HA\r:HA\D:HA\d:HA
-_-_-

<..mml hline..>
 <mtd><mo> \string&\#x0332; </mo></mtd>
-_-_-

<..mathltx latex..>+
 <.mathltx fonts.>
 \let\A:fbox=\a:fbox
 \let\B:fbox=\b:fbox
 \let\OLDf:box=\fbox
 \def\fbox{\relax\ifmmode
     \Configure{fbox}{\leavevmode\Configure{HtmlPar}{}{}{}{}\IgnoreRule
                      \AA:text{fbox}}{\BB:text\EndIgnoreRule}\else
     \Configure{fbox}{\leavevmode
                      \IgnoreRule\A:fbox}{\B:fbox\EndIgnoreRule}\fi
     \OLDf:box}
 \let\A:mbox=\a:mbox
 \let\B:mbox=\b:mbox
 \let\OLD:mbox=\mbox
 \def\mbox{\relax\ifmmode \Configure{mbox}{\AA:text{mbox}}{\BB:text}\else
                    \Configure{mbox}{\A:mbox}{\B:mbox}\fi\OLD:mbox}
 <.mathltx text util.>
-_-_-

<..mathltx text util..>
 \NewConfigure{@mtext}{1}
 \Configure{@mtext}{\string\text}
 \def\AA:text#1{<.config start mtext.>}
 \def\BB:text{<.config end mtext.>}
-_-_-

<..config start mtext..>
 \mtexttrue
 \HCode{\a:@mtext\l:brace}<.start mtext space.>\PauseMathClass
    <.config math within mtext.>%
-_-_-

<..config end mtext..>
 \mtextfalse\EndPauseMathClass<.end mtext space.>\HCode
      {\r:brace}%
-_-_-

<..config math within mtext..>
 \Configure{$}%
   {\EndPauseMathClass \mtextfalse
       <.end mtext space.>\HCode{\string$}}%
   {\HCode{\string$}<.start mtext space.>\PauseMathClass \mtexttrue}%
   {}%
-_-_-

<..amstex.tex mathltx..>+
 <.mathltx text util.>
 \Configure{text}{\AA:text{text}}{\BB:text}
 \Configure{format}
    {\HCode{<mtable \mml:class="format">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr\Hnewline \mml:class="format">}}
    {\HCode{</mtr>}}
    {\HCode{<mtd\Hnewline \mml:class="format">}}
    {\HCode{</mtd>}}
-_-_-

<..amsmath mathltx..>+
 \Configure{above}
    {\Send{GROUP}{0}{\l:brace}%
      \HCode{\string\above\space \the\tmp:dim\space}\o:@@over:\:gobbleII}
    {\Send{EndGROUP}{0}{\r:brace}}
 \def\overwithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac-4 linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{<mfenced-1 separators=""\Hnewline
           open="<.lr del 2.>" close="<.lr del 3.>"><mfrac-5
           linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:@@over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</\a:mathltx
                                     mrow></mfrac></mfenced>}
    \fi
  }
-_-_-

<..configure mathltx tex4ht..>+
 \Configure{over}
    {\Send{GROUP}{0}{\string\bgroup\space}}
    {\HCode{\string\over\space}\Send{EndGROUP}{0}{\string\egroup\space}}
 \Configure{atop}
    {\Send{GROUP}{0}{\string\bgroup\space}}
    {\HCode{\string\atop\space}\Send{EndGROUP}{0}{\string\egroup\space}}
 \Configure{above}
    {\Send{GROUP}{0}{<mfrac-6 linethickness="\the\tmp:dim"><mrow>}%
     \HCode{</mrow>}\o:over:\:gobbleII}
    {\HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}}
-_-_-

<..configure mathltx tex4ht..>+
 \Configure{abovewithdelims}
    {\abovewithdelims:III}
    {}
 \def\abovewithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac-7 linethickness="\the\tmp:dim"><mrow>}%
       \HCode{</mrow>}\o:over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{<mfenced-2 separators=""\Hnewline
           open="<.lr del 2.>" close="<.lr del 3.>"><mfrac-8
           linethickness="\the\tmp:dim"><mrow>}%
       \HCode{</mrow>}\o:over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</
                                 mrow></mfrac></mfenced>}
    \fi
    \tmp:dim
  }
 \Configure{atopwithdelims}
    {\atopwithdelims:III}
    {}
 \def\atopwithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac-9 linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:atop:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{<mfenced-3 separators=""\Hnewline
           open="<.lr del 2.>" close="<.lr del 3.>"><mfrac-10
           linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:atop:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</\a:mathltx
                               mrow></mfrac></mfenced>}
    \fi
  }
 \Configure{overwithdelims}
    {\overwithdelims:III}
    {}
 \def\overwithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac11><mrow>}%
       \HCode{</mrow>}\o:over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{<mfenced-4 separators=""\Hnewline
           open="<.lr del 2.>" close="<.lr del 3.>"><mfrac-12><mrow>}%
       \HCode{</mrow>}\o:over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</
                                mrow></mfrac></mfenced>}
    \fi
  }
-_-_-

<..configure mathltx amsmath..>+
 \Configure{abovewithdelims}
    {\abovewithdelims:III}
    {}
 \def\abovewithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfra-13 linethickness="\the\tmp:dim"><mrow>}%
       \HCode{</mrow>}\o:@@over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{\l:brace}%
       \HCode{\string\abovewithdelims
           <.lr del 2.><.lr del 3.>\the\tmp:dim\space}\o:@@over:
       \Send{EndGROUP}{0}{\r:brace}%
    \fi
    \tmp:dim
  }
 \Configure{atopwithdelims}
    {\atopwithdelims:III}
    {}
 \def\atopwithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac-14 linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:@@atop:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{<mfenced-6 separators=""\Hnewline
           open="<.lr del 2.>" close="<.lr del 3.>"><mfrac-1
           linethickness="0"><mrow>}%
       \HCode{</mrow>}\o:@@atop:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</\a:mathltx
                                mrow></mfrac></mfenced>}
    \fi
  }
 \Configure{overwithdelims}
    {\overwithdelims:III}
    {}
 \def\overwithdelims:III#1#2#3{%
    \def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
       \Send{GROUP}{0}{<mfrac-2><mrow>}%
       \HCode{</mrow>}\o:@@over:
       \HCode{<mrow>}\Send{EndGROUP}{0}{</mrow></mfrac>}
    \else
       \Send{GROUP}{0}{\l:brace}%
       \HCode{\string\overwithdelims
           <.lr del 2.><.lr del 3.>}\o:@@over:
       \Send{EndGROUP}{0}{\r:brace}%
    \fi
  }
-_-_-

<..mathltx latex..>+
 \Configure{frac}
    {\HCode{\string\frac\l:brace}}
    {\HCode{\r:brace}\Configure{over}{}{}}
    {\HCode{\l:brace}}
    {\HCode{\r:brace}}
-_-_-

<..configure html-mltx amsmath..>+
 \ifx \mathdisplay@@pop\:UnDef
    \ifx \emdf@La\:UnDef
       <.amsmath html-mltx pre 2000.>
    \else
       <.amsmath html-mltx jan 2000.>
    \fi
 \else
    <.amsmath html-mltx july 2000.>
 \fi
-_-_-

<..amsmath mathltx..>+
 \Configure{tmspace}
    {\HCode{\string\tmspace{\textspace}}}
-_-_-

<..try inline par..>
 \ShowPar\par{\HCondtrue\noindent}%
-_-_-

<..mathltx fonts..>
 \Configure{texttt}
    {\ifmathltx \Configure{@mtext}{\string\texttt}\fi}
    {}%
 \Configure{textit}
    {\ifmathltx \Configure{@mtext}{\string\textit}\fi}
    {}%
 \Configure{textrm}
    {\ifmathltx \Configure{@mtext}{\string\textrm}\fi}
    {}%
 \Configure{textup}
    {\ifmathltx \Configure{@mtext}{\string\textup}\fi}
    {}%
 \Configure{textsl}
    {\ifmathltx \Configure{@mtext}{\string\textsl}\fi}
    {}%
 \Configure{textsf}
    {\ifmathltx \Configure{@mtext}{\string\textsf}\fi}
    {}%
 \Configure{textbf}
    {\ifmathltx \Configure{@mtext}{\string\textbf}\fi}
    {}%
 \Configure{textsc}
    {\ifmathltx \Configure{@mtext}{\string\textsc}\fi}
    {}%
 \Configure{emph}
    {\ifmathltx \Configure{@mtext}{\string\emph}\fi}
    {}%
-_-_-

<..configure html-mltx latex..>+
 \:CheckOption{fonts} \if:Option
 \Configure{texttt}
      {\ifmathltx \Configure{@mtext}{\mml:class="texttt" mathvariant="monospace" }%
       \else     \HCode{<span class="texttt">}\fi}
      {\ifmathltx \else \HCode{</span>}\fi}
   \Configure{textit}
      {\ifmathltx \Configure{@mtext}{\mml:class="textit" mathvariant="italic" }%
       \else     \HCode{<span class="textit">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textrm}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textrm" mathvariant="normal" }%
       \else     \HCode{<span class="textrm">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textup}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textup" mathvariant="normal" }%
       \else     \HCode{<span class="textup">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textsl}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textst" mathvariant="italic" }%
       \else     \HCode{<span class="textsl">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textsf}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textsf" mathvariant="sans-serif" }%
       \else     \HCode{<span class="textsf">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textbf}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textbf" mathvariant="bold" }%
       \else     \HCode{<span class="textbf">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{textsc}
      {\ifmathltx \Configure{@mtext}{ \mml:class="textsc" mathvariant="normal" }%
       \else     \HCode{<span class="textsc">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
   \Configure{emph}
      {\ifmathltx \Configure{@mtext}{ \mml:class="emph" mathvariant="italic" }%
       \else     \HCode{<span class="emph">}\fi}
      {\ifmathltx\else \HCode{</span>}\fi}
 \fi
-_-_-

The \bgroup...\egroup is to handle cases like \nathbf{a}^x.

<..configure mathltx fontmath..>+
 \def\bold:version{bold}
 \Configure{mathbf}%
   {\bgroup \HCode{\string\mathbf\l:brace}}%
   {\HCode{\r:brace}\egroup }%
 \Configure{mathit}%
   {\bgroup \HCode{\string\mathit\l:brace}}%
   {\HCode{\r:brace}\egroup }%
 \Configure{mathrm}%
   {\bgroup \HCode{\string\mathrm\l:brace}}%
   {\HCode{\r:brace}\egroup }%
 \Configure{mathsf}%
   {\bgroup \HCode{\string\mathsf\l:brace}}%
   {\HCode{\r:brace}\egroup }%
 \Configure{mathtt}%
   {\bgroup \HCode{\string\mathtt\l:brace}}%
   {\HCode{\r:brace}\egroup }%
-_-_-

<..configure mathltx amsfonts..>
 \Configure{mathbb}{}{}
 \Configure{mathfrak}{}{}
-_-_-

Used to be

   \Configure{mathrm}{\Tg<mi \mml:class="mathrm">\PauseMathClass}%  
                     {\EndPauseMathClass\Tg</mi>}%  
   \Configure{mathbf}{\Tg<mi \mml:class="mathbf"  
                             mathvariant="bold">\PauseMathClass}%  
                     {\EndPauseMathClass\Tg</mi>}%

<..configure html-mltx latex..>+
 \Css{math .texttt { font-family: monospace; }}
 \Css{math .textit { font-style: italic; }}
 \Css{math .textsl { font-style: oblique; }}
 \Css{math .textsf { font-family: sans-serif; }}
 \Css{math .textbf { font-weight: bold; }}
-_-_-

<..plain,latex mathltx..>+
 \Configure{’}
    {\let\:primes=\empty}
    {\def\:tempa{\prime\prime}\ifx \:tempa\:primes
               \HCode{’’}\else
       \def\:tempa{\prime\prime\prime}\ifx \:tempa\:primes
               \HCode{’’’}\else
               \HCode{\:primes}\fi\fi
    }
    {\xdef\:primes{\:primes’}}
-_-_-

LaTeX places the primes within superscript, and mathltx seems to follow suit (maybe because of the use of latex fonts in mozilla). However, unicode maps already seem to assume raised representation for the primes.

2.1.3 plain.sty

<..mathltx plain..>
  \Configure{eqalign}
    {\HCode{<mtable \mml:class="eqalign">}}
    {\HCode{</mtable>}}
    {\HCode{<mtr \Hnewline \mml:class="eqalign">}}
    {\IgnorePar\HCode{</mtr>}}
    {\HCode{\ifnum \HCol=3 <mtd\Hnewline
        \mml:class="eqalign3"></mtd>\fi
        <mtd \Hnewline  \mml:class="eqalign\HCol">}}
    {\HCode{</mtd>}}
-_-_-

2.1.4 Palin + LaTeX

The default \left and \right in their default definition with tex produce multi-part delimiters, from cmex, on large subformulas. Hence, the ‘’.’ below is needed.

<..plain,latex mathltx..>+
 \def\left#1{\bgroup \a:left{#1}\b:left{#1}}
 \def\right#1{\a:right{#1}\b:right{#1}\egroup}
 \Configure{left}
    {}
    {\HCode{\string\left\space}#1\bgroup}
 \Configure{right}
    {\egroup\HCode{\string\right\space}#1}
    {}
 \def\{{{\HCode{\back:slash\l:brace}}}
 \def\}{{\HCode{\back:slash\r:brace}}}
 \let\lbrace\{
 \let\rbrace\}
 \def\def:DEL#1{\def\:DEL{#1}}
 \def\check:DEL#1#2{\def\:tempa{#1}\ifx \:tempa\:DEL \def\:DEL{#2}\fi}
 \NewConfigure{mfenced}[2]{\append:defI\def:DEL{\check:DEL{#1}{#2}}}
 <./bigl, /bigr,... for mathltx.>
 \:CheckOption{new-accents}     \if:Option \else
    <.config mathltx accents.>
 \fi
 \def\mathinner#1{\HCode{\string\mathinner\l:brace}#1\HCode{\r:brace}}
-_-_-

<..configure mathltx etex4ht..>
 \def\:tempc#1{\a:middle\mathrel{\left:right#1\:EMPTY}\b:middle}
 \HLet\middle=\:tempc
 \NewConfigure{middle}{2}
 \Configure{middle}
    {\bgroup
         \Configure{mathrel}{*}
           {<mo \mml:class="MathClass-rel"
                      fence="true" stretchy="true" >}
           {</mo>}
         {\Configure{mathrel}{}{}{}{}}%
         }
         {\egroup}
-_-_-

The \root ...\of {...} creates the following structure.

PUSH  
   ...root value...  
POP  
PUSH  
   PUSH  
      PUSH  
         ...root sign characters with PUSH-POP...  
      POP  
      PUSH  
         RIGHT4:   15213546  
         DOWN3:    -1553322  
         PUT_RULE: height: 26213  
                   length: 1197667  
         DOWN3:    1553322  
         PUSH  
            ...root content...  
         POP  
      POP  
   POP  
POP

<..plain,latex mathltx..>+
 \Configure{root}{\rev:root}{}{}
 \def\rev:root #1\b:root#2\c:root{%
    \HCode{\string\root\l:brace}{#1}%
              {\HCode{\r:brace\string \of\l:brace}#2}\HCode{\r:brace}}
 \def\AccentMath#1{\relax\ifmmode #1\else $#1$\fi}
-_-_-

<..lr del 2..>
 \expandafter
 \ifx \csname \string#2:lr del\endcsname\relax #2\else
      \csname \string#2:lr del\endcsname\fi
-_-_-

<..lr del 3..>
 \expandafter
 \ifx \csname \string#3:lr del\endcsname\relax #3\else
      \csname \string#3:lr del\endcsname\fi
-_-_-

<..plain,latex mathltx..>+
 \NewConfigure{mfenced}[2]{\expandafter
    \def\csname \string#1:lr del\endcsname{#2}}
 <.plain,latex mfenced.>
-_-_-

<..amsmath mathltx..>+
 \Configure{mfenced}{\lvert}{\string\lvert} vertical line
 \Configure{mfenced}{\rvert}{\string\rvert} double vertical line
 \Configure{mfenced}{\lVert}{\string\lVert}
 \Configure{mfenced}{\rVert}{\string\rVert}
-_-_-

<..amstex.sty mathltx..>
 \Configure{mfenced}{\lvert}{\string\lvert}
 \Configure{mfenced}{\rvert}{\string\rvert}
 \Configure{mfenced}{\lVert}{\string\lVert}
 \Configure{mfenced}{\rVert}{\string\rVert}
-_-_-

<..plain,latex mfenced..>
 \Configure{mfenced}{\|}{\string&\#x2225;}
 \Configure{mfenced}{.}{}
 \Configure{mfenced}{\langle}{\string&\#x27E8;} lang
 \Configure{mfenced}{\rangle}{\string&\#x27E9;} rang
 \Configure{mfenced}{\vert}{|}
 \edef\:temp{\noexpand\Configure{mfenced}{\noexpand\{}{\string\{}}\:temp
 \edef\:temp{\noexpand\Configure{mfenced}{\noexpand\}}{\string\}}}\:temp
 \edef\:temp{\noexpand
    \Configure{mfenced}{\noexpand\lbrace}{\string\lbrace}}\:temp
 \edef\:temp{\noexpand
    \Configure{mfenced}{\noexpand\rbrace}{\string\rbrace}}\:temp
 \Configure{mfenced}{<}{\string&\#x003C;} lt
 \Configure{mfenced}{>}{\string&\#x003E;} gt
 \Configure{mfenced}{\lceil}{\string&\#x2308;}
 \Configure{mfenced}{\rceil}{\string&\#x2309;}
 \Configure{mfenced}{\lfloor}{\string&\#x230A;}
 \Configure{mfenced}{\rfloor}{\string&\#x230B;}
 \Configure{mfenced}{\Vert}{\string&\#x2225;}
 \Configure{mfenced}{\rgroup}{)}
 \Configure{mfenced}{\lgroup}{(}
 \Configure{mfenced}{\bracevert}{|}
 \Configure{mfenced}{\bracevert}{|}
 \Configure{mfenced}{\downarrow}{\string&\#x2193;}
 \Configure{mfenced}{\uparrow}{\string&\#x2191;}
 \Configure{mfenced}{\Uparrow}{\string&\#x21D1;}
 \Configure{mfenced}{\updownarrow}{\string&\#x2195;}
 \Configure{mfenced}{\Updownarrow}{\string&\#x21D5;}
 \Configure{mfenced}{\Downarrow}{\string&\#x21D3;}
 \Configure{mfenced}{\backslash}{\string&\#x2216;}
 \Configure{mfenced}{\rmoustache}{\string&\#x25DD;}
 \Configure{mfenced}{\lmoustache}{\string&\#x25DC;}
 \Configure{mfenced}{\Arrowvert}{\string&\#x2225;}
 \Configure{mfenced}{\arrowvert}{\string&\#x007C;}
-_-_-

2.1.5 Amsmath

<..amsmath mathltx..>+
 \edef\:tempc{\hskip -\noexpand\arraycolsep
   \let\noexpand\@ifnextchar\noexpand\new@ifnextchar
   \noexpand\array{*{\the\c@MaxMatrixCols}c}}
 \HLet\env@matrix\:tempc
-_-_-

<..configure html-mltx amsmath..>+
 \Configure{@begin}
   {split}
   {\let\tagform@=\:gobble }
-_-_-

<..amsmath mathltx..>+
 \Configure{split}
    {\HCode{\string\begin\l:brace split\r:brace}}
    {\ifvmode\IgnorePar\fi
     \HCode{\string\end \l:brace split\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}  {}
-_-_-

<..amsmath mathltx..>+
 \ConfigureEnv{multline}
    {\bgroup <.display math-.>} {\egroup}
    {}{}
 \Configure{multline}
    {\HCode{\string\begin\l:brace multline\r:brace}}
    {\HCode{\string\end \l:brace multline\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}  {}
 \ConfigureEnv{multline*}
    {\bgroup <.display math-.>} {\egroup}
    {}{}
 \Configure{multline*}
    {\HCode{\string\begin\l:brace multline*\r:brace}}
    {\HCode{\string\end \l:brace multline*\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}
    {}
-_-_-

?math delimiters not removed for gather*?

<..amsmath mathltx..>+
 \ConfigureEnv{gather}
    {\bgroup <.display math-.>} {\egroup}
    {}{}
 \Configure{gather}
    {\HCode{\string\begin\l:brace gather\r:brace}}
    {\HCode{\string\end \l:brace gather\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}  {}
 \ConfigureEnv{gather*}
    {\bgroup <.display math-.>} {\egroup}
    {}{}
 \Configure{gather*}
    {\HCode{\string\begin\l:brace gather*\r:brace}}
    {\HCode{\string\end \l:brace gather*\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}  {}
-_-_-

<..amsmath mathltx..>+
 \Configure{subarray}
    {\HCode{\string\begin\l:brace subarray\r:brace
                         \l:brace \Hlcr\r:brace}}
    {\HCode{\string\end \l:brace subarray\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
 \Configure{smallmatrix}
    {\HCode{\string\begin\l:brace smallmatrix\r:brace}}
    {\HCode{\string\end \l:brace smallmatrix\r:brace}}
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}  {}
-_-_-

<..amsmath mathltx..>+
 \def\:tempc#1#2{%
    \ConfigureEnv{#1}
      {\def\end:al:env{}\ifmmode\else
        \ifvmode\else \def\end:al:env{\par\ShowPar\IgnoreIndent}\fi\fi}
      {\end:al:env }
      {}{}%
    \Configure{#1}
    {\IgnorePar
     \ifvmode \EndP  \else \EndP  \HCode{<!--tex4ht:inline-->}\fi
     \ifmathltx
        \Tg<mrow>\def\end:mathalign{\Tg</mrow>}%
     \else
        \Configure{@math}{<.block display.>}\DviMath
        \def\end:mathalign{\EndDviMath \DisplayMathfalse}%
        \DisplayMathtrue
     \fi
     \HCode{\string\begin\l:brace #2\r:brace}}
    {\HCode{\string\end \l:brace #2\r:brace}\end:mathalign }
    {\ifnum \HRow> 1\HCode{\string\\\Hnewline}\fi}  {}
    {<.mtd array.>}
    {\HCode{<.extra align col sep.>}}}
 \:tempc{align}{align}
 \:tempc{alignat}{alignat}
 \:tempc{xalignat}{xalignat}
 \:tempc{xxalignat}{xxalignat}
 \:tempc{flalign}{flalign}
 \:tempc{align*}{align*}
 \:tempc{alignat*}{alignat*}
 \:tempc{xalignat*}{xalignat*}
 \:tempc{flalign*}{flalign*}
-_-_-

<..configure html-mltx amsmath..>+
 \Css{mtd.align-odd{margin-left:2em;   text-align:right;}}
 \Css{mtd.align-even{margin-right:2em; text-align:left;}}
-_-_-

<..extra align col sep..>
 \ifodd\HCol\space\else \string\hspace\l:brace2em\r:brace\fi
-_-_-

<..rightward align col..>
 \ifodd\HCol  columnalign="right" \fi
-_-_-

Setting #1 below within mrow is problematic in the sense that arrows don’t stretch over multi-characters content #2. A accent="true" move the arrow lower, but also distribute the characters further apart.

<..under arrow..>
 \Tg<munder>%
 \Tg<mrow\Hnewline>#2\Tg</mrow>%
 #1%
 \Tg</munder>%
-_-_-

<..over arrow..>
 \Tg<mover class="overarrow">%
 \Tg<mrow\Hnewline>{#2#3}\Tg</mrow>%
 #1%
 \Tg</mover-4>%
-_-_-

<..arr amsmath, amstex1..>
 \Configure{underarrow@}
    {\Tg<munder>\Tg<mrow\Hnewline>}
    {\Tg</mrow>\Tg<mrow\Hnewline>}
    {\Tg</mrow>\Tg</munder>}
 \Configure{overarrow@}
    {\Tg<mover accent="true">\Tg<mrow\Hnewline>}
    {\Tg</mrow>\Tg<mrow>}
    {\Tg</mrow>\Tg</mover-5>}
 \def\:tempc#1#2#3{\a:overarrow@
       \hbox{$\m@th#2#3$}\b:overarrow@
       \hbox{#1#2}\c:overarrow@
    }
 \HLet\overarrow@\:tempc
-_-_-

<..configure mathltx amstex1..>+
 \ifx \o:overrightarrow:\:UnDef\else
    \HRestore\overrightarrow
    \HRestore\overleftarrow
    \HRestore\overleftrightarrow
 \fi
-_-_-

<..mathltx plain,fontmath..>+
 \Configure{overrightarrow}
   {\HCode{\string\overrightarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
 \Configure{overleftarrow}
   {\HCode{\string\overleftarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
-_-_-

<..amsmath mathltx..>+
 \Configure{underrightarrow}
   {\HCode{\string\underrightarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
 \Configure{underleftarrow}
   {\HCode{\string\underleftarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
-_-_-

<..amsmath mathltx..>+
 \Configure{overleftrightarrow}
   {\HCode{\string\overleftrightarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
 \Configure{underleftrightarrow}
   {\HCode{\string\underleftrightarrow\l:brace}\:gobble}
   {\HCode{\r:brace}}
-_-_-

<..amsmath mathltx..>+
 <.mathltx m:env.>
 \renewcommand{\xrightarrow}[2][]{%
    \HCode{\string\xrightarrow[}#1\HCode{]\l:brace}%
                                #2\HCode{\r:brace}}
 \renewcommand{\xleftarrow}[2][]{%
    \HCode{\string\xleftarrow[}#1\HCode{]\l:brace}%
                                #2\HCode{\r:brace}}
 
 \def\overset#1#2{{%
    \HCode{\string\overset\l:brace}#1\HCode{\r:brace\l:brace}%
                            #2\HCode{\r:brace}}}
 \def\underset#1#2{{%
    \HCode{\string\underset\l:brace}#1\HCode{\r:brace\l:brace}%
                            #2\HCode{\r:brace}}}
 
 \def\sideset#1#2#3{{\HCode{\string\sideset\l:brace}%
                     {\HCode{}}#1\HCode{\r:brace\l:brace}%
                       {\HCode{}}#2\HCode{\r:brace}%
                       {{\HCode{}}#3}%
                   }}
 
 \renewcommand{\hdotsfor}[1]{%
   \ifx[#1\@xp\shdots@for\else\hdots@for\@ne{#1}\fi}
 \def\shdots@for#1]{\hdots@for{#1}}
 \def\hdots@for#1#2{\multicolumn{#2}c%
   {\m@th\[email protected]\mkern-#1\dotsspace@
    \xleaders\hbox{$\m@th\mkern#1\dotsspace@.\mkern#1\dotsspace@$}%
            \hfill
    \mkern-#1\dotsspace@}%
    }
 \ConfigureEnv{eqxample}{}{}{}{}
 \ConfigureEnv{gather*}{}{}{}{}
 \ConfigureEnv{gathered}{}{}{}{}
 \ConfigureEnv{matrix}{}{}{}{}
-_-_-

The \HCode{} in \sideset is for catching superscripts and subscripts

<..amsmath symbols..>+
 \def\:tempc{\HCode{\string\mod\space}}
 \HLet\bmod\:tempc
 \def\:tempc#1{\HCode{\string\pod\l:brace}#1\HCode{\r:brace}}
 \HLet\pod=\:tempc
 \def\:tempc#1{\HCode{\string\pmod\l:brace}#1\HCode{\r:brace}}
 \HLet\pmod=\:tempc
 \def\:tempc#1{\HCode{\string\mod\l:brace}#1\HCode{\r:brace}}
 \HLet\mod=\:tempc
-_-_-

2.1.6 amsopn

<..amsopn / amstex.sty mathltx..>
 \def\varinjlim{{\underrightarrow\lim}}
 \def\varprojlim{{\underleftarrow\lim}}
 \def\varlimsup{{\overline\lim}}
 \def\varliminf{{\underline\lim}}
 \def\:tempc#1#2#3{\hbox{{\mtexttrue
    \HCode{<mrow\Hnewline
        \mml:class="text"><mtext
               \a:@mtext>}<.start mtext space.>\PauseMathClass
    \Configure{$}{\EndPauseMathClass\mtextfalse
       <.end mtext space.>\HCode{</mtext><\a:mathltx
               mrow\Hnewline \mml:class="math">}}
         {<.start mtext space.>\HCode{</mrow><mtext
            \a:@mtext>}\mtexttrue\PauseMathClass}{#1}
    \let\f@size#2\selectfont #3}%
    \mtextfalse \EndPauseMathClass <.end mtext space.>\HCode
       {</mtext></mrow>}}}
 \HLet\textdef@\:tempc
-_-_-

The original definitions for the following macros contain small spaces \, in the names, and the spaces imply improper mathltx outcome of the form <mo>...<mspace.../>...</mo>.

<..configure mathltx amsopn..>+
 \def\:tempc{\qopname\relax m{lim inf}}
 \HLet\liminf=\:tempc
 \def\:tempc{\qopname\relax m{lim sup}}
 \HLet\limsup=\:tempc
 \def\:tempc{\qopname\relax m{proj lim}}
 \HLet\projlim=\:tempc
 \def\:tempc{\qopname\relax m{inj lim}}
 \HLet\injlim=\:tempc
-_-_-

Why originally the accents are defined within a group? (knuth answer this in the texbook.)

<..plain,latex mathltx..>+
 \let\A:oalign=\a:oalign
 \let\B:oalign=\b:oalign
 \Configure{oalign}
    {\ifmmode \Configure{$}{\Tg<mrow\Hnewline>}{\Tg</mrow>}{}%
              \let\halign=\TeXhalign
              \Tg<mrow\Hnewline \mml:class="oalign">\else\A:oalign
     \fi}
    {\ifmmode \Tg</mrow>\else\B:oalign\fi}
-_-_-

<..configure mathltx amsopn..>+
 \Configure{qopname}
    {\Configure{mathop}{*}
       {\string\mathop\l:brace}
       {\r:brace}
       {}}
-_-_-