diff options
author | Karl Berry <karl@freefriends.org> | 2019-03-22 20:50:19 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-03-22 20:50:19 +0000 |
commit | 96053081ddf50ffc6860dd4ff9b019bf0c12df5f (patch) | |
tree | 0c88fdb4fc42d9dc772f9035a19b8e49f9685bf4 /Master/texmf-dist/source/latex | |
parent | c683b2e6b6248248b03f94e79edbebec1de2416b (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.dtx | 1470 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/lwarp/lwarp.ins | 8 |
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}} |