% $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.4ht (|version), generated from |jobname.tex % Copyright 2009-2016 TeX Users Group % Copyright |CopyYear.2006. Eitan M. Gurari | >>> \<<< % jsml-math.4ht (|version), generated from |jobname.tex % Copyright 2009-2016 TeX Users Group % Copyright |CopyYear.2006. Eitan M. Gurari | >>> \<<< !*?: >>> \<<< cw:>>> \<<< % >>> \<<< \ShowPar >>> \<<< \ShowPar \par{\HCondtrue\noindent}% >>> %%%%%%%%%%%%%%%%%% \section{Outline} %%%%%%%%%%%%%%%%%% \<<< | | >>> \<<< | | >>> \<<< | >>> \<<< | | | >>> \<<< | | |%should appear before TocAt|% >>> \<<< | >>> \<<< | >>> \<<< | | >>> \<<< | >>> \<<< | >>> \<<< | >>> \<<< | | >>> \<<< | >>> %%%%%%%%%%%%%%%%%% \section{Preamble} %%%%%%%%%%%%%%%%%% \<<< |
\Configure{ext}{jsml}
>>>


\<<<
\: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{PROLOG}{JSML,VERSION,DOCTYPE,*XML-STYLESHEET}
\Configure{JSML}
    {\HCode{\Hnewline}}          
>>>




\<<<
\Configure{HTML}
  {\IgnorePar\HCode{\Hnewline>\Hnewline}}
  {\ifvmode\IgnorePar\fi\HCode{\Hnewline
   \Hnewline}}
>>>

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


The XML definition and DOCTYPE elements are not accepted by the
browser.


\<<<
\Configure{VERSION}
    {\HCode{\Hnewline\Hnewline
            \Hnewline}}          
>>>

\<<<
encoding="\expandafter\ifx \csname a:charset\endcsname\relax
         \expandafter\:encoding\A:charset
   \else \expandafter\:encoding\a:charset\fi"
>>>



\<<<
\Configure{DOCTYPE}
  {\HCode{%             \Hnewline
          
          \Hnewline}}
\def\xhtml:DOCTYPE{PUBLIC
     "-//W3C//DTD XHTML 1.0 Transitional//|"\Hnewline
    \space\space "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"}
>>>


% %%%%%%%%%%%%%%%%%%
% \section{Paragraphs}
% %%%%%%%%%%%%%%%%%%
% 
% \<<<
% \Configure{HtmlPar}
%   {\EndP\HCode{|

}} % {\EndP\HCode{|

}} % {\HCode{

}} % {\HCode{

}}% % >>> %%%%%%%%%%%%%%%%%% \section{Front Matter} %%%%%%%%%%%%%%%%%% \<<< \Configure{maketitle} {\ifvmode \IgnorePar\fi \EndP |% \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>} {}} >>>