texlive[48702] trunk: lwarp (19sep18)

commits+karl at tug.org commits+karl at tug.org
Wed Sep 19 23:27:24 CEST 2018


Revision: 48702
          http://tug.org/svn/texlive?view=revision&revision=48702
Author:   karl
Date:     2018-09-19 23:27:24 +0200 (Wed, 19 Sep 2018)
Log Message:
-----------
lwarp (19sep18)

Modified Paths:
--------------
    trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
    trunk/Master/texmf-dist/doc/latex/lwarp/README.txt
    trunk/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
    trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
    trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
    trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booktabs.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-diagbox.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullpage.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-multirow.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-register.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tikz.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-2up.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booklet.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bophook.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-draftfigure.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancytabs.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullminipage.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-grid-system.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-layaureo.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-leading.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumb.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumbs.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-twoup-gen.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-widows-and-orphans.sty

Modified: trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2018-09-19 21:27:24 UTC (rev 48702)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.59"
+printversion = "v0.60"
 requiredconfversion = "1" -- also at *lwarpmk.conf
 
 function printhelp ()

Modified: trunk/Master/texmf-dist/doc/latex/lwarp/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2018-09-19 21:27:24 UTC (rev 48702)
@@ -1,5 +1,5 @@
 
-LaTeX lwarp package v0.59   README.txt
+LaTeX lwarp package v0.60   README.txt
 
 Files included are:
 

Modified: trunk/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua	2018-09-19 21:27:24 UTC (rev 48702)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.59"
+printversion = "v0.60"
 requiredconfversion = "1" -- also at *lwarpmk.conf
 
 function printhelp ()

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2018-09-19 21:27:24 UTC (rev 48702)
@@ -16,7 +16,7 @@
 % \iffalse
 %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
 %<package>\ProvidesPackage{lwarp}
-%<package>    [2018/09/07 v0.59  Allows LaTeX to directly produce HTML5 output.]
+%<package>    [2018/09/19 v0.60  Allows LaTeX to directly produce HTML5 output.]
 %
 %<*driver>
 \documentclass{ltxdoc}
@@ -2352,7 +2352,7 @@
 %<*package>
 % \fi
 %
-% \CheckSum{25635}
+% \CheckSum{25889}
 %
 % \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
@@ -2454,6 +2454,7 @@
 % \changes{v0.58}{2018/07/07}{\ 2018/07/07}
 % \changes{v0.58}{2018/06/07}{Replaced each \cs{csuse} with \cs{@nameuse} to force error if undefined.}
 % \changes{v0.59}{2018/09/07}{\ 2018/09/07}
+% \changes{v0.60}{2018/09/19}{\ 2018/09/19}
 
 
 
@@ -2651,6 +2652,19 @@
 %
 % \begin{description}
 % \needspace{2\baselineskip}
+% \item[v0.60:] Fixes for \pkg{longtable}, \pkg{listings}.
+%   \begin{itemize}
+%       \item \pkg{longtable}, etc.: Fixes for slowdown and memory management for very long tables.
+%       \item \pkg{listings}: Fix for \HTML\ entities, and also when used inside a list.
+%       \item \pkg{diagbox}: Fix for incorrect \HTML\ par tags.
+%       \item Added \pkg{2up}, \pkg{twoup-gen}, \pkg{booklet}.
+%           \margintag{packages}
+%       \item Added \pkg{bophook}, \pkg{draftfigure}, \pkg{fullminipage},
+%           \pkg{grid-system}, \pkg{layaureo}.
+%       \item Added \pkg{leading}, \pkg{widows-and-orphans}.
+%       \item Added \pkg{fancytabs}, \pkg{thumb}, \pkg{thumbs}.
+%   \end{itemize}
+% \needspace{2\baselineskip}
 % \item[v0.59:] \DVI\ \prog{latex}, \brand{MathJax}, \pkg{asymptote},
 %       \pkg{pdftricks} and \pkg{pstricks}, \pkg{epstopdf}, \pkg{brqen}.
 %   \begin{itemize}
@@ -3857,19 +3871,25 @@
 %
 % \midrule
 %
-% Page layout: & \pkg{a4}, \pkg{a4wide}, \pkg{a5comb},
+% Page layout: & \pkg{2up}, \pkg{a4}, \pkg{a4wide}, \pkg{a5comb},
 %       \pkg{addlines}, \pkg{anysize}, \pkg{atbegshi},
-%       \pkg{blowup}, \pkg{bxpapersize}, \pkg{canoniclayout}, \pkg{clrdblpg},
-%       \pkg{continue}, \pkg{draftcopy}, \pkg{draftwatermark},
+%       \pkg{blowup},  \pkg{booklet},  \pkg{bophook}, \pkg{bxpapersize},
+%       \pkg{canoniclayout}, \pkg{clrdblpg},
+%       \pkg{continue}, \pkg{draftcopy}, \pkg{draftfigure}, \pkg{draftwatermark},
 %       \pkg{ebook}, \pkg{everyshi},
-%       \pkg{fancyhdr}, \pkg{fwlw}, \pkg{geometry}, \pkg{grid}, \pkg{gridset},
+%       \pkg{fancyhdr}, \pkg{fancytabs}, \pkg{fullminipage}, \pkg{fullpage},
+%       \pkg{fwlw}, \pkg{geometry}, \pkg{grid}, \pkg{grid-system}, \pkg{gridset},
+%       \pkg{layaureo}, \pkg{leading},
 %       \pkg{ltxgrid}, \pkg{nccfancyhdr}, \pkg{pagegrid}, \pkg{pagesel}, \pkg{preview},
-%       \pkg{scrlayer-scrpage}, \pkg{textarea}, \pkg{titleps}, \pkg{tocenter},
-%       \pkg{turnthepage}, \pkg{typearea}, \pkg{vmargin},
+%       \pkg{scrlayer-scrpage},
+%       \pkg{textarea}, \pkg{thumb}, \pkg{thumbs}, \pkg{titleps}, \pkg{tocenter},
+%       \pkg{turnthepage}, \pkg{twoup-gen}, \pkg{typearea}, \pkg{vmargin},
 %       \pkg{watermark}, \pkg{zwpagelayout}.
 %
 %       Tested to work as-is: \pkg{underlin}.\\
 %
+% \midrule
+%
 % Sectioning: & Adds \progcode{FileDepth} for splitting the \HTML\ output.
 % 	Files may be numbered sequentially or named according to section name.
 % 	Common short words and punctuation are removed from the filenames. 
@@ -4032,9 +4052,10 @@
 % 	\cs{bfseries}, etc.\ are only supported in some cases.
 %   \pkg{cancel}, \pkg{ellipsis}, \pkg{hyphenat}, \pkg{lettrine}, \pkg{lips},
 %   \pkg{lua-check-hyphen}, \pkg{luacolor},
-%   \pkg{magaz}, \pkg{pdfrender}, \pkg{realscripts}, \pkg{relsize},
+%   \pkg{magaz}, \pkg{nowidow}, \pkg{pdfrender}, \pkg{realscripts}, \pkg{relsize},
 %   \pkg{scalefnt}, \pkg{soul}, \pkg{soulpos}, \pkg{soulutf8},
-%   \pkg{textfit}, \pkg{trimclip}, \pkg{ulem}, \pkg{underscore}, \pkg{xellipsis}. \\
+%   \pkg{textfit}, \pkg{trimclip}, \pkg{ulem}, \pkg{underscore},
+%   \pkg{widows-and-orphans}, \pkg{xellipsis}. \\
 %
 % Ordinals: & \pkg{engord}, \pkg{fmtcount}, \pkg{nth}. \\
 %
@@ -4057,8 +4078,11 @@
 % Fonts: & Used as-is.  Appear in \SVG\ math expressions or embedded image environments. \\
 %
 % Symbols: & Native \LaTeX\ diacriticals,
-%   \pkg{chemgreek}, \pkg{textalpha}, \pkg{textcomp}, \pkg{textgreek}, \pkg{xunicode}. \\
+%   \pkg{chemgreek}, \pkg{textalpha}, \pkg{textcomp}, \pkg{textgreek}, \pkg{xunicode}.
 %
+%   Tested to work as-is:
+%   \pkg{gensymb}. \\
+%
 % \midrule
 %
 % Files: &
@@ -4434,15 +4458,21 @@
 %	\item Download the zip archive \filenm{lwarp.zip} into your own \filenm{lwarp} directory.
 %	\item Unpack \filenm{lwarp.zip}.
 %	\item Locate the contents \filenm{lwarp.dtx} and \filenm{lwarp.ins}
-%	\item Create the documentation: \userentry{pdflatex lwarp.dtx} (several times)
-%	\item Create the |.sty| files: \userentry{pdflatex lwarp.ins}
+%   \item Create the |.sty| files: \userentry{pdflatex lwarp.ins}
+%	\item Create the documentation:
+% \begin{Verbatim}[gobble=2,obeytabs,tabsize=4,frame=lines]
+% pdflatex lwarp.dtx  (several times)
+% makeindex -s gglo.ist -o lwarp.gls lwarp.glo
+% makeindex -s gind.ist lwarp.idx
+% pdflatex lwarp.dtx  (several times)
+% \end{Verbatim}
 %	\item Copy the |.sty| files somewhere such as the \TeX\ Live local tree
 %		found in the previous \CTAN\ \TDS\ section, under the subdirectory:
 %		\begin{sourcedisplay}
 %		|<texlocal>/tex/latex/local/lwarp|
 %		\end{sourcedisplay}
-%   \item Copy \filenm{lwarp\_baseline\_marker.png} to the same place
-%       as the \filenm{.sty} files.
+%   \item Copy \filenm{lwarp\_baseline\_marker.png} and \filenm{lwarp\_baseline\_marker.eps}
+%       to the same place as the \filenm{.sty} files.
 % \changes{v0.52}{2018/03/24}{Docs: Improved install instructions.}
 %	\item Copy the documentation \filenm{lwarp.pdf} to a \filenm{source} directory in the local tree,
 %		such as:
@@ -4466,7 +4496,8 @@
 %		document source files.  The resultant |*.sty| and \filenm{lwarpmk.lua} files
 %		may be used as-is, so long as they are in the same directory
 %		as the document source.
-%       The file \filenm{lwarp\_baseline\_marker.png} must also be copied as well.
+%       The files \filenm{lwarp\_baseline\_marker.png} and
+%       \filenm{lwarp\_baseline\_marker.eps}  must also be copied as well.
 % \changes{v0.52}{2018/03/24}{Docs: Improved install instructions.}
 %       This approach is especially useful if
 %		you would like to temporarily test\margintag{Just testing!}\
@@ -9860,6 +9891,7 @@
 % The following packages must be loaded after \pkg{lwarp}:
 % ^^A *loadafter
 %    \begin{macrocode}
+\LWR at loadafter{2up}
 \LWR at loadafter{a4}
 \LWR at loadafter{a4wide}
 \LWR at loadafter{a5comb}
@@ -9895,8 +9927,10 @@
 \LWR at loadafter{bigdelim}
 \LWR at loadafter{bigstrut}
 \LWR at loadafter{blowup}
+\LWR at loadafter{booklet}
 \LWR at loadafter{bookmark}
 \LWR at notmemoirloadafter{booktabs}
+\LWR at loadafter{bophook}
 \LWR at loadafter{boxedminipage}
 \LWR at loadafter{boxedminipage2e}
 \LWR at loadafter{breakurl}
@@ -9931,6 +9965,7 @@
 \LWR at notmemoirloadafter{dcolumn}
 \LWR at loadafter{diagbox}
 \LWR at loadafter{draftcopy}
+\LWR at loadafter{draftfigure}
 \LWR at loadafter{draftwatermark}
 \LWR at loadafter{easy-todo}
 \LWR at loadafter{ebook}
@@ -9953,6 +9988,7 @@
 \LWR at loadafter{fancyhdr}
 \LWR at loadafter{fancyheadings}
 \LWR at loadafter{fancyref}
+\LWR at loadafter{fancytabs}
 \LWR at loadafter{fancyvrb}
 \LWR at loadafter{figcaps}
 \LWR at loadafter{figsize}
@@ -9979,6 +10015,7 @@
 \LWR at loadafter{forest}
 \LWR at loadafter{framed}
 \LWR at loadafter{ftnright}
+\LWR at loadafter{fullminipage}
 \LWR at loadafter{fullpage}
 \LWR at loadafter{fullwidth}
 \LWR at loadafter{fwlw}
@@ -9989,6 +10026,7 @@
 \LWR at loadafter{glossary}
 \LWR at loadafter{grffile}
 \LWR at loadafter{grid}
+\LWR at loadafter{grid-system}
 \LWR at loadafter{gridset}
 \LWR at loadafter{hang}
 \LWR at loadafter{hanging}
@@ -10007,7 +10045,9 @@
 % inputenx must be loaded before lwarp
 \LWR at loadafter{intopdf}
 \LWR at loadafter{keyfloat}
+\LWR at loadafter{layaureo}
 \LWR at loadafter{layout}
+\LWR at loadafter{leading}
 \LWR at loadafter{letterspace}
 \LWR at loadafter{lettrine}
 \LWR at loadafter{lineno}
@@ -10128,6 +10168,8 @@
 \LWR at loadafter{textpos}
 \LWR at loadafter{theorem}
 \LWR at loadafter{threeparttable}
+\LWR at loadafter{thumb}
+\LWR at loadafter{thumbs}
 \LWR at loadafter{tikz}
 \LWR at loadafter{titleps}
 \LWR at loadafter{titlesec}
@@ -10144,6 +10186,7 @@
 \LWR at loadafter{trimclip}
 \LWR at loadafter{trivfloat}
 \LWR at loadafter{turnthepage}
+\LWR at loadafter{twoup-gen}
 %    \end{macrocode}
 % \changes{v0.44}{2017/11/19}{Adjustment for \pkg{koma-script}.}
 %    \begin{macrocode}
@@ -10162,6 +10205,7 @@
 \LWR at loadafter{wallpaper}
 \LWR at loadafter{wasysym}
 \LWR at loadafter{watermark}
+\LWR at loadafter{widows-and-orphans}
 \LWR at loadafter{wrapfig}
 \LWR at loadafter{xcolor}
 \LWR at loadafter{xellipsis}
@@ -14559,7 +14603,7 @@
 -- Copyright 2016-2018 Brian Dunn
 
 
