summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/lwarp/lwarp.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/lwarp/lwarp.dtx')
-rw-r--r--macros/latex/contrib/lwarp/lwarp.dtx1628
1 files changed, 1512 insertions, 116 deletions
diff --git a/macros/latex/contrib/lwarp/lwarp.dtx b/macros/latex/contrib/lwarp/lwarp.dtx
index 6d04f1898c..7d90efe942 100644
--- a/macros/latex/contrib/lwarp/lwarp.dtx
+++ b/macros/latex/contrib/lwarp/lwarp.dtx
@@ -16,7 +16,7 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{lwarp}
-%<package> [2020/10/07 v0.892 Allows LaTeX to directly produce HTML5 output.]
+%<package> [2020/11/26 v0.893 Allows LaTeX to directly produce HTML5 output.]
%
%<*driver>
\documentclass{ltxdoc}
@@ -2079,6 +2079,36 @@ or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xta
\trouble[floatrow]{floatrow=\pkg{floatrow}>ttabbox=\cs{ttabbox}}
which used \cs{ttabbox} from \pkg{floatrow}.
\item \limitsresumetabular
+ \item To automate the use of \cs{StartDefiningTabulars}
+ \gindex{StartDefiningTabulars=\cs{StartDefiningTabulars}}
+ \gindex{tabular>StartDefiningTabulars=\cs{StartDefiningTabulars}}
+ \gindex{tabular>in environments, catcode of \&}
+ \margintag{For developers:}
+ and \cs{EndDefiningTabulars},
+ these macros may be embedded inside an \HTML\ environment definition
+ to automatically change the catcode of \texttt{\&} before
+ absorbing the arguments.
+ Another environment may be embedded as well.
+ \begin{sourcedisplay}
+ \% Does the work after the catcode has been changed: \\
+ \cs{newcommand}*\{\textblue{\cs{LWR@HTML@subsomename}}\}[2]\{\% \\
+ \fquad \dots \\
+ \fquad \textgreen{\cs{otherenvironmentname} [<args>] \{<args>\}}\quad \% for example \\
+ \} \\
+ \% Change catcode before absorbing arguments: \\
+ \cs{newcommand}*\{\cs{LWR@HTML@somename}\{\% \\
+ \fquad \textred{\cs{StartDefiningTabulars}} \\
+ \fquad \textblue{\cs{LWR@HTML@subsomename}} \\
+ \} \\
+ \% Change catcode again at the end: \\
+ \cs{newcommand}*\{\cs{LWR@HTML@endsomename}\}\{\% \\
+ \fquad \dots \\
+ \fquad \textgreen{\cs{endotherenvironmentname}} \quad \% for example \\
+ \fquad \textred{\cs{StopDefiningTabulars}} \\
+ \} \\
+ \% Combine with the existing print definition: \\
+ \cs{LWR@formattedenv}\{somename\}
+ \end{sourcedisplay}
\end{itemize}
\item [Cell contents:] \
@@ -2262,16 +2292,16 @@ when the containing enviroment ends, resulting in corrupted \HTML\ rows.
To fix this, use \cs{ResumeTabular} as follows.
This is ignored in print mode.
\begin{sourcedisplay}
-\textred{\cs{StartDefiningTabulars}} \% because \& is used in a definition \\
+\textred{\cs{StartDefiningTabulars}} \% \quad (\& is used in a definition) \\
\cs{newenvironment}\{outerenvironment\} \\
\{ \\
-\cs{tabular}\{cc\} \\
-left \& right \textbackslash\textbackslash \\
+\fquad \cs{tabular}\{cc\} \\
+\fquad left \& right \textbackslash\textbackslash \\
\} \\
\{ \\
-\textred{\cs{TabularMacro}\cs{ResumeTabular}} \\
-left \& right \textbackslash\textbackslash \\
-\cs{endtabular} \\
+\fquad \textred{\cs{TabularMacro}\cs{ResumeTabular}} \\
+\fquad left \& right \textbackslash\textbackslash \\
+\fquad \cs{endtabular} \\
\} \\
\textred{\cs{StopDefiningTabulars}} \\
\end{sourcedisplay}
@@ -3027,7 +3057,7 @@ This boolean may be tested by the user for later use.
%<*package>
% \fi
%
-% \CheckSum{50415}
+% \CheckSum{51253}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -3161,6 +3191,7 @@ This boolean may be tested by the user for later use.
% \changes{v0.89}{2020/09/03}{\ 2020/09/03}
% \changes{v0.891}{2020/09/22}{\ 2020/09/22}
% \changes{v0.892}{2020/10/07}{\ 2020/10/07}
+% \changes{v0.893}{2020/11/26}{\ 2020/11/26}
@@ -3195,8 +3226,8 @@ This boolean may be tested by the user for later use.
% used for the final conversion of text and images. Math may be represented
% by \SVG\ images or \brand{MathJax}.
% More than 500 \LaTeX\ packages and classes are supported,
-% of which more than 70 also support \brand{MathJax}.
-%
+% of which more than 90 also support \brand{MathJax}.
+%
% Documents may be produced by \DVI\ or \PDF\ \LaTeX, Lua\LaTeX, \XeLaTeX;
% by several CJK engines, classes, and packages;
% or by customized systems such as \pkg{perltex} and \pkg{pythontex}.
@@ -3384,6 +3415,22 @@ This boolean may be tested by the user for later use.
%
% \begin{description}
% \needspace{2\baselineskip}
+% \item[v0.893:] Minor fixes, more packages.
+% \begin{itemize}
+% \item Added \brand{MathJax} emulation for \cs{mathnormal}.
+% \margintag{\brand{MathJax}}
+% \item Fixed \pkg{pstricks} \env{pspicture*}.
+% \margintag{packages}
+% \item Fixed \pkg{tikz} font macros.
+% \item \pkg{braket}: Now uses the \brand{MathJax} extension.
+% \item Added \pkg{esvect}, \pkg{fixmath}, \pkg{keystroke}, \pkg{mathastext},
+% \pkg{menukeys}, \pkg{picinpar}, \pkg{plimsoll}, \pkg{repltext},
+% \pkg{selectp}, \pkg{seqsplit}, \pkg{simplebnf}, \pkg{statistics},
+% \pkg{swfigure}.
+% \item Added \brand{MathJax} emulation for \pkg{mathspec}.
+% \item Verified to work as-is for \pkg{apxproof}, \pkg{syntaxdi}, \pkg{venndiagram}.
+% \end{itemize}
+% \needspace{2\baselineskip}
% \item[v0.892:] \pkg{minted}, \pkg{fvextra}, \brand{MathJax} \cs{left} \Slash \cs{right}.
% \begin{itemize}
% \item \pkg{fourier}, \pkg{libertinust1math}, \pkg{newpxmath}, \pkg{newtxmath},
@@ -5464,7 +5511,7 @@ This boolean may be tested by the user for later use.
% \ipkg{pagegrid}, \ipkg{pagesel}, \epkg{parallel}, \epkg{parcolumns},
% \ipkg{pdfcolparallel}, \ipkg{pdfcolparcolumns}, \ipkg{pdfcrypt}, \ipkg{pdfprivacy},
% \ipkg{preview}, \epkg{ragged2e}, \ipkg{returntogrid}, \ipkg{rmpage},
-% \epkg{scrlayer-scrpage}, \epkg{scrpage2}, \epkg{setspace},
+% \epkg{scrlayer-scrpage}, \epkg{scrpage2}, \epkg{setspace}, \ipkg{selectp},
% \ipkg{textarea}, \ipkg{threadcol},
% \ipkg{thumb}, \ipkg{thumbs}, \ipkg{titleps}, \ipkg{tocenter},
% \ipkg{turnthepage}, \ipkg{twoup}, \ipkg{typearea},
@@ -5549,7 +5596,7 @@ This boolean may be tested by the user for later use.
% due to native \LaTeX\ processing.\\
%
% Theorems: & Native \LaTeX\ theorems,
-% \mpkg{amsthm}, \mpkg{ntheorem}, \mpkg{shadethm},
+% \mpkg{amsthm}, \spkg{apxproof}, \mpkg{ntheorem}, \mpkg{shadethm},
% \mpkg{theorem}, \mpkg{thmbox}, \mpkg{thmtools}. \\
%
% Additional math: & Math fonts via \SVG\ images,
@@ -5559,23 +5606,30 @@ This boolean may be tested by the user for later use.
% \spkg{centernot}\ejax, \spkg{cmbright}\ejax,
% \spkg{colonequals}\ejax, \spkg{decimal}\ejax,
% \spkg{delarray}, \mpkg{DotArrow}\ejax, \spkg{dotlessi}\ejax, \spkg{dotlessj}\sjax,
-% \spkg{extarrows}\ejax, \spkg{fouridx}\ejax, \spkg{fourier}\ejax,
+% \spkg{esvect}\ejax, \spkg{extarrows}\ejax, \spkg{fixmath}\ejax,
+% \spkg{fouridx}\ejax, \spkg{fourier}\ejax,
% \spkg{guass}, \spkg{hhtensor}\ejax, \spkg{icomma}\ijax, \spkg{jkmath},
% \spkg{kpfonts}\ejax, \spkg{kpfonts-otf}\ejax,
% \spkg{leftidx}\ejax, \spkg{libertinust1math}\ejax, \spkg{mathalpha}\ejax,
-% \spkg{mathcomp}\ejax, \spkg{mathdesign}\ejax,
+% \spkg{mathastext}\ejax, \spkg{mathcomp}\ejax, \spkg{mathdesign}\ejax,
% \spkg{mathdots}\ejax,
-% \spkg{mathfixs}\ejax, \spkg{mathpunctspace}\ijax,
-% \spkg{mathspec}, \mpkg{mathtools}\ejax, \mpkg{mismath}\ejax, \spkg{mleftright}\ejax,
+% \spkg{mathfixs}\ejax,
+% \spkg{mathpazo}\ejax, \spkg{mathptmx}\ejax,
+% \spkg{mathpunctspace}\ijax,
+% \spkg{mathspec}\ejax, \mpkg{mathtools}\ejax,
+% \mpkg{mismath}\ejax, \spkg{mleftright}\ejax,
% \spkg{multiobjective}\ejax, \mpkg{nccmath}\ejax,
% \spkg{nicematrix}, \spkg{noitcrul}\ejax,
% \spkg{newpxmath}\ejax, \spkg{newtxmath}\ejax, \spkg{newtxsf}\ejax,
% \spkg{pb-diagram},
+% \spkg{pxfonts}\ejax,
% \ipkg{resizegather}, \spkg{rmathbr}\ejax, \spkg{scalerel}\ejax,
% \epkg{shuffle}\ejax, \spkg{stackrel}\ejax,
-% \mpkg{statex2}\ejax, \spkg{statmath}\ejax,
-% \spkg{subsupscripts}\ejax, \spkg{textualicomma}\ijax, \spkg{txgreeks}\ejax,
-% \spkg{unicode-math}\ejax, \spkg{ushort}\ejax, \mpkg{witharrows}\ejax,
+% \mpkg{statex2}\ejax, \mpkg{statistics}, \spkg{statmath}\ejax,
+% \spkg{subsupscripts}\ejax, \spkg{textualicomma}\ijax,
+% \spkg{txfonts}\ejax, \spkg{txgreeks}\ejax,
+% \spkg{unicode-math}\ejax, \spkg{upgreek}\ejax,
+% \spkg{ushort}\ejax, \mpkg{witharrows}\ejax,
% \mpkg{xfakebold}\ejax, \mpkg{xy}.
% Many others work as-is. \\
%
@@ -5596,8 +5650,9 @@ This boolean may be tested by the user for later use.
% \ipkg{fix2col}, \ipkg{flafter},
% \epkg{float}, \epkg{floatflt}, \epkg{floatrow}, \ipkg{fltrace}, \ipkg{ftcap},
% \ipkg{hypcap}, \mpkg{keyfloat}, \ipkg{morefloats}, \ipkg{multicap}, \spkg{newfloat},
-% \epkg{nonfloat}, \ipkg{placeins}, \epkg{rotfloat}, \ipkg{stfloats},
+% \epkg{nonfloat}, \mpkg{picinpar}, \ipkg{placeins}, \epkg{rotfloat}, \ipkg{stfloats},
% \mpkg{subcaption}, \mpkg{subfig}, \epkg{subfigure}, \spkg{subfloat},
+% \epkg{swfigure},
% \epkg{topcapt}, \epkg{trivfloat}, \epkg{wrapfig}. \\
%
% \midrule
@@ -5679,11 +5734,12 @@ This boolean may be tested by the user for later use.
% \cs{bfseries}, etc.\ are only supported in some cases.
% \mpkg{cancel}\sjax, \epkg{ellipsis}, \mpkg{embrac}, \spkg{enparen},
% \ipkg{hyphenat}, \epkg{lettrine}, \epkg{lips},
-% \ipkg{lua-check-hyphen}, \ipkg{luacolor}, \epkg{magaz}, \epkg{nolbreaks},
-% \ipkg{normalcolor},
+% \ipkg{lua-check-hyphen}, \ipkg{luacolor}, \epkg{magaz}, \ipkg{moresize},
+% \epkg{nolbreaks}, \ipkg{normalcolor},
% \ipkg{pdfcol}, \ipkg{pdfcolmk},
% \ipkg{pdfrender}, \mpkg{realscripts}, \mpkg{relsize}\ejax,
-% \ipkg{scalefnt}, \epkg{soul}, \epkg{soulpos}, \epkg{soulutf8}, \mpkg{stackengine},
+% \ipkg{scalefnt}, \mpkg{seqsplit}\ejax, \epkg{soul}, \epkg{soulpos},
+% \epkg{soulutf8}, \mpkg{stackengine},
% \epkg{textfit}, \epkg{thinsp}, \ipkg{trimclip}, \ipkg{truncate},
% \mpkg{ulem}, \mpkg{umoline}, \ipkg{underscore}, \ipkg{uspace},
% \mpkg{xellipsis}. \\
@@ -5726,11 +5782,11 @@ This boolean may be tested by the user for later use.
% \mpkg{chemgreek}, \mpkg{dingbat}, \spkg{euro}, \mpkg{eurosym},
% \mpkg{fontawesome}, \mpkg{fontawesome5}, \spkg{gensymb}\ejax, \spkg{latexsym}\sjax,
% \mpkg{marvosym},
-% \spkg{mathcomp}\ejax, \spkg{mathpazo}\ejax, \spkg{mathptmx}\ejax,
% \mpkg{metalogo}, \mpkg{metalogox},
-% \mpkg{pifont}, \spkg{pxfonts}\ejax, \spkg{textalpha},
-% \mpkg{textcomp}, \spkg{textgreek}, \spkg{txfonts}\ejax,
-% \mpkg{typicons}, \spkg{upgreek}\ejax,
+% \mpkg{pifont},
+% \spkg{textalpha},
+% \mpkg{textcomp}, \spkg{textgreek},
+% \mpkg{typicons},
% \mpkg{xunicode}.
% \\
%
@@ -5752,13 +5808,15 @@ This boolean may be tested by the user for later use.
% \spkg{circuitikz}, \spkg{econometrics}\ejax, \spkg{elements},
% \mpkg{engtlc}\ejax, \spkg{fast-diagram}, \mpkg{ghsystem},
% \spkg{hepnicenames}, \spkg{heppennames}, \spkg{hepunits}\ejax,
-% \spkg{karnaughmap}, \mpkg{karnaugh-map},
-% \mpkg{listings}, \spkg{listingsutf8}, \spkg{linop},
+% \spkg{karnaughmap}, \mpkg{karnaugh-map}, \mpkg{keystroke},
+% \mpkg{listings}, \spkg{listingsutf8}, \spkg{linop}, \mpkg{menukeys},
% \mpkg{mhchem}\sjax, \mpkg{minted}, \spkg{pgfgantt},
-% \mpkg{phfqit}, \spkg{physics}\sjax, \spkg{physunits}\ejax, \spkg{qcircuit},
-% \mpkg{register}, \spkg{simpler-wick},
-% \spkg{slashed}\ejax, \mpkg{steinmetz}\ejax, \spkg{structmech}, \mpkg{struktex}.
-% \spkg{tikz-karnaugh}, \spkg{tikzcodeblocks} \\
+% \mpkg{phfqit}, \spkg{physics}\sjax, \spkg{physunits}\ejax,
+% \spkg{plimsoll}\ejax, \spkg{qcircuit},
+% \mpkg{register}, \mpkg{simplebnf}, \spkg{simpler-wick},
+% \spkg{slashed}\ejax, \mpkg{steinmetz}\ejax, \spkg{structmech}, \mpkg{struktex},
+% \spkg{syntaxdi},
+% \spkg{tikz-karnaugh}, \spkg{tikzcodeblocks}, \spkg{venndiagram} \\
%
% \midrule
%
@@ -5787,7 +5845,7 @@ This boolean may be tested by the user for later use.
%
% Accessibility: & \epkg{accessibility}\ijax, \ipkg{accsupp}\ijax,
% \ipkg{axessibility}\ijax,
-% \ipkg{pdfcomment}\ijax, \ipkg{tagpdf}. \\
+% \ipkg{pdfcomment}\ijax, \ipkg{repltext}\ijax, \ipkg{tagpdf}. \\
%
% \midrule
%
@@ -12475,12 +12533,14 @@ This boolean may be tested by the user for later use.
must be loaded after Lwarp.\MessageBreak
Enter 'H' for possible solutions%
}
- {Move ``\protect\usepackage{#1}'' after
- ``\protect\usepackage{lwarp}''.\MessageBreak
- Package #1 may also be loaded by something else,\MessageBreak
- which must also be moved after Lwarp.}
+ {%
+ Move ``\protect\usepackage{#1}'' after
+ ``\protect\usepackage{lwarp}''.\MessageBreak
+ Package #1 may also be loaded by something else,\MessageBreak
+ which must also be moved after Lwarp.%
+ }
}
-{}
+{\relax}
}
% \end{macrocode}
% \end{macro}
@@ -12531,7 +12591,7 @@ This boolean may be tested by the user for later use.
% \begin{macrocode}
\newcommand*{\LWR@loadbefore}[1]{%
\@ifpackageloaded{#1}
-{}
+{\relax}
{
\PackageError{lwarp}
{%
@@ -12646,7 +12706,7 @@ This boolean may be tested by the user for later use.
or is superceded by another class.\MessageBreak
For a possible alternative, see class(es) #2.
}
-}{}%
+}{\relax}%
}
% \end{macrocode}
% \end{macro}
@@ -12665,6 +12725,7 @@ This boolean may be tested by the user for later use.
% \changes{v0.87}{2020/05/14}{Prevented \pkg{csvtools}.}
% \changes{v0.88}{2020/07/07}{Prevented \pkg{shadethm}.}
% \changes{v0.891}{2020/09/16}{Prevented \pkg{libgreek}.}
+% \changes{v0.893}{2020/11/15}{Allowed \pkg{picinpar}.}
%
% ^^A *earlyloadnever *loadnever
% \begin{macrocode}
@@ -12694,7 +12755,6 @@ This boolean may be tested by the user for later use.
\LWR@earlyloadnever{libgreek}{libertinust1math, newtx}
\LWR@earlyloadnever{newthm}{ntheorem}
\LWR@earlyloadnever{pdfcprot}{microtype}
-\LWR@earlyloadnever{picinpar}{floatflt, wrapfig}
\LWR@earlyloadnever{picins}{floatflt, wrapfig}
\LWR@earlyloadnever{rplain}{fancyhdr}
\LWR@earlyloadnever{si}{siunitx}
@@ -12870,6 +12930,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{eqparbox}
\LWR@loadafter{errata}
\LWR@loadafter{eso-pic}
+\LWR@loadafter{esvect}
\LWR@loadafter{etoc}
\LWR@loadafter{eurosym}
\LWR@loadafter{everypage}
@@ -12887,6 +12948,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{figsize}
\LWR@loadafter{fitbox}
\LWR@loadafter{fix2col}
+\LWR@loadafter{fixmath}
\LWR@loadafter{fixme}
\LWR@loadafter{fixmetodonotes}
\LWR@loadafter{flafter}
@@ -12962,6 +13024,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{jurabib}
\LWR@loadafter{karnaugh-map}
\LWR@loadafter{keyfloat}
+\LWR@loadafter{keystroke}
% kpfonts may be loaded before lwarp
% kpfonts-otf may be loaded before lwarp
\LWR@loadafter{layaureo}
@@ -12996,17 +13059,20 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{marginnote}
\LWR@loadafter{marvosym}
% mathalpha may be loaded before lwarp
+\LWR@loadafter{mathastext}
\LWR@loadafter{mathcomp}
\LWR@loadafter{mathdesign}
\LWR@loadafter{mathdots}
\LWR@loadafter{mathfixs}
\LWR@loadafter{mathpazo}
\LWR@loadafter{mathptmx}
+\LWR@loadafter{mathspec}
\LWR@loadafter{mathtools}
\LWR@loadafter{mcaption}
\LWR@loadafter{mdframed}
\LWR@loadafter{media9}
\LWR@loadafter{memhfixc}
+\LWR@loadafter{menukeys}
\LWR@loadafter{metalogo}
\LWR@loadafter{metalogox}
\LWR@loadafter{mhchem}
@@ -13088,6 +13154,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{phfqit}
\LWR@loadafter{physics}
\LWR@loadafter{physunits}
+\LWR@loadafter{picinpar}
\LWR@loadafter{pifont}
\LWR@loadafter{placeins}
\LWR@loadafter{plarray}
@@ -13096,6 +13163,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{plextarydshln}
\LWR@loadafter{plcolortbl}
\LWR@loadafter{plextdelarray}
+\LWR@loadafter{plimsoll}
\LWR@loadafter{prelim2e}
\LWR@loadafter{prettyref}
\LWR@loadafter{preview}
@@ -13139,6 +13207,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{section}
\LWR@loadafter{sectionbreak}
\LWR@loadafter{sectsty}
+\LWR@loadafter{selectp}
\LWR@loadafter{semantic-markup}
\LWR@notmemoirloadafter{setspace}
\LWR@loadafter{shadow}
@@ -13149,6 +13218,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{shuffle}
\LWR@loadafter{sidecap}
\LWR@loadafter{sidenotes}
+\LWR@loadafter{simplebnf}
\LWR@loadafter{SIunits}
\LWR@loadafter{siunitx}
\LWR@loadafter{slantsc}
@@ -13164,6 +13234,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{stackengine}
\LWR@loadafter{stackrel}
\LWR@loadafter{statex2}
+\LWR@loadafter{statistics}
\LWR@loadafter{statmath}
\LWR@loadafter{steinmetz}
\LWR@notltjloadafter{stfloats}
@@ -13174,6 +13245,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{subsupscripts}
\LWR@loadafter{supertabular}
\LWR@loadafter{svg}
+\LWR@loadafter{swfigure}
\LWR@loadafter{syntonly}
\LWR@loadafter{t1inc}
\LWR@loadafter{tabfigures}
@@ -14580,7 +14652,7 @@ This boolean may be tested by the user for later use.
from inside a\MessageBreak
#1 environment.%
}%
- }{}
+ }{\relax}
\csdef{LWR@#1commentused}{}
\message{Including '#1' comment.}%
\def\CommentCutFile{comment_#2.cut}
@@ -15302,7 +15374,7 @@ This boolean may be tested by the user for later use.
% \begin{macrocode}
\begin{warpall}
% \end{macrocode}
-
+%
% Remember the original \cs{RequirePackage}:
% \begin{macrocode}
\LetLtxMacro\LWR@origRequirePackage\RequirePackage
@@ -15370,7 +15442,8 @@ This boolean may be tested by the user for later use.
% \changes{v0.87}{2020/05/14}{Prevented \pkg{csvtools}.}
% \changes{v0.88}{2020/07/07}{Prevented \pkg{shadethm}.}
% \changes{v0.891}{2020/09/16}{Prevented \pkg{libgreek}.}
-%
+% \changes{v0.893}{2020/11/15}{Allowed \pkg{picinpar}.}
+
% The following should never be loaded:
%
% ^^A *checkload *loadnever
@@ -15396,7 +15469,6 @@ This boolean may be tested by the user for later use.
\LWR@checkloadnever{#1}{libgreek}{libertinust1math, newtx}
\LWR@checkloadnever{#1}{newthm}{ntheorem}
\LWR@checkloadnever{#1}{pdfcprot}{microtype}
-\LWR@checkloadnever{#1}{picinpar}{floatflt, wrapfig}
\LWR@checkloadnever{#1}{picins}{floatflt, wrapfig}
\LWR@checkloadnever{#1}{rplain}{fancyhdr}
\LWR@checkloadnever{#1}{si}{siunitx}
@@ -15564,6 +15636,8 @@ This boolean may be tested by the user for later use.
}%
}
\LetLtxMacro\usepackage\RequirePackage
+\@onlypreamble\RequirePackage
+\@onlypreamble\usepackage
% \end{macrocode}
% \end{macro}
@@ -16111,6 +16185,37 @@ This boolean may be tested by the user for later use.
% \end{macro}
%
%
+%
+% \begin{macro}{\LWR@formatted@checkname} \marg{name}
+% \changes{v0.893}{2020/11/15}{Added.}
+% \begin{macrocode}
+\newcommand*{\LWR@formatted@checkname}[1]{%
+ \ifcsundef{LWR@HTML@#1}{%
+ \PackageError{lwarp}
+ {%
+ \protect\LWR@HTML@#1 is not defined%
+ }
+ {Perhaps it is misspelled.}
+ }{\relax}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LWR@formatted@checkendname} \marg{name}
+% \changes{v0.893}{2020/11/15}{Added.}
+% \begin{macrocode}
+\newcommand*{\LWR@formatted@checkendname}[1]{%
+ \ifcsundef{endLWR@HTML@#1}{%
+ \PackageError{lwarp}
+ {%
+ \protect\endLWR@HTML@#1 is not defined%
+ }
+ {Perhaps it is misspelled.}
+ }{\relax}%
+}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\LWR@formatted} \marg{macroname} \qquad No backslash in the macro name.
%
% If not yet defined, defines \cs{LWR@print@<name>} as
@@ -16118,8 +16223,10 @@ This boolean may be tested by the user for later use.
% Also redefines \cs{<name>} to use \cs{LWR@<format>@<name>},
% where <format> is set by \cs{LWR@formatting}, and is |print| or |HTML|.
%
+% \changes{v0.893}{2020/11/15}{Improved error handling.}
% \begin{macrocode}
\newcommand*{\LWR@formatted}[1]{%
+ \LWR@formatted@checkname{#1}%
\ifcsundef{LWR@print@#1}{%
\expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname%
\csname#1\endcsname%
@@ -16143,8 +16250,10 @@ This boolean may be tested by the user for later use.
%
% An expandable version of \cs{LWR@formatted}.
%
+% \changes{v0.893}{2020/11/15}{Improved error handling.}
% \begin{macrocode}
\newcommand*{\LWR@expandableformatted}[1]{%
+ \LWR@formatted@checkname{#1}%
\ifcsundef{LWR@print@#1}{%
\expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname%
\csname#1\endcsname%
@@ -16170,8 +16279,11 @@ This boolean may be tested by the user for later use.
% Also redefines the environment |<name>| to use environment |LWR@<format>@<name>|,
% where <format> is set by \cs{LWR@formatting}, and is |print| or |HTML|.
%
+% \changes{v0.893}{2020/11/15}{Improved error handling.}
% \begin{macrocode}
\newcommand*{\LWR@formattedenv}[1]{%
+ \LWR@formatted@checkname{#1}%
+ \LWR@formatted@checkendname{#1}%
\ifcsundef{LWR@print@#1}{%
\expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname%
\csname#1\endcsname%
@@ -16193,8 +16305,11 @@ This boolean may be tested by the user for later use.
%
% An expandable version of \env{LWR@formattedenv}.
%
+% \changes{v0.893}{2020/11/15}{Improved error handling.}
% \begin{macrocode}
\newcommand*{\LWR@expandableformattedenv}[1]{%
+ \LWR@formatted@checkname{#1}%
+ \LWR@formatted@checkendname{#1}%
\ifcsundef{LWR@print@#1}{%
\expandafter\LetLtxMacro\csname LWR@print@#1\expandafter\endcsname%
\csname#1\endcsname%
@@ -17176,6 +17291,7 @@ This boolean may be tested by the user for later use.
% \changes{v0.84}{2020/04/24}{\filenm{lwarp.css}: Fix: Top nav if narrow window.}
% \changes{v0.88}{2020/07/04}{\filenm{lwarp.css}: Added \pkg{tcolorbox}, \pkg{thmbox}.}
% \changes{v0.88}{2020/07/14}{\filenm{lwarp.css}: Added \optn{indexheading} for \pkg{gindex}.}
+% \changes{v0.893}{2020/10/18}{\filenm{lwarp.css}: Added \pkg{keystroke}.}
%
% ^^A *lwarp.css
%
@@ -17470,7 +17586,7 @@ div.epigraphsource p, div.dictumauthor p { padding: .5ex 0ex 0ex 0ex ; margin: 0
div.dictumauthor { font-style:italic }
-/* copyrightbox package */
+/* copyrightbox package: */
div.copyrightbox { margin: .5ex .5em }
div.copyrightbox p {margin: 0px .5em ; padding: 0px}
div.copyrightboxnote {text-align: left ; font-size: 60%}
@@ -17533,6 +17649,11 @@ span.capsspacing {
span.highlight { background: #F8E800 ; }
+/* keystroke package: */
+span.keystroke {
+ border-style: outset ;
+ padding: 0pt .5em 0pt .5em ;
+}
html body {
@@ -19944,7 +20065,7 @@ MathJax = {
-- Copyright 2016-2020 Brian Dunn
-printversion = "v0.892"
+printversion = "v0.893"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
@@ -22371,15 +22492,20 @@ end -- not --version
%
% \changes{v0.28}{2017/04/13}{Breaks ligatures in \HTML\ comments.}
% \changes{v0.85}{2020/04/29}{Fix: Added print macros for \pkg{fontspec}.}
+% \changes{v0.893}{2020/10/16}{Disabled in math mode.}
% \begin{macrocode}
\newcommand{\LWR@htmlcomment}[1]{%
-\LWR@htmlopencomment{}%
-{%
- \LWR@print@normalfont%
- \LWR@origttfamily% break ligatures
- #1%
-}%
-\LWR@htmlclosecomment{}}
+\ifmmode%
+\else%
+ \LWR@htmlopencomment{}%
+ {%
+ \LWR@print@normalfont%
+ \LWR@origttfamily% break ligatures
+ #1%
+ }%
+ \LWR@htmlclosecomment{}%
+\fi%
+}
% \end{macrocode}
% \end{macro}
%
@@ -24335,7 +24461,7 @@ end -- not --version
%
% Replaces strings inside \cs{tmpb}.
%
-% Modified from the original by \textsc{Petr Olsak}, from the \pkg{opmac} package.
+% Modified from the original, by \textsc{Petr Olsak}, from the \pkg{opmac} package.
%
% \changes{v0.81}{2020/02/24}{Added.}
% \begin{macrocode}
@@ -24361,6 +24487,16 @@ end -- not --version
% \end{macrocode}
% \end{macro}
+% \DescribeBoolean{LWR@MathJax@silentquotes}
+% If true, double quotes (\cs{"} and |"|) are removed (used for \pkg{mathspec}).
+% This unfortunately includes double quotes used inside \cs{text} with \brand{MathJax}.
+% If false, double quotes are escaped.
+% \begin{macrocode}
+\newbool{LWR@MathJax@silentquotes}
+\boolfalse{LWR@MathJax@silentquotes}
+% \end{macrocode}
+
+
% \begin{macro}{\LWR@subHTMLsanitize}
%
@@ -24385,9 +24521,16 @@ end -- not --version
\LWR@replacestrings{>}{&gt;}%
% \end{macrocode}
% The quotes occasionally causes problems.
+% For \pkg{mathspec}, also allow neutralization of \cs{"} and the |"| character.
% \changes{v0.891}{2020/09/09}{Neutralized single quotes.}
+% \changes{v0.893}{2020/11/22}{Optionally neutralized single quotes.}
% \begin{macrocode}
- \LWR@replacestrings{"}{&quot;}%
+ \ifbool{LWR@MathJax@silentquotes}
+ {%
+ \expandafter\LWR@replacestrings\expandafter{\LWRbackslash"}{}%
+ \LWR@replacestrings{"}{}%
+ }%
+ {\LWR@replacestrings{"}{&quot;}}%
\LWR@replacestrings{'}{&apos;}%
\LWR@replacestrings{`}{&grave;}%
% \end{macrocode}
@@ -24578,6 +24721,7 @@ end -- not --version
% \changes{v0.51}{2018/03/18}{\brand{MathJax}: Nullifies \cs{ensuremath}.}
% \changes{v0.57}{2018/05/24}{\brand{MathJax}: Supports \cs{footnote}, \cs{footnotemark}.}
% \changes{v0.79}{2020/01/24}{\brand{MathJax}: Additional macros.}
+% \changes{v0.893}{2020/10/14}{\brand{MathJax}: Added \cs{mathnormal}.}
%
% For footnotes, \cs{footnotename} is used in most cases, however
% for \env{equation} the footnote is picked up from \LaTeX in \cs{LWR@doendequation}.
@@ -24612,6 +24756,7 @@ end -- not --version
% Various other customizations:
% \begin{macrocode}
+\CustomizeMathJax{\newcommand{\mathnormal}[1]{{#1}}}
\CustomizeMathJax{\newcommand\ensuremath[1]{#1}}
\CustomizeMathJax{% absorb two optional arguments
\newcommand{\LWRframebox}[2][]{\fbox{#2}}
@@ -32269,7 +32414,7 @@ end -- not --version
% \begin{macrocode}
\ifbool{LWR@usedmultirow}{%
\ifbool{LWR@foundmrowcell}%
- {}%
+ {\relax}%
{%
\PackageError{lwarp}%
{%
@@ -40984,7 +41129,9 @@ color:\LWR@origpound\LWR@tempcolor%
\@ifpackageloaded{amsmath}{
\RequirePackage{lwarp-amsmath}
}{}
-
+% \end{macrocode}
+%
+%
% \pkg{amsthm} may load \pkg{centernot}, so \pkg{centernot} must be checked second.
% \begin{macrocode}
\@ifpackageloaded{centernot}{
@@ -41324,7 +41471,8 @@ color:\LWR@origpound\LWR@tempcolor%
and showonlyrefs options, the alignat environment,\MessageBreak
and \protect\DeclarePairedDelimiter\space and related%
}
- \LWR@mathjaxwarn{mathspec}{}
+ \LWR@mathjaxwarn{mathspec}
+ {Double quotes are removed, even inside \protect\text}
\LWR@mathjaxwarn{multirow}
{Multirow works as expected in text mode, but\MessageBreak
limited emulation is provided for MathJax math.\MessageBreak
@@ -43036,7 +43184,7 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
which must also be moved before mdframed.%
}
}
-{}
+{\relax}
% \end{macrocode}
%
%
@@ -44078,7 +44226,7 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
so authblk must be loaded first.%
}
}
-{}
+{\relax}
% \end{macrocode}
%
% Load \pkg{authblk}:
@@ -45780,9 +45928,10 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
%
% \DescribePackage{braket}
% \pkg{braket} works as-is for \HTML\ with \SVG\ math.
-% For \brand{MathJax}, emulation is provided by \brand{MathJax} macros.
+% For \brand{MathJax}, the \brand{MathJax} extension is used.
%
% \changes{v0.79}{2020/01/29}{\pkg{braket}: Added.}
+% \changes{v0.893}{2020/10/30}{\pkg{braket}: Now uses \brand{MathJax} extension.}
%
% \codehtml
%
@@ -45792,14 +45941,7 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
%
% \begin{macrocode}
\begin{warpMathJax}
-\CustomizeMathJax{\newcommand{\bra}[1]{\langle#1\vert}}
-\CustomizeMathJax{\newcommand{\Bra}[1]{\left\langle#1\right\vert}}
-\CustomizeMathJax{\newcommand{\ket}[1]{\vert#1\rangle}}
-\CustomizeMathJax{\newcommand{\Ket}[1]{\left\vert#1\right\rangle}}
-\CustomizeMathJax{\newcommand{\braket}[1]{\langle#1\rangle}}
-\CustomizeMathJax{\newcommand{\Braket}[1]{\left\langle#1\right\rangle}}
-\CustomizeMathJax{\newcommand{\set}[1]{\{#1\}}}
-\CustomizeMathJax{\newcommand{\Set}[1]{\left\{#1\right\}}}
+ \CustomizeMathJax{\require{braket}}
\end{warpMathJax}
% \end{macrocode}
%
@@ -46244,6 +46386,7 @@ s%
% \changes{v0.84}{2020/04/16}{\pkg{caption}: Simplified.}
% \changes{v0.84}{2020/04/20}{\pkg{caption}: Non-width \cs{parbox}es.}
% \changes{v0.89}{2020/08/25}{\pkg{caption}: Adapt to v3.5.}
+% \changes{v0.893}{2020/11/26}{\pkg{caption}: Updated date to v3.5g.}
%
% \codehtml
%
@@ -46256,7 +46399,7 @@ s%
\typeout{instead of: \protect\usepackage[options]\protect{caption\protect}.}
\typeout{---}
-\LWR@ProvidesPackagePass{caption}[2020/08/24]
+\LWR@ProvidesPackagePass{caption}[2020/10/26]
% \end{macrocode}
%
% ^^A This could be given a permanent standardized name, then redefined by lwarp.
@@ -46385,11 +46528,12 @@ s%
% \pkg{caption3} is patched for use by \pkg{lwarp}.
%
% \changes{v0.89}{2020/08/25}{\pkg{caption3}: Split from \pkg{lwarp-caption}.}
+% \changes{v0.893}{2020/11/26}{\pkg{caption3}: Updated date to v2.2e.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{caption3}[2020/08/23]
+\LWR@ProvidesPackagePass{caption3}[2020/10/21]
% \end{macrocode}
%
%
@@ -51587,11 +51731,12 @@ name = \chemmacros_translate:n {scheme-name}
%
% \changes{v0.50}{2018/02/21}{\pkg{epstopdf}: Added.}
% \changes{v0.59}{2018/08/27}{\pkg{epstopdf}: Improved.}
+% \changes{v0.893}{2020/11/26}{\pkg{epstopdf}: Updated date to v2.11.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{epstopdf}[2016/05/15]
+\LWR@ProvidesPackagePass{epstopdf}[2020-01-24]
% \end{macrocode}
%
% \iffalse
@@ -51614,11 +51759,12 @@ name = \chemmacros_translate:n {scheme-name}
%
% \changes{v0.51}{2018/03/03}{\pkg{epstopdf-base}: Added.}
% \changes{v0.59}{2018/08/27}{\pkg{epstopdf-base}: Improved.}
+% \changes{v0.893}{2020/11/26}{\pkg{epstopdf-base}: Updated date to v2.11.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{epstopdf-base}[2016/05/15]
+\LWR@ProvidesPackagePass{epstopdf-base}[2020-01-24]
% \end{macrocode}
%
% Redefine to remember the image filename, replacing |.pdf| with |.svg|.
@@ -51924,6 +52070,43 @@ name = \chemmacros_translate:n {scheme-name}
%
%
% \iffalse
+%<*esvect>
+% \fi
+%
+% \part{lwarp-esvect.sty}
+%
+% \section{esvect}
+%
+% \credits{Eddie Saudrais}
+%
+% \DescribePackage{esvect}
+% \pkg{esvect} is used as-is for \SVG\ math,
+% and emulated for \brand{MathJax}.
+%
+% \changes{v0.893}{2020/10/14}{\pkg{esvect}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{esvect}% no date given
+% \end{macrocode}
+%
+% \begin{macrocode}
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\LWResvectvv}[1]{\overrightarrow{#1}}}
+\CustomizeMathJax{\newcommand{\LWResvectvvstar}[2]{\overrightarrow{#1}\!_{#2}}}
+\CustomizeMathJax{\newcommand{\vv}{\ifstar\LWResvectvvstar\LWResvectvv}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</esvect>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*etoc>
% \fi
%
@@ -53471,6 +53654,47 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
%
%
%
+% \iffalse
+%<*fixmath>
+% \fi
+%
+% \part{lwarp-fixmath.sty}
+%
+% \section{fixmath}
+%
+% \credits{Walter Schmidt}
+%
+% \DescribePackage{fixmath}
+% \pkg{fixmath} is used as-is for \SVG\ math, and
+% emulated for \brand{MathJax}.
+%
+% \brand{MathJax} does not have full font support for bold italic Greek.
+% \watchout[limitations]
+%
+% \changes{v0.893}{2020/10/30}{\pkg{fixmath}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{fixmath}[2000/04/11]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-mathjax-letters}
+
+\begin{warpMathJax}
+\LWR@mathjax@addgreek@u@it*{}{}
+\LWR@mathjax@addletter{\BooleanTrue}{up}{}{delta}{0394}
+\LWR@mathjax@addletter{\BooleanTrue}{up}{}{omega}{03A9}
+\CustomizeMathJax{\newcommand{\mathbold}[1]{\boldsymbol{#1}}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</fixmath>
+% \fi
+%
+%
%
% \iffalse
%<*fixme>
@@ -53699,10 +53923,6 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
\LWR@ProvidesPackageDrop{float}[2001/11/08]
% \end{macrocode}
-% \begin{noindmacro}{\listof}
-% See \cref{sec:listof} for the \cs{listof} command.
-% \end{noindmacro}
-
% \begin{macro}{\LWR@floatstyle}
% The default float style:
% \begin{macrocode}
@@ -53790,6 +54010,10 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \end{macrocode}
% \end{noindmacro}
+% \begin{noindmacro}{\listof}
+% See \cref{sec:listof} for the \cs{listof} command in the \pkg{lwarp} core.
+% \end{noindmacro}
+
% \iffalse
%</float>
% \fi
@@ -54690,7 +54914,7 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
\newcommand{\LWR@HTML@swshape}{}
\LWR@formatted{swshape}
- \newcommand{\LWR@HTML@textsw}[1]{#1}
+ \newrobustcmd{\LWR@HTML@textsw}[1]{#1}
\LWR@formatted{textsw}
\FilenameNullify{%
@@ -56223,10 +56447,11 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \changes{v0.40}{2017/09/07}{\pkg{graphics}: Moved out of the \pkg{lwarp} core.}
% \changes{v0.40}{2017/09/07}{\pkg{graphics}: Restores \cs{includegraphics}
% and \cs{DeclareGraphicsExtensions} in a \env{lateximage}.}
+% \changes{v0.893}{2020/11/26}{\pkg{graphics}: Updated date to v1.4c.}
%
% \codehtml
% \begin{macrocode}
-\LWR@ProvidesPackagePass{graphics}[2017/06/25]
+\LWR@ProvidesPackagePass{graphics}[2020/08/30]
% \end{macrocode}
@@ -57093,10 +57318,11 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \pkg{lwarp-graphics} handles the syntax of either \pkg{graphics} or \pkg{graphicx}.
%
% \changes{v0.40}{2017/09/07}{\pkg{graphicx}: Moved out of the \pkg{lwarp} core.}
+% \changes{v0.893}{2020/11/26}{\pkg{graphicx}: Updated date to v1.2b.}
%
% \codehtml
% \begin{macrocode}
-\LWR@ProvidesPackagePass{graphicx}[2017/06/01]
+\LWR@ProvidesPackagePass{graphicx}[2020/09/09]
% \end{macrocode}
% \iffalse
@@ -59293,7 +59519,7 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
Existing templates have the following dimensions: 2x2x1, 2x4x1, 4x2x1, 4x4x1, 4x4x2, and 4x4x4.
}%
% \fi original
- }{}% lwarp
+ }{\relax}% lwarp
\begin{tikzpicture}
% grid
% for all dimensions
@@ -59377,7 +59603,7 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
% \begin{macrocode}
\LWR@ProvidesPackagePass{keyfloat}[2019/09/23]
-\@ifpackagelater{keyfloat}{2019/09/23}{}{
+\@ifpackagelater{keyfloat}{2019/09/23}{\relax}{
\PackageError{lwarp-keyfloat}
{%
The keyfloat package is out of date.\MessageBreak
@@ -59697,6 +59923,88 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
%
%
%
+%
+% \iffalse
+%<*keystroke>
+% \fi
+%
+% \part{lwarp-keystroke.sty}
+%
+% \section{keystroke}
+%
+% \credits{Werner Fink}
+%
+% \DescribePackage{keystroke}
+% \pkg{keystroke} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.893}{2020/10/18}{\pkg{keystroke}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{keystroke}[2010/04/23]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand*{\LWR@HTML@keystroke}[1]{
+ \InlineClass{keystroke}{#1}
+}
+\LWR@formatted{keystroke}
+
+
+\newcommand*{\LWR@HTML@Return}{\keystroke{\HTMLunicode{021A9}}}
+\LWR@formatted{Return}
+
+\newcommand*{\LWR@HTML@BSpace}{\keystroke{\HTMLunicode{027FB}}}
+\LWR@formatted{BSpace}
+
+\newcommand*{\LWR@HTML@Tab}{\keystroke{|\HTMLunicode{021C6}|}}
+\LWR@formatted{Tab}
+
+\newcommand*{\LWR@HTML@UArrow}{\keystroke{\HTMLunicode{02191}}}
+\LWR@formatted{UArrow}
+
+\newcommand*{\LWR@HTML@DArrow}{\keystroke{\HTMLunicode{02193}}}
+\LWR@formatted{DArrow}
+
+\newcommand*{\LWR@HTML@LArrow}{\keystroke{\HTMLunicode{02190}}}
+\LWR@formatted{LArrow}
+
+\newcommand*{\LWR@HTML@RArrow}{\keystroke{\HTMLunicode{02192}}}
+\LWR@formatted{RArrow}
+
+% Preserves the language options:
+\LetLtxMacro\LWR@HTML@Shift\Shift
+\xpatchcmd{\LWR@HTML@Shift}
+ {$\Uparrow$}
+ {\HTMLunicode{21D1}}
+ {}
+ {}
+\LWR@formatted{Shift}
+
+\LetLtxMacro\LWR@HTML@PgUp\PgUp
+\xpatchcmd{\LWR@HTML@PgUp}
+ {$\uparrow$}
+ {\HTMLunicode{2191}}
+ {}
+ {}
+\LWR@formatted{PgUp}
+
+\LetLtxMacro\LWR@HTML@PgDown\PgDown
+\xpatchcmd{\LWR@HTML@PgDown}
+ {$\downarrow$}
+ {\HTMLunicode{2193}}
+ {}
+ {}
+\LWR@formatted{PgDown}
+% \end{macrocode}
+%
+% \iffalse
+%</keystroke>
+% \fi
+%
+%
+%
% \iffalse
%<*kpfonts>
% \fi
@@ -62666,6 +62974,82 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
%
%
% \iffalse
+%<*mathastext>
+% \fi
+%
+% \part{lwarp-mathastext.sty}
+%
+% \section{mathastext}
+%
+% \credits{Jean-Fran\c{c}ois Burnol}
+%
+% \DescribePackage{mathastext}
+% \pkg{mathastext} is used as-is for \SVG\ math,
+% and emulated for \brand{MathJax}.
+%
+% \changes{v0.893}{2020/10/14}{\pkg{mathastext}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{mathastext}[2019/11/16]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-mathjax-letters}
+
+\begin{warpMathJax}
+\ifmst@itgreek
+% \LWR@mathjax@addgreek@l@it{}{}
+\else
+ \ifmst@upgreek
+ \LWR@mathjax@addgreek@l@up{}{}
+ \else
+ \ifmst@frenchmath
+ \LWR@mathjax@addgreek@l@up{}{}
+ \else
+ \ifmst@italic
+% \LWR@mathjax@addgreek@l@it{}{}
+ \else
+ \LWR@mathjax@addgreek@l@up{}{}
+ \fi
+ \fi
+ \fi
+\fi
+
+\ifcase\mst@greek@select
+ \or{\LWR@mathjax@addgreek@u@it*{}{}}
+% \or{\LWR@mathjax@addgreek@u@up*{}{}}
+\fi
+
+\CustomizeMathJax{\newcommand{\mathnormalbold}[1]{\boldsymbol{#1}}}
+\CustomizeMathJax{\newcommand{\MathEulerBold}[1]{\boldsymbol{#1}}}
+\CustomizeMathJax{\newcommand{\MathEuler}[1]{{#1}}}
+\CustomizeMathJax{\newcommand{\MathPSymbol}[1]{{#1}}}
+\CustomizeMathJax{\let\fouriervec\vec}
+\CustomizeMathJax{\let\pmvec\vec}
+\CustomizeMathJax{\let\inodot\imath}
+\CustomizeMathJax{\let\jnodot\jmath}
+\CustomizeMathJax{\let\shortiff\iff}
+\CustomizeMathJax{\let\longto\longrightarrow}
+\CustomizeMathJax{\newcommand{\inftypsy}{\mathord{\unicode{x221E}}}}
+\CustomizeMathJax{\newcommand{\proptopsy}{\mathrel{\unicode{x221D}}}}
+\CustomizeMathJax{\let\prodpsy\prod}
+\CustomizeMathJax{\let\sumpsy\sum}
+\CustomizeMathJax{\let\MToriginalprod\prod}
+\CustomizeMathJax{\let\MToriginalsum\sum}
+\CustomizeMathJax{\newcommand{\DotTriangle}{\mathord{\unicode{x2234}}}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</mathastext>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*mathcomp>
% \fi
%
@@ -63019,6 +63403,132 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
%
%
%
+%
+% \iffalse
+%<*mathspec>
+% \fi
+%
+% \part{lwarp-mathspec.sty}
+%
+% \section{mathspec}
+%
+% \credits{Andrew Gilbert Moschou}
+%
+% \DescribePackage{mathspec}
+% \pkg{mathspec} is used as-is with \SVG\ math,
+% and is emulated for \brand{MathJax}.
+%
+% Double quotes (\cs{"} and the |"| character)
+% \trouble[quotes]{mathspec=\pkg{mathspec}}
+% are removed during \brand{MathJax} emulation,
+% but this also includes inside \cs{text}.
+%
+% \changes{v0.893}{2020/11/22}{\pkg{mathspec}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{mathspec}[2016/12/22]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-mathjax-letters}
+
+\begin{warpMathJax}
+% \end{macrocode}
+%
+% Neutralize double quotes (|"| and \cs{"}):
+% \begin{macrocode}
+\booltrue{LWR@MathJax@silentquotes}
+% \end{macrocode}
+%
+% Sort options for out Greek emulation:
+% \begin{macrocode}
+\AtBeginDocument{
+\ifcase\eu@GreekUppercase@@value %% If Greek Uppercase Regular
+ \LWR@mathjax@addgreek@u@up*{}{}
+\or %% If Greek Uppercase Italic
+ \LWR@mathjax@addgreek@u@it*{}{}
+\or %% If Greek Uppercase Plain
+ \LWR@mathjax@addgreek@u@up*{}{}
+\fi
+\ifcase\eu@GreekLowercase@@value %% If Greek Lowercase Regular
+ \LWR@mathjax@addgreek@l@up{}{}
+\or %% If Greek Lowercase Italic
+ \LWR@mathjax@addgreek@l@it{}{}
+\or %% If Greek Lowercase Plain
+ \LWR@mathjax@addgreek@l@it{}{}
+\fi
+}
+% \end{macrocode}
+%
+% Swap definitions according the \pkg{mathspec} conditionals:
+% \begin{macrocode}
+\newcommand*{\LWR@mathspec@varforms}{%
+\eu@ifbooltrue{GreekLowercase}{
+ \eu@ifbooltrue{exchangebetaforms}{
+ \CustomizeMathJax{\let\LWRorigbeta\beta}
+ \CustomizeMathJax{\let\beta\varbeta}
+ \CustomizeMathJax{\let\varbeta\LWRorigbeta}
+ }
+ \eu@ifbooltrue{exchangeepsilonforms}{
+ \CustomizeMathJax{\let\LWRorigepsilon\epsilon}
+ \CustomizeMathJax{\let\epsilon\varepsilon}
+ \CustomizeMathJax{\let\varepsilon\LWRorigepsilon}
+ }
+ \eu@ifbooltrue{exchangethetaforms}{
+ \CustomizeMathJax{\let\LWRorigtheta\theta}
+ \CustomizeMathJax{\let\theta\vartheta}
+ \CustomizeMathJax{\let\vartheta\LWRorigtheta}
+ }
+ \eu@ifbooltrue{exchangekappaforms}{
+ \CustomizeMathJax{\let\LWRorigkappa\kappa}
+ \CustomizeMathJax{\let\kappa\varkappa}
+ \CustomizeMathJax{\let\varkappa\LWRorigkappa}
+ }
+ \eu@ifbooltrue{exchangepiforms}{
+ \CustomizeMathJax{\let\LWRorigpi\pi}
+ \CustomizeMathJax{\let\pi\varpi}
+ \CustomizeMathJax{\let\varpi\LWRorigpi}
+ }
+ \eu@ifbooltrue{exchangerhoforms}{
+ \CustomizeMathJax{\let\LWRorigrho\rho}
+ \CustomizeMathJax{\let\rho\varrho}
+ \CustomizeMathJax{\let\varrho\LWRorigrho}
+ }
+ \eu@ifbooltrue{exchangephiforms}{
+ \CustomizeMathJax{\let\LWRorigphi\phi}
+ \CustomizeMathJax{\let\phi\varphi}
+ \CustomizeMathJax{\let\varphi\LWRorigphi}
+ }
+}
+\eu@ifbooltrue{GreekUppercase}{
+ \eu@ifbooltrue{exhangeThetaforms}{
+ \CustomizeMathJax{\let\LWRorigTheta\Theta}
+ \CustomizeMathJax{\let\Theta\varTheta}
+ \CustomizeMathJax{\let\varTheta\LWRorigTheta}
+ }
+}
+}
+% \end{macrocode}
+%
+% Append new action to \pkg{mathspec}'s \cs{AtBeginDocument} code:
+% \begin{macrocode}
+\xapptocmd{\exchangeforms}
+ {\AtBeginDocument{\LWR@mathspec@varforms}}
+ {}
+ {\LWR@patcherror{mathspec}{exchangeforms}}
+
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</mathspec>
+% \fi
+%
+%
+%
+%
% \iffalse
%<*mathtools>
% \fi
@@ -64169,6 +64679,62 @@ background:
%
%
%
+% \iffalse
+%<*menukeys>
+% \fi
+%
+% \part{lwarp-menukeys.sty}
+%
+% \section{menukeys}
+%
+% \credits{Tobias Weh}
+%
+% \DescribePackage{menukeys}
+% \pkg{menukeys} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.893}{2020/11/07}{\pkg{menukeys}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{menukeys}[2020/10/31]
+% \end{macrocode}
+%
+% Patch to use a \env{lateximage} whose \attribute{alt} text
+% is the contents of this use of the macro.
+% A hash on these contents allows the reuse of the image for
+% each instance of the same contents.
+% \begin{macrocode}
+\xpatchcmd{\tw@define@menu@macro}
+ {\@nameuse{tw@style@#4@pre}}
+ {%
+ \begin{lateximage}*[\detokenize{##2}]%
+ \@nameuse{tw@style@#4@pre}%
+ }
+ {}
+ {\LWR@patcherror{menukeys}{tw@define@menu@macro}}
+
+\xpatchcmd{\tw@define@menu@macro}
+ {\@nameuse{tw@style@#4@post}}
+ {%
+ \@nameuse{tw@style@#4@post}%
+ \end{lateximage}%
+ }
+ {}
+ {\LWR@patcherror{menukeys}{tw@define@menu@macro B}}
+% \end{macrocode}
+%
+% Patch the existing macros:
+% \begin{macrocode}
+\renewmenumacro{\menu}[>]{menus}
+\renewmenumacro{\directory}[/]{paths}
+\renewmenumacro{\keys}[+]{roundedkeys}
+% \end{macrocode}
+%
+% \iffalse
+%</menukeys>
+% \fi
+%
%
%
% \iffalse
@@ -66862,9 +67428,13 @@ do not attempt to patch lwarp's version of `nameref'.)\MessageBreak
\newrobustcmd{\LWR@HTML@textsu}[1]{#1}
% \newrobustcmd{\LWR@HTML@textsi}[1]{#1}
\newrobustcmd{\LWR@HTML@textdf}[1]{#1}
-
-\ifdef{\LWR@HTML@swshape}{}{% duplicated by fontaxes
+% \end{macrocode}
+%
+% \changes{v0.883}{2020/11/16}{\pkg{nfssext-cfr}: Fixed \cs{textsw}.}
+% \begin{macrocode}
+\ifdef{\LWR@HTML@textsw}{}{% duplicated by fontaxes
\newrobustcmd{\LWR@HTML@textsw}[1]{#1}
+ \LWR@formatted{textsw}
}
\newrobustcmd{\LWR@HTML@textti}[1]{#1}
@@ -66916,7 +67486,6 @@ do not attempt to patch lwarp's version of `nameref'.)\MessageBreak
\LWR@formatted{textsu}
% \LWR@formatted{textsi}
\LWR@formatted{textdf}
-\LWR@formatted{textsw}
\LWR@formatted{textti}
\LWR@formatted{textlt}
\LWR@formatted{textof}
@@ -69877,6 +70446,118 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
% \iffalse
+%<*picinpar>
+% \fi
+%
+% \part{lwarp-picinpar.sty}
+%
+% \section{picinpar}
+%
+% \credits{Friedhelm Sowa}
+%
+% \DescribePackage{picinpar}
+% \pkg{picinpar} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.893}{2020/11/15}{\pkg{picinpar}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{picinpar}% No date is assigned.
+% \end{macrocode}
+%
+% The \env{window} is floated by a \env{BlockClass} style.
+% \begin{macrocode}
+\long\def\LWR@HTML@window[#1,#2,#3,#4] {%
+ \if #2r%
+ \begin{BlockClass}[float:right]{marginblock}%
+ \else%
+ \begin{BlockClass}[float:left]{marginblock}%
+ \fi%
+ #3\par%
+ #4%
+ \end{BlockClass}%
+}
+
+\def\endLWR@HTML@window{}
+
+\LWR@formattedenv{window}
+% \end{macrocode}
+%
+% The \env{framepic} and \env{wframepic} are placed inside a \env{BlockClass}
+% of class \attribute{framebox}.
+% \begin{macrocode}
+\def\LWR@HTML@framepic#1{%
+ \begin{BlockClass}{framebox}
+ \expandafter\box\csname #1box\endcsname%
+ \end{BlockClass}
+}
+\LWR@formatted{framepic}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\LWR@HTML@wframepic#1{%
+ \begin{BlockClass}{framebox}
+ \expandafter\box\csname #1box\endcsname%
+ \end{BlockClass}
+}
+\LWR@formatted{wframepic}
+% \end{macrocode}
+%
+% The caption is placed inside a \env{BlockClass} of class \attribute{figurecaption}.
+% \begin{macrocode}
+\long\def\LWR@HTML@@makewincaption#1#2{%
+\begin{BlockClass}{figurecaption}
+#1: #2
+\end{BlockClass}
+}
+\LWR@formatted{@makewincaption}
+% \end{macrocode}
+%
+% With \HTML\ output, \env{figwindow} and \env{tabwindow} must not pre-decrement
+% their counters.
+% \begin{macrocode}
+\long\def\LWR@HTML@figwindow[#1,#2,#3,#4] {%
+% \advance\c@figure -1
+ \window[#1,#2,{#3},{\def\@captype{figure}%
+ \wincaption#4\par}] }
+
+\def\endLWR@HTML@figwindow{\endwindow}
+
+\LWR@formattedenv{figwindow}
+% \end{macrocode}
+%
+% For \env{tabwindow}, to change the catcode of |&|,
+% \cs{StartDefiningTabulars} is used before
+% absorbing the arguments, and \cs{EndDefiningTabulars} is used
+% at the end of the environment.
+% \begin{macrocode}
+\long\def\LWR@HTML@subtabwindow[#1,#2,#3,#4] {%
+% \advance\c@table -1
+ \window[#1,#2,{#3},{\def\@captype{table}%
+ \wincaption#4\par}] }
+
+\newcommand*{\LWR@HTML@tabwindow}{%
+ \StartDefiningTabulars%
+ \LWR@HTML@subtabwindow%
+}
+
+\def\endLWR@HTML@tabwindow{%
+ \endwindow%
+ \StopDefiningTabulars%
+}
+
+\LWR@formattedenv{tabwindow}
+% \end{macrocode}
+%
+% \iffalse
+%</picinpar>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*pifont>
% \fi
%
@@ -70119,6 +70800,50 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*plimsoll>
+% \fi
+%
+% \part{lwarp-plimsoll.sty}
+%
+% \section{plimsoll}
+%
+% \credits{Palle Jørgensen}
+%
+% \DescribePackage{plimsoll}
+% \pkg{plimsoll} is used as-is for \SVG\ math, and
+% emulated for \brand{MathJax}.
+%
+% The \optn{circ} option is honored.
+% For \brand{MathJax}, \cs{plimsollsans} is the same as \cs{plimsollroman}.
+%
+% \changes{v0.893}{2020/10/12}{\pkg{plimsoll}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{plimsoll}[2020/10/09]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\plimsollroman}{\unicode{x029B5}}}
+
+\CustomizeMathJax{\let\plimsoll\plimsollroman}
+\CustomizeMathJax{\let\plimsollsans\plimsoll}
+
+\ifdefstring{\stst}{^{\circ}}
+ {\CustomizeMathJax{\newcommand{\stst}{^{\circ}}}}
+ {\CustomizeMathJax{\newcommand{\stst}{^{\plimsoll}}}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</plimsoll>
+% \fi
+%
+%
+%
%
%
% \iffalse
@@ -70408,6 +71133,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \limitspstricks
%
% \changes{v0.59}{2018/09/05}{\pkg{pstricks}: Added.}
+% \changes{v0.893}{2020/10/28}{\pkg{pstricks}: Fixed \env{pspicture*}.}
%
% \codehtml
%
@@ -70420,6 +71146,11 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\begin{lateximage}[pspicture]%
}
\AfterEndEnvironment{pspicture}{\end{lateximage}}
+
+\BeforeBeginEnvironment{pspicture*}{%
+ \begin{lateximage}[pspicture]%
+}
+\AfterEndEnvironment{pspicture*}{\end{lateximage}}
% \end{macrocode}
%
% \iffalse
@@ -71223,6 +71954,42 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*repltext>
+% \fi
+%
+% \part{lwarp-repltext.sty}
+%
+% \section{repltext}
+%
+% \DescribePackage{repltext}
+% \pkg{repltext} is ignored.
+%
+% \changes{v0.893}{2020/10/16}{\pkg{repltext}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{repltext}[2020/09/25]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand{\repltext}[2]{#2}
+\newcommand*{\prevrepl}{}
+% \end{macrocode}
+%
+% For \brand{MathJax}:
+% \begin{macrocode}
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\repltext}[2]{#2}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</repltext>
+% \fi
+%
+%
%
% \iffalse
%<*resizegather>
@@ -71706,11 +72473,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \pkg{schemata} is patched for use by \pkg{lwarp}.
%
% \changes{v0.50}{2018/02/23}{\pkg{schemata}: Added.}
+% \changes{v0.893}{2020/11/26}{\pkg{schemata}: Added \element{alt} text.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{schemata}[2016/01/25]
+\LWR@ProvidesPackagePass{schemata}[2020/11/23]
% \end{macrocode}
% \begin{macrocode}
@@ -71718,17 +72486,17 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\LetLtxMacro\LWR@schemata@origSchema\Schema
\renewcommand{\schema}[3][open]{%
-\begin{lateximage}%
-\LWR@print@normalsize
-\LWR@schemata@origschema[#1]{#2}{#3}%
-\end{lateximage}%
+ \begin{lateximage}[-schemata-~\PackageDiagramAltText]%
+ \LWR@print@normalsize%
+ \LWR@schemata@origschema[#1]{#2}{#3}%
+ \end{lateximage}%
}
\renewcommand{\Schema}[5][open]{%
-\begin{lateximage}%
-\LWR@print@normalsize
-\LWR@schemata@origSchema[#1]{#2}{#3}{#4}{#5}%
-\end{lateximage}%
+ \begin{lateximage}[-schemata-~\PackageDiagramAltText]%
+ \LWR@print@normalsize%
+ \LWR@schemata@origSchema[#1]{#2}{#3}{#4}{#5}%
+ \end{lateximage}%
}
% \end{macrocode}
@@ -72461,6 +73229,35 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*selectp>
+% \fi
+%
+% \part{lwarp-selectp.sty}
+%
+% \section{selectp}
+%
+% \DescribePackage{selectp}
+% \pkg{selectp} is ignored.
+%
+% \changes{v0.893}{2020/10/16}{\pkg{selectp}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{selectp}% no date given
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand*{\outputonly}[1]{}
+% \end{macrocode}
+%
+% \iffalse
+%</selectp>
+% \fi
+%
+%
+%
%
% \iffalse
%<*semantic-markup>
@@ -72540,6 +73337,79 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
% \iffalse
+%<*seqsplit>
+% \fi
+%
+% \part{lwarp-seqsplit.sty}
+%
+% \section{seqsplit}
+%
+% \credits{Boris Veytsman}
+%
+% \DescribePackage{seqsplit}
+% \pkg{seqsplit} is patched for use by \pkg{lwarp}.
+%
+% For \HTML\ output, the results are similar to print mode, and
+% respond to window size.
+%
+% For \SVG\ math, the
+% \trouble[\SVG\ math results]{seqsplit=\pkg{seqsplit}}
+% output differs from print mode in that the contents
+% are formatted in a minipage, which is then inline with the surrounding math.
+%
+% For \brand{MathJax}, the contents are used as-is.
+%
+% \changes{v0.893}{2020/10/16}{\pkg{seqsplit}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{seqsplit}[2006/08/07]
+% \end{macrocode}
+%
+% Special handling because \pkg{lwarp} uses a box for \SVG\ math,
+% which does not normally allow line breaks, so
+% a print-mode \env{minipage} must be used to allow line breaks.
+% The \env{minipage} will not be wrapped inline with any surrounding math.
+% \begin{macrocode}
+\begin{warpHTML}
+\LetLtxMacro\LWR@orig@seqsplit\seqsplit
+
+\renewcommand*{\seqsplit}[1]{%
+ \ifmmode%
+ \begin{LWR@print@minipage}{6in}%
+ \LWR@orig@seqsplit{#1}%
+ \end{LWR@print@minipage}%
+ \else%
+ \InlineClass[word-wrap:break-word]{seqsplit}{\LWR@orig@seqsplit{#1}}%
+ \fi
+}
+% \end{macrocode}
+%
+% Between characters, an empty \HTML\ comment is placed to allow a
+% line wrap in the \HTML\ source, without adding spaces in the output.
+% \begin{macrocode}
+\AtBeginDocument{
+ \newcommand*{\LWR@HTML@seqinsert}{%
+ \LWR@htmlcomment{ }%
+ }
+ \LWR@formatted{seqinsert}
+}
+\end{warpHTML}
+
+\begin{warpMathJax}
+\CustomizeMathJax{\newcommand{\seqsplit}[1]{#1}}
+\end{warpMathJax}
+% \end{macrocode}
+%
+% \iffalse
+%</seqsplit>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*setspace>
% \fi
@@ -72892,7 +73762,9 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \begin{macrocode}
\begin{warpMathJax}
\CustomizeMathJax{\newcommand{\shuffle}{\mathbin{\unicode{0x29E2}}}}
-\CustomizeMathJax{\newcommand{\cshuffle}{\mathbin{\LWRoverlaysymbols{\raise{.6ex}{-}}{\unicode{0x29E2}}}}}
+\CustomizeMathJax{\newcommand{\cshuffle}{%
+ \mathbin{\LWRoverlaysymbols{\raise{.6ex}{-}}{\unicode{0x29E2}}}%
+}}
\end{warpMathJax}
% \end{macrocode}
%
@@ -73086,6 +73958,86 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*simplebnf>
+% \fi
+%
+% \part{lwarp-simplebnf.sty}
+%
+% \section{simplebnf}
+%
+% \credits{Jay Lee}
+%
+% \DescribePackage{simplebnf}
+% \pkg{simplebnf} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.893}{2020/10/29}{\pkg{simplebnf}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{simplebnf}[2020/09/01]
+% \end{macrocode}
+%
+% The entire object is placed inside a \env{lateximage} whose
+% \attribute{alt} text is the \LaTeX\ source \acro{BNF} expression.
+% \begin{macrocode}
+\ExplSyntaxOn
+
+\RenewDocumentEnvironment { bnfgrammar } { +b }
+ {
+ %% \l__input_seq is a list of term definitions.
+ \regex_split:nnN { ;; } { #1 } \l__input_seq
+ \begin{center}
+ \begin{lateximage}[#1]% lwarp
+ \tl_set:Nn \l__table_tl
+ {
+ \begin{tabular}{lcll}
+ }
+ \bool_set_true:N \l_tmp_first_term % Is this the first term in this grammar?
+ \seq_map_inline:Nn \l__input_seq
+ {
+ %% \l__term_seq - (term, rhses)...
+ %% \l__term_tl - term
+ %% \l__keypairs_tl - rhses
+ \regex_split:nnN { ::= } { ##1 } \l__term_seq
+ \seq_pop_left:NN \l__term_seq \l__term_tl
+ \seq_pop_left:NN \l__term_seq \l__keypairs_tl
+
+ \regex_replace_once:nnN { ^\s+ } {} \l__term_tl
+
+ \bool_if:NTF \l_tmp_first_term
+ {
+ \bool_set_false:N \l_tmp_first_term
+ }
+ {
+ \tl_put_right:Nn \l__table_tl { \\ }
+ }
+ \tl_put_right:Nx \l__table_tl
+ {
+ \bnfexpr { \l__term_tl } & \g__simplebnf_defeq_tl &
+ }
+ %% \l__keypairs_seq - (rhs:annot | rhs)...
+ \seq_set_split:NnV \l__keypairs_seq { | } \l__keypairs_tl
+
+ \bool_set_true:N \l__first_rhs
+ \seq_map_function:NN \l__keypairs_seq \simplebnf_typeset_rhs:n
+ }
+
+ \tl_put_right:Nn \l__table_tl { \end{tabular} }
+ \tl_use:N \l__table_tl
+ \end{lateximage}% lwarp
+ \end{center}
+ }
+ { }
+
+\ExplSyntaxOff
+% \end{macrocode}
+%
+% \iffalse
+%</simplebnf>
+% \fi
+%
%
%
% \iffalse
@@ -75100,6 +76052,386 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
% \iffalse
+%<*statistics>
+% \fi
+%
+% \part{lwarp-statistics.sty}
+%
+% \section{statistics}
+%
+% \credits{Julien Rivaud}
+%
+% \DescribePackage{statistics}
+% \pkg{statistics} is patched for use by \pkg{lwarp}.
+%
+% The \pkg{statistics} documentation examples include the use of the \cs{color} macro.
+% \trouble[\cs{color}]{statistics=\pkg{statistics}}
+% Use \cs{textcolor} instead.
+%
+% The \pkg{statistics} package uses math \env{array}s, but the
+% \watchout[math]
+% \HTML\ version uses text \env{tabular}s to allow text copy/paste.
+% If math is required, use \cs{ensuremath} or \cs{(} and \cs{)} as needed.
+%
+% Pre/postline is ignored, and \cs{hline} is used instead.
+% Each table will have an \cs{hline} above and below as a frame.
+%
+% \changes{v0.893}{2020/11/11}{\pkg{statistics}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{statistics}[2019/09/29]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\ExplSyntaxOn
+% \end{macrocode}
+%
+% ^^A % For lateximage output using math array instead of text tabular:
+% ^^A % \RenewDocumentCommand \StatsTable { +O{} +m +O{} } {
+% ^^A % \begin{lateximage}[StatsTable]
+% ^^A % \group_begin:
+% ^^A % \cs_if_exist:NF \firsthline {
+% ^^A % \cs_set_eq:NN \firsthline \hline
+% ^^A % }
+% ^^A % \cs_if_exist:NF \lasthline {
+% ^^A % \cs_set_eq:NN \lasthline \hline
+% ^^A % }
+% ^^A % \cs_if_exist:NF \IN {
+% ^^A % \cs_set_eq:NN \IN \__statistics_IN:w
+% ^^A % }
+% ^^A % \__statistics_setup:nn { table } { #1, #3 }
+% ^^A % \tl_if_single:nTF { #2 } {
+% ^^A % \cs_if_exist:NF #2 { #2 }
+% ^^A % \tl_set_eq:NN \l__statistics_data_tl #2
+% ^^A % }{
+% ^^A % \tl_set:Nn \l__statistics_data_tl { #2 }
+% ^^A % }
+% ^^A % \cs_set_nopar:Npn \getvalue {
+% ^^A % \seq_item:Nn \l__statistics_store_values_seq
+% ^^A % }
+% ^^A % \cs_set_nopar:Npn \getcount {
+% ^^A % \seq_item:Nn \l__statistics_store_count_seq
+% ^^A % }
+% ^^A % \fp_zero:N \l__statistics_total_fp
+% ^^A % \keyval_parse:NNV
+% ^^A % \__statistics_table_count:n
+% ^^A % \__statistics_table_count:nn
+% ^^A % \l__statistics_data_tl
+% ^^A % \__statistics_table_start:
+% ^^A % \fp_zero:N \l__statistics_table_prevICF_fp
+% ^^A % \keyval_parse:NNV
+% ^^A % \__statistics_table_make:n
+% ^^A % \__statistics_table_make:nn
+% ^^A % \l__statistics_data_tl
+% ^^A % \__statistics_table_end:
+% ^^A % \group_end:
+% ^^A % \end{lateximage}
+% ^^A % }
+%
+%
+% To use text \env{tabular} instead of math \env{array}.
+% This allows text copy/paste of the results.
+%
+%
+% In the following, all changes for the Lwarp package are labelled "lwarp".
+%
+% Redefined using the lwarp version of |&|:
+% \begin{macrocode}
+\StartDefiningTabulars% lwarp
+\cs_set_protected_nopar:Nn \__statistics_table_make:nn {
+ \int_compare:nT
+ { 0 < \l__statistics_table_maxcols_int
+ = \l__statistics_nbvals_int } {
+ \__statistics_table_end:
+ \tl_use:N \l__statistics_table_sep_tl
+ \__statistics_table_start:
+ }
+ \int_incr:N \l__statistics_nbvals_int
+ \int_incr:N \l__statistics_currange_int
+ \fp_add:Nn \l__statistics_curtotal_fp { #2 }
+ \__statistics_set_if_shown:N \l_tmpa_bool
+ \tl_set:Nx \l_tmpa_tl {
+ \exp_not:n { & \tl_set:Nn \currentcolumn } {
+ \int_use:N \l__statistics_currange_int
+ }
+ }
+ \bool_if:NTF \l_tmpa_bool {
+ \tl_put_right:Nn \l_tmpa_tl
+ {\__statistics_table_shown_format:n}
+ }{
+ \tl_put_right:Nn \l_tmpa_tl
+ {\__statistics_table_hidden_format:n}
+ }
+ \seq_put_right:Nn \l__statistics_store_values_seq { #1 }
+ \bool_if:NT \l__statistics_table_values_bool {
+ \tl_put_right:Nx \l__statistics_table_values_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n {
+ \__statistics_table_values_format:n { #1 }
+ }
+ }
+ }
+ }
+ \seq_put_right:Nx \l__statistics_store_counts_seq { \fp_eval:n {#2} }
+ \bool_if:NT \l__statistics_table_counts_bool {
+ \tl_put_right:Nx \l__statistics_table_counts_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n {
+ \__statistics_table_counts_format:n {
+ { \__statistics_table_allcounts_format:n { #2 } }
+ }
+ }
+ }
+ }
+ }
+ \bool_if:NT \l__statistics_table_icc_bool {
+ \tl_put_right:Nx \l__statistics_table_icc_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n { \__statistics_table_icc_format:n }
+ {
+ \exp_not:n{ \__statistics_table_allcounts_format:n }
+ { \fp_use:N \l__statistics_curtotal_fp }
+ }
+ }
+ }
+ }
+ \bool_if:NT \l__statistics_table_dcc_bool {
+ \tl_put_right:Nx \l__statistics_table_dcc_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n { \__statistics_table_dcc_format:n }
+ {
+ \exp_not:n{ \__statistics_table_allcounts_format:n }
+ {
+ \fp_eval:n {
+ \l__statistics_total_fp
+ - \l__statistics_curtotal_fp
+ + #2
+ }
+ }
+ }
+ }
+ }
+ }
+ \fp_set:Nn \l__statistics_table_curICF_fp {
+ round(\l__statistics_curtotal_fp
+ / \l__statistics_total_fp,
+ \l__statistics_table_round_int)
+ }
+ \bool_if:NT \l__statistics_table_frequencies_bool {
+ \tl_put_right:Nx \l__statistics_table_frequencies_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n { \__statistics_table_frequencies_format:n }
+ {
+ \exp_not:n{ \__statistics_table_allfreqs_format:n }
+ {
+ \fp_eval:n {
+ \l__statistics_table_curICF_fp
+ - \l__statistics_table_prevICF_fp
+ }
+ }
+ }
+ }
+ }
+ }
+ \bool_if:NT \l__statistics_table_icf_bool {
+ \tl_put_right:Nx \l__statistics_table_icf_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n { \__statistics_table_icf_format:n }
+ {
+ \exp_not:n{ \__statistics_table_allfreqs_format:n }
+ { \fp_to_decimal:N \l__statistics_table_curICF_fp }
+ }
+ }
+ }
+ }
+ \bool_if:NT \l__statistics_table_dcf_bool {
+ \tl_put_right:Nx \l__statistics_table_dcf_tl {
+ \exp_not:V \l_tmpa_tl {
+ \exp_not:n { \__statistics_table_dcf_format:n }
+ {
+ \exp_not:n{ \__statistics_table_allfreqs_format:n }
+ {
+ \fp_eval:n {
+ 1 - \l__statistics_table_prevICF_fp
+ }
+ }
+ }
+ }
+ }
+ }
+ \fp_set_eq:NN
+ \l__statistics_table_prevICF_fp
+ \l__statistics_table_curICF_fp
+}
+\StopDefiningTabulars% lwarp
+% \end{macrocode}
+
+
+% Redefined using \env{tabular}.
+% Also, preline and postline do not work correctly with \pkg{lwarp},
+% which looks for certain tokens to detect \cs{hline}s, so \cs{hline}
+% is used instead.
+% \begin{macrocode}
+\cs_set_protected_nopar:Nn \__statistics_table_end: {
+ \tl_set:Nx \l__statistics_table_preamble_tl {
+% \exp_not:n { \begin{array}[ }
+ \exp_not:n {\begin{tabular}[ }% lwarp
+ \exp_not:V \l__statistics_table_valign_tl
+ \exp_not:n { ] }
+ { \exp_not:V \l__statistics_table_headcoltype_tl
+ \prg_replicate:nn { \l__statistics_nbvals_int }
+ { \exp_not:V \l__statistics_table_coltype_tl } }
+ }
+ \seq_clear:N \l__statistics_table_contents_seq
+ \clist_map_inline:nn { values, counts, icc, dcc, frequencies, icf, dcf } {
+ \bool_if:cT { l__statistics_table_##1_bool } {
+ \seq_put_right:Nv
+ \l__statistics_table_contents_seq
+ { l__statistics_table_##1_tl }
+ }
+ }
+% $
+ \tl_use:N \l__statistics_table_preamble_tl
+ \hline% lwarp
+% \l__statistics_table_preline_tl
+ \seq_use:Nn
+ \l__statistics_table_contents_seq
+ { \l__statistics_table_newline_tl }
+ \\
+% \l__statistics_table_postline_tl
+ \hline% lwarp
+% \end{array}$
+ \end{tabular}% lwarp
+}
+% \end{macrocode}
+
+
+% With \pkg{lwarp}, \cs{ensuremath} creates an \SVG\ image, but its
+% \attribute{alt} tag does not contain the text of the contents
+% for copy/paste, since these expressions are usually not simple
+% text.
+% For the \pkg{statistics} package, copy/paste is restored by
+% using text instead of math output.
+%
+% For the leftmost column.
+% Redefined to use text output:
+% \begin{macrocode}
+\cs_set_protected_nopar:Nn \__statistics_table_start: {
+ \int_zero:N \l__statistics_nbvals_int
+ \clist_pop:NNT \l__statistics_table_maxcols_clist \l_tmpa_tl {
+ \int_set:Nn \l__statistics_table_maxcols_int { \l_tmpa_tl }
+ }
+ \clist_map_inline:nn { values, counts, frequencies, icc, icf, dcc, dcf } {
+ \tl_set:cx { l__statistics_table_##1_tl } {
+% \exp_not:N \ensuremath {
+ \exp_not:N \hbox {
+ \exp_not:c { l__statistics_table_##1_name_tl }
+ }
+% }
+ }
+ }
+}
+% \end{macrocode}
+
+% For the first row.
+% Redefined to use text output:
+% \begin{macrocode}
+\RenewDocumentCommand \__statistics_IN:w { m u{;} u{;} m } {
+% \ensuremath{ \left#1 \num{#2} \mathbin{;} \num{#3} \right#4 }
+ #1 #2 ; #3 #4% lwarp
+}
+
+\__statistics_setup:nn { table } {
+% values/format = \ensuremath{#1},
+ values/format = {#1},% lwarp
+}
+% \end{macrocode}
+%
+% Added \cs{ExplSyntaxOn/Off} to avoid errors.
+% (In once instance, a double subscript error appeared.)
+% \begin{macrocode}
+\RenewDocumentCommand \StatsGraph { +O{} +m +O{} } {
+ \group_begin:
+ \int_gincr:N \g__statistics_graph_last_int
+ \tl_set:Nx \l_tmpa_tl {
+ \exp_not:n { g__statistics_graph_xstep_ }
+ \int_use:N \g__statistics_graph_last_int
+ \exp_not:n { _tl }
+ }
+ \tl_if_exist:cTF { \l_tmpa_tl } {
+ \fp_gset:Nn \g__statistics_graph_xstep_fp
+ { \tl_use:c {\l_tmpa_tl} }
+ }{
+ \fp_gset:Nn \g__statistics_graph_xstep_fp { \c_one_int }
+ }
+ \__statistics_setup:nn { graph } { #1, #3 }
+ \tl_if_single:nTF { #2 } {
+ \cs_if_exist:NF #2 { #2 }
+ \tl_set_eq:NN \l__statistics_data_tl #2
+ }{
+ \tl_set:Nn \l__statistics_data_tl { #2 }
+ }
+ \fp_zero:N \l__statistics_graph_maxheight_fp
+ \fp_set:Nn \l__statistics_graph_minvalue_fp {inf}
+ \fp_set:Nn \l__statistics_graph_maxvalue_fp {-inf}
+ \fp_zero:N \l__statistics_total_fp
+ \int_zero:N \l__statistics_nbvals_int
+ \bool_set_true:N \l__statistics_graph_allranges_bool
+ \keyval_parse:NNV
+ \__statistics_graph_prepare:n
+ \__statistics_graph_prepare:nn
+ \l__statistics_data_tl
+ \tl_clear:N \l__statistics_graph_tikzdata_tl
+ \tl_clear:N \l__statistics_graph_tikzinfo_tl
+ \int_zero:N \l__statistics_currange_int
+ \bool_if:NTF \l__statistics_graph_allranges_bool {
+ \bool_if:NTF \l__statistics_graph_cumulative_bool {
+ \ExplSyntaxOn% lwarp
+ \__statistics_graph_dopicture_cumulative:
+ \ExplSyntaxOff% lwarp
+ }{
+ \ExplSyntaxOn% lwarp
+ \__statistics_graph_dopicture_hist:
+ \ExplSyntaxOff% lwarp
+ }
+ }{
+ \ExplSyntaxOn% lwarp
+ \__statistics_graph_dopicture_comb:
+ \ExplSyntaxOff% lwarp
+ }
+ \iow_now:Nx \@auxout {
+ \exp_not:n {
+ \ExplSyntaxOn
+ \tl_gset:cn
+ }
+ {
+ \exp_not:n {g__statistics_graph_xstep_}
+ \int_use:N \g__statistics_graph_last_int
+ \exp_not:n {_tl}
+ }
+ {
+ \fp_to_decimal:N \g__statistics_graph_xstep_fp
+ }
+ \exp_not:n {
+ \ExplSyntaxOff
+ }
+ }
+ \group_end:
+}
+
+\ExplSyntaxOff
+% \end{macrocode}
+%
+% \iffalse
+%</statistics>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*statmath>
% \fi
%
@@ -75319,11 +76651,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
% \changes{v0.67}{2019/02/17}{\pkg{struktex}: Added.}
% \changes{v0.74}{2019/09/01}{\pkg{struktex}: \attribute{alt} text.}
+% \changes{v0.893}{2020/11/26}{\pkg{struktex}: Removed package date.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{struktex}[2018/06/04]
+\LWR@ProvidesPackagePass{struktex}
% \end{macrocode}
%
% \begin{macrocode}
@@ -75946,11 +77279,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \pkg{svg} is patched for use by \pkg{lwarp}.
%
% \changes{v0.79}{2020/01/05}{\pkg{svg}: Added.}
+% \changes{v0.893}{2020/11/26}{\pkg{svg}: Updated date to v2.02j.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{svg}[2019/10/22]
+\LWR@ProvidesPackagePass{svg}[2020/10/23]
% \end{macrocode}
%
% \begin{macrocode}
@@ -75982,6 +77316,48 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*swfigure>
+% \fi
+%
+% \part{lwarp-swfigure.sty}
+%
+% \section{swfigure}
+%
+% \credits{Claudio Beccari}
+%
+% \DescribePackage{swfigure}
+% \pkg{swfigure} is emulated.
+%
+% \changes{v0.893}{2020/11/24}{\pkg{swfigure}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{swfigure}[2020-11-10]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\NewDocumentEnvironment{DFimage}%
+ {O{SW} m O{#4} m o D(){0.8} D<>{0} D||{0.25} D!!{}}%
+{%
+ \begin{figure}
+ \centering
+ \includegraphics{#2}
+ \caption[#3]{#4}
+ \IfValueT{#5}{\label{#5}}
+ \end{figure}
+}%
+{}%
+% \end{macrocode}
+%
+% \iffalse
+%</swfigure>
+% \fi
+%
+%
+%
+%
%
%
% \iffalse
@@ -76613,7 +77989,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\protect\tcbhighmath\space instead.\MessageBreak%
(Inside math, you probably want to use these anyhow.)%
}
- }{}
+ }{\relax}
\LWR@printpendingfootnotes
\tcb@layer@inc
\tcb@apply@box@options{#1}
@@ -78040,21 +79416,24 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\let\pgfutil@raggedleft\LWR@print@raggedleft
\let\pgfutil@raggedright\LWR@print@raggedright
-
-\def\pgfutil@font@tiny{\LWR@printtiny}
-\def\pgfutil@font@scriptsize{\LWR@printscriptsize}
-\def\pgfutil@font@footnotesize{\LWR@printfootnotesize}
+% \end{macrocode}
+%
+% \changes{v0.893}{2020/11/09}{\pkg{tikz}: Fixed font macros.}
+% \begin{macrocode}
+\def\pgfutil@font@tiny{\LWR@print@tiny}
+\def\pgfutil@font@scriptsize{\LWR@print@scriptsize}
+\def\pgfutil@font@footnotesize{\LWR@print@footnotesize}
\def\pgfutil@font@small{\LWR@print@small}
\def\pgfutil@font@normalsize{\LWR@print@normalsize}
-\def\pgfutil@font@large{\LWR@printlarge}
-\def\pgfutil@font@Large{\LWR@printLarge}
-\def\pgfutil@font@huge{\LWR@printhuge}
-\def\pgfutil@font@Huge{\LWR@printHuge}
+\def\pgfutil@font@large{\LWR@print@large}
+\def\pgfutil@font@Large{\LWR@print@Large}
+\def\pgfutil@font@huge{\LWR@print@huge}
+\def\pgfutil@font@Huge{\LWR@print@Huge}
-\def\pgfutil@font@itshape{\LWR@origitshape}
-\def\pgfutil@font@bfseries{\LWR@origbfseries}
+\def\pgfutil@font@itshape{\LWR@print@itshape}
+\def\pgfutil@font@bfseries{\LWR@print@bfseries}
-\def\pgfutil@font@normalfont{\LWR@orignormalfont}
+\def\pgfutil@font@normalfont{\LWR@print@normalfont}
% \end{macrocode}
% \iffalse
@@ -85103,7 +86482,13 @@ height:\LWR@printlength{\LWR@tempheight}%
\renewcommand*{\setFloatBlockFor}{}
\renewcommand{\captiontitlefinal}[1]{}
-
+% \end{macrocode}
+%
+% \cs{flegtable}, \cs{flegfigure}, \cs{flegtoctable}, \cs{flegtocfigure}
+% are defined by \pkg{memoir} using \cs{newfloat}.
+% These are defined with an |@| in \pkg{ccaption}.
+%
+% \begin{macrocode}
\renewcommand{\flegtable}{\tablename}
\renewcommand{\flegfigure}{\figurename}
\renewcommand{\flegtoctable}{}
@@ -85650,7 +87035,13 @@ height:\LWR@printlength{\LWR@tempheight}%
\end{center}
\@nameuse{flegtoc\@captype}{#1}
}
-
+% \end{macrocode}
+%
+% \cs{flegtable}, \cs{flegfigure}, \cs{flegtoctable}, \cs{flegtocfigure}
+% are defined by \pkg{memoir} using \cs{newfloat}.
+% These are defined with an |@| in \pkg{ccaption}.
+%
+% \begin{macrocode}
\renewcommand{\newfixedcaption}[3][\caption]{%
\renewcommand{#2}{\def\@captype{#3}#1}}
\renewcommand{\renewfixedcaption}[3][\caption]{%
@@ -85687,9 +87078,10 @@ height:\LWR@printlength{\LWR@tempheight}%
\endgroup%
}
% \end{macrocode}
-
+%
+% ^^A *88*
+% Only in \pkg{ccaption}, not in \pkg{memoir}:
% \begin{macrocode}
-% only in ccaption, not in memoir:
% \LetLtxMacro\longbitwonumcaption\bitwonumcaption%
% \LetLtxMacro\longbionenumcaption\bitwonumcaption%
% \LetLtxMacro\longbicaption\bicaption%
@@ -86135,6 +87527,7 @@ height:\LWR@printlength{\LWR@tempheight}%
% for \brand{MathJax}.
%
% \changes{v0.89}{2020/08/10}{\pkg{lwarp-common-mathjax-letters}: Added.}
+% \changes{v0.893}{2020/08/10}{\pkg{lwarp-common-mathjax-letters}: Added \cs{varbeta}.}
%
% \codehtml
%
@@ -86197,6 +87590,7 @@ height:\LWR@printlength{\LWR@tempheight}%
\NewDocumentCommand{\LWR@mathjax@addgreek@l@up}{s m m}{
\LWR@mathjax@addletter{#1}{#2}{#3}{alpha}{03B1}
\LWR@mathjax@addletter{#1}{#2}{#3}{beta}{03B2}
+ \LWR@mathjax@addletter{#1}{#2}{#3}{varbeta}{03D0}
\LWR@mathjax@addletter{#1}{#2}{#3}{gamma}{03B3}
\LWR@mathjax@addletter{#1}{#2}{#3}{digamma}{03DD}
\LWR@mathjax@addletter{#1}{#2}{#3}{delta}{03B4}
@@ -86285,6 +87679,7 @@ height:\LWR@printlength{\LWR@tempheight}%
\NewDocumentCommand{\LWR@mathjax@addgreek@l@it}{s m m}{
\LWR@mathjax@addletter{#1}{#2}{#3}{alpha}{1D6FC}
\LWR@mathjax@addletter{#1}{#2}{#3}{beta}{1D6FD}
+ \LWR@mathjax@addletter{#1}{#2}{#3}{varbeta}{03D0}
\LWR@mathjax@addletter{#1}{#2}{#3}{gamma}{1D6FE}
\LWR@mathjax@addletter*{#1}{#2}{#3}{digamma}{03DD}
\LWR@mathjax@addletter{#1}{#2}{#3}{delta}{1D6FF}
@@ -86372,6 +87767,7 @@ height:\LWR@printlength{\LWR@tempheight}%
\NewDocumentCommand{\LWR@mathjax@addgreek@l@bfit}{s m m}{
\LWR@mathjax@addletter{#1}{#2}{#3}{alpha}{1D736}
\LWR@mathjax@addletter{#1}{#2}{#3}{beta}{1D737}
+ \LWR@mathjax@addletter{#1}{#2}{#3}{varbeta}{03D0}
\LWR@mathjax@addletter{#1}{#2}{#3}{gamma}{1D738}
\LWR@mathjax@addletter*{#1}{#2}{#3}{digamma}{03DD}
\LWR@mathjax@addletter{#1}{#2}{#3}{delta}{1D739}
@@ -86446,7 +87842,7 @@ height:\LWR@printlength{\LWR@tempheight}%
% \end{macrocode}
% \end{noindmacro}
%
-%
+% \cs{LWR@mathjax@addgreek@u@bfup} is not needed.
%
% \begin{noindmacro}{\LWR@mathjax@addgreek@u@bfup}
% * \marg{2: prefix} \marg{3: postfix}