summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/lwarp
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-05-25 03:01:10 +0000
committerNorbert Preining <norbert@preining.info>2021-05-25 03:01:10 +0000
commit07dc96bc3bbd691fc52aca15a172eaf41a89d873 (patch)
treeeb7c276d652209d0d5eb4448b07aaadd440aa4c7 /macros/latex/contrib/lwarp
parent5f0d648973cab5784f4bdb361bbe261b60493432 (diff)
CTAN sync 202105250301
Diffstat (limited to 'macros/latex/contrib/lwarp')
-rw-r--r--macros/latex/contrib/lwarp/README.txt2
-rw-r--r--macros/latex/contrib/lwarp/lwarp.dtx990
-rw-r--r--macros/latex/contrib/lwarp/lwarp.ins6
-rw-r--r--macros/latex/contrib/lwarp/lwarp.pdfbin3184136 -> 3202256 bytes
-rwxr-xr-xmacros/latex/contrib/lwarp/lwarpmk.lua2
5 files changed, 788 insertions, 212 deletions
diff --git a/macros/latex/contrib/lwarp/README.txt b/macros/latex/contrib/lwarp/README.txt
index bf13a2f01a..62aa9f2f2f 100644
--- a/macros/latex/contrib/lwarp/README.txt
+++ b/macros/latex/contrib/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/macros/latex/contrib/lwarp/lwarp.dtx b/macros/latex/contrib/lwarp/lwarp.dtx
index bcd587f552..b326554a47 100644
--- a/macros/latex/contrib/lwarp/lwarp.dtx
+++ b/macros/latex/contrib/lwarp/lwarp.dtx
@@ -16,7 +16,7 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{lwarp}
-%<package> [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/macros/latex/contrib/lwarp/lwarp.ins b/macros/latex/contrib/lwarp/lwarp.ins
index 0ce71e74ae..498f83ae47 100644
--- a/macros/latex/contrib/lwarp/lwarp.ins
+++ b/macros/latex/contrib/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/macros/latex/contrib/lwarp/lwarp.pdf b/macros/latex/contrib/lwarp/lwarp.pdf
index d280510a29..03031ceb9c 100644
--- a/macros/latex/contrib/lwarp/lwarp.pdf
+++ b/macros/latex/contrib/lwarp/lwarp.pdf
Binary files differ
diff --git a/macros/latex/contrib/lwarp/lwarpmk.lua b/macros/latex/contrib/lwarp/lwarpmk.lua
index 7357f24b90..0b09a9acaf 100755
--- a/macros/latex/contrib/lwarp/lwarpmk.lua
+++ b/macros/latex/contrib/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 ()