-printversion = "v0.59"
+printversion = "v0.60"
 requiredconfversion = "1" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -15655,9 +15699,10 @@
 % \begin{macro}{\LWR at setexparray} \marg{name} \marg{index} \marg{contents}
 %    \begin{macrocode}
 \NewDocumentCommand{\LWR at setexparray}{m m m}{%
-\ifstrempty{#3}%
-{\csdef{#1#2}{}}%
-{\expandafter\edef\csname #1#2\endcsname{\expandonce#3}}%
+    \xdef\LWR at thisexparrayname{#1#2}%
+    \ifstrempty{#3}%
+    {\csgdef{\LWR at thisexparrayname}{}}%
+    {\csxdef{\LWR at thisexparrayname}{#3}}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -15664,7 +15709,9 @@
 % 
 % \begin{macro}{\LWR at getexparray} \marg{name} \marg{index}
 %    \begin{macrocode}
-\newcommand*{\LWR at getexparray}[2]{\@nameuse{#1#2}}
+\newcommand*{\LWR at getexparray}[2]{%
+    \@nameuse{#1#2}%
+}
 %    \end{macrocode}
 % \end{macro}
 
@@ -21186,6 +21233,7 @@
 
 % \DescribeBoolean{LWR at tabularcelladded}
 % True if have added a data cell for this position.
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Global boolean.}
 %    \begin{macrocode}
 \newbool{LWR at tabularcelladded}
 \boolfalse{LWR at tabularcelladded}
@@ -21205,6 +21253,7 @@
 
 % \DescribeBoolean{LWR at doingtbrule}
 % True if the next row will have a top/bottom rule above it.
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Global boolean.}
 %    \begin{macrocode}
 \newbool{LWR at doingtbrule}
 \boolfalse{LWR at doingtbrule}
@@ -21295,17 +21344,15 @@
 \newcommand*{\LWR at pright}{}
 %    \end{macrocode}
 
-% \begin{macro}{\LWR at tablecolspec} Holds the parsed column specification,
-% of total width |LWR at tabletotalcols|, not counting |@| and |!| columns.
+
+% \DescribeObject{LWR at tablecolspec} Holds the parsed column specification,
+% of total width |LWR at tabletotalLaTeXcols|, not counting |@| and |!| columns.
 %
 % Will contain a string such as |llrrccpc|, exactly one letter per \LaTeX\ table column,
 % without |@|, |!|, |>|, |<|, or the vertical bar.
-%
-%    \begin{macrocode}
-\newcommand*{\LWR at tablecolspec}{}
-%    \end{macrocode}
-% \end{macro}
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Not using \pkg{xstring}.}
 
+
 % \begin{macro}{\LWR at strresult} Holds the result of |Str| functions.
 % \changes{v0.44}{2017/11/19}{Fix: \cs{providecommand}.}
 %    \begin{macrocode}
@@ -21336,37 +21383,33 @@
 % \DescribeCounter{LWR at tablecolspecindex}
 % While parsing the \LaTeX\ table column specification,
 % starts at 1 and is incremented per token of the specification.
-% While producing the table, resets to 1 at the start of the table and
-% also at each end of line, and is incremented by 1 by each ampersand.
 %    \begin{macrocode}
 \newcounter{LWR at tablecolspecindex}
 %    \end{macrocode}
 
-% \DescribeCounter{LWR at tablecolindex}
-% While parsing the \LaTeX\ table column specification,
-% starts at 1 and is incremented per token of the specification.
+% \DescribeCounter{LWR at tableLaTeXcolindex}
 % While producing the table, resets to 1 at the start of the table and
 % also at each end of line, and is incremented by 1 by each ampersand.
 %    \begin{macrocode}
-\newcounter{LWR at tablecolindex}
+\newcounter{LWR at tableLaTeXcolindex}
 %    \end{macrocode}
 
-% \DescribeCounter{LWR at tabletotalcols}
+% \DescribeCounter{LWR at tabletotalLaTeXcols}
 % While parsing a table column specification,
 % begins at 0 and increments by 1 per \LaTeX\ table column.
 % Eventually holds the final number of \LaTeX\ table columns in each row,
 % not counting |@| and |!| columns.
 % (In \HTML, |@| and |!| cells become their own columns, but are not included in
-% |LWR at tabletotalcols|.)
+% |LWR at tabletotalLaTeXcols|.)
 %    \begin{macrocode}
-\newcounter{LWR at tabletotalcols}
+\newcounter{LWR at tabletotalLaTeXcols}
 %    \end{macrocode}
 
-% \DescribeCounter{LWR at tabletotalcolsnext}
+% \DescribeCounter{LWR at tabletotalLaTeXcolsnext}
 % Holds the next \LaTeX\ table column index while parsing,
-% equal to one more than |LWR at tabletotalcols|.
+% equal to one more than |LWR at tabletotalLaTeXcols|.
 %    \begin{macrocode}
-\newcounter{LWR at tabletotalcolsnext}
+\newcounter{LWR at tabletotalLaTeXcolsnext}
 %    \end{macrocode}
 
 % \DescribeObject{LWR at colatspec} A data array of specifications for |@| columns.
@@ -21399,8 +21442,8 @@
 \ifbool{LWR at skipatbang}%
 {}%
 {%
-    \LWR at printatbang{at}{\arabic{LWR at tablecolindex}}%
-    \LWR at printatbang{bang}{\arabic{LWR at tablecolindex}}%
+    \LWR at printatbang{at}{\arabic{LWR at tableLaTeXcolindex}}%
+    \LWR at printatbang{bang}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 }
 %    \end{macrocode}
@@ -21427,8 +21470,8 @@
 % \changes{v0.41}{2017/10/03}{Fix: At/bang column with \cs{multirow}.}
 %    \begin{macrocode}
         \ifbool{LWR at skippingmcolrowcell}%
-        {}%
-        {\LWR at insertatbangcols}%
+            {}%
+            {\LWR at insertatbangcols}%
     }%
     {% not skippingmrowcell
 %    \end{macrocode}
@@ -21443,7 +21486,7 @@
             bool{LWR at emptyatbang}
         }%
         {}%
-        {\LWR at getexparray{LWR at colafterspec}{\arabic{LWR at tablecolindex}}}%
+        {\LWR at getexparray{LWR at colafterspec}{\arabic{LWR at tableLaTeXcolindex}}}%
 %    \end{macrocode}
 % Close paragraphs:
 %    \begin{macrocode}
@@ -21475,8 +21518,8 @@
 % Color control.  Column is set by |>{}| for each cell, so it must be cleared here.
 % \changes{v0.48}{2018/02/06}{\pkg{colortbl}: Added.}
 %    \begin{macrocode}
-\renewcommand*{\LWR at cellHTMLcolor}{}
-\renewcommand*{\LWR at columnHTMLcolor}{}
+\gdef\LWR at cellHTMLcolor{}
+\gdef\LWR at columnHTMLcolor{}
 \setcounter{LWR at cellcolordepth}{0}
 }
 %    \end{macrocode}
@@ -21523,11 +21566,11 @@
 %    \end{macrocode}
 % Move to the next column.
 %    \begin{macrocode}
-    \addtocounter{LWR at tablecolindex}{1}%
+    \addtocounter{LWR at tableLaTeXcolindex}{1}%
 %    \end{macrocode}
 % Have not yet added data in this column:
 %    \begin{macrocode}
-    \boolfalse{LWR at tabularcelladded}%
+    \global\boolfalse{LWR at tabularcelladded}%
 %    \end{macrocode}
 % Look at the next token to decide multi or single column data tag.
 %    \begin{macrocode}
@@ -21577,19 +21620,19 @@
     bool{LWR at startedrow}%
 }{%
 %    \end{macrocode}
-% To locally temporarily turn off |LWR at exitingtabular| so that
+% To temporarily turn off |LWR at exitingtabular| so that
 % table data tags will still be generated:
-%    \begin{macrocode}
-\begingroup%
-%    \end{macrocode}
+%
 % If generating a final row for the \cs{bottomrule} borders,
 % turn off the |@|, |!|, |<|, and |>| column output:
 %    \begin{macrocode}
 \ifbool{LWR at exitingtabular}{%
-    \booltrue{LWR at tabularmutemods}%
-}{}%
+    \global\booltrue{LWR at tabularmutemods}%
+}{%
+    \global\boolfalse{LWR at tabularmutemods}%
+}%
 %    \end{macrocode}
-% Reenable the table data tags until finished with the final row:
+% Locally reenable the table data tags until finished with the final row:
 %    \begin{macrocode}
 \global\boolfalse{LWR at exitingtabular}%
 %    \end{macrocode}
@@ -21597,13 +21640,13 @@
 %    \begin{macrocode}
 \whileboolexpr{%
     test {
-        \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}
+        \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}
     } or %
     (%
         bool{LWR at intabularmetadata} and%
         not bool{LWR at tabularcelladded} and%
         test {
-            \ifnumcomp{\value{LWR at tablecolindex}}{=}{\value{LWR at tabletotalcols}}
+            \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{\value{LWR at tabletotalLaTeXcols}}
         }%
     )%
 }%
@@ -21614,20 +21657,27 @@
 % |LWR at emptyatbang| added to empty the following cells:
 %    \begin{macrocode}
     \LWR at closetabledatacell%
-    \addtocounter{LWR at tablecolindex}{1}%
-    \boolfalse{LWR at tabularcelladded}%
+    \addtocounter{LWR at tableLaTeXcolindex}{1}%
+    \global\boolfalse{LWR at tabularcelladded}%
     \global\booltrue{LWR at emptyatbang}%
 %    \end{macrocode}
 % Starts the next cell:
 %    \begin{macrocode}
-    \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}%
-    {\LWR at getmynexttoken}%
-    {}%
+    \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}%
+        {\LWR at getmynexttoken}%
+        {}%
 }%
 %    \end{macrocode}
 % Reenable the original |LWR at exitingtabular| to close the entire table:
 %    \begin{macrocode}
-\endgroup%
+\ifbool{LWR at tabularmutemods}{%
+    \global\booltrue{LWR at exitingtabular}%
+}{%
+    \global\boolfalse{LWR at exitingtabular}%
+}%
+\global\boolfalse{LWR at tabularmutemods}%
+%    \end{macrocode}
+%    \begin{macrocode}
 \global\boolfalse{LWR at emptyatbang}%
 }{}% ifboolexpr
 }
@@ -21649,9 +21699,9 @@
 %    \end{macrocode}
 % Finish the row:
 %    \begin{macrocode}
-\ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}%
-{\LWR at tabularfinishrow}%
-{\LWR at closetabledatacell}%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}%
+    {\LWR at tabularfinishrow}%
+    {\LWR at closetabledatacell}%
 \LWR at htmltag{/tr}\LWR at orignewline%
 %    \end{macrocode}
 % \pkg{xcolor} row color support:
@@ -21673,16 +21723,23 @@
 \global\boolfalse{LWR at doingtbrule}%
 \global\boolfalse{LWR at doingcmidrule}%
 \LWR at clearmidrules%
-\renewcommand*{\LWR at rowHTMLcolor}{}%
+\gdef\LWR at rowHTMLcolor{}%
 %    \end{macrocode}
 % Start at first column:
 %    \begin{macrocode}
-\setcounter{LWR at tablecolindex}{1}%
+\setcounter{LWR at tableLaTeXcolindex}{1}%
 %    \end{macrocode}
 % Have not yet added data in this column:
 %    \begin{macrocode}
-\boolfalse{LWR at tabularcelladded}%
+\global\boolfalse{LWR at tabularcelladded}%
 %    \end{macrocode}
+% Allow \TeX\ to flush the pending paragraph.
+% Not doing so causes a slowdown for very large tables.
+% \changes{v0.60}{2018/09/17}{Fix: Slowdown for long tables.}
+%    \begin{macrocode}
+\LWR at stoppars
+\LWR at origpar
+%    \end{macrocode}
 % Look at the next token to decide between single column data tag
 % or a special case:
 %    \begin{macrocode}
@@ -21750,7 +21807,7 @@
 % Store the result into a data array, expanding once out of \cs{LWR at colparameter}:
 %    \begin{macrocode}
 \LWR at traceinfo{have now read the next token}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \LWR at traceinfo{at the left edge}%
     \LWR at setexparray{LWR at colatspec}{leftedge}{\LWR at colparameter}%
@@ -21760,12 +21817,12 @@
 {% not at the left edge:
     \LWR at traceinfo{not at the left edge}%
     \LWR at setexparray{LWR at colatspec}%
-        {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
-    \LWR at traceinfo{at \arabic{LWR at tabletotalcols}: %
-    \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalcols}}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
+    \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}: %
+    \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcols}}}%
 }%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21796,7 +21853,7 @@
 % expanding once out of \cs{LWR at colparameter}:
 %    \begin{macrocode}
 \LWR at traceinfo{have now read the next token}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \LWR at traceinfo{at the left edge}%
     \LWR at setexparray{LWR at colbangspec}{leftedge}{\LWR at colparameter}%
@@ -21804,11 +21861,11 @@
 {% not at the left edge:
     \LWR at traceinfo{not at the left edge}%
     \LWR at setexparray{LWR at colbangspec}%
-        {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
-    \LWR at traceinfo{bang \arabic{LWR at tabletotalcols}: \LWR at colparameter!}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
+    \LWR at traceinfo{bang \arabic{LWR at tabletotalLaTeXcols}: \LWR at colparameter!}%
 }%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21836,9 +21893,9 @@
 % Store the result into a data array, expanding once out of \cs{LWR at colparameter}:
 %    \begin{macrocode}
 \LWR at setexparray{LWR at colbeforespec}%
-    {\arabic{LWR at tabletotalcolsnext}}{\LWR at colparameter}%
+    {\arabic{LWR at tabletotalLaTeXcolsnext}}{\LWR at colparameter}%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21864,9 +21921,9 @@
 % Store the result into a data array, expanding once out of \cs{LWR at colparameter}:
 %    \begin{macrocode}
 \LWR at setexparray{LWR at colafterspec}%
-    {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
+    {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21883,7 +21940,7 @@
 %    \end{macrocode}
 % Remember the bar at this position:
 %    \begin{macrocode}
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \edef\LWR at tempone{\LWR at getexparray{LWR at colbarspec}{leftedge}}%
     \ifdefstring{\LWR at tempone}{tvertbarl}%
@@ -21892,19 +21949,19 @@
 }%
 {% not at the left edge:
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcols}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcols}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarr}%
     {%
         \LWR at setexparray{LWR at colbarspec}%
-            {\arabic{LWR at tabletotalcols}}{tvertbarrdouble}%
+            {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdouble}%
     }%
     {%
         \LWR at setexparray{LWR at colbarspec}%
-            {\arabic{LWR at tabletotalcols}}{tvertbarr}%
+            {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarr}%
     }%
 }%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21919,7 +21976,7 @@
 %    \end{macrocode}
 % Remember the bar at this position:
 %    \begin{macrocode}
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \edef\LWR at tempone{\LWR at getexparray{LWR at colbarspec}{leftedge}}%
     \ifdefstring{\LWR at tempone}{tvertbarldash}%
