% $Id: tex4ht-jsml.tex 184 2016-07-04 17:35:09Z karl $
% Compile 3 times: latex tex4ht-jsml
% or xhlatex tex4ht-jsml "html,3,sections+"
% Copy html.4ht into the work directory before each of the
% first two compilations
%
% Copyright 2009-2016 TeX Users Group
% Copyright 2000-2009 Eitan M. Gurari
% Released under LPPL 1.3c+.
% See tex4ht-cpright.tex for license text.
\ifx \HTML\UnDef
\def\HTML{jsml,jsml-math}
\def\CONFIG{\jobname}
\def\MAKETITLE{\author{Eitan M. Gurari}}
\def\OPTIONS{xhtml,3,sections+}
\def\PREAMBLE{\usepackage{url}}
\def\next{\input mktex4ht.4ht \endinput}
\expandafter\next
\fi
\input{common-code}
\input{common}
\input{tex4ht-cpright}
\def\.{\string\a:mathml:\space}
\TocAt{section,subsection,likesubsection}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\Needs{"ls -l tex4ht-*.tex > ls-links.log"}
\openin15=ls-links.log
\ifeof15 \else \closein15
\bgroup
\catcode`\-=13
\def-#1tex4ht-{\bgroup \catcode`\-=12
\def-##1.tex{\egroup
[\Link[tex4ht\string-##1.html]{}{}##1\EndLink]}
-}
\input ls\string-links.log
\egroup
\fi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
\section{General}
%%%%%%%%%%%%%%%%%%
\begin{center}
\tt htlatex file "html,jsml" " -cjsmlhtf" "-cjsml"
\end{center}
%%%%%%%%%%%%%%%%%%
\section{Root}
%%%%%%%%%%%%%%%%%%
\<jsml\><<<
% jsml.4ht (|version), generated from |jobname.tex
% Copyright 2009-2016 TeX Users Group
% Copyright |CopyYear.2006. Eitan M. Gurari
|<TeX4ht copywrite|>
>>>
\<jsml-math\><<<
% jsml-math.4ht (|version), generated from |jobname.tex
% Copyright 2009-2016 TeX Users Group
% Copyright |CopyYear.2006. Eitan M. Gurari
|<TeX4ht copywrite|>
>>>
\<par del\><<<
!*?: >>>
\<tag of Tag\><<<
cw:>>>
\<show input line no\><<<
<!--l. \the\inputlineno-->%
>>>
\<try env inline par\><<<
\ShowPar
>>>
\<try inline par\><<<
\ShowPar \par{\HCondtrue\noindent}%
>>>
%%%%%%%%%%%%%%%%%%
\section{Outline}
%%%%%%%%%%%%%%%%%%
\<configure jsml article\><<<
|<config book-report-article|>
|<config report-article|>
>>>
\<configure jsml report\><<<
|<config book-report-article|>
|<config report-article|>
>>>
\<configure jsml book\><<<
|<config book-report-article|>
>>>
\<configure jsml letter\><<<
|<description lists|>
|<quote config|>
|<roman enumeiii|>
>>>
\<configure jsml amsbook\><<<
|<ams art,proc,book div|>
|<ams art,proc,book toc|> |%should appear before TocAt|%
>>>
\<configure jsml amsproc\><<<
|<ams art,proc,book|>
>>>
\<configure jsml amsart\><<<
|<ams art,proc,book|>
>>>
\<configure jsml-math plain\><<<
|<mathml plain|>
|<plain,latex mathml|>
>>>
\<ams art,proc,book\><<<
|<description lists|>
>>>
\<configure jsml scrbook\><<<
|<description lists|>
>>>
\<configure jsml scrreprt\><<<
|<description lists|>
>>>
\<configure jsml slides\><<<
|<description lists|>
|<roman enumeiii|>
>>>
\<configure jsml-math fontmath\><<<
|<plain,fontmath math|>
>>>
%%%%%%%%%%%%%%%%%%
\section{Preamble}
%%%%%%%%%%%%%%%%%%
\<configure jsml Preamble\><<<
|<pre definitions|>
\Configure{ext}{jsml}
>>>
\<configure jsml-math Preamble\><<<
\:CheckOption{math-} \if:Option
\edef\Preamble{\Preamble,mathml-}
\else
\Log:Note{for sources failing to produce
clean math code, try the command line option `math-'}%
\fi
>>>
\<configure jsml Preamble\><<<
\Configure{PROLOG}{JSML,VERSION,DOCTYPE,*XML-STYLESHEET}
\Configure{JSML}
{\HCode{<jsml>\Hnewline}}
>>>
\<configure jsml tex4ht\><<<
\Configure{HTML}
{\IgnorePar\HCode{<html \a:@HTML
|<xmlns|>\Hnewline>\Hnewline}}
{\ifvmode\IgnorePar\fi\HCode{</html>\Hnewline
</jsml>\Hnewline}}
>>>
\<xmlns\><<<
xmlns="
http://www.w3.org/1999/xhtml"
>>>
The XML definition and DOCTYPE elements are not accepted by the
browser.
\<configure jsml tex4ht\><<<
\Configure{VERSION}
{\HCode{\Hnewline<!--?xml version="1.0" |<xml encoding|> ?-->\Hnewline
<?xtpipes file="jsml.4xt" ?>\Hnewline}}
>>>
\<xml encoding\><<<
encoding="\expandafter\ifx \csname a:charset\endcsname\relax
\expandafter\:encoding\A:charset
\else \expandafter\:encoding\a:charset\fi"
>>>
\<configure jsml tex4ht\><<<
\Configure{DOCTYPE}
{\HCode{% <!DOCTYPE html \xhtml:DOCTYPE> \Hnewline
<!--
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
\Hnewline}}
\def\xhtml:DOCTYPE{PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//|<dtd lang|>"\Hnewline
\space\space "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"}
>>>
% %%%%%%%%%%%%%%%%%%
% \section{Paragraphs}
% %%%%%%%%%%%%%%%%%%
%
% \<configure jsml tex4ht\><<<
% \Configure{HtmlPar}
% {\EndP\HCode{|<show input line no|><PARA><p \csname a:!P\endcsname
% class="no\ifHCond par\else indent\fi">}}
% {\EndP\HCode{|<show input line no|><PARA><p \csname a:!P\endcsname
% class="\ifdim \parindent=\z@ no\fi indent">}}
% {\HCode{</p></PARA>}}
% {\HCode{</p></PARA>}}%
% >>>
%%%%%%%%%%%%%%%%%%
\section{Front Matter}
%%%%%%%%%%%%%%%%%%
\<config book-report-article\><<<
\Configure{maketitle}
{\ifvmode \IgnorePar\fi \EndP |<title for TITLE|>%
\HCode{<PARA><div class="maketitle">}}
{\ifvmode \IgnorePar\fi \EndP \HCode{<BREAK SIZE="medium" /></div></PARA>}}
{\NoFonts\IgnorePar\HCode{<h2
class="titleHead"\a:LRdir><EMP
LEVEL="moderate">}\IgnorePar}
{\HCode{</EMP></h2>}\IgnoreIndent\EndNoFonts}
|<config thanks author date and|>
>>>
\<thanks author date and\><<<
thanks author date and>>>
\<config thanks author date and\><<<
\Configure{|<thanks author date and|>}
{\ifvmode \IgnorePar\fi\EndP
\HCode{<SENT><span class="thanks"><BREAK SIZE="small" />}}
{\ifvmode \IgnorePar\fi\EndP \HCode{</span></SENT>}}
{\ifvmode \IgnorePar\fi\EndP
\HCode{<SENT><span class="author" ><BREAK SIZE="small" />}}
{\ifvmode \IgnorePar\fi\EndP \HCode{</span></SENT>}}
{\ifvmode \IgnorePar\fi\EndP
\HCode{<BREAK SIZE="small" /><SAYS CLASS="date" >}}
{\ifvmode \IgnorePar\fi\EndP \HCode{</SAYS><BREAK SIZE="small" />}}
{\HCode{<br />}}
{\HCode{<br />}}
>>>
\<config report-article\><<<
\ConfigureEnv{abstract}
{\IgnorePar\EndP
\HCode{<div clas="abstract"\Hnewline>}\par\ShowPar
\bgroup
\pend:def\abstractname{\HCode{<BREAK SIZE="small"/><EMP
LEVEL="moderate" class="abstractname">}}
\append:def\abstractname{\HCode{</EMP><BREAK SIZE="small"/>}}
}
{\egroup \ifvmode \IgnorePar\fi
\EndP\HCode{<BREAK SIZE="small" /></div>}}
{} {}
>>>
%%%%%%%%%%%%%%%%%%
\section{Sectional Divisions}
%%%%%%%%%%%%%%%%%%
\<config book-report-article\><<<
|<latex shared section config|>
|<latex shared subsection config|>
|<latex shared subsubsection config|>
|<latex shared paragraph config|>
|<config captions|>
|<description lists|>
|<quote config|>
|<roman enumeiii|>
>>>
\<configure jsml JHEP\><<<
|<latex shared part config|>
|<latex shared section config|>
|<latex shared subsection config|>
|<latex shared subsubsection config|>
>>>
\<configure jsml acm-proc-article-sp\><<<
|<latex shared part config|>
|<latex shared section config|>
|<latex shared subsection config|>
|<latex shared subsubsection config|>
>>>
\<configure jsml aa\><<<
|<latex shared section config|>
|<latex shared subsection config|>
|<latex shared subsubsection config|>
|<latex shared paragraph config|>
|<config captions|>
>>>
\<latex shared section config\><<<
\ConfigureMark{section}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">\add:description{added-description}
{\a:speak:section}}\@seccntformat{section}%
\HCode{</span><BREAK SIZE="small" />}\fi }
\ConfigureMark{subsection}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">\add:description{added-description}
{\a:speak:subsection}}\@seccntformat{subsection}%
\HCode{</span><BREAK SIZE="small" />}\fi }
|<latex speak section|>
>>>
\<latex shared section config\><<<
\Configure{section}{}{}
{\ifvmode \IgnorePar\fi \EndP\IgnorePar
\HCode{<h3 class="sectionHead"\a:LRdir><EMP
LEVEL="moderate">}\TitleMark\space\HtmlParOff}
{\HCode{</EMP></h3>}\HtmlParOn\ShowPar \IgnoreIndent \par}
\Configure{likesection}{}{}
{\ifvmode \IgnorePar\fi
\EndP\IgnorePar\HCode{<h3
class="likesectionHead"\a:LRdir><EMP
LEVEL="moderate">}\HtmlParOff}
{\HCode{</EMP></h3>}\HtmlParOn \IgnoreIndent \par}
>>>
\<latex shared section config\><<<
\Configure{subsection}{}{}
{\ifvmode \IgnorePar\fi
\EndP\bgroup \IgnorePar\HCode{<h4
class="subsectionHead"\a:LRdir><EMP
LEVEL="moderate">}%
\TitleMark\space \HtmlParOff}
{\HCode{</EMP></h4>}\HtmlParOn
\IgnoreIndent\egroup\par\ShowPar}
\Configure{likesubsection}{}{}{\EndP\bgroup
\ifvmode \IgnorePar\fi
\HCode{<h4 class="likesubsectionHead"\a:LRdir><EMP
LEVEL="moderate">}\HtmlParOff }
{\HCode{</EMP></h4>}\HtmlParOn
\IgnoreIndent\egroup\par\ShowPar}
>>>
\<ams art,proc,book div\><<<
\ConfigureMark{subsection}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">\add:description{added-description}
{\a:speak:section}}\@ifundefined{sectionname}{}{%
\ignorespaces\sectionname\space}%
\@seccntformat{section}%
\HCode{</span><BREAK SIZE="small" />}\fi }
|<latex speak section|>
>>>
\<latex speak section\><<<
\NewConfigure{speak:section}{1}
\Configure{speak:section}{section}
\NewConfigure{speak:subsection}{1}
\Configure{speak:subsection}{subsection}
>>>
\<configure jsml Preamble\><<<
\def\add:description#1#2{<span class="#1"
title="speech-extra" >\Hnewline #2\Hnewline</span>}
\def\add:vdescription#1#2{<div class="#1"
title="speech-extra" >\Hnewline #2\Hnewline</div>}
>>>
%%%%%%%%%%%%%
\section{Margin Notes}
%%%%%%%%%%%%%
\<configure jsml latex\><<<
\Configure{marginpar}
{\ifvmode
\IgnorePar\EndP\HCode{<p class="marginpar"><PROS
PITCH="+30" >}%
|<begin ver marginpar|>%
\def\end:margp{\ifvmode \IgnorePar\fi \EndP
|<end ver marginpar|>\HCode{</PROS></p><BREAK SIZE="small"/>}}%
\par
\else
\SaveEndP
\HCode{<SENT><span class="marginpar"><PROS
PITCH="+30" >}|<begin hor marginpar|>%
\bgroup
\Configure{HtmlPar}
{<BREAK SIZE="small" />}
{\HCode{<BREAK SIZE="small" />}}
{}{}%
\def\end:margp{\egroup
|<end hor marginpar|>\HCode{</PROS><BREAK SIZE="small"/></span></SENT>}\RecallEndP}%
\fi
}
{\end:margp}
>>>
\<begin ver marginpar\><<<
\HCode{<div>
\add:description{begin-end}{<PROS PITCH="-15">\a:speak:marginpar
</PROS>}</div><div>}%
>>>
\<end ver marginpar\><<<
\HCode{</div><div>
\add:description{begin-end}{\b:speak:marginpar}</div>}%
>>>
\<begin hor marginpar\><<<
\HCode{\add:description{begin-end}{<PROS pitch="-15">\a:speak:marginpar
</PROS>}}%
>>>
\<end hor marginpar\><<<
\HCode{\add:description{begin-end}{\b:speak:marginpar}}%
>>>
\<configure jsml latex\><<<
\NewConfigure{speak:marginpar}{2}
\Configure{speak:marginpar}
{<BREAK SIZE="small"/>margin note<BREAK SIZE="small"/>}
{}
>>>
%%%%%%%%%%%%%%%%%%
\section{Footnotes}
%%%%%%%%%%%%%%%%%%
\<configure jsml latex\><<<
|<latex footnotes|>
>>>
\<latex footnotes\><<<
\Configure{footnote-mark}
{\HCode{<SENT><span class="footnote-mark"><PROS
PITCH="+30" >}|<begin footnote note|>}
{|<end footnote note|>\HCode{</PROS><BREAK SIZE="small"/></span></SENT>}}
>>>
\<begin footnote note\><<<
\HCode{\add:description{added-description}{<PROS
pitch="-15">\a:speak:footnote</PROS>}}%
>>>
\<end footnote note\><<<
\HCode{}%
>>>
\<latex footnotes\><<<
\NewConfigure{speak:footnote}{1}
\Configure{speak:footnote}
{ <BREAK SIZE="small"/>footnote<BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%%%%%%
\section{Lists}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%
\subsection{Shared}
%%%%%%%%%%%%%
\<configure jsml latex\><<<
|<latex lists|>
>>>
\<latex lists\><<<
\ConfigureList{trivlist}%
{\EndP\HCode{<dl \a:LRdir class="trivlist">}%
|<save end:itm|>\global\let\end:itm=\empty}
{|<recall end:itm|>\EndP\HCode{</dd></dl>}\ShowPar}
{\end:itm \global\def\end:itm{\EndP\Tg</dd>}\HCode{<dt
class="trivlist">}\bgroup \bf}
{\egroup\HCode{</dt><dd\Hnewline class="trivlist">}}
>>>
\<latex lists\><<<
\ConfigureList{list}%
{\EndP\HCode{<dl \a:LRdir class="list\expandafter\the
\csname @listdepth\endcsname">}%
|<save end:itm|>\global\let\end:itm=\empty}
{|<recall end:itm|>\EndP\HCode{</dd></dl>}\ShowPar}
{\end:itm \global\def\end:itm{\EndP\Tg</dd>}\HCode{<dt
class="list">}\bgroup \bf}
{\egroup\HCode{</dt><dd\Hnewline class="list">}}
>>>
%%%%%%%%%%%%%
\subsection{Itemized}
%%%%%%%%%%%%%
\<latex lists\><<<
\ConfigureList{itemize}%
{\EndP\HCode{<ul
\a:LRdir class="ul-itemize\expandafter\the
\csname @itemdepth\endcsname"><PROS PITCH="+15">}%
|<begin itemize note|>%
|<save end:itm|>\global\let\end:itm=\empty}
{|<recall end:itm|>\ifvmode \IgnorePar\fi
\EndP \HCode{</li>}|<end itemize note|>%
\HCode{</PROS></ul>}\ShowPar}
{\end:itm \global\def\end:itm{\EndP\HCode{</li>}}%
\HCode{<li class="li-itemize">}|<itemize item|>\DeleteMark
}
{\HCode{}}
>>>
\<begin itemize note\><<<
\HCode{<div class="itemize">%
<div class="added-list-description">%
\add:description{added-description}{\a:speak:itemize}</div>}%
>>>
\<end itemize note\><<<
\HCode{<div class="added-list-description">%
\add:description{added-description}{\b:speak:itemize}</div></div>}%
>>>
\<itemize item\><<<
\HCode{<span class="added-list-description">%
\add:description{added-description}{\c:speak:itemize}</span>}%
>>>
\<latex lists\><<<
\NewConfigure{speak:itemize}{3}
\Configure{speak:itemize}
{<BREAK SIZE="small"/>begin \ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi
list}
{<BREAK SIZE="small"/>end \ifcase\csname @listdepth\endcsname
\or sub \or sub sub \or sub sub sub \else\fi
list<BREAK SIZE="small"/>}
{<BREAK SIZE="medium"/><PROS PITCH="-5">|%\ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi|%
item</PROS><BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%
\subsection{Enumerate}
%%%%%%%%%%%%%
\<latex lists\><<<
\ConfigureList{enumerate}%
{|<enumerate I|>}
{|<enumerate II|>}
{|<enumerate III|>}
{|<enumerate IV|>}
>>>
\<enumerate I\><<<
\EndP \HCode{<ol \a:enumerate:\space
class="ol-enumerate\expandafter\the\csname @enumdepth\endcsname"
\a:LRdir
><PROS PITCH="+15">}%
|<begin enumerate note|>%
|<save end:itm|>\global\let\end:itm=\empty
>>>
\<enumerate II\><<<
|<recall end:itm|>%
\EndP \HCode{</li>}%
|<end enumerate note|>%
\HCode{</PROS></ol>}\ShowPar
>>>
\<enumerate III\><<<
\end:itm \gdef\end:itm{\EndP\HCode{</li>}}%
\HCode{<li class="li-enumerate" \Hnewline><SENT><span
class="ol-mark"><BREAK
SIZE="medium"/><PROS PITCH="-5" >}|<enumerate item|>%\DeleteMark
>>>
\<enumerate IV\><<<
\HCode{</PROS><BREAK SIZE="small"/></span></SENT>}%\AnchorLabel
>>>
\<save end:itm\><<<
\PushMacro\end:itm
>>>
\<recall end:itm\><<<
\PopMacro\end:itm \global\let\end:itm \end:itm
>>>
\<begin enumerate note\><<<
\HCode{<div class="enumerate">%
<div class="added-list-description">%
\add:description{added-description}{\a:speak:enumerate}</div>}%
>>>
\<end enumerate note\><<<
\HCode{<div class="added-list-description">%
\add:description{added-description}{\b:speak:enumerate}</div></div>}%
>>>
\<enumerate item\><<<
\HCode{<span class="added-list-description">%
\add:description{added-description}{\c:speak:enumerate}</span>}%
>>>
\<roman enumeiii\><<<
\Configure{enumiii}
{\HCode{<span class="roman-numeral">}%
Roman numeral \HCode{}\the\c@enumiii
\HCode{}\:gobbleII}
{\HCode{</span>}}
\long\def\:tempc{(\theenumii)}
\ifx \labelenumii\:tempc
\def\:tempc{(\HCode{}\theenumii\HCode{})}
\HLet\labelenumii\:tempc
\fi
>>>
\<latex lists\><<<
\NewConfigure{speak:enumerate}{3}
\Configure{speak:enumerate}
{<BREAK SIZE="small"/>begin \ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi
list}
{<BREAK SIZE="small"/>end \ifcase\csname @listdepth\endcsname
\or sub \or sub sub \or sub sub sub \else\fi
list<BREAK SIZE="small"/>}
{|%\ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi|%
item <BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%
\subsection{Description}
%%%%%%%%%%%%%
\<description lists\><<<
\ConfigureList{description}%
{\EndP
\HCode{<dl \a:LRdir class="dl-description"><PROS PITCH="+15">}%
|<begin description note|>%
|<save end:itm|>\global\let\end:itm=\empty}
{|<recall end:itm|>\EndP\HCode{</dd>}%
|<end description note|>%
\HCode{</PROS></dl>}%
\ShowPar}
{\end:itm \global\def\end:itm{\EndP\HCode{</dd>}}\HCode{<SENT><span><dt
class="dt-description"><EMP
LEVEL="moderate">}|<description item|>\bgroup \bf}
{\egroup\EndP\HCode{</EMP><BREAK
SIZE="small"/></dt></span></SENT><dd\Hnewline class="dd-description">}}
>>>
\<begin description note\><<<
\HCode{<div class="description">%
<div class="added-list-description">%
\add:description{added-description}{\a:speak:description}</div>}%
>>>
\<end description note\><<<
\HCode{<div class="added-list-description">%
\add:description{added-description}{\b:speak:description}</div></div>}%
>>>
\<description item\><<<
\HCode{<span class="added-list-description">%
\add:description{added-description}{\c:speak:description}%
</span>}%
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:description}{3}
\Configure{speak:description}
{<BREAK SIZE="small"/>begin \ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi
list}
{<BREAK SIZE="small"/>end \ifcase\csname @listdepth\endcsname
\or sub \or sub sub \or sub sub sub \else\fi
list<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>|%\ifcase\csname @listdepth\endcsname
\or \or sub \or sub sub \or sub sub sub \else\fi|%
item}
>>>
%%%%%%%%%%%%%%%%%%
\section{Verbatim}
%%%%%%%%%%%%%%%%%%
\<configure jsml latex\><<<
\Configure{verbatim}
{\HAdvance\Verb:N by 1 \ifnum \Verb:N>1
\:nbsp \HCode{<br />}\fi}
{\a:sp}
\def\env:verb#1{\ifinner\else \vfill\break\fi
\IgnorePar\EndP \HAssign\Verb:N=0
\HCode{<PARA><div class="#1"\a:LRdir>%
\add:description{added-description}{begin verbatim}%
<PROS \a:verbatim::style >}\EndNoFonts}
\def\endenv:verb{\NoFonts
\EndP \ht:special{t4ht=</PROS>%
\add:description{added-description}{end verbatim}%
</div></PARA>}|<try inline par|>}
\NewConfigure{verbatim::style}{1}
\Configure{verbatim::style}{RATE="150" PITCH="-10" RANGE="0"}
>>>
\<configure jsml latex\><<<
\Configure{verb}
{\HCode{<SENT><span class="verb"\a:LRdir><PROS \a:verbatim::style >}}
{\HCode{</PROS></span></SENT>}}
>>>
% %%%%%%%%%%%%%%%%%%
% \section{Verbatim}
% %%%%%%%%%%%%%%%%%%
%
%
% \<configure jsml latex\><<<
% \Configure{verbatim} {} {\a:sp}
% \def\env:verb#1{\ifinner\else \vfill\break\fi
% \IgnorePar\EndP \HAssign\Verb:N=0
% \HCode{\add:description{added-description}{begin verbatim}%
% <pre class="#1"\a:LRdir>}\EndNoFonts}
% \def\endenv:verb{\NoFonts
% \EndP \ht:special{t4ht=</pre>}%
% \add:description{added-description}{end verbatim}%
% |<try inline par|>}
% \def\start:fenv#1{\:xhtml{\IgnorePar
% \EndP}\HCode{<div align="#1"\Hnewline\a:LRdir>}}
% \def\end:fenv{\IgnorePar\HCode{</div>}\IgnorePar}
% >>>
%%%%%%%%%%%%%%%%%%
\section{Figures}
%%%%%%%%%%%%%%%%%%
\<config book-report-article\><<<
|<config captions|>
>>>
\<configure jsml aa\><<<
|<config captions|>
>>>
\<ams art,proc,book\><<<
|<config captions|>
>>>
\<configure jsml latex\><<<
\ConfigureEnv{figure}
{\IgnorePar\EndP
\HCode{<PARA><div class="figure"\Hnewline>|<begin figure note|>}%
\bgroup \Configure{float}{\ShowPar}{}{}%
}
{\egroup
\IgnorePar\EndP\HCode{|<end figure note|></div></PARA>}%
|<try env inline par|>\par}
{}{}
>>>
\<config captions\><<<
\Configure{caption}
{\IgnorePar\EndP
\HCode{<PARA><div class="caption"><SENT><span class="mark">%
<BREAK SIZE="small"/><EMP
LEVEL="medium">}|<caption of fig|>}
{: \HCode{</EMP><BREAK SIZE="small"/>}}
{|<end caption|>\HCode{</span></SENT>%
<SENT><span \Hnewline class="content">%
\add:description{added-description}{\a:speak:caption}}}
{\HCode{\add:description{added-description}{\b:speak:caption}%
</span></SENT></div></PARA>}|<caption label comment|>}
>>>
\<begin figure note\><<<
<div>\add:description{begin-end}{\a:speak:figure}</div>%
>>>
\<end figure note\><<<
<div>\add:description{begin-end}{\b:speak:figure}</div>%
>>>
\<caption of fig\><<<
\HCode{\add:description{added-description}{\c:speak:caption}}%
>>>
\<end caption\><<<
>>>
\<configure jsml latex\><<<
\NewConfigure{speak:caption}{3}
\Configure{speak:caption}
{}
{}
{caption of}
\NewConfigure{speak:figure}{2}
\Configure{speak:figure}
{<BREAK
SIZE="small"/><PROS PITCH="-15" >begin figure</PROS>}
{<BREAK
SIZE="small"/><PROS PITCH="-15" >end figure</PROS>}
>>>
%%%%%%%%%%%%%%%%%%
\section{Quote}
%%%%%%%%%%%%%%%%%%
\<config book-report-article\><<<
|<quote config|>
>>>
\<configure html4 letter\><<<
|<quote config|>
>>>
\<quote config\><<<
\ConfigureEnv{quote}
{}{}
{\IgnorePar\EndP
\HCode{<PARA><div class="quote"><PROS
PITCH="-10" >}}
{\IgnorePar\EndP
\HCode{</PROS></div></PARA>}\ShowPar\ShowIndent}
>>>
%%%%%%%%%%%%%%%%%%
\section{Fonts}
%%%%%%%%%%%%%%%%%%
\<configure jsml tex4ht\><<<
\Configure{htf}{0}{+}{}{}{}{}{}{}{}
>>>
\<configure jsml latex\><<<
\Configure{texttt}
{\Protect\HCode{<SENT><span class="texttt"><PROS
\a:verbatim::style}}
{\Protect\HCode{</PROS></span></SENT>}}
\Configure{emph}
{\Protect\HCode{<SENT><span class="emph"><EMP
LEVEL="moderate">}}
{\Protect\HCode{</EMP></span></SENT>}}
\Configure{textbf}
{\Protect\HCode{<span class="textbf"><EMP
LEVEL="strong">}}
{\Protect\HCode{</EMP></span>}}
>>>
\<\><<<
\Configure{textit}{\Protect\HCode{<span class="textit">}}
{\Protect\HCode{</span>}}
\Configure{textrm}{\Protect\HCode{<span class="textrm">}}
{\Protect\HCode{</span>}}
\Configure{textup}{\Protect\HCode{<span class="textup">}}
{\Protect\HCode{</span>}}
\Configure{textsc}{\Protect\HCode{<span class="textsc">}}
{\Protect\HCode{</span>}}
\Configure{textsf}{\Protect\HCode{<span class="textsf">}}
{\Protect\HCode{</span>}}
\Configure{textsl}{\Protect\HCode{<span class="textsl">}}
{\Protect\HCode{</span>}}
>>>
%%%%%%%%%%%%%%%%%%
\part{Math}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
\section{Math Delimiters}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%
\subsection{Full Expressions}
%%%%%%%%%%%%%
\<configure jsml-math tex4ht\><<<
\Configure{DviMath}
{\a:DviMathSpk \mathmltrue
\ifOption{mml-fonts}{}{|%\mml:htfsym|%\NoFonts}%
\IgnoreRule \HCode{<!--l.
\the\inputlineno-->}\a:math
|<sv dvimath par|>\IgnorePar}
{\EndIgnoreRule
\mathmlfalse \b:DviMathSpk |<recall dvimath par|>}
\NewConfigure{DviMathSpk}{2}
>>>
\<sv dvimath par\><<<
\edef\sv:ignore{\if:nopar
\noexpand\IgnorePar\else \noexpand\ShowPar\fi}%
>>>
\<recall dvimath par\><<<
\sv:ignore
>>>
\<configure jsml-math tex4ht\><<<
\Configure{math}{}
\Configure{$}
{|<conf inline math|>\DviMath}
{\EndDviMath}{}
\Configure{$$}
{|<conf display math|>\DviMath}
{\EndDviMath
\ShowPar\par{\csname HCondtrue\endcsname\noindent}}
{\DisplayMathtrue}
>>>
\<configure jsml-math latex\><<<
\Configure{[]}
{|<conf display math|>\DviMath $$\DisplayMathtrue }
{$$\EndDviMath}
\Configure{()}
{|<conf inline math|>\DviMath $}
{$\EndDviMath}
>>>
\<conf inline math\><<<
\Configure{DviMathSpk}
{\HCode{<span class="inline-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</span>}}%
>>>
\<conf display math\><<<
\Configure{@math}{div}\IgnorePar
|<inline end-par comment|>\EndP
\Configure{DviMathSpk}
{\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:math}}}
{\HCode{\add:description{end-math}{\b:speak:math}</div>}}%
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:math}{2}
\Configure{speak:math}
{%<BREAK SIZE="small"/><PROS PITCH="-5" >math</PROS>
<BREAK SIZE="small"/>}
{%<BREAK SIZE="small"/><PROS PITCH="-5" >end math</PROS>
<BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%%%%%%
\chapter{Over and Under}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%
\section{Subscrips and Superscripts (sub and super)}
%%%%%%%%%%%%%
\<configure jsml-math tex4ht\><<<
|<sub, sup, subsup|>
|<limits sub, sup, subsup|>
>>>
\<sub, sup, subsup\><<<
\Configure{SUB}
{\Send{BACK}
{|<start msub base|>}|<msub sub|>}
{|<close msub|>}
\Configure{SUP}
{\Send{BACK}
{|<start msup base|>}|<msup super|>}
{|<close msup|>}
\Configure{SUBSUP}
{\Send{BACK}
{|<start msubsup base|>}|<msubsup sub|>}
{|<msubsup sup|>}
{|<close msubsup|>}
>>>
\<start msup base\><<<
<msup><mrow class="mrow-base"\Hnewline>%
>>>
\<msup super\><<<
\HCode{</mrow><mrow class="mrow-super"\Hnewline
>\add:description{begin-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
>>>
\<close msup\><<<
\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msup\Hnewline>}%
>>>
\<start msub base\><<<
<msub><mrow class="mrow-base"\Hnewline>%
>>>
\<msub sub\><<<
\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
>>>
\<close msub\><<<
\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msub\Hnewline>}%
>>>
%
%
\<start msubsup base\><<<
<msubsup><mrow class="mrow-base"\Hnewline>%
>>>
\<msubsup sub\><<<
\HCode{</mrow><mrow class="mrow-sub"\Hnewline
>\add:description{begin-script}{\a:speak:subsup}%
<PROS PITCH="-10">}\trap:base
>>>
\<msubsup sup\><<<
\HCode{</PROS></mrow><mrow class="mrow-super"\Hnewline
>\add:description{mid-script}{\b:speak:subsup}%
<PROS PITCH="+10">}\trap:base
>>>
\<close msubsup\><<<
\HCode{</PROS>\add:description{end-script}{\c:speak:subsup}%
</mrow></msubsup\Hnewline>}%
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:subsup}{3}
\Configure{speak:subsup}
{<PROS PITCH="-5"><BREAK SIZE="small"/>
<span class="scripts-extra"> subscript </span>
<BREAK SIZE="small"/></PROS>}
{<PROS PITCH="+5"><BREAK SIZE="small"/>
<span class="scripts-extra"> superscript </span>
<BREAK SIZE="small"/></PROS>}
{<PROS PITCH="-5"><BREAK SIZE="medium"/>
<span class="scripts-extra"> baseline </span>
<BREAK SIZE="small"/></PROS>}
>>>
%%%%%%%%%%%%%%%%%%
\section{Delimiters}
%%%%%%%%%%%%%%%%%%
\<plain,fontmath math\><<<
\Configure{MathClass}{1}{*}{<mo\Hnewline
class="MathClass-op"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\Configure{MathClass}{2}{*}{<mo\Hnewline
class="MathClass-bin"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\Configure{MathClass}{3}{*}{<mo\Hnewline
class="MathClass-rel"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></mo>}{}
\:CheckOption{mathml-} \if:Option
\Configure{MathClass}{4}{*}{<mo\Hnewline
class="MathClass-open">}
{</mo><BREAK SIZE="small"/>}{}
\Configure{MathClass}{5}{*}{<BREAK SIZE="small"/>%
<mo\Hnewline
class="MathClass-close">}
{</mo>}{}
\else
\Configure{MathClass}{4}{*}{<mfenced><mo\Hnewline
class="MathClass-open">}
{</mo><mrow><BREAK SIZE="small"/>}{}
\Configure{MathClass}{5}{*}{<BREAK SIZE="small"/>%
</mrow><mo\Hnewline
class="MathClass-close">}
{</mo></mfenced>}{}
\fi
>>>
\<plain,fontmath math\><<<
\def\sin{\mathop {\operator@font sine}\nolimits}
\def\cos{\mathop {\operator@font cosine}\nolimits}
\def\lim{\mathop {\operator@font limit}}
>>>
%%%%%%%%%%%%%%%%%%
\section{Fractions and Stacks}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%
\subsection{Regular Ones}
%%%%%%%%%%%%%
\<configure jsml-math tex4ht\><<<
\Configure{over}
{\Send{GROUP}{0}{|<start mfrac|>}|<end frac numerator|>}
{|<frac enumerator|>\Send{EndGROUP}{0}{|<end mfrac|>}}
\Configure{atop}
{\Send{GROUP}{0}{|<start atop|>}|<end atop over|>}
{|<start atop under|>\Send{EndGROUP}{0}{|<end atop|>}}
\Configure{above}
{\Send{GROUP}{0}{|<start above|>}%
|<end above over|>\o:over:\:gobbleII}
{|<start above under|>\Send{EndGROUP}{0}{|<end above|>}}
>>>
\<configure jsml-math latex\><<<
|<plain,latex mathml|>
|<mathml latex|>
>>>
\<mathml latex\><<<
\Configure{frac}
{\HCode{|<start mfrac|>}}
{|<end frac numerator|>\Configure{over}{}{}}
{|<frac enumerator|>}
{\HCode{|<end mfrac|>}}
>>>
\<configure jsml-math amsmath\><<<
\Configure{above}
{\Send{GROUP}{0}{|<start above|>}%
|<end above over|>\o:@@over:\:gobbleII}
{|<start above under|>\Send{EndGROUP}{0}{|<end above|>}}
>>>
\<plain,latex mathml\><<<
\Configure{choose}
{\Send{GROUP}{0}{<mover class="choose">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:atop:
\HCode{\add:description{added-description}%
{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
>>>
\<plain,latex mathml\><<<
\NewConfigure{speak:choose}{3}
\Configure{speak:choose}
{<BREAK SIZE="small"/>binomial coefficient<BREAK SIZE="small"/>}
{<BREAK SIZE="medium"/>}
{<BREAK SIZE="small"/>choose<BREAK SIZE="small"/>}
>>>
\<configure jsml-math amsmath\><<<
\Configure{tbinom}
{\Send{GROUP}{0}{<mover class="tbinom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}%
{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
>>>
\<configure jsml-math amsmath\><<<
\Configure{dbinom}
{\Send{GROUP}{0}{<mover class="dbinom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
>>>
\<configure jsml-math amsmath\><<<
\Configure{binom}
{\Send{GROUP}{0}{<mover class="binom">%
\add:description{begin-stack}{\a:speak:choose}%
<mrow class="mrow-upper">}%
\HCode{</mrow>}\o:@@abovewithdelims: ..\z@{}%
\HCode{\add:description{added-description}{\c:speak:choose}<mrow class="mrow-under">}%
\Send{EndGROUP}{0}%
{</mrow>\add:description{end-stack}{\b:speak:choose}</mover>}%
}
>>>
%%%%%%%%%%%%%
\subsection{With Delimiters}
%%%%%%%%%%%%%
\<configure jsml-math tex4ht\><<<
\def\abovewithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start above|>}%
|<end above over|>\o:over:
|<start above under|>\Send{EndGROUP}{0}{|<end above|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start above|>}%
|<end above over|>\o:over:
|<start above under|>\Send{EndGROUP}{0}{|<end above|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
\tmp:dim
}
>>>
\<configure jsml-math tex4ht\><<<
\def\atopwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start atop|>}%
|<end atop over|>\o:atop:
|<start atop under|>\Send{EndGROUP}{0}{|<end atop|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start atop|>}%
|<end atop over|>\o:atop:
|<start atop under|>%
\Send{EndGROUP}{0}{|<end atop|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
}
>>>
\<configure jsml-math tex4ht\><<<
\def\overwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start mfrac|>}|<end frac numerator|>\o:over:
|<frac enumerator|>\Send{EndGROUP}{0}{|<end mfrac|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start mfrac|>}%
|<end frac numerator|>\o:over:
|<frac enumerator|>\Send{EndGROUP}{0}{|<end mfrac|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
}
>>>
\<configure jsml-math amsmath\><<<
\def\abovewithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start above|>}%
|<end above over|>\o:@@over:
|<start above under|>\Send{EndGROUP}{0}{|<end above|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start above|>}%
|<end above over|>\o:@@over:
|<start above under|>\Send{EndGROUP}{0}{|<end above|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
\tmp:dim
}
>>>
\<configure jsml-math amsmath\><<<
\def\atopwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start atop|>}%
|<end atop over|>\o:@@atop:
|<start atop under|>\Send{EndGROUP}{0}{|<end atop|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start atop|>}%
|<end atop over|>\o:@@atop:
|<start atop under|>\Send{EndGROUP}{0}{|<end atop|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
}
>>>
\<configure jsml-math amsmath\><<<
\def\overwithdelims:III#1#2#3{%
\def\:temp{#2#3}\def\:tempa{..}\ifx \:temp\:tempa
\Send{GROUP}{0}{|<start mfrac|>}%
|<end frac numerator|>\o:over:
|<frac enumerator|>\Send{EndGROUP}{0}{|<end mfrac|>}
\else
\Send{GROUP}{0}%
{<mo class="mfenced-open">|<lr del 2|></mo>%
|<start mfrac|>}%
|<end frac numerator|>\o:@@over:
|<frac enumerator|>\Send{EndGROUP}{0}{|<end mfrac|>%
<mo class="mfenced-close">|<lr del 3|></mo>}
\fi
}
>>>
%%%%%%%%%%%%%
\subsection{Code Assignments}
%%%%%%%%%%%%%
\<start mfrac\><<<
<mfrac>\add:description{begin-end}{\a:speak:fraction}%
<mrow class="mrow-numerator"\Hnewline>%
>>>
\<end frac numerator\><<<
\HCode{</mrow>}%
>>>
\<frac enumerator\><<<
\HCode{\add:description{begin-end}{\c:speak:fraction}
<mrow class="mrow-enumerator"\Hnewline>}%
>>>
\<end mfrac\><<<
</mrow>\add:description{begin-end}{\b:speak:fraction}</mfrac>%
>>>
\<start atop\><<<
<mover class="atop">%
\add:description{begin-stack}{\a:speak:atop}%
<mrow class="mrow-upper">%
>>>
\<end atop over\><<<
\HCode{</mrow>}%
>>>
\<start atop under\><<<
\HCode{\add:description{added-description}{\c:speak:atop}<mrow class="mrow-under">}%
>>>
\<end atop\><<<
</mrow>\add:description{end-stack}{\b:speak:atop}</mover>%
>>>
\<start above\><<<
|<start mfrac|>%
>>>
\<end above over\><<<
|<end frac numerator|>%
>>>
\<start above under\><<<
|<frac enumerator|>%
>>>
\<end above\><<<
|<end mfrac|>%
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:fraction}{3}
\Configure{speak:fraction}
{<BREAK SIZE="small"/><level prefix="begin"
continued="begin continued fraction">begin
fraction</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="end"
continued="end continued fraction">end
fraction</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="over">%
over</level><BREAK SIZE="small"/>}
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:atop}{3}
\Configure{speak:atop}
{<BREAK SIZE="small"/>begin stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>over<BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%
\subsection{Delimiters}
%%%%%%%%%%%%%
\<lr del 1\><<<
\expandafter
\ifx \csname \string#1:lr del\endcsname\relax #1\else
\csname \string#1:lr del\endcsname\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
>>>
The following cases in mathml are translated directly
to explicit caharacters and so donn't get there the
speech interpretation provided in unicode.4hf.
\<plain,latex mathml\><<<
\Configure{mfenced}{\vert}{\string&\#x007C;}
\Configure{mfenced}{\{}{\string&\#x007B;}
\Configure{mfenced}{\}}{\string&\#x007D;}
\Configure{mfenced}{\lbrace}{\string&\#x007B;}
\Configure{mfenced}{\rbrace}{\string&\#x007D;}
\Configure{mfenced}{\rgroup}{\string&\#x0028;}
\Configure{mfenced}{\lgroup}{\string&\#x0029;}
\Configure{mfenced}{(}{\string&\#x0028;}
\Configure{mfenced}{)}{\string&\#x0029;}
\Configure{mfenced}{[}{\string&\#x0058;}
\Configure{mfenced}{]}{\string&\#x0059;}
\Configure{mfenced}{||}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
\Configure{mfenced}{\bracevert}{\string&\#x007C;}
>>>
%%%%%%%%%%%%%
\section{Lines and Braces (With ...)}
%%%%%%%%%%%%%
\<configure jsml-math latex\><<<
\Configure{overline}
{\bgroup\ifmathml |<mathml overline|>\else
\HCode{<mover class="overline">}\fi}
{\ifmathml |<end mathml overline|>\else
\HCode{</mover>}\fi\egroup}
\Configure{underline}
{\bgroup
\ifmathml |<mathml underline|>%
\else |<nomath underline|>%
\HCode{<mover class="underline">}\fi}
{\ifmathml |<end mathml underline|>\else
\HCode{</mover>}\fi \egroup}
>>>
\<mathml overline\><<<
\HCode{<mover class="mover-overline"\Hnewline>%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-00AF">}%
>>>
\<end mathml overline\><<<
\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:line}%
</mover>}%
>>>
\<mathml underline\><<<
\HCode{<munder class="munder-underline">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-0332"><BREAK SIZE="small"/>}%
>>>
\<end mathml underline\><<<
\HCode{<BREAK SIZE="small"/></mrow>%
\add:description{begin-end}{\a:speak:modified:line}%
</munder>}%
>>>
\<nomath underline\><<<
\expandafter\everymath
\expandafter{\expandafter\everymath
\expandafter{\the\everymath}}%
\let\o::@underline:\o:@@underline:
\def\o:@@underline:{\let\o:@@underline:\o::@underline:}%
>>>
\<plain,fontmath math\><<<
\Configure{overbrace}
{\Configure{mathop*}{*}
{<mover class="mover-overline">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-FE37">}
{</mrow>\add:description{begin-end}{\a:speak:modified:brace}%
</mover>}
{\Configure{mathop}{}{}{}{}}%
}
{\let\o:overbrace:=\displaystyle}
{}
\Configure{underbrace}
{\Configure{mathop*}{*}
{<munder class="munder-underline">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-FE38">}
{</mrow>\add:description{begin-end}{\a:speak:modified:brace}%
</munder>}
{\Configure{mathop}{}{}{}{}}%
}
{\let\o:underbrace:=\displaystyle}
{}
>>>
\<config mathml accents\><<<
\Configure{accent}\widetilde\widetilde{{}{}}
{}
{\HCode{<mover class="mover-tilde">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-0303"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{\a:speak:modified:tilde}%
</mover>}}
\Configure{accent}\widehat\widehat{{}{}}
{}
{\HCode{<mover class="mover-hat">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-0302"\Hnewline>}%
#2%
\HCode{</mrow>\add:description{begin-end}{
\a:speak:modified:hat}</mover>}} |%circumflex|%
>>>
\<configure jsml-math latex\><<<
\NewConfigure{speak:modified}{2}
\Configure{speak:modified}
{<BREAK SIZE="small"/>modified
under<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>modified
above<BREAK SIZE="small"/>}
\NewConfigure{speak:modified:brace}{1}
\NewConfigure{speak:modified:hat}{1}
\NewConfigure{speak:modified:line}{1}
\NewConfigure{speak:modified:tilde}{1}
\Configure{speak:modified:brace}
{<BREAK SIZE="small"/>with brace<BREAK SIZE="small"/>}
\Configure{speak:modified:hat}
{<BREAK SIZE="small"/>with wide hat<BREAK SIZE="small"/>}
\Configure{speak:modified:line}
{<BREAK SIZE="small"/>with bar<BREAK SIZE="small"/>}
\Configure{speak:modified:tilde}
{<BREAK SIZE="small"/>with wide tilde<BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%
\section{Arrows (With ...)}
%%%%%%%%%%%%%
\<plain,fontmath math\><<<
\Configure{overrightarrow}
{\HCode{<mover class="mover-rightarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20D5"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:rightarrow}%
</mover>}}
\Configure{overleftarrow}
{\HCode{<mover class="mover-leftarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20D6"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftarrow}%
</mover>}}
>>>
\<plain,fontmath math\><<<
\NewConfigure{speak:modified:leftarrow}{1}
\NewConfigure{speak:modified:leftrightarrow}{1}
\NewConfigure{speak:modified:rightarrow}{1}
\Configure{speak:modified:leftarrow}
{<BREAK SIZE="small"/>with left
right arrow<BREAK SIZE="small"/>}
\Configure{speak:modified:leftrightarrow}
{<BREAK SIZE="small"/>with left
right arrow<BREAK SIZE="small"/>}
\Configure{speak:modified:rightarrow}
{<BREAK SIZE="small"/>with
right arrow<BREAK SIZE="small"/>}
>>>
\<configure jsml-math amsmath\><<<
\Configure{underrightarrow}
{\HCode{<munder class="munder-rightarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2092"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:rightarrow}%
</munder>}}
\Configure{underleftarrow}
{\HCode{<munder class="munder-leftarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2090"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{speak:modified:leftarrow}%
</munder>}}
>>>
\<configure jsml-math amsmath\><<<
\Configure{overleftrightarrow}
{\HCode{<mover class="mover-leftrightarrow">%
\add:description{begin-end}{\b:speak:modified}%
<mrow class="mo-20E1"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftrightarrow}%
</mover>}}
\Configure{underleftrightarrow}
{\HCode{<munder class="munder-leftrightarrow">%
\add:description{begin-end}{\a:speak:modified}%
<mrow class="mo-2194"\Hnewline>}\:gobble}
{\HCode{</mrow>%
\add:description{begin-end}{\a:speak:modified:leftrightarrow}%
</munder>}}
>>>
%%%%%%%%%%%%%%%%%%
\section{Symbols}
%%%%%%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\def\:tempc{\HCode{<mspace width="0.2em"/>}\mathbin{mod} }
\HLet\bmod\:tempc
\def\:tempc#1{ (#1)}
\HLet\pod=\:tempc
\def\:tempc#1{\pod{\mathop{mod} #1}}
\HLet\pmod=\:tempc
\def\:tempc#1{ \mathop{mod} #1}
\HLet\mod=\:tempc
>>>
\<configure jsml-math amsmath\><<<
\Configure{hdotsfor}{\dots}
>>>
\<plain,latex mathml\><<<
\def\mathop:prefix#1{%
\Configure{mathop}{*}{<mo class="mo-op"
#1\Hnewline>}{</mo>}%
{\Configure{mathop}{*}{<mo class="mo-op">}{</mo>}{}}}
>>>
\<configure jsml-math amsopn\><<<
\def\:tempc{\mathop{\underrightarrow\lim}\displaylimits} \HLet\varinjlim\:tempc
\def\:tempc{\mathop{\underleftarrow\lim}\displaylimits} \HLet\varprojlim\:tempc
\def\:tempc{\mathop{\overline\lim}\displaylimits} \HLet\varlimsup\:tempc
\def\:tempc{\mathop{\underline\lim}\displaylimits} \HLet\varliminf\:tempc
>>>
\<\><<<
\HRestore\varinjlim
\HRestore\varprojlim
\HRestore\varlimsup
\HRestore\varliminf
>>>
\<plain,fontmath math\><<<
\def\:tempc{\HCode{\add:description{added-description}{real part
symbol capital }}\o:Re:}
\HLet\Re\:tempc
\def\:tempc{\HCode{\add:description{added-description}{real part
symbol capital }}\o:Im:}
\HLet\Im\:tempc
>>>
%%%%%%%%%%%%%%%%%%
\section{Spaces}
%%%%%%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\Configure{quad}{\HCode{|<space element|>}}
\Configure{qquad}{\HCode{|<space element|>}}
\Configure{,}{\HCode{|<tiny space element|>}}
\Configure{ }{\:nbsp}
>>>
\<configure jsml-math latex\><<<
\Configure{hspace}{ }{}{ }
>>>
\<configure jsml-math amsmath\><<<
\Configure{tmspace}
{\HCode{|<space element|>}}
>>>
\<plain,latex mathml\><<<
\def\:nbsp{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x}
>>>
\<configure jsml frenchb\><<<
\Configure{frenchb-nbsp}
{\leavevmode\special{t4ht@+\string&{35}x00A0{59}}x%
\setbox\tmp:bx=\hbox\bgroup}
{\egroup}
>>>
\<space element\><<<
<span class="space"><BREAK SIZE="small"/></span>%
>>>
\<tiny space element\><<<
<span class="tiny-space"><BREAK SIZE="small"/></span>%
>>>
%%%%%%%%%%%%%%%%%%
\section{Radicals}
%%%%%%%%%%%%%%%%%%
\<configure jsml-math tex4ht\><<<
\Configure{radical}
{\HCode{<msqrt>%
\add:description{begin-root}{\a:speak:radical}}%
\special{t4ht\string~!e<<mrow class="root-base">}%
\special{t4ht\string~!e></mrow>%
\add:description{end-root}{\b:speak:radical}</msqrt>}%
\special{t4ht\string~!ee/}%
\special{t4ht\string~!ese-}%
}
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:radical}{2}
\Configure{speak:radical}
{<BREAK SIZE="small"/><level prefix="begin">begin
root</level><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/><level prefix="end">end
root</level><BREAK SIZE="small"/>}
>>>
\<plain,latex mathml\><<<
\Configure{root}
{\HCode{<mroot>%
\add:description{begin-root}{\a:speak:root}%
<mrow class="root-index">}}
{\HCode{</mrow>\add:description{mid-root}{\b:speak:root}%
<mrow class="root-base">}}
{\HCode{</mrow>\add:description{end-root}{\c:speak:root}</mroot>}}
>>>
\<plain,latex mathml\><<<
\NewConfigure{speak:root}{3}
\Configure{speak:root}
{<BREAK SIZE="medium"/><level prefix="root">root
index</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="begin">begin
root</level><BREAK SIZE="medium"/>}
{<BREAK SIZE="medium"/><level prefix="end">end
root</level><BREAK SIZE="medium"/>}
>>>
%%%%%%%%%%%%%
\section{Left and Right}
%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\Configure{left}
{}
{\HCode{|<lr del 1|>}\bgroup
\HCode{<mrow>}\bgroup}
\Configure{right}
{\egroup\HCode{</mrow>}\egroup
\HCode{|<lr del 1|>}}
{}
>>>
\<plain,fontmath math\><<<
\Configure{big}
{}{}
{}
{}
\Configure{Big}
{}{}
{}
{}
\Configure{bigg}
{}{}
{}
{}
\Configure{Bigg}
{}{}
{}
{}
>>>
\<plain,fontmath math\><<<
|<big common|>
\:CheckOption{mathml-} \if:Option
|<big mathml-|>
\else
|<big mathml|>
\fi
>>>
\<big mathml\><<<
\Configure{Biggl}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="Biggl"><span class="MathClass-open" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Biggr}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{Bigl}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="Bigl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Bigr}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{biggl}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="biggl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{biggr}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{bigl}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="bigl"><span class="MathClass-open"><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span><span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{bigr}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathclose}{*}
{</span><span class="MathClass-close" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
>>>
\<big mathml-\><<<
\Configure{Biggl}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Biggr}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{Bigl}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{Bigr}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{biggl}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{biggr}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
\Configure{bigl}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathopen}{*}
{<span class="MathClass-open" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathopen}{}{}{}{}}%
}
{\egroup}
\Configure{bigr}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathclose}{*}
{<span class="MathClass-close" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathclose}{}{}{}{}}%
}
{\egroup}
>>>
\<big common\><<<
\Configure{Biggm}
{\bgroup
\Configure{Bigg}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="Bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{Bigm}
{\bgroup
\Configure{Big}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="Big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{biggm}
{\bgroup
\Configure{bigg}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="bigg" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
\Configure{bigm}
{\bgroup
\Configure{big}{}{}{}{}%
\Configure{mathrel}{*}
{<span class="MathClass-rel" title="big" ><BREAK SIZE="small"/>}
{<BREAK SIZE="small"/></span>}
{\Configure{mathrel}{}{}{}{}}%
}
{\egroup}
>>>
\<plain,latex mathml\><<<
\Configure{mfenced}{\vert}{||}
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\{}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand\Configure{mfenced}{\noexpand\}}{\string&\#x007D;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\lbrace}{\string&\#x007B;}}\:temp
\edef\:temp{\noexpand
\Configure{mfenced}{\noexpand\rbrace}{\string&\#x007D;}}\:temp
>>>
%%%%%%%%%%%%%
\subsection{Math Inner}
%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\def\mathinner#1{\Tg<span
class="mathinner">#1\Tg</span>}
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Limits of Sub- snd Super- Scripts (over/under - end - scripts)}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Outline}
%%%%%%%%%%%%%%%%%%%%%%%%%
\<limits sub, sup, subsup\><<<
\Configure{limits}{|<limit scripts|>}
\def\disp:limits{|<limit scripts|>}
>>>
\<limit scripts\><<<
\let|<restore SUB|>=\:UnDef
\let|<restore SUP|>=\:UnDef
\ifx \:temp\sp |<conf limits SUP|>\else
\ifx \:temp\sb |<conf limits SUB|>\fi\fi
|<conf limits SUBSUP|>%
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Simultaneously Sub- and Super- Scripts}
%%%%%%%%%%%%%%%%%%%%%%%%%
\<conf limits SUBSUP\><<<
|<save pre-limits SUBSUP|>%
\Configure{SUBSUP}
{\ifx |<restore SUB|>\:UnDef\else |<restore SUB|>\fi
\ifx |<restore SUP|>\:UnDef\else |<restore SUP|>\fi
|<restore pre-limits SUBSUP|>%
\Send{BACK}
{|<start limits msubsup base|>}|<msubsup limits sub|>}
{|<msubsup limits sup|>}
{|<close limits script|>}
>>>
\<start limits msubsup base\><<<
<msubsup class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
>>>
\<msubsup limits sub\><<<
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
>>>
\<msubsup limits sup\><<<
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{mid-limits-script}{\b:speak:underover}}\trap:base
>>>
\<close limits script\><<<
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msubsup\Hnewline>}%
>>>
\<close limits sup\><<<
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline>}%
>>>
\<close limits sub\><<<
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msub\Hnewline>}%
>>>
\<configure jsml-math tex4ht\><<<
\NewConfigure{speak:underover}{3}
\Configure{speak:underover}
{<BREAK SIZE="small"/>under script<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>over script<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end scripts<BREAK SIZE="small"/>}
>>>
\<save pre-limits SUBSUP\><<<
\let\pl:SUBSUP=\SUBSUP:
>>>
\<restore pre-limits SUBSUP\><<<
\ifx \pl:SUBSUP\:UnDef \else
\let\SUBSUP:=\pl:SUBSUP
\fi
>>>
\<limits sub, sup, subsup\><<<
\ifx \a:putSUB\:UnDef \else
\pend:def\a:putSUB{\ifx \pl:SUBSUP\:UnDef\else
\let\SUBSUP:=\pl:SUBSUP
\let\pl:SUBSUP=\:UnDef
\fi}%
\fi
\ifx \a:putSUP\:UnDef \else
\pend:def\a:putSUP{\ifx \pl:SUBSUP\:UnDef\else
\let\SUBSUP:=\pl:SUBSUP
\let\pl:SUBSUP=\:UnDef
\fi}%
\fi
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Superscripts}
%%%%%%%%%%%%%%%%%%%%%%%%%
\<conf limits SUP\><<<
|<save pre-limits SUP|>%
\Configure{SUP}
{|<open external limits SUP|>\bgroup
|<restore pre-limits SUBSUP|>%
|<conf second limits SUP|>\trap:base}
{}%
>>>
\<save pre-limits SUP\><<<
\def\pl:SUP{\Configure{SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\a:SUP}}%
\expandafter\append:def
\expandafter\pl:SUP\expandafter{\expandafter{\b:SUP}}%
>>>
\<conf second limits SUP\><<<
\Configure{SUP}
{|<open intermediate limits SUP|>\bgroup
|<conf third limit SUP|>\trap:base}
{\egroup|<close external limits SUP|>}%
>>>
\<conf third limit SUP\><<<
\Configure{SUP}
{|<open internal limits SUP|>\bgroup \trap:base}
{\egroup |<close internal limits SUP|>}%
>>>
\<open external limits SUP\><<<
\Send{BACK}{|<msup limits base|>}%
|<msup limits script super|>%
>>>
\<msup limits script super\><<<
\HCode{</mrow><mrow class="limits-mrow-super"\Hnewline
>\add:description{begin-limits-script}{\b:speak:underover}}%
\trap:base
>>>
\<msup limits base\><<<
<msup
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
>>>
\<close external limits SUP\><<<
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msup\Hnewline
>}\aftergroup|<restore SUP|>%
>>>
\<restore SUP\><<<
\pl:SUP >>>
\<open intermediate limits SUP\><<<
\Send{BACK}
{|<start msup base|>}|<msup super|>%
>>>
\<open internal limits SUP\><<<
\Send{BACK}
{|<start msup base|>}|<msup super|>%
>>>
\<close internal limits SUP\><<<
|<close msup|>%
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Subscripts}
%%%%%%%%%%%%%%%%%%%%%%%%%
\<conf limits SUB\><<<
|<save pre-limits SUB|>%
\Configure{SUB}
{|<open external limits SUB|>\bgroup
|<restore pre-limits SUBSUP|>%
|<conf second limits SUB|>\trap:base}
{}%
>>>
\<save pre-limits SUB\><<<
\def\pl:SUB{\Configure{SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\a:SUB}}%
\expandafter\append:def
\expandafter\pl:SUB\expandafter{\expandafter{\b:SUB}}%
>>>
\<conf second limits SUB\><<<
\Configure{SUB}
{|<open intermediate limits SUB|>\bgroup
|<conf third limit SUB|>\trap:base}
{\egroup|<close external limits SUB|>}%
>>>
\<conf third limit SUB\><<<
\Configure{SUB}
{|<open internal limits SUB|>\bgroup \trap:base}
{\egroup |<close internal limits SUB|>}%
>>>
\<open external limits SUB\><<<
\Send{BACK}{|<msub limits base|>}%
|<msub limits script sub|>%
>>>
\<msub limits script sub\><<<
\HCode{</mrow><mrow class="limits-mrow-sub"\Hnewline
>\add:description{begin-limits-script}{\a:speak:underover}}%
\trap:base
>>>
\<msub limits base\><<<
<msub
class="limits-msub-msup"><mrow
class="limits-mrow-base"\Hnewline>%
>>>
\<close external limits SUB\><<<
\HCode{\add:description{end-limits-script}{\c:speak:underover}%
</mrow></msub\Hnewline >}\aftergroup|<restore SUB|>%
>>>
\<restore SUB\><<<
\pl:SUB >>>
\<open intermediate limits SUB\><<<
\Send{BACK}
{|<start msub base|>}|<msub sub|>%
>>>
\<open internal limits SUB\><<<
\Send{BACK}
{|<start msub base|>}|<msub sub|>%
>>>
\<close internal limits SUB\><<<
|<close msub|>%
>>>
%%%%%%%%%%%%%
\section{On Arrows (over/under - end - scripts)}
%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\renewcommand{\xrightarrow}[2][]{%
\if :#1:
\HCode{|<msup limits base|>}%
\rightarrow
|<msup limits script super|>#2%
|<close limits sup|>%
\else
\HCode{|<start limits msubsup base|>}%
\leftarrow
|<msubsup limits sub|>#1%
|<msubsup limits sup|>#2%
|<close limits script|>%
\fi
}
\renewcommand{\xleftarrow}[2][]{%
\if :#1:
\HCode{|<msup limits base|>}%
\leftarrow
|<msup limits script super|>#2%
|<close limits sup|>%
\else
\HCode{|<start limits msubsup base|>}%
\leftarrow
|<msubsup limits sub|>#1%
|<msubsup limits sup|>#2%
|<close limits script|>%
\fi
}
>>>
%%%%%%%%%%%%%
\section{On Text (over/under - end - scripts)}
%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\def\overset#1#2{{%
\HCode{|<msup limits base|>}%
#2%
|<msup limits script super|>#1%
|<close limits sup|>%
}}
\def\underset#1#2{{%
\HCode{|<msub limits base|>}%
#2%
|<msub limits script sub|>#1%
|<close limits sub|>%
}}
>>>
\<configure jsml-math amsmath\><<<
\def\sideset#1#2#3{{\Tg<mrow class="sideset"\Hnewline
>{\HCode{}}#1{\HCode{}#3}#2\Tg</mrow>}}
>>>
%%%%%%%%%%%%%%%%%%
\section{Accents}
%%%%%%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\:CheckOption{new-accents} \if:Option \else
|<config mathml accents|>
\fi
>>>
\<config mathml accents\><<<
\Configure{accents}
{\ifmmode \expandafter\mathord\fi
{|<temp hcode accents|>%
\ht:special{t4ht@[}\if!#1!x\else#2\fi
\ht:special{t4ht@]}}}
{\ifmathml
\ifmtext |<accent in text mode|>%
\else \AccentMath{|<under over accents|>}\fi
\else |<accent in text mode|>\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%
>>>
\<accent in text mode\><<<
\expandafter\ifx \csname :#1:over\endcsname\relax
\expandafter\ifx \csname :#1:under\endcsname\relax
\AccentMath{|<under over accents|>}%
\else #3\csname :#1:under\endcsname \fi
\else #3\csname :#1:over\endcsname \fi
>>>
\<under over accents\><<<
\expandafter\ifx \csname :#1:over\endcsname\relax
|<under accents|>%
\else \expandafter\ifx \csname :#1:under\endcsname\relax
|<over accents|>%
\else
|<both accents|>%
\fi \fi
>>>
\<under accents\><<<
\HCode{<munder\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\HCode{</munder>}%
>>>
\<over accents\><<<
\HCode{<mover class="mover-accent">%
<mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname prefix:#1:over\endcsname
\csname :#1:over\endcsname
\HCode{</mover>}%
>>>
\<both accents\><<<
\HCode{<munderover\Hnewline
accent="true"><mrow\Hnewline><BREAK SIZE="small"/>}%
#3\HCode{</mrow>}%
\csname :#1:under\endcsname
\csname :#1:over\endcsname
\HCode{</munderover>}%
>>>
\<configure jsml-math latex\><<<
\def\:temp#1#2{\expandafter\def\csname prefix:#1:over\endcsname
{\HCode{\add:description{added-description}{ #2 }}}}
\:temp{vec}{\b:speak:underover}
\:temp{dddot}{\b:speak:underover}
\:temp{ddddot}{\b:speak:underover}
>>>
%%%%%%%%%%%%%%%%%%
\chapter{Tables}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
\section{Tabular}
%%%%%%%%%%%%%%%%%%
\<configure jsml latex\><<<
|<array and tabular|>
>>>
\<configure jsml array\><<<
|<array and tabular|>
>>>
\<configure tabular noalign\><<<
\Configure{noalign}%
{\f:tabular\d:tabular \HCode{<tr><td colspan="\ar:cnt">}}
{\HCode{</td></tr>}\pend:def\TableNo{0}\c:tabular\e:tabular}%
>>>
\<configure clear noalign\><<<
\Configure{noalign}{}{}%
>>>
\<inline comment\><<<
\ifvmode\else\HCode{<!--tex4ht:inline-->}\fi
>>>
\<array and tabular\><<<
\HAssign\TableNo=0
\Configure{tabular}
{\ifvmode \IgnorePar\fi \EndP
\HCode{<PARA><table class="tabular" >}%
|<begin tabular note|>}
{\Tag{tabular-\TableNo}{\hrow:s}%
|<end tabular note|>\HCode{</table></PARA>}}
{\HCode{<tr><!--row \HRow-->}%
|<begin table row note|>}
{\xdef\hrow:s{\HRow}|<end table row note|>\HCode{</tr>}}
{\HCode{<td><!--entry \HRow-\HCol\ifnum
\HMultispan>1 \, span \HMultispan\fi-->}%
|<begin table cell note|>\HCode{<div>}\SaveEndP
\PushStack\Table:Stck\TableNo
\par \ShowPar}
{\PopStack\Table:Stck\TableNo
\IgnorePar \EndP \ifvmode \IgnorePar \fi \EndP
\HCode{</div>}|<end table cell note|>%
\HCode{</td>\Hnewline}\RecallEndP }
>>>
\<begin tabular note\><<<
\HCode{%
<BREAK SIZE="small"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{begin table with
\ifTag{tabular-\TableNo}{\LikeRef{tabular-\TableNo}}{}
rows and \ar:cnt columns}%
</PROS>
}%
>>>
\<end tabular note\><<<
\HCode{|<show input line no|>%
<BREAK SIZE="small"/>%
<PROS PITCH="-5" >%
\add:vdescription{begin-end}{end table}%
</PROS><BREAK SIZE="small"/>%
}%
>>>
\<begin table row note\><<<
\HCode{%
<BREAK SIZE="medium"/><PROS PITCH="-5" >%
\add:vdescription{begin-end}{|<ord row|> row}%
</PROS><BREAK SIZE="medium"/>%
}%
>>>
\<begin table cell note\><<<
\HCode{%
<BREAK SIZE="medium"/>%
\ifnum \HMultispan>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{|<ord col|> cell
spans \HMultispan \space columns}%
</PROS><BREAK SIZE="medium"/>%
\else
\ifnum \HCol>1
<PROS PITCH="-5" >%
\add:vdescription{added-description}{|<ord col|> cell}%
</PROS><BREAK SIZE="medium"/>%
\fi
\fi
}%
>>>
\<end table cell note\><<<
>>>
%%%%%%%%%%%%%
\section{Numbering}
%%%%%%%%%%%%%
\<ord row\><<<
<span class="ord-row">\ord:pos{\HRow}</span>%
>>>
\<ord col\><<<
\ord:pos{\HCol}%
>>>
\<configure jsml tex4ht\><<<
\def\ord:pos#1{%
\ifcase #1
\or first
\or second
\or third
\or fourth
\or fifth
\or sixth
\or seventh
\or eighth
\or nineth
\else #1th
\fi
}
>>>
\<configure jsml tex4ht\><<<
\HAssign\HRow=0
>>>
\<advance table number\><<<
\PushStack\Table:Stck\TableNo
\gHAdvance\Next:TableNo by 1
\global\let\TableNo=\Next:TableNo
>>>
\<return to prev table number\><<<
\PopStack\Table:Stck\TableNo
>>>
\<new row counter\><<<
\PushStack\Row:Stck\HRow \HAssign\HRow=0\relax
>>>
\<return to prev row counter\><<<
\PopStack\Row:Stck\HRow
>>>
\<new col counter\><<<
\PushStack\Col:Stck\Prev:Col
>>>
\<return to prev col counter\><<<
\PopStack\Col:Stck\Prev:Col
>>>
%%%%%%%%%%%%%
\section{Aligned}
%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\Configure{aligned}
{|<advance table number|>%
|<new row counter|>%
\HCode{<PARA><mtable class="aligned">}%
\HCode{\add:vdescription{begin-array}{\a:speak:aligned}}}
{\Tag{aligned-\TableNo}{\hrow:s}%
\HCode{|<show input line no|>%
\add:vdescription{end-array}{\b:speak:aligned}}%
\ifvmode \IgnorePar\fi
\HCode{</mtable></PARA>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>}\c:speak:aligned}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:aligned \HCode{<div>}}
{\HCode{</div>}\f:speak:aligned
\HCode{</mtd>\Hnewline}}
>>>
\<configure jsml-math amsmath\><<<
\NewConfigure{speak:aligned}{6}
\Configure{speak:aligned}
{begin
\ifTag{aligned-\TableNo}{\LikeRef{aligned-\TableNo}}{}
aligned equations}
{end equations}
{|<begin table row note|>}
{|<end table row note|>}
{|<begin table cell note|>}
{|<end table cell note|>}
>>>
\<configure jsml-math amsmath\><<<
\Configure{alignedat}
{|<advance table number|>%
|<new row counter|>%
\HCode{<PARA><mtable class="aligned">}%
\HCode{\add:vdescription{begin-array}{\a:speak:aligned}}}
{\Tag{aligned-\TableNo}{\hrow:s}%
\HCode{|<show input line no|>%
\add:vdescription{end-array}{\b:speak:aligned}}%
\ifvmode \IgnorePar\fi \HCode{</mtable></PARA>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>}\c:speak:aligned}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:aligned \HCode{<div>}}
{\HCode{</div>}\f:speak:aligned
\HCode{</mtd>\Hnewline}}
>>>
%%%%%%%%%%%%%%%%%%%%
\section{Cases}
%%%%%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\Configure{cases}
{}{} {\HCode{<PARA><mtable>}}{\HCode{</mtable></PARA>}}
{\Tg<mtr>}{\Tg</mtr>}
{\Tg<mtd class="cases">}{\Tg</mtd>}
>>>
\<configure jsml-math amsmath\><<<
\ConfigureEnv{cases}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div class="cases">}%
\bgroup
|<save left/right config|>%
|<config amsmath cases|>%
|<cases left/right|>%
}
{\egroup\HCode{</div>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{}{}
>>>
\<config amsmath cases\><<<
\Configure{array}
{\HCode{<mtable class="cases">%
|<start cases note|>}} %
{\Tag{cases-\TableNo}{\HRow}%
\HCode{|<show input line no|>%
|<end cases note|>}%
\ifvmode \IgnorePar\fi \Tg</mtable>}
{\HCode{<mtr>%
|<next case note|>}}
{\HCode{</mtr>}}%
{\HCode{<mtd class="sub-case-\HCol" >%
<BREAK SIZE="\ifnum \HCol>1 medium\else
small\fi"/>}%
\bgroup
|<config array|>%
|<recall left/right config|>%
}
{\egroup \HCode{</mtd>\Hnewline}}
>>>
\<start cases note\><<<
\add:vdescription{begin-array}{<BREAK SIZE="small"/>begin
\ifTag{cases-\TableNo}{\LikeRef{cases-\TableNo}}{}
cases<BREAK SIZE="small"/>}%
>>>
\<end cases note\><<<
\add:vdescription{end-array}
{<BREAK SIZE="small"/>end cases<BREAK SIZE="small"/>}
>>>
\<next case note\><<<
\add:vdescription{begin-end}
{<BREAK SIZE="small"/>|<ord row|> case}%
>>>
\<cases left/right\><<<
\Configure{left}
{}
{\bgroup}
\Configure{right}
{\egroup}
{}
>>>
\<save left/right config\><<<
\let\sv:a:left=\a:left
\let\sv:b:left=\b:left
\let\sv:a:right=\a:right
\let\sv:b:right=\b:right
>>>
\<recall left/right config\><<<
\let\a:left=\sv:a:left
\let\b:left=\sv:b:left
\let\a:right=\sv:a:right
\let\b:right=\sv:b:right
>>>
%%%%%%%%%%%%%%%%%%%%
\section{matrix}
%%%%%%%%%%%%%%%%%%%%
\<plain,latex mathml\><<<
\Configure{matrix}
{|<advance table number|>%
|<new row counter|>%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{|<show input line no|>%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi \HCode{</mtable></PARA>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
>>>
\<mtd matrix\><<<
\HCode{<mtd\Hnewline class="matrix"
\ifnum 1<\HMultispan columnspan="\HMultispan"\fi}%
\halignTD \HCode{>}%
>>>
The grouping below is handle the case that the matrix is a base of an exponent.
\<plain,latex mathml\><<<
\Configure{pmatrix}
{\bgroup\HCode{<PARA><div class="pmatrix"><BREAK SIZE="small"/>}}
{\HCode{<BREAK SIZE="small"/></div></PARA>}\egroup}
>>>
\<plain,latex mathml\><<<
\NewConfigure{speak:array}{6}
\Configure{speak:array}
{<BREAK SIZE="small"/>begin array with
\ifTag{array-\TableNo}{\LikeRef{array-\TableNo}}{}
rows<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end array<BREAK SIZE="small"/>}
{|<begin table row note|>}
{|<end table row note|>}
{|<begin table cell note|>}
{|<end table cell note|>}
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%
\section{EqAlign}
%%%%%%%%%%%%%%%%%%%%%%%%%
\<configure jsml plain\><<<
|<TABLE eqalign shared Configure 4.0t|>
>>>
\<TABLE eqalign shared Configure 4.0t\><<<
\Configure{eqalign}
{\:xhtml{\IgnorePar\EndP}\HCode
{<div class="eqalign"><table class="eqalign">}}
{\HCode{</table></div>}}
{\HCode{<tr \Hnewline class="eqalign"
valign="middle">}}{\IgnorePar\HCode{</tr>}}
{\HCode{<td align="\ifnum \HCol=2
left\else right\fi"\Hnewline class="eqalign\HCol"
style="white-space:nowrap;">}}
{\HCode{</td>}}
\def\:eqalign:{\Configure{noalign}
{\HCode{<tr><td class="noalign" colspan="2">}}%
{\HCode{</td></tr>}}}
>>>
\<TABLE eqalign shared Configure 4.0t\><<<
\Configure{eqalignno}
{\:xhtml{\IgnorePar\EndP}\HCode{<table class="eqalignno">}}
{\HCode{</table>}}
{\HCode{<tr\Hnewline class="eqalignno">}}{\IgnorePar\HCode{</tr>}}
{\HCode{\ifnum \HCol=3 <td\Hnewline width="10"
class="eqalignno-sp"></td>\fi
<td align="\ifnum \HCol=2 left\else right\fi"\Hnewline
class="eqalignno\HCol">}}
{\HCode{</td>}}
\def\:eqalignno:{\Configure{noalign}
{\HCode{<tr><td class="noalign" colspan="2">}}%
{\HCode{</td></tr>}}}
>>>
\<TABLE eqalign shared Configure 4.0t\><<<
\Configure{leqalignno}
{\:xhtml{\IgnorePar\EndP}\HCode{<table class="leqalignno">}}
{\HCode{</table>}}
{\HCode{<tr \Hnewline
class="leqalignno">}}{\IgnorePar\HCode{</tr>}}
{\HCode{\ifnum \HCol=3 <td\Hnewline width="30"
class="eqalignno-sp"></td>\fi
<td align="\ifnum \HCol=2 left\else right\fi"\Hnewline
class="leqalignno\HCol">}}
{\HCode{</td>}}
\def\:leqalignno:{\Configure{noalign}
{\HCode{<tr><td class="noalign" colspan="2">}}%
{\HCode{</td></tr>}}}
>>>
\<configure jsml-math latex\><<<
|<config array|>
>>>
\<configure jsml-math array\><<<
|<config array|>
>>>
\<config array\><<<
\Configure{array}
{|<advance table number|>%
|<new row counter|>%
\HCode{<PARA><mtable class="array">}%
\HCode{\add:vdescription{begin-array}{\a:speak:array}}}
{\Tag{array-\TableNo}{\hrow:s}%
\HCode{|<show input line no|>%
\add:vdescription{end-array}{\b:speak:array}}%
\ifvmode \IgnorePar\fi
|<insert Clr|>\HCode{</mtable></PARA>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>}\c:speak:array}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:array\HCode{<div>}}
{\HCode{</div>}\f:speak:array
\HCode{</mtd>\Hnewline}}
\ConfigureEnv{array}
{\bgroup\Configure{$}{}{}{}}
{\egroup}
{}{}
>>>
\<begin array row note\><<<
\HCode{\add:vdescription{begin-end}{Row \HRow}}%
>>>
\<configure jsml-math latex\><<<
\ConfigureEnv{array}
{\PushStack\Col:Marg\AllColMargins
\bgroup\Configure{$}{}{}{}}
{\egroup \PopStack\Col:Marg\AllColMargins}
{}{}
>>>
\<configure jsml-math array\><<<
\ConfigureEnv{array}
{\PushStack\Col:Marg\AllColMargins
\bgroup\Configure{$}{}{}{}}
{\egroup \PopStack\Col:Marg\AllColMargins}
{}{}
>>>
\<insert Clr\><<<
\expandafter\tmp:toks\expandafter{\Clr}%
\HCode{<!--\the\tmp:toks-->}%
>>>
\<mathml latex\><<<
\def\:MM{m}
\Configure{HBorder}
{<mtr\Hnewline class="hline">}
{|<mml hline|>}
{</mtr>}
{<mtr\Hnewline class="cline">}
{<mtd></mtd>}
{|<mml hline|>}
{</mtr>}
{<mtr\Hnewline class="vspace" style="font-size:\HBorderspace">}
{<mtd\Hnewline></mtd>}
{</mtr>}
>>>
\<configure jsml-math latex\><<<
\def\:MM{\ifmathml m\fi}
\Configure{HBorder}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi="hline">}
{\ifmathml|<mml hline|>\else
<td><hr\xml:empty></td>\fi}
{</\:MM tr>}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi ="cline">}
{<\:MM td></\:MM td>}
{\ifmathml|<mml hline|>\else
<td><hr\xml:empty></td>\fi}
{</\:MM tr>}
{<\:MM tr\Hnewline
\ifmathml \expandafterclass\else class\fi="vspace"
style="font-size:\HBorderspace">}
{<\:MM td\Hnewline>\ifmathml\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>
>>>
%%%%%%%%%%%%%
\section{Small Matrix}
%%%%%%%%%%%%%
\<configure jsml-math latex\><<<
|<config multicolumn|>
>>>
\<configure jsml-math array\><<<
|<config multicolumn|>
>>>
\<config multicolumn\><<<
\Configure{multicolumn}
{\let\sv:VBorder\VBorder
\let\VBorder\empty
\Configure{VBorder}{}{}{}{}%
}
{\let\VBorder\sv:VBorder}
{\ifmmode \else
\ifvmode\IgnorePar\fi
\fi \HCode{<div class="multicolumn" title="\HMultispan">}}
{\ifmmode \else
\ifvmode\IgnorePar\fi \EndP\fi \HCode{</div>} }
\def\gob:sp#1{#1}
>>>
%%%%%%%%%%%%%%%%%%%%
\section{TeX EqAlign}
%%%%%%%%%%%%%%%%%%%%
\<mathml plain\><<<
\Configure{eqalignno}
{\HCode{<PARA><mtable class="eqalignno">}}
{\HCode{</mtable></PARA>}}
{\HCode{<mtr\Hnewline class="eqalignno">}}
{\HCode{</mtr>}}
{\HCode{<mtd \Hnewline class="eqalignno-\HCol">}}
{\HCode{</mtd>}}
\def\:eqalignno:{\Configure{noalign}
{\HCode{<mtr><mtd class="noalign" colspan="2">}}%
{\HCode{</mtd></mtr>}}}
>>>
\<mathml plain\><<<
\Configure{leqalignno}
{\HCode{<PARA><mtable class="leqalignno">}}
{\HCode{</mtable></PARA>}}
{\HCode{<mtr\Hnewline class="leqalignno">}}
{\HCode{</mtr>}}
{\HCode{<mtd \Hnewline class="leqalignno-\HCol">}}
{\HCode{</mtd>}}
\def\:leqalignno:{\Configure{noalign}
{\HCode{<mtr><mtd class="noalign" colspan="2">}}%
{\HCode{</mtd></mtr>}}}
>>>
%%%%%%%%%%%%%%%%%%
\section{halign}
%%%%%%%%%%%%%%%%%%
\<configure jsml tex4ht2\><<<
\Configure{embedded-halign}{}{}
>>>
%%%%%%%%%%%%%%%%%%
\chapter{To Be Inserted}
%%%%%%%%%%%%%%%%%%
\<addr for Tag and Ref of Sec\><<<
\xdef\:cursec{|<section html addr|>}%
>>>
%%%%%%%%%%%%%%%%%%
\section{HTML Head}
%%%%%%%%%%%%%%%%%%
\<configure jsml tex4ht\><<<
\let\Link\M:Link \let\M:Link\:UnDef
\let\EndLink\M:EndLink \let\M:EndLink\:UnDef
>>>
%%%%%%%%%%%%%%%%%%
\section{Bibliography and Equation References}
%%%%%%%%%%%%%%%%%%
\<configure jsml latex\><<<
\def\@cite#1#2{%
\HCode{\add:description{added-description}{\a:speak:citation}}%
{#1\if@tempswa , #2\fi}}
\def\@biblabel#1{%
\HCode{<BREAK SIZE="small" />}%
\HCode{\add:description{added-description}{\a:speak:bib}}%
#1\HCode{<BREAK SIZE="small" />}}
>>>
\<configure jsml latex\><<<
\NewConfigure{speak:citation}{1}
\Configure{speak:citation}{citation }
\NewConfigure{speak:bib}{1}
\Configure{speak:bib}{Bibliography entry}>>>
\<configure jsml-math amsmath\><<<
\Configure{eqref}
{\bgroup\let\tagform@\empty
\HCode{<span class="eqref" >
\add:description{added-description}{\a:speak:eqref}}}
{\HCode{</span>}\egroup}
>>>
\<configure jsml-math amsmath\><<<
\NewConfigure{speak:eqref}{1}
\Configure{speak:eqref}{ equation }
>>>
%%%%%%%%%%%%%%%%%%
\section{Cross Links}
%%%%%%%%%%%%%%%%%%
\<configure jsml tex4ht\><<<
\Configure{crosslinks}{ }{ }{next}{previous}{previous-tail}{front}{tail}{up}
\Configure{crosslinks+}
{\IgnorePar\EndP\HCode{|<show input line no|>%
<div class="crosslinks"><p class="noindent">
\add:vdescription{begin-end}{\a:speak:crosslinks}}}
{\HCode{\add:vdescription{begin-end}{\b:speak:crosslinks}
</p></div>}\par\ShowPar}
{\IgnorePar\EndP\HCode{|<show input line no|>%
<div class="crosslinks"><p class="noindent">
\add:vdescription{begin-end}{\a:speak:crosslinks}}}
{\HCode{\add:vdescription{begin-end}{\b:speak:crosslinks}
</p></div>}\par\ShowPar}
\:CheckOption{next} \if:Option
\Configure{next+}
{\ShowPar\par\noindent \HCode{<span class="next">
\add:description{added-description}{\c:speak:crosslinks}}}
{\HCode{</span>}}
\fi
>>>
\<configure jsml tex4ht\><<<
\NewConfigure{speak:crosslinks}{3}
\Configure{speak:crosslinks}
{Navigation links}
{End navigation links}
{Navigation link}
>>>
%%%%%%%%%%%%%%%%%%
\section{Sections}
%%%%%%%%%%%%%%%%%%
\<latex shared section config\><<<
\ConfigureMark{section}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">\add:description{added-description}
{\a:speak:section}}\@seccntformat{section}%
\HCode{</span>}\fi }
\ConfigureMark{subsection}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">\add:description{added-description}
{\a:speak:subsection}}\@seccntformat{subsection}%
\HCode{</span>}\fi }
|<latex speak section|>
>>>
\<ams art,proc,book div\><<<
\ConfigureMark{subsection}
{\ifnum \c:secnumdepth>\c@secnumdepth \expandafter\:gobble
\else
\HCode{<span class="titlemark">%
\add:description{added-description}
{\a:speak:section}}\@ifundefined{sectionname}{}{%
\ignorespaces\sectionname\space}%
\@seccntformat{section}%
\HCode{</span>}\fi }
|<latex speak section|>
>>>
\<latex speak section\><<<
\NewConfigure{speak:section}{1}
\Configure{speak:section}{section}
\NewConfigure{speak:subsection}{1}
\Configure{speak:subsection}{subsection}
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{The equation Environment}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{LaTeX}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\<configure jsml-math latex\><<<
\Configure{equation}
{\IgnorePar|<inline end-par comment|>\EndP
|<advance table number|>%
\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:equation}%
<div class="equation">}\IgnorePar
|<math display in equation|>}
{\ifvmode \IgnorePar\fi\EndP
\HCode{</div>}%
\let\@eqnnum\empty
}
{\HCode{%
\add:description{end-math}{\b:speak:equation}%
</div>}%
\Tag{eq-\TableNo-num}{\theequation}%
|<try inline par|>}
>>>
\<configure jsml-math latex\><<<
\NewConfigure{speak:equation}{2}
\Configure{speak:equation}
{<BREAK SIZE="medium"/>begin equation
\ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}%
<BREAK SIZE="small"/>
}
{<BREAK SIZE="small"/>end equation \theequation
<BREAK SIZE="medium"/>}
>>>
\<inline end-par comment\><<<
\ifvmode\else \HCode{<!--tex4ht:inline-->}\fi
>>>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{AmsMath}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\ifx \mathdisplay@@pop\:UnDef
\ifx \emdf@La\:UnDef
|<amsmath html-mml pre 2000|>
\else
|<amsmath html-mml jan 2000|>
\fi
\else
|<amsmath html-mml july 2000|>
\fi
>>>
\<amsmath html-mml july 2000\><<<
\Configure{equation}
{\ifvmode \IgnorePar\fi\EndP
|<advance table number|>%
\HCode{<div class="display-math">%
\add:description{begin-math}{\a:speak:equation}%
<div class="equation">}%
|<amsmath equation july 2000|>%
|<math display in equation|>%
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{</div>}%
\let\@eqnnum\empty
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{%
\add:description{end-math}{\b:speak:equation}%
</div>}%
\Tag{eq-\TableNo-num}{\theequation}%
|<return to prev table number|>%
\ShowPar\IgnoreIndent\par}
>>>
\<amsmath html-mml july 2000\><<<
\Configure{equation*}
{\ifvmode \IgnorePar\fi\EndP
|<advance table number|>%
\HCode{<div class="display-math">%
\add:description{begin-math}{\csname
a:speak:equation*\endcsname}}%
|<amsmath equation-star july 2000|>%
|<math display in equation|>%
}
{\ifvmode \IgnorePar\fi\EndP
\HCode{\add:description{end-math}{\csname
b:speak:equation*\endcsname}</div>}%
|<return to prev table number|>%
\ShowPar\IgnoreIndent\par}
>>>
\<amsmath html-mml july 2000\><<<
\Configure{speak:equation}
{<BREAK SIZE="medium"/>begin equation
\ifTag{eq-\TableNo-num}{\LikeRef{eq-\TableNo-num}}{}%
<BREAK SIZE="small"/>
}
{<BREAK SIZE="small"/>end equation
\theequation<BREAK SIZE="medium"/>}
\NewConfigure{speak:equation*}{2}
\Configure{speak:equation*}
{<BREAK SIZE="medium"/>begin equation<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end equation<BREAK SIZE="medium"/>}
>>>
\<amsmath equation july 2000\><<<
\Configure{gather}
{\HCode{<div\Hnewline class="equation"><div
class="gather">}\IgnorePar
|<math display in equation|>}
{\HCode{</div></div>}}
{}
{}
{\ifnum\HCol=2 \IgnorePar
\HCode{</div><div>}\fi }
{}
>>>
\<amsmath equation-star july 2000\><<<
\Configure{gather*}
{\HCode{<div\Hnewline class="equation-star"><div
class="gather-star">}\IgnorePar
|<math display in equation|>}
{\HCode{</div></div>}}
{}
{}
{\ifnum\HCol=2 \IgnorePar
\HCode{</div><div>}\fi }
{}
>>>
\<math display in equation\><<<
\Configure{$$}
{\Configure{@math}{|<block display|>%
class="equation"}\IgnorePar\EndP\DviMath}
{\EndDviMath\EndP}
{\DisplayMathtrue}%
>>>
\<configure html-mml amsmath\><<<
\Configure{@begin}
{split}
{\let\tagform@=\:gobble }
>>>
\<configure jsml-math amsmath\><<<
\Configure{split}
{|<advance table number|>%
\HCode{<mtable class="split">|<start split note|>}}
{\ifvmode\IgnorePar\fi
\Tag{split-\TableNo}{\HRow:s}%
\HCode{|<end split note|></mtable>}%
|<return to prev table number|>}
{\HCode{<mtr\Hnewline>}%
\xdef\HRow:s{\HRow}%
}
{\HCode{</mtr>}}
{\HCode{<mtd\Hnewline class="split-side"
title="implicit-baseline" >%
|<split note sub eq note|>}%
}
{\HCode{</mtd>}}
>>>
\<start split note\><<<
\add:vdescription{begin-array}{<BREAK SIZE="medium"/>begin
\ifTag{split-\TableNo}{\LikeRef{split-\TableNo}}{}
sub equations<BREAK SIZE="small"/>}%
>>>
\<end split note\><<<
\add:vdescription{end-array}{<BREAK SIZE="small"/>end sub equations<BREAK SIZE="medium"/>}%
>>>
\<split note sub eq note\><<<
\add:vdescription{begin-end}{<BREAK SIZE="small"/>%
\ifnum \HCol=1 left \else right \fi
|<ord row|> sub equation<BREAK SIZE="small"/>}%
>>>
\<configure jsml-math amsmath\><<<
\ConfigureEnv{multline}
{\bgroup |<math display in equation|>}
{\egroup}
{}{}
\ConfigureEnv{multline*}
{\bgroup |<math display in equation|>}
{\egroup}
{}{}
>>>
\<configure jsml-math amsmath\><<<
\Configure{multline}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math">%
|<multline begin note|>%
<mtable>}}
{\Tag{multline-\TableNo}{\hrow:s}%
\HCode{</mtable>|<multline end note|></div>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr><mtd\Hnewline class="multline-1">%
|<multline row note|>}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
{\HCode{</mtd><mtd class="multline-2">}}
{}
\Configure{multline-num}
{\Tag{multline-\TableNo-num}{\theequation}\let\tagform@\:gobble}
{}
>>>
\<configure jsml-math amsmath\><<<
\Configure{multline*}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math">%
<mtable class="multline-star">%
|<multline-star begin note|>}}
{\Tag{multline-\TableNo}{\hrow:s}%
\HCode{|<multline-star end note|></mtable></div>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr\Hnewline><mtd>%
|<multline row note|>}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
>>>
\<multline begin note\><<<
\add:vdescription{begin-math}{%
<BREAK SIZE="medium"/>%
begin equation
\ifTag{multline-\TableNo-num}{\LikeRef{multline-\TableNo-num}}{}
with
\ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{}
lines<BREAK SIZE="small"/>}%
<div class="multline">%
>>>
\<multline-star begin note\><<<
\add:vdescription{begin-math}{%
<BREAK SIZE="medium"/>%
begin equation with
\ifTag{multline-\TableNo}{\LikeRef{multline-\TableNo}}{}
lines<BREAK SIZE="small"/>}%
<div class="multline-star">%
>>>
\<multline end note\><<<
</div>%
\add:vdescription{end-math}{end equation
<BREAK SIZE="small"/>%
\ifTag{multline-\TableNo-num}{\LikeRef
{multline-\TableNo-num}}{}%
<BREAK SIZE="medium"/>%
}%
>>>
\<multline-star end note\><<<
</div>%
\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equation<BREAK SIZE="medium"/>}%
>>>
\<multline row note\><<<
\add:vdescription{begin-end}{%
<BREAK SIZE="small"/>|<ord row|> line<BREAK SIZE="small"/>}%
>>>
\<advance multline count\><<<
\HAdvance\HRow by 1
>>>
\<configure jsml-math amsmath\><<<
\ConfigureEnv{gather}
{\bgroup |<math display in equation|>}
{\egroup}
{}{}
\ConfigureEnv{gather*}
{\bgroup |<math display in equation|>}
{\egroup}
{}{}
>>>
\<configure jsml-math amsmath\><<<
\Configure{gather}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math">%
|<begin gather note|>%
<mtable class="gather">%
}}
{\HCode{</mtable>|<end gather note|>%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>%
|<row gather note|>%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd |<gather td class|> >}%
\ifnum \HCol>1 \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
>>>
\<begin gather note\><<<
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}%
>>>
\<end gather note\><<<
\add:vdescription{end-math}{<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
>>>
\<row gather note\><<<
\add:vdescription{begin-end}{<BREAK SIZE="small"/>|<ord row|> equation<BREAK SIZE="small"/>}%
>>>
\<configure jsml-math amsmath\><<<
\Configure{gather*}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math">%
|<start gather star note|>%
<mtable class="gather-star">%
}}
{\HCode{</mtable>|<end gather star note|>%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>%
|<line gather star note|>%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd |<gather td class|> >}}
{\HCode{</mtd>}}
>>>
\<start gather star note\><<<
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}%
>>>
\<line gather star note\><<<
\add:vdescription{begin-math}{%
<BREAK SIZE="small"/>|<ord row|> equation<BREAK SIZE="small"/>}%
>>>
\<end gather star note\><<<
\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
>>>
<BREAK SIZE="small"/>
\<configure jsml-math amsmath\><<<
\Configure{gathered}
{|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math">%
|<start gathered note|>%
<mtable class="gather">%
}}
{\HCode{</mtable>|<end gathered note|>%
</div>}%
\Tag{gather-\TableNo}{\hrow:s}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>%
|<start gathered row|>%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}
{\HCode{\Hnewline<mtd |<gather td class|> >}%
\ifnum \HCol>1 \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
>>>
\<start gathered note\><<<
\add:vdescription{begin-math}{<BREAK SIZE="small"/>begin group of
\ifTag{gather-\TableNo}{\LikeRef{gather-\TableNo}}{}
equations<BREAK SIZE="small"/>}
>>>
\<end gathered note\><<<
\add:vdescription{end-math}{%
<BREAK SIZE="small"/>end equations<BREAK SIZE="small"/>}%
>>>
\<start gathered row\><<<
\add:vdescription{begin-end}{%
<BREAK SIZE="small"/>|<ord row|> equation<BREAK SIZE="small"/>}%
>>>
\<gather td class\><<<
\ifnum \HCol=1 class="col-\HCol"
\else class="content-less" title="col-\HCol"
\fi
>>>
\<configure jsml-math amsmath\><<<
\Configure{subarray}
{|<advance table number|>%
|<new row counter|>%
\HCode{<mtable class="subarray\if c\Hlcr-c\fi">%
\add:vdescription{begin-array}{\a:speak:subarray}%
}}
{\HCode{\add:vdescription{end-array}{\b:speak:subarray}%
</mtable>}%
\Tag{subarray-\TableNo}{\hrow:s}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr><mtd>%
\add:vdescription{begin-end}{\c:speak:subarray}%
}}
{\xdef\hrow:s{\HRow}\HCode{</mtd></mtr>}}
>>>
\<configure jsml-math amsmath\><<<
\NewConfigure{speak:subarray}{3}
|<config speak:subarray|>
>>>
\<config speak:subarray\><<<
\Configure{speak:subarray}
{<BREAK SIZE="small"/>begin sub array with
\ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{}
rows<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end sub array<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>|<ord row|> row<BREAK SIZE="small"/>}
>>>
\<configure jsml-math amsmath\><<<
\Configure{substack}
{\bgroup
\Configure{speak:subarray}
{<BREAK SIZE="small"/>begin sub stack with
\ifTag{subarray-\TableNo}{\LikeRef{subarray-\TableNo}}{}
entries<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end sub stack<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>|<ord row|>
entry<BREAK SIZE="small"/>}
}
{\egroup}
>>>
\<configure jsml-math amsmath\><<<
\Configure{smallmatrix}
{|<advance table number|>%
|<new row counter|>%
\HCode{<PARA><mtable class="smallmatrix">}%
\HCode{\add:vdescription{begin-array}{\a:speak:smallmatrix}}}
{\Tag{smallmatrix-\TableNo}{\hrow:s}%
\HCode{|<show input line no|>%
\add:vdescription{end-array}{\b:speak:smallmatrix}}%
\ifvmode \IgnorePar\fi
\HCode{</mtable></PARA>}%
|<return to prev row counter|>%
|<return to prev table number|>}
{\HCode{<mtr>}\c:speak:smallmatrix}%
{\xdef\hrow:s{\HRow}\HCode{</mtr>}}%
{\HCode{<mtd>}%
\e:speak:smallmatrix \HCode{<div>}}
{\HCode{</div>}\f:speak:smallmatrix
\HCode{</mtd>\Hnewline}}
>>>
\<plain,latex mathml\><<<
\NewConfigure{speak:smallmatrix}{6}
\Configure{speak:smallmatrix}
{begin matrix with
\ifTag{smallmatrix-\TableNo}{\LikeRef{smallmatrix-\TableNo}}{}
rows}
{end matrix}
{|<begin table row note|>}
{|<end table row note|>}
{|<begin table cell note|>}
{|<end table cell note|>}
>>>
\<configure jsml-math amsmath\><<<
\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
\ifmathml
\Tg<span class="mrow">\def\end:mathalign{\Tg</span>}%
\else
\DviMath
\def\end:mathalign{\EndDviMath \DisplayMathfalse}%
\DisplayMathtrue
\fi
|<advance table number|>%
|<new row counter|>%
\HCode{<div\Hnewline class="display-math"><mtable>%
\add:description{begin-array}{\a:speak:align}%
}}
{\HCode{%
\add:description{end-array}{\b:speak:align}%
</mtable></div>}%
\Tag{align-\TableNo}{\hrow:s}%
|<return to prev row counter|>%
|<return to prev table number|>\end:mathalign }
{\HCode{<mtr>|<align eq note|>}}
{\HCode{</mtr>}\ifst@rred\else
\Tag{align-\TableNo-\HRow}{\theequation}%
\fi \xdef\hrow:s{\HRow}}
{\HCode{<mtd\Hnewline
class="align-\ifnum \HCol>\maxfields@ label\else
\ifodd\HCol\space odd\else even\fi
\fi">}%
\ifnum \HCol>\maxfields@ \let\tagform@\:gobble \fi
}
{\HCode{</mtd>}}
}
\:tempc{align}{align}
\:tempc{alignat}{alignat}
\:tempc{xalignat}{xalignat}
\:tempc{xxalignat}{xxalignat}
\:tempc{flalign}{flalign}
\:tempc{align*}{align-star}
\:tempc{alignat*}{alignat-star}
\:tempc{xalignat*}{xalignat-star}
\:tempc{flalign*}{flalign-star}
>>>
\<align eq note\><<<
\add:description{begin-end}{\c:speak:align}%
>>>
\<configure jsml-math amsmath\><<<
\NewConfigure{speak:align}{3}
\Configure{speak:align}
{<BREAK SIZE="small"/>begin
\ifTag{align-\TableNo}{\LikeRef{align-\TableNo}}{}
aligned equations<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end aligned equations<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>\ifst@rred |<ord row|> equation
\else
equation number \ifst@rred\else
\ifTag{align-\TableNo-\HRow}%
{\LikeRef{align-\TableNo-\HRow}}{}
\fi
\fi <BREAK SIZE="small"/>%
}
>>>
%%%%%%%%%%%%%
\subsection{Embedded Text}
%%%%%%%%%%%%%
\<configure jsml-math latex\><<<
\def\AA:text#1{|<config start mtext|>}
\def\BB:text{|<config end mtext|>}
>>>
\<config start mtext\><<<
\mtexttrue
\HCode{ <span\Hnewline class="mstyle-#1">}%
|<start mtext space|>\PauseMathClass
|<config math within mtext|>%
>>>
\<config end mtext\><<<
\mtextfalse\EndPauseMathClass|<end mtext space|>\HCode
{</span>}%
>>>
\<config math within mtext\><<<
\Configure{$}%
{\EndPauseMathClass \HCode{<span \Hnewline
class="text-math">}\mtextfalse
|<end mtext space|>}%
{\HCode{</span>}|<start mtext space|>\PauseMathClass \mtexttrue}%
{}%
>>>
\<start mtext space\><<<
\ht:special{t4ht@,&\#x00A0;}%
>>>
\<end mtext space\><<<
\ht:special{t4ht@,}%
>>>
%%%%%%%%%%%%%%%%%%
\section{Fonts}
%%%%%%%%%%%%%%%%%%
\<configure jsml-math fontmath\><<<
\def\bold:version{bold}
\Configure{mathbf}%
{\bgroup \HCode{<span class="mathvariant-bold">%
<BREAK SIZE="small"/>%
\add:vdescription{font}{bold}<PROS PITCH="-10" >}}%
{\HCode{</PROS><BREAK SIZE="small"/></span>}\egroup }%
\Configure{mathit}%
{\bgroup \HCode{<span
class="mathvariant-\ifx
\bold:version\math@version bold-\fi italic">}}%
{\HCode{</span>}\egroup }%
\Configure{mathrm}%
{\bgroup \HCode{<span class="mathvariant-normal">}}%
{\HCode{</span>}\egroup }%
\Configure{mathsf}%
{\bgroup \HCode{<span
class="mathvariant-\ifx
\bold:version\math@version bold-\fi sans-serif">}}%
{\HCode{</span>}\egroup }%
\Configure{mathtt}%
{\bgroup \HCode{<span class="mathvariant-monospace">}}%
{\HCode{</span>}\egroup }%
>>>
%%%%%%%%%%%%%%%%%%
\section{Theorems}
%%%%%%%%%%%%%%%%%%
\<configure jsml latex\><<<
\Configure{newtheorem}
{\ifvmode\IgnorePar\fi\EndP
\HCode{<BREAK SIZE="medium"/>%
<PARA><div class="newtheorem">}\par\noindent
\HCode{<SENT><PROS PITCH="-10" ><span class="theorem-head">}}
{\HCode{</span></PROS></SENT><BREAK SIZE="small"/>}}
{\EndP\IgnorePar\HCode{</div></PARA><BREAK SIZE="medium"/>}\ShowPar\par}
>>>
\<configure jsml acm-proc-article-sp\><<<
\Configure{proof}
{\ifvmode\IgnorePar\fi\EndP
\HCode{<BREAK SIZE="medium"/>%
<PARA><div class="newtheorem" title="proof">}\par\noindent
\HCode{<SENT><PROS PITCH="-10" ><span class="theorem-head">}}
{\HCode{</span></PROS></SENT><BREAK SIZE="small"/>}}
{\EndP\IgnorePar\HCode{</div></div></PARA><BREAK SIZE="medium"/>}\ShowPar\par}
>>>
\<configure jsml amsthm\><<<
|<shared ams thm/cls|>
>>>
\<ams art,proc,book\><<<
\ifx \deferred@thm@head\:UnDef\else
|<shared ams thm/cls|>
\fi
>>>
\<shared ams thm/cls\><<<
\Configure{proof}
{\ifvmode \IgnorePar \fi \EndP
\HCode{<div class="newtheorem" title="proof">}\par\ShowPar
\HCode{<span class="theorem-head">}\IgnorePar}
{\HCode{</span>}\ShowPar}
{\ifvmode \IgnorePar \fi \EndP \HCode{</div>}\par}
>>>
%%%%%%%%%%%%%%%%%%
\section{Others}
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
\section{Boxed}
%%%%%%%%%%%%%%%%%%
\<configure jsml-math amsmath\><<<
\Configure{boxed}
{\HCode{<span class="boxed">%
\add:description{begin-end}{\a:speak:boxed}}}
{\HCode{\add:description{begin-end}{\b:speak:boxed}</span>}}
>>>
\<configure jsml-math amsmath\><<<
\NewConfigure{speak:boxed}{2}
\Configure{speak:boxed}
{<BREAK SIZE="small"/>begin boxed<BREAK SIZE="small"/>}
{<BREAK SIZE="small"/>end boxed<BREAK SIZE="small"/>}
>>>
%%%%%%%%%%%%%
\subsection{To Do}
%%%%%%%%%%%%%
\begin{itemize}
\item
How do we deal with accents (e.g., \verb+ M\"obius+)
\end{itemize}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\<plain,fontmath math\><<<
\Configure{MathClass}{0}{*}{<span class="mi"\Hnewline>}%
{</span>}{}
\Configure{MathClass}{1}{*}{<span class="before-mo-op"
title="speech-extra">
</span><mo class="mo-op"\Hnewline
>}{</mo><span class="after-mo-op"
title="speech-extra"> </span>}{}
\Configure{MathClass}{2}{*}{<mo class="mo-bin">}{</mo>}{}
\Configure{MathClass}{3}{*}{<mo class="mo-rel">}{</mo>}{}
\:CheckOption{mathml-} \if:Option
\Configure{MathClass}{4}{*}{<mo class="mo-open">}
{</mo>}{}
\Configure{MathClass}{5}{*}{<mo class="mo-close">}
{</mo>}{}
\else
\Log:Note{for sources failing to produce
clean mathml code, try the command line option `mathml-'}%
\Configure{MathClass}{4}{*}{<span class="mrow"><mo class="mo-open">}
{</mo><span class="mrow">}{}
\Configure{MathClass}{5}{*}{</span><mo class="mo-close">}
{</mo></span>}{}
\fi
\Configure{MathClass}{6}{*}{<mo class="mo-punc">}{</mo>}{}
\Configure{MathClass}{7}{*}{<span class="mn">}{</span>}
{0123456789}
\Configure{FormulaClass}{0}{}{}{}
\Configure{FormulaClass}{1}{}{}{}
\Configure{FormulaClass}{2}{}{}{}
\Configure{FormulaClass}{3}{}{}{}
\Configure{FormulaClass}{4}{}{}{}
\Configure{FormulaClass}{5}{}{}{}
\Configure{FormulaClass}{6}{}{}{}
>>>
\<configure jsml-math fontmath\><<<
\def\:tempd#1#2{%
\expandafter\def\csname #1\endcsname{\mathchar"13#2\relax}%
\MathSymbol\mathop{#1}%
\expandafter\def\csname #1:limits\endcsname{\expandafter
\:same \math:sym\mathop{#1}\limits}%
\expandafter\def\csname #1:nolimits\endcsname{\expandafter
\:same \math:sym\mathop{#1}\nolimits}%
\expandafter\edef\csname n:#1:\endcsname{\noexpand\ifDisplayMath
\noexpand\expandafter \expandafter\noexpand \csname #1:limits\endcsname
\noexpand\else \noexpand\expandafter
\expandafter\noexpand
\csname #1:nolimits\endcsname\noexpand\fi}%
\expandafter\pend:def\csname n:#1:\endcsname{\ifDisplayMath
\mathop:prefix{mathsize-big}\fi}%
}
\:tempd{bigcap}{54}
\:tempd{bigcup}{53}
\:tempd{bigodot}{4A}
\:tempd{bigoplus}{4C}
\:tempd{bigotimes}{4E}
\:tempd{bigsqcup}{46}
\:tempd{biguplus}{55}
\:tempd{bigvee}{57}
\:tempd{bigwedge}{56}
\:tempd{coprod}{60}
\:tempd{intop}{52}
\:tempd{ointop}{48}
\:tempd{prod}{51}
\:tempd{sum}{50}
>>>
%%%%%%%%%%%%%
\subsection{amsopname}
%%%%%%%%%%%%%
\<configure jsml-math amsopn\><<<
\Configure{qopname}
{\Configure{mathop}{*}
{<mo class="mo-qopname"> <span>}
{</span> </mo>}
{}}
>>>