summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-05-24 20:17:39 +0000
committerKarl Berry <karl@freefriends.org>2021-05-24 20:17:39 +0000
commita2e8db962fb55454d719b1b2659b748b43424841 (patch)
tree36f54e44fe16037bf9e2ac85d255c217510833da
parent6817402334ba1ac1d3602301cd96216af854adf4 (diff)
lwarp (24may21)
git-svn-id: svn://tug.org/texlive/trunk@59329 c570f23f-e606-0410-a88d-b1316a301751
-rwxr-xr-xBuild/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua2
-rw-r--r--Master/texmf-dist/doc/latex/lwarp/README.txt2
-rw-r--r--Master/texmf-dist/doc/latex/lwarp/lwarp.pdfbin3184136 -> 3202256 bytes
-rwxr-xr-xMaster/texmf-dist/scripts/lwarp/lwarpmk.lua2
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.dtx990
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.ins6
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-centerlastline.sty23
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-decorule.sty30
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-fancypar.sty57
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty28
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-float.sty3
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-froufrou.sty39
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty2
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-pbalance.sty24
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx-v2.sty616
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx.sty611
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty2
-rw-r--r--Master/texmf-dist/tex/latex/lwarp/lwarp.sty281
18 files changed, 1787 insertions, 931 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua b/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
index 7357f24b901..0b09a9acafe 100755
--- a/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
+++ b/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
@@ -2,7 +2,7 @@
-- Copyright 2016-2021 Brian Dunn
-printversion = "v0.896"
+printversion = "v0.897"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
diff --git a/Master/texmf-dist/doc/latex/lwarp/README.txt b/Master/texmf-dist/doc/latex/lwarp/README.txt
index bf13a2f01af..62aa9f2f2f2 100644
--- a/Master/texmf-dist/doc/latex/lwarp/README.txt
+++ b/Master/texmf-dist/doc/latex/lwarp/README.txt
@@ -1,5 +1,5 @@
-LaTeX lwarp package v0.896 README.txt
+LaTeX lwarp package v0.897 README.txt
Files included are:
diff --git a/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf b/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
index d280510a296..03031ceb9ce 100644
--- a/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
+++ b/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
Binary files differ
diff --git a/Master/texmf-dist/scripts/lwarp/lwarpmk.lua b/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
index 7357f24b901..0b09a9acafe 100755
--- a/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
+++ b/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
@@ -2,7 +2,7 @@
-- Copyright 2016-2021 Brian Dunn
-printversion = "v0.896"
+printversion = "v0.897"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
index bcd587f5522..b326554a47f 100644
--- a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
+++ b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
@@ -16,7 +16,7 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{lwarp}
-%<package> [2021/04/08 v0.896 Allows LaTeX to directly produce HTML5 output.]
+%<package> [2021/05/24 v0.897 Allows LaTeX to directly produce HTML5 output.]
%
%<*driver>
\documentclass{ltxdoc}
@@ -1696,7 +1696,29 @@ It is recommended to use \pkg{cleveref} instead of \pkg{ntheorem}'s
}
\newcommand{\limitsgraphics}{%
-\limitsincludegraphicsscale
+Per \cref{tab:includegraphicsfilenames},
+image filenames may be specified either with or without an extension.
+\trouble[case sensitive]{image>not displayed}
+\trouble{image>extension case}
+\trouble{filename>image extension}
+\gindex{image>file names}
+\gindex{graphics>file names}
+\gindex{includegraphics=\cs{includegraphics}>file names}
+\gindex{filename>graphics}
+\gindex{filename>images}
+If an extension is given it will be used as-is, for either print or \HTML\ output.
+If no extension is given, a list of possible extensions is tried, which depends
+on whether print or \HTML\ is being generated. This allows a \PDF\ file for
+print and a \SVG\ file for \HTML, for example.
+If no extension is given, the automatic search will only return lowercase extensions,
+even if the filename actually has an uppercase extension, and \pkg{lwarp} cannot
+get around this problem, so image file extensions must be lowercase
+to be seen by the \HTML\ browser with \pkg{lwarp}.
+For example, name the image file \filenm{image.pdf} instead of \filenm{image.PDF},
+but refer to it in the source as \filenm{image}, without an extension.
+For images which may be used as-is with either print or \HTML, such as \JPG\ or \PNG,
+you may use a capitalized extension if it is specified in the source, such as
+\filenm{image.JPG}.
For \cs{includegraphics} with \filenm{.pdf} or \filenm{.eps} files,
\gindex{graphics>file formats}
@@ -1805,6 +1827,8 @@ Likewise, the \cs{includegraphics} \optn{alt} key adds an \HTML\ \attribute{alt}
an image, and is ignored for print output. If not assigned, each
image is given an \attribute{alt} tag according to \cs{ImageAltText}.
+\limitsincludegraphicsscale
+
\cs{rotatebox} accepts the optional \optn{origin} key.
\margintag{\cs{rotatebox}}
@@ -2807,6 +2831,14 @@ a virtual 6-inch wide minipage, which then corrupts the \optn{lw} option.)
}
\newcommand{\limitssiunitx}{%
+\pkg{sunitx} v3 is not yet supported. For now, specify version 2:
+\trouble[v3 not yet!]{siunitx=\pkg{siunitx}>v3}
+\begin{sourcedisplay}
+\cs{usepackage}\{siunitx\}\textred{[=v2]}
+\end{sourcedisplay}
+This may be also be necessary before loading other packages which also use \pkg{siunitx},
+such as \pkg{chemmacros}.
+
Due to \prog{pdftotext} limitations, fraction output is replaced by symbol
\margintag{fractions}
output for \optn{per-mode} and \optn{quotient-mode}.
@@ -2969,6 +3001,11 @@ it will be necessary to move the todo outside of the caption.
External layouts (\cs{fxloadlayouts}) are not supported.
\trouble[external layouts]{fixme=\pkg{fixme}}
+Customized layouts are overwritten by \pkg{lwarp}'s versions \cs{AtBeginDocument}
+in order to provide the \HTML\ conversion. If creating a new layout, see
+\pkg{lwarp}'s changes to provide similar for the new layout,
+inside a \env{warpHTML} environment.
+
User control is provided for setting the \HTML\ styling of the ``faces''.
The defaults are as follows, and may be changed in the preamble after
\pkg{fixme} is loaded:
@@ -3061,7 +3098,7 @@ This boolean may be tested by the user for later use.
%<*package>
% \fi
%
-% \CheckSum{54091}
+% \CheckSum{54242}
%
% \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
@@ -3199,6 +3236,7 @@ This boolean may be tested by the user for later use.
% \changes{v0.894}{2020/12/24}{\ 2020/12/24}
% \changes{v0.895}{2021/02/18}{\ 2021/02/18}
% \changes{v0.896}{2021/04/08}{\ 2021/04/08}
+% \changes{v0.897}{2021/05/24}{\ 2021/05/24}
@@ -3422,6 +3460,22 @@ This boolean may be tested by the user for later use.
%
% \begin{description}
% \needspace{2\baselineskip}
+% \item[v0.897:] \pkg{siunitx} rollback.
+% \begin{itemize}
+% \item Added a table of file extensions to use with \cs{includegraphics}.
+% See \cref{tab:includegraphicsfilenames}.
+% \margintag{docs}
+% \item Added tests for additional incompatible packages.
+% \margintag{core}
+% \item \pkg{siunitx}: Supports rollback to v2. Does not yet support v3.
+% \margintag{packages}
+% \item \pkg{fixme}: Improved to work if the user modifies layouts.
+% \item \pkg{float}: Improved integration with \pkg{newfloat}, \pkg{keyfloat}.
+% \item Added \pkg{centerlastline}, \pkg{decorule}, \pkg{fancypar},
+% \pkg{froufrou}, \pkg{pbalance}.
+% \item Verified works as-is with \pkg{fnpct}.
+% \end{itemize}
+% \needspace{2\baselineskip}
% \item[v0.896:] Back references, accessibility.
% \begin{itemize}
% \item \textred{Due to changes in cross referencing, \watchout
@@ -5579,9 +5633,10 @@ This boolean may be tested by the user for later use.
% \midrule
%
% Page layout: & \ipkg{2in1}, \ipkg{2up}, \ipkg{a4}, \ipkg{a4wide}, \ipkg{a5comb},
-% \ipkg{addlines}, \ipkg{anysize}, \mpkg{atbegshi},
-% \ipkg{blowup}, \ipkg{booklet}, \ipkg{bophook}, \ipkg{bounddvi}, \ipkg{bxpapersize},
-% \ipkg{canoniclayout}, \mpkg{changelayout},
+% \ipkg{addlines}, \ipkg{anysize}, \mpkg{atbegshi}, \ipkg{balance},
+% \ipkg{blowup}, \ipkg{booklet}, \ipkg{bophook}, \ipkg{bounddvi},
+% \ipkg{bxpapersize},
+% \ipkg{canoniclayout}, \ipkg{centerlastline}, \mpkg{changelayout},
% \epkg{changepage}, \ipkg{chngpage}, \ipkg{clrdblpg},
% \ipkg{continue}, \ipkg{draftcopy}, \ipkg{draftfigure}, \ipkg{draftwatermark},
% \ipkg{ebook}, \ipkg{everyshi},
@@ -5592,6 +5647,7 @@ This boolean may be tested by the user for later use.
% \ipkg{layaureo}, \ipkg{layout}, \ipkg{layouts}, \ipkg{leading}, \ipkg{lscape},
% \ipkg{ltxgrid}, \ipkg{nccfancyhdr}, \ipkg{notespages}, \ipkg{nowidow},
% \ipkg{pagegrid}, \ipkg{pagesel}, \epkg{parallel}, \epkg{parcolumns},
+% \ipkg{pbalance},
% \ipkg{pdfcolparallel}, \ipkg{pdfcolparcolumns}, \ipkg{pdfcrypt},
% \ipkg{pdflscape}, \ipkg{pdfprivacy},
% \ipkg{preview}, \epkg{ragged2e}, \ipkg{returntogrid}, \ipkg{rmpage},
@@ -5608,7 +5664,8 @@ This boolean may be tested by the user for later use.
% Sectioning: & Adds \progcode{FileDepth} for splitting the \HTML\ output.
% Files may be numbered sequentially or named according to section name.
% Common short words and punctuation are removed from the filenames.
-% \epkg{anonchap}, \ipkg{bsheaders}, \ipkg{fncychap}, \epkg{hypbmsec},
+% \epkg{anonchap}, \ipkg{bsheaders}, \mpkg{decorule}, \ipkg{fncychap},
+% \mpkg{froufrou}, \epkg{hypbmsec},
% \epkg{indentfirst}, \epkg{quotchap},
% \ipkg{section}, \mpkg{sectionbreak}, \spkg{secdot}, \ipkg{sectsty},
% \ipkg{titlesec}, \spkg{tocvsec2}.
@@ -5662,7 +5719,7 @@ This boolean may be tested by the user for later use.
% \brand{MathJax} emulation for \cs{footnote}, and also as marked in the following:
% \epkg{bigfoot}, \ipkg{dblfnote},
% \ipkg{endheads}, \mpkg{endnotes}\ejax, \mpkg{enotez}\ejax, \spkg{fixfoot},
-% \ipkg{fnbreak}, \ipkg{fnpara}, \ipkg{fnpos},
+% \ipkg{fnbreak}, \ipkg{fnpara}, \spkg{fnpct}, \ipkg{fnpos},
% \epkg{footmisc}, \mpkg{footnote}, \ipkg{footnotebackref},
% \mpkg{footnoterange}, \ipkg{footnpag}, \epkg{manyfoot},
% \epkg{marginnote}\ejax, \spkg{nccfoots}\ejax, \spkg{pagenote}\ejax,
@@ -5794,8 +5851,9 @@ This boolean may be tested by the user for later use.
%
% Environments: & Standard \LaTeX{} environments. \\
%
-% \env{minipage}, \cs{parbox}: & Some \HTMLfive-imposed limitations.
-% Nested minipages are supported. \mpkg{eqparbox}, \mpkg{minibox}, \epkg{pbox},
+% Paragraphs, \env{minipage}, \cs{parbox}: & Some \HTMLfive-imposed limitations.
+% Nested minipages are supported. \mpkg{eqparbox}, \mpkg{fancypar},
+% \mpkg{minibox}, \epkg{pbox},
% \ipkg{shapepar}. \\
%
% Quotations: & \epkg{copyrightbox}, \spkg{csquotes}, \epkg{epigraph},
@@ -10439,6 +10497,34 @@ This boolean may be tested by the user for later use.
%
% \DescribePackage{graphics}%
% \DescribePackage{graphicx}%
+%
+% \begin{table}
+% \caption{\cs{includegraphics} and file names}
+% \label{tab:includegraphicsfilenames}
+% \begin{center}
+% \begin{threeparttable}
+% \begin{tabular}{ccl}
+% \toprule
+% Print image file & \HTML\ image file & Command to use \\
+% \midrule
+% \filenm{image.pdf}\tnote{a} & \filenm{image.svg}\tnote{a} & |\includegraphics{image}| \\
+% \filenm{image.eps}\tnote{a} & \filenm{image.svg}\tnote{a} & |\includegraphics{image}| \\
+% \filenm{image.jpg} & ---\tnote{b} & |\includegraphics{image}| \\
+% \filenm{image.png} & ---\tnote{b} & |\includegraphics{image}| \\
+% \filenm{image.JPG} & ---\tnote{b} & |\includegraphics{image.JPG}|\tnote{c} \\
+% \filenm{image.PNG} & ---\tnote{b} & |\includegraphics{image.PNG}|\tnote{c} \\
+% \filenm{image.jpg} & \filenm{image.gif} & |\includegraphics{image}| \\
+% \bottomrule
+% \end{tabular}
+% \begin{tablenotes}
+% \item[a:] Must be a lowercase file extension.
+% \item[b:] The same file is used for print and \HTML.
+% \item[c:] The uppercase extension must be specified.
+% \end{tablenotes}
+% \end{threeparttable}
+% \end{center}
+% \end{table}
+%
% \limitsgraphics
%
%
@@ -12698,16 +12784,16 @@ This boolean may be tested by the user for later use.
% \begin{macro}{\LWR@checkloadbefore}
-% \marg{thispackagename} \marg{packagename}
+% \marg{packagename}
%
-% If package names match, error if it is loaded after \pkg{lwarp}.
+% Given \cs{LWR@tempone} is the package name to compare to,
+% if package names match, error if it is loaded after \pkg{lwarp}.
%
% \changes{v0.63}{2018/12/02}{Added.}
%
% \begin{macrocode}
-\newcommand*{\LWR@checkloadbefore}[2]{%
- \edef\LWR@tempone{#1}%
- \ifdefstring{\LWR@tempone}{#2}{%
+\newcommand*{\LWR@checkloadbefore}[1]{%
+ \ifdefstring{\LWR@tempone}{#1}{%
\LWR@loadbefore{#1}%
}{}%
}
@@ -12718,41 +12804,51 @@ This boolean may be tested by the user for later use.
% \begin{macro}{\LWR@loadnever} \marg{badpackagename} \marg{replacementpkgnames}
%
% The first packages is not supported, so tell the user to use the second instead.
+% Factored from \cs{LWR@checkloadnever} and \cs{LWR@earlyloadnever}.
%
% \changes{v0.25}{2017/03/16}{Added the ability to prevent conflicting packages.}
+% \changes{v0.897}{2021/05/08}{Replacements now optional.}
%
% \begin{macrocode}
\newcommand*{\LWR@loadnever}[2]{%
\PackageError{lwarp}
{%
- Package #1 is not supported\MessageBreak
- by lwarp's HTML conversion.\MessageBreak
- Package(s)\MessageBreak
- \space\space#2\MessageBreak
- may be useful instead%
+ Package #1 is not yet supported\MessageBreak
+ by lwarp's HTML conversion%
+ \ifblank{#2}{}{%
+ .\MessageBreak
+ Package(s)\MessageBreak
+ \space\space#2\MessageBreak
+ may be useful instead%
+ }%
}
{%
Package #1 might conflict with lwarp in some way,\MessageBreak
- or is superceded by another package.\MessageBreak
- For a possible alternative, see package(s) #2.
+ or is superceded by another package.%
+ \ifblank{#2}{}{%
+ \MessageBreak
+ For possible alternatives, see package(s) #2.%
+ }%
}
}
% \end{macrocode}
% \end{macro}
%
%
-% \begin{macro}{\LWR@checkloadnever}
-% \marg{thispackagename} \marg{badpackagename} \marg{replacementpkgnames}
%
-% If this package name is the bad packagename, suggest the replacements instead.
+% \begin{macro}{\LWR@afterloadnever}
+% \marg{badpackagename} \marg{replacementpkgnames}
+%
+% Given: \cs{LWR@tempone} is set to the package name being tested against,
+% if this package name is the bad packagename, suggest the replacements instead.
+% This is used when loading packages after \pkg{lwarp}.
%
-% \changes{v0.63}{2018/12/01}{Added.}
+% \changes{v0.897}{2021/05/08}{Refactored.}
%
% \begin{macrocode}
-\newcommand*{\LWR@checkloadnever}[3]{%
- \edef\LWR@tempone{#1}%
- \ifdefstring{\LWR@tempone}{#2}{%
- \LWR@loadnever{#2}{#3}%
+\newcommand*{\LWR@afterloadnever}[2]{%
+ \ifdefstring{\LWR@tempone}{#1}{%
+ \LWR@loadnever{#1}{#2}%
}{}%
}
% \end{macrocode}
@@ -12762,10 +12858,10 @@ This boolean may be tested by the user for later use.
% \begin{macro}{\LWR@earlyloadnever} \marg{badpackagename} \marg{replacementpkgname}
%
% The first package is not supported, so tell the user to use the second instead.
-% This version checks immediately for packages which may have been loaded before \pkg{lwarp}.
+% This version checks immediately for packages which
+% may have been loaded before \pkg{lwarp}.
%
-% \changes{v0.54}{2018/04/06}{Added.}
-% \changes{v0.79}{2020/01/09}{Factored.}
+% \changes{v0.897}{2021/05/08}{Refactored.}
%
% \begin{macrocode}
\newcommand*{\LWR@earlyloadnever}[2]{%
@@ -12783,6 +12879,7 @@ This boolean may be tested by the user for later use.
% This version checks immediately for classes which may have been loaded before \pkg{lwarp}.
%
% \changes{v0.63}{2018/11/25}{Added.}
+% \changes{v0.897}{2021/05/08}{Replacements now optional.}
%
% \begin{macrocode}
\newcommand*{\LWR@earlyclassloadnever}[2]{%
@@ -12790,13 +12887,19 @@ This boolean may be tested by the user for later use.
\PackageError{lwarp}
{%
Class #1 is not supported\MessageBreak
- by lwarp's HTML conversion.\MessageBreak
- Class(es) #2 may be useful instead
+ by lwarp's HTML conversion%
+ \ifblank{#2}{}{%
+ .\MessageBreak
+ Class(es) #2 may be useful instead%
+ }%
}
{%
Class #1 might conflict with lwarp in some way,\MessageBreak
- or is superceded by another class.\MessageBreak
- For a possible alternative, see class(es) #2.
+ or is superceded by another class.%
+ \ifblank{#2}{}{%
+ \MessageBreak
+ For a possible alternative, see class(es) #2.%
+ }%
}
}{\relax}%
}
@@ -12805,6 +12908,7 @@ This boolean may be tested by the user for later use.
%
%
% \subsection{Error for disallowed packages and classes loaded before lwarp}
+%
% \changes{v0.54}{2018/04/06}{Added early check for disallowed packages.}
% \changes{v0.54}{2018/09/26}{Never load \pkg{aecompl}.}
% \changes{v0.62}{2018/11/18}{Added early checks for \pkg{CJK}, \pkg{CJKutf8}.}
@@ -12820,60 +12924,188 @@ This boolean may be tested by the user for later use.
% \changes{v0.893}{2020/11/15}{Allowed \pkg{picinpar}.}
% \changes{v0.895}{2021/01/19}{Allowed \pkg{epsf}.}
%
+%
+% \begin{macro}{\LWR@checkloadnevers}
+% Checks against a list of incompatible packages.
+%
+% \changes{v0.897}{2021/05/08}{Refactored.}
+%
% ^^A *earlyloadnever *loadnever
% \begin{macrocode}
-\LWR@earlyclassloadnever{jarticle}{ujarticle}
-\LWR@earlyclassloadnever{jbook}{ujbook}
-\LWR@earlyclassloadnever{jreport}{ujreport}
-\LWR@earlyclassloadnever{tarticle}{utarticle}
-\LWR@earlyclassloadnever{tbook}{utbook}
-\LWR@earlyclassloadnever{treport}{utreport}
-\LWR@earlyloadnever{ae}{cm-super, lmodern}
-\LWR@earlyloadnever{aecompl}{cm-super, lmodern}
-\LWR@earlyloadnever{aecc}{cm-super, lmodern}
-\LWR@earlyloadnever{alg}{algorithm2e, algorithmicx}
-\LWR@earlyloadnever{algorithmic}{algorithm2e, algorithmicx}
-\LWR@earlyloadnever{bitfield}{bytefield}
-\LWR@earlyloadnever{caption2}{caption}
-% \LWR@earlyloadnever{ccaption}{caption}% might be preloaded by memoir
-\LWR@earlyloadnever{colortab}{colortbl}
-\LWR@earlyloadnever{csvtools}{datatool}
-\LWR@earlyloadnever{doublespace}{setspace}
-\LWR@earlyloadnever{fancyheadings}{fancyhdr}
-\LWR@earlyloadnever{fncylab}{cleveref}
-\LWR@earlyloadnever{formula}{siunitx}
-\LWR@earlyloadnever{glossary}{glossaries}
-\LWR@earlyloadnever{hyper}{hyperref}
-\LWR@earlyloadnever{libgreek}{libertinust1math, newtx}
-\LWR@earlyloadnever{newthm}{ntheorem}
-\LWR@earlyloadnever{pdfcprot}{microtype}
-\LWR@earlyloadnever{picins}{floatflt, wrapfig}
-\LWR@earlyloadnever{rplain}{fancyhdr}
-\LWR@earlyloadnever{si}{siunitx}
-\LWR@earlyloadnever{sistyle}{siunitx}
-\LWR@earlyloadnever{slashbox}{diagbox}
-\LWR@earlyloadnever{statex}{statex2}
-\LWR@earlyloadnever{t1enc}{fontenc, inputenc, inputenx}
-\LWR@earlyloadnever{ucs}{inputenc, inputencx}
-\LWR@earlyloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
+\newcommand*{\LWR@checkloadnevers}{
+\LWR@checkloadnever{ae}{cm-super, lmodern}
+\LWR@checkloadnever{aecompl}{cm-super, lmodern}
+\LWR@checkloadnever{aecc}{cm-super, lmodern}
+\LWR@checkloadnever{alg}{algorithm2e, algorithmicx}
+\LWR@checkloadnever{algorithmic}{algorithm2e, algorithmicx}
+\LWR@checkloadnever{bitfield}{bytefield}
% \end{macrocode}
-% The older \pkg{CJK} and \pkg{CJKutf8} only work with \pkg{xeCJK}:
+% \pkg{bxcjkatype} is based on \pkg{CJK}:
% \begin{macrocode}
-\@ifpackageloaded{xeCJK}{}{
- \LWR@earlyloadnever{CJK}{ctex, xeCJK}
- \LWR@earlyloadnever{CJKutf8}{ctex, xeCJK}
-}
+\LWR@checkloadnever{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
% \end{macrocode}
-% \pkg{bxcjkatype} is based on \pkg{CJK}:
% \begin{macrocode}
-\LWR@earlyloadnever{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
+\LWR@checkloadnever{caption2}{caption}
+% \LWR@checkloadnever{ccaption}{caption}% might be preloaded by memoir
+\LWR@checkloadnever{colortab}{colortbl}
+\LWR@checkloadnever{csvtools}{datatool}
+\LWR@checkloadnever{doublespace}{setspace}
+\LWR@checkloadnever{fancyheadings}{fancyhdr}
+\LWR@checkloadnever{fncylab}{cleveref}
+\LWR@checkloadnever{formula}{siunitx}
+\LWR@checkloadnever{glossary}{glossaries}
% \end{macrocode}
% \pkg{hangul} is not in TeXLive, and is not tested:
% \begin{macrocode}
-\LWR@earlyloadnever{hangul}{kotex, xetexko, luatexko}
+\LWR@checkloadnever{hangul}{kotex, xetexko, luatexko}
+% \end{macrocode}
+% \begin{macrocode}
+\LWR@checkloadnever{hyper}{hyperref}
+\LWR@checkloadnever{libgreek}{libertinust1math, newtx}
+\LWR@checkloadnever{newthm}{ntheorem}
+\LWR@checkloadnever{pdfcprot}{microtype}
+\LWR@checkloadnever{picins}{floatflt, wrapfig}
+\LWR@checkloadnever{rplain}{fancyhdr}
+\LWR@checkloadnever{si}{siunitx}
+\LWR@checkloadnever{sistyle}{siunitx}
+\LWR@checkloadnever{slashbox}{diagbox}
+\LWR@checkloadnever{statex}{statex2}
+\LWR@checkloadnever{t1enc}{fontenc, inputenc, inputenx}
+\LWR@checkloadnever{ucs}{inputenc, inputencx}
+\LWR@checkloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
+% \end{macrocode}
+%
+% The following may one day be supported by lwarp:
+%
+% ^^A *notyet
+% \begin{macrocode}
+% \LWR@checkloadnever{adjustbox}{}% req'd for menukeys
+\LWR@checkloadnever{animate}{}
+\LWR@checkloadnever{auto-pst-pdf}{}
+\LWR@checkloadnever{auto-pst-pdf-lua}{}
+\LWR@checkloadnever{algorithms}{}
+\LWR@checkloadnever{arraycols}{}
+\LWR@checkloadnever{beamer}{}
+\LWR@checkloadnever{bidi}{}
+\LWR@checkloadnever{cals}{}
+\LWR@checkloadnever{cellspace}{}
+\LWR@checkloadnever{cgloss4e}{}
+\LWR@checkloadnever{colophon}{}
+\LWR@checkloadnever{cooltooltips}{}
+\LWR@checkloadnever{covington}{}
+\LWR@checkloadnever{crbox}{}
+\LWR@checkloadnever{decision-table}{}
+\LWR@checkloadnever{dvgloss}{}
+\LWR@checkloadnever{ednotes}{}
+\LWR@checkloadnever{edfnotes}{}
+\LWR@checkloadnever{eledform}{}
+\LWR@checkloadnever{eledmac}{}
+\LWR@checkloadnever{embedfile}{}
+\LWR@checkloadnever{endnotes-hy}{endnotes}
+\LWR@checkloadnever{expex}{}
+\LWR@checkloadnever{fancytooltips}{}
+\LWR@checkloadnever{fixocgx}{}
+\LWR@checkloadnever{flowfram}{}
+\LWR@checkloadnever{gb4e}{}
+\LWR@checkloadnever{gmverse}{}
+\LWR@checkloadnever{graphbox}{}
+\LWR@checkloadnever{graphicxbox}{}
+\LWR@checkloadnever{hvfloat}{}
+\LWR@checkloadnever{inline-images}{}
+\LWR@checkloadnever{isorot}{rotating}
+\LWR@checkloadnever{ledmac}{}
+\LWR@checkloadnever{linguex}{}
+\LWR@checkloadnever{longdiv}{}
+\LWR@checkloadnever{longfigure}{}
+\LWR@checkloadnever{longtabu}{}
+\LWR@checkloadnever{mdwenv}{}
+\LWR@checkloadnever{mdwlist}{}
+\LWR@checkloadnever{mdwtab}{}
+\LWR@checkloadnever{navigator}{}
+\LWR@checkloadnever{nccpic}{}
+\LWR@checkloadnever{nccsect}{}
+\LWR@checkloadnever{newvbtm}{}
+\LWR@checkloadnever{ocg-p}{}
+\LWR@checkloadnever{ocgtools}{}
+\LWR@checkloadnever{ocgx}{}
+\LWR@checkloadnever{ocgx2}{}
+\LWR@checkloadnever{parrun}{}
+\LWR@checkloadnever{poemscol}{}
+\LWR@checkloadnever{poetry}{}
+\LWR@checkloadnever{program}{}
+\LWR@checkloadnever{proofread}{}
+\LWR@checkloadnever{pst-pdf}{}
+\LWR@checkloadnever{refstyle}{}
+\LWR@checkloadnever{robustindex}{}
+\LWR@checkloadnever{robustglossary}{}
+\LWR@checkloadnever{semioneside}{}
+\LWR@checkloadnever{slemph}{}
+\LWR@checkloadnever{snotez}{sidenotes}
+\LWR@checkloadnever{spacingtricks}{}
+\LWR@checkloadnever{sverb}{verbatim, fancyvrb}
+\LWR@checkloadnever{syntax}{}
+\LWR@checkloadnever{tablists}{}
+\LWR@checkloadnever{tabto}{}
+\LWR@checkloadnever{tabu}{}
+\LWR@checkloadnever{tabularht}{}
+\LWR@checkloadnever{tabularkv}{}
+\LWR@checkloadnever{thumby}{}
+\LWR@checkloadnever{titles}{}
+\LWR@checkloadnever{typehtml}{}
+\LWR@checkloadnever{unicode-bidi}{}
+\LWR@checkloadnever{vcell}{}
+\LWR@checkloadnever{xhfill}{}
+}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \begin{macro}{\LWR@checkloadnever} \marg{badpackagename} \marg{replacementpkgname}
+%
+% The first package is not supported, so tell the user to use the second instead.
+%
+% When \pkg{lwarp} is first loaded, this is set to \cs{LWR@earlyloadnever}
+% to check for incompatible packages which were loaded before \pkg{lwarp}.
+% After \pkg{lwarp} is loaded, this is changed to \cs{LWR@afterloadnever} to
+% check for incompatible packages during \cs{usepackage}.
+%
+% \changes{v0.897}{2021/05/08}{Refactored.}
+%
+% \begin{macrocode}
+\LetLtxMacro\LWR@checkloadnever\LWR@earlyloadnever
+% \end{macrocode}
+% \end{macro}
+%
+%
+% Now check for incompatible packages which have been loaded before \pkg{lwarp}:
+% \begin{macrocode}
+\LWR@checkloadnevers
+% \end{macrocode}
+%
+%
+% The older \pkg{CJK} and \pkg{CJKutf8} only work with \pkg{xeCJK}:
+% \begin{macrocode}
+\@ifpackageloaded{xeCJK}{}{
+ \LWR@checkloadnever{CJK}{ctex, xeCJK}
+ \LWR@checkloadnever{CJKutf8}{ctex, xeCJK}
+}
+% \end{macrocode}
+%
+%
+% Some classes do not work with \pkg{lwarp}:
+% \begin{macrocode}
+\LWR@earlyclassloadnever{jarticle}{ujarticle}
+\LWR@earlyclassloadnever{jbook}{ujbook}
+\LWR@earlyclassloadnever{jreport}{ujreport}
+\LWR@earlyclassloadnever{tarticle}{utarticle}
+\LWR@earlyclassloadnever{tbook}{utbook}
+\LWR@earlyclassloadnever{treport}{utreport}
+\LWR@earlyclassloadnever{novel}{}
+\LWR@earlyclassloadnever{powerdot}{}
% \end{macrocode}
%
%
+%
% \subsection{Enforcing package loading after \pkg{lwarp}}
%
% Packages which should only be loaded after \pkg{lwarp} are tested
@@ -12961,6 +13193,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{cases}
% catoptions is supported by the lwarp core
% \LWR@loadafter{ccaption}% may be preloaded by memoir
+\LWR@loadafter{centerlastline}
% \LWR@loadafter{centernot}% may be preloaded by newtx
\LWR@loadafter{changebar}
\LWR@loadafter{changelayout}
@@ -12995,6 +13228,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{dblfnote}
\LWR@notmemoirloadafter{dcolumn}
\LWR@loadafter{decimal}
+\LWR@loadafter{decorule}
\LWR@loadafter{diagbox}
\LWR@loadafter{dingbat}
\LWR@loadafter{DotArrow}
@@ -13036,6 +13270,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{extramarks}
\LWR@loadafter{fancybox}
\LWR@loadafter{fancyhdr}
+\LWR@loadafter{fancypar}
\LWR@loadafter{fancyref}
\LWR@loadafter{fancytabs}
\LWR@loadafter{fancyvrb}
@@ -13076,6 +13311,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{fouridx}
% fourier may be loaded before lwarp
\LWR@loadafter{framed}
+\LWR@loadafter{froufrou}
\LWR@loadafter{ftcap}
\LWR@loadafter{ftnright}
\LWR@loadafter{fullminipage}
@@ -13240,6 +13476,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{parcolumns}
\LWR@loadafter{parnotes}
\LWR@notmemoirloadafter{parskip}
+\LWR@loadafter{pbalance}
\LWR@loadafter{pbox}
\LWR@loadafter{pdfcol}
\LWR@loadafter{pdfcolfoot}
@@ -13330,6 +13567,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{simplebnf}
\LWR@loadafter{SIunits}
\LWR@loadafter{siunitx}
+\LWR@loadafter{siunitx-v2}
\LWR@loadafter{skmath}
\LWR@loadafter{slantsc}
\LWR@loadafter{slashed}
@@ -15514,6 +15752,10 @@ This boolean may be tested by the user for later use.
% \section{Loading packages}
%
%
+% \cs{RequirePackage} and \cs{usepackage} are modified to error-check
+% for certain packages, and for \HTML\ they load the \pkg{lwarp-} version if
+% it exists.
+%
% \codeall
% \begin{macrocode}
\begin{warpall}
@@ -15566,10 +15808,18 @@ This boolean may be tested by the user for later use.
}
% \end{macrocode}
% \end{macro}
-%
-
-
-
+%
+%
+% \begin{macro}{\LWR@checkloadnever} \marg{bad package name} \marg{replacement package names}
+%
+% From now on, check for incompatible packages loaded via \cs{usepackage},
+% instead of packages loaded before \pkg{lwarp}:
+% \begin{macrocode}
+\LetLtxMacro\LWR@checkloadnever\LWR@afterloadnever
+% \end{macrocode}
+% \end{macro}
+%
+%
% \begin{macro}{\LWR@checkloadfilename} \marg{filename}
% Checks if this filename should be loaded after \pkg{lwarp},
% or never at all.
@@ -15589,65 +15839,48 @@ This boolean may be tested by the user for later use.
% \changes{v0.893}{2020/11/15}{Allowed \pkg{picinpar}.}
% \changes{v0.895}{2021/01/19}{Allowed \pkg{epsf}.}
-% The following should never be loaded:
%
-% ^^A *checkload *loadnever
+% ^^A *checkload
% \begin{macrocode}
\newcommand*{\LWR@checkloadfilename}[1]{%
-\LWR@checkloadnever{#1}{ae}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{aecc}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{aecompl}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{alg}{algorithm2e, algorithmicx}
-\LWR@checkloadnever{#1}{algorithmic}{algorithm2e, algorithmicx}
-\LWR@checkloadnever{#1}{bitfield}{bytefield}
-\LWR@checkloadnever{#1}{caption2}{caption}
-\LWR@checkloadnever{#1}{ccaption}{caption}% might be preloaded by memoir
-\LWR@checkloadnever{#1}{colortab}{colortbl}
-\LWR@checkloadnever{#1}{csvtools}{datatool}
-\LWR@checkloadnever{#1}{doublespace}{setspace}
-\LWR@checkloadnever{#1}{fancyheadings}{fancyhdr}
-\LWR@checkloadnever{#1}{fncylab}{cleveref}
-\LWR@checkloadnever{#1}{formula}{siunitx}
-\LWR@checkloadnever{#1}{glossary}{glossaries}
-\LWR@checkloadnever{#1}{hyper}{hyperref}
-\LWR@checkloadnever{#1}{libgreek}{libertinust1math, newtx}
-\LWR@checkloadnever{#1}{newthm}{ntheorem}
-\LWR@checkloadnever{#1}{pdfcprot}{microtype}
-\LWR@checkloadnever{#1}{picins}{floatflt, wrapfig}
-\LWR@checkloadnever{#1}{rplain}{fancyhdr}
-\LWR@checkloadnever{#1}{si}{siunitx}
-\LWR@checkloadnever{#1}{sistyle}{siunitx}
-\LWR@checkloadnever{#1}{slashbox}{diagbox}
-\LWR@checkloadnever{#1}{statex}{statex2}
-\LWR@checkloadnever{#1}{t1enc}{fontenc, inputenc, inputenx}
-\LWR@checkloadnever{#1}{ucs}{inputenc, inputencx}
-\LWR@checkloadnever{#1}{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
-\LWR@checkloadnever{#1}{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
-\LWR@checkloadnever{#1}{hangul}{kotex, xetexko, luatexko}
% \end{macrocode}
%
+% Remember the package name to compare with, to be used
+% by \cs{LWR@checkloadnever} and \cs{LWR@checkloadbefore}.
+% \begin{macrocode}
+ \edef\LWR@tempone{#1}%
+% \end{macrocode}
+%
+% Check against the list of packages which should never be loaded:
+%
+% \changes{v0.897}{2021/05/08}{Refactored.}
+% \begin{macrocode}
+ \LWR@checkloadnevers
+% \end{macrocode}
+%
+%
% ^^A *loadbefore
% The following should only be loaded before \pkg{lwarp}:
% \changes{v0.895}{2021/01/14}{\pkg{kpfonts} load before \pkg{lwarp}.}
% \begin{macrocode}
-\LWR@checkloadbefore{#1}{ctex}
-\LWR@checkloadbefore{#1}{fontspec}
-\LWR@checkloadbefore{#1}{inputenc}
-\LWR@checkloadbefore{#1}{inputenx}
-\LWR@checkloadbefore{#1}{nfssext-cfr}
-\LWR@checkloadbefore{#1}{fontaxes}
-\LWR@checkloadbefore{#1}{kotex}
-\LWR@checkloadbefore{#1}{kpfonts}% textcomp option clash
-\LWR@checkloadbefore{#1}{luatexja}
-\LWR@checkloadbefore{#1}{luatexja-fontspec}
-\LWR@checkloadbefore{#1}{luatexko}
-\LWR@checkloadbefore{#1}{morewrites}
-\LWR@checkloadbefore{#1}{newclude}
-\LWR@checkloadbefore{#1}{newunicodechar}
-\LWR@checkloadbefore{#1}{plext}
-\LWR@checkloadbefore{#1}{xeCJK}
-\LWR@checkloadbefore{#1}{xetexko}
-\LWR@checkloadbefore{#1}{zxjatype}
+ \LWR@checkloadbefore{ctex}
+ \LWR@checkloadbefore{fontspec}
+ \LWR@checkloadbefore{inputenc}
+ \LWR@checkloadbefore{inputenx}
+ \LWR@checkloadbefore{nfssext-cfr}
+ \LWR@checkloadbefore{fontaxes}
+ \LWR@checkloadbefore{kotex}
+ \LWR@checkloadbefore{kpfonts}% textcomp option clash
+ \LWR@checkloadbefore{luatexja}
+ \LWR@checkloadbefore{luatexja-fontspec}
+ \LWR@checkloadbefore{luatexko}
+ \LWR@checkloadbefore{morewrites}
+ \LWR@checkloadbefore{newclude}
+ \LWR@checkloadbefore{newunicodechar}
+ \LWR@checkloadbefore{plext}
+ \LWR@checkloadbefore{xeCJK}
+ \LWR@checkloadbefore{xetexko}
+ \LWR@checkloadbefore{zxjatype}
}
% \end{macrocode}
% \end{macro}
@@ -15772,16 +16005,17 @@ This boolean may be tested by the user for later use.
% Error if braces are used in optional argument.
% This can cause an error, so tell how to avoid.
% \changes{v0.896}{2021/03/14}{Warn if package option has braces.}
+% \changes{v0.897}{2021/05/08}{Fixed warning.}
% \begin{macrocode}
\IfSubStr{\detokenize\expandafter{#1}}{\LWRleftbrace}%
{%
\PackageError{lwarp}{%
You used:\MessageBreak
- \protect\requirepackage[#1]{#2}\MessageBreak
+ \protect\usepackage[#1]{#2}\MessageBreak
Braces in the package options will fail with Lwarp.\MessageBreak
Instead, use:\MessageBreak
\protect\PassOptionsToPackage{#1}{#2}\MessageBreak
- \protect\requirepackage{#2}\MessageBreak
+ \protect\usepackage{#2}\MessageBreak
near the line number given below.\MessageBreak
Enter 'h' for more info%
}%
@@ -20280,7 +20514,7 @@ MathJax = {
-- Copyright 2016-2021 Brian Dunn
-printversion = "v0.896"
+printversion = "v0.897"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
@@ -33774,7 +34008,7 @@ end -- not --version
-% \begin{macro}{\LWR@href} \oarg{options} \marg{URL}
+% \begin{macro}{\LWR@href} \oarg{options} \marg{URL} \marg{text}
%
% Create a link with accompanying text:
%
@@ -34741,19 +34975,22 @@ end -- not --version
% \end{macro}
-% \subsection{High-level \TOC\ commands}
+% \subsection{\TOC\ commands}
% \label{sec:listof}
-% \begin{macro}{\listof} \marg{type} \marg{title}
+% \begin{macro}{\LWR@listof} \marg{type} \marg{title}
%
-% Emulate the \cs{listof} command from the \pkg{float} package (\cref{sec:newfloat}).
+% Emulate the \cs{listof} command
+% from the \pkg{float} package (\cref{sec:float}).
% Used to create lists of custom float types. Also used to redefine
-% the standard \LaTeX{} \cs{listoffigures} and \cs{listoftables} commands.
+% the standard \LaTeX{} \cs{listoffigures} and \cs{listoftables} commands,
+% and in \pkg{tocloft} and \pkg{memoir}.
%
% \changes{v0.57}{2018/05/26}{Fix: Provide \cs{l@name} if not defined.}
% \changes{v0.61}{2018/09/26}{Fix: \pkg{newfloat} lists.}
+% \changes{v0.897}{2021/05/18}{Improved compatibility with \pkg{newfloat}, \pkg{keyfloat}.}
% \begin{macrocode}
-\NewDocumentCommand{\listof}{m +m}{%
+\NewDocumentCommand{\LWR@listof}{m +m}{%
\@ifundefined{l@#1}{%
\csdef{l@#1}##1##2{\hypertocfloat{1}{#1}{\@nameuse{ext@#1}}{##1}{##2}}%
}{}%
@@ -38876,6 +39113,7 @@ end -- not --version
% Options for siunitx:
% \changes{v0.50}{2018/02/24}{\pkg{siunitx}: Improved units.}
+% \changes{v0.897}{2021/05/23}{\pkg{siunitx}: Rollback for v2.}
% \begin{macrocode}
\newrobustcmd{\LWR@siunitx@textcelsius}{\HTMLentity{deg}C}
\newrobustcmd{\LWR@siunitx@textdegree}{\HTMLentity{deg}}
@@ -38898,7 +39136,7 @@ end -- not --version
text-degree = {\LWR@siunitx@textdegree},
text-arcminute = {\LWR@siunitx@textprime} ,
text-arcsecond = {\LWR@siunitx@textdblprime} ,
-}{siunitx}
+}{siunitx-v2}
% \end{macrocode}
% \begin{macrocode}
@@ -41819,7 +42057,7 @@ color:\LWR@origpound\LWR@tempcolor%
% \changes{v0.45}{2017/12/03}{\pkg{memoir}: Added.}
% \changes{v0.84}{2020/03/31}{\pkg{memoir}: Preloads \pkg{xcolor}.}
%
-% \codeall
+% \codeprint
% \begin{macrocode}
\begin{warpprint}
\@ifclassloaded{memoir}{\LWR@origRequirePackage{xcolor}}{}
@@ -47789,6 +48027,34 @@ s%
%
%
%
+% \iffalse
+%<*centerlastline>
+% \fi
+%
+% \part{lwarp-centerlastline.sty}
+%
+% \section{centerlastline}
+%
+% \DescribePackage{centerlastline}
+% \pkg{centerlastline} is ignored.
+%
+% \changes{v0.897}{2021/04/18}{\pkg{centerlastline}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{centerlastline}[2020/10/12]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\providecommand{\centerlastline}{}
+\def\endcenterlastline{\par}
+% \end{macrocode}
+%
+% \iffalse
+%</centerlastline>
+% \fi
+%
%
% \iffalse
%<*centernot>
@@ -51391,6 +51657,45 @@ name = \chemmacros_translate:n {scheme-name}
%
%
% \iffalse
+%<*decorule>
+% \fi
+%
+% \part{lwarp-decorule.sty}
+%
+% \section{decorule}
+%
+% \credits{Peter Flynn}
+%
+% \DescribePackage{decorule}
+% \pkg{decorule} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.897}{2021/05/02}{\pkg{decorule}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{decorule}[2020/04/01]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\xpretocmd{\decorule}
+ {\begin{lateximage}*[decorule]}
+ {}
+ {\LWR@patcherror{decorule}{decorule A}}
+
+\xapptocmd{\decorule}
+ {\end{lateximage}}
+ {}
+ {\LWR@patcherror{decorule}{decorule B}}
+% \end{macrocode}
+%
+% \iffalse
+%</decorule>
+% \fi
+%
+%
+%
+% \iffalse
%<*diagbox>
% \fi
%
@@ -54276,6 +54581,96 @@ name = \chemmacros_translate:n {scheme-name}
%
%
% \iffalse
+%<*fancypar>
+% \fi
+%
+% \part{lwarp-fancypar.sty}
+%
+% \section{fancypar}
+%
+% \credits{Gonzalo Medina}
+%
+% \DescribePackage{fancypar}
+% \pkg{fancypar} is used as-is for print output,
+% and emulated for \HTML.
+%
+% \cs{NotebookPar} and related are used as-is inside a \env{lateximage},
+% \trouble[\CSS\ classes]{fancypar=\pkg{fancypar}}
+% but for \HTML\ these are emulated as a \element{div} of
+% class \attribute{NotebookPar}, etc.
+% For \HTML, the package options and the macro optional arguments are ignored.
+% The user must provide custom \CSS\ for each if visual effects are required.
+% See \cref{sec:csscustomization}.
+%
+% If using a custom paragraph style,
+% \trouble[custom styles]{fancypar=\pkg{fancypar}}
+% such as \cs{MyStylePar} from the documentation,
+% use the following to generate an \HTML\ \element{div} of class \attribute{MyStylePar}:
+% \begin{sourceverb}
+% ... (existing definiton of \MyStylePar, print version) ...
+% \begin{warpHTML}
+% \AddFancyparClass{MyStyle}
+% \end{warpHTML}
+% \end{sourceverb}
+% \cs{MyStylePar} is then modified to emulate \HTML.
+% An optional argument is allowed, which is ignored.
+%
+% \changes{v0.897}{2021/05/02}{\pkg{fancypar}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{fancypar}[2019/01/18]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\begin{warpHTML}
+\makeatletter
+
+\newcommand{\LWR@fancypar}[2]{%
+ \begin{BlockClass}{#1Par}
+ #2
+ \end{BlockClass}
+}
+
+\newcommand{\LWR@HTML@NotebookPar}[2][]{\LWR@fancypar{Notebook}{#2}}
+\LWR@formatted{NotebookPar}
+
+\newcommand{\LWR@HTML@ZebraPar}[2][]{\LWR@fancypar{Zebra}{#2}}
+\LWR@formatted{ZebraPar}
+
+\newcommand{\LWR@HTML@DashedPar}[2][]{\LWR@fancypar{Dashed}{#2}}
+\LWR@formatted{DashedPar}
+
+\newcommand{\LWR@HTML@MarkedPar}[2][]{\LWR@fancypar{Marked}{#2}}
+\LWR@formatted{MarkedPar}
+
+\newcommand{\LWR@HTML@UnderlinedPar}[2][]{\LWR@fancypar{Underlined}{#2}}
+\LWR@formatted{UnderlinedPar}
+
+
+\newcommand{\LWR@HTML@add@fancy@format}{}
+\LWR@formatted{add@fancy@format}
+
+
+\newcommand{\AddFancyparClass}[1]{%
+ \expandafter\newcommand\csname LWR@HTML@#1Par\endcsname[2][]{%
+ \LWR@fancypar{#1}{##2}%
+ }
+ \LWR@formatted{#1Par}
+}
+
+\makeatother
+\end{warpHTML}
+% \end{macrocode}
+%
+% \iffalse
+%</fancypar>
+% \fi
+%
+%
+%
+% \iffalse
%<*fancyref>
% \fi
%
@@ -55210,7 +55605,7 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackagePass{fixme}[2017/03/05]
+\LWR@ProvidesPackagePass{fixme}[2019/01/03]
% \end{macrocode}
%
% Restore \pkg{lwarp}'s version of \cs{@wrindex},
@@ -55231,35 +55626,41 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
}
% \end{macrocode}
%
-% Other modifications:
+% Other modifications.
+% Done \cs{AtBeginDocument} to hopefully work if the user customizes the layouts.
+% \changes{v0.897}{2021/04/19}{\pkg{fixme}: Modified \cs{AtBeginDocument}.}
% \begin{macrocode}
+\AtBeginDocument{
+
\def\FXFaceInlineHTMLStyle{font-weight:bold}
-\renewcommand*\FXLayoutInline[3]{ %
-\InlineClass[\FXFaceInlineHTMLStyle]{fixmeinline}%
- {\@fxtextstd{#1}{#2}{#3}}%
+\renewcommand*\FXLayoutInline[3]{ % space
+ \InlineClass[\FXFaceInlineHTMLStyle]{fixmeinline}%
+ {\@fxtextstd{#1}{#2}{#3}}%
}
\def\FXFaceEnvHTMLStyle{font-weight:bold}
\renewcommand*\FXEnvLayoutPlainBegin[2]{%
-\BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
-\ignorespaces#2 \fxnotename{#1}: \ignorespaces}
+ \BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
+ \ignorespaces#2 \fxnotename{#1}: \ignorespaces%
+}
\renewcommand*\FXEnvLayoutPlainEnd[2]{\endBlockClass}
\renewcommand*\FXEnvLayoutSignatureBegin[2]{%
-\BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
-\fxnotename{#1}: \ignorespaces}
+ \BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
+ \fxnotename{#1}: \ignorespaces%
+}
\renewcommand*\FXEnvLayoutSignatureEnd[2]{\@fxsignature{#2}\endBlockClass}
\def\FXFaceSignatureHTMLStyle{font-style:italic}
\DeclareRobustCommand*\@fxsignature[1]{%
-\ifthenelse{\equal{#1}{}}%
- {}%
- { -- {\InlineClass[\FXFaceSignatureHTMLStyle]{fixmesignature}{#1}}}%
+ \ifthenelse{\equal{#1}{}}%
+ {}%
+ { -- {\InlineClass[\FXFaceSignatureHTMLStyle]{fixmesignature}{#1}}}%
}
@@ -55268,6 +55669,8 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
\renewcommand\FXTargetLayoutPlain[2]{%
\InlineClass[\FXFaceTargetHTMLStyle]{fixmetarget}{#2}%
}
+
+}% \AtBeginDocument
% \end{macrocode}
% \iffalse
@@ -55410,6 +55813,10 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% |boxed|, or |ruled|, so \CSS\ may be used to format by float style as well.
% Default formatting by \CSS\ is provided for |ruled| and |boxed| styles.
%
+% Always declare a \cs{newfloat} before modifying it with \cs{floatname}, etc.
+% \trouble[not seem to be a floating environment]{float>not seem to be a floating environment}
+% \trouble{float=\pkg{float}}
+%
% \changes{v0.20}{2017/01/22}{\pkg{float}: Improved float caption type handling.}
%
% \codehtml
@@ -55417,8 +55824,9 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
\LWR@ProvidesPackageDrop{float}[2001/11/08]
% \end{macrocode}
+
% \begin{macro}{\LWR@floatstyle}
-% The default float style:
+% The default float style.
% \begin{macrocode}
\newcommand*{\LWR@floatstyle}{plain}
% \end{macrocode}
@@ -55437,11 +55845,13 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
{\DeclareFloatingEnvironment[fileext=#3,within=#4]{#1}}%
{\DeclareFloatingEnvironment[fileext=#3]{#1}}%
% \end{macrocode}
+%
% Remember the float style:
% \changes{v0.57}{2018/05/14}{\pkg{float}: Added float styles.}
% \begin{macrocode}
\csedef{LWR@floatstyle@#1}{\LWR@floatstyle}%
% \end{macrocode}
+%
% \pkg{newfloat} package automatically creates the \cs{listof} command
% for new floats, but \pkg{float} does not,
% so remove \cs{listof} here in case it is manually created later.
@@ -55449,6 +55859,7 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
\cslet{listof#1s}\relax%
\cslet{listof#1es}\relax%
% \end{macrocode}
+%
% Likesize, \pkg{newfloat} also creates \cs{l@<type>}, but \pkg{float} does not,
% so remove it here:
% \changes{v0.57}{2018/05/26}{\pkg{float}: Fix: Do not pre-define \cs{l@name}.}
@@ -55474,6 +55885,7 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \end{macrocode}
% \end{noindmacro}
+
% \begin{noindmacro}{\floatplacement} \marg{type} \marg{placement}
%
% Float placement is ignored.
@@ -55484,16 +55896,18 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \end{macrocode}
% \end{noindmacro}
+
% \begin{noindmacro}{\floatstyle} \marg{style}
%
% Remember the style for future floats:
% \begin{macrocode}
\newcommand{\floatstyle}[1]{%
\def\LWR@floatstyle{#1}%
-}
+}%
% \end{macrocode}
% \end{noindmacro}
+
% \begin{noindmacro}{\restylefloat} * \marg{type}
%
% Remember the style for this float:
@@ -55504,8 +55918,13 @@ 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.
+% See \cref{sec:listof} for the \cs{LWR@listof} command in the \pkg{lwarp} core.
+% \changes{v0.897}{2021/05/18}{\pkg{float}: Improved compatibility with \pkg{newfloat}, \pkg{keyfloat}.}
+% \begin{macrocode}
+\newcommand{\listof}{\LWR@listof}
+% \end{macrocode}
% \end{noindmacro}
% \iffalse
@@ -57119,6 +57538,54 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
%
%
%
+% \iffalse
+%<*froufrou>
+% \fi
+%
+% \part{lwarp-froufrou.sty}
+%
+% \section{froufrou}
+%
+% \credits{Nelson Lago}
+%
+% \DescribePackage{froufrou}
+% \pkg{froufrou} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.897}{2021/05/02}{\pkg{froufrou}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{froufrou}[2020/12/22]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\ExplSyntaxOn
+\xpretocmd{\setfroufrou}
+ {\edef\LWR@latestfroufrou{\detokenize{#1}}}
+ {}
+ {\LWR@patcherror{froufrou}{setfroufrou}}
+\ExplSyntaxOff
+
+\xpatchcmd{\@realfroufrou}
+ {\@froufrouOrnament}
+ {%
+ \begin{center}
+ \begin{lateximage}*[froufrou][\LWR@latestfroufrou]%
+ \@froufrouOrnament%
+ \end{lateximage}
+ \end{center}
+ }
+ {}
+ {\LWR@patcherror{froufrou}{@realfroufrou}}
+% \end{macrocode}
+%
+% \iffalse
+%</froufrou>
+% \fi
+%
+%
+%
%
% \iffalse
%<*ftcap>
@@ -58429,9 +58896,9 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
% \begin{noindmacro}{\LWR@includegraphicsb} * \oarg{2: options} \oarg{3: options} \marg{4: filename}
%
-% \pkg{graphics} syntax is \cs{includegraphics} * \oarg{llx,lly} \oarg{urx,ury} \marg{file}
+% \pkg{graphics} syntax is \cs{includegraphics} * \oarg{llx,lly} \oarg{urx,ury} \marg{filename}
%
-% \pkg{graphicx} syntax is \cs{includegraphics} \oarg{key values} \marg{file}
+% \pkg{graphicx} syntax is \cs{includegraphics} \oarg{key values} \marg{filename}
%
% If |#3| is empty, only one optional argument was given, thus \pkg{graphicx} syntax.
%
@@ -58507,6 +58974,10 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space
%
% Fully expand and detokenize the filename,
% changing the file extension to \filenm{.svg} if necessary.
+%
+% Note that uppercase file extensions are detected and reported as lowercase,
+% so \pkg{lwarp} can only report to the browser lowercase extensions,
+% so all images must have lowercase file extensions.
% \changes{v0.59}{2018/08/28}{\pkg{graphics}: Fix: Expand filename.}
% \changes{v0.61}{2018/10/01}{\pkg{graphics}: Set keys before using filename, for \pkg{epsfig}.}
% \begin{macrocode}
@@ -71852,6 +72323,36 @@ do not attempt to patch lwarp's version of `nameref'.)\MessageBreak
%
%
%
+% \iffalse
+%<*pbalance>
+% \fi
+%
+% \part{lwarp-pbalance.sty}
+%
+% \section{pbalance}
+%
+% \DescribePackage{pbalance}
+% \pkg{pbalance} is ignored.
+%
+% \changes{v0.897}{2021/04/18}{\pkg{pbalance}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\RequirePackage{balance}
+
+\LWR@ProvidesPackageDrop{pbalance}[2020/12/16]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand\shrinkLastPage[1]{}
+% \end{macrocode}
+%
+% \iffalse
+%</pbalance>
+% \fi
+%
+%
%
%
% \iffalse
@@ -77113,7 +77614,64 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \credits{Joseph Wright}
%
% \DescribePackage{siunitx}
-% \pkg{siunitx} is patched for use by \pkg{lwarp},
+% \pkg{siunitx-v2} is patched for use by \pkg{lwarp},
+% and is emulated for \brand{MathJax}.
+% Use as:
+% \begin{sourceverb}
+% \usepackage{siunitx}[=v2]
+% \end{sourceverb}
+%
+% \pkg{siunitx} v3 is not yet supported.
+%
+% ^^A \limitssiunitx
+%
+% \changes{v0.897}{2021/05/23}{\pkg{siunitx}: Rollback for v2.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+
+\DeclareRelease{2}{2010-05-23}{lwarp-siunitx-v2.sty}
+\DeclareRelease{v2}{2010-05-23}{lwarp-siunitx-v2.sty}
+\DeclareCurrentRelease{}{2021-05-17}
+
+\PackageWarningNoLine{lwarp}
+ {%
+ **************\MessageBreak
+ Siunitx version 3 is not yet supported by Lwarp.\MessageBreak
+ V2 emulation is used here.\MessageBreak
+ **************
+ }
+
+\RequirePackage{xcolor}% for \convertcolorspec
+
+% \LWR@ProvidesPackagePass{siunitx}[2021-05-21]
+
+\RequirePackage{siunitx-v2}
+% \end{macrocode}
+
+% \iffalse
+%</siunitx>
+% \fi
+%
+%
+%
+%
+%
+% \iffalse
+%<*siunitx-v2>
+% \fi
+%
+% \part{lwarp-siunitx-v2.sty}
+
+% \section{siunitx-v2}
+%
+% \credits{Joseph Wright}
+%
+% \DescribePackage{siunitx-v2}
+% \pkg{siunitx-v2} is patched for use by \pkg{lwarp},
% and is emulated for \brand{MathJax}.
%
% \limitssiunitx
@@ -77122,24 +77680,25 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \changes{v0.37}{2017/08/17}{\pkg{siunitx}: Improved symbol support.}
% \changes{v0.38}{2017/08/26}{\pkg{siunitx}: Removed from \pkg{lwarp} core.}
% \changes{v0.50}{2018/10/23}{\pkg{siunitx}: Fix: Loads \pkg{xcolor}.}
+% \changes{v0.897}{2021/05/23}{\pkg{siunitx-v2}: Rollback for v2.}
%
% \codehtml
%
% \begin{macrocode}
\RequirePackage{xcolor}% for \convertcolorspec
-\LWR@ProvidesPackagePass{siunitx}[2018/05/17]
+\LWR@ProvidesPackagePass{siunitx-v2}[2021-04-17]
% \end{macrocode}
% \changes{v0.50}{2018/02/24}{\pkg{siunitx}: Improved units.}
% \begin{macrocode}
\AtBeginDocument{% in case textcomp was not loaded
-\DeclareSIUnit\bohr{\textit{a}\textsubscript{0}}
-\DeclareSIUnit\clight{\textit{c}\textsubscript{0}}
-\DeclareSIUnit\elementarycharge{\textit{e}}
-\DeclareSIUnit\electronmass{\textit{m}\textsubscript{e}}
-\DeclareSIUnit\hartree{\textit{E}\textsubscript{h}}
-\DeclareSIUnit\planckbar{\LWR@siunitx@textplanckbar}
+ \DeclareSIUnit\bohr{\textit{a}\textsubscript{0}}
+ \DeclareSIUnit\clight{\textit{c}\textsubscript{0}}
+ \DeclareSIUnit\elementarycharge{\textit{e}}
+ \DeclareSIUnit\electronmass{\textit{m}\textsubscript{e}}
+ \DeclareSIUnit\hartree{\textit{E}\textsubscript{h}}
+ \DeclareSIUnit\planckbar{\LWR@siunitx@textplanckbar}
}% AtBeginDocument
% \end{macrocode}
%
@@ -77158,44 +77717,53 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% Modified to set set \HTML\ \cs{textcolor} if not black:
% \changes{v0.48}{2018/02/14}{\pkg{siunitx}: Improved color output.}
% \begin{macrocode}
-\cs_undefine:N \__siunitx_print_aux:
-\cs_new_protected:Npn \__siunitx_print_aux:
+\cs_set_protected:Npn \__siunitx_print_aux:
{
\text
{
\__siunitx_ensure_ltr:n
{
- \color@begingroup
+% \end{macrocode}
+% \cs{color@endgroup} was adding a paragraph break, so use a regular group instead.
+% \changes{v0.897}{2021/05/23}{\pkg{siunitx-v2}: Regular group instead of color group.}
+% \begin{macrocode}
+% \color@begingroup
+ \begingroup% lwarp
+%
\__siunitx_print_color:
\__siunitx_font_shape:
\__siunitx_font_weight:
\use:c
{
- @@_ \l__siunitx_print_type_tl _
+ __siunitx_ \l__siunitx_print_type_tl _
text \l__siunitx_font_family_tl :
}
- \bool_if:NTF \l__siunitx_font_math_mode_bool
- { \__siunitx_print_math: }
- {
- \LWR@findcurrenttextcolor% lwarp
- \ifdefstring{\LWR@tempcolor}{000000}% lwarp
- {\__siunitx_print_text:}% lwarp
- {% lwarp
- \LWR@textcurrentcolor{% lwarp
- \__siunitx_print_text:
- }% lwarp
- }% lwarp
- }
- \color@endgroup
+% \end{macrocode}
+% \changes{v0.897}{2021/05/23}{\pkg{siunitx-v2}: Do not use math mode.}
+% \begin{macrocode}
+% \bool_if:NTF \l__siunitx_font_math_mode_bool
+% {
+% \__siunitx_print_math:
+% }
+ {
+ \LWR@findcurrenttextcolor% lwarp
+ \ifdefstring{\LWR@tempcolor}{000000}% lwarp
+ {\__siunitx_print_text:}% lwarp
+ {% lwarp
+ \LWR@textcurrentcolor{% lwarp
+ \__siunitx_print_text:
+ }% lwarp
+ }% lwarp
+ }
+% \color@endgroup
+ \endgroup% lwarp
+%
}
}
}
-
-\cs_undefine:N \__siunitx_set_math_fam:n
-\cs_new_protected:Npn \__siunitx_set_math_fam:n #1 {
- \int_new:c { c__siunitx_math #1 _int }
- \group_begin:% lwarp
+\cs_set_protected:Npn \__siunitx_set_math_fam:n #1 {
+ \group_begin:
\LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
\LetLtxMacro\mbox\LWR@print@mbox% lwarp
\hbox_set:Nn \l__siunitx_tmp_box
@@ -77204,15 +77772,15 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
{
\use:c { math #1 }
{
- \int_gset:cn { c__siunitx_math #1 _int } { \fam }
+ \int_const:cn { c__siunitx_math #1 _int } { \fam }
}
}
}
- \group_end:% lwarp
+ \group_end:
}
-\cs_undefine:N \__siunitx_combined_output:n
-\cs_new_protected:Npn \__siunitx_combined_output:n #1 {
+\cs_set_protected:Npn \__siunitx_combined_output:n #1 {
+%
\group_begin:% lwarp
\LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
\LetLtxMacro\mbox\LWR@print@mbox% lwarp
@@ -77243,10 +77811,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\endgroup% lwarp
\__siunitx_unit_output_print:
}
- \group_end:% lwarp
+ \group_end:% lwarp
+%
}
% \end{macrocode}
%
+%
% For |parse-numbers=false|:
% \changes{v0.79}{2020/01/21}{\pkg{siunitx}: Improved \brand{MathJax}.}
% \begin{macrocode}
@@ -77269,7 +77839,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\LWR@subsingledollar{% lwarp
\textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
}{siunitx}{%
- \__siunitx_print:nn { number } {
+ \__siunitx_print:nn { number } {%
\LWR@origensuredmath{#1}%
} % lwarp
}% lwarp
@@ -77294,7 +77864,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
}{siunitx}{%
\__siunitx_print:nn { number } {
\LWR@origensuredmath{#1}%
- } % lwarp
+ }% lwarp
}% lwarp
\endgroup% lwarp
\__siunitx_unit_output_print:
@@ -77302,11 +77872,11 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
}
%
% \end{macrocode}
+%
% For quotients, the fraction code is replaced by the symbol code:
% \changes{v0.48}{2018/02/14}{\pkg{siunitx}: Changes fraction to symbol.}
% \begin{macrocode}
-\cs_undefine:N \__siunitx_number_output_quotient_fraction:
-\cs_new_protected:Npn \__siunitx_number_output_quotient_fraction: {
+\cs_set_protected:Npn \__siunitx_number_output_quotient_fraction: {
\bool_set_true:N \l__siunitx_number_compound_bool
\__siunitx_number_output_quotient_aux_i:
\tl_set_eq:NN \l__siunitx_number_out_tl
@@ -77317,11 +77887,11 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\__siunitx_number_output_single_aux:
}
% \end{macrocode}
+%
% For units, the fraction code is replaced by the symbol code:
% \changes{v0.48}{2018/02/14}{\pkg{siunitx}: Changes fraction to symbol.}
% \begin{macrocode}
-\cs_undefine:N \__siunitx_unit_format_fraction_fraction:
-\cs_new_protected:Npn \__siunitx_unit_format_fraction_fraction: {
+\cs_set_protected:Npn \__siunitx_unit_format_fraction_fraction: {
\__siunitx_unit_format_fraction_symbol_aux:
\int_compare:nNnT { \l__siunitx_unit_denominator_int } > { 1 }
{
@@ -77336,10 +77906,10 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\tl_put_right:NV \l__siunitx_unit_tl \l__siunitx_unit_denominator_tl
}
% \end{macrocode}
+%
% \changes{v0.50}{2018/02/24}{\pkg{siunitx}: Improved units.}
% \begin{macrocode}
-\cs_undefine:N \__siunitx_angle_print_astronomy_aux:
-\cs_new_protected:Npn \__siunitx_angle_print_astronomy_aux: {
+\cs_set_protected:Npn \__siunitx_angle_print_astronomy_aux: {
\prop_get:NnNT \l__siunitx_number_out_prop { mantissa-integer }
\l__siunitx_tmpa_tl
{ \__siunitx_print:nV { number } \l__siunitx_tmpa_tl }
@@ -77378,8 +77948,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
% \changes{v0.79}{2020/01/20}{\pkg{siunitx}: Fix: \cs{square}, \cs{cubed}.}
% \begin{macrocode}
-\cs_undefine:N \__siunitx_textsuperscript:n
-\cs_new_protected:Npn \__siunitx_textsuperscript:n #1 {\textsuperscript{#1}}
+\cs_set_protected:Npn \__siunitx_textsuperscript:n #1 {\textsuperscript{#1}}
% \end{macrocode}
%
% \begin{noindmacro}{\num} \oarg{options} \marg{value}
@@ -77447,6 +78016,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \end{macrocode}
% \end{noindmacro}
%
+%
% \begin{noindmacro}{\SIrange} \oarg{options} \marg{value1} \marg{value2} \marg{unit}
% \begin{macrocode}
\RenewDocumentCommand{\SIrange}{o m m m}
@@ -77938,13 +78508,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \end{macrocode}
% \iffalse
-%</siunitx>
+%</siunitx-v2>
% \fi
%
%
%
%
-%
% \iffalse
%<*skmath>
% \fi
@@ -84384,7 +84953,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\@ifundefined{c@#3depth}{\newcounter{#3depth}}{}%
\setcounter{#3depth}{1}%
\@namedef{cftmark#3}{}%
- \@namedef{listof#2}{\listof{#2}{#4}}%
+ \@namedef{listof#2}{\LWR@listof{#2}{#4}}%
\@namedef{@cftmake#3title}{}%
\expandafter\newlength\csname cftbefore#3titleskip\endcsname%
\expandafter\newlength\csname cftafter#3titleskip\endcsname%
@@ -89871,7 +90440,7 @@ height:\LWR@printlength{\LWR@tempheight}%
\@ifundefined{c@#3depth}{\newcounter{#3depth}}{}%
\setcounter{#3depth}{1}%
\@namedef{#3mark}{}%
- \@namedef{#2}{\listof{#2}{#4}}%
+ \@namedef{#2}{\LWR@listof{#2}{#4}}%
\@namedef{@cftmake#3title}{}%
\@ifundefined{cftbefore#3titleskip}{%
\expandafter\newlength\csname cftbefore#3titleskip\endcsname%
@@ -90170,6 +90739,7 @@ height:\LWR@printlength{\LWR@tempheight}%
\renewcommand*{\epigraphpicture}{}
% \end{macrocode}
%
+%
% \subsection{Poetry}
%
% \begin{macrocode}
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.ins b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
index 0ce71e74aeb..498f83ae47c 100644
--- a/Master/texmf-dist/source/latex/lwarp/lwarp.ins
+++ b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
@@ -103,6 +103,7 @@ version 2005/12/01 or later.
\file{lwarp-caption.sty}{\from{lwarp.dtx}{caption}}
\file{lwarp-caption3.sty}{\from{lwarp.dtx}{caption3}}
\file{lwarp-cases.sty}{\from{lwarp.dtx}{cases}}
+\file{lwarp-centerlastline.sty}{\from{lwarp.dtx}{centerlastline}}
\file{lwarp-centernot.sty}{\from{lwarp.dtx}{centernot}}
\file{lwarp-changebar.sty}{\from{lwarp.dtx}{changebar}}
\file{lwarp-changelayout.sty}{\from{lwarp.dtx}{changelayout}}
@@ -139,6 +140,7 @@ version 2005/12/01 or later.
\file{lwarp-dblfnote.sty}{\from{lwarp.dtx}{dblfnote}}
\file{lwarp-dcolumn.sty}{\from{lwarp.dtx}{dcolumn}}
\file{lwarp-decimal.sty}{\from{lwarp.dtx}{decimal}}
+\file{lwarp-decorule.sty}{\from{lwarp.dtx}{decorule}}
\file{lwarp-diagbox.sty}{\from{lwarp.dtx}{diagbox}}
\file{lwarp-dingbat.sty}{\from{lwarp.dtx}{dingbat}}
\file{lwarp-DotArrow.sty}{\from{lwarp.dtx}{DotArrow}}
@@ -180,6 +182,7 @@ version 2005/12/01 or later.
\file{lwarp-extramarks.sty}{\from{lwarp.dtx}{extramarks}}
\file{lwarp-fancybox.sty}{\from{lwarp.dtx}{fancybox}}
\file{lwarp-fancyhdr.sty}{\from{lwarp.dtx}{fancyhdr}}
+\file{lwarp-fancypar.sty}{\from{lwarp.dtx}{fancypar}}
\file{lwarp-fancyref.sty}{\from{lwarp.dtx}{fancyref}}
\file{lwarp-fancytabs.sty}{\from{lwarp.dtx}{fancytabs}}
\file{lwarp-fancyvrb.sty}{\from{lwarp.dtx}{fancyvrb}}
@@ -220,6 +223,7 @@ version 2005/12/01 or later.
\file{lwarp-fouridx.sty}{\from{lwarp.dtx}{fouridx}}
\file{lwarp-fourier.sty}{\from{lwarp.dtx}{fourier}}
\file{lwarp-framed.sty}{\from{lwarp.dtx}{framed}}
+\file{lwarp-froufrou.sty}{\from{lwarp.dtx}{froufrou}}
\file{lwarp-ftcap.sty}{\from{lwarp.dtx}{ftcap}}
\file{lwarp-ftnright.sty}{\from{lwarp.dtx}{ftnright}}
\file{lwarp-fullminipage.sty}{\from{lwarp.dtx}{fullminipage}}
@@ -381,6 +385,7 @@ version 2005/12/01 or later.
\file{lwarp-parcolumns.sty}{\from{lwarp.dtx}{parcolumns}}
\file{lwarp-parnotes.sty}{\from{lwarp.dtx}{parnotes}}
\file{lwarp-parskip.sty}{\from{lwarp.dtx}{parskip}}
+\file{lwarp-pbalance.sty}{\from{lwarp.dtx}{pbalance}}
\file{lwarp-pbox.sty}{\from{lwarp.dtx}{pbox}}
\file{lwarp-pdfcol.sty}{\from{lwarp.dtx}{pdfcol}}
\file{lwarp-pdfcolfoot.sty}{\from{lwarp.dtx}{pdfcolfoot}}
@@ -472,6 +477,7 @@ version 2005/12/01 or later.
\file{lwarp-simplebnf.sty}{\from{lwarp.dtx}{simplebnf}}
\file{lwarp-SIunits.sty}{\from{lwarp.dtx}{SIunits}}
\file{lwarp-siunitx.sty}{\from{lwarp.dtx}{siunitx}}
+\file{lwarp-siunitx-v2.sty}{\from{lwarp.dtx}{siunitx-v2}}
\file{lwarp-skmath.sty}{\from{lwarp.dtx}{skmath}}
\file{lwarp-slantsc.sty}{\from{lwarp.dtx}{slantsc}}
\file{lwarp-slashed.sty}{\from{lwarp.dtx}{slashed}}
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-centerlastline.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-centerlastline.sty
new file mode 100644
index 00000000000..b9c7afa2c0e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-centerlastline.sty
@@ -0,0 +1,23 @@
+%%
+%% This is file `lwarp-centerlastline.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `centerlastline')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR@ProvidesPackageDrop{centerlastline}[2020/10/12]
+\providecommand{\centerlastline}{}
+\def\endcenterlastline{\par}
+\endinput
+%%
+%% End of file `lwarp-centerlastline.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-decorule.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-decorule.sty
new file mode 100644
index 00000000000..dad605de16f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-decorule.sty
@@ -0,0 +1,30 @@
+%%
+%% This is file `lwarp-decorule.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `decorule')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR@ProvidesPackagePass{decorule}[2020/04/01]
+\xpretocmd{\decorule}
+ {\begin{lateximage}*[decorule]}
+ {}
+ {\LWR@patcherror{decorule}{decorule A}}
+
+\xapptocmd{\decorule}
+ {\end{lateximage}}
+ {}
+ {\LWR@patcherror{decorule}{decorule B}}
+\endinput
+%%
+%% End of file `lwarp-decorule.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-fancypar.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-fancypar.sty
new file mode 100644
index 00000000000..8fa743bbc46
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-fancypar.sty
@@ -0,0 +1,57 @@
+%%
+%% This is file `lwarp-fancypar.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `fancypar')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR@ProvidesPackagePass{fancypar}[2019/01/18]
+\begin{warpHTML}
+\makeatletter
+
+\newcommand{\LWR@fancypar}[2]{%
+ \begin{BlockClass}{#1Par}
+ #2
+ \end{BlockClass}
+}
+
+\newcommand{\LWR@HTML@NotebookPar}[2][]{\LWR@fancypar{Notebook}{#2}}
+\LWR@formatted{NotebookPar}
+
+\newcommand{\LWR@HTML@ZebraPar}[2][]{\LWR@fancypar{Zebra}{#2}}
+\LWR@formatted{ZebraPar}
+
+\newcommand{\LWR@HTML@DashedPar}[2][]{\LWR@fancypar{Dashed}{#2}}
+\LWR@formatted{DashedPar}
+
+\newcommand{\LWR@HTML@MarkedPar}[2][]{\LWR@fancypar{Marked}{#2}}
+\LWR@formatted{MarkedPar}
+
+\newcommand{\LWR@HTML@UnderlinedPar}[2][]{\LWR@fancypar{Underlined}{#2}}
+\LWR@formatted{UnderlinedPar}
+
+\newcommand{\LWR@HTML@add@fancy@format}{}
+\LWR@formatted{add@fancy@format}
+
+\newcommand{\AddFancyparClass}[1]{%
+ \expandafter\newcommand\csname LWR@HTML@#1Par\endcsname[2][]{%
+ \LWR@fancypar{#1}{##2}%
+ }
+ \LWR@formatted{#1Par}
+}
+
+\makeatother
+\end{warpHTML}
+\endinput
+%%
+%% End of file `lwarp-fancypar.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty
index bc50d1db38f..36bfb5d7c38 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-fixme.sty
@@ -16,7 +16,7 @@
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
-\LWR@ProvidesPackagePass{fixme}[2017/03/05]
+\LWR@ProvidesPackagePass{fixme}[2019/01/03]
\let\@wrindex\LWR@wrindex
\newcommand{\ext@fixme}{lox}
@@ -25,33 +25,37 @@
{\LWR@nameref{\BaseJobname-autopage-\arabic{LWR@nextautopage}} --- #1}%
{#2}
}
+\AtBeginDocument{
+
\def\FXFaceInlineHTMLStyle{font-weight:bold}
-\renewcommand*\FXLayoutInline[3]{ %
-\InlineClass[\FXFaceInlineHTMLStyle]{fixmeinline}%
- {\@fxtextstd{#1}{#2}{#3}}%
+\renewcommand*\FXLayoutInline[3]{ % space
+ \InlineClass[\FXFaceInlineHTMLStyle]{fixmeinline}%
+ {\@fxtextstd{#1}{#2}{#3}}%
}
\def\FXFaceEnvHTMLStyle{font-weight:bold}
\renewcommand*\FXEnvLayoutPlainBegin[2]{%
-\BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
-\ignorespaces#2 \fxnotename{#1}: \ignorespaces}
+ \BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
+ \ignorespaces#2 \fxnotename{#1}: \ignorespaces%
+}
\renewcommand*\FXEnvLayoutPlainEnd[2]{\endBlockClass}
\renewcommand*\FXEnvLayoutSignatureBegin[2]{%
-\BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
-\fxnotename{#1}: \ignorespaces}
+ \BlockClass[\FXFaceEnvHTMLStyle]{fixmebold}
+ \fxnotename{#1}: \ignorespaces%
+}
\renewcommand*\FXEnvLayoutSignatureEnd[2]{\@fxsignature{#2}\endBlockClass}
\def\FXFaceSignatureHTMLStyle{font-style:italic}
\DeclareRobustCommand*\@fxsignature[1]{%
-\ifthenelse{\equal{#1}{}}%
- {}%
- { -- {\InlineClass[\FXFaceSignatureHTMLStyle]{fixmesignature}{#1}}}%
+ \ifthenelse{\equal{#1}{}}%
+ {}%
+ { -- {\InlineClass[\FXFaceSignatureHTMLStyle]{fixmesignature}{#1}}}%
}
\def\FXFaceTargetHTMLStyle{font-style:italic}
@@ -60,6 +64,8 @@
\InlineClass[\FXFaceTargetHTMLStyle]{fixmetarget}{#2}%
}
+}% \AtBeginDocument
+
\endinput
%%
%% End of file `lwarp-fixme.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-float.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-float.sty
index add1c1bf03f..4486c628cc9 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp-float.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-float.sty
@@ -45,12 +45,13 @@
\newcommand{\floatstyle}[1]{%
\def\LWR@floatstyle{#1}%
-}
+}%
\NewDocumentCommand{\restylefloat}{s m}{%
\csedef{LWR@floatstyle@#2}{\LWR@floatstyle}%
}
+\newcommand{\listof}{\LWR@listof}
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-froufrou.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-froufrou.sty
new file mode 100644
index 00000000000..c6456376ca9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-froufrou.sty
@@ -0,0 +1,39 @@
+%%
+%% This is file `lwarp-froufrou.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `froufrou')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR@ProvidesPackagePass{froufrou}[2020/12/22]
+\ExplSyntaxOn
+\xpretocmd{\setfroufrou}
+ {\edef\LWR@latestfroufrou{\detokenize{#1}}}
+ {}
+ {\LWR@patcherror{froufrou}{setfroufrou}}
+\ExplSyntaxOff
+
+\xpatchcmd{\@realfroufrou}
+ {\@froufrouOrnament}
+ {%
+ \begin{center}
+ \begin{lateximage}*[froufrou][\LWR@latestfroufrou]%
+ \@froufrouOrnament%
+ \end{lateximage}
+ \end{center}
+ }
+ {}
+ {\LWR@patcherror{froufrou}{@realfroufrou}}
+\endinput
+%%
+%% End of file `lwarp-froufrou.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty
index 54127dc6423..6907679f15d 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-patch-memoir.sty
@@ -687,7 +687,7 @@
\@ifundefined{c@#3depth}{\newcounter{#3depth}}{}%
\setcounter{#3depth}{1}%
\@namedef{#3mark}{}%
- \@namedef{#2}{\listof{#2}{#4}}%
+ \@namedef{#2}{\LWR@listof{#2}{#4}}%
\@namedef{@cftmake#3title}{}%
\@ifundefined{cftbefore#3titleskip}{%
\expandafter\newlength\csname cftbefore#3titleskip\endcsname%
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-pbalance.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-pbalance.sty
new file mode 100644
index 00000000000..9f8a28e08b5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-pbalance.sty
@@ -0,0 +1,24 @@
+%%
+%% This is file `lwarp-pbalance.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `pbalance')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\RequirePackage{balance}
+
+\LWR@ProvidesPackageDrop{pbalance}[2020/12/16]
+\newcommand\shrinkLastPage[1]{}
+\endinput
+%%
+%% End of file `lwarp-pbalance.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx-v2.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx-v2.sty
new file mode 100644
index 00000000000..5009c7e3032
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx-v2.sty
@@ -0,0 +1,616 @@
+%%
+%% This is file `lwarp-siunitx-v2.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx (with options: `siunitx-v2')
+%% This is a generated file.
+%% Copyright 2016-2020 Brian Dunn
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+
+\RequirePackage{xcolor}% for \convertcolorspec
+
+\LWR@ProvidesPackagePass{siunitx-v2}[2021-04-17]
+
+\AtBeginDocument{% in case textcomp was not loaded
+ \DeclareSIUnit\bohr{\textit{a}\textsubscript{0}}
+ \DeclareSIUnit\clight{\textit{c}\textsubscript{0}}
+ \DeclareSIUnit\elementarycharge{\textit{e}}
+ \DeclareSIUnit\electronmass{\textit{m}\textsubscript{e}}
+ \DeclareSIUnit\hartree{\textit{E}\textsubscript{h}}
+ \DeclareSIUnit\planckbar{\LWR@siunitx@textplanckbar}
+}% AtBeginDocument
+
+\ExplSyntaxOn
+\cs_set_protected:Npn \__siunitx_print_aux:
+ {
+ \text
+ {
+ \__siunitx_ensure_ltr:n
+ {
+ \begingroup% lwarp
+ \__siunitx_print_color:
+ \__siunitx_font_shape:
+ \__siunitx_font_weight:
+ \use:c
+ {
+ __siunitx_ \l__siunitx_print_type_tl _
+ text \l__siunitx_font_family_tl :
+ }
+ {
+ \LWR@findcurrenttextcolor% lwarp
+ \ifdefstring{\LWR@tempcolor}{000000}% lwarp
+ {\__siunitx_print_text:}% lwarp
+ {% lwarp
+ \LWR@textcurrentcolor{% lwarp
+ \__siunitx_print_text:
+ }% lwarp
+ }% lwarp
+ }
+ \endgroup% lwarp
+ }
+ }
+ }
+
+\cs_set_protected:Npn \__siunitx_set_math_fam:n #1 {
+ \group_begin:
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \hbox_set:Nn \l__siunitx_tmp_box
+ {
+ \ensuremath
+ {
+ \use:c { math #1 }
+ {
+ \int_const:cn { c__siunitx_math #1 _int } { \fam }
+ }
+ }
+ }
+ \group_end:
+}
+
+\cs_set_protected:Npn \__siunitx_combined_output:n #1 {
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \bool_if:NTF \l__siunitx_number_parse_bool
+ {
+ \tl_clear:N \l__siunitx_number_out_tl
+ \bool_set_false:N \l__siunitx_number_compound_bool
+ \__siunitx_number_output_parse:n {#1}
+ }
+ {
+ \__siunitx_unit_output_pre_print:
+ \begingroup% lwarp
+ \boolfalse{mathjax}% lwarp
+ \LWR@subsingledollar{% lwarp
+ \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
+ }{siunitx}{%
+ \__siunitx_print:nn { number } {%
+ \LWR@origensuredmath{#1}%
+ }%
+ }% lwarp
+ \endgroup% lwarp
+ \__siunitx_unit_output_print:
+ }
+ \group_end:% lwarp
+}
+\cs_set_protected:Npn \__siunitx_range_numbers_aux:n #1
+ {
+ \bool_if:NTF \l__siunitx_number_parse_bool
+ {
+ \tl_clear:N \l__siunitx_number_out_tl
+ \tl_clear:N \l__siunitx_number_out_saved_tl
+ \bool_set_false:N \l__siunitx_number_compound_bool
+ \__siunitx_number_output_parse:n {#1}
+ \bool_if:NT \l__siunitx_number_compound_bool
+ { \msg_error:nnx { siunitx } { multi-part-range } {#1} }
+ }
+ {
+ \__siunitx_unit_output_pre_print:
+ \begingroup% lwarp
+ \boolfalse{mathjax}% lwarp
+ \LWR@subsingledollar{% lwarp
+ \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
+ }{siunitx}{%
+ \__siunitx_print:nn { number } {%
+ \LWR@origensuredmath{#1}%
+ } % lwarp
+ }% lwarp
+ \endgroup% lwarp
+ \__siunitx_unit_output_print:
+ }
+ }
+\cs_set_protected:Npn \__siunitx_angle_print_direct_aux:nn #1#2 {
+ \tl_if_empty:nF {#1}
+ {
+ \tl_set:Nn \l__siunitx_unit_tl {#2}
+ \begingroup% lwarp
+ \boolfalse{mathjax}% lwarp
+ \LWR@subsingledollar{% lwarp
+ \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
+ }{siunitx}{%
+ \__siunitx_print:nn { number } {
+ \LWR@origensuredmath{#1}%
+ }% lwarp
+ }% lwarp
+ \endgroup% lwarp
+ \__siunitx_unit_output_print:
+ }
+}
+\cs_set_protected:Npn \__siunitx_number_output_quotient_fraction: {
+ \bool_set_true:N \l__siunitx_number_compound_bool
+ \__siunitx_number_output_quotient_aux_i:
+ \tl_set_eq:NN \l__siunitx_number_out_tl
+ \l__siunitx_number_numerator_tl
+ \tl_put_right:NV \l__siunitx_number_out_tl \l__siunitx_output_quotient_tl
+ \tl_put_right:NV \l__siunitx_number_out_tl
+ \l__siunitx_number_denominator_tl
+ \__siunitx_number_output_single_aux:
+}
+\cs_set_protected:Npn \__siunitx_unit_format_fraction_fraction: {
+ \__siunitx_unit_format_fraction_symbol_aux:
+ \int_compare:nNnT { \l__siunitx_unit_denominator_int } > { 1 }
+ {
+ \bool_if:NT \l__siunitx_unit_denominator_bracket_bool
+ {
+ \tl_put_left:NV \l__siunitx_unit_denominator_tl \l__siunitx_bracket_open_tl
+ \tl_put_right:NV \l__siunitx_unit_denominator_tl \l__siunitx_bracket_close_tl
+ }
+ }
+ \tl_set_eq:NN \l__siunitx_unit_tl \l__siunitx_unit_numerator_tl
+ \tl_put_right:NV \l__siunitx_unit_tl \l__siunitx_per_symbol_tl
+ \tl_put_right:NV \l__siunitx_unit_tl \l__siunitx_unit_denominator_tl
+}
+\cs_set_protected:Npn \__siunitx_angle_print_astronomy_aux: {
+ \prop_get:NnNT \l__siunitx_number_out_prop { mantissa-integer }
+ \l__siunitx_tmpa_tl
+ { \__siunitx_print:nV { number } \l__siunitx_tmpa_tl }
+ \ifnumcomp{\value{LWR@lateximagedepth}}{>}{0}% lwarp
+ {% lateximage
+ \hbox_set:Nn \l__siunitx_angle_marker_box
+ {
+ \__siunitx_print:nn { number } { { \l__siunitx_output_decimal_tl } }
+ }
+ \hbox_set:Nn \l__siunitx_angle_unit_box
+ {
+ \__siunitx_print:nV { unit } \l__siunitx_unit_tl
+ \skip_horizontal:n { -\scriptspace }
+ }
+ \__siunitx_angle_print_astronomy_aux:n { marker }
+ \__siunitx_angle_print_astronomy_aux:n { unit }
+ \hbox_set:Nn \l__siunitx_angle_marker_box
+ {
+ \box_use:N \l__siunitx_angle_marker_box
+ \box_use:N \l__siunitx_angle_unit_box
+ }
+ \dim_compare:nNnTF
+ { \l__siunitx_angle_marker_dim } > { \l__siunitx_angle_unit_dim }
+ { \__siunitx_angle_print_astronomy_marker: }
+ { \__siunitx_angle_print_astronomy_unit: }
+ }% lateximage
+ {% not a lateximage
+ \__siunitx_print:nV { unit } \l__siunitx_unit_tl
+ \__siunitx_print:nn { number } { { \l__siunitx_output_decimal_tl } }
+ }% not a lateximage
+ \prop_get:NnNT \l__siunitx_number_out_prop { mantissa-decimal }
+ \l__siunitx_tmpa_tl
+ { \__siunitx_print:nV { number } \l__siunitx_tmpa_tl }
+}
+\cs_set_protected:Npn \__siunitx_textsuperscript:n #1 {\textsuperscript{#1}}
+\RenewDocumentCommand \num { o m } {
+ \leavevmode
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \bool_set_false:N \l__siunitx_font_set_bool
+ \IfNoValueF {#1}
+ { \keys_set:nn { siunitx } {#1} }
+ \__siunitx_number_output:n {#2}
+ \group_end:% lwarp
+}
+\RenewDocumentCommand \numrange { o m m } {
+ \leavevmode
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \bool_set_false:N \l__siunitx_font_set_bool
+ \IfNoValueF {#1}
+ { \keys_set:nn { siunitx } {#1} }
+ \__siunitx_range_numbers:nn {#2} {#3}
+ \group_end:% lwarp
+}
+\RenewDocumentCommand \ang { o > { \SplitArgument { 2 } { ; } } m } {
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \IfNoValueF {#1}
+ { \keys_set:nn { siunitx } {#1} }
+ \__siunitx_angle_output:nnn #2
+ \group_end:% lwarp
+}
+\RenewDocumentCommand \si { o m } {
+ \leavevmode
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \bool_set_false:N \l__siunitx_font_set_bool
+ \IfNoValueTF {#1}
+ { \__siunitx_unit_output:nn {#2} { } }
+ {
+ \keys_set:nn { siunitx } {#1}
+ \__siunitx_unit_output:nn {#2} {#1}
+ }
+ \group_end:% lwarp
+}
+\RenewDocumentCommand{\SIrange}{o m m m}
+{%
+ \leavevmode
+ \group_begin:% lwarp
+ \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
+ \LetLtxMacro\mbox\LWR@print@mbox% lwarp
+ \bool_set_false:N \l__siunitx_font_set_bool
+ \IfNoValueTF {#1}
+ { \__siunitx_range_unit:nnnn {#4} { } {#2} {#3} }
+ {
+ \keys_set:nn { siunitx } {#1}
+ \__siunitx_range_unit:nnnn {#4} {#1} {#2} {#3}
+ }
+ \group_end:% lwarp
+}
+\ExplSyntaxOff
+
+\begin{warpMathJax}
+\LWR@infoprocessingmathjax{siunitx}
+\CustomizeMathJax{\newcommand{\tothe}[1]{^{#1}}}
+\CustomizeMathJax{\newcommand{\raiseto}[2]{{#2}^{#1}}}
+\CustomizeMathJax{\newcommand{\LWRsiunitxEND}{}}
+\CustomizeMathJax{\def\LWRsiunitxang#1;#2;#3;#4\LWRsiunitxEND{%
+ \ifblank{#1}{}{\num{#1}\degree}%
+ \ifblank{#2}{}{\num{#2}^{\unicode{x2032}}}% \prime
+ \ifblank{#3}{}{\num{#3}^{\unicode{x2033}}}% \dblprime
+}}
+\CustomizeMathJax{\newcommand{\ang}[2][]{\LWRsiunitxang#2;;;\LWRsiunitxEND}}
+\CustomizeMathJax{\newcommand{\LWRsiunitxnumscientific}[2]{%
+ \ifblank{#1}%
+ {}%
+ {%
+ \ifstrequal{#1}{-}%
+ {-}%
+ {\LWRsiunitxprintdecimal{#1}\times}%
+ }%
+ 10^{\LWRsiunitxprintdecimal{#2}}
+}}
+\ExplSyntaxOn
+\AtBeginDocument{
+\ifdefstring{\l__siunitx_output_decimal_tl}{{,}}
+ {% Use decimal comma
+ \CustomizeMathJax{\def\LWRsiunitxprintdecimalsub#1.#2.#3\LWRsiunitxEND{%
+ \mathrm{#1}%
+ \ifblank{#2}
+ {}%
+ {,\mathrm{#2}}
+ }}
+
+ \CustomizeMathJax{\newcommand{\LWRsiunitxprintdecimal}[1]{%
+ \LWRsiunitxprintdecimalsub#1...\LWRsiunitxEND%
+ }}
+ }
+ {% Use decimal point
+ \CustomizeMathJax{\def\LWRsiunitxprintdecimalsub#1,#2,#3\LWRsiunitxEND{%
+ \mathrm{#1}%
+ \ifblank{#2}
+ {}%
+ {.\mathrm{#2}}
+ }}
+
+ \CustomizeMathJax{\newcommand{\LWRsiunitxprintdecimal}[1]{%
+ \LWRsiunitxprintdecimalsub#1,,,\LWRsiunitxEND%
+ }}
+ }
+}
+\ExplSyntaxOff
+\CustomizeMathJax{\def\LWRsiunitxnumplus#1+#2+#3\LWRsiunitxEND{%
+ \ifblank{#2}
+ {\LWRsiunitxprintdecimal{#1}}% no plus
+ {%
+ \ifblank{#1}%
+ {\LWRsiunitxprintdecimal{#2}}% leading plus, ignore
+ {% a+b
+ \LWRsiunitxprintdecimal{#1}%
+ \unicode{x02B}% plus sign
+ \LWRsiunitxprintdecimal{#2}%
+ }%
+ }%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumminus#1-#2-#3\LWRsiunitxEND{%
+ \ifblank{#2}
+ {\LWRsiunitxnumplus#1+++\LWRsiunitxEND}%
+ {%
+ \LWRsiunitxprintdecimal{#1}%
+ \unicode{x02212}% mathematical minus sign
+ \LWRsiunitxprintdecimal{#2}%
+ }%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumpm#1+-#2+-#3\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumminus#1---\LWRsiunitxEND}%
+ {%
+ \LWRsiunitxprintdecimal{#1}%
+ \unicode{x0B1}% \pm
+ \LWRsiunitxprintdecimal{#2}%
+ }%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumx#1x#2x#3x#4\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumpm#1+-+-\LWRsiunitxEND}%
+ {%
+ \ifblank{#3}%
+ {%
+ \LWRsiunitxprintdecimal{#1}%
+ \times%
+ \LWRsiunitxprintdecimal{#2}%
+ }%
+ {%
+ \LWRsiunitxprintdecimal{#1}%
+ \times%
+ \LWRsiunitxprintdecimal{#2}%
+ \times%
+ \LWRsiunitxprintdecimal{#3}%
+ }%
+ }%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumD#1D#2D#3\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumx#1xxxxx\LWRsiunitxEND}%
+ {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumd#1d#2d#3\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumD#1DDD\LWRsiunitxEND}%
+ {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumE#1E#2E#3\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumd#1ddd\LWRsiunitxEND}%
+ {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnume#1e#2e#3\LWRsiunitxEND{%
+ \ifblank{#2}%
+ {\LWRsiunitxnumE#1EEE\LWRsiunitxEND}%
+ {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
+}}
+
+\CustomizeMathJax{\def\LWRsiunitxnumcomma#1,#2,#3\LWRsiunitxEND{%
+ \ifblank{#2}
+ {\LWRsiunitxnume#1eee\LWRsiunitxEND}
+ {\LWRsiunitxnume#1.#2eee\LWRsiunitxEND}
+}}
+
+\CustomizeMathJax{\newcommand{\num}[2][]{\LWRsiunitxnumcomma#2,,,\LWRsiunitxEND}}
+\CustomizeMathJax{\newcommand{\si}[2][]{\mathrm{#2}}}
+\CustomizeMathJax{\def\LWRsiunitxSIopt#1[#2]#3{%
+ {#2}\num{#1}{#3}%
+}}
+
+\CustomizeMathJax{\newcommand{\LWRsiunitxSI}[2]{%
+ \num{#1}\,{#2}%
+}}
+\CustomizeMathJax{\newcommand{\SI}[2][]{%
+ \ifnextchar[%
+ {\LWRsiunitxSIopt{#2}}%
+ {\LWRsiunitxSI{#2}}%
+}}
+\CustomizeMathJax{\newcommand{\numlist}[2][]{\mathrm{#2}}}
+\CustomizeMathJax{\newcommand{\numrange}[3][]{\num{#2}\,\unicode{x2013}\,\num{#3}}}
+\CustomizeMathJax{\newcommand{\SIlist}[3][]{\mathrm{#2\,#3}}}
+\CustomizeMathJax{\newcommand{\SIrange}[4][]{\num{#2}\,#4\,\unicode{x2013}\,\num{#3}\,#4}}
+\CustomizeMathJax{\newcommand{\tablenum}[2][]{\mathrm{#2}}}
+\CustomizeMathJax{\newcommand{\ampere}{\mathrm{A}}}
+\CustomizeMathJax{\newcommand{\candela}{\mathrm{cd}}}
+\CustomizeMathJax{\newcommand{\kelvin}{\mathrm{K}}}
+\CustomizeMathJax{\newcommand{\kilogram}{\mathrm{kg}}}
+\CustomizeMathJax{\newcommand{\metre}{\mathrm{m}}}
+\CustomizeMathJax{\newcommand{\mole}{\mathrm{mol}}}
+\CustomizeMathJax{\newcommand{\second}{\mathrm{s}}}
+\CustomizeMathJax{\newcommand{\becquerel}{\mathrm{Bq}}}
+\CustomizeMathJax{\newcommand{\degreeCelsius}{\unicode{x2103}}}
+\CustomizeMathJax{\newcommand{\coulomb}{\mathrm{C}}}
+\CustomizeMathJax{\newcommand{\farad}{\mathrm{F}}}
+\CustomizeMathJax{\newcommand{\gray}{\mathrm{Gy}}}
+\CustomizeMathJax{\newcommand{\hertz}{\mathrm{Hz}}}
+\CustomizeMathJax{\newcommand{\henry}{\mathrm{H}}}
+\CustomizeMathJax{\newcommand{\joule}{\mathrm{J}}}
+\CustomizeMathJax{\newcommand{\katal}{\mathrm{kat}}}
+\CustomizeMathJax{\newcommand{\lumen}{\mathrm{lm}}}
+\CustomizeMathJax{\newcommand{\lux}{\mathrm{lx}}}
+\CustomizeMathJax{\newcommand{\newton}{\mathrm{N}}}
+\CustomizeMathJax{\newcommand{\ohm}{\mathrm{\Omega}}}
+\CustomizeMathJax{\newcommand{\pascal}{\mathrm{Pa}}}
+\CustomizeMathJax{\newcommand{\radian}{\mathrm{rad}}}
+\CustomizeMathJax{\newcommand{\siemens}{\mathrm{S}}}
+\CustomizeMathJax{\newcommand{\sievert}{\mathrm{Sv}}}
+\CustomizeMathJax{\newcommand{\steradian}{\mathrm{sr}}}
+\CustomizeMathJax{\newcommand{\tesla}{\mathrm{T}}}
+\CustomizeMathJax{\newcommand{\volt}{\mathrm{V}}}
+\CustomizeMathJax{\newcommand{\watt}{\mathrm{W}}}
+\CustomizeMathJax{\newcommand{\weber}{\mathrm{Wb}}}
+\CustomizeMathJax{\newcommand{\day}{\mathrm{d}}}
+\CustomizeMathJax{\newcommand{\degree}{\mathrm{^\circ}}}
+\CustomizeMathJax{\newcommand{\hectare}{\mathrm{ha}}}
+\CustomizeMathJax{\newcommand{\hour}{\mathrm{h}}}
+\CustomizeMathJax{\newcommand{\litre}{\mathrm{l}}}
+\CustomizeMathJax{\newcommand{\liter}{\mathrm{L}}}
+\CustomizeMathJax{\newcommand{\arcminute}{^\prime}}
+\CustomizeMathJax{\newcommand{\minute}{\mathrm{min}}}
+\CustomizeMathJax{\newcommand{\arcsecond}{^{\prime\prime}}}
+\CustomizeMathJax{\newcommand{\tonne}{\mathrm{t}}}
+\CustomizeMathJax{\newcommand{\astronomicalunit}{au}}
+\CustomizeMathJax{\newcommand{\atomicmassunit}{u}}
+\CustomizeMathJax{\newcommand{\bohr}{\mathit{a}_0}}
+\CustomizeMathJax{\newcommand{\clight}{\mathit{c}_0}}
+\CustomizeMathJax{\newcommand{\dalton}{\mathrm{D}_\mathrm{a}}}
+\CustomizeMathJax{\newcommand{\electronmass}{\mathit{m}_{\mathrm{e}}}}
+\CustomizeMathJax{\newcommand{\electronvolt}{\mathrm{eV}}}
+\CustomizeMathJax{\newcommand{\elementarycharge}{\mathit{e}}}
+\CustomizeMathJax{\newcommand{\hartree}{\mathit{E}_{\mathrm{h}}}}
+\CustomizeMathJax{\newcommand{\planckbar}{\mathit{\unicode{x210F}}}}
+\CustomizeMathJax{\newcommand{\angstrom}{\mathrm{\unicode{x212B}}}}
+\CustomizeMathJax{\let\LWRorigbar\bar}
+\CustomizeMathJax{\newcommand{\bar}{\mathrm{bar}}}
+\CustomizeMathJax{\newcommand{\barn}{\mathrm{b}}}
+\CustomizeMathJax{\newcommand{\bel}{\mathrm{B}}}
+\CustomizeMathJax{\newcommand{\decibel}{\mathrm{dB}}}
+\CustomizeMathJax{\newcommand{\knot}{\mathrm{kn}}}
+\CustomizeMathJax{\newcommand{\mmHg}{\mathrm{mmHg}}}
+\CustomizeMathJax{\newcommand{\nauticalmile}{\mathrm{M}}}
+\CustomizeMathJax{\newcommand{\neper}{\mathrm{Np}}}
+\CustomizeMathJax{\newcommand{\yocto}{\mathrm{y}}}
+\CustomizeMathJax{\newcommand{\zepto}{\mathrm{z}}}
+\CustomizeMathJax{\newcommand{\atto}{\mathrm{a}}}
+\CustomizeMathJax{\newcommand{\femto}{\mathrm{f}}}
+\CustomizeMathJax{\newcommand{\pico}{\mathrm{p}}}
+\CustomizeMathJax{\newcommand{\nano}{\mathrm{n}}}
+\CustomizeMathJax{\newcommand{\micro}{\mathrm{\unicode{x00B5}}}}
+\CustomizeMathJax{\newcommand{\milli}{\mathrm{m}}}
+\CustomizeMathJax{\newcommand{\centi}{\mathrm{c}}}
+\CustomizeMathJax{\newcommand{\deci}{\mathrm{d}}}
+\CustomizeMathJax{\newcommand{\deca}{\mathrm{da}}}
+\CustomizeMathJax{\newcommand{\hecto}{\mathrm{h}}}
+\CustomizeMathJax{\newcommand{\kilo}{\mathrm{k}}}
+\CustomizeMathJax{\newcommand{\mega}{\mathrm{M}}}
+\CustomizeMathJax{\newcommand{\giga}{\mathrm{G}}}
+\CustomizeMathJax{\newcommand{\tera}{\mathrm{T}}}
+\CustomizeMathJax{\newcommand{\peta}{\mathrm{P}}}
+\CustomizeMathJax{\newcommand{\exa}{\mathrm{E}}}
+\CustomizeMathJax{\newcommand{\zetta}{\mathrm{Z}}}
+\CustomizeMathJax{\newcommand{\yotta}{\mathrm{Y}}}
+\CustomizeMathJax{\newcommand{\percent}{\mathrm{\%}}}
+\CustomizeMathJax{\newcommand{\meter}{\mathrm{m}}}
+\CustomizeMathJax{\newcommand{\metre}{\mathrm{m}}}
+\CustomizeMathJax{\newcommand{\gram}{\mathrm{g}}}
+\CustomizeMathJax{\newcommand{\kg}{\kilo\gram}}
+\CustomizeMathJax{\newcommand{\of}[1]{_{\mathrm{#1}}}}
+\CustomizeMathJax{\newcommand{\squared}{^2}}
+\CustomizeMathJax{\newcommand{\square}[1]{\mathrm{#1}^2}}
+\CustomizeMathJax{\newcommand{\cubed}{^3}}
+\CustomizeMathJax{\newcommand{\cubic}[1]{\mathrm{#1}^3}}
+\CustomizeMathJax{\newcommand{\per}{/}}
+\CustomizeMathJax{\newcommand{\celsius}{\unicode{x2103}}}
+\CustomizeMathJax{\newcommand{\fg}{\femto\gram}}
+\CustomizeMathJax{\newcommand{\pg}{\pico\gram}}
+\CustomizeMathJax{\newcommand{\ng}{\nano\gram}}
+\CustomizeMathJax{\newcommand{\ug}{\micro\gram}}
+\CustomizeMathJax{\newcommand{\mg}{\milli\gram}}
+\CustomizeMathJax{\newcommand{\g}{\gram}}
+\CustomizeMathJax{\newcommand{\kg}{\kilo\gram}}
+\CustomizeMathJax{\newcommand{\amu}{\mathrm{u}}}
+\CustomizeMathJax{\newcommand{\pm}{\pico\metre}}
+\CustomizeMathJax{\newcommand{\nm}{\nano\metre}}
+\CustomizeMathJax{\newcommand{\um}{\micro\metre}}
+\CustomizeMathJax{\newcommand{\mm}{\milli\metre}}
+\CustomizeMathJax{\newcommand{\cm}{\centi\metre}}
+\CustomizeMathJax{\newcommand{\dm}{\deci\metre}}
+\CustomizeMathJax{\newcommand{\m}{\metre}}
+\CustomizeMathJax{\newcommand{\km}{\kilo\metre}}
+\CustomizeMathJax{\newcommand{\as}{\atto\second}}
+\CustomizeMathJax{\newcommand{\fs}{\femto\second}}
+\CustomizeMathJax{\newcommand{\ps}{\pico\second}}
+\CustomizeMathJax{\newcommand{\ns}{\nano\second}}
+\CustomizeMathJax{\newcommand{\us}{\micro\second}}
+\CustomizeMathJax{\newcommand{\ms}{\milli\second}}
+\CustomizeMathJax{\newcommand{\s}{\second}}
+\CustomizeMathJax{\newcommand{\fmol}{\femto\mol}}
+\CustomizeMathJax{\newcommand{\pmol}{\pico\mol}}
+\CustomizeMathJax{\newcommand{\nmol}{\nano\mol}}
+\CustomizeMathJax{\newcommand{\umol}{\micro\mol}}
+\CustomizeMathJax{\newcommand{\mmol}{\milli\mol}}
+\CustomizeMathJax{\newcommand{\mol}{\mol}}
+\CustomizeMathJax{\newcommand{\kmol}{\kilo\mol}}
+\CustomizeMathJax{\newcommand{\pA}{\pico\ampere}}
+\CustomizeMathJax{\newcommand{\nA}{\nano\ampere}}
+\CustomizeMathJax{\newcommand{\uA}{\micro\ampere}}
+\CustomizeMathJax{\newcommand{\mA}{\milli\ampere}}
+\CustomizeMathJax{\newcommand{\A}{\ampere}}
+\CustomizeMathJax{\newcommand{\kA}{\kilo\ampere}}
+\CustomizeMathJax{\newcommand{\ul}{\micro\litre}}
+\CustomizeMathJax{\newcommand{\ml}{\milli\litre}}
+\CustomizeMathJax{\newcommand{\l}{\litre}}
+\CustomizeMathJax{\newcommand{\hl}{\hecto\litre}}
+\CustomizeMathJax{\newcommand{\uL}{\micro\liter}}
+\CustomizeMathJax{\newcommand{\mL}{\milli\liter}}
+\CustomizeMathJax{\newcommand{\L}{\liter}}
+\CustomizeMathJax{\newcommand{\hL}{\hecto\liter}}
+\CustomizeMathJax{\newcommand{\mHz}{\milli\hertz}}
+\CustomizeMathJax{\newcommand{\Hz}{\hertz}}
+\CustomizeMathJax{\newcommand{\kHz}{\kilo\hertz}}
+\CustomizeMathJax{\newcommand{\MHz}{\mega\hertz}}
+\CustomizeMathJax{\newcommand{\GHz}{\giga\hertz}}
+\CustomizeMathJax{\newcommand{\THz}{\tera\hertz}}
+\CustomizeMathJax{\newcommand{\mN}{\milli\newton}}
+\CustomizeMathJax{\newcommand{\N}{\newton}}
+\CustomizeMathJax{\newcommand{\kN}{\kilo\newton}}
+\CustomizeMathJax{\newcommand{\MN}{\mega\newton}}
+\CustomizeMathJax{\newcommand{\Pa}{\pascal}}
+\CustomizeMathJax{\newcommand{\kPa}{\kilo\pascal}}
+\CustomizeMathJax{\newcommand{\MPa}{\mega\pascal}}
+\CustomizeMathJax{\newcommand{\GPa}{\giga\pascal}}
+\CustomizeMathJax{\newcommand{\mohm}{\milli\ohm}}
+\CustomizeMathJax{\newcommand{\kohm}{\kilo\ohm}}
+\CustomizeMathJax{\newcommand{\Mohm}{\mega\ohm}}
+\CustomizeMathJax{\newcommand{\pV}{\pico\volt}}
+\CustomizeMathJax{\newcommand{\nV}{\nano\volt}}
+\CustomizeMathJax{\newcommand{\uV}{\micro\volt}}
+\CustomizeMathJax{\newcommand{\mV}{\milli\volt}}
+\CustomizeMathJax{\newcommand{\V}{\volt}}
+\CustomizeMathJax{\newcommand{\kV}{\kilo\volt}}
+\CustomizeMathJax{\newcommand{\W}{\watt}}
+\CustomizeMathJax{\newcommand{\uW}{\micro\watt}}
+\CustomizeMathJax{\newcommand{\mW}{\milli\watt}}
+\CustomizeMathJax{\newcommand{\kW}{\kilo\watt}}
+\CustomizeMathJax{\newcommand{\MW}{\mega\watt}}
+\CustomizeMathJax{\newcommand{\GW}{\giga\watt}}
+\CustomizeMathJax{\newcommand{\J}{\joule}}
+\CustomizeMathJax{\newcommand{\uJ}{\micro\joule}}
+\CustomizeMathJax{\newcommand{\mJ}{\milli\joule}}
+\CustomizeMathJax{\newcommand{\kJ}{\kilo\joule}}
+\CustomizeMathJax{\newcommand{\eV}{\electronvolt}}
+\CustomizeMathJax{\newcommand{\meV}{\milli\electronvolt}}
+\CustomizeMathJax{\newcommand{\keV}{\kilo\electronvolt}}
+\CustomizeMathJax{\newcommand{\MeV}{\mega\electronvolt}}
+\CustomizeMathJax{\newcommand{\GeV}{\giga\electronvolt}}
+\CustomizeMathJax{\newcommand{\TeV}{\tera\electronvolt}}
+\CustomizeMathJax{\newcommand{\kWh}{\kilo\watt\hour}}
+\CustomizeMathJax{\newcommand{\F}{\farad}}
+\CustomizeMathJax{\newcommand{\fF}{\femto\farad}}
+\CustomizeMathJax{\newcommand{\pF}{\pico\farad}}
+\CustomizeMathJax{\newcommand{\K}{\mathrm{K}}}
+\CustomizeMathJax{\newcommand{\dB}{\mathrm{dB}}}
+\CustomizeMathJax{\newcommand{\kibi}{\mathrm{Ki}}}
+\CustomizeMathJax{\newcommand{\mebi}{\mathrm{Mi}}}
+\CustomizeMathJax{\newcommand{\gibi}{\mathrm{Gi}}}
+\CustomizeMathJax{\newcommand{\tebi}{\mathrm{Ti}}}
+\CustomizeMathJax{\newcommand{\pebi}{\mathrm{Pi}}}
+\CustomizeMathJax{\newcommand{\exbi}{\mathrm{Ei}}}
+\CustomizeMathJax{\newcommand{\zebi}{\mathrm{Zi}}}
+\CustomizeMathJax{\newcommand{\yobi}{\mathrm{Yi}}}
+\end{warpMathJax}
+
+\endinput
+%%
+%% End of file `lwarp-siunitx-v2.sty'.
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx.sty
index b57c67a0fce..53152fd41ed 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-siunitx.sty
@@ -16,610 +16,25 @@
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
-\RequirePackage{xcolor}% for \convertcolorspec
-
-\LWR@ProvidesPackagePass{siunitx}[2018/05/17]
-
-\AtBeginDocument{% in case textcomp was not loaded
-\DeclareSIUnit\bohr{\textit{a}\textsubscript{0}}
-\DeclareSIUnit\clight{\textit{c}\textsubscript{0}}
-\DeclareSIUnit\elementarycharge{\textit{e}}
-\DeclareSIUnit\electronmass{\textit{m}\textsubscript{e}}
-\DeclareSIUnit\hartree{\textit{E}\textsubscript{h}}
-\DeclareSIUnit\planckbar{\LWR@siunitx@textplanckbar}
-}% AtBeginDocument
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
-\ExplSyntaxOn
-\cs_undefine:N \__siunitx_print_aux:
-\cs_new_protected:Npn \__siunitx_print_aux:
- {
- \text
- {
- \__siunitx_ensure_ltr:n
- {
- \color@begingroup
- \__siunitx_print_color:
- \__siunitx_font_shape:
- \__siunitx_font_weight:
- \use:c
- {
- @@_ \l__siunitx_print_type_tl _
- text \l__siunitx_font_family_tl :
- }
- \bool_if:NTF \l__siunitx_font_math_mode_bool
- { \__siunitx_print_math: }
- {
- \LWR@findcurrenttextcolor% lwarp
- \ifdefstring{\LWR@tempcolor}{000000}% lwarp
- {\__siunitx_print_text:}% lwarp
- {% lwarp
- \LWR@textcurrentcolor{% lwarp
- \__siunitx_print_text:
- }% lwarp
- }% lwarp
- }
- \color@endgroup
- }
- }
- }
+\DeclareRelease{2}{2010-05-23}{lwarp-siunitx-v2.sty}
+\DeclareRelease{v2}{2010-05-23}{lwarp-siunitx-v2.sty}
+\DeclareCurrentRelease{}{2021-05-17}
-\cs_undefine:N \__siunitx_set_math_fam:n
-\cs_new_protected:Npn \__siunitx_set_math_fam:n #1 {
- \int_new:c { c__siunitx_math #1 _int }
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \hbox_set:Nn \l__siunitx_tmp_box
- {
- \ensuremath
- {
- \use:c { math #1 }
- {
- \int_gset:cn { c__siunitx_math #1 _int } { \fam }
- }
- }
- }
- \group_end:% lwarp
-}
-
-\cs_undefine:N \__siunitx_combined_output:n
-\cs_new_protected:Npn \__siunitx_combined_output:n #1 {
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \bool_if:NTF \l__siunitx_number_parse_bool
- {
- \tl_clear:N \l__siunitx_number_out_tl
- \bool_set_false:N \l__siunitx_number_compound_bool
- \__siunitx_number_output_parse:n {#1}
- }
- {
- \__siunitx_unit_output_pre_print:
- \begingroup% lwarp
- \boolfalse{mathjax}% lwarp
- \LWR@subsingledollar{% lwarp
- \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
- }{siunitx}{%
- \__siunitx_print:nn { number } {%
- \LWR@origensuredmath{#1}%
- }%
- }% lwarp
- \endgroup% lwarp
- \__siunitx_unit_output_print:
- }
- \group_end:% lwarp
-}
-\cs_set_protected:Npn \__siunitx_range_numbers_aux:n #1
- {
- \bool_if:NTF \l__siunitx_number_parse_bool
- {
- \tl_clear:N \l__siunitx_number_out_tl
- \tl_clear:N \l__siunitx_number_out_saved_tl
- \bool_set_false:N \l__siunitx_number_compound_bool
- \__siunitx_number_output_parse:n {#1}
- \bool_if:NT \l__siunitx_number_compound_bool
- { \msg_error:nnx { siunitx } { multi-part-range } {#1} }
- }
- {
- \__siunitx_unit_output_pre_print:
- \begingroup% lwarp
- \boolfalse{mathjax}% lwarp
- \LWR@subsingledollar{% lwarp
- \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
- }{siunitx}{%
- \__siunitx_print:nn { number } {
- \LWR@origensuredmath{#1}%
- } % lwarp
- }% lwarp
- \endgroup% lwarp
- \__siunitx_unit_output_print:
- }
- }
-\cs_set_protected:Npn \__siunitx_angle_print_direct_aux:nn #1#2 {
- \tl_if_empty:nF {#1}
- {
- \tl_set:Nn \l__siunitx_unit_tl {#2}
- \begingroup% lwarp
- \boolfalse{mathjax}% lwarp
- \LWR@subsingledollar{% lwarp
- \textbackslash( \LWR@HTMLsanitize{#1} \textbackslash)% lwarp
- }{siunitx}{%
- \__siunitx_print:nn { number } {
- \LWR@origensuredmath{#1}%
- } % lwarp
- }% lwarp
- \endgroup% lwarp
- \__siunitx_unit_output_print:
+\PackageWarningNoLine{lwarp}
+ {%
+ **************\MessageBreak
+ Siunitx version 3 is not yet supported by Lwarp.\MessageBreak
+ V2 emulation is used here.\MessageBreak
+ **************
}
-}
-\cs_undefine:N \__siunitx_number_output_quotient_fraction:
-\cs_new_protected:Npn \__siunitx_number_output_quotient_fraction: {
- \bool_set_true:N \l__siunitx_number_compound_bool
- \__siunitx_number_output_quotient_aux_i:
- \tl_set_eq:NN \l__siunitx_number_out_tl
- \l__siunitx_number_numerator_tl
- \tl_put_right:NV \l__siunitx_number_out_tl \l__siunitx_output_quotient_tl
- \tl_put_right:NV \l__siunitx_number_out_tl
- \l__siunitx_number_denominator_tl
- \__siunitx_number_output_single_aux:
-}
-\cs_undefine:N \__siunitx_unit_format_fraction_fraction:
-\cs_new_protected:Npn \__siunitx_unit_format_fraction_fraction: {
- \__siunitx_unit_format_fraction_symbol_aux:
- \int_compare:nNnT { \l__siunitx_unit_denominator_int } > { 1 }
- {
- \bool_if:NT \l__siunitx_unit_denominator_bracket_bool
- {
- \tl_put_left:NV \l__siunitx_unit_denominator_tl \l__siunitx_bracket_open_tl
- \tl_put_right:NV \l__siunitx_unit_denominator_tl \l__siunitx_bracket_close_tl
- }
- }
- \tl_set_eq:NN \l__siunitx_unit_tl \l__siunitx_unit_numerator_tl
- \tl_put_right:NV \l__siunitx_unit_tl \l__siunitx_per_symbol_tl
- \tl_put_right:NV \l__siunitx_unit_tl \l__siunitx_unit_denominator_tl
-}
-\cs_undefine:N \__siunitx_angle_print_astronomy_aux:
-\cs_new_protected:Npn \__siunitx_angle_print_astronomy_aux: {
- \prop_get:NnNT \l__siunitx_number_out_prop { mantissa-integer }
- \l__siunitx_tmpa_tl
- { \__siunitx_print:nV { number } \l__siunitx_tmpa_tl }
- \ifnumcomp{\value{LWR@lateximagedepth}}{>}{0}% lwarp
- {% lateximage
- \hbox_set:Nn \l__siunitx_angle_marker_box
- {
- \__siunitx_print:nn { number } { { \l__siunitx_output_decimal_tl } }
- }
- \hbox_set:Nn \l__siunitx_angle_unit_box
- {
- \__siunitx_print:nV { unit } \l__siunitx_unit_tl
- \skip_horizontal:n { -\scriptspace }
- }
- \__siunitx_angle_print_astronomy_aux:n { marker }
- \__siunitx_angle_print_astronomy_aux:n { unit }
- \hbox_set:Nn \l__siunitx_angle_marker_box
- {
- \box_use:N \l__siunitx_angle_marker_box
- \box_use:N \l__siunitx_angle_unit_box
- }
- \dim_compare:nNnTF
- { \l__siunitx_angle_marker_dim } > { \l__siunitx_angle_unit_dim }
- { \__siunitx_angle_print_astronomy_marker: }
- { \__siunitx_angle_print_astronomy_unit: }
- }% lateximage
- {% not a lateximage
- \__siunitx_print:nV { unit } \l__siunitx_unit_tl
- \__siunitx_print:nn { number } { { \l__siunitx_output_decimal_tl } }
- }% not a lateximage
- \prop_get:NnNT \l__siunitx_number_out_prop { mantissa-decimal }
- \l__siunitx_tmpa_tl
- { \__siunitx_print:nV { number } \l__siunitx_tmpa_tl }
-}
-\cs_undefine:N \__siunitx_textsuperscript:n
-\cs_new_protected:Npn \__siunitx_textsuperscript:n #1 {\textsuperscript{#1}}
-\RenewDocumentCommand \num { o m } {
- \leavevmode
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \bool_set_false:N \l__siunitx_font_set_bool
- \IfNoValueF {#1}
- { \keys_set:nn { siunitx } {#1} }
- \__siunitx_number_output:n {#2}
- \group_end:% lwarp
-}
-\RenewDocumentCommand \numrange { o m m } {
- \leavevmode
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \bool_set_false:N \l__siunitx_font_set_bool
- \IfNoValueF {#1}
- { \keys_set:nn { siunitx } {#1} }
- \__siunitx_range_numbers:nn {#2} {#3}
- \group_end:% lwarp
-}
-\RenewDocumentCommand \ang { o > { \SplitArgument { 2 } { ; } } m } {
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \IfNoValueF {#1}
- { \keys_set:nn { siunitx } {#1} }
- \__siunitx_angle_output:nnn #2
- \group_end:% lwarp
-}
-\RenewDocumentCommand \si { o m } {
- \leavevmode
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \bool_set_false:N \l__siunitx_font_set_bool
- \IfNoValueTF {#1}
- { \__siunitx_unit_output:nn {#2} { } }
- {
- \keys_set:nn { siunitx } {#1}
- \__siunitx_unit_output:nn {#2} {#1}
- }
- \group_end:% lwarp
-}
-\RenewDocumentCommand{\SIrange}{o m m m}
-{%
- \leavevmode
- \group_begin:% lwarp
- \LetLtxMacro\@ensuredmath\LWR@origensuredmath% lwarp
- \LetLtxMacro\mbox\LWR@print@mbox% lwarp
- \bool_set_false:N \l__siunitx_font_set_bool
- \IfNoValueTF {#1}
- { \__siunitx_range_unit:nnnn {#4} { } {#2} {#3} }
- {
- \keys_set:nn { siunitx } {#1}
- \__siunitx_range_unit:nnnn {#4} {#1} {#2} {#3}
- }
- \group_end:% lwarp
-}
-\ExplSyntaxOff
-
-\begin{warpMathJax}
-\LWR@infoprocessingmathjax{siunitx}
-\CustomizeMathJax{\newcommand{\tothe}[1]{^{#1}}}
-\CustomizeMathJax{\newcommand{\raiseto}[2]{{#2}^{#1}}}
-\CustomizeMathJax{\newcommand{\LWRsiunitxEND}{}}
-\CustomizeMathJax{\def\LWRsiunitxang#1;#2;#3;#4\LWRsiunitxEND{%
- \ifblank{#1}{}{\num{#1}\degree}%
- \ifblank{#2}{}{\num{#2}^{\unicode{x2032}}}% \prime
- \ifblank{#3}{}{\num{#3}^{\unicode{x2033}}}% \dblprime
-}}
-\CustomizeMathJax{\newcommand{\ang}[2][]{\LWRsiunitxang#2;;;\LWRsiunitxEND}}
-\CustomizeMathJax{\newcommand{\LWRsiunitxnumscientific}[2]{%
- \ifblank{#1}%
- {}%
- {%
- \ifstrequal{#1}{-}%
- {-}%
- {\LWRsiunitxprintdecimal{#1}\times}%
- }%
- 10^{\LWRsiunitxprintdecimal{#2}}
-}}
-\ExplSyntaxOn
-\AtBeginDocument{
-\ifdefstring{\l__siunitx_output_decimal_tl}{{,}}
- {% Use decimal comma
- \CustomizeMathJax{\def\LWRsiunitxprintdecimalsub#1.#2.#3\LWRsiunitxEND{%
- \mathrm{#1}%
- \ifblank{#2}
- {}%
- {,\mathrm{#2}}
- }}
- \CustomizeMathJax{\newcommand{\LWRsiunitxprintdecimal}[1]{%
- \LWRsiunitxprintdecimalsub#1...\LWRsiunitxEND%
- }}
- }
- {% Use decimal point
- \CustomizeMathJax{\def\LWRsiunitxprintdecimalsub#1,#2,#3\LWRsiunitxEND{%
- \mathrm{#1}%
- \ifblank{#2}
- {}%
- {.\mathrm{#2}}
- }}
-
- \CustomizeMathJax{\newcommand{\LWRsiunitxprintdecimal}[1]{%
- \LWRsiunitxprintdecimalsub#1,,,\LWRsiunitxEND%
- }}
- }
-}
-\ExplSyntaxOff
-\CustomizeMathJax{\def\LWRsiunitxnumplus#1+#2+#3\LWRsiunitxEND{%
- \ifblank{#2}
- {\LWRsiunitxprintdecimal{#1}}% no plus
- {%
- \ifblank{#1}%
- {\LWRsiunitxprintdecimal{#2}}% leading plus, ignore
- {% a+b
- \LWRsiunitxprintdecimal{#1}%
- \unicode{x02B}% plus sign
- \LWRsiunitxprintdecimal{#2}%
- }%
- }%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumminus#1-#2-#3\LWRsiunitxEND{%
- \ifblank{#2}
- {\LWRsiunitxnumplus#1+++\LWRsiunitxEND}%
- {%
- \LWRsiunitxprintdecimal{#1}%
- \unicode{x02212}% mathematical minus sign
- \LWRsiunitxprintdecimal{#2}%
- }%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumpm#1+-#2+-#3\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumminus#1---\LWRsiunitxEND}%
- {%
- \LWRsiunitxprintdecimal{#1}%
- \unicode{x0B1}% \pm
- \LWRsiunitxprintdecimal{#2}%
- }%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumx#1x#2x#3x#4\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumpm#1+-+-\LWRsiunitxEND}%
- {%
- \ifblank{#3}%
- {%
- \LWRsiunitxprintdecimal{#1}%
- \times%
- \LWRsiunitxprintdecimal{#2}%
- }%
- {%
- \LWRsiunitxprintdecimal{#1}%
- \times%
- \LWRsiunitxprintdecimal{#2}%
- \times%
- \LWRsiunitxprintdecimal{#3}%
- }%
- }%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumD#1D#2D#3\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumx#1xxxxx\LWRsiunitxEND}%
- {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumd#1d#2d#3\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumD#1DDD\LWRsiunitxEND}%
- {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumE#1E#2E#3\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumd#1ddd\LWRsiunitxEND}%
- {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnume#1e#2e#3\LWRsiunitxEND{%
- \ifblank{#2}%
- {\LWRsiunitxnumE#1EEE\LWRsiunitxEND}%
- {\mathrm{\LWRsiunitxnumscientific{#1}{#2}}}%
-}}
-
-\CustomizeMathJax{\def\LWRsiunitxnumcomma#1,#2,#3\LWRsiunitxEND{%
- \ifblank{#2}
- {\LWRsiunitxnume#1eee\LWRsiunitxEND}
- {\LWRsiunitxnume#1.#2eee\LWRsiunitxEND}
-}}
+\RequirePackage{xcolor}% for \convertcolorspec
-\CustomizeMathJax{\newcommand{\num}[2][]{\LWRsiunitxnumcomma#2,,,\LWRsiunitxEND}}
-\CustomizeMathJax{\newcommand{\si}[2][]{\mathrm{#2}}}
-\CustomizeMathJax{\def\LWRsiunitxSIopt#1[#2]#3{%
- {#2}\num{#1}{#3}%
-}}
-\CustomizeMathJax{\newcommand{\LWRsiunitxSI}[2]{%
- \num{#1}\,{#2}%
-}}
-\CustomizeMathJax{\newcommand{\SI}[2][]{%
- \ifnextchar[%
- {\LWRsiunitxSIopt{#2}}%
- {\LWRsiunitxSI{#2}}%
-}}
-\CustomizeMathJax{\newcommand{\numlist}[2][]{\mathrm{#2}}}
-\CustomizeMathJax{\newcommand{\numrange}[3][]{\num{#2}\,\unicode{x2013}\,\num{#3}}}
-\CustomizeMathJax{\newcommand{\SIlist}[3][]{\mathrm{#2\,#3}}}
-\CustomizeMathJax{\newcommand{\SIrange}[4][]{\num{#2}\,#4\,\unicode{x2013}\,\num{#3}\,#4}}
-\CustomizeMathJax{\newcommand{\tablenum}[2][]{\mathrm{#2}}}
-\CustomizeMathJax{\newcommand{\ampere}{\mathrm{A}}}
-\CustomizeMathJax{\newcommand{\candela}{\mathrm{cd}}}
-\CustomizeMathJax{\newcommand{\kelvin}{\mathrm{K}}}
-\CustomizeMathJax{\newcommand{\kilogram}{\mathrm{kg}}}
-\CustomizeMathJax{\newcommand{\metre}{\mathrm{m}}}
-\CustomizeMathJax{\newcommand{\mole}{\mathrm{mol}}}
-\CustomizeMathJax{\newcommand{\second}{\mathrm{s}}}
-\CustomizeMathJax{\newcommand{\becquerel}{\mathrm{Bq}}}
-\CustomizeMathJax{\newcommand{\degreeCelsius}{\unicode{x2103}}}
-\CustomizeMathJax{\newcommand{\coulomb}{\mathrm{C}}}
-\CustomizeMathJax{\newcommand{\farad}{\mathrm{F}}}
-\CustomizeMathJax{\newcommand{\gray}{\mathrm{Gy}}}
-\CustomizeMathJax{\newcommand{\hertz}{\mathrm{Hz}}}
-\CustomizeMathJax{\newcommand{\henry}{\mathrm{H}}}
-\CustomizeMathJax{\newcommand{\joule}{\mathrm{J}}}
-\CustomizeMathJax{\newcommand{\katal}{\mathrm{kat}}}
-\CustomizeMathJax{\newcommand{\lumen}{\mathrm{lm}}}
-\CustomizeMathJax{\newcommand{\lux}{\mathrm{lx}}}
-\CustomizeMathJax{\newcommand{\newton}{\mathrm{N}}}
-\CustomizeMathJax{\newcommand{\ohm}{\mathrm{\Omega}}}
-\CustomizeMathJax{\newcommand{\pascal}{\mathrm{Pa}}}
-\CustomizeMathJax{\newcommand{\radian}{\mathrm{rad}}}
-\CustomizeMathJax{\newcommand{\siemens}{\mathrm{S}}}
-\CustomizeMathJax{\newcommand{\sievert}{\mathrm{Sv}}}
-\CustomizeMathJax{\newcommand{\steradian}{\mathrm{sr}}}
-\CustomizeMathJax{\newcommand{\tesla}{\mathrm{T}}}
-\CustomizeMathJax{\newcommand{\volt}{\mathrm{V}}}
-\CustomizeMathJax{\newcommand{\watt}{\mathrm{W}}}
-\CustomizeMathJax{\newcommand{\weber}{\mathrm{Wb}}}
-\CustomizeMathJax{\newcommand{\day}{\mathrm{d}}}
-\CustomizeMathJax{\newcommand{\degree}{\mathrm{^\circ}}}
-\CustomizeMathJax{\newcommand{\hectare}{\mathrm{ha}}}
-\CustomizeMathJax{\newcommand{\hour}{\mathrm{h}}}
-\CustomizeMathJax{\newcommand{\litre}{\mathrm{l}}}
-\CustomizeMathJax{\newcommand{\liter}{\mathrm{L}}}
-\CustomizeMathJax{\newcommand{\arcminute}{^\prime}}
-\CustomizeMathJax{\newcommand{\minute}{\mathrm{min}}}
-\CustomizeMathJax{\newcommand{\arcsecond}{^{\prime\prime}}}
-\CustomizeMathJax{\newcommand{\tonne}{\mathrm{t}}}
-\CustomizeMathJax{\newcommand{\astronomicalunit}{au}}
-\CustomizeMathJax{\newcommand{\atomicmassunit}{u}}
-\CustomizeMathJax{\newcommand{\bohr}{\mathit{a}_0}}
-\CustomizeMathJax{\newcommand{\clight}{\mathit{c}_0}}
-\CustomizeMathJax{\newcommand{\dalton}{\mathrm{D}_\mathrm{a}}}
-\CustomizeMathJax{\newcommand{\electronmass}{\mathit{m}_{\mathrm{e}}}}
-\CustomizeMathJax{\newcommand{\electronvolt}{\mathrm{eV}}}
-\CustomizeMathJax{\newcommand{\elementarycharge}{\mathit{e}}}
-\CustomizeMathJax{\newcommand{\hartree}{\mathit{E}_{\mathrm{h}}}}
-\CustomizeMathJax{\newcommand{\planckbar}{\mathit{\unicode{x210F}}}}
-\CustomizeMathJax{\newcommand{\angstrom}{\mathrm{\unicode{x212B}}}}
-\CustomizeMathJax{\let\LWRorigbar\bar}
-\CustomizeMathJax{\newcommand{\bar}{\mathrm{bar}}}
-\CustomizeMathJax{\newcommand{\barn}{\mathrm{b}}}
-\CustomizeMathJax{\newcommand{\bel}{\mathrm{B}}}
-\CustomizeMathJax{\newcommand{\decibel}{\mathrm{dB}}}
-\CustomizeMathJax{\newcommand{\knot}{\mathrm{kn}}}
-\CustomizeMathJax{\newcommand{\mmHg}{\mathrm{mmHg}}}
-\CustomizeMathJax{\newcommand{\nauticalmile}{\mathrm{M}}}
-\CustomizeMathJax{\newcommand{\neper}{\mathrm{Np}}}
-\CustomizeMathJax{\newcommand{\yocto}{\mathrm{y}}}
-\CustomizeMathJax{\newcommand{\zepto}{\mathrm{z}}}
-\CustomizeMathJax{\newcommand{\atto}{\mathrm{a}}}
-\CustomizeMathJax{\newcommand{\femto}{\mathrm{f}}}
-\CustomizeMathJax{\newcommand{\pico}{\mathrm{p}}}
-\CustomizeMathJax{\newcommand{\nano}{\mathrm{n}}}
-\CustomizeMathJax{\newcommand{\micro}{\mathrm{\unicode{x00B5}}}}
-\CustomizeMathJax{\newcommand{\milli}{\mathrm{m}}}
-\CustomizeMathJax{\newcommand{\centi}{\mathrm{c}}}
-\CustomizeMathJax{\newcommand{\deci}{\mathrm{d}}}
-\CustomizeMathJax{\newcommand{\deca}{\mathrm{da}}}
-\CustomizeMathJax{\newcommand{\hecto}{\mathrm{h}}}
-\CustomizeMathJax{\newcommand{\kilo}{\mathrm{k}}}
-\CustomizeMathJax{\newcommand{\mega}{\mathrm{M}}}
-\CustomizeMathJax{\newcommand{\giga}{\mathrm{G}}}
-\CustomizeMathJax{\newcommand{\tera}{\mathrm{T}}}
-\CustomizeMathJax{\newcommand{\peta}{\mathrm{P}}}
-\CustomizeMathJax{\newcommand{\exa}{\mathrm{E}}}
-\CustomizeMathJax{\newcommand{\zetta}{\mathrm{Z}}}
-\CustomizeMathJax{\newcommand{\yotta}{\mathrm{Y}}}
-\CustomizeMathJax{\newcommand{\percent}{\mathrm{\%}}}
-\CustomizeMathJax{\newcommand{\meter}{\mathrm{m}}}
-\CustomizeMathJax{\newcommand{\metre}{\mathrm{m}}}
-\CustomizeMathJax{\newcommand{\gram}{\mathrm{g}}}
-\CustomizeMathJax{\newcommand{\kg}{\kilo\gram}}
-\CustomizeMathJax{\newcommand{\of}[1]{_{\mathrm{#1}}}}
-\CustomizeMathJax{\newcommand{\squared}{^2}}
-\CustomizeMathJax{\newcommand{\square}[1]{\mathrm{#1}^2}}
-\CustomizeMathJax{\newcommand{\cubed}{^3}}
-\CustomizeMathJax{\newcommand{\cubic}[1]{\mathrm{#1}^3}}
-\CustomizeMathJax{\newcommand{\per}{/}}
-\CustomizeMathJax{\newcommand{\celsius}{\unicode{x2103}}}
-\CustomizeMathJax{\newcommand{\fg}{\femto\gram}}
-\CustomizeMathJax{\newcommand{\pg}{\pico\gram}}
-\CustomizeMathJax{\newcommand{\ng}{\nano\gram}}
-\CustomizeMathJax{\newcommand{\ug}{\micro\gram}}
-\CustomizeMathJax{\newcommand{\mg}{\milli\gram}}
-\CustomizeMathJax{\newcommand{\g}{\gram}}
-\CustomizeMathJax{\newcommand{\kg}{\kilo\gram}}
-\CustomizeMathJax{\newcommand{\amu}{\mathrm{u}}}
-\CustomizeMathJax{\newcommand{\pm}{\pico\metre}}
-\CustomizeMathJax{\newcommand{\nm}{\nano\metre}}
-\CustomizeMathJax{\newcommand{\um}{\micro\metre}}
-\CustomizeMathJax{\newcommand{\mm}{\milli\metre}}
-\CustomizeMathJax{\newcommand{\cm}{\centi\metre}}
-\CustomizeMathJax{\newcommand{\dm}{\deci\metre}}
-\CustomizeMathJax{\newcommand{\m}{\metre}}
-\CustomizeMathJax{\newcommand{\km}{\kilo\metre}}
-\CustomizeMathJax{\newcommand{\as}{\atto\second}}
-\CustomizeMathJax{\newcommand{\fs}{\femto\second}}
-\CustomizeMathJax{\newcommand{\ps}{\pico\second}}
-\CustomizeMathJax{\newcommand{\ns}{\nano\second}}
-\CustomizeMathJax{\newcommand{\us}{\micro\second}}
-\CustomizeMathJax{\newcommand{\ms}{\milli\second}}
-\CustomizeMathJax{\newcommand{\s}{\second}}
-\CustomizeMathJax{\newcommand{\fmol}{\femto\mol}}
-\CustomizeMathJax{\newcommand{\pmol}{\pico\mol}}
-\CustomizeMathJax{\newcommand{\nmol}{\nano\mol}}
-\CustomizeMathJax{\newcommand{\umol}{\micro\mol}}
-\CustomizeMathJax{\newcommand{\mmol}{\milli\mol}}
-\CustomizeMathJax{\newcommand{\mol}{\mol}}
-\CustomizeMathJax{\newcommand{\kmol}{\kilo\mol}}
-\CustomizeMathJax{\newcommand{\pA}{\pico\ampere}}
-\CustomizeMathJax{\newcommand{\nA}{\nano\ampere}}
-\CustomizeMathJax{\newcommand{\uA}{\micro\ampere}}
-\CustomizeMathJax{\newcommand{\mA}{\milli\ampere}}
-\CustomizeMathJax{\newcommand{\A}{\ampere}}
-\CustomizeMathJax{\newcommand{\kA}{\kilo\ampere}}
-\CustomizeMathJax{\newcommand{\ul}{\micro\litre}}
-\CustomizeMathJax{\newcommand{\ml}{\milli\litre}}
-\CustomizeMathJax{\newcommand{\l}{\litre}}
-\CustomizeMathJax{\newcommand{\hl}{\hecto\litre}}
-\CustomizeMathJax{\newcommand{\uL}{\micro\liter}}
-\CustomizeMathJax{\newcommand{\mL}{\milli\liter}}
-\CustomizeMathJax{\newcommand{\L}{\liter}}
-\CustomizeMathJax{\newcommand{\hL}{\hecto\liter}}
-\CustomizeMathJax{\newcommand{\mHz}{\milli\hertz}}
-\CustomizeMathJax{\newcommand{\Hz}{\hertz}}
-\CustomizeMathJax{\newcommand{\kHz}{\kilo\hertz}}
-\CustomizeMathJax{\newcommand{\MHz}{\mega\hertz}}
-\CustomizeMathJax{\newcommand{\GHz}{\giga\hertz}}
-\CustomizeMathJax{\newcommand{\THz}{\tera\hertz}}
-\CustomizeMathJax{\newcommand{\mN}{\milli\newton}}
-\CustomizeMathJax{\newcommand{\N}{\newton}}
-\CustomizeMathJax{\newcommand{\kN}{\kilo\newton}}
-\CustomizeMathJax{\newcommand{\MN}{\mega\newton}}
-\CustomizeMathJax{\newcommand{\Pa}{\pascal}}
-\CustomizeMathJax{\newcommand{\kPa}{\kilo\pascal}}
-\CustomizeMathJax{\newcommand{\MPa}{\mega\pascal}}
-\CustomizeMathJax{\newcommand{\GPa}{\giga\pascal}}
-\CustomizeMathJax{\newcommand{\mohm}{\milli\ohm}}
-\CustomizeMathJax{\newcommand{\kohm}{\kilo\ohm}}
-\CustomizeMathJax{\newcommand{\Mohm}{\mega\ohm}}
-\CustomizeMathJax{\newcommand{\pV}{\pico\volt}}
-\CustomizeMathJax{\newcommand{\nV}{\nano\volt}}
-\CustomizeMathJax{\newcommand{\uV}{\micro\volt}}
-\CustomizeMathJax{\newcommand{\mV}{\milli\volt}}
-\CustomizeMathJax{\newcommand{\V}{\volt}}
-\CustomizeMathJax{\newcommand{\kV}{\kilo\volt}}
-\CustomizeMathJax{\newcommand{\W}{\watt}}
-\CustomizeMathJax{\newcommand{\uW}{\micro\watt}}
-\CustomizeMathJax{\newcommand{\mW}{\milli\watt}}
-\CustomizeMathJax{\newcommand{\kW}{\kilo\watt}}
-\CustomizeMathJax{\newcommand{\MW}{\mega\watt}}
-\CustomizeMathJax{\newcommand{\GW}{\giga\watt}}
-\CustomizeMathJax{\newcommand{\J}{\joule}}
-\CustomizeMathJax{\newcommand{\uJ}{\micro\joule}}
-\CustomizeMathJax{\newcommand{\mJ}{\milli\joule}}
-\CustomizeMathJax{\newcommand{\kJ}{\kilo\joule}}
-\CustomizeMathJax{\newcommand{\eV}{\electronvolt}}
-\CustomizeMathJax{\newcommand{\meV}{\milli\electronvolt}}
-\CustomizeMathJax{\newcommand{\keV}{\kilo\electronvolt}}
-\CustomizeMathJax{\newcommand{\MeV}{\mega\electronvolt}}
-\CustomizeMathJax{\newcommand{\GeV}{\giga\electronvolt}}
-\CustomizeMathJax{\newcommand{\TeV}{\tera\electronvolt}}
-\CustomizeMathJax{\newcommand{\kWh}{\kilo\watt\hour}}
-\CustomizeMathJax{\newcommand{\F}{\farad}}
-\CustomizeMathJax{\newcommand{\fF}{\femto\farad}}
-\CustomizeMathJax{\newcommand{\pF}{\pico\farad}}
-\CustomizeMathJax{\newcommand{\K}{\mathrm{K}}}
-\CustomizeMathJax{\newcommand{\dB}{\mathrm{dB}}}
-\CustomizeMathJax{\newcommand{\kibi}{\mathrm{Ki}}}
-\CustomizeMathJax{\newcommand{\mebi}{\mathrm{Mi}}}
-\CustomizeMathJax{\newcommand{\gibi}{\mathrm{Gi}}}
-\CustomizeMathJax{\newcommand{\tebi}{\mathrm{Ti}}}
-\CustomizeMathJax{\newcommand{\pebi}{\mathrm{Pi}}}
-\CustomizeMathJax{\newcommand{\exbi}{\mathrm{Ei}}}
-\CustomizeMathJax{\newcommand{\zebi}{\mathrm{Zi}}}
-\CustomizeMathJax{\newcommand{\yobi}{\mathrm{Yi}}}
-\end{warpMathJax}
+\RequirePackage{siunitx-v2}
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty
index 96e7bc7f004..15de354d818 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-tocloft.sty
@@ -246,7 +246,7 @@
\@ifundefined{c@#3depth}{\newcounter{#3depth}}{}%
\setcounter{#3depth}{1}%
\@namedef{cftmark#3}{}%
- \@namedef{listof#2}{\listof{#2}{#4}}%
+ \@namedef{listof#2}{\LWR@listof{#2}{#4}}%
\@namedef{@cftmake#3title}{}%
\expandafter\newlength\csname cftbefore#3titleskip\endcsname%
\expandafter\newlength\csname cftafter#3titleskip\endcsname%
diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
index 92c34938bbb..ea5b75cec51 100644
--- a/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
+++ b/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
@@ -17,7 +17,7 @@
%% version 2005/12/01 or later.
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{lwarp}
- [2021/04/08 v0.896 Allows LaTeX to directly produce HTML5 output.]
+ [2021/05/24 v0.897 Allows LaTeX to directly produce HTML5 output.]
@@ -97,9 +97,8 @@
}
}
-\newcommand*{\LWR@checkloadbefore}[2]{%
- \edef\LWR@tempone{#1}%
- \ifdefstring{\LWR@tempone}{#2}{%
+\newcommand*{\LWR@checkloadbefore}[1]{%
+ \ifdefstring{\LWR@tempone}{#1}{%
\LWR@loadbefore{#1}%
}{}%
}
@@ -107,22 +106,27 @@
\newcommand*{\LWR@loadnever}[2]{%
\PackageError{lwarp}
{%
- Package #1 is not supported\MessageBreak
- by lwarp's HTML conversion.\MessageBreak
- Package(s)\MessageBreak
- \space\space#2\MessageBreak
- may be useful instead%
+ Package #1 is not yet supported\MessageBreak
+ by lwarp's HTML conversion%
+ \ifblank{#2}{}{%
+ .\MessageBreak
+ Package(s)\MessageBreak
+ \space\space#2\MessageBreak
+ may be useful instead%
+ }%
}
{%
Package #1 might conflict with lwarp in some way,\MessageBreak
- or is superceded by another package.\MessageBreak
- For a possible alternative, see package(s) #2.
+ or is superceded by another package.%
+ \ifblank{#2}{}{%
+ \MessageBreak
+ For possible alternatives, see package(s) #2.%
+ }%
}
}
-\newcommand*{\LWR@checkloadnever}[3]{%
- \edef\LWR@tempone{#1}%
- \ifdefstring{\LWR@tempone}{#2}{%
- \LWR@loadnever{#2}{#3}%
+\newcommand*{\LWR@afterloadnever}[2]{%
+ \ifdefstring{\LWR@tempone}{#1}{%
+ \LWR@loadnever{#1}{#2}%
}{}%
}
\newcommand*{\LWR@earlyloadnever}[2]{%
@@ -135,55 +139,142 @@
\PackageError{lwarp}
{%
Class #1 is not supported\MessageBreak
- by lwarp's HTML conversion.\MessageBreak
- Class(es) #2 may be useful instead
+ by lwarp's HTML conversion%
+ \ifblank{#2}{}{%
+ .\MessageBreak
+ Class(es) #2 may be useful instead%
+ }%
}
{%
Class #1 might conflict with lwarp in some way,\MessageBreak
- or is superceded by another class.\MessageBreak
- For a possible alternative, see class(es) #2.
+ or is superceded by another class.%
+ \ifblank{#2}{}{%
+ \MessageBreak
+ For a possible alternative, see class(es) #2.%
+ }%
}
}{\relax}%
}
+\newcommand*{\LWR@checkloadnevers}{
+\LWR@checkloadnever{ae}{cm-super, lmodern}
+\LWR@checkloadnever{aecompl}{cm-super, lmodern}
+\LWR@checkloadnever{aecc}{cm-super, lmodern}
+\LWR@checkloadnever{alg}{algorithm2e, algorithmicx}
+\LWR@checkloadnever{algorithmic}{algorithm2e, algorithmicx}
+\LWR@checkloadnever{bitfield}{bytefield}
+\LWR@checkloadnever{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
+\LWR@checkloadnever{caption2}{caption}
+\LWR@checkloadnever{colortab}{colortbl}
+\LWR@checkloadnever{csvtools}{datatool}
+\LWR@checkloadnever{doublespace}{setspace}
+\LWR@checkloadnever{fancyheadings}{fancyhdr}
+\LWR@checkloadnever{fncylab}{cleveref}
+\LWR@checkloadnever{formula}{siunitx}
+\LWR@checkloadnever{glossary}{glossaries}
+\LWR@checkloadnever{hangul}{kotex, xetexko, luatexko}
+\LWR@checkloadnever{hyper}{hyperref}
+\LWR@checkloadnever{libgreek}{libertinust1math, newtx}
+\LWR@checkloadnever{newthm}{ntheorem}
+\LWR@checkloadnever{pdfcprot}{microtype}
+\LWR@checkloadnever{picins}{floatflt, wrapfig}
+\LWR@checkloadnever{rplain}{fancyhdr}
+\LWR@checkloadnever{si}{siunitx}
+\LWR@checkloadnever{sistyle}{siunitx}
+\LWR@checkloadnever{slashbox}{diagbox}
+\LWR@checkloadnever{statex}{statex2}
+\LWR@checkloadnever{t1enc}{fontenc, inputenc, inputenx}
+\LWR@checkloadnever{ucs}{inputenc, inputencx}
+\LWR@checkloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
+\LWR@checkloadnever{animate}{}
+\LWR@checkloadnever{auto-pst-pdf}{}
+\LWR@checkloadnever{auto-pst-pdf-lua}{}
+\LWR@checkloadnever{algorithms}{}
+\LWR@checkloadnever{arraycols}{}
+\LWR@checkloadnever{beamer}{}
+\LWR@checkloadnever{bidi}{}
+\LWR@checkloadnever{cals}{}
+\LWR@checkloadnever{cellspace}{}
+\LWR@checkloadnever{cgloss4e}{}
+\LWR@checkloadnever{colophon}{}
+\LWR@checkloadnever{cooltooltips}{}
+\LWR@checkloadnever{covington}{}
+\LWR@checkloadnever{crbox}{}
+\LWR@checkloadnever{decision-table}{}
+\LWR@checkloadnever{dvgloss}{}
+\LWR@checkloadnever{ednotes}{}
+\LWR@checkloadnever{edfnotes}{}
+\LWR@checkloadnever{eledform}{}
+\LWR@checkloadnever{eledmac}{}
+\LWR@checkloadnever{embedfile}{}
+\LWR@checkloadnever{endnotes-hy}{endnotes}
+\LWR@checkloadnever{expex}{}
+\LWR@checkloadnever{fancytooltips}{}
+\LWR@checkloadnever{fixocgx}{}
+\LWR@checkloadnever{flowfram}{}
+\LWR@checkloadnever{gb4e}{}
+\LWR@checkloadnever{gmverse}{}
+\LWR@checkloadnever{graphbox}{}
+\LWR@checkloadnever{graphicxbox}{}
+\LWR@checkloadnever{hvfloat}{}
+\LWR@checkloadnever{inline-images}{}
+\LWR@checkloadnever{isorot}{rotating}
+\LWR@checkloadnever{ledmac}{}
+\LWR@checkloadnever{linguex}{}
+\LWR@checkloadnever{longdiv}{}
+\LWR@checkloadnever{longfigure}{}
+\LWR@checkloadnever{longtabu}{}
+\LWR@checkloadnever{mdwenv}{}
+\LWR@checkloadnever{mdwlist}{}
+\LWR@checkloadnever{mdwtab}{}
+\LWR@checkloadnever{navigator}{}
+\LWR@checkloadnever{nccpic}{}
+\LWR@checkloadnever{nccsect}{}
+\LWR@checkloadnever{newvbtm}{}
+\LWR@checkloadnever{ocg-p}{}
+\LWR@checkloadnever{ocgtools}{}
+\LWR@checkloadnever{ocgx}{}
+\LWR@checkloadnever{ocgx2}{}
+\LWR@checkloadnever{parrun}{}
+\LWR@checkloadnever{poemscol}{}
+\LWR@checkloadnever{poetry}{}
+\LWR@checkloadnever{program}{}
+\LWR@checkloadnever{proofread}{}
+\LWR@checkloadnever{pst-pdf}{}
+\LWR@checkloadnever{refstyle}{}
+\LWR@checkloadnever{robustindex}{}
+\LWR@checkloadnever{robustglossary}{}
+\LWR@checkloadnever{semioneside}{}
+\LWR@checkloadnever{slemph}{}
+\LWR@checkloadnever{snotez}{sidenotes}
+\LWR@checkloadnever{spacingtricks}{}
+\LWR@checkloadnever{sverb}{verbatim, fancyvrb}
+\LWR@checkloadnever{syntax}{}
+\LWR@checkloadnever{tablists}{}
+\LWR@checkloadnever{tabto}{}
+\LWR@checkloadnever{tabu}{}
+\LWR@checkloadnever{tabularht}{}
+\LWR@checkloadnever{tabularkv}{}
+\LWR@checkloadnever{thumby}{}
+\LWR@checkloadnever{titles}{}
+\LWR@checkloadnever{typehtml}{}
+\LWR@checkloadnever{unicode-bidi}{}
+\LWR@checkloadnever{vcell}{}
+\LWR@checkloadnever{xhfill}{}
+}
+\LetLtxMacro\LWR@checkloadnever\LWR@earlyloadnever
+\LWR@checkloadnevers
+\@ifpackageloaded{xeCJK}{}{
+ \LWR@checkloadnever{CJK}{ctex, xeCJK}
+ \LWR@checkloadnever{CJKutf8}{ctex, xeCJK}
+}
\LWR@earlyclassloadnever{jarticle}{ujarticle}
\LWR@earlyclassloadnever{jbook}{ujbook}
\LWR@earlyclassloadnever{jreport}{ujreport}
\LWR@earlyclassloadnever{tarticle}{utarticle}
\LWR@earlyclassloadnever{tbook}{utbook}
\LWR@earlyclassloadnever{treport}{utreport}
-\LWR@earlyloadnever{ae}{cm-super, lmodern}
-\LWR@earlyloadnever{aecompl}{cm-super, lmodern}
-\LWR@earlyloadnever{aecc}{cm-super, lmodern}
-\LWR@earlyloadnever{alg}{algorithm2e, algorithmicx}
-\LWR@earlyloadnever{algorithmic}{algorithm2e, algorithmicx}
-\LWR@earlyloadnever{bitfield}{bytefield}
-\LWR@earlyloadnever{caption2}{caption}
-\LWR@earlyloadnever{colortab}{colortbl}
-\LWR@earlyloadnever{csvtools}{datatool}
-\LWR@earlyloadnever{doublespace}{setspace}
-\LWR@earlyloadnever{fancyheadings}{fancyhdr}
-\LWR@earlyloadnever{fncylab}{cleveref}
-\LWR@earlyloadnever{formula}{siunitx}
-\LWR@earlyloadnever{glossary}{glossaries}
-\LWR@earlyloadnever{hyper}{hyperref}
-\LWR@earlyloadnever{libgreek}{libertinust1math, newtx}
-\LWR@earlyloadnever{newthm}{ntheorem}
-\LWR@earlyloadnever{pdfcprot}{microtype}
-\LWR@earlyloadnever{picins}{floatflt, wrapfig}
-\LWR@earlyloadnever{rplain}{fancyhdr}
-\LWR@earlyloadnever{si}{siunitx}
-\LWR@earlyloadnever{sistyle}{siunitx}
-\LWR@earlyloadnever{slashbox}{diagbox}
-\LWR@earlyloadnever{statex}{statex2}
-\LWR@earlyloadnever{t1enc}{fontenc, inputenc, inputenx}
-\LWR@earlyloadnever{ucs}{inputenc, inputencx}
-\LWR@earlyloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
-\@ifpackageloaded{xeCJK}{}{
- \LWR@earlyloadnever{CJK}{ctex, xeCJK}
- \LWR@earlyloadnever{CJKutf8}{ctex, xeCJK}
-}
-\LWR@earlyloadnever{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
-\LWR@earlyloadnever{hangul}{kotex, xetexko, luatexko}
+\LWR@earlyclassloadnever{novel}{}
+\LWR@earlyclassloadnever{powerdot}{}
\LWR@loadafter{2in1}
\LWR@loadafter{2up}
\LWR@loadafter{a4}
@@ -251,6 +342,7 @@
\LWR@loadafter{caption2}
\LWR@loadafter{caption3}
\LWR@loadafter{cases}
+\LWR@loadafter{centerlastline}
\LWR@loadafter{changebar}
\LWR@loadafter{changelayout}
\LWR@notmemoirloadafter{changepage}
@@ -282,6 +374,7 @@
\LWR@loadafter{dblfnote}
\LWR@notmemoirloadafter{dcolumn}
\LWR@loadafter{decimal}
+\LWR@loadafter{decorule}
\LWR@loadafter{diagbox}
\LWR@loadafter{dingbat}
\LWR@loadafter{DotArrow}
@@ -322,6 +415,7 @@
\LWR@loadafter{extramarks}
\LWR@loadafter{fancybox}
\LWR@loadafter{fancyhdr}
+\LWR@loadafter{fancypar}
\LWR@loadafter{fancyref}
\LWR@loadafter{fancytabs}
\LWR@loadafter{fancyvrb}
@@ -359,6 +453,7 @@
\LWR@loadafter{forest}
\LWR@loadafter{fouridx}
\LWR@loadafter{framed}
+\LWR@loadafter{froufrou}
\LWR@loadafter{ftcap}
\LWR@loadafter{ftnright}
\LWR@loadafter{fullminipage}
@@ -505,6 +600,7 @@
\LWR@loadafter{parcolumns}
\LWR@loadafter{parnotes}
\LWR@notmemoirloadafter{parskip}
+\LWR@loadafter{pbalance}
\LWR@loadafter{pbox}
\LWR@loadafter{pdfcol}
\LWR@loadafter{pdfcolfoot}
@@ -592,6 +688,7 @@
\LWR@loadafter{simplebnf}
\LWR@loadafter{SIunits}
\LWR@loadafter{siunitx}
+\LWR@loadafter{siunitx-v2}
\LWR@loadafter{skmath}
\LWR@loadafter{slantsc}
\LWR@loadafter{slashed}
@@ -1433,57 +1530,29 @@
\newcommand*\LWR@findword[3][,]{%
\StrBetween[#3,\numexpr#3+1]{#1#2#1}{#1}{#1}%
}
-
+\LetLtxMacro\LWR@checkloadnever\LWR@afterloadnever
\newcommand*{\LWR@checkloadfilename}[1]{%
-\LWR@checkloadnever{#1}{ae}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{aecc}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{aecompl}{cm-super, lmodern}
-\LWR@checkloadnever{#1}{alg}{algorithm2e, algorithmicx}
-\LWR@checkloadnever{#1}{algorithmic}{algorithm2e, algorithmicx}
-\LWR@checkloadnever{#1}{bitfield}{bytefield}
-\LWR@checkloadnever{#1}{caption2}{caption}
-\LWR@checkloadnever{#1}{ccaption}{caption}% might be preloaded by memoir
-\LWR@checkloadnever{#1}{colortab}{colortbl}
-\LWR@checkloadnever{#1}{csvtools}{datatool}
-\LWR@checkloadnever{#1}{doublespace}{setspace}
-\LWR@checkloadnever{#1}{fancyheadings}{fancyhdr}
-\LWR@checkloadnever{#1}{fncylab}{cleveref}
-\LWR@checkloadnever{#1}{formula}{siunitx}
-\LWR@checkloadnever{#1}{glossary}{glossaries}
-\LWR@checkloadnever{#1}{hyper}{hyperref}
-\LWR@checkloadnever{#1}{libgreek}{libertinust1math, newtx}
-\LWR@checkloadnever{#1}{newthm}{ntheorem}
-\LWR@checkloadnever{#1}{pdfcprot}{microtype}
-\LWR@checkloadnever{#1}{picins}{floatflt, wrapfig}
-\LWR@checkloadnever{#1}{rplain}{fancyhdr}
-\LWR@checkloadnever{#1}{si}{siunitx}
-\LWR@checkloadnever{#1}{sistyle}{siunitx}
-\LWR@checkloadnever{#1}{slashbox}{diagbox}
-\LWR@checkloadnever{#1}{statex}{statex2}
-\LWR@checkloadnever{#1}{t1enc}{fontenc, inputenc, inputenx}
-\LWR@checkloadnever{#1}{ucs}{inputenc, inputencx}
-\LWR@checkloadnever{#1}{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
-\LWR@checkloadnever{#1}{bxcjkjatype}{upLaTeX, bxjsarticle, ujarticle, utarticle}
-\LWR@checkloadnever{#1}{hangul}{kotex, xetexko, luatexko}
-\LWR@checkloadbefore{#1}{ctex}
-\LWR@checkloadbefore{#1}{fontspec}
-\LWR@checkloadbefore{#1}{inputenc}
-\LWR@checkloadbefore{#1}{inputenx}
-\LWR@checkloadbefore{#1}{nfssext-cfr}
-\LWR@checkloadbefore{#1}{fontaxes}
-\LWR@checkloadbefore{#1}{kotex}
-\LWR@checkloadbefore{#1}{kpfonts}% textcomp option clash
-\LWR@checkloadbefore{#1}{luatexja}
-\LWR@checkloadbefore{#1}{luatexja-fontspec}
-\LWR@checkloadbefore{#1}{luatexko}
-\LWR@checkloadbefore{#1}{morewrites}
-\LWR@checkloadbefore{#1}{newclude}
-\LWR@checkloadbefore{#1}{newunicodechar}
-\LWR@checkloadbefore{#1}{plext}
-\LWR@checkloadbefore{#1}{xeCJK}
-\LWR@checkloadbefore{#1}{xetexko}
-\LWR@checkloadbefore{#1}{zxjatype}
+ \edef\LWR@tempone{#1}%
+ \LWR@checkloadnevers
+ \LWR@checkloadbefore{ctex}
+ \LWR@checkloadbefore{fontspec}
+ \LWR@checkloadbefore{inputenc}
+ \LWR@checkloadbefore{inputenx}
+ \LWR@checkloadbefore{nfssext-cfr}
+ \LWR@checkloadbefore{fontaxes}
+ \LWR@checkloadbefore{kotex}
+ \LWR@checkloadbefore{kpfonts}% textcomp option clash
+ \LWR@checkloadbefore{luatexja}
+ \LWR@checkloadbefore{luatexja-fontspec}
+ \LWR@checkloadbefore{luatexko}
+ \LWR@checkloadbefore{morewrites}
+ \LWR@checkloadbefore{newclude}
+ \LWR@checkloadbefore{newunicodechar}
+ \LWR@checkloadbefore{plext}
+ \LWR@checkloadbefore{xeCJK}
+ \LWR@checkloadbefore{xetexko}
+ \LWR@checkloadbefore{zxjatype}
}
\newcommand*{\LWR@lookforpackagename}[1]{%
@@ -1547,11 +1616,11 @@
{%
\PackageError{lwarp}{%
You used:\MessageBreak
- \protect\requirepackage[#1]{#2}\MessageBreak
+ \protect\usepackage[#1]{#2}\MessageBreak
Braces in the package options will fail with Lwarp.\MessageBreak
Instead, use:\MessageBreak
\protect\PassOptionsToPackage{#1}{#2}\MessageBreak
- \protect\requirepackage{#2}\MessageBreak
+ \protect\usepackage{#2}\MessageBreak
near the line number given below.\MessageBreak
Enter 'h' for more info%
}%
@@ -4677,7 +4746,7 @@ MathJax = {
-- Copyright 2016-2021 Brian Dunn
-printversion = "v0.896"
+printversion = "v0.897"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
@@ -11168,7 +11237,7 @@ end -- not --version
}
-\NewDocumentCommand{\listof}{m +m}{%
+\NewDocumentCommand{\LWR@listof}{m +m}{%
\@ifundefined{l@#1}{%
\csdef{l@#1}##1##2{\hypertocfloat{1}{#1}{\@nameuse{ext@#1}}{##1}{##2}}%
}{}%
@@ -12967,7 +13036,7 @@ end -- not --version
text-degree = {\LWR@siunitx@textdegree},
text-arcminute = {\LWR@siunitx@textprime} ,
text-arcsecond = {\LWR@siunitx@textdblprime} ,
-}{siunitx}
+}{siunitx-v2}
\end{warpHTML}