@@ -21928,15 +21985,15 @@
 }%
 {% not at the left edge:
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcols}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcols}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarrdash}%
     {\LWR at setexparray{LWR at colbarspec}%
-        {\arabic{LWR at tabletotalcols}}{tvertbarrdoubledash}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdoubledash}}%
     {\LWR at setexparray{LWR at colbarspec}%
-        {\arabic{LWR at tabletotalcols}}{tvertbarrdash}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdash}}%
 }%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -21968,16 +22025,21 @@
 % and pre-clear another column of at, before, and after specs.
 %    \begin{macrocode}
 \newcommand*{\LWR at parsenormalcolumn}[1]{%
-\appto\LWR at tablecolspec{#1}%
-\addtocounter{LWR at tabletotalcols}{1}%
-\addtocounter{LWR at tabletotalcolsnext}{1}%
-\LWR at traceinfo{normal column \arabic{LWR at tabletotalcols}: #1}%
-\LWR at setexparray{LWR at colatspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbangspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbeforespec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colafterspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\booltrue{LWR at validtablecol}%
+\addtocounter{LWR at tabletotalLaTeXcols}{1}%
+\addtocounter{LWR at tabletotalLaTeXcolsnext}{1}%
+%    \end{macrocode}
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Not using \pkg{xstring}.}
+%    \begin{macrocode}
+\LWR at setexparray{LWR at tablecolspec}{\arabic{LWR at tabletotalLaTeXcols}}{#1}%
+%    \end{macrocode}
+%    \begin{macrocode}
+\LWR at traceinfo{normal column \arabic{LWR at tabletotalLaTeXcols}: #1}%
+\LWR at setexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbangspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbeforespec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colafterspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22132,8 +22194,10 @@
 % Scans the column specification left to right.
 %
 % Builds \cs{LWR at tablecolspec} with the final specification,
-% one column per entry.  The final number of cells in each row is
-% stored in |LWR at tabletotalcols|.
+% one \LaTeX\ column per entry.  The final number of \LaTeX\ columns in each row is
+% stored in |LWR at tabletotalLaTeXcols|,
+% which is the number of |&| and |\\| in each line, but
+% which does not include |@|, |!|, |<|, |>| specifications in the count.
 %
 % \changes{v0.22}{2017/02/28}{Unknown table column types become \progcode{l}.
 %	Added tabular \progcode{D}, \progcode{!!}, \progcode{X} columns.}
@@ -22155,15 +22219,15 @@
 \expandarg%
 \StrSubstitute{\LWR at origcolspec}{ }{}[\LWR at origcolspec]%
 %    \end{macrocode}
-% Clear the parsed resulting column spec:
-%    \begin{macrocode}
-\renewcommand*{\LWR at tablecolspec}{}%
-%    \end{macrocode}
+%
+% The parsed column spec data array, |LWR at tablecolspec|,
+% will be overwritten with new values.
+%
 % Total number of columns found so far.
 % Also pre-initialize the first several columns of specs:
 %    \begin{macrocode}
-\setcounter{LWR at tabletotalcols}{0}%
-\setcounter{LWR at tabletotalcolsnext}{1}%
+\setcounter{LWR at tabletotalLaTeXcols}{0}%
+\setcounter{LWR at tabletotalLaTeXcolsnext}{1}%
 \LWR at setexparray{LWR at colatspec}{leftedge}{}%
 \LWR at setexparray{LWR at colatspec}{1}{}%
 \LWR at setexparray{LWR at colatspec}{2}{}%
@@ -22198,7 +22262,7 @@
 %    \end{macrocode}
 % Haven't seen any optional arguments so far
 %    \begin{macrocode}
-\boolfalse{LWR at opttablecol}%
+\global\boolfalse{LWR at opttablecol}%
 %    \end{macrocode}
 % Scan through the column specifications:
 %    \begin{macrocode}
@@ -22219,13 +22283,13 @@
 %    \end{macrocode}
 % Not yet found a valid column type:
 %    \begin{macrocode}
-\boolfalse{LWR at validtablecol}%
+\global\boolfalse{LWR at validtablecol}%
 %    \end{macrocode}
 %
 % Skip over any optional arguments, such as \pkg{siunitx} |S| column:
 % \changes{v0.48}{2018/02/04}{Fix: Ignore optional tabular column arguments.}
 %    \begin{macrocode}
-\IfStrEq{\LWR at strresult}{[}{\booltrue{LWR at opttablecol}}{}%
+\IfStrEq{\LWR at strresult}{[}{\global\booltrue{LWR at opttablecol}}{}%
 %    \end{macrocode}
 %
 % Throw away anything found inside the optional argument:
@@ -22298,13 +22362,12 @@
 %    \end{macrocode}
 % If read the closing bracket, no longer inside the optional argument:
 %    \begin{macrocode}
-\IfStrEq{\LWR at strresult}{]}{\boolfalse{LWR at opttablecol}}{}%
+\IfStrEq{\LWR at strresult}{]}{\global\boolfalse{LWR at opttablecol}}{}%
 %    \end{macrocode}
 % Move to the next character:
 %    \begin{macrocode}
 \addtocounter{LWR at tablecolspecindex}{1}%
 }% whiledo
-\LWR at traceinfo{LWR at parsetablecols: Final table column spec: !\LWR at tablecolspec!}%
 }%
 %    \end{macrocode}
 % \end{macro}
@@ -22350,19 +22413,19 @@
 %
 % \begin{macro}{\LWR at columnHTMLcolor} \HTML style code for the column color.
 %    \begin{macrocode}
-\newcommand*{\LWR at columnHTMLcolor}{}
+\def\LWR at columnHTMLcolor{}
 %    \end{macrocode}
 % \end{macro}
 %
 % \begin{macro}{\LWR at rowHTMLcolor} \HTML style code for the row color.
 %    \begin{macrocode}
-\newcommand*{\LWR at rowHTMLcolor}{}
+\def\LWR at rowHTMLcolor{}
 %    \end{macrocode}
 % \end{macro}
 %
 % \begin{macro}{\LWR at cellHTMLcolor} \HTML style code for the cell color.
 %    \begin{macrocode}
-\newcommand*{\LWR at cellHTMLcolor}{}
+\def\LWR at cellHTMLcolor{}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -22488,7 +22551,7 @@
 %    \end{macrocode}
 % Fetch the column at or bang spec:
 %    \begin{macrocode}
-\edef\LWR at atbangspec{\LWR at getexparray{LWR at col#1spec}{#2}}%
+\xdef\LWR at atbangspec{\LWR at getexparray{LWR at col#1spec}{#2}}%
 \LWR at traceinfo{atbang: #2 !\LWR at atbangspec!}%
 %    \end{macrocode}
 % Only generate if is not empty;
@@ -22525,7 +22588,7 @@
 % \begin{macro}{\LWR at addleftmostbartag}
 %    \begin{macrocode}
 \newcommand*{\LWR at addleftmostbartag}{%
-\ifnumcomp{\value{LWR at tablecolindex}}{=}{1}{%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{1}{%
     \LWR at printbartag{leftedge}%
 }{}%
 }
@@ -22536,7 +22599,7 @@
 % \begin{macro}{\LWR at tabularleftedge}
 %    \begin{macrocode}
 \newcommand*{\LWR at tabularleftedge}{%
-\ifnumcomp{\value{LWR at tablecolindex}}{=}{1}%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{1}%
 {%
     \LWR at printatbang{at}{leftedge}%
     \LWR at printatbang{bang}{leftedge}%
@@ -22586,9 +22649,11 @@
         \LWR at tabularleftedge%
 %    \end{macrocode}
 % Fetch the current column's alignment character into \cs{LWR at strresult}:
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Not using \pkg{xstring}.}
 %    \begin{macrocode}
-        \StrChar{\LWR at tablecolspec}%
-            {\arabic{LWR at tablecolindex}}[\LWR at strresult]%
+        \xdef\LWR at strresult{%
+            \LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
+        }%
 %    \end{macrocode}
 % print the start of a new table data cell:
 %    \begin{macrocode}
@@ -22604,7 +22669,7 @@
 %    \begin{macrocode}
         \LWR at addcmidruletrim%
         \LWR at addleftmostbartag%
-        \LWR at printbartag{\arabic{LWR at tablecolindex}}%
+        \LWR at printbartag{\arabic{LWR at tableLaTeXcolindex}}%
         "%
 %    \end{macrocode}
 % Add styles for rules, alignment:
@@ -22613,8 +22678,12 @@
         \LWR at tdstartstyles%
         \LWR at addcmidrulewidth%
         \LWR at addcdashline%
-        \StrChar{\LWR at tablecolspec}%
-            {\arabic{LWR at tablecolindex}}[\LWR at thiscolspec]%
+%    \end{macrocode}
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Not using \pkg{xstring}.}
+%    \begin{macrocode}
+        \xdef\LWR at thiscolspec{%
+            \LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
+        }% 
         \LWR at addformatwpalignment{\LWR at thiscolspec}%
 %    \end{macrocode}
 % Add styles for cell and rule colors:
@@ -22625,7 +22694,7 @@
 %    \end{macrocode}
 %    \begin{macrocode}
         \LWR at tdendstyles%
-        }%
+        }% HTML td
         \LWR at traceinfo{LWR at tabledatasinglecolumntag: done printing td tag}%
 %    \end{macrocode}
 % If this is a |p|, |m|, |b|, or X column, allow paragraphs:
@@ -22652,7 +22721,7 @@
         \ifboolexpr{bool{LWR at tabularmutemods} or bool{LWR at emptyatbang}}%
         {}%
         {%
-            \LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tablecolindex}}%
+            \LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tableLaTeXcolindex}}%
         }%
         \global\boolfalse{LWR at intabularmetadata}%
     }% not exiting tabular
@@ -22735,6 +22804,7 @@
 % Clears all |LWR at midrules| and |LWR at trimrules| markers for this line.
 %
 % \changes{v0.41}{2017/09/28}{Add: \cs{cmidrule} trims.}
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Fix for midrules.}
 %    \begin{macrocode}
 \newcommand*{\LWR at clearmidrules}
 {%
@@ -22742,16 +22812,16 @@
 \whileboolexpr{%
     not test{%
         \ifnumcomp{\value{LWR at midrulecounter}}{>}%
-            {\value{LWR at tablecolspecwidth}}%
+            {\value{LWR at tabletotalLaTeXcols}}%
     }%
 }%
 {%
-\LWR at setexparray{LWR at midrules}{\arabic{LWR at midrulecounter}}{0pt}%
-\setlength{\LWR at thiscmidrulewidth}{\LWR at cmidrulewidth}%
-\LWR at setexparray{LWR at trimlrules}{\arabic{LWR at midrulecounter}}{}%
-\LWR at setexparray{LWR at trimrrules}{\arabic{LWR at midrulecounter}}{}%
-\LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{N}%
-\addtocounter{LWR at midrulecounter}{1}%
+    \LWR at setexparray{LWR at midrules}{\arabic{LWR at midrulecounter}}{0pt}%
+    \setlength{\LWR at thiscmidrulewidth}{\LWR at cmidrulewidth}%
+    \LWR at setexparray{LWR at trimlrules}{\arabic{LWR at midrulecounter}}{}%
+    \LWR at setexparray{LWR at trimrrules}{\arabic{LWR at midrulecounter}}{}%
+    \LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{N}%
+    \addtocounter{LWR at midrulecounter}{1}%
 }%
 }
 %    \end{macrocode}
@@ -22783,7 +22853,7 @@
 }% whiledo
 \IfSubStr{#2}{l}{\LWR at setexparray{LWR at trimlrules}{#3}{l}}{}%
 \IfSubStr{#2}{r}{\LWR at setexparray{LWR at trimrrules}{#4}{r}}{}%
-\booltrue{LWR at doingcmidrule}%
+\global\booltrue{LWR at doingcmidrule}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22823,7 +22893,7 @@
     \LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{Y}%
     \addtocounter{LWR at midrulecounter}{1}%
 }% whiledo
-\booltrue{LWR at doingcmidrule}%
+\global\booltrue{LWR at doingcmidrule}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -22856,7 +22926,7 @@
 
 % Used to add a style to a table data cell:
 %    \begin{macrocode}
-\newboolean{LWR at tdhavecellstyle}
+\newbool{LWR at tdhavecellstyle}
 %    \end{macrocode}
 
 % \begin{macro}{\LWR at tdstartstyles}
@@ -22901,7 +22971,7 @@
 %    \begin{macrocode}
 \newcommand*{\LWR at subaddcmidruletrim}[2]{%
 \setlength{\LWR at templengthone}{%
-        \LWR at getexparray{LWR at midrules}{\arabic{LWR at tablecolindex}}%
+        \LWR at getexparray{LWR at midrules}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 \ifdimcomp{\LWR at templengthone}{>}{0pt}%
 {%
@@ -22930,8 +23000,8 @@
 %    \begin{macrocode}
 \newcommand*{\LWR at addcmidruletrim}{%
 \LWR at subaddcmidruletrim%
-{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tablecolindex}}}%
-{\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at tablecolindex}}}%
+{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tableLaTeXcolindex}}}%
+{\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at tableLaTeXcolindex}}}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -23013,7 +23083,7 @@
 %    \begin{macrocode}
 \newcommand{\LWR at addcdashline}{%
 \edef\LWR at tempone{%
-    \LWR at getexparray{LWR at cdashlines}{\arabic{LWR at tablecolindex}}%
+    \LWR at getexparray{LWR at cdashlines}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 \ifdefstring{\LWR at tempone}{Y}{%
     \LWR at tdaddstyle%
@@ -23181,7 +23251,7 @@
 %    \end{macrocode}
 % If at the leftmost cell, possibly add a leftmost vertical rule:
 %    \begin{macrocode}
-    \ifnumequal{\value{LWR at tablecolindex}}{1}{%
+    \ifnumequal{\value{LWR at tableLaTeXcolindex}}{1}{%
 %    \end{macrocode}
 % Fetch the left edge's vertical bar specification:
 %    \begin{macrocode}
@@ -23214,7 +23284,7 @@
 % Possibly add a right vertical rule for this cell:
 %    \begin{macrocode}
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tablecolindex}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tableLaTeXcolindex}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarr}{%
 %    \end{macrocode}
@@ -23303,7 +23373,7 @@
 \newcounter{LWR at mcolvertbarsr}
 \newcounter{LWR at mcolvertbarsldash}
 \newcounter{LWR at mcolvertbarsrdash}
-\newboolean{LWR at mcolvertbaronleft}%
+\newbool{LWR at mcolvertbaronleft}%
 %    \end{macrocode}
 
 % \begin{macro}{\LWR at printmccoltype} \marg{colspec}
@@ -23367,7 +23437,7 @@
                 {\addtocounter{LWR at mcolvertbarsldash}{1}}% left edge
                 {\addtocounter{LWR at mcolvertbarsrdash}{1}}% not left edge
         }%
-        {\setboolean{LWR at mcolvertbaronleft}{false}}%
+        {\boolfalse{LWR at mcolvertbaronleft}}%
     }%
 }%
 \LWR at traceinfo{lwr at printmccoltype done}%
@@ -23398,7 +23468,7 @@
 %    \end{macrocode}
 % A valid column data type was found:
 %    \begin{macrocode}
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -23410,7 +23480,7 @@
 %    \end{macrocode}
 % A valid column data type was found:
 %    \begin{macrocode}
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -23429,7 +23499,7 @@
 %    \end{macrocode}
 % Not yet found a valid column type:
 %    \begin{macrocode}
-\boolfalse{LWR at validtablecol}%
+\global\boolfalse{LWR at validtablecol}%
 %    \end{macrocode}
 % Get one token of the column spec:
 %    \begin{macrocode}
@@ -23611,7 +23681,7 @@
 %    \begin{macrocode}
 \renewcommand{\LWR at multicoltext}{%
 #6%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }%
 %    \end{macrocode}
 % Compute the rightmost column to be included.
@@ -23618,7 +23688,7 @@
 % This is used to create the right trim.
 % \changes{v0.43}{2017/11/07}{Fix: Multicolumn trim.}
 %    \begin{macrocode}
-\setcounter{LWR at lastmulticolumn}{\value{LWR at tablecolindex}}%
+\setcounter{LWR at lastmulticolumn}{\value{LWR at tableLaTeXcolindex}}%
 \addtocounter{LWR at lastmulticolumn}{#3}%
 \addtocounter{LWR at lastmulticolumn}{-1}%
 %    \end{macrocode}
@@ -23654,7 +23724,7 @@
 \setcounter{LWR at mcolvertbarsr}{0}%
 \setcounter{LWR at mcolvertbarsldash}{0}%
 \setcounter{LWR at mcolvertbarsrdash}{0}%
-\setboolean{LWR at mcolvertbaronleft}{true}%
+\booltrue{LWR at mcolvertbaronleft}%
 \LWR at parsemulticolumnalignment{#5}{\LWR at printmccoltype}%
 %    \end{macrocode}
 % If this column has a cmidrule, add ``rule'' to the end of the \HTML\ class tag.
@@ -23663,7 +23733,7 @@
 % \changes{v0.43}{2017/11/07}{Fix: Multicolumn trim.}
 %    \begin{macrocode}
 \LWR at subaddcmidruletrim%
-{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tablecolindex}}}%
+{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tableLaTeXcolindex}}}%
 {\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at lastmulticolumn}}}%
 %    \end{macrocode}
 % Also add vertical bar class.
@@ -23718,7 +23788,7 @@
 %    \end{macrocode}
 % Figure out how many extra \HTML\ columns to add for |@| and |!| columns:
 %    \begin{macrocode}
-\LWR at tabularhtmlcolumns{\arabic{LWR at tablecolindex}}{#1}
+\LWR at tabularhtmlcolumns{\arabic{LWR at tableLaTeXcolindex}}{#1}
 %    \end{macrocode}
 % Create the multicolumn tag:
 %    \begin{macrocode}
@@ -23726,12 +23796,12 @@
 %    \end{macrocode}
 % Move to the next \LaTeX\ column:
 %    \begin{macrocode}
-\addtocounter{LWR at tablecolindex}{#1}%
-\addtocounter{LWR at tablecolindex}{-1}%
+\addtocounter{LWR at tableLaTeXcolindex}{#1}%
+\addtocounter{LWR at tableLaTeXcolindex}{-1}%
 %    \end{macrocode}
 % Skip any trailing |@| or |!| columns for this cell:
 %    \begin{macrocode}
-\booltrue{LWR at skipatbang}%
+\global\booltrue{LWR at skipatbang}%
 }
 %    \end{macrocode}
 % \end{macro}
@@ -23780,11 +23850,11 @@
 % Figure out how many extra \HTML\ columns to add for |@| and |!| columns
 % found between the first and the last column:
 %    \begin{macrocode}
-\LWR at tabularhtmlcolumns{1}{\arabic{LWR at tabletotalcols}}
+\LWR at tabularhtmlcolumns{1}{\arabic{LWR at tabletotalLaTeXcols}}
 %    \end{macrocode}
 % Create the multicolumn tag:
 %    \begin{macrocode}
-\LWR at domulticolumn{\arabic{LWR at tabletotalcols}}%
+\LWR at domulticolumn{\arabic{LWR at tabletotalLaTeXcols}}%
     {\arabic{LWR at tabhtmlcoltotal}}%
     {P}%
 {% \LWR at domulticolumn
@@ -23864,11 +23934,11 @@
 %    \end{macrocode}
 % Skip any trailing |@| or |!| columns for this cell:
 %    \begin{macrocode}
-\booltrue{LWR at skipatbang}%
+\global\booltrue{LWR at skipatbang}%
 }% end of \LWR at domulticolumn
 
-\addtocounter{LWR at tablecolindex}{\arabic{LWR at tabletotalcols}}
-\addtocounter{LWR at tablecolindex}{-1}
+\addtocounter{LWR at tableLaTeXcolindex}{\arabic{LWR at tabletotalLaTeXcols}}
+\addtocounter{LWR at tableLaTeXcolindex}{-1}
 
 }
 %    \end{macrocode}
@@ -24217,7 +24287,7 @@
 %    \end{macrocode}
 % If not any of the below, start a new table cell:
 %    \begin{macrocode}
-\let\mynext\LWR at tabledatasinglecolumntag%
+\global\let\LWR at mynextaction\LWR at tabledatasinglecolumntag%
 %    \end{macrocode}
 % If exiting the tabular:
 %    \begin{macrocode}
@@ -24227,124 +24297,124 @@
 % \env{longtable} can have a caption in a cell
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\caption}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % Look for other things which would not start a table cell:
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\multicolumn}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\multirow}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\multicolumnrow}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\noalign}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % If an \cs{mrowcell}, this is a cell to be skipped over:
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\mrowcell}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % If an \cs{mcolrowcell}, this is a cell to be skipped over:
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\mcolrowcell}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\TabularMacro}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\hline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\firsthline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\lasthline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\toprule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\midrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\cmidrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % \changes{v0.56}{2018/05/02}{Fix: \cs{morecmidrules}}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\morecmidrules}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\specialrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\cline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\bottomrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\rowcolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\arrayrulecolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\doublerulesepcolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\warpprintonly}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\warpHTMLonly}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\ldelim}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\rdelim}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % For \pkg{arydshln}:
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\hdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\cdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\firsthdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\lasthdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 % Ignore an empty line between rows:
 % \changes{v0.45}{2017/12/06}{Fix: Empty line between rows.}
 %    \begin{macrocode}
 \ifdefequal{\LWR at mynexttoken}{\par}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 %    \end{macrocode}
 %
 % No action for an \cs{end} token.
@@ -24355,7 +24425,7 @@
 % Start the new table cell if was not any of the above:
 %    \begin{macrocode}
 \LWR at traceinfo{LWR at tabledatacolumntag: about to do mynext}%
-\mynext%
+\LWR at mynextaction%
 \LWR at traceinfo{LWR at tabledatacolumntag: done}%
 }
 %    \end{macrocode}
@@ -24453,7 +24523,7 @@
 \begingroup%
 \global\advance\rownum\m at ne%
 \renewcommand*{\LWR at xcolorrowHTMLcolor}{}%
