summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-03-22 20:50:19 +0000
committerKarl Berry <karl@freefriends.org>2019-03-22 20:50:19 +0000
commit96053081ddf50ffc6860dd4ff9b019bf0c12df5f (patch)
tree0c88fdb4fc42d9dc772f9035a19b8e49f9685bf4 /Master/texmf-dist/source/latex
parentc683b2e6b6248248b03f94e79edbebec1de2416b (diff)
lwarp (22mar19)
git-svn-id: svn://tug.org/texlive/trunk@50535 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.dtx1470
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.ins8
2 files changed, 1193 insertions, 285 deletions
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
index 83805776f64..b33c56507f6 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> [2019/03/05 v0.68 Allows LaTeX to directly produce HTML5 output.]
+%<package> [2019/03/21 v0.69 Allows LaTeX to directly produce HTML5 output.]
%
%<*driver>
\documentclass{ltxdoc}
@@ -756,7 +756,7 @@ then interpreted by \prog{pdftotext}, and thus usually appear as a single space.
Some \pkg{textcomp} symbols do not have Unicode equivalents, and thus
are not supported.
-Many \pkg{textcomp} symbols are not supported by many fonts.
+Many \pkg{textcomp} symbols are not supported by many system \Slash browser fonts.
\trouble[missing symbols]{textcomp=\pkg{textcomp}>missing symbols}
\trouble{font>missing symbols}
In the \CSS\ try referencing fonts which are more complete, but expect to see gaps in coverage.
@@ -892,8 +892,11 @@ footnotes when \cs{VerbatimFootnotes} are selected. The browser usually compens
}
\newcommand{\limitsmanyfootbigfoot}{%
-If using the \pkg{bigfoot} package, and possibly also \pkg{manyfoot},
+Verbatim footnotes are not yet supported.
\margintag{\pkg{bigfoot}, \pkg{manyfoot}}
+\watchout[verbatim]
+
+If using the \pkg{bigfoot} package, and possibly also \pkg{manyfoot},
\trouble{bigfoot=\pkg{bigfoot}}
\trouble{manyfoot=\pkg{manyfoot}}
problems may occur with counter allocation because \pkg{lwarp} uses many counters,
@@ -1280,7 +1283,8 @@ instead of dollar math \texttt{\$x+y\$}.
(Dollar math works, but appears in the filename.)
Or, use a short name for the \TOC\ entry without the math, or use \cs{texorpdfstring}:
\begin{sourcedisplay}
-\cs{section}\{A math \cs{texorpdfstring}\{\$1+2=3\$\}\{text description\} name\}
+\cs{section}\{A name with math \\
+ \fqquad \cs{texorpdfstring}\{\$1+2=3\$\}\{text description\}\}
\end{sourcedisplay}
}
@@ -1687,30 +1691,6 @@ or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xta
\item [Cell contents:] \
\begin{itemize}
- \item For \pkg{multirow}, insert \cs{mrowcell} into any empty multi-row cells.
- \trouble[\cs{multirow}]{tabular>multirow=\pkg{multirow}}
- \trouble{multirow=\pkg{multirow}}
- This will be a null function for the print output, and is a placeholder for
- parsing the table for \HTML\ output.
- \begin{sourcedisplay}
- \small
- \begin{tabular}{lll}
- \dots\ \& & \cs{multirow}\{2\}\{.5in\}\{text\} & \&\ \dots \\
- \dots\ \& & \textred{\cs{mrowcell}} & \&\ \dots \\
- \end{tabular}
- \end{sourcedisplay}
- Note that recent versions of \pkg{multirow} include a new optional
- \margintag{\optn{vposn}}
- \optn{vposn} argument.
- \item The \pkg{multirow} documentation regarding colored cells recommends using
- a negative number of rows. This will not work with \pkg{lwarp}, so
- \cs{warpprintonly} and \cs{warpHTMLonly} must be used to make versions for
- print and \HTML.
- \item
- See \cref{sec:multicolumnmultirow} for \cs{multicolumrow}.
-
- \limitsmulticolumnrow
-
\item Using a custom macro inside a tabular data cell
\trouble[macro in a table]{tabular>macro inside}
\trouble{tabular>row corruption}
@@ -1792,10 +1772,6 @@ or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xta
Keep the \cs{endfirsthead} row unchanged, as it is still relevent to \HTML\ output.
\end{itemize}
-\item[\pkg{colortbl}:] \
-
- \limitscolortbl
-
\needspace{3\baselineskip}
\item[Other:] \
\begin{itemize}
@@ -1821,42 +1797,65 @@ or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xta
\end{description}
}
-\newcommand{\limitsmulticolumnrow}{%
-\pkg{lwarp} does not support
-\trouble[\cs{multicolumn} \& \cs{multirow}]{multirow=\cs{multirow} and \cs{multicolumn}}
-directly combining \cs{multicolumn} and \cs{multirow}.
-Use \cs{multicolumnrow} instead.
-To create a 2 column, 3 row cell:
-\begin{sourcedisplay}
-\cs{multicolumnrow}%
- \textcolor{blue}{\{2\}\{c\}}%
- \textgreen{[c]\{3\}[0]\{1in\}[0pt]}\{Text\}
-\end{sourcedisplay}
-The two arguments for \cs{multicolumn} come first, followed by
-the five arguments for \cs{multirow}, many of which are optional,
-followed by the contents.
-
-As per \cs{multirow},
-\watchout[skipped cells]
-skipped cells to the right of the \cs{multicolumnrow}
-statement are not included in the source code on the same line.
-On the following lines, \cs{mcolrowcell} must be used for each cell
-\watchout[empty cells]
-of each column and each row to be skipped:
-\begin{sourcedisplay}
-\small
-\begin{tabular}{lll}
-\dots\ \& & \cs{multicolumnrow}\{2\}\{c\}[c]\{3\}[0]\{1in\}[0pt]\{Text\} & \&\ \dots \\
-\dots\ \& & \textred{\cs{mcolrowcell}} \hfill \& \hfill \textred{\cs{mcolrowcell}} & \&\ \dots \\
-\dots\ \& & \textred{\cs{mcolrowcell}} \hfill \& \hfill \textred{\cs{mcolrowcell}} & \&\ \dots \\
-\end{tabular}
-\end{sourcedisplay}
+\newcommand*{\limitsmultirow}{%
+\begin{itemize}
+ \item Note that recent versions of \pkg{multirow} include a new optional
+ \margintag{\optn{vposn}}
+ \optn{vposn} argument.
+ \item For \pkg{multirow}, insert \cs{mrowcell} into any empty multi-row cells.
+ \margintag{multirow cells}
+ This will be a null function for the print output, and is a placeholder for
+ parsing the table for \HTML\ output. An error is generated if this is missed.
+ \begin{sourcedisplay}
+ \small
+ \begin{tabular}{lll}
+ \dots\ \& & \cs{multirow}\{2\}\{.5in\}\{text\} & \&\ \dots \\
+ \dots\ \& & \textred{\cs{mrowcell}} & \&\ \dots \\
+ \end{tabular}
+ \end{sourcedisplay}
+ \item The \pkg{multirow} documentation regarding colored cells recommends using
+ \margintag{colored cells}
+ a negative number of rows. This will not work with \pkg{lwarp}, so
+ \cs{warpprintonly} and \cs{warpHTMLonly} must be used to make versions for
+ print and \HTML.
+ \item
+ See \cref{sec:multicolumnmultirow} for \cs{multicolumrow}.
+ \margintag{with \cs{multicolumn}}
-Note that recent versions of \pkg{multirow} include a new optional
-\margintag{\optn{vposn}}
-\optn{vposn} argument.
+ \pkg{lwarp} does not support
+ \trouble[\cs{multicolumn} \& \cs{multirow}]{multirow=\cs{multirow} and \cs{multicolumn}}
+ directly combining \cs{multicolumn} and \cs{multirow}.
+ Use \cs{multicolumnrow} instead.
+ To create a 2 column, 3 row cell:
+ \begin{sourcedisplay}
+ \cs{multicolumnrow}%
+ \textcolor{blue}{\{2\}\{c\}}%
+ \textgreen{[c]\{3\}[0]\{1in\}[0pt]}\{Text\}
+ \end{sourcedisplay}
+ The two arguments for \cs{multicolumn} come first, followed by
+ the five arguments for \cs{multirow}, many of which are optional,
+ followed by the contents.
+
+ As per \cs{multirow},
+ \watchout[skipped cells]
+ skipped cells to the right of the \cs{multicolumnrow}
+ statement are not included in the source code on the same line.
+ On the following lines, \cs{mcolrowcell} must be used for each cell
+ \watchout[empty cells]
+ of each column and each row to be skipped.
+ An error is generated if this is missed.
+ \begin{sourcedisplay}
+ \small
+ \begin{tabular}{lll}
+ \dots\ \& & \cs{multicolumnrow}\{2\}\{c\}[c]\{3\}[0]\{1in\}[0pt]\{Text\} & \&\ \dots \\
+ \dots\ \& & \textred{\cs{mcolrowcell}} \hfill \& \hfill \textred{\cs{mcolrowcell}} & \&\ \dots \\
+ \dots\ \& & \textred{\cs{mcolrowcell}} \hfill \& \hfill \textred{\cs{mcolrowcell}} & \&\ \dots \\
+ \end{tabular}
+ \end{sourcedisplay}
+\end{itemize}
}
+
\newcommand{\limitsresumetabular}{%
When creating a new environment
\trouble[\env{tabular} inside another environment]{tabular>inside an environment}
@@ -1976,16 +1975,18 @@ are above or below the delimiter:
\hrule\smallskip
\cs{begin}\{tabular\}\{lll\} \\
\textgreen{<empty>} \& a \& b \textbackslash\textbackslash \\
-\cs{ldelim}\{\textbackslash\{\}\{2\}\{.25in\}[left ] \& c \& d \textbackslash\textbackslash \\
+\cs{ldelim}\{\textbackslash\{\}\{3\}\{.25in\}[left ] \& c \& d \textbackslash\textbackslash \\
\textred{\cs{mrowcell}} \& e \& f \textbackslash\textbackslash \\
-\textgreen{<empty>} \& g \& h \textbackslash\textbackslash \\
+\textred{\cs{mrowcell}} \& g \& h \textbackslash\textbackslash \\
+\textgreen{<empty>} \& i \& j \textbackslash\textbackslash \\
\cs{end}\{tabular\}
\smallskip\hrule
\begin{tabular}{lll}
-\textgreen{<>} & a & b \\
-\ldelim{\{}{2}{.25in}[left ] & c & d \\
+\textgreen{<->} & a & b \\
+\ldelim{\{}{3}{.25in}[left ] & c & d \\
\mrowcell & e & f \\
-\textgreen{<>} & g & h \\
+\mrowcell & g & h \\
+\textgreen{<->} & i & j \\
\end{tabular}
\hrule
\end{sourcedisplay}
@@ -1999,6 +2000,14 @@ in that order.
\pkg{colortbl} ignores the overhang arguments.
}
+\newcommand{\limitsctable}{%
+Use \cs{StartDefiningTabulars} before one or more \cs{ctable}s,
+\trouble[Misplaced alignment tab character \&]%
+ {Misplaced alignment tab character \&>ctable=\pkg{ctable}}
+and \cs{StopDefiningTabulars} after. These change the meaning of the
+ampersand \texttt{\&} character.
+}
+
\newcommand{\limitsmakelabel}{%
While inside a list environment, \pkg{lwarp} nullifies a number of
@@ -2034,10 +2043,7 @@ A line break will occur in the text where the \cs{marginBlock} occurs.
\trouble{HTML>corrupted}
\TeX\ boxes are placed inline and do not allow line breaks, so boxes
with long contents may overflow the line during \HTML\ conversion.
-This is mostly a problem when the boxes contain objects which themselves
-hold large \HTML\ tags, such as rotation commands with long contents.
-When this object overflows the line, some \HTML\ code will be lost and
-the page will be corrupted.
+\pkg{lwarp} uses methods which help avoid this problem.
}
\newcommand{\limitsminipage}{%
@@ -2154,12 +2160,12 @@ may be defined as:
\begin{sourcedisplay}
\cs{newenvironment}\{FramedVerb\}[1] \% width\\
\{\\
-\cs{VerbatimEnvironment}\\
-\cs{fminipage}\{\#1\}\\
-\cs{begin}{Verbatim}\\
+\fquad\cs{VerbatimEnvironment}\\
+\fquad\cs{fminipage}\{\#1\}\\
+\fquad\cs{begin}{Verbatim}\\
\}\{\\
-\cs{end}{Verbatim}\\
-\cs{endfminipage}\\
+\fquad\cs{end}{Verbatim}\\
+\fquad\cs{endfminipage}\\
\}
\end{sourcedisplay}
@@ -2546,7 +2552,7 @@ This boolean may be tested by the user for later use.
%<*package>
% \fi
%
-% \CheckSum{30413}
+% \CheckSum{31088}
%
% \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
@@ -2657,6 +2663,7 @@ This boolean may be tested by the user for later use.
% \changes{v0.66}{2019/02/08}{\ 2019/02/08}
% \changes{v0.67}{2019/02/23}{\ 2019/02/23}
% \changes{v0.68}{2019/03/05}{\ 2019/03/05}
+% \changes{v0.69}{2019/03/21}{\ 2019/03/21}
@@ -2871,6 +2878,25 @@ This boolean may be tested by the user for later use.
%
% \begin{description}
% \needspace{2\baselineskip}
+% \item[v0.69:] Error handling, many fixes, improved \pkg{keyfloat} \Slash \pkg{tocdata}.
+% \begin{itemize}
+% \item Fix for \HTML\ corruption of \env{lateximage} displays.
+% \item \cs{makebox}, \cs{framebox}: Fix for \parg{width,height} arguments.
+% \item \env{fminipage}: Honors \cs{minipagefullwidth}.
+% \item \pkg{array}, \pkg{longtable}: Fix for \cs{tabularnewline}.
+% \margintag{packages}
+% \item \pkg{tabularx}, \pkg{tabulary}: Fix to require the \pkg{array} package.
+% \item \pkg{supertabular}, \pkg{xtab}: Fix to clear caption after use.
+% \item \pkg{graphics}: Added a warning if used the \cs{includegraphics}
+% \optn{scale} option.
+% \item \pkg{multirow}: Added an error if didn't use
+% \cs{mrowcell} or \cs{mcolrowcell} when using \cs{multirow} or
+% \cs{multicolumnrow}.
+% \item \pkg{keyfloat}: Updated for v2.00, additional improvements.
+% \item Added \pkg{ctable}, \pkg{eqlist}, \pkg{eqparbox}, \pkg{ftcap},
+% \pkg{listliketab}, \pkg{minitoc}, \pkg{tocdata}, \pkg{topcapt}.
+% \end{itemize}
+% \needspace{2\baselineskip}
% \item[v0.68:] Error handling, tabulars, footnotes.
% \begin{itemize}
% \item \prog{lwarpmk}: Improved error handling for image generation if
@@ -4455,8 +4481,9 @@ This boolean may be tested by the user for later use.
% Tested to work as-is: \pkg{secdot}.\\
%
% Table of contents, figures, tables: & Supported, with hyperlinks.
-% \pkg{multitoc}, \pkg{shorttoc}, \pkg{titletoc},
-% \pkg{tocbasic}, \pkg{tocbibind}, \pkg{tocloft}, \pkg{tocstyle}. \\
+% \pkg{minitoc}, \pkg{multitoc}, \pkg{shorttoc}, \pkg{titletoc},
+% \pkg{tocbasic}, \pkg{tocbibind}, \pkg{tocdata},
+% \pkg{tocloft}, \pkg{tocstyle}. \\
%
% Title page: & \cs{maketitle}, \env{titlepage}, \pkg{authblk}, \pkg{titling}. \\
%
@@ -4532,17 +4559,19 @@ This boolean may be tested by the user for later use.
% Floats: & Appear where declared.
% \pkg{capt-of}, \pkg{caption}, \pkg{cutwin},
% \pkg{dblfloatfix}, \pkg{endfloat}, \pkg{fix2col}, \pkg{flafter},
-% \pkg{float}, \pkg{floatflt}, \pkg{floatrow}, \pkg{fltrace},
+% \pkg{float}, \pkg{floatflt}, \pkg{floatrow}, \pkg{fltrace}, \pkg{ftcap},
% \pkg{hypcap}, \pkg{keyfloat}, \pkg{morefloats}, \pkg{multicap}, \pkg{newfloat},
% \pkg{nonfloat}, \pkg{placeins}, \pkg{rotfloat}, \pkg{stfloats},
% \pkg{subcaption}, \pkg{subfig}, \pkg{subfigure}, \pkg{subfloat},
-% \pkg{trivfloat}, \pkg{wrapfig}. \\
+% \pkg{topcapt}, \pkg{trivfloat}, \pkg{wrapfig}. \\
%
% \midrule
%
% Tabular: &
-% \env{tabular} environment, \pkg{array}, \pkg{arydshln}, \pkg{bigdelim}, \pkg{booktabs},
-% \pkg{colortbl}, \pkg{diagbox}, \pkg{longtable}, \pkg{ltablex}, \pkg{ltxtable},
+% \env{tabular} environment, \pkg{array}, \pkg{arydshln},
+% \pkg{bigdelim}, \pkg{booktabs},
+% \pkg{colortbl}, \pkg{ctable}, \pkg{diagbox}, \pkg{longtable},
+% \pkg{ltablex}, \pkg{ltxtable},
% \pkg{multirow}, \pkg{supertabular}, \pkg{tabularx}, \pkg{tabulary},
% \pkg{threeparttable}, \pkg{threeparttablex}, \pkg{xltabular}, \pkg{xtab}. \\
%
@@ -4577,14 +4606,15 @@ This boolean may be tested by the user for later use.
% \midrule
%
% Lists: & Standard \LaTeX\ environments,
-% \pkg{enumerate}, \pkg{enumitem}, \pkg{hang}, \pkg{paralist}.\\
+% \pkg{enumerate}, \pkg{enumitem}, \pkg{eqlist}, \pkg{hang},
+% \pkg{listliketab}, \pkg{paralist}.\\
%
% \midrule
%
% Environments: & Standard \LaTeX{} environments. \\
%
% \env{minipage}, \cs{parbox}: & Some \HTMLfive-imposed limitations.
-% Nested minipages are supported. \pkg{pbox}.\\
+% Nested minipages are supported. \pkg{eqparbox}, \pkg{pbox}.\\
%
% Quotations: & \pkg{copyrightbox}, \pkg{csquotes}, \pkg{epigraph},
% \pkg{quoting}, \pkg{verse}. \\
@@ -5926,7 +5956,7 @@ This boolean may be tested by the user for later use.
% ^^A Other image formats may have a file extension.
% \item \limitsmathinsectionnames
% \item \limitsincludegraphicsscale
-% \item Possible changes to \env{tabular} environments include
+% \item Possible changes to \env{tabular} environments include:
% |*| columns, \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, \pkg{xtab},
% \pkg{bigdelim}. See \cref{sec:limitstabular}.
% \item Possible option clashes with \pkg{memoir}. See \cref{sec:limitsmemoir}.
@@ -8547,10 +8577,26 @@ This boolean may be tested by the user for later use.
%
%
% \subsection{Tabular}
+%
+% \subsubsection{\env{tabular} environment}
% \label{sec:limitstabular}
% \changes{v0.39}{2017/08/30}{Docs: Reorganized tabular discussion.}
% \limitstabular
%
+% \subsubsection{\pkg{multirow} package}
+% \gindex{multirow=\pkg{multirow}>mrowcell=\cs{mrowcell} and \cs{mcolrowcell}}
+% \gindex{tabular>multirow=\pkg{multirow} \cs{mrowcell} and \cs{mcolrowcell}}
+% \gindex{mrowcell=\cs{mrowcell}}
+% \gindex{mcolrowcell=\cs{mcolrowcell}}
+% \trouble{multirow=\pkg{multirow}>mrowcell=\cs{mrowcell} and \cs{mcolrowcell}}
+% \trouble{tabular>multirow=\pkg{multirow} \cs{mrowcell} and \cs{mcolrowcell}}
+% \trouble{mrowcell=\cs{mrowcell}}
+% \trouble{mcolrowcell=\cs{mcolrowcell}}
+% \gindex{multicolumn=\cs{multicolumn}>with \cs{multirow}}
+% \gindex{multirow=\cs{multirow}>with \cs{multicolumn}}
+% \gindex{tabular>multicolumn=\cs{multicolumn} with \cs{multirow}}
+% \trouble{tabular>multicolumn=\cs{multicolumn} with \cs{multirow}}
+% \limitsmultirow
%
% \subsubsection{\pkg{longtable} package}
%
@@ -8573,6 +8619,16 @@ This boolean may be tested by the user for later use.
% \DescribePackage{xtab}
% \limitssupertabular
%
+% \subsubsection{\pkg{colortbl} package}
+%
+% \DescribePackage{colortbl}
+% \limitscolortbl
+%
+% \subsubsection{\pkg{ctable} package}
+% \trouble{ctable=\pkg{ctable}}
+% \gindex{ctable=\pkg{ctable}}
+% \limitsctable
+%
% \subsubsection{\pkg{bigdelim} package}
%
% \DescribePackage{bigdelim}
@@ -10355,10 +10411,15 @@ This boolean may be tested by the user for later use.
\@ifpackageloaded{#1}
{
\PackageError{lwarp}
- {Package #1, or one which uses #1, must be loaded after lwarp}
- {Move \detokenize{\usepackage}{#1} after \detokenize{\usepackage}{lwarp}.
- Package #1 may also be loaded by something else, which must also be moved
- after lwarp.}
+ {%
+ Package #1,\MessageBreak
+ or one which uses #1,\MessageBreak
+ must be loaded after lwarp
+ }
+ {Move \detokenize{\usepackage}{#1} after
+ \detokenize{\usepackage}{lwarp}.\MessageBreak
+ Package #1 may also be loaded by something else,\MessageBreak
+ which must also be moved after lwarp.}
}
{}
}
@@ -10449,11 +10510,16 @@ This boolean may be tested by the user for later use.
% \begin{macrocode}
\newcommand*{\LWR@loadnever}[2]{%
\PackageError{lwarp}
-{Package #1 is not supported by lwarp's HTML conversion.
-Package(s) #2 may be useful instead}
-{Package #1 might conflict with lwarp in some way,
-or is superceded by another package.
-For a possible alternative, see package(s) #2.}
+{%
+ Package #1 is not supported\MessageBreak
+ by lwarp's HTML conversion.\MessageBreak
+ Package(s) #2 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.
+}
}
% \end{macrocode}
% \end{macro}
@@ -10488,11 +10554,16 @@ For a possible alternative, see package(s) #2.}
\newcommand*{\LWR@earlyloadnever}[2]{%
\@ifpackageloaded{#1}{%
\PackageError{lwarp}
-{Package #1 is not supported by lwarp's HTML conversion.
-Package(s) #2 may be useful instead}
-{Package #1 might conflict with lwarp in some way,
-or is superceded by another package.
-For a possible alternative, see package(s) #2.}
+{%
+ Package #1 is not supported\MessageBreak
+ by lwarp's HTML conversion.\MessageBreak
+ Package(s) #2 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.
+}
}{}%
}
% \end{macrocode}
@@ -10510,11 +10581,16 @@ For a possible alternative, see package(s) #2.}
\newcommand*{\LWR@earlyclassloadnever}[2]{%
\@ifclassloaded{#1}{%
\PackageError{lwarp}
-{Class #1 is not supported by lwarp's HTML conversion.
-Class(es) #2 may be useful instead}
-{Class #1 might conflict with lwarp in some way,
-or is superceded by another class.
-For a possible alternative, see class(es) #2.}
+{%
+ Class #1 is not supported\MessageBreak
+ by lwarp's HTML conversion.\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.
+}
}{}%
}
% \end{macrocode}
@@ -10672,6 +10748,7 @@ For a possible alternative, see class(es) #2.}
\LWR@loadafter{copyrightbox}
\LWR@notmemoirloadafter{crop}
% ctex must be loaded before lwarp
+\LWR@loadafter{ctable}
\LWR@loadafter{cuted}
\LWR@loadafter{cutwin}
\LWR@loadafter{dblfloatfix}
@@ -10698,6 +10775,8 @@ For a possible alternative, see class(es) #2.}
\LWR@loadafter{epsfig}
\LWR@loadafter{epstopdf}
\LWR@loadafter{epstopdf-base}
+\LWR@loadafter{eqlist}
+\LWR@loadafter{eqparbox}
\LWR@loadafter{errata}
\LWR@loadafter{eso-pic}
\LWR@loadafter{eurosym}
@@ -10742,6 +10821,7 @@ For a possible alternative, see class(es) #2.}
\LWR@loadafter{foreign}
\LWR@loadafter{forest}
\LWR@loadafter{framed}
+\LWR@loadafter{ftcap}
\LWR@loadafter{ftnright}
\LWR@loadafter{fullminipage}
\LWR@loadafter{fullpage}
@@ -10785,6 +10865,7 @@ For a possible alternative, see class(es) #2.}
\LWR@loadafter{lineno}
\LWR@loadafter{lips}
\LWR@loadafter{listings}
+\LWR@loadafter{listliketab}
\LWR@loadafter{longtable}
\LWR@loadafter{lscape}
\LWR@loadafter{ltablex}
@@ -10810,6 +10891,7 @@ For a possible alternative, see class(es) #2.}
\LWR@loadafter{microtype}
\LWR@loadafter{midfloat}
\LWR@loadafter{midpage}
+\LWR@loadafter{minitoc}
% morefloats must be allowed early for print mode
\LWR@notmemoirloadafter{moreverb}
% morewrites must be loaded before lwarp
@@ -10954,11 +11036,13 @@ For a possible alternative, see class(es) #2.}
\LWR@notmemoirloadafter{titling}
% \LWR@loadafter{tocbasic}% preloaded by koma-script classes
\LWR@notmemoirloadafter{tocbibind}
+\LWR@loadafter{tocdata}
\LWR@loadafter{tocenter}
\LWR@notmemoirloadafter{tocloft}
\LWR@loadafter{tocstyle}
\LWR@loadafter{todo}
\LWR@loadafter{todonotes}
+\LWR@loadafter{topcapt}
\LWR@loadafter{tram}
\LWR@loadafter{transparent}
\LWR@loadafter{trimclip}
@@ -12773,7 +12857,9 @@ For a possible alternative, see class(es) #2.}
% Uses the original package, including options.
% \begin{macrocode}
\NewDocumentCommand{\LWR@ProvidesPackagePass}{m o}{
-\PackageInfo{lwarp}{Using package `#1' and adding lwarp modifications, including options,}%
+\PackageInfo{lwarp}{%
+ Using package `#1' and adding lwarp modifications,\MessageBreak
+ including options,}%
\IfValueTF{#2}
{\ProvidesPackage{lwarp-#1}[#2]}
{\ProvidesPackage{lwarp-#1}}
@@ -12801,7 +12887,10 @@ For a possible alternative, see class(es) #2.}
% Drops/discards all options.
% \begin{macrocode}
\NewDocumentCommand{\LWR@ProvidesPackageDrop}{m o}{
-\PackageInfo{lwarp}{Replacing package `#1' with the lwarp version, discarding options,}%
+\PackageInfo{lwarp}{%
+ Replacing package `#1' with the lwarp version,\MessageBreak
+ and discarding options,%
+}%
\IfValueTF{#2}
{\ProvidesPackage{lwarp-#1}[#2]}
{\ProvidesPackage{lwarp-#1}}
@@ -14717,6 +14806,7 @@ div.titlepage {
div.marginblock, div.marginparblock {
max-width:50%;
+ min-width: 10em; /* room for caption */
float:right;
text-align:left;
margin: 1ex 0.5em 1ex 1em ;
@@ -15613,6 +15703,19 @@ span.alg2elinenumber{
span.floatright { float: right ; }
+/* keyfloat and tocdata: */
+.floatnotes {
+ margin: 0ex 5% 0ex 5% ;
+ padding: 0ex 1em 0ex 1em ;
+ font-size:.80em ;
+ text-align: left ;
+}
+
+.authorartist{
+ font-size:.70em ;
+ font-style: italic;
+}
+
/* Native LaTeX theorems: */
@@ -16778,7 +16881,7 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-
-- Copyright 2016-2018 Brian Dunn
-printversion = "v0.68"
+printversion = "v0.69"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
@@ -20953,13 +21056,17 @@ end -- not --version
% If the filename is not unique, create an error.
% \begin{macrocode}
\PackageError{lwarp}
- {
- Section name ``#1'', at the line number listed below,
- generates the filename ``\LWR@thisfilename'',
- which appears to be a duplicate.
- There is a previous section with an identical or similar name.%
+ {%
+ Section name\MessageBreak
+ ``#1'',\MessageBreak
+ at the line number listed below,\MessageBreak
+ generates the filename\MessageBreak
+ ``\LWR@thisfilename'',\MessageBreak
+ which appears to be a duplicate.\MessageBreak
+ There is a previous section with an\MessageBreak
+ identical or similar name%
}
- {
+ {%
Lwarp sanitizes most symbols and a few common short words
when generating file names, and this may cause a conflict.
}
@@ -21419,9 +21526,6 @@ end -- not --version
\global\boolfalse{LWR@minipagethispar}%
% \end{macrocode}
%
-%
-%
-%
% Start a new \HTML\ file unless starred,
% and if is a shallow sectioning depth.
%
@@ -24194,6 +24298,19 @@ end -- not --version
\newbool{LWR@skippingmcolrowcell}
% \end{macrocode}
+% \DescribeBoolean{LWR@usedmultirow}
+% Used to error if used \cs{multirow} or \cs{multicolumnrow} without
+% using \cs{mrowcell} or \cs{mcolrowcell}.
+% \begin{macrocode}
+\newbool{LWR@usedmultirow}
+% \end{macrocode}
+
+% \DescribeBoolean{LWR@foundmrowcell}
+% Used to error if used \cs{multirow} or \cs{multicolumnrow} without
+% using \cs{mrowcell} or \cs{mcolrowcell}.
+% \begin{macrocode}
+\newbool{LWR@foundmrowcell}
+% \end{macrocode}
% \DescribeBoolean{LWR@skipatbang}
% True if just finished a \cs{multicolumn} so should not create the trailing
@@ -24987,6 +25104,26 @@ end -- not --version
% \end{macrocode}
% \end{macro}
+
+% \subsection{Parsing '*' columns}
+%
+% \changes{v0.69}{2019/03/10}{Error if used a tabular * column.}
+% \begin{macro}{\LWR@parsestarcolumn}
+% \begin{macrocode}
+\newcommand*{\LWR@parsestarcolumn}{%
+ \PackageError{lwarp}%
+ {%
+ The tabular star column specifier\MessageBreak
+ *{xx}{yy}\MessageBreak
+ is not yet supported by lwarp%
+ }%
+ {Convert *{xx}{yy} to xx copies of yy.}%
+ \addtocounter{LWR@tablecolspecindex}{2}%
+}
+% \end{macrocode}
+% \end{macro}
+
+
% \subsection{Parsing `D' columns}
%
% From the \pkg{dcolumn} package.
@@ -25236,6 +25373,10 @@ end -- not --version
\IfStrEq{\LWR@strresult}{w}{\LWR@parsewcolumn}{}%
\IfStrEq{\LWR@strresult}{W}{\LWR@parsewcolumn}{}%
% \end{macrocode}
+% Error if found a star column:
+% \begin{macrocode}
+\IfStrEq{\LWR@strresult}{*}{\LWR@parsestarcolumn}{}%
+% \end{macrocode}
% From the \pkg{dcolumn} package:
% \begin{macrocode}
\IfStrEq{\LWR@strresult}{D}{\LWR@parseDcolumn{c}}{}%
@@ -27354,7 +27495,7 @@ rowspan="#2" %
% \begin{macro}{\mrowcell}
% The user must insert \cs{mrowcell} into any \cs{multirow} cells which must be skipped.
% This command has no action during print output.
-% \trouble[multirow cells]{tabular>multirow=\cs{multirow}}
+% \watchout[multirow cells]
% \begin{macrocode}
\newcommand*{\mrowcell}{}
% \end{macrocode}
@@ -27376,7 +27517,7 @@ rowspan="#2" %
% The user must insert \cs{mcolrowcell} into any \cs{multicolumnrow} cells
% which must be skipped.
% This command has no action during print output.
-% \trouble[multirow cells]{tabular>multirow=\cs{multirow}}
+% \watchout[multirow cells]
% \changes{v0.41}{2017/10/05}{Added for \cs{multicolumrow} cells.}
% \begin{macrocode}
\newcommand*{\mcolrowcell}{}
@@ -27551,16 +27692,24 @@ rowspan="#2" %
%
% \changes{v0.41}{2017/10/06}{Fix: \cs{NoAutoSpacing} in a tabular
% with \pkg{babel-french}.}
-%
% \begin{macrocode}
\LWR@nullifyNoAutoSpacing%
% \end{macrocode}
+%
% Have not yet found the end of tabular command.
% Unmute the |@| and |!| columns.
% \begin{macrocode}
\global\boolfalse{LWR@exitingtabular}%
\global\boolfalse{LWR@tabularmutemods}%
% \end{macrocode}
+%
+% Error if failed to use \cs{mrowcell} or \cs{mcolrowcell} when needed.
+% \changes{v0.69}{2019/03/07}{Error if \cs{multirow} without \cs{mrowcell}.}
+% \begin{macrocode}
+\boolfalse{LWR@usedmultirow}
+\boolfalse{LWR@foundmrowcell}
+% \end{macrocode}
+%
% Create the |table| tag:
% \begin{macrocode}
\global\booltrue{LWR@intabularmetadata}%
@@ -27572,6 +27721,7 @@ rowspan="#2" %
% \begin{macrocode}
\LWR@parsetablecols{#3}%
% \end{macrocode}
+%
% Table col spec is: \cs{LWR@tablecolspec} which is a string of |llccrr|, etc.
%
% Do not place the table inside a paragraph:
@@ -27670,16 +27820,19 @@ rowspan="#2" %
% The following create data cells and will have no more data in this cell,
% so we do not want to look ahead for a possible data cell,
% so do not want to use \cs{LWR@getmynexttoken}.
+% \changes{v0.69}{2019/03/07}{Error if \cs{multirow} without \cs{mrowcell}.}
% \begin{macrocode}
\renewcommand{\multicolumn}{\LWR@htmlmulticolumn}%
\renewcommand*{\mrowcell}{%
\LWR@maybenewtablerow%
\LWR@tabularleftedge%
\global\booltrue{LWR@skippingmrowcell}%
+ \booltrue{LWR@foundmrowcell}%
}%
\renewcommand*{\mcolrowcell}{%
\LWR@maybenewtablerow%
\global\booltrue{LWR@skippingmcolrowcell}%
+ \booltrue{LWR@foundmrowcell}%
}%
\LetLtxMacro\caption\LWR@longtabledatacaptiontag%
% \end{macrocode}
@@ -27763,6 +27916,33 @@ rowspan="#2" %
% \begin{macrocode}
\protected\gdef&{\LWR@origampmacro}%
\StopDefiningTabulars%
+% \end{macrocode}
+%
+% Error if used \cs{multirow} or \cs{multicolumnrow} without
+% using \cs{mrowcell} or \cs{mcolrowcell}.
+% \changes{v0.69}{2019/03/07}{Error if \cs{multirow} without \cs{mrowcell}.}
+% \begin{macrocode}
+\ifbool{LWR@usedmultirow}{%
+ \ifbool{LWR@foundmrowcell}%
+ {}%
+ {%
+ \PackageError{lwarp}%
+ {%
+ When using \protect\multirow, \protect\multicolumnrow,\MessageBreak
+ or the bigdelim package,\MessageBreak
+ place \protect\mrowcell\space or \protect\mcolrowcell\MessageBreak
+ in empty cells which are to be skipped.\MessageBreak
+ See the lwarp package documentation:\MessageBreak
+ "Special cases and limitations" -> "Tabular"
+ }%
+ {%
+ See the lwarp package documentation:\MessageBreak
+ "Special cases and limitations" -> "Tabular".
+ }%
+ }%
+}{}%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@traceinfo{LWR@HTML@endtabular finished}%
}
@@ -29390,6 +29570,12 @@ autopage-\theLWR@currentautosec%
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\LWR@maybetocdata} Replaced by \pkg{tocdata}. Adds author name.
+% \changes{v0.69}{2019/03/21}{Added support for \pkg{tocdata}.}
+% \begin{macrocode}
+\newcommand*{\LWR@maybetocdata}{}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\hypertoc} \marg{1: depth} \marg{2: type} \marg{3: name} \marg{4: page}
%
@@ -29421,6 +29607,12 @@ autopage-\theLWR@currentautosec%
\LWR@htmlrefsectionfilename{autopage-#4}%
\LWR@origpound\LWR@print@mbox{autosec-#4}%
}{#3}{toc#2}%
+% \end{macrocode}
+% \changes{v0.69}{2019/03/21}{Added support for \pkg{tocdata}.}
+% \begin{macrocode}
+ \LWR@maybetocdata%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@stoppars%
}%
{}%
@@ -29487,6 +29679,12 @@ autopage-\theLWR@currentautosec%
\LWR@htmlrefsectionfilename{autopage-\arabic{LWR@nextautopage}}%
\LWR@origpound\LWR@print@mbox{autoid-\arabic{LWR@nextautoid}}}%
{#4}{toc#2}%
+% \end{macrocode}
+% \changes{v0.69}{2019/03/21}{Added support for \pkg{tocdata}.}
+% \begin{macrocode}
+ \LWR@maybetocdata%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@stoppars%
}%
{}%
@@ -32032,11 +32230,11 @@ autopage-\theLWR@currentautosec%
{% end of outer-most lateximage
% \end{macrocode}
% Finish the lateximage minipage and start a new \PDF\ page:
+% \changes{v0.69}{2019/03/14}{Fix for \prog{pdftotext} errors from font size change.}
% \begin{macrocode}
\LWR@traceinfo{lateximage: ending outer-most lateximage}%
\endLWR@print@minipage%
\LWR@orignewpage%
- \LWR@print@scriptsize%
% \end{macrocode}
% Close the \HTML\ comment which encapsulated any traces of the lateximage picked up by \prog{pdftotext}:
% \begin{macrocode}
@@ -32949,6 +33147,8 @@ autopage-\theLWR@currentautosec%
% Minipage footnotes are gathered in \cref{sec:footnotesminipage},
% and then placed into the document in \cref{sec:footnotesminipageplaced}.
%
+%
+%
% \subsection{Minipage handling}
% \label{sec:footnotesminipageplaced}
%
@@ -33259,72 +33459,100 @@ autopage-\theLWR@currentautosec%
% \end{macro}
%
%
+% \begin{macro}{\LWR@@makebox@paren} \marg{width} , \marg{height}
%
-% \begin{macro}{\makebox} \parg(posn) \oarg{width} \oarg{pos} \marg{text}
-%
-% \changes{v0.34}{2017/07/31}{Fix: Handles paren arg.}
-% \changes{v0.36}{2017/08/15}{Fix: Handles width and horiz position.}
-% \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
+% Adds to the style in \cs{LWR@temptwo}.
% \begin{macrocode}
-\NewDocumentCommand{\LWR@HTML@makebox}{d() o o m}{%
-% \end{macrocode}
-% Check for the optional width:
-% \begin{macrocode}
-\IfValueTF{#2}%
-{%
+\NewDocumentCommand{\LWR@@makebox@paren}{m m}{%
+\IfValueTF{#2}{%
+ \setlength{\LWR@tempwidth}{#1\unitlength}%
+ \setlength{\LWR@tempheight}{#2\unitlength}%
+ \appto{\LWR@temptwo}{%
+ \LWR@print@mbox{width:\LWR@printlength{\LWR@tempwidth}} ; % space
+ \LWR@print@mbox{height:\LWR@printlength{\LWR@tempheight}} ; % space
+ }%
+}{%
+ \PackageError{lwarp}%
+ {(width,height) is missing a comma ',' character}%
+ {\protect\makebox\space \protect\framebox\space accept
+ a size in the format (width,height).}%
+}%
+}
% \end{macrocode}
-% Check for the horizontal text alignment.
-% For |s|tretched, the best \HTML\ can do is \attribute{justified} alignment.
+% \end{macro}
+%
+% \begin{macro}{\LWR@@makebox@align} \marg{alignment character}
+%
+% Adds to the style in \cs{LWR@temptwo}.
% \begin{macrocode}
- {% scope
+\newcommand*{\LWR@@makebox@align}[1]{%
\def\LWR@align{center}%
- \ifstrequal{#3}{l}{\def\LWR@align{left}}{}%
- \ifstrequal{#3}{r}{\def\LWR@align{right}}{}%
- \ifstrequal{#3}{s}{\def\LWR@align{justify}}{}%
+ \ifstrequal{#1}{l}{\def\LWR@align{left}}{}%
+ \ifstrequal{#1}{r}{\def\LWR@align{right}}{}%
+ \ifstrequal{#1}{s}{\def\LWR@align{justify}}{}%
+ \appto{\LWR@temptwo}{%
+ \LWR@print@mbox{text-align:\LWR@align} ; %
+ }%
+}
% \end{macrocode}
-% To print the \attribute{width} argument:
+% \end{macro}
+%
+%
+% \begin{macro}{\makebox} \parg{width,height} \oarg{width} \oarg{pos} \marg{text}
+%
+% \changes{v0.34}{2017/07/31}{Fix: Handles paren arg.}
+% \changes{v0.36}{2017/08/15}{Fix: Handles width and horiz position.}
+% \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
+% \changes{v0.69}{2019/03/09}{Fix: Handle paren arg.}
% \begin{macrocode}
- \setlength{\LWR@tempwidth}{#2}%
+\NewDocumentCommand{\LWR@HTML@makebox}{>{\SplitArgument{1}{,}}d() o o m}{%
% \end{macrocode}
-% \attribute{inline-block} allows \attribute{width} and
-% \attribute{text-alignment} to be used in a \element{span}.
-% \changes{v0.47}{2018/01/26}{Fix: Line wrap at \HTML\ hyphen.}
+%
+% Build the style depending on arguments:
% \begin{macrocode}
+{% scope
+ \def\LWR@temptwo{}%
+ \IfValueTF{#1}%
+ {% (width,height) ..
+ \LWR@@makebox@paren #1%
+ \IfValueT{#2}%
+ {% (width,height) [posn]
+ \LWR@@makebox@align{#2}%
+ }%
+ }%
+ {% [width]
+ \setlength{\LWR@tempwidth}{#2}%
+ \appto{\LWR@temptwo}{%
+ width:\LWR@printlength{\LWR@tempwidth} ; % space
+ }%
+ \IfValueT{#3}%
+ {% [width] [posn]
+ \LWR@@makebox@align{#3}%
+ }%
+ }%
\InlineClass[%
\LWR@print@mbox{display:inline-block} ; %
- \LWR@print@mbox{text-align}:\LWR@align\ ; %
- width:\LWR@printlength{\LWR@tempwidth}%
+ \LWR@temptwo%
]%
{makebox}%
-% \end{macrocode}
-% \changes{v0.46}{2018/01/19}{Fix: Lateximage in a \cs{makebox}.}
-% ^^A Now prints directly instead of inside a \mbox.
-% \begin{macrocode}
{#4}%
- }% scope
-}%
-% \end{macrocode}
-% Without a width argument, the text is simply used inline:
-% \changes{v0.46}{2018/01/19}{Fix: Lateximage in a \cs{makebox}.}
-% ^^A Now prints directly instead of inside a \mbox.
-% \begin{macrocode}
-{#4}% no width
+}% scope
}
-
\LWR@formatted{makebox}
% \end{macrocode}
% \end{macro}
%
%
-% \begin{macro}{\framebox} \oarg{width} \oarg{pos} \marg{text}
+% \begin{macro}{\framebox} \parg{width,height} \oarg{width} \oarg{pos} \marg{text}
% \changes{v0.36}{2017/08/15}{Fix: Handles width and horiz position.}
% \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
+% \changes{v0.69}{2019/03/09}{Fix: Handle paren arg.}
%
% \begin{macrocode}
\LetLtxMacro\LWR@origframebox\framebox
-\NewDocumentCommand{\LWR@HTML@framebox}{o o m}{%
-\fbox{\makebox[#1][#2]{#3}}%
+\NewDocumentCommand{\LWR@HTML@framebox}{d() o o m}{%
+ \fbox{\makebox(#1)[#2][#3]{#4}}%
}
\LWR@formatted{framebox}
@@ -33502,9 +33730,11 @@ color:\LWR@origpound\LWR@tempcolor%
\end{warpall}
% \end{macrocode}
-
+%
% \HTML\ version:
+%
% \codehtml
+% \changes{v0.69}{2019/03/09}{Honors \cs{minipagefullwidth}.}
% \begin{macrocode}
\begin{warpHTML}
@@ -33523,7 +33753,17 @@ color:\LWR@origpound\LWR@tempcolor%
\begin{BlockClass}[%
\LWR@fboxstyle ; %
\IfValueT{#2}{height:\LWR@printlength{\LWR@tempheight} ; }%
-width:\LWR@printlength{\LWR@tempwidth}%
+\ifbool{LWR@minipagefullwidth}%
+{\global\boolfalse{LWR@minipagefullwidth}}%
+{%
+ \ifbool{LWR@forceminipagefullwidth}%
+ {}%
+ {%
+ \ifthenelse{\lengthtest{\LWR@tempwidth}=\linewidth}%
+ {}%
+ {width:\LWR@printlength{\LWR@tempwidth} ; }%
+ }%
+}%
]{fminipage}%
}
{%
@@ -36907,11 +37147,12 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
% \begin{macrocode}
\@ifpackageloaded{mdframed}{
\PackageError{lwarp}
- {Package mdframed must be loaded after package amsthm.}
+ {Package mdframed must be loaded after package amsthm}
{%
- Move \detokenize{\usepackage}{amsthm} before \detokenize{\usepackage}{mdframed}.
- Package amsthm may be loaded by something else, which must also be moved
- before mdframed.%
+ Move \detokenize{\usepackage}{amsthm} before
+ \detokenize{\usepackage}{mdframed}.\MessageBreak
+ Package amsthm may be loaded by something else,\MessageBreak
+ which must also be moved before mdframed.%
}
}
{}
@@ -37403,6 +37644,12 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"%
\LWR@expandableformatted{lasthline}
% \end{macrocode}
%
+% \changes{v0.69}{2019/03/09}{\pkg{array}: Fix for \cs{tabularnewline}.}
+% \begin{macrocode}
+\providecommand*{\LWR@HTML@tabularnewline}{\LWR@tabularendofline}
+\LWR@formatted{tabularnewline}
+% \end{macrocode}
+%
% \iffalse
%</array>
% \fi
@@ -41815,6 +42062,170 @@ name = \chemmacros_translate:n {scheme-name}
%
%
% \iffalse
+%<*ctable>
+% \fi
+%
+% \part{lwarp-ctable.sty}
+%
+% \section{ctable}
+%
+% \credits{Wybo Dekker}
+%
+% \DescribePackage{ctable}
+% \pkg{ctable} is patched for use by \pkg{lwarp}.
+%
+% \limitsctable
+%
+% \changes{v0.69}{2019/03/09}{\pkg{ctable}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{ctable}[2015/10/17]
+% \end{macrocode}
+%
+% The following is in the original:
+% \begin{macrocode}
+\newcommand{\LWR@HTML@ctable}[4][]{%
+ \let\@CTtaborfig \@dfltCTtaborfig
+ \let\@CTalign \@dfltCTalign
+ \let\@CTsideways \@dfltCTsideways
+ \let\@CTcontinued \empty
+ \let\@CTpos \@dfltCTpos
+ \let\@CTcaption \empty
+ \let\@CTcap \undefined
+ \let\@CTlabel \empty
+ \let\@CTbotcap \@dfltCTbotcap
+ \let\@CTstarred \@dfltCTstarred
+ \let\@CTsuper \@dfltCTsuper
+ \let\@CTnotespar \@dfltCTnotespar
+ \let\@CTdoinside \@dfltCTdoinside
+ \let\@CTbgopacity \@dfltCTbgopacity
+ \@CTframerule \@dfltCTframerule
+ \@CTcaptionskip \@dfltCTcaptionskip
+ \@CTframesep \@dfltCTframesep
+ \@CTwidth \@dfltCTwidth
+ \@CTmaxwidth \@dfltCTmaxwidth
+ \@CTmincapwidth \@dfltCTmincapwidth
+ \@CTfooterwidth \@dfltCTfooterwidth
+ \def\@CTfgactual {@dfltCTframefg}%
+ \def\@CTbgactual {@dfltCTframebg}%
+ \def\@CTbeg {\begin{\@CTsideways\@CTtaborfig\@CTstarred}}%
+ \def\@CTbegin {\@CTbeg}%
+ \def\@CTend {\end{\@CTsideways\@CTtaborfig\@CTstarred}}%
+ \setkeys{CT}{#1}%
+ \ifx\@CTcap\undefined\let\@CTcap\@CTcaption\fi
+ \ifx\@CTcap\empty
+ \if@CTcaptionloaded\else
+ \PackageWarningNoLine{ctable}{\MessageBreak
+ An empty cap= option prevents lot/loc entry only\MessageBreak
+ if the caption package is loaded!}
+ \fi
+ \fi
+ \if@CTinmemoir\else
+ \ifx\@CTbotcap\undefined
+ \PackageError{ctable}{\MessageBreak
+ You can, currently, use the sidecap option only with\MessageBreak
+ memoir documents. Use topcap or botcap only}
+ \fi
+ \fi
+ \ifdim\@CTwidth=0pt\else
+ \ifdim\@CTmaxwidth=0pt\else
+ \PackageError{ctable}{\MessageBreak
+ You may not use the width and maxwidth options together\MessageBreak
+ Use either width or maxwidth}
+ \fi
+ \fi
+ \ifx\@CTpos\empty
+ \ifx\@CTsideways\empty\else
+ \PackageError{ctable}{\MessageBreak
+ You may not use the pos and sideways options together\MessageBreak
+ Rotated tables and figures are always typeset on a separate page}
+ \fi
+ \fi
+ \ifx\@CTcaption\empty
+ \ifx\@CTlabel\empty\else
+ \PackageError{ctable}{\MessageBreak
+ You may not label a captionless table\MessageBreak
+ Such a label can't be referenced}
+ \fi
+ \fi
+% \end{macrocode}
+%
+% Some of the original, regarding computing the width of \cs{CT@t}, is removed here.
+%
+% \begin{macrocode}
+ \@CTbegin
+ \ifx\@CTcontinued\empty\else\addtocounter{\@CTtaborfig}{-1}\fi
+ \@CTalign
+% \end{macrocode}
+%
+% \pkg{lwarp}'s patches begin here:
+% \begin{macrocode}
+ \begin{center}
+ \setlength{\fboxrule}{\@CTframerule}
+ \setlength{\fboxsep}{\@CTframesep}
+ \LWR@forceminwidth{\fboxrule}% lwarp
+ \convertcolorspec{named}{\@CTbgactual}{HTML}\LWR@tempcolor% lwarp
+ \begin{BlockClass}[% lwarp
+ border:
+ \LWR@printlength{\LWR@atleastonept}
+ solid
+ \LWR@colorstyle{named}{\@CTfgactual} ; %
+ padding:\LWR@printlength{\fboxsep} ; %
+ \ifdefstring{\LWR@tempcolor}{FFFFFF}{}{%
+ background: \LWR@colorstyle{named}{\@CTbgactual} ; %
+ }%
+ ]{fminipage}% lwarp
+ \ifx\@CTbotcap\@CTfalse\@CTCaption\vskip\@CTcaptionskip\fi
+ \ifx\@CTbotcap\undefined%
+ \begin{sidecaption}[\@CTcap]{\@CTcaption}[\@CTlabel]
+ \fi
+ \@CTdoinside
+ \begin{tabularx}{\linewidth}{#2}% lwarp
+ #4%
+ \end{tabularx}% lwarp
+ \def\@CTfootnotes{#3}%
+ \ifx#3\empty\else{% append footnotes, if any
+ \begin{BlockClass}{tnotes}% lwarp
+ #3
+ \end{BlockClass}% lwarp
+ }
+ \fi
+ \ifx\@CTbotcap\undefined\end{sidecaption}\fi
+ \ifx\@CTbotcap\@CTtrue\vskip\@CTcaptionskip\@CTCaption\fi
+ \end{BlockClass}
+ \end{center}
+ \@CTend
+}
+\LWR@formatted{ctable}
+% \end{macrocode}
+%
+% Required to properly detect the toprule:
+% \begin{macrocode}
+\LetLtxMacro\FL\toprule
+% \end{macrocode}
+%
+% Table notes are redefined for \HTML:
+% \begin{macrocode}
+\newcommand{\LWR@HTML@tmark}[1][a]{%
+ \textsuperscript{\textrm{\textit{#1}}}
+}
+\LWR@formatted{tmark}
+
+\newcommand{\LWR@HTML@tnote}[2][a]{%
+ \tmark[#1]\,#2\par
+}
+\LWR@formatted{tnote}
+% \end{macrocode}
+%
+% \iffalse
+%</ctable>
+% \fi
+%
+%
+%
+% \iffalse
%<*cuted>
% \fi
%
@@ -43111,6 +43522,114 @@ name = \chemmacros_translate:n {scheme-name}
%
%
%
+%
+% \iffalse
+%<*eqlist>
+% \fi
+%
+% \part{lwarp-eqlist.sty}
+%
+% \section{eqlist}
+%
+% \DescribePackage{eqlist}
+% \pkg{eqlist} is emulated.
+%
+% \changes{v0.69}{2019/03/08}{\pkg{eqlist}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{eqlist}[2002/08/15]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newenvironment{eqlist}[1][]{\description}{\enddescription}
+\newenvironment{eqlist*}[1][]{\description}{\enddescription}
+\newenvironment{Eqlist}[2][]{\description}{\enddescription}
+\newenvironment{Eqlist*}[2][]{\description}{\enddescription}
+\newcommand*{\longitem}[1][]{\item[#1]}
+\newcommand*{\eqlistinit}{}
+\newcommand*{\eqliststarinit}{}
+\newcommand*{\eqlistinitpar}{}
+\def\eqlistlabel#1{#1}
+\newcommand{\eqlistauto}[1]{}
+\newcommand{\eqlistnoauto}{}
+% \end{macrocode}
+%
+% \iffalse
+%</eqlist>
+% \fi
+%
+%
+%
+%
+% \iffalse
+%<*eqparbox>
+% \fi
+%
+% \part{lwarp-eqparbox.sty}
+%
+% \section{eqparbox}
+%
+% \credits{Scott Pakin}
+%
+% \DescribePackage{eqparbox}
+% \pkg{eqparbox} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.69}{2019/03/08}{\pkg{eqparbox}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{eqparbox}[2017/09/03]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\NewDocumentCommand{\LWR@HTML@eqparbox}{O{t} O{} O{t} m +m}{%
+ {%
+ \minipagefullwidth%
+ \parbox[#1][#2][#3]{\linewidth}{#5}%
+ }%
+}
+\LWR@formatted{eqparbox}
+
+\NewDocumentCommand{\LWR@HTML@eqmakebox}{o o m}{%
+ \makebox[#2]{#3}%
+}
+\LWR@formatted{eqmakebox}
+
+\NewDocumentCommand{\LWR@HTML@eqframebox}{o o m}{%
+ \framebox[#2]{#3}%
+}
+\LWR@formatted{eqframebox}
+
+\NewDocumentEnvironment{LWR@HTML@eqminipage}{O{t} O{} O{t} m}
+{%
+ \begingroup%
+ \minipagefullwidth%
+ \minipage[#1][#2][#3]{\linewidth}%
+}%
+{%
+ \endminipage%
+ \endgroup%
+}
+
+\newcommand*{\LWR@HTML@eqboxwidth}[1]{.25\linewidth}
+\LWR@formatted{eqboxwidth}
+
+\newcommand*{\LWR@HTML@eqsetminwidth}[2]{}
+\newcommand*{\LWR@HTML@eqsetmaxwidth}[2]{}
+
+\newcommand*{\LWR@HTML@eqsetminwidthto}[2]{}
+\newcommand*{\LWR@HTML@eqsetmaxwidthto}[2]{}
+% \end{macrocode}
+%
+% \iffalse
+%</eqparbox>
+% \fi
+%
+%
+%
% \iffalse
%<*errata>
% \fi
@@ -46069,6 +46588,30 @@ solid \LWR@origpound\LWR@tempcolor ; %
%
%
%
+% \iffalse
+%<*ftcap>
+% \fi
+%
+% \part{lwarp-ftcap.sty}
+%
+% \section{ftcap}
+%
+% \DescribePackage{ftcap}
+% \pkg{ftcap} is ignored.
+%
+% \changes{v0.69}{2019/03/17}{\pkg{ftcap}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{ftcap}
+% \end{macrocode}
+%
+% \iffalse
+%</ftcap>
+% \fi
+%
+%
%
%
% \iffalse
@@ -46654,8 +47197,16 @@ solid \LWR@origpound\LWR@tempcolor ; %
% ^^A \define@key{igraph}{yscale}{\renewcommand*{\LWR@igyscale}{#1}}
% It appears that \pkg{graphicx} does not have separate keys for
% |xscale| and |yscale|. |scale| adjusts both at the same time.
+% \changes{v0.69}{2019/03/10}{\pkg{graphics}: Warning if using \optn{scale} option.}
% \begin{macrocode}
\define@key{igraph}{scale}{%
+ \ifthenelse{\equal{#1}{1}}{}{% must expand #1
+ \PackageWarning{lwarp}{%
+ It is recommended to use\MessageBreak
+ [width=xx\protect\linewidth]\MessageBreak
+ instead of [scale=yy],%
+ }%
+ }%
\renewcommand*{\LWR@igxscale}{#1}%
\renewcommand*{\LWR@igyscale}{#1}%
}
@@ -48939,16 +49490,29 @@ alt="\LWR@igalt" \LWR@orignewline%
% \credits{Brian Dunn}
%
% \DescribePackage{keyfloat}
-% \pkg{keyfloat} is supported with minor adjustments.
+% \pkg{keyfloat} is supported with a considerable amount of hacking.
+% (It's a mashup of \pkg{lwarp}, \pkg{keyfloat}, and \pkg{tocdata}.)
%
% \limitskeyfloat
%
% \changes{v0.20}{2017/01/16}{\pkg{keyfloat}: Added.}
% \changes{v0.31}{2017/05/12}{\pkg{keyfloat}: Improved compatibility.}
+% \changes{v0.69}{2019/03/20}{\pkg{keyfloat}: Updated for v2.00.}
%
% \codehtml
% \begin{macrocode}
-\LWR@ProvidesPackagePass{keyfloat}[2017/05/12]
+\LWR@ProvidesPackagePass{keyfloat}[2019/03/21]
+
+\@ifpackagelater{keyfloat}{2019/03/21}{}{
+ \PackageError{lwarp-keyfloat}
+ {%
+ The keyfloat package is out of date.\MessageBreak
+ Update to keyfloat v2.00 2019/03/21 or later%
+ }
+ {%
+ Please update the keyfloat package. It's worth it!%
+ }
+}
% \end{macrocode}
% After \pkg{keyfloat} has loaded:
@@ -48956,76 +49520,117 @@ alt="\LWR@igalt" \LWR@orignewline%
\AtBeginDocument{
% \end{macrocode}
%
-% ^^A *8* use a virtual line width instead of \linewidth
-% ^^A% Modified to use \cs{LWR@minipagewidth} instead of \cs{linewidth}:
-% ^^A% \begin{macrocode}
-% ^^A\renewcommand*{\KFLT@findwidths}{%
-% ^^A\typeout{*** KFLT@findwidths start}% *8*
-% ^^A% \end{macrocode}
-% ^^A% Default to a box of full \cs{linewidth} minus the potential frame:
-% ^^A% \begin{macrocode}
-% ^^A\ifthenelse{\boolean{KFLT@ft}}% tight frame?
-% ^^A{\setlength{\KFLT@boxwidth}{\linewidth - 2\KFLTtightframewidth}}%
-% ^^A{% not tight frame
-% ^^A\ifthenelse{\boolean{KFLT@f}}% loose frame?
-% ^^A{\setlength{\KFLT@boxwidth}{\linewidth - 2\KFLTlooseframewidth}}%
-% ^^A{\setlength{\KFLT@boxwidth}{\linewidth}}% no frame
-% ^^A}% not tight frame
-% ^^A% \end{macrocode}
-% ^^A% Several width options exist. First see if width was given:
-% ^^A% \begin{macrocode}
-% ^^A\ifthenelse{\dimtest{\KFLT@w}{>}{0pt}}%
-% ^^A% \end{macrocode}
-% ^^A% Width was given:
-% ^^A% \begin{macrocode}
-% ^^A{\setlength{\KFLT@imagewidth}{\KFLT@w}}%
-% ^^A{% width not given
-% ^^A% \end{macrocode}
-% ^^A% Use full \cs{linewidth} or only a fraction:
-% ^^A% \begin{macrocode}
-% ^^A\ifcsempty{\KFLT@lw}%
-% ^^A{\setlength{\KFLT@imagewidth}{\KFLT@boxwidth}}%
-% ^^A{\setlength{\KFLT@imagewidth}{\KFLT@lw\KFLT@boxwidth}}%
-% ^^A}% width not given
-% ^^A\typeout{*** KFLT@findwidths end}% *8*
-% ^^A}
-% ^^A% \end{macrocode}
-%
+% \begin{macrocode}
+\providecommand*{\KFLT@LWR@hook@boxouter}{}
+\renewcommand*{\KFLT@LWR@hook@boxouter}{%
+ \ifbool{KFLT@keywrap}{}{%
+ \ifnumequal{\value{KFLT@keyfloatdepth}}{0}{%
+ \setlength{\linewidth}{6in}%
+ \setlength{\textwidth}{6in}%
+ \setlength{\textheight}{9in}%
+ }{}%
+ }%
+}
+
+\let\KFLT@LWR@hook@boxouter@minipage\relax
+\let\endKFLT@LWR@hook@boxouter@minipage\relax
+\newenvironment*{KFLT@LWR@hook@boxouter@minipage}[2][]{}{}
+
+\providecommand*{\KFLT@LWR@hook@keysubfloats}{}
+\renewcommand*{\KFLT@LWR@hook@keysubfloats}{%
+ \ifbool{KFLT@keywrap}{}{%
+ \ifnumequal{\value{KFLT@keyfloatdepth}}{0}{%
+ \setlength{\linewidth}{6in}%
+ \setlength{\textwidth}{6in}%
+ \setlength{\textheight}{9in}%
+ }{}%
+ }%
+}
+
+\let\KFLT@LWR@hook@keyfloatsminipage\relax
+\let\endKFLT@LWR@hook@keyfloatsminipage\relax
+\newenvironment*{KFLT@LWR@hook@keyfloatsminipage}[1]{}{}
+
+\providecommand*{\KFLT@LWR@hook@keyfloats}{}
+\renewcommand*{\KFLT@LWR@hook@keyfloats}{%
+ \ifbool{KFLT@keywrap}{}{%
+ \ifnumequal{\value{KFLT@keyfloatdepth}}{0}{%
+ \setlength{\linewidth}{6in}%
+ \setlength{\textwidth}{6in}%
+ \setlength{\textheight}{9in}%
+ }{}%
+ }%
+}
+
+\renewcommand*{\KFLT@maybeendfloatrow}{%
+ \ifnumless{\value{KFLT@thiscol}}{\value{KFLT@numcols}}%
+ {}% thiscol < numcols
+ {% >=
+ \defcounter{KFLT@thiscol}{0}%
+ }%
+}%
+
+\renewcommand{\KFLT@trackrows}%
+{%
+% \end{macrocode}
+% If are nested inside a keyfloats or a subfloat:
+% \begin{macrocode}
+ \ifboolexpr{%
+ test {\ifnumgreater{\value{KFLT@keyfloatdepth}}{0}} or%
+ bool{KFLT@inkeysubfloats}%
+ }%
+ {% nested
+% \end{macrocode}
+% Tracks row start and end:
+% \begin{macrocode}
+ \KFLT@maybestartfloatrow%
+% \end{macrocode}
+% Possibly fill space between columns:
+% \begin{macrocode}
+ \ifnumgreater{\value{KFLT@thiscol}}{1}%
+ {%
+% \hfill%
+ }%
+ {}%
+ }% nested
+ {}% not nested
+}
+% \end{macrocode}
%
% \changes{v0.47}{2018/01/26}{\pkg{keyfloat}: Fix for \SVG\ math in captions.}
% \begin{macrocode}
-\RenewDocumentCommand{\KFLT@onefigureimage}{}
+\RenewDocumentCommand{\KFLT@onefigureimage}{m}
{%
\LWR@traceinfo{KFLT@onefigureimage}%
% \begin{lrbox}{\KFLT@envbox}%
\ifthenelse{\NOT\equal{\KFLT@lw}{}}%
{%
- \includegraphics%
- [scale=\KFLT@s,width=\KFLT@imagewidth]{\KFLT@i}%
+ \KFLT@frame{\includegraphics%
+ [scale=\KFLT@s,width=\KFLT@imagewidth]{#1}}%
}%
{% not linewidth
\ifthenelse{\dimtest{\KFLT@w}{>}{0pt}}%
{% width is given
\ifthenelse{\dimtest{\KFLT@h}{>}{0pt}}%
{% w and h
- \includegraphics%
+ \KFLT@frame{\includegraphics%
[scale=\KFLT@s,%
- width=\KFLT@imagewidth,height=\KFLT@h]{\KFLT@i}%
+ width=\KFLT@imagewidth,height=\KFLT@h]{#1}}%
}% w and h
{% only w
- \includegraphics%
- [scale=\KFLT@s,width=\KFLT@imagewidth]{\KFLT@i}%
+ \KFLT@frame{\includegraphics%
+ [scale=\KFLT@s,width=\KFLT@imagewidth]{#1}}%
}% only w
}% width is given
{% width is not given
\ifthenelse{\dimtest{\KFLT@h}{>}{0pt}}%
{%
- \includegraphics%
- [scale=\KFLT@s,height=\KFLT@h]{\KFLT@i}%
+ \KFLT@frame{\includegraphics%
+ [scale=\KFLT@s,height=\KFLT@h]{#1}}%
}%
{%
- \includegraphics%
- [scale=\KFLT@s]{\KFLT@i}%
+ \KFLT@frame{\includegraphics%
+ [scale=\KFLT@s]{#1}}%
}%
}% width is not given
}% not linewidth
@@ -49043,37 +49648,147 @@ alt="\LWR@igalt" \LWR@orignewline%
% \begin{macrocode}
\RenewDocumentEnvironment{KFLT@boxinner}{}
{%
-\LWR@traceinfo{KFLT@boxinner}%
-\LWR@stoppars%
+ \LWR@traceinfo{KFLT@boxinner}%
+ \LWR@stoppars%
+ \minipagefullwidth%
+ \ifboolexpr{bool{KFLT@ft} or bool{KFLT@f}}{
+ \fminipage{\KFLT@imagewidth}%
+ }{%
+ \minipage{\KFLT@imagewidth}%
+ }%
}
-{
-\LWR@startpars%
-\LWR@traceinfo{KFLT@boxinner: done}%
+{%
+ \ifboolexpr{bool{KFLT@ft} or bool{KFLT@f}}{
+ \endfminipage%
+ }{%
+ \endminipage%
+ }%
+ \LWR@startpars%
+ \LWR@traceinfo{KFLT@boxinner: done}%
}
% \end{macrocode}
+% \begin{macrocode}
+\newcommand*{\LWR@KFLT@settextalign}[1]{%
+ \def\LWR@KFLT@textalign{justify}%
+ \ifcsstring{KFLT@#1textalign}{\centering}%
+ {\def\LWR@KFLT@textalign{center}}%
+ {}%
+ \ifcsstring{KFLT@#1textalign}{\raggedleft}%
+ {\def\LWR@KFLT@textalign{right}}%
+ {}%
+ \ifcsstring{KFLT@#1textalign}{\raggedright}%
+ {\def\LWR@KFLT@textalign{left}}%
+ {}%
+}
+
+\renewcommand{\KFLT@addtext}[1]
+{%
+% \end{macrocode}
+% Is there text to add?
+% \begin{macrocode}
+ \ifcsempty{KFLT@#1t}%
+ {}% no text
+ {% text to add
+ {% local
+% \end{macrocode}
+% Add some space, then create a full-width minipage to contain the text:
+% \begin{macrocode}
+ \addvspace{\smallskipamount}%
+ \LWR@KFLT@settextalign{#1}%
+ \begin{BlockClass}[text-align:\LWR@KFLT@textalign]{floatnotes}%
+% \end{macrocode}
+% Set the alignment and some text parameters:
+% \begin{macrocode}
+% \csuse{KFLT@#1textalign}%
+% \footnotesize%
+ \setlength{\parskip}{1.5ex}%
+ \setlength{\parindent}{0em}%
+% \end{macrocode}
+% Typeset the actual text:
+% \begin{macrocode}
+ \csuse{KFLT@#1t}%
+% \end{macrocode}
+% Close it all out with a little more space:
+% \begin{macrocode}
+ \end{BlockClass}%
+% \par\addvspace{2ex}%
+ }% local
+ }% text to add
+}
+
+\@ifpackageloaded{tocdata}
+{}
+{% tocdata not loaded
+
+ \newcommand*{\LWR@KFLT@setnamealign}[1]{%
+ \def\LWR@KFLT@textalign{justify}%
+ \ifstrequal{#1}{\centering}%
+ {\def\LWR@KFLT@textalign{center}}%
+ {}%
+ \ifstrequal{#1}{\raggedleft}%
+ {\def\LWR@KFLT@textalign{right}}%
+ {}%
+ \ifstrequal{#1}{\raggedright}%
+ {\def\LWR@KFLT@textalign{left}}%
+ {}%
+ }
+
+ \renewcommand*{\KFLT@@addartisttext}[3]{%
+ % \end{macrocode}
+ % Add space and create the name inside a full-width minipage:
+ % \begin{macrocode}
+% \addvspace{\medskipamount}%
+ % \begin{minipage}{\linewidth}%
+ \LWR@KFLT@setnamealign{#3}%
+ \begin{BlockClass}[text-align:\LWR@KFLT@textalign]{floatnotes}%
+ % \end{macrocode}
+ % Text alignment is |#3|, and depends on artist or author:
+ % \begin{macrocode}
+ % #3%
+ % \end{macrocode}
+ % |#1| is empty or '|subgrp'| \\
+ % |#2| is empty for artist, `|u|' for author:
+ % \begin{macrocode}
+ \footnotesize\textsc{%
+ \KFLT@optionalname{\csuse{KFLT@#1a#2p}}%
+ \KFLT@optionalname{\csuse{KFLT@#1a#2f}}%
+ \csuse{KFLT@#1a#2l}%
+ \csuse{KFLT@#1a#2s}%
+ }%
+ % \end{minipage}%
+ \end{BlockClass}
+% \par\addvspace{2ex}%
+ }
+
+}% tocdata not loaded
+% \end{macrocode}
+
+
% \changes{v0.42}{2017/10/26}{\pkg{keyfloat}: If \progcode{FormatWP} add explicit \HTML\ style.}
% \begin{macrocode}
\DeclareDocumentEnvironment{KFLT@marginfloat}{O{-1.2ex} m}
{%
-\LWR@BlockClassWP{float:right; width:2in; margin:10pt}{}{marginblock}%
-\captionsetup{type=#2}%
+ \LWR@BlockClassWP{float:right; width:2in; margin:10pt}{}{marginblock}%
+ \captionsetup{type=#2}%
+ \minipage{2in}%
}
{%
-\endLWR@BlockClassWP%
+ \endminipage%
+ \endLWR@BlockClassWP%
}
% \end{macrocode}
% \begin{macrocode}
\DeclareDocumentEnvironment{marginfigure}{o}
- {\begin{KFLT@marginfloat}{figure}}
- {\end{KFLT@marginfloat}}
+ {\begin{KFLT@marginfloat}{figure}}
+ {\end{KFLT@marginfloat}}
\DeclareDocumentEnvironment{margintable}{o}
- {\begin{KFLT@marginfloat}{table}}
- {\end{KFLT@marginfloat}}
+ {\begin{KFLT@marginfloat}{table}}
+ {\end{KFLT@marginfloat}}
% \end{macrocode}
@@ -49081,53 +49796,26 @@ alt="\LWR@igalt" \LWR@orignewline%
% \begin{macrocode}
\DeclareDocumentEnvironment{keywrap}{m +m}
{%
-\LWR@ensuredoingapar%
-\setlength{\LWR@templengthone}{#1}%
-\begin{LWR@BlockClassWP}{%
- float:right; width:\LWR@printlength{\LWR@templengthone}; % extra space
- margin:10pt%
-}%
-{%
- width:\LWR@printlength{\LWR@templengthone}%
-}%
-{marginblock}%
-\setlength{\linewidth}{.95\LWR@templengthone}%
-#2%
-\end{LWR@BlockClassWP}%
-}
-{%
+ \LWR@ensuredoingapar%
+ \setlength{\linewidth}{6in}%
+ \setlength{\LWR@templengthone}{#1}%
+ \begin{LWR@BlockClassWP}%
+ {%
+ float:right; width:\LWR@printlength{\LWR@templengthone}; % extra space
+ margin:10pt%
+ }%
+ {%
+ width:\LWR@printlength{\LWR@templengthone}%
+ }%
+ {marginblock}%
+ \setlength{\linewidth}{.95\LWR@templengthone}%
+ \booltrue{KFLT@keywrap}%
+ #2%
+ \end{LWR@BlockClassWP}%
}
+{}
% \end{macrocode}
-% ^^A \par%
-% ^^A \setlength{\KFLT@keywrapwidth}{\linewidth}%
-% ^^A \addtolength{\KFLT@keywrapwidth}{-#1}%
-% ^^A \addtolength{\KFLT@keywrapwidth}{-2em}%
-% ^^A \minipage[b]{\KFLT@keywrapwidth}%
-% ^^A %
-% ^^A \setlength{\parskip}{\KFLT@keywrapparskip}%
-% ^^A \setlength{\parindent}{\KFLT@keywrapparindent}%
-% ^^A \booltrue{KFLT@keywrap}%
-% ^^A }
-% ^^A {%
-% ^^A \par
-% ^^A \endminipage%
-% ^^A \hfill%
-% ^^A \begin{minipage}[b]{#1}%
-% ^^A \booltrue{KFLT@keywrap}%
-% ^^A #2%
-% ^^A \par
-% ^^A \unskip\vspace{\smallskipamount}
-% ^^A \end{minipage}%
-% ^^A \par
-% ^^A }
-
-% ^^A \BeforeBeginEnvironment{keywrap}{
-% ^^A \setlength{\KFLT@keywrapparskip}{\parskip}
-% ^^A \setlength{\KFLT@keywrapparindent}{\parindent}
-% ^^A }
-% ^^A % \end{macrocode}
-
-
+%
% \begin{macrocode}
}% AtBeginDocument
% \end{macrocode}
@@ -49986,6 +50674,38 @@ alt="\LWR@igalt" \LWR@orignewline%
%
%
%
+% \iffalse
+%<*listliketab>
+% \fi
+%
+% \part{lwarp-listliketab.sty}
+%
+% \section{listliketab}
+%
+% \DescribePackage{listliketab}
+% \pkg{listliketab} is emulated.
+%
+% \changes{v0.69}{2019/03/08}{\pkg{listliketab}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{listliketab}[2005/01/09]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand*{\storestyleof}[1]{}
+\newcommand*{\storeliststyle}{}
+\newenvironment{listliketab}{}{}
+% \end{macrocode}
+%
+% \iffalse
+%</listliketab>
+% \fi
+%
+%
+%
+%
%
% \iffalse
%<*lltjext>
@@ -50187,8 +50907,13 @@ alt="\LWR@igalt" \LWR@orignewline%
\def\endlastfoot{\LWR@longtable@headerror}
% \end{macrocode}
%
+% \changes{v0.69}{2019/03/09}{\pkg{array}: Fix for \cs{tabularnewline}.}
+% \begin{macrocode}
+\providecommand*{\LWR@HTML@tabularnewline}{\LWR@tabularendofline}
+\LWR@formatted{tabularnewline}
+% \end{macrocode}
+%
% \begin{macrocode}
-\newcommand\tabularnewline{\LWR@tabularendofline}
\newcommand{\setlongtables}{}% Obsolete command, does nothing.
\newlength{\LTleft}
\newlength{\LTright}
@@ -51998,6 +52723,37 @@ background:
%
%
% \iffalse
+%<*minitoc>
+% \fi
+%
+% \part{lwarp-minitoc.sty}
+%
+% \section{minitoc}
+%
+% \DescribePackage{minitoc}
+% \pkg{minitoc} is ignored.
+%
+% \changes{v0.69}{2019/03/06}{\pkg{minitoc}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{minitoc}[2018/07/12]
+% \end{macrocode}
+%
+% \pkg{mtcoff} disables \pkg{minitoc}.
+% \begin{macrocode}
+\usepackage{mtcoff}
+% \end{macrocode}
+%
+% \iffalse
+%</minitoc>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*morefloats>
% \fi
%
@@ -52353,8 +53109,10 @@ background:
% \pkg{multirow} is emulated during \HTML\ output, and
% used as-is while inside a \env{lateximage}.
%
-% In a \env{lateximage}, the original print-mode versions are temporarily restored
-% by \cs{LWR@restoreorigformatting}.
+% \limitsmultirow
+%
+% In a \env{lateximage}, \cs{LWR@restoreorigformatting}
+% restores the original print-mode versions.
%
% See \cref{sec:printmultirow} for the print-mode versions.
%
@@ -52395,6 +53153,12 @@ background:
\NewDocumentCommand{\LWR@HTML@multirow}{O{c} m o m o +m}%
{%
\LWR@traceinfo{*** LWR@HTML@multirow #1 #2 #4}%
+% \end{macrocode}
+% \changes{v0.69}{2019/03/07}{\pkg{multirow}: Error if \cs{multirow} without \cs{mrowcell}.}
+% \begin{macrocode}
+\booltrue{LWR@usedmultirow}%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@maybenewtablerow%
\LWR@tabularleftedge%
% \end{macrocode}
@@ -52464,13 +53228,6 @@ class="td%
% \subsection{Combined multicolumn and multirow}
% \label{sec:multicolumnmultirow}
%
-% \limitsmulticolumnrow
-% \gindex{multicolumn=\cs{multicolumn}>with \cs{multirow}}
-% \gindex{multirow=\cs{multirow}>with \cs{multicolumn}}
-% \gindex{tabular>multicolumn=\cs{multicolumn} with \cs{multirow}}
-% \trouble{tabular>multicolumn=\cs{multicolumn} with \cs{multirow}}
-%
-%
% \begin{macro}{\multicolumnrow}
% \marg{1:cols} \marg{2:halign}
% \oarg{3:vpos} \marg{4:numrows} \oarg{5:bigstruts}
@@ -52492,6 +53249,10 @@ class="td%
\NewExpandableDocumentCommand{\LWR@HTML@multicolumnrow}{m m O{} m O{} m O{} +m}{%
% \end{macrocode}
+% \changes{v0.69}{2019/03/07}{\pkg{multirow}: Error if \cs{multirow} without \cs{mrowcell}.}
+% \begin{macrocode}
+\booltrue{LWR@usedmultirow}%
+% \end{macrocode}
% Figure out how many extra \HTML\ columns to add for |@| and |!| columns:
% \begin{macrocode}
\LWR@tabularhtmlcolumns{\arabic{LWR@tableLaTeXcolindex}}{#1}
@@ -56365,9 +57126,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
% All rotations are ignored in \HTML\ output.
%
+% \changes{v0.69}{2019/03/09}{\pkg{rotfloat}: Requires \pkg{graphicx}.}
+%
% \codehtml
% \begin{macrocode}
\LWR@ProvidesPackageDrop{rotating}[2016/08/11]
+\RequirePackage{graphicx}
% \end{macrocode}
% \begin{macrocode}
@@ -59040,6 +59804,12 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
}%
\end{tabular}%
\end{table}%
+% \end{macrocode}
+% \changes{v0.69}{2019/03/15}{\pkg{supertabular}: Fix: Clear caption after use.}
+% \begin{macrocode}
+\gdef\LWRST@caption{}%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@traceinfo{supertabular done}%
}
@@ -59180,12 +59950,14 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
% \changes{v0.22}{2017/03/01}{\pkg{tabularx}: Added.}
% \changes{v0.28}{2017/04/11}{\pkg{tabularx}: Fix for optional pos.}
+% \changes{v0.69}{2019/03/09}{\pkg{tabularx}: Require \pkg{array}.}
%
% \codehtml
%
% Discard all options for \pkg{lwarp-tabularx}:
% \begin{macrocode}
\LWR@ProvidesPackageDrop{tabularx}[2016/02/03]
+\RequirePackage{array}
% \end{macrocode}
% \begin{macrocode}
@@ -59220,6 +59992,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% \pkg{tabulary} is emulated by \pkg{lwarp}.
%
% \changes{v0.28}{2017/04/11}{\pkg{tabulary}: Added.}
+% \changes{v0.69}{2019/03/09}{\pkg{tabulary}: Require \pkg{array}.}
%
% \codehtml
%
@@ -59229,6 +60002,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
% core code.
% \begin{macrocode}
\LWR@ProvidesPackageDrop{tabulary}[2014/06/11]
+\RequirePackage{array}
% \end{macrocode}
% \begin{macrocode}
@@ -61336,6 +62110,96 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \iffalse
+%<*tocdata>
+% \fi
+%
+% \part{lwarp-tocdata.sty}
+%
+% \section{tocdata}
+%
+% \credits{Brian Dunn}
+%
+% \DescribePackage{tocdata}
+% \pkg{tocdata} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.69}{2019/03/21}{\pkg{tocdata}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackagePass{tocdata}[2019/03/21]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\renewcommand*{\LWR@maybetocdata}{%
+ \ifdefempty{\TD@thistocdata}{}{%
+ \qquad --- \InlineClass{authorartist}{\TD@thistocdata}%
+ \def\TD@thistocdata{}
+ }
+}
+
+\renewrobustcmd{\tocdatapartprint}[4]
+{%
+ \LWR@htmltagc{br /}%
+ \InlineClass{authorartist}{%
+ \qquad --- %
+ \TD@optionalname{#1}\TD@optionalname{#2}#3#4%
+ }%
+}
+
+\@ifundefined{chapter}{}{
+ \let\tocdatachapterprint\tocdatapartprint
+}
+\let\tocdatasectionprint\tocdatapartprint
+\let\tocdatasubsectionprint\tocdatapartprint
+
+\newcommand*{\LWR@TD@settextalign}[1]{%
+ \def\LWR@TD@textalign{justify}%
+ \ifcsstring{TD@#1align}{\centering}%
+ {\def\LWR@TD@textalign{center}}%
+ {}%
+ \ifcsstring{TD@#1align}{\raggedleft}%
+ {\def\LWR@TD@textalign{right}}%
+ {}%
+ \ifcsstring{TD@#1align}{\raggedright}%
+ {\def\LWR@TD@textalign{left}}%
+ {}%
+}
+
+\renewcommand{\TD@artistauthorprint}[5]{%
+ \LWR@TD@settextalign{#1}%
+ \begin{BlockClass}[text-align:\LWR@TD@textalign]{floatnotes}%
+ \InlineClass{authorartist}{\TD@optionalname{#2}\TD@optionalname{#3}#4#5}%
+ \end{BlockClass}%
+}
+
+\newcommand*{\LWR@TD@setnamealign}[1]{%
+ \def\LWR@TD@textalign{justify}%
+ \ifcsstring{TD@#1textalign}{\centering}%
+ {\def\LWR@TD@textalign{center}}%
+ {}%
+ \ifcsstring{TD@#1textalign}{\raggedleft}%
+ {\def\LWR@TD@textalign{right}}%
+ {}%
+ \ifcsstring{TD@#1textalign}{\raggedright}%
+ {\def\LWR@TD@textalign{left}}%
+ {}%
+}
+
+\renewcommand{\TD@artistauthortextprint}[2]{%
+ \LWR@TD@setnamealign{#1}%
+ \begin{BlockClass}[text-align:\LWR@TD@textalign]{floatnotes}%
+ #2%
+ \end{BlockClass}%
+}
+% \end{macrocode}
+%
+% \iffalse
+%</tocdata>
+% \fi
+%
+%
%
% \iffalse
%<*tocenter>
@@ -62007,6 +62871,36 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
% \iffalse
+%<*topcapt>
+% \fi
+%
+% \part{lwarp-topcapt.sty}
+%
+% \section{topcapt}
+%
+% \DescribePackage{topcapt}
+% \pkg{topcapt} is emulated.
+%
+% \changes{v0.69}{2019/03/17}{\pkg{topcapt}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{topcapt}[2004/12/11]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LetLtxMacro\topcaption\caption
+% \end{macrocode}
+%
+% \iffalse
+%</topcapt>
+% \fi
+%
+%
+%
+%
+% \iffalse
%<*tram>
% \fi
%
@@ -64880,6 +65774,12 @@ height:\LWR@printlength{\LWR@tempheight}%
}%
\end{tabular}%
\endtable%
+% \end{macrocode}
+% \changes{v0.69}{2019/03/15}{\pkg{xtab}: Fix: Clear caption after use.}
+% \begin{macrocode}
+\gdef\LWRXT@caption{}%
+% \end{macrocode}
+% \begin{macrocode}
\LWR@traceinfo{xtabular done}%
}
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.ins b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
index 9eefa717f23..ad83f418236 100644
--- a/Master/texmf-dist/source/latex/lwarp/lwarp.ins
+++ b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
@@ -112,6 +112,7 @@ version 2005/12/01 or later.
\file{lwarp-continue.sty}{\from{lwarp.dtx}{continue}}
\file{lwarp-copyrightbox.sty}{\from{lwarp.dtx}{copyrightbox}}
\file{lwarp-crop.sty}{\from{lwarp.dtx}{crop}}
+\file{lwarp-ctable.sty}{\from{lwarp.dtx}{ctable}}
\file{lwarp-cuted.sty}{\from{lwarp.dtx}{cuted}}
\file{lwarp-cutwin.sty}{\from{lwarp.dtx}{cutwin}}
\file{lwarp-dblfloatfix.sty}{\from{lwarp.dtx}{dblfloatfix}}
@@ -138,6 +139,8 @@ version 2005/12/01 or later.
\file{lwarp-epsfig.sty}{\from{lwarp.dtx}{epsfig}}
\file{lwarp-epstopdf.sty}{\from{lwarp.dtx}{epstopdf}}
\file{lwarp-epstopdf-base.sty}{\from{lwarp.dtx}{epstopdf-base}}
+\file{lwarp-eqlist.sty}{\from{lwarp.dtx}{eqlist}}
+\file{lwarp-eqparbox.sty}{\from{lwarp.dtx}{eqparbox}}
\file{lwarp-errata.sty}{\from{lwarp.dtx}{errata}}
\file{lwarp-eso-pic.sty}{\from{lwarp.dtx}{eso-pic}}
\file{lwarp-eurosym.sty}{\from{lwarp.dtx}{eurosym}}
@@ -179,6 +182,7 @@ version 2005/12/01 or later.
\file{lwarp-foreign.sty}{\from{lwarp.dtx}{foreign}}
\file{lwarp-forest.sty}{\from{lwarp.dtx}{forest}}
\file{lwarp-framed.sty}{\from{lwarp.dtx}{framed}}
+\file{lwarp-ftcap.sty}{\from{lwarp.dtx}{ftcap}}
\file{lwarp-ftnright.sty}{\from{lwarp.dtx}{ftnright}}
\file{lwarp-fullminipage.sty}{\from{lwarp.dtx}{fullminipage}}
\file{lwarp-fullpage.sty}{\from{lwarp.dtx}{fullpage}}
@@ -219,6 +223,7 @@ version 2005/12/01 or later.
\file{lwarp-lineno.sty}{\from{lwarp.dtx}{lineno}}
\file{lwarp-lips.sty}{\from{lwarp.dtx}{lips}}
\file{lwarp-listings.sty}{\from{lwarp.dtx}{listings}}
+\file{lwarp-listliketab.sty}{\from{lwarp.dtx}{listliketab}}
\file{lwarp-lltjext.sty}{\from{lwarp.dtx}{lltjext}}
\file{lwarp-longtable.sty}{\from{lwarp.dtx}{longtable}}
\file{lwarp-lscape.sty}{\from{lwarp.dtx}{lscape}}
@@ -246,6 +251,7 @@ version 2005/12/01 or later.
\file{lwarp-microtype.sty}{\from{lwarp.dtx}{microtype}}
\file{lwarp-midfloat.sty}{\from{lwarp.dtx}{midfloat}}
\file{lwarp-midpage.sty}{\from{lwarp.dtx}{midpage}}
+\file{lwarp-minitoc.sty}{\from{lwarp.dtx}{minitoc}}
\file{lwarp-morefloats.sty}{\from{lwarp.dtx}{morefloats}}
\file{lwarp-moreverb.sty}{\from{lwarp.dtx}{moreverb}}
\file{lwarp-mparhack.sty}{\from{lwarp.dtx}{mparhack}}
@@ -385,11 +391,13 @@ version 2005/12/01 or later.
\file{lwarp-titling.sty}{\from{lwarp.dtx}{titling}}
\file{lwarp-tocbasic.sty}{\from{lwarp.dtx}{tocbasic}}
\file{lwarp-tocbibind.sty}{\from{lwarp.dtx}{tocbibind}}
+\file{lwarp-tocdata.sty}{\from{lwarp.dtx}{tocdata}}
\file{lwarp-tocenter.sty}{\from{lwarp.dtx}{tocenter}}
\file{lwarp-tocloft.sty}{\from{lwarp.dtx}{tocloft}}
\file{lwarp-tocstyle.sty}{\from{lwarp.dtx}{tocstyle}}
\file{lwarp-todo.sty}{\from{lwarp.dtx}{todo}}
\file{lwarp-todonotes.sty}{\from{lwarp.dtx}{todonotes}}
+\file{lwarp-topcapt.sty}{\from{lwarp.dtx}{topcapt}}
\file{lwarp-tram.sty}{\from{lwarp.dtx}{tram}}
\file{lwarp-transparent.sty}{\from{lwarp.dtx}{transparent}}
\file{lwarp-trimclip.sty}{\from{lwarp.dtx}{trimclip}}