-\multicolumn{\value{LWR at tabletotalcols}}{l}{#1} \\
+\multicolumn{\value{LWR at tabletotalLaTeXcols}}{l}{#1} \\
 \endgroup%
 % \@rowc at lors%
 \LWR at getmynexttoken%
@@ -24474,7 +24544,7 @@
 {
 \newcommand*{\LWR at HTMLhline}[1][]{%
     \ifbool{FormatWP}%
-    {\LWR at docmidrule{1-\arabic{LWR at tabletotalcols}}}%
+    {\LWR at docmidrule{1-\arabic{LWR at tabletotalLaTeXcols}}}%
     {\addtocounter{LWR at hlines}{1}}%
     \LWR at getmynexttoken}%
 }
@@ -24481,7 +24551,7 @@
 {
 \newcommand*{\LWR at HTMLhline}{%
     \ifbool{FormatWP}%
-    {\LWR at docmidrule{1-\arabic{LWR at tabletotalcols}}}%
+    {\LWR at docmidrule{1-\arabic{LWR at tabletotalLaTeXcols}}}%
     {\addtocounter{LWR at hlines}{1}}%
     \LWR at getmynexttoken}%
 }
@@ -24585,11 +24655,11 @@
 %    \end{macrocode}
 % Track column \#:
 %    \begin{macrocode}
-\setcounter{LWR at tablecolindex}{1}%
+\setcounter{LWR at tableLaTeXcolindex}{1}%
 %    \end{macrocode}
 % Have not yet added data in this column:
 %    \begin{macrocode}
-\boolfalse{LWR at tabularcelladded}%
+\global\boolfalse{LWR at tabularcelladded}%
 %    \end{macrocode}
 % Start looking for midrules:
 %    \begin{macrocode}
@@ -24605,9 +24675,9 @@
 %    \begin{macrocode}
 \LetLtxMacro\arrayrulecolor\arrayrulecolornexttoken%
 \LetLtxMacro\doublerulesepcolor\doublerulesepcolornexttoken%
-\renewcommand*{\LWR at columnHTMLcolor}{}%
-\renewcommand*{\LWR at rowHTMLcolor}{}%
-\renewcommand*{\LWR at cellHTMLcolor}{}%
+\gdef\LWR at columnHTMLcolor{}%
+\gdef\LWR at rowHTMLcolor{}%
+\gdef\LWR at cellHTMLcolor{}%
 \@rowcolors%
 %    \end{macrocode}
 % The vertical rules are set to the color active at the start of the tabular.
@@ -24635,7 +24705,7 @@
 %    \begin{macrocode}
 \DeclareDocumentCommand{\hdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
@@ -24648,7 +24718,7 @@
 %    \begin{macrocode}
 \DeclareDocumentCommand{\firsthdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
@@ -24656,7 +24726,7 @@
 %    \begin{macrocode}
 \DeclareDocumentCommand{\lasthdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
@@ -24712,13 +24782,13 @@
 \addtocounter{LWR at tabularpardepth}{-1}%
 \ifboolexpr{%
     test {%
-        \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}
+        \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}
     } or %
     (%
         bool{LWR at intabularmetadata} and%
         not bool{LWR at tabularcelladded} and%
         test {%
-            \ifnumcomp{\value{LWR at tablecolindex}}{=}{\value{LWR at tabletotalcols}}%
+            \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{\value{LWR at tabletotalLaTeXcols}}%
         }%
     )%
 }%
@@ -31630,6 +31700,50 @@
 %
 %
 % \iffalse
+%<*2up>
+% \fi
+%
+% \part{lwarp-2up.sty}
+%
+% \section{2up}
+%
+% \DescribePackage{2up}
+% \pkg{2up} is ignored.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{2up}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{2up}[2010/05/15]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\def\source#1#2#3{}
+\def\target#1#2#3{}
+\def\targetlayout#1{}
+\newdimen\pageseplength
+\newdimen\pagesepwidth
+\newdimen\pagesepoffset
+\def\twoupemptypage{}
+\def\twoupclearpage{}
+\def\twoupeject{}
+\def\twouparticle{}
+\def\twoupplain{}
+\def\twouplegaltarget{}
+\def\twouplandscape{}
+\def\TwoupWrites{}
+%    \end{macrocode}
+%
+% \iffalse
+%</2up>
+% \fi
+%
+%
+%
+%
+%
+% \iffalse
 %<*a4>
 % \fi
 %
@@ -34224,7 +34338,56 @@
 %
 %
 %
+%
+%
 % \iffalse
+%<*booklet>
+% \fi
+%
+% \part{lwarp-booklet.sty}
+%
+% \section{booklet}
+%
+% \credits{Peter Wilson}
+%
+% \DescribePackage{booklet}
+% \pkg{booklet} is nullified.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{booklet}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{booklet}[2009/09/02]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newdimen\pageseplength
+\newdimen\pagesepwidth
+\newdimen\pagesepoffset
+\newif\ifsidebyside     \sidebysidetrue
+\newif\ifuselandscape   \uselandscapefalse
+\newif\ifprintoption    \printoptionfalse
+\newcommand*{\pagespersignature}[1]{}
+\def\magstepminus#1{}
+\newcommand*{\target}[3]{}
+\newcommand*{\source}[3]{}
+\newcommand*{\setpdftargetpages}{}
+\newcommand*{\setdvipstargetpages}{}
+\newcommand*{\targettopbottom}{}
+\newcommand*{\twoupemptypage}{}
+\newcommand*{\twoupclearpage}{}
+\newcommand*{\checkforlandscape}{}
+%    \end{macrocode}
+%
+% \iffalse
+%</booklet>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*bookmark>
 % \fi
 
@@ -34300,11 +34463,11 @@
 \DeclareDocumentCommand{\LWR at HTML@toprule}{o d()}%
     {%
         \IfValueTF{#1}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
             {%
                 \ifbool{FormatWP}%
-                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
-                {\booltrue{LWR at doingtbrule}}%
+                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
+                {\global\booltrue{LWR at doingtbrule}}%
             }%
     \LWR at getmynexttoken}
 
@@ -34313,10 +34476,10 @@
 \DeclareDocumentCommand{\LWR at HTML@midrule}{o d()}%
     {%
         \IfValueTF{#1}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
             {%
                 \ifbool{FormatWP}%
-                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
                 {\addtocounter{LWR at hlines}{1}}%
             }%
     \LWR at getmynexttoken}
@@ -34332,11 +34495,11 @@
 
 \DeclareDocumentCommand{\LWR at HTML@bottomrule}{o d()}{%
     \IfValueTF{#1}%
-        {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {%
             \ifbool{FormatWP}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
-            {\booltrue{LWR at doingtbrule}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
+            {\global\booltrue{LWR at doingtbrule}}%
         }%
     \LWR at getmynexttoken%
 }%
@@ -34352,7 +34515,7 @@
 \LWR at expandableformatted{morecmidrules}
 
 \DeclareDocumentCommand{\LWR at HTML@specialrule}{m m m d()}%
-    {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}\LWR at getmynexttoken}%
+    {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}\LWR at getmynexttoken}%
 
 \LWR at expandableformatted{specialrule}
 %    \end{macrocode}
@@ -34364,8 +34527,39 @@
 %
 %
 %
+% \iffalse
+%<*bophook>
+% \fi
 %
+% \part{lwarp-bophook.sty}
+%
+% \section{bophook}
+%
+% \DescribePackage{bophook}
+% \pkg{bophook} is ignored.
+%
+% \changes{v0.60}{2018/09/19}{\pkg{bophook}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{bophook}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand*{\AtBeginPage}[1]{}
+\newcommand*{\PageLayout}[1]{}
+%    \end{macrocode}
+%
 % \iffalse
+%</bophook>
+% \fi
+%
+%
+%
+%
+%
+% \iffalse
 %<*boxedminipage>
 % \fi
 %
@@ -37361,6 +37555,7 @@
 % \end{noindmacro}
 
 % Likewise for NE, SW, SE:
+% \changes{v0.60}{2018/09/17}{\pkg{diagbox}: Fix for par tags.}
 %    \begin{macrocode}
 \newcommand{\LWR at diagboxTNE}[3]{%
 \BlockClassSingle{diagboxtitleN}{#1}
@@ -37370,11 +37565,13 @@
 \newcommand{\LWR at diagboxTSW}[3]{%
 \LWR at diagboxSW{#2}{#3}
 \BlockClassSingle{diagboxtitleS}{#1}
+\LWR at stoppars%
 }
 
 \newcommand{\LWR at diagboxTSE}[3]{%
 \LWR at diagboxSE{#2}{#3}
 \BlockClassSingle{diagboxtitleS}{#1}
+\LWR at stoppars%
 }
 %    \end{macrocode}
 %
@@ -37434,7 +37631,45 @@
 %
 %
 %
+%
 % \iffalse
+%<*draftfigure>
+% \fi
+%
+% \part{lwarp-draftfigure.sty}
+%
+% \section{draftfigure}
+%
+% \DescribePackage{draftfigure}
+% \pkg{draftfigure} is ignored.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{draftfigure}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{draftfigure}[2017/07/19]
+\RequirePackage{xkeyval}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\define at key{draftfigure}{code}{}
+\define at key{draftfigure}{noframe}[true]{}
+\define at key{draftfigure}{filename}[true]{}
+\define at key{draftfigure}{content}[]{}
+\define at key{draftfigure}{style}[normal]{}
+\define at key{draftfigure}{position}[left]{}
+\define at key{draftfigure}{size}[normal]{}
+\newcommand\setdf[1]{\setkeys{draftfigure}{#1}}
+%    \end{macrocode}
+%
+% \iffalse
+%</draftfigure>
+% \fi
+%
+%
+%
+% \iffalse
 %<*draftwatermark>
 % \fi
 
@@ -38754,9 +38989,51 @@
 %
 %
 %
+% \iffalse
+%<*fancytabs>
+% \fi
 %
+% \part{lwarp-fancytabs.sty}
 %
+% \section{fancytabs}
+%
+% \DescribePackage{fancytabs}
+% \pkg{fancytabs} is ignored.
+%
+% \changes{v0.60}{2018/09/19}{\pkg{fancytabs}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{fancytabs}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand{\fancytab}[3][RIGHT]{}
+\newcommand{\fancytabsStyle}[1]{}
+\newcommand{\fancytabsHeight}[1]{}
+\newcommand{\fancytabsWidth}[1]{}
+\newcommand{\fancytabsCount}[1]{}
+\newcommand{\fancytabsLeftColor}[1]{}
+\newcommand{\fancytabsRightColor}[1]{}
+\newcommand{\fancytabsTop}[1]{}
+\newcommand{\fancytabsTextVPos}[1]{}
+\newcommand{\fancytabsTextHPos}[1]{}
+\newcommand{\fancytabsGap}[1]{}
+\newcommand{\fancytabsFloor}[1]{}
+\newcommand{\fancytabsRotate}[1]{}
+%    \end{macrocode}
+%
 % \iffalse
+%</fancytabs>
+% \fi
+%
+%
+%
+%
+%
+%
+% \iffalse
 %<*fancyvrb>
 % \fi
 %
@@ -40691,9 +40968,38 @@
 %
 %
 %
+% \iffalse
+%<*fullminipage>
+% \fi
 %
+% \part{lwarp-fullminipage.sty}
 %
+% \section{fullminipage}
+%
+% \DescribePackage{fullminipage}
+% \pkg{fullminipage} is nullified.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{fullminipage}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{fullminipage}[2014/07/06]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newenvironment{fullminipage}[1][]{}{}
+%    \end{macrocode}
+%
 % \iffalse
+%</fullminipage>
+% \fi
+%
+%
+%
+%
+%
+% \iffalse
 %<*fullpage>
 % \fi
 %
@@ -40709,7 +41015,7 @@
 %
 % Discard all options for \pkg{lwarp-fullpage}:
 %    \begin{macrocode}
-\LWR at ProvidesPackageDrop{fullpage}
+\LWR at ProvidesPackageDrop{fullpage}[1994/06/01]
 %    \end{macrocode}
 %
 %
@@ -41346,9 +41652,9 @@
 % If |#3| is empty, only one optional argument was given, thus \pkg{graphicx} syntax:
 %    \begin{macrocode}
 \IfValueF{#3}{%
-\IfValueTF{#2}%
-{\setkeys{igraph}{#2}}%
-{\setkeys{igraph}{}}%
+    \IfValueTF{#2}%
+        {\setkeys{igraph}{#2}}%
+        {\setkeys{igraph}{}}%
 }%
 %    \end{macrocode}
 %
@@ -41781,6 +42087,46 @@
 %
 %
 % \iffalse
+%<*grid-system>
+% \fi
+%
+% \part{lwarp-grid-system.sty}
+%
+% \section{grid-system}
+%
+% \credits{Marcus Bitzl}
+%
+% \DescribePackage{grid-system}
+% \pkg{grid-system} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{grid-system}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{grid-system}[2014/02/16]
+%    \end{macrocode}
+%
+% (\cs{ifdef} is in case the older syntax is removed.)
+%
+%    \begin{macrocode}
+\AtBeginEnvironment{Row}{\setlength{\linewidth}{6in}}
+
+\ifdef{\endrow}{
+    \AtBeginEnvironment{row}{\setlength{\linewidth}{6in}}
+}{}
+
+\renewcommand{\gridsystem at finishcell}{\hspace{\gridsystem at cellsep}}
+%    \end{macrocode}
+%
+% \iffalse
+%</grid-system>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*gridset>
 % \fi
 %
@@ -43407,8 +43753,32 @@
 %
 %
 %
+% \iffalse
+%<*layaureo>
+% \fi
 %
+% \part{lwarp-layaureo.sty}
+%
+% \section{layaureo}
+%
+% \DescribePackage{layaureo}
+% \pkg{layaureo} is ignored.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{layaureo}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{layaureo}[2004/09/16]
+%    \end{macrocode}
+%
 % \iffalse
+%</layaureo>
+% \fi
+%
+%
+%
+% \iffalse
 %<*layout>
 % \fi
 
@@ -43442,6 +43812,35 @@
 %
 %
 % \iffalse
+%<*leading>
+% \fi
+%
+% \part{lwarp-leading.sty}
+%
+% \section{leading}
+%
+% \DescribePackage{leading}
+% \pkg{leading} is ignored.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{leading}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{leading}[2008/12/11]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand\leading[1]{}
+%    \end{macrocode}
+%
+% \iffalse
+%</leading>
+% \fi
+%
+%
+%
+% \iffalse
 %<*letterspace>
 % \fi
 
@@ -43769,7 +44168,7 @@
 % ^^A 	\hspace*{3em}how-to-pass-an-optional-argument-to-\\
 % ^^A 	\hspace*{3em}an-environment-with-verbatim-content}}
 %
-% Force flexible columns:
+% Force flexible columns.  Fixed columns inserts spaces in the \PDF\ output.
 % \changes{v0.50}{2018/03/02}{\pkg{listings}: Force flexible columns.}
 %    \begin{macrocode}
 \lst at column@flexible
@@ -43787,7 +44186,29 @@
 \renewcommand{\l at lstlisting}[2]{\hypertocfloat{1}{lstlisting}{lol}{#1}{#2}}
 %    \end{macrocode}
 %
+% \begin{noindmacro}{\lstset} \marg{options}
 %
+% Use the \pkg{listings} \optn{literate} option to replace
+% \HTML\ entities:
+% \changes{v0.60}{2018/09/12}{\pkg{listings}: Fix for \HTML\ entities.}
+%    \begin{macrocode}
+\def\lstset@#1{\endgroup%
+%  \ifx\@empty#1%
+%         \@empty%
+%     \else%
+        \setkeys{lst}{%
+            #1%
+            ,literate=%
+            {<}{\HTMLentity{lt}}{4}%
+            {>}{\HTMLentity{gt}}{4}%
+            {\&}{\HTMLentity{amp}}{5}%
+        }%
+%     \fi%
+}
+%    \end{macrocode}
+% \end{noindmacro}
+%
+%
 % \begin{noindmacro}{\lst at Init} \marg{backslash-processing} \quad
 % Done at the start of a listing.
 %    \begin{macrocode}
@@ -43794,7 +44215,7 @@
 \renewcommand{\lst at Init}[1]{%
 %    \end{macrocode}
 %
-% First, perform the \pkg{listings} initialization:
+% Perform the \pkg{listings} initialization:
 %
 % \changes{v0.51}{2018/03/17}{\pkg{listings}: Forces cleared options.}
 %    \begin{macrocode}
@@ -43810,6 +44231,13 @@
 \lstframe@\lst at frameround ffff\relax%
 \lst at multicols\@empty%
 \LWR at origlst@Init{#1}\relax%
+%    \end{macrocode}
+% Avoids extra horizontal space:
+% \changes{v0.60}{2018/09/12}{\pkg{listings}: Fix if inside a list.}
+%    \begin{macrocode}
+\def\lst at framelr{}%
+%    \end{macrocode}
+%    \begin{macrocode}
 \LWR at traceinfo{finished origlst at Init}%
 \lst at ifdisplaystyle%
 %    \end{macrocode}
@@ -43832,6 +44260,7 @@
 \ifbool{LWR at verbtags}{\LWR at htmltag{span class="inlineprogramlisting"}}{}%
 \fi%
 }
+
 %    \end{macrocode}
 % \end{noindmacro}
 %
@@ -43963,8 +44392,11 @@
 %
 %
 % Patched to keep left line numbers outside of the left margin, and
+% \margintag{line numbers}
 % place right line numbers in a field \cs{VerbatimHTMLWidth} wide.
 %
+% \changes{v0.60}{2018/09/12}{\pkg{listings}: Fix if inside a list.}
+%
 % ^^A \DescribeKey[listings]{numbers} Activates line numbers.
 %    \begin{macrocode}
 \lst at Key{numbers}{none}{%
@@ -43972,14 +44404,18 @@
     \lstKV at SwitchCases{#1}%
     {none&\\%
      left&\def\lst at PlaceNumber{%
-% \llap{
-\LWR at orignormalfont%
-\lst at numberstyle{\thelstnumber}\kern\lst at numbersep%
-% }
-}
-\\%
-     right&\def\lst at PlaceNumber{\rlap{\LWR at orignormalfont
-                \kern\VerbatimHTMLWidth \kern\lst at numbersep
+%    \end{macrocode}
+% For now, \pkg{lwarp} places left line numbers inline.
+% Ideally the entire line would be moved to the right, but
+% conflicts with list indenting occurs.
+%    \begin{macrocode}
+%         \LWR at origllap{
+            \LWR at orignormalfont%
+            \lst at numberstyle{\thelstnumber}\kern\lst at numbersep%
+%         }
+    }\\%
+     right&\def\lst at PlaceNumber{\LWR at origrlap{\LWR at orignormalfont
+                \kern 6in \kern\lst at numbersep
                 \lst at numberstyle{\thelstnumber}}}%
     }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}}
 %    \end{macrocode}
@@ -46047,8 +46483,9 @@
 class="td%
 %    \end{macrocode}
 % Append this column's spec:
+% \changes{v0.60}{2018/09/17}{\env{tabular}: Improved memory management: Not using \pkg{xstring}.}
 %    \begin{macrocode}
-\StrChar{\LWR at tablecolspec}{\arabic{LWR at tablecolindex}}%
+\LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
 %    \end{macrocode}
 % If this column has a cmidrule, add ``rule'' to the end of the \HTML\ class tag.
 % Also add the vertical bar class.
@@ -46056,7 +46493,7 @@
 %    \begin{macrocode}
 \LWR at addcmidruletrim%
 \LWR at addleftmostbartag%
-\LWR at printbartag{\arabic{LWR at tablecolindex}}%
+\LWR at printbartag{\arabic{LWR at tableLaTeXcolindex}}%
 "%
 %    \end{macrocode}
 % \changes{v0.42}{2017/10/26}{\pkg{multirow}: If \progcode{FormatWP} add cell alignment.}
@@ -46071,7 +46508,7 @@
 % \changes{v0.41}{2017/10/05}{Fix: \protect\textless\ spec.}
 % The column's |<| spec:
 %    \begin{macrocode}
-\LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tablecolindex}}%
+\LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tableLaTeXcolindex}}%
 %    \end{macrocode}
 % While printing the text, redefine |\\| to generate a new line
 %    \begin{macrocode}
@@ -46118,7 +46555,7 @@
 %    \end{macrocode}
 % Figure out how many extra \HTML\ columns to add for |@| and |!| columns:
 %    \begin{macrocode}
-\LWR at tabularhtmlcolumns{\arabic{LWR at tablecolindex}}{#1}
+\LWR at tabularhtmlcolumns{\arabic{LWR at tableLaTeXcolindex}}{#1}
 %    \end{macrocode}
 % Create the multicolumn/multirow tag:
 %    \begin{macrocode}
@@ -46129,12 +46566,12 @@
 %    \end{macrocode}
 % Move to the next \LaTeX\ column:
 %    \begin{macrocode}
-\addtocounter{LWR at tablecolindex}{#1}%
-\addtocounter{LWR at tablecolindex}{-1}%
+\addtocounter{LWR at tableLaTeXcolindex}{#1}%
+\addtocounter{LWR at tableLaTeXcolindex}{-1}%
 %    \end{macrocode}
 % Skip any trailing |@| or |!| columns for this cell:
 %    \begin{macrocode}
-\booltrue{LWR at skipatbang}%
+\global\booltrue{LWR at skipatbang}%
 }
 
 \LWR at expandableformatted{multicolumnrow}
@@ -48565,8 +49002,8 @@
 \xpatchcmd{\register}
     {\centering}
     {\begin{center}\begin{lateximage}[-register-~\packagediagramname]}
-    {\typeout{Patch register success.}}
-    {\typeout{Patch register failure.}}
+    {}
+    {\LWR at patcherror{register}{register}}
 
 \xpatchcmd{\endregister}
     {\leftskip}
@@ -48574,8 +49011,8 @@
         \end{lateximage}\end{center}%
         \leftskip%
     }%
-    {\typeout{Patch endregister success.}}
-    {\typeout{Patch endregister failure.}}
+    {}
+    {\LWR at patcherror{register}{endregister}}
 
 \setlength{\regWidth}{5in}
 %    \end{macrocode}
@@ -49603,8 +50040,6 @@
 %
 %
 %
-%
-%
 % \iffalse
 %<*setspace>
 % \fi
@@ -51925,10 +52360,80 @@
 %
 %
 %
+% \iffalse
+%<*thumb>
+% \fi
 %
+% \part{lwarp-thumb.sty}
 %
+% \section{thumb}
 %
+% \DescribePackage{thumb}
+% \pkg{thumb} is ignored.
+%
+% \changes{v0.60}{2018/09/19}{\pkg{thumb}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{thumb}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand*{\Overviewpage}{}
+\newlength{\thumbheight}
+\newlength{\thumbwidth}
+%    \end{macrocode}
+%
 % \iffalse
+%</thumb>
+% \fi
+%
+%
+%
+%
+% \iffalse
+%<*thumbs>
+% \fi
+%
+% \part{lwarp-thumbs.sty}
+%
+% \section{thumbs}
+%
+% \DescribePackage{thumbs}
+% \pkg{thumbs} is ignored.
+%
+% \changes{v0.60}{2018/09/19}{\pkg{thumbs}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{thumbs}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\newcommand{\addthumb}[4]{}
+\newcommand{\addtitlethumb}[5]{}
+\newcommand{\stopthumb}{}
+\newcommand{\continuethumb}{}
+\newcommand{\thumbsoverview}[1]{}
+\newcommand{\thumbsoverviewback}[1]{}
+\newcommand{\thumbsoverviewverso}[1]{}
+\newcommand{\thumbsoverviewdouble}[1]{}
+\newcommand{\thumbnewcolumn}{}
+\newcommand{\addthumbsoverviewtocontents}[2]{}
+\newcommand{\thumbsnophantom}{}
+%    \end{macrocode}
+%
+% \iffalse
+%</thumbs>
+% \fi
+%
+%
+%
+%
+%
+% \iffalse
 %<*tikz>
 % \fi
 
@@ -51968,7 +52473,7 @@
 
 
 %    \begin{macrocode}
-\newboolean{LWR at tikzbabel}
+\newbool{LWR at tikzbabel}
 
 \@ifpackagelater{tikz}{2013/12/20}% Test for Tikz version v3.0.0
 {\usetikzlibrary{babel}\booltrue{LWR at tikzbabel}}
@@ -53945,6 +54450,36 @@
 %
 %
 % \iffalse
+%<*twoup-gen>
+% \fi
+%
+% \part{lwarp-twoup-gen.sty}
+%
+% \section{twoup-gen}
+%
+% \DescribePackage{twoup-gen}
+% \pkg{twoup-gen} is ignored.
+%
+% This package is used by MikTeX for \pkg{lwarp-2up}.
+%
+% \changes{v0.60}{2018/09/18}{\pkg{twoup-gen}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{twoup-gen}
+
+\LWR at origRequirePackage{lwarp-2up}
+%    \end{macrocode}
+%
+%
+% \iffalse
+%</twoup-gen>
+% \fi
+%
+%
+%
+% \iffalse
 %<*typearea>
 % \fi
 %
@@ -54746,9 +55281,39 @@
 %
 %
 %
+% \iffalse
+%<*widows-and-orphans>
+% \fi
 %
+% \part{lwarp-widows-and-orphans.sty}
 %
+% \section{widows-and-orphans}
+%
+% \DescribePackage{widows-and-orphans}
+% \pkg{widows-and-orphans} is ignored.
+%
+% \changes{v0.60}{2018/09/17}{\pkg{widows-and-orphans}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{widows-and-orphans}[2018/09/01]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\NewDocumentCommand\WaOsetup{m}{}
+\NewDocumentCommand\WaOparameters{}{}
+\NewDocumentCommand\WaOignorenext{}{}
+%    \end{macrocode}
+%
 % \iffalse
+%</widows-and-orphans>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*wrapfig>
 % \fi
 

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2018-09-19 21:27:24 UTC (rev 48702)
@@ -33,6 +33,7 @@
 \askforoverwritefalse
 \generate{
 \file{lwarp.sty}{\from{lwarp.dtx}{package}}
+\file{lwarp-2up.sty}{\from{lwarp.dtx}{2up}}
 \file{lwarp-a4.sty}{\from{lwarp.dtx}{a4}}
 \file{lwarp-a4wide.sty}{\from{lwarp.dtx}{a4wide}}
 \file{lwarp-a5comb.sty}{\from{lwarp.dtx}{a5comb}}
@@ -69,8 +70,10 @@
 \file{lwarp-bigdelim.sty}{\from{lwarp.dtx}{bigdelim}}
 \file{lwarp-bigstrut.sty}{\from{lwarp.dtx}{bigstrut}}
 \file{lwarp-blowup.sty}{\from{lwarp.dtx}{blowup}}
+\file{lwarp-booklet.sty}{\from{lwarp.dtx}{booklet}}
 \file{lwarp-bookmark.sty}{\from{lwarp.dtx}{bookmark}}
 \file{lwarp-booktabs.sty}{\from{lwarp.dtx}{booktabs}}
+\file{lwarp-bophook.sty}{\from{lwarp.dtx}{bophook}}
 \file{lwarp-boxedminipage.sty}{\from{lwarp.dtx}{boxedminipage}}
 \file{lwarp-boxedminipage2e.sty}{\from{lwarp.dtx}{boxedminipage2e}}
 \file{lwarp-breakurl.sty}{\from{lwarp.dtx}{breakurl}}
@@ -106,6 +109,7 @@
 \file{lwarp-dcolumn.sty}{\from{lwarp.dtx}{dcolumn}}
 \file{lwarp-diagbox.sty}{\from{lwarp.dtx}{diagbox}}
 \file{lwarp-draftcopy.sty}{\from{lwarp.dtx}{draftcopy}}
+\file{lwarp-draftfigure.sty}{\from{lwarp.dtx}{draftfigure}}
 \file{lwarp-draftwatermark.sty}{\from{lwarp.dtx}{draftwatermark}}
 \file{lwarp-easy-todo.sty}{\from{lwarp.dtx}{easy-todo}}
 \file{lwarp-ebook.sty}{\from{lwarp.dtx}{ebook}}
@@ -128,6 +132,7 @@
 \file{lwarp-fancyheadings.sty}{\from{lwarp.dtx}{fancyheadings}}
 \file{lwarp-fancyhdr.sty}{\from{lwarp.dtx}{fancyhdr}}
 \file{lwarp-fancyref.sty}{\from{lwarp.dtx}{fancyref}}
+\file{lwarp-fancytabs.sty}{\from{lwarp.dtx}{fancytabs}}
 \file{lwarp-fancyvrb.sty}{\from{lwarp.dtx}{fancyvrb}}
 \file{lwarp-figcaps.sty}{\from{lwarp.dtx}{figcaps}}
 \file{lwarp-figsize.sty}{\from{lwarp.dtx}{figsize}}
@@ -154,6 +159,7 @@
 \file{lwarp-footnpag.sty}{\from{lwarp.dtx}{footnpag}}
 \file{lwarp-framed.sty}{\from{lwarp.dtx}{framed}}
 \file{lwarp-ftnright.sty}{\from{lwarp.dtx}{ftnright}}
+\file{lwarp-fullminipage.sty}{\from{lwarp.dtx}{fullminipage}}
 \file{lwarp-fullpage.sty}{\from{lwarp.dtx}{fullpage}}
 \file{lwarp-fullwidth.sty}{\from{lwarp.dtx}{fullwidth}}
 \file{lwarp-fwlw.sty}{\from{lwarp.dtx}{fwlw}}
@@ -164,6 +170,7 @@
 \file{lwarp-graphics.sty}{\from{lwarp.dtx}{graphics}}
 \file{lwarp-grffile.sty}{\from{lwarp.dtx}{grffile}}
 \file{lwarp-grid.sty}{\from{lwarp.dtx}{grid}}
+\file{lwarp-grid-system.sty}{\from{lwarp.dtx}{grid-system}}
 \file{lwarp-gridset.sty}{\from{lwarp.dtx}{gridset}}
 \file{lwarp-hang.sty}{\from{lwarp.dtx}{hang}}
 \file{lwarp-hanging.sty}{\from{lwarp.dtx}{hanging}}
@@ -182,7 +189,9 @@
 \file{lwarp-inputenx.sty}{\from{lwarp.dtx}{inputenx}}
 \file{lwarp-intopdf.sty}{\from{lwarp.dtx}{intopdf}}
 \file{lwarp-keyfloat.sty}{\from{lwarp.dtx}{keyfloat}}
+\file{lwarp-layaureo.sty}{\from{lwarp.dtx}{layaureo}}
 \file{lwarp-layout.sty}{\from{lwarp.dtx}{layout}}
+\file{lwarp-leading.sty}{\from{lwarp.dtx}{leading}}
 \file{lwarp-letterspace.sty}{\from{lwarp.dtx}{letterspace}}
 \file{lwarp-lettrine.sty}{\from{lwarp.dtx}{lettrine}}
 \file{lwarp-lineno.sty}{\from{lwarp.dtx}{lineno}}
@@ -303,6 +312,8 @@
 \file{lwarp-textpos.sty}{\from{lwarp.dtx}{textpos}}
 \file{lwarp-theorem.sty}{\from{lwarp.dtx}{theorem}}
 \file{lwarp-threeparttable.sty}{\from{lwarp.dtx}{threeparttable}}
+\file{lwarp-thumb.sty}{\from{lwarp.dtx}{thumb}}
+\file{lwarp-thumbs.sty}{\from{lwarp.dtx}{thumbs}}
 \file{lwarp-tikz.sty}{\from{lwarp.dtx}{tikz}}
 \file{lwarp-titleps.sty}{\from{lwarp.dtx}{titleps}}
 \file{lwarp-titleref.sty}{\from{lwarp.dtx}{titleref}}
@@ -320,6 +331,7 @@
 \file{lwarp-trimclip.sty}{\from{lwarp.dtx}{trimclip}}
 \file{lwarp-trivfloat.sty}{\from{lwarp.dtx}{trivfloat}}
 \file{lwarp-turnthepage.sty}{\from{lwarp.dtx}{turnthepage}}
+\file{lwarp-twoup-gen.sty}{\from{lwarp.dtx}{twoup-gen}}
 \file{lwarp-typearea.sty}{\from{lwarp.dtx}{typearea}}
 \file{lwarp-ulem.sty}{\from{lwarp.dtx}{ulem}}
 \file{lwarp-underscore.sty}{\from{lwarp.dtx}{underscore}}
@@ -334,6 +346,7 @@
 \file{lwarp-wallpaper.sty}{\from{lwarp.dtx}{wallpaper}}
 \file{lwarp-wasysym.sty}{\from{lwarp.dtx}{wasysym}}
 \file{lwarp-watermark.sty}{\from{lwarp.dtx}{watermark}}
+\file{lwarp-widows-and-orphans.sty}{\from{lwarp.dtx}{widows-and-orphans}}
 \file{lwarp-wrapfig.sty}{\from{lwarp.dtx}{wrapfig}}
 \file{lwarp-xcolor.sty}{\from{lwarp.dtx}{xcolor}}
 \file{lwarp-xellipsis.sty}{\from{lwarp.dtx}{xellipsis}}

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-2up.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-2up.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-2up.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,35 @@
+%%
+%% This is file `lwarp-2up.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `2up')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{2up}[2010/05/15]
+\def\source#1#2#3{}
+\def\target#1#2#3{}
+\def\targetlayout#1{}
+\newdimen\pageseplength
+\newdimen\pagesepwidth
+\newdimen\pagesepoffset
+\def\twoupemptypage{}
+\def\twoupclearpage{}
+\def\twoupeject{}
+\def\twouparticle{}
+\def\twoupplain{}
+\def\twouplegaltarget{}
+\def\twouplandscape{}
+\def\TwoupWrites{}
+\endinput
+%%
+%% End of file `lwarp-2up.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-2up.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booklet.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booklet.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booklet.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,37 @@
+%%
+%% This is file `lwarp-booklet.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `booklet')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{booklet}[2009/09/02]
+\newdimen\pageseplength
+\newdimen\pagesepwidth
+\newdimen\pagesepoffset
+\newif\ifsidebyside     \sidebysidetrue
+\newif\ifuselandscape   \uselandscapefalse
+\newif\ifprintoption    \printoptionfalse
+\newcommand*{\pagespersignature}[1]{}
+\def\magstepminus#1{}
+\newcommand*{\target}[3]{}
+\newcommand*{\source}[3]{}
+\newcommand*{\setpdftargetpages}{}
+\newcommand*{\setdvipstargetpages}{}
+\newcommand*{\targettopbottom}{}
+\newcommand*{\twoupemptypage}{}
+\newcommand*{\twoupclearpage}{}
+\newcommand*{\checkforlandscape}{}
+\endinput
+%%
+%% End of file `lwarp-booklet.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booklet.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booktabs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booktabs.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-booktabs.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -27,11 +27,11 @@
 \DeclareDocumentCommand{\LWR at HTML@toprule}{o d()}%
     {%
         \IfValueTF{#1}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
             {%
                 \ifbool{FormatWP}%
-                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
-                {\booltrue{LWR at doingtbrule}}%
+                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
+                {\global\booltrue{LWR at doingtbrule}}%
             }%
     \LWR at getmynexttoken}
 
@@ -40,10 +40,10 @@
 \DeclareDocumentCommand{\LWR at HTML@midrule}{o d()}%
     {%
         \IfValueTF{#1}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
             {%
                 \ifbool{FormatWP}%
-                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+                {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
                 {\addtocounter{LWR at hlines}{1}}%
             }%
     \LWR at getmynexttoken}
@@ -59,11 +59,11 @@
 
 \DeclareDocumentCommand{\LWR at HTML@bottomrule}{o d()}{%
     \IfValueTF{#1}%
-        {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {%
             \ifbool{FormatWP}%
-            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}}%
-            {\booltrue{LWR at doingtbrule}}%
+            {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}}%
+            {\global\booltrue{LWR at doingtbrule}}%
         }%
     \LWR at getmynexttoken%
 }%
@@ -79,7 +79,7 @@
 \LWR at expandableformatted{morecmidrules}
 
 \DeclareDocumentCommand{\LWR at HTML@specialrule}{m m m d()}%
-    {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalcols}}\LWR at getmynexttoken}%
+    {\LWR at docmidrule[#1](){1-\arabic{LWR at tabletotalLaTeXcols}}\LWR at getmynexttoken}%
 
 \LWR at expandableformatted{specialrule}
 \endinput

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bophook.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bophook.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bophook.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,23 @@
+%%
+%% This is file `lwarp-bophook.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `bophook')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{bophook}
+\newcommand*{\AtBeginPage}[1]{}
+\newcommand*{\PageLayout}[1]{}
+\endinput
+%%
+%% End of file `lwarp-bophook.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-bophook.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-diagbox.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-diagbox.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-diagbox.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -63,11 +63,13 @@
 \newcommand{\LWR at diagboxTSW}[3]{%
 \LWR at diagboxSW{#2}{#3}
 \BlockClassSingle{diagboxtitleS}{#1}
+\LWR at stoppars%
 }
 
 \newcommand{\LWR at diagboxTSE}[3]{%
 \LWR at diagboxSE{#2}{#3}
 \BlockClassSingle{diagboxtitleS}{#1}
+\LWR at stoppars%
 }
 \def\diagbox at triple#1#2#3#4{%
 \setkeys{diagbox}{dir=NW,#1}%

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-draftfigure.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-draftfigure.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-draftfigure.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,30 @@
+%%
+%% This is file `lwarp-draftfigure.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `draftfigure')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{draftfigure}[2017/07/19]
+\RequirePackage{xkeyval}
+\define at key{draftfigure}{code}{}
+\define at key{draftfigure}{noframe}[true]{}
+\define at key{draftfigure}{filename}[true]{}
+\define at key{draftfigure}{content}[]{}
+\define at key{draftfigure}{style}[normal]{}
+\define at key{draftfigure}{position}[left]{}
+\define at key{draftfigure}{size}[normal]{}
+\newcommand\setdf[1]{\setkeys{draftfigure}{#1}}
+\endinput
+%%
+%% End of file `lwarp-draftfigure.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-draftfigure.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancytabs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancytabs.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancytabs.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,34 @@
+%%
+%% This is file `lwarp-fancytabs.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `fancytabs')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{fancytabs}
+\newcommand{\fancytab}[3][RIGHT]{}
+\newcommand{\fancytabsStyle}[1]{}
+\newcommand{\fancytabsHeight}[1]{}
+\newcommand{\fancytabsWidth}[1]{}
+\newcommand{\fancytabsCount}[1]{}
+\newcommand{\fancytabsLeftColor}[1]{}
+\newcommand{\fancytabsRightColor}[1]{}
+\newcommand{\fancytabsTop}[1]{}
+\newcommand{\fancytabsTextVPos}[1]{}
+\newcommand{\fancytabsTextHPos}[1]{}
+\newcommand{\fancytabsGap}[1]{}
+\newcommand{\fancytabsFloor}[1]{}
+\newcommand{\fancytabsRotate}[1]{}
+\endinput
+%%
+%% End of file `lwarp-fancytabs.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fancytabs.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullminipage.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullminipage.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullminipage.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,22 @@
+%%
+%% This is file `lwarp-fullminipage.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `fullminipage')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{fullminipage}[2014/07/06]
+\newenvironment{fullminipage}[1][]{}{}
+\endinput
+%%
+%% End of file `lwarp-fullminipage.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullminipage.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullpage.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullpage.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-fullpage.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -15,7 +15,7 @@
 %%   http://www.latex-project.org/lppl.txt
 %% and version 1.3 or later is part of all distributions of LaTeX
 %% version 2005/12/01 or later.
-\LWR at ProvidesPackageDrop{fullpage}
+\LWR at ProvidesPackageDrop{fullpage}[1994/06/01]
 \endinput
 %%
 %% End of file `lwarp-fullpage.sty'.

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -187,9 +187,9 @@
 \renewcommand*{\LWR at igyscale}{1}%
 \renewcommand*{\LWR at igclass}{inlineimage}%
 \IfValueF{#3}{%
-\IfValueTF{#2}%
-{\setkeys{igraph}{#2}}%
-{\setkeys{igraph}{}}%
+    \IfValueTF{#2}%
+        {\setkeys{igraph}{#2}}%
+        {\setkeys{igraph}{}}%
 }%
 \ifbool{FormatWP}{%
     \begingroup%

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-grid-system.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-grid-system.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-grid-system.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,28 @@
+%%
+%% This is file `lwarp-grid-system.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `grid-system')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackagePass{grid-system}[2014/02/16]
+\AtBeginEnvironment{Row}{\setlength{\linewidth}{6in}}
+
+\ifdef{\endrow}{
+    \AtBeginEnvironment{row}{\setlength{\linewidth}{6in}}
+}{}
+
+\renewcommand{\gridsystem at finishcell}{\hspace{\gridsystem at cellsep}}
+\endinput
+%%
+%% End of file `lwarp-grid-system.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-grid-system.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-layaureo.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-layaureo.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-layaureo.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,21 @@
+%%
+%% This is file `lwarp-layaureo.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `layaureo')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{layaureo}[2004/09/16]
+\endinput
+%%
+%% End of file `lwarp-layaureo.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-layaureo.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-leading.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-leading.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-leading.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,22 @@
+%%
+%% This is file `lwarp-leading.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `leading')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{leading}[2008/12/11]
+\newcommand\leading[1]{}
+\endinput
+%%
+%% End of file `lwarp-leading.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-leading.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-listings.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -27,6 +27,15 @@
 \let\LWR at origlsthkEveryPar\lsthk at EveryPar
 
 \renewcommand{\l at lstlisting}[2]{\hypertocfloat{1}{lstlisting}{lol}{#1}{#2}}
+\def\lstset@#1{\endgroup%
+        \setkeys{lst}{%
+            #1%
+            ,literate=%
+            {<}{\HTMLentity{lt}}{4}%
+            {>}{\HTMLentity{gt}}{4}%
+            {\&}{\HTMLentity{amp}}{5}%
+        }%
+}
 \renewcommand{\lst at Init}[1]{%
 \LWR at traceinfo{lst at Init}%
 \renewcommand*{\@captype}{lstlisting}%
@@ -40,6 +49,7 @@
 \lstframe@\lst at frameround ffff\relax%
 \lst at multicols\@empty%
 \LWR at origlst@Init{#1}\relax%
+\def\lst at framelr{}%
 \LWR at traceinfo{finished origlst at Init}%
 \lst at ifdisplaystyle%
 \LWR at traceinfo{About to create verbatim.}%
@@ -52,6 +62,7 @@
 \ifbool{LWR at verbtags}{\LWR at htmltag{span class="inlineprogramlisting"}}{}%
 \fi%
 }
+
 \renewcommand*{\lst at DeInit}{%
 \lst at ifdisplaystyle%
 \let\lsthk at EveryPar\relax%
@@ -124,12 +135,11 @@
     \lstKV at SwitchCases{#1}%
     {none&\\%
      left&\def\lst at PlaceNumber{%
-\LWR at orignormalfont%
-\lst at numberstyle{\thelstnumber}\kern\lst at numbersep%
-}
-\\%
-     right&\def\lst at PlaceNumber{\rlap{\LWR at orignormalfont
-                \kern\VerbatimHTMLWidth \kern\lst at numbersep
+            \LWR at orignormalfont%
+            \lst at numberstyle{\thelstnumber}\kern\lst at numbersep%
+    }\\%
+     right&\def\lst at PlaceNumber{\LWR at origrlap{\LWR at orignormalfont
+                \kern 6in \kern\lst at numbersep
                 \lst at numberstyle{\thelstnumber}}}%
     }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}}
 \end{warpHTML}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-multirow.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-multirow.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-multirow.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -35,10 +35,10 @@
 \LWR at print@mbox{padding-\LWR at multirowborder:} 2px" %
 }%
 class="td%
-\StrChar{\LWR at tablecolspec}{\arabic{LWR at tablecolindex}}%
+\LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
 \LWR at addcmidruletrim%
 \LWR at addleftmostbartag%
-\LWR at printbartag{\arabic{LWR at tablecolindex}}%
+\LWR at printbartag{\arabic{LWR at tableLaTeXcolindex}}%
 "%
 \LWR at tdstartstyles%
 \LWR at addcmidrulewidth%
@@ -46,7 +46,7 @@
 \LWR at addtabularrulecolors%
 \LWR at tdendstyles%
 }%
-\LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tablecolindex}}%
+\LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tableLaTeXcolindex}}%
 \begingroup\LetLtxMacro{\\}{\LWR at endofline}#6\endgroup%
 \LWR at stoppars%
 \global\boolfalse{LWR at intabularmetadata}%
@@ -58,14 +58,14 @@
 \AtBeginDocument{
 
 \NewExpandableDocumentCommand{\LWR at HTML@multicolumnrow}{m m O{} m O{} m O{} +m}{%
-\LWR at tabularhtmlcolumns{\arabic{LWR at tablecolindex}}{#1}
+\LWR at tabularhtmlcolumns{\arabic{LWR at tableLaTeXcolindex}}{#1}
 \begingroup%
 \LetLtxMacro{\\}{\LWR at endofline}%
 \LWR at domulticolumn[#3][#4]{#1}{\arabic{LWR at tabhtmlcoltotal}}{#2}{#8}%
 \endgroup%
-\addtocounter{LWR at tablecolindex}{#1}%
-\addtocounter{LWR at tablecolindex}{-1}%
-\booltrue{LWR at skipatbang}%
+\addtocounter{LWR at tableLaTeXcolindex}{#1}%
+\addtocounter{LWR at tableLaTeXcolindex}{-1}%
+\global\booltrue{LWR at skipatbang}%
 }
 
 \LWR at expandableformatted{multicolumnrow}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-register.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-register.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-register.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -21,8 +21,8 @@
 \xpatchcmd{\register}
     {\centering}
     {\begin{center}\begin{lateximage}[-register-~\packagediagramname]}
-    {\typeout{Patch register success.}}
-    {\typeout{Patch register failure.}}
+    {}
+    {\LWR at patcherror{register}{register}}
 
 \xpatchcmd{\endregister}
     {\leftskip}
@@ -30,8 +30,8 @@
         \end{lateximage}\end{center}%
         \leftskip%
     }%
-    {\typeout{Patch endregister success.}}
-    {\typeout{Patch endregister failure.}}
+    {}
+    {\LWR at patcherror{register}{endregister}}
 
 \setlength{\regWidth}{5in}
 

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumb.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumb.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumb.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,24 @@
+%%
+%% This is file `lwarp-thumb.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `thumb')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{thumb}
+\newcommand*{\Overviewpage}{}
+\newlength{\thumbheight}
+\newlength{\thumbwidth}
+\endinput
+%%
+%% End of file `lwarp-thumb.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumb.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumbs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumbs.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumbs.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,32 @@
+%%
+%% This is file `lwarp-thumbs.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `thumbs')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{thumbs}
+\newcommand{\addthumb}[4]{}
+\newcommand{\addtitlethumb}[5]{}
+\newcommand{\stopthumb}{}
+\newcommand{\continuethumb}{}
+\newcommand{\thumbsoverview}[1]{}
+\newcommand{\thumbsoverviewback}[1]{}
+\newcommand{\thumbsoverviewverso}[1]{}
+\newcommand{\thumbsoverviewdouble}[1]{}
+\newcommand{\thumbnewcolumn}{}
+\newcommand{\addthumbsoverviewtocontents}[2]{}
+\newcommand{\thumbsnophantom}{}
+\endinput
+%%
+%% End of file `lwarp-thumbs.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-thumbs.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tikz.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tikz.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-tikz.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -19,7 +19,7 @@
 \LWR at ProvidesPackagePass{tikz}[2015/08/07]
 
 
-\newboolean{LWR at tikzbabel}
+\newbool{LWR at tikzbabel}
 
 \@ifpackagelater{tikz}{2013/12/20}% Test for Tikz version v3.0.0
 {\usetikzlibrary{babel}\booltrue{LWR at tikzbabel}}

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-twoup-gen.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-twoup-gen.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-twoup-gen.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,23 @@
+%%
+%% This is file `lwarp-twoup-gen.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `twoup-gen')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{twoup-gen}
+
+\LWR at origRequirePackage{lwarp-2up}
+\endinput
+%%
+%% End of file `lwarp-twoup-gen.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-twoup-gen.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-widows-and-orphans.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-widows-and-orphans.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-widows-and-orphans.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -0,0 +1,24 @@
+%%
+%% This is file `lwarp-widows-and-orphans.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `widows-and-orphans')
+%% This is a generated file.
+%% Copyright 2016-2018 Brian Dunn
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+\LWR at ProvidesPackageDrop{widows-and-orphans}[2018/09/01]
+\NewDocumentCommand\WaOsetup{m}{}
+\NewDocumentCommand\WaOparameters{}{}
+\NewDocumentCommand\WaOignorenext{}{}
+\endinput
+%%
+%% End of file `lwarp-widows-and-orphans.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-widows-and-orphans.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2018-09-19 21:26:14 UTC (rev 48701)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2018-09-19 21:27:24 UTC (rev 48702)
@@ -17,7 +17,7 @@
 %% version 2005/12/01 or later.
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesPackage{lwarp}
-    [2018/09/07 v0.59  Allows LaTeX to directly produce HTML5 output.]
+    [2018/09/19 v0.60  Allows LaTeX to directly produce HTML5 output.]
 
 
 
@@ -337,6 +337,7 @@
 \LWR at earlyloadnever{glossary}{glossaries}
 \LWR at earlyloadnever{t1enc}{fontenc, inputenc, inputenx}
 \LWR at earlyloadnever{wasysym}{textcomp, amssymb, amsfonts, mnsymbol, fdsymbol}
+\LWR at loadafter{2up}
 \LWR at loadafter{a4}
 \LWR at loadafter{a4wide}
 \LWR at loadafter{a5comb}
@@ -371,8 +372,10 @@
 \LWR at loadafter{bigdelim}
 \LWR at loadafter{bigstrut}
 \LWR at loadafter{blowup}
+\LWR at loadafter{booklet}
 \LWR at loadafter{bookmark}
 \LWR at notmemoirloadafter{booktabs}
+\LWR at loadafter{bophook}
 \LWR at loadafter{boxedminipage}
 \LWR at loadafter{boxedminipage2e}
 \LWR at loadafter{breakurl}
@@ -406,6 +409,7 @@
 \LWR at notmemoirloadafter{dcolumn}
 \LWR at loadafter{diagbox}
 \LWR at loadafter{draftcopy}
+\LWR at loadafter{draftfigure}
 \LWR at loadafter{draftwatermark}
 \LWR at loadafter{easy-todo}
 \LWR at loadafter{ebook}
@@ -428,6 +432,7 @@
 \LWR at loadafter{fancyhdr}
 \LWR at loadafter{fancyheadings}
 \LWR at loadafter{fancyref}
+\LWR at loadafter{fancytabs}
 \LWR at loadafter{fancyvrb}
 \LWR at loadafter{figcaps}
 \LWR at loadafter{figsize}
@@ -452,6 +457,7 @@
 \LWR at loadafter{forest}
 \LWR at loadafter{framed}
 \LWR at loadafter{ftnright}
+\LWR at loadafter{fullminipage}
 \LWR at loadafter{fullpage}
 \LWR at loadafter{fullwidth}
 \LWR at loadafter{fwlw}
@@ -460,6 +466,7 @@
 \LWR at loadafter{glossary}
 \LWR at loadafter{grffile}
 \LWR at loadafter{grid}
+\LWR at loadafter{grid-system}
 \LWR at loadafter{gridset}
 \LWR at loadafter{hang}
 \LWR at loadafter{hanging}
@@ -476,7 +483,9 @@
 \LWR at notmemoirloadafter{index}
 \LWR at loadafter{intopdf}
 \LWR at loadafter{keyfloat}
+\LWR at loadafter{layaureo}
 \LWR at loadafter{layout}
+\LWR at loadafter{leading}
 \LWR at loadafter{letterspace}
 \LWR at loadafter{lettrine}
 \LWR at loadafter{lineno}
@@ -591,6 +600,8 @@
 \LWR at loadafter{textpos}
 \LWR at loadafter{theorem}
 \LWR at loadafter{threeparttable}
+\LWR at loadafter{thumb}
+\LWR at loadafter{thumbs}
 \LWR at loadafter{tikz}
 \LWR at loadafter{titleps}
 \LWR at loadafter{titlesec}
@@ -606,6 +617,7 @@
 \LWR at loadafter{trimclip}
 \LWR at loadafter{trivfloat}
 \LWR at loadafter{turnthepage}
+\LWR at loadafter{twoup-gen}
 \LWR at loadafter{ulem}
 \LWR at loadafter{underscore}
 \LWR at loadafter{units}
@@ -620,6 +632,7 @@
 \LWR at loadafter{wallpaper}
 \LWR at loadafter{wasysym}
 \LWR at loadafter{watermark}
+\LWR at loadafter{widows-and-orphans}
 \LWR at loadafter{wrapfig}
 \LWR at loadafter{xcolor}
 \LWR at loadafter{xellipsis}
@@ -3456,7 +3469,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.59"
+printversion = "v0.60"
 requiredconfversion = "1" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -4397,11 +4410,14 @@
 
 \begin{warpHTML}
 \NewDocumentCommand{\LWR at setexparray}{m m m}{%
-\ifstrempty{#3}%
-{\csdef{#1#2}{}}%
-{\expandafter\edef\csname #1#2\endcsname{\expandonce#3}}%
+    \xdef\LWR at thisexparrayname{#1#2}%
+    \ifstrempty{#3}%
+    {\csgdef{\LWR at thisexparrayname}{}}%
+    {\csxdef{\LWR at thisexparrayname}{#3}}%
 }
-\newcommand*{\LWR at getexparray}[2]{\@nameuse{#1#2}}
+\newcommand*{\LWR at getexparray}[2]{%
+    \@nameuse{#1#2}%
+}
 
 \end{warpHTML}
 
@@ -6641,7 +6657,6 @@
 \newcommand*{\LWR at pleft}{}
 \newcommand*{\LWR at pright}{}
 
-\newcommand*{\LWR at tablecolspec}{}
 
 \providecommand*{\LWR at strresult}{}
 \providecommand*{\LWR at strresulttwo}{}
@@ -6652,11 +6667,11 @@
 
 \newcounter{LWR at tablecolspecindex}
 
-\newcounter{LWR at tablecolindex}
+\newcounter{LWR at tableLaTeXcolindex}
 
-\newcounter{LWR at tabletotalcols}
+\newcounter{LWR at tabletotalLaTeXcols}
 
-\newcounter{LWR at tabletotalcolsnext}
+\newcounter{LWR at tabletotalLaTeXcolsnext}
 
 
 
@@ -6664,8 +6679,8 @@
 \ifbool{LWR at skipatbang}%
 {}%
 {%
-    \LWR at printatbang{at}{\arabic{LWR at tablecolindex}}%
-    \LWR at printatbang{bang}{\arabic{LWR at tablecolindex}}%
+    \LWR at printatbang{at}{\arabic{LWR at tableLaTeXcolindex}}%
+    \LWR at printatbang{bang}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 }
 
@@ -6676,8 +6691,8 @@
     \ifboolexpr{bool{LWR at skippingmrowcell} or bool{LWR at skippingmcolrowcell}}%
     {%
         \ifbool{LWR at skippingmcolrowcell}%
-        {}%
-        {\LWR at insertatbangcols}%
+            {}%
+            {\LWR at insertatbangcols}%
     }%
     {% not skippingmrowcell
         \unskip%
@@ -6687,7 +6702,7 @@
             bool{LWR at emptyatbang}
         }%
         {}%
-        {\LWR at getexparray{LWR at colafterspec}{\arabic{LWR at tablecolindex}}}%
+        {\LWR at getexparray{LWR at colafterspec}{\arabic{LWR at tableLaTeXcolindex}}}%
         \ifbool{LWR at tableparcell}{\LWR at stoppars}{}%
         \global\boolfalse{LWR at tableparcell}%
         \whileboolexpr{test {\ifnumcomp{\value{LWR at cellcolordepth}}{>}{0}}}{%
@@ -6702,8 +6717,8 @@
 \global\boolfalse{LWR at skippingmrowcell}%
 \global\boolfalse{LWR at skippingmcolrowcell}%
 \global\boolfalse{LWR at skipatbang}%
-\renewcommand*{\LWR at cellHTMLcolor}{}
-\renewcommand*{\LWR at columnHTMLcolor}{}
+\gdef\LWR at cellHTMLcolor{}
+\gdef\LWR at columnHTMLcolor{}
 \setcounter{LWR at cellcolordepth}{0}
 }
 \let\LWR at origampmacro&
@@ -6716,8 +6731,8 @@
 {%
     \unskip%
     \LWR at closetabledatacell%
-    \addtocounter{LWR at tablecolindex}{1}%
-    \boolfalse{LWR at tabularcelladded}%
+    \addtocounter{LWR at tableLaTeXcolindex}{1}%
+    \global\boolfalse{LWR at tabularcelladded}%
     \LWR at getmynexttoken%
 }%
 {\LWR at origampmacro}%
@@ -6733,20 +6748,21 @@
     test{\ifnumcomp{\value{LWR at hdashedlines}}{>}{0}} or%
     bool{LWR at startedrow}%
 }{%
-\begingroup%
 \ifbool{LWR at exitingtabular}{%
-    \booltrue{LWR at tabularmutemods}%
-}{}%
+    \global\booltrue{LWR at tabularmutemods}%
+}{%
+    \global\boolfalse{LWR at tabularmutemods}%
+}%
 \global\boolfalse{LWR at exitingtabular}%
 \whileboolexpr{%
     test {
-        \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}
+        \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}
     } or %
     (%
         bool{LWR at intabularmetadata} and%
         not bool{LWR at tabularcelladded} and%
         test {
-            \ifnumcomp{\value{LWR at tablecolindex}}{=}{\value{LWR at tabletotalcols}}
+            \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{\value{LWR at tabletotalLaTeXcols}}
         }%
     )%
 }%
@@ -6753,14 +6769,19 @@
 {%
     \LWR at tabledatasinglecolumntag%
     \LWR at closetabledatacell%
-    \addtocounter{LWR at tablecolindex}{1}%
-    \boolfalse{LWR at tabularcelladded}%
+    \addtocounter{LWR at tableLaTeXcolindex}{1}%
+    \global\boolfalse{LWR at tabularcelladded}%
     \global\booltrue{LWR at emptyatbang}%
-    \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}%
-    {\LWR at getmynexttoken}%
-    {}%
+    \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}%
+        {\LWR at getmynexttoken}%
+        {}%
 }%
-\endgroup%
+\ifbool{LWR at tabularmutemods}{%
+    \global\booltrue{LWR at exitingtabular}%
+}{%
+    \global\boolfalse{LWR at exitingtabular}%
+}%
+\global\boolfalse{LWR at tabularmutemods}%
 \global\boolfalse{LWR at emptyatbang}%
 }{}% ifboolexpr
 }
@@ -6767,9 +6788,9 @@
 
 
 \NewDocumentCommand{\LWR at tabularendofline}{s o}{%
-\ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}%
-{\LWR at tabularfinishrow}%
-{\LWR at closetabledatacell}%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}%
+    {\LWR at tabularfinishrow}%
+    {\LWR at closetabledatacell}%
 \LWR at htmltag{/tr}\LWR at orignewline%
 \@rowc at lors%
 \global\booltrue{LWR at intabularmetadata}%
@@ -6779,9 +6800,11 @@
 \global\boolfalse{LWR at doingtbrule}%
 \global\boolfalse{LWR at doingcmidrule}%
 \LWR at clearmidrules%
-\renewcommand*{\LWR at rowHTMLcolor}{}%
-\setcounter{LWR at tablecolindex}{1}%
-\boolfalse{LWR at tabularcelladded}%
+\gdef\LWR at rowHTMLcolor{}%
+\setcounter{LWR at tableLaTeXcolindex}{1}%
+\global\boolfalse{LWR at tabularcelladded}%
+\LWR at stoppars
+\LWR at origpar
 \LWR at getmynexttoken%
 }
 
@@ -6805,7 +6828,7 @@
     {\arabic{LWR at tablecolspecindex}}[\LWR at colparameter]
 \fullexpandarg%
 \LWR at traceinfo{have now read the next token}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \LWR at traceinfo{at the left edge}%
     \LWR at setexparray{LWR at colatspec}{leftedge}{\LWR at colparameter}%
@@ -6815,12 +6838,12 @@
 {% not at the left edge:
     \LWR at traceinfo{not at the left edge}%
     \LWR at setexparray{LWR at colatspec}%
-        {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
-    \LWR at traceinfo{at \arabic{LWR at tabletotalcols}: %
-    \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalcols}}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
+    \LWR at traceinfo{at \arabic{LWR at tabletotalLaTeXcols}: %
+    \LWR at getexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcols}}}%
 }%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parsebangcolumn}{%
 \LWR at traceinfo{bang column}%
@@ -6831,7 +6854,7 @@
     {\arabic{LWR at tablecolspecindex}}[\LWR at colparameter]
 \fullexpandarg%
 \LWR at traceinfo{have now read the next token}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \LWR at traceinfo{at the left edge}%
     \LWR at setexparray{LWR at colbangspec}{leftedge}{\LWR at colparameter}%
@@ -6839,11 +6862,11 @@
 {% not at the left edge:
     \LWR at traceinfo{not at the left edge}%
     \LWR at setexparray{LWR at colbangspec}%
-        {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
-    \LWR at traceinfo{bang \arabic{LWR at tabletotalcols}: \LWR at colparameter!}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
+    \LWR at traceinfo{bang \arabic{LWR at tabletotalLaTeXcols}: \LWR at colparameter!}%
 }%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parsebeforecolumn}{%
 \addtocounter{LWR at tablecolspecindex}{1}%
@@ -6852,9 +6875,9 @@
     {\arabic{LWR at tablecolspecindex}}[\LWR at colparameter]%
 \fullexpandarg%
 \LWR at setexparray{LWR at colbeforespec}%
-    {\arabic{LWR at tabletotalcolsnext}}{\LWR at colparameter}%
+    {\arabic{LWR at tabletotalLaTeXcolsnext}}{\LWR at colparameter}%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parseaftercolumn}{%
 \addtocounter{LWR at tablecolspecindex}{1}%
@@ -6863,13 +6886,13 @@
     {\arabic{LWR at tablecolspecindex}}[\LWR at colparameter]%
 \fullexpandarg%
 \LWR at setexparray{LWR at colafterspec}%
-    {\arabic{LWR at tabletotalcols}}{\LWR at colparameter}%
+    {\arabic{LWR at tabletotalLaTeXcols}}{\LWR at colparameter}%
 \let\LWR at colparameter\relax%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parsebarcolumn}{%
 \LWR at traceinfo{LWR at parsebarcolumn}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \edef\LWR at tempone{\LWR at getexparray{LWR at colbarspec}{leftedge}}%
     \ifdefstring{\LWR at tempone}{tvertbarl}%
@@ -6878,23 +6901,23 @@
 }%
 {% not at the left edge:
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcols}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcols}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarr}%
     {%
         \LWR at setexparray{LWR at colbarspec}%
-            {\arabic{LWR at tabletotalcols}}{tvertbarrdouble}%
+            {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdouble}%
     }%
     {%
         \LWR at setexparray{LWR at colbarspec}%
-            {\arabic{LWR at tabletotalcols}}{tvertbarr}%
+            {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarr}%
     }%
 }%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parsecoloncolumn}{%
 \LWR at traceinfo{LWR at parsecoloncolumn}%
-\ifnumcomp{\value{LWR at tabletotalcols}}{=}{0}%
+\ifnumcomp{\value{LWR at tabletotalLaTeXcols}}{=}{0}%
 {% left edge of the table:
     \edef\LWR at tempone{\LWR at getexparray{LWR at colbarspec}{leftedge}}%
     \ifdefstring{\LWR at tempone}{tvertbarldash}%
@@ -6903,15 +6926,15 @@
 }%
 {% not at the left edge:
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcols}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcols}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarrdash}%
     {\LWR at setexparray{LWR at colbarspec}%
-        {\arabic{LWR at tabletotalcols}}{tvertbarrdoubledash}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdoubledash}}%
     {\LWR at setexparray{LWR at colbarspec}%
-        {\arabic{LWR at tabletotalcols}}{tvertbarrdash}}%
+        {\arabic{LWR at tabletotalLaTeXcols}}{tvertbarrdash}}%
 }%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 \newcommand*{\LWR at parsesemicoloncolumn}{%
 \LWR at parsecoloncolumn%
@@ -6918,16 +6941,16 @@
 \addtocounter{LWR at tablecolspecindex}{1}%
 }
 \newcommand*{\LWR at parsenormalcolumn}[1]{%
-\appto\LWR at tablecolspec{#1}%
-\addtocounter{LWR at tabletotalcols}{1}%
-\addtocounter{LWR at tabletotalcolsnext}{1}%
-\LWR at traceinfo{normal column \arabic{LWR at tabletotalcols}: #1}%
-\LWR at setexparray{LWR at colatspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbangspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbeforespec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colafterspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\LWR at setexparray{LWR at colbarspec}{\arabic{LWR at tabletotalcolsnext}}{}%
-\booltrue{LWR at validtablecol}%
+\addtocounter{LWR at tabletotalLaTeXcols}{1}%
+\addtocounter{LWR at tabletotalLaTeXcolsnext}{1}%
+\LWR at setexparray{LWR at tablecolspec}{\arabic{LWR at tabletotalLaTeXcols}}{#1}%
+\LWR at traceinfo{normal column \arabic{LWR at tabletotalLaTeXcols}: #1}%
+\LWR at setexparray{LWR at colatspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbangspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbeforespec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colafterspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\LWR at setexparray{LWR at colbarspec}{\arabic{LWR at tabletotalLaTeXcolsnext}}{}%
+\global\booltrue{LWR at validtablecol}%
 }
 
 \newcommand*{\LWR at parsepcolumn}[1]{%
@@ -6954,9 +6977,8 @@
 \renewcommand*{\LWR at origcolspec}{#1}%
 \expandarg%
 \StrSubstitute{\LWR at origcolspec}{ }{}[\LWR at origcolspec]%
-\renewcommand*{\LWR at tablecolspec}{}%
-\setcounter{LWR at tabletotalcols}{0}%
-\setcounter{LWR at tabletotalcolsnext}{1}%
+\setcounter{LWR at tabletotalLaTeXcols}{0}%
+\setcounter{LWR at tabletotalLaTeXcolsnext}{1}%
 \LWR at setexparray{LWR at colatspec}{leftedge}{}%
 \LWR at setexparray{LWR at colatspec}{1}{}%
 \LWR at setexparray{LWR at colatspec}{2}{}%
@@ -6981,7 +7003,7 @@
 \fullexpandarg%
 \LWR at traceinfo{original column spec length: \LWR at strresult}%
 \setcounter{LWR at tablecolspecwidth}{\LWR at strresult}%
-\boolfalse{LWR at opttablecol}%
+\global\boolfalse{LWR at opttablecol}%
 \whileboolexpr{%
     not test{%
         \ifnumcomp{\value{LWR at tablecolspecindex}}{>}%
@@ -6993,8 +7015,8 @@
 \StrChar{\LWR at origcolspec}{\arabic{LWR at tablecolspecindex}}[\LWR at strresult]%
 \LWR at traceinfo{position \arabic{LWR at tablecolspecindex}: \LWR at strresult}%
 \fullexpandarg%
-\boolfalse{LWR at validtablecol}%
-\IfStrEq{\LWR at strresult}{[}{\booltrue{LWR at opttablecol}}{}%
+\global\boolfalse{LWR at validtablecol}%
+\IfStrEq{\LWR at strresult}{[}{\global\booltrue{LWR at opttablecol}}{}%
 \ifbool{LWR at opttablecol}%
 {}% inside an optional argument
 {% not an optional tabular argument
@@ -7029,10 +7051,9 @@
     \LWR at parsenormalcolumn{l}%
 }%
 }% not an optional column argument
-\IfStrEq{\LWR at strresult}{]}{\boolfalse{LWR at opttablecol}}{}%
+\IfStrEq{\LWR at strresult}{]}{\global\boolfalse{LWR at opttablecol}}{}%
 \addtocounter{LWR at tablecolspecindex}{1}%
 }% whiledo
-\LWR at traceinfo{LWR at parsetablecols: Final table column spec: !\LWR at tablecolspec!}%
 }%
 
  \@ifundefined{rownum}{\newcount\rownum}{}
@@ -7039,9 +7060,9 @@
 \newcommand*{\@rowcolors}{}
 \newcommand*{\@rowc at lors}{}
 \newcommand*{\LWR at xcolorrowHTMLcolor}{}
-\newcommand*{\LWR at columnHTMLcolor}{}
-\newcommand*{\LWR at rowHTMLcolor}{}
-\newcommand*{\LWR at cellHTMLcolor}{}
+\def\LWR at columnHTMLcolor{}
+\def\LWR at rowHTMLcolor{}
+\def\LWR at cellHTMLcolor{}
 \newcommand*{\LWR at ruleHTMLcolor}{}
 \newcommand*{\rowcolor}{\LWR at getmynexttoken}%
 
@@ -7100,7 +7121,7 @@
 
 
 \newcommand*{\LWR at printatbang}[2]{%
-\edef\LWR at atbangspec{\LWR at getexparray{LWR at col#1spec}{#2}}%
+\xdef\LWR at atbangspec{\LWR at getexparray{LWR at col#1spec}{#2}}%
 \LWR at traceinfo{atbang: #2 !\LWR at atbangspec!}%
 \ifdefempty{\LWR at atbangspec}%
 {}%
@@ -7125,13 +7146,13 @@
 }%
 
 \newcommand*{\LWR at addleftmostbartag}{%
-\ifnumcomp{\value{LWR at tablecolindex}}{=}{1}{%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{1}{%
     \LWR at printbartag{leftedge}%
 }{}%
 }
 
 \newcommand*{\LWR at tabularleftedge}{%
-\ifnumcomp{\value{LWR at tablecolindex}}{=}{1}%
+\ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{1}%
 {%
     \LWR at printatbang{at}{leftedge}%
     \LWR at printatbang{bang}{leftedge}%
@@ -7151,25 +7172,27 @@
     \ifbool{LWR at exitingtabular}{}%
     {% not exiting tabular
         \LWR at tabularleftedge%
-        \StrChar{\LWR at tablecolspec}%
-            {\arabic{LWR at tablecolindex}}[\LWR at strresult]%
+        \xdef\LWR at strresult{%
+            \LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
+        }%
 \LWR at traceinfo{LWR at tabledatasinglecolumntag: about to print td tag}%
         \LWR at htmltag{td class="td%
         \LWR at strresult%
         \LWR at addcmidruletrim%
         \LWR at addleftmostbartag%
-        \LWR at printbartag{\arabic{LWR at tablecolindex}}%
+        \LWR at printbartag{\arabic{LWR at tableLaTeXcolindex}}%
         "%
         \LWR at tdstartstyles%
         \LWR at addcmidrulewidth%
         \LWR at addcdashline%
-        \StrChar{\LWR at tablecolspec}%
-            {\arabic{LWR at tablecolindex}}[\LWR at thiscolspec]%
+        \xdef\LWR at thiscolspec{%
+            \LWR at getexparray{LWR at tablecolspec}{\arabic{LWR at tableLaTeXcolindex}}%
+        }%
         \LWR at addformatwpalignment{\LWR at thiscolspec}%
         \LWR at addtabularrowcolor%
         \LWR at addtabularrulecolors%
         \LWR at tdendstyles%
-        }%
+        }% HTML td
         \LWR at traceinfo{LWR at tabledatasinglecolumntag: done printing td tag}%
         \ifboolexpr{%
             test{ \ifdefstring{\LWR at strresult}{p} } or
@@ -7190,7 +7213,7 @@
         \ifboolexpr{bool{LWR at tabularmutemods} or bool{LWR at emptyatbang}}%
         {}%
         {%
-            \LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tablecolindex}}%
+            \LWR at getexparray{LWR at colbeforespec}{\arabic{LWR at tableLaTeXcolindex}}%
         }%
         \global\boolfalse{LWR at intabularmetadata}%
     }% not exiting tabular
@@ -7222,16 +7245,16 @@
 \whileboolexpr{%
     not test{%
         \ifnumcomp{\value{LWR at midrulecounter}}{>}%
-            {\value{LWR at tablecolspecwidth}}%
+            {\value{LWR at tabletotalLaTeXcols}}%
     }%
 }%
 {%
-\LWR at setexparray{LWR at midrules}{\arabic{LWR at midrulecounter}}{0pt}%
-\setlength{\LWR at thiscmidrulewidth}{\LWR at cmidrulewidth}%
-\LWR at setexparray{LWR at trimlrules}{\arabic{LWR at midrulecounter}}{}%
-\LWR at setexparray{LWR at trimrrules}{\arabic{LWR at midrulecounter}}{}%
-\LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{N}%
-\addtocounter{LWR at midrulecounter}{1}%
+    \LWR at setexparray{LWR at midrules}{\arabic{LWR at midrulecounter}}{0pt}%
+    \setlength{\LWR at thiscmidrulewidth}{\LWR at cmidrulewidth}%
+    \LWR at setexparray{LWR at trimlrules}{\arabic{LWR at midrulecounter}}{}%
+    \LWR at setexparray{LWR at trimrrules}{\arabic{LWR at midrulecounter}}{}%
+    \LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{N}%
+    \addtocounter{LWR at midrulecounter}{1}%
 }%
 }
 
@@ -7248,7 +7271,7 @@
 }% whiledo
 \IfSubStr{#2}{l}{\LWR at setexparray{LWR at trimlrules}{#3}{l}}{}%
 \IfSubStr{#2}{r}{\LWR at setexparray{LWR at trimrrules}{#4}{r}}{}%
-\booltrue{LWR at doingcmidrule}%
+\global\booltrue{LWR at doingcmidrule}%
 }
 
 \NewDocumentCommand{\LWR at docmidrule}
@@ -7266,7 +7289,7 @@
     \LWR at setexparray{LWR at cdashlines}{\arabic{LWR at midrulecounter}}{Y}%
     \addtocounter{LWR at midrulecounter}{1}%
 }% whiledo
-\booltrue{LWR at doingcmidrule}%
+\global\booltrue{LWR at doingcmidrule}%
 }
 
 \NewDocumentCommand{\LWR at docdashline}
@@ -7280,7 +7303,7 @@
 \newlength{\LWR at templengththree}
 \newcounter{LWR at tempcountone}
 
-\newboolean{LWR at tdhavecellstyle}
+\newbool{LWR at tdhavecellstyle}
 
 \newcommand*{\LWR at tdstartstyles}{\global\boolfalse{LWR at tdhavecellstyle}}
 
@@ -7300,7 +7323,7 @@
 
 \newcommand*{\LWR at subaddcmidruletrim}[2]{%
 \setlength{\LWR at templengthone}{%
-        \LWR at getexparray{LWR at midrules}{\arabic{LWR at tablecolindex}}%
+        \LWR at getexparray{LWR at midrules}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 \ifdimcomp{\LWR at templengthone}{>}{0pt}%
 {%
@@ -7314,8 +7337,8 @@
 
 \newcommand*{\LWR at addcmidruletrim}{%
 \LWR at subaddcmidruletrim%
-{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tablecolindex}}}%
-{\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at tablecolindex}}}%
+{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tableLaTeXcolindex}}}%
+{\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at tableLaTeXcolindex}}}%
 }
 
 \newcommand{\LWR at addrulewidth}[2]{%
@@ -7351,7 +7374,7 @@
 
 \newcommand{\LWR at addcdashline}{%
 \edef\LWR at tempone{%
-    \LWR at getexparray{LWR at cdashlines}{\arabic{LWR at tablecolindex}}%
+    \LWR at getexparray{LWR at cdashlines}{\arabic{LWR at tableLaTeXcolindex}}%
 }%
 \ifdefstring{\LWR at tempone}{Y}{%
     \LWR at tdaddstyle%
@@ -7448,7 +7471,7 @@
 \newcommand*{\LWR at addtabularrulecolors}{%
 \LWR at addtabularhrulecolor%
 \ifbool{LWR at tabularmutemods}{}{%
-    \ifnumequal{\value{LWR at tablecolindex}}{1}{%
+    \ifnumequal{\value{LWR at tableLaTeXcolindex}}{1}{%
         \edef\LWR at tempone{\LWR at getexparray{LWR at colbarspec}{leftedge}}%
         \ifdefstring{\LWR at tempone}{tvertbarl}{%
                 \LWR at tdaddstyle%
@@ -7472,7 +7495,7 @@
         }{}%
     }{}%
     \edef\LWR at tempone{%
-        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tablecolindex}}%
+        \LWR at getexparray{LWR at colbarspec}{\arabic{LWR at tableLaTeXcolindex}}%
     }%
     \ifdefstring{\LWR at tempone}{tvertbarr}{%
             \LWR at tdaddstyle%
@@ -7529,7 +7552,7 @@
 \newcounter{LWR at mcolvertbarsr}
 \newcounter{LWR at mcolvertbarsldash}
 \newcounter{LWR at mcolvertbarsrdash}
-\newboolean{LWR at mcolvertbaronleft}%
+\newbool{LWR at mcolvertbaronleft}%
 
 \newcommand*{\LWR at printmccoltype}[1]{%
 \LWR at traceinfo{lwr at printmccoltype -#1-}%
@@ -7568,7 +7591,7 @@
                 {\addtocounter{LWR at mcolvertbarsldash}{1}}% left edge
                 {\addtocounter{LWR at mcolvertbarsrdash}{1}}% not left edge
         }%
-        {\setboolean{LWR at mcolvertbaronleft}{false}}%
+        {\boolfalse{LWR at mcolvertbaronleft}}%
     }%
 }%
 \LWR at traceinfo{lwr at printmccoltype done}%
@@ -7585,16 +7608,16 @@
 \addtocounter{LWR at tablemulticolspos}{1}%
 \StrChar{#1}{\arabic{LWR at tablemulticolspos}}[\LWR at strresult]%
 \LWR at strresult%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 
 \newcommand*{\LWR at multicolskip}{%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }
 
 \newcommand*{\LWR at printmccoldata}[1]{%
 \LWR at traceinfo{lwr at printmccoldata -#1}%
-\boolfalse{LWR at validtablecol}%
+\global\boolfalse{LWR at validtablecol}%
 \StrChar{#1}{\arabic{LWR at tablemulticolspos}}[\LWR at strresult]%
 \IfStrEq{\LWR at strresult}{l}{\LWR at multicoltext}{}%
 \IfStrEq{\LWR at strresult}{c}{\LWR at multicoltext}{}%
@@ -7690,9 +7713,9 @@
 \LWR at traceinfo{LWR at domulticolumn -#1- -#2- -#4- -#5-}%
 \renewcommand{\LWR at multicoltext}{%
 #6%
-\booltrue{LWR at validtablecol}%
+\global\booltrue{LWR at validtablecol}%
 }%
-\setcounter{LWR at lastmulticolumn}{\value{LWR at tablecolindex}}%
+\setcounter{LWR at lastmulticolumn}{\value{LWR at tableLaTeXcolindex}}%
 \addtocounter{LWR at lastmulticolumn}{#3}%
 \addtocounter{LWR at lastmulticolumn}{-1}%
 \LWR at maybenewtablerow%
@@ -7709,10 +7732,10 @@
 \setcounter{LWR at mcolvertbarsr}{0}%
 \setcounter{LWR at mcolvertbarsldash}{0}%
 \setcounter{LWR at mcolvertbarsrdash}{0}%
-\setboolean{LWR at mcolvertbaronleft}{true}%
+\booltrue{LWR at mcolvertbaronleft}%
 \LWR at parsemulticolumnalignment{#5}{\LWR at printmccoltype}%
 \LWR at subaddcmidruletrim%
-{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tablecolindex}}}%
+{\LWR at getexparray{LWR at trimlrules}{\arabic{LWR at tableLaTeXcolindex}}}%
 {\LWR at getexparray{LWR at trimrrules}{\arabic{LWR at lastmulticolumn}}}%
 \ifnumcomp{\value{LWR at mcolvertbarsl}}{=}{1}{ tvertbarl}{}%
 \ifnumcomp{\value{LWR at mcolvertbarsl}}{>}{1}{ tvertbarldouble}{}%
@@ -7739,11 +7762,11 @@
 
 \NewDocumentCommand{\LWR at htmlmulticolumn}{m m +m}%
 {%
-\LWR at tabularhtmlcolumns{\arabic{LWR at tablecolindex}}{#1}
+\LWR at tabularhtmlcolumns{\arabic{LWR at tableLaTeXcolindex}}{#1}
 \LWR at domulticolumn{#1}{\arabic{LWR at tabhtmlcoltotal}}{#2}{#3}%
-\addtocounter{LWR at tablecolindex}{#1}%
-\addtocounter{LWR at tablecolindex}{-1}%
-\booltrue{LWR at skipatbang}%
+\addtocounter{LWR at tableLaTeXcolindex}{#1}%
+\addtocounter{LWR at tableLaTeXcolindex}{-1}%
+\global\booltrue{LWR at skipatbang}%
 }
 
 \newbool{LWR at starredlongtable}
@@ -7757,8 +7780,8 @@
     {\LWR at setlatestname{#2}}% given and non-empty
 }% optional given
 {\LWR at setlatestname{#3}}% no optional
-\LWR at tabularhtmlcolumns{1}{\arabic{LWR at tabletotalcols}}
-\LWR at domulticolumn{\arabic{LWR at tabletotalcols}}%
+\LWR at tabularhtmlcolumns{1}{\arabic{LWR at tabletotalLaTeXcols}}
+\LWR at domulticolumn{\arabic{LWR at tabletotalLaTeXcols}}%
     {\arabic{LWR at tabhtmlcoltotal}}%
     {P}%
 {% \LWR at domulticolumn
@@ -7809,11 +7832,11 @@
         }% end of yes TOC entry
     }% end of TOC entry not empty
 }% end of no star
-\booltrue{LWR at skipatbang}%
+\global\booltrue{LWR at skipatbang}%
 }% end of \LWR at domulticolumn
 
-\addtocounter{LWR at tablecolindex}{\arabic{LWR at tabletotalcols}}
-\addtocounter{LWR at tablecolindex}{-1}
+\addtocounter{LWR at tableLaTeXcolindex}{\arabic{LWR at tabletotalLaTeXcols}}
+\addtocounter{LWR at tableLaTeXcolindex}{-1}
 
 }
 
@@ -7933,71 +7956,71 @@
 \newcommand*{\LWR at tabledatacolumntag}%
 {%
 \LWR at traceinfo{LWR at tabledatacolumntag}%
-\let\mynext\LWR at tabledatasinglecolumntag%
+\global\let\LWR at mynextaction\LWR at tabledatasinglecolumntag%
 \ifdefequal{\LWR at mynexttoken}{\end}%
     {\global\booltrue{LWR at exitingtabular}}{}%
 \ifdefequal{\LWR at mynexttoken}{\caption}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\multicolumn}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\multirow}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\multicolumnrow}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\noalign}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\mrowcell}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\mcolrowcell}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\TabularMacro}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\hline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\firsthline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\lasthline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\toprule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\midrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\cmidrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\morecmidrules}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\specialrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\cline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\bottomrule}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\rowcolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\arrayrulecolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\doublerulesepcolor}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\warpprintonly}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\warpHTMLonly}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\ldelim}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\rdelim}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\hdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\cdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\firsthdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\lasthdashline}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \ifdefequal{\LWR at mynexttoken}{\par}%
-    {\let\mynext\LWR at donothing}{}%
+    {\global\let\LWR at mynextaction\LWR at donothing}{}%
 \LWR at traceinfo{LWR at tabledatacolumntag: about to do mynext}%
-\mynext%
+\LWR at mynextaction%
 \LWR at traceinfo{LWR at tabledatacolumntag: done}%
 }
 
@@ -8040,7 +8063,7 @@
 \begingroup%
 \global\advance\rownum\m at ne%
 \renewcommand*{\LWR at xcolorrowHTMLcolor}{}%
-\multicolumn{\value{LWR at tabletotalcols}}{l}{#1} \\
+\multicolumn{\value{LWR at tabletotalLaTeXcols}}{l}{#1} \\
 \endgroup%
 \LWR at getmynexttoken%
 }
@@ -8049,7 +8072,7 @@
 {
 \newcommand*{\LWR at HTMLhline}[1][]{%
     \ifbool{FormatWP}%
-    {\LWR at docmidrule{1-\arabic{LWR at tabletotalcols}}}%
+    {\LWR at docmidrule{1-\arabic{LWR at tabletotalLaTeXcols}}}%
     {\addtocounter{LWR at hlines}{1}}%
     \LWR at getmynexttoken}%
 }
@@ -8056,7 +8079,7 @@
 {
 \newcommand*{\LWR at HTMLhline}{%
     \ifbool{FormatWP}%
-    {\LWR at docmidrule{1-\arabic{LWR at tabletotalcols}}}%
+    {\LWR at docmidrule{1-\arabic{LWR at tabletotalLaTeXcols}}}%
     {\addtocounter{LWR at hlines}{1}}%
     \LWR at getmynexttoken}%
 }
@@ -8099,15 +8122,15 @@
 \LWR at htmlblocktag{table}%
 \LWR at parsetablecols{#2}%
 \LWR at stoppars%
-\setcounter{LWR at tablecolindex}{1}%
-\boolfalse{LWR at tabularcelladded}%
+\setcounter{LWR at tableLaTeXcolindex}{1}%
+\global\boolfalse{LWR at tabularcelladded}%
 \LWR at clearmidrules%
 \LetLtxMacro{\\}{\LWR at tabularendofline}%
 \LetLtxMacro\arrayrulecolor\arrayrulecolornexttoken%
 \LetLtxMacro\doublerulesepcolor\doublerulesepcolornexttoken%
-\renewcommand*{\LWR at columnHTMLcolor}{}%
-\renewcommand*{\LWR at rowHTMLcolor}{}%
-\renewcommand*{\LWR at cellHTMLcolor}{}%
+\gdef\LWR at columnHTMLcolor{}%
+\gdef\LWR at rowHTMLcolor{}%
+\gdef\LWR at cellHTMLcolor{}%
 \@rowcolors%
 \edef\LWR at vertruleHTMLcolor{\LWR at ruleHTMLcolor}%
 \setcounter{LWR at cellcolordepth}{0}%
@@ -8117,7 +8140,7 @@
 \LetLtxMacro\cline\LWR at HTMLcline%
 \DeclareDocumentCommand{\hdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
@@ -8126,13 +8149,13 @@
 }%
 \DeclareDocumentCommand{\firsthdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
 \DeclareDocumentCommand{\lasthdashline}{o}{%
     \ifbool{FormatWP}%
-        {\LWR at docdashline{1-\arabic{LWR at tabletotalcols}}}%
+        {\LWR at docdashline{1-\arabic{LWR at tabletotalLaTeXcols}}}%
         {\addtocounter{LWR at hdashedlines}{1}}%
     \LWR at getmynexttoken%
 }%
@@ -8163,13 +8186,13 @@
 \addtocounter{LWR at tabularpardepth}{-1}%
 \ifboolexpr{%
     test {%
-        \ifnumcomp{\value{LWR at tablecolindex}}{<}{\value{LWR at tabletotalcols}}
+        \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{<}{\value{LWR at tabletotalLaTeXcols}}
     } or %
     (%
         bool{LWR at intabularmetadata} and%
         not bool{LWR at tabularcelladded} and%
         test {%
-            \ifnumcomp{\value{LWR at tablecolindex}}{=}{\value{LWR at tabletotalcols}}%
+            \ifnumcomp{\value{LWR at tableLaTeXcolindex}}{=}{\value{LWR at tabletotalLaTeXcols}}%
         }%
     )%
 }%



More information about the tex-live-commits mailing list