texlive[50739] trunk: lwarp (3apr19)

commits+karl at tug.org commits+karl at tug.org
Wed Apr 3 23:40:52 CEST 2019


Revision: 50739
          http://tug.org/svn/texlive?view=revision&revision=50739
Author:   karl
Date:     2019-04-03 23:40:52 +0200 (Wed, 03 Apr 2019)
Log Message:
-----------
lwarp (3apr19)

Modified Paths:
--------------
    trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
    trunk/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl
    trunk/Build/source/texk/texlive/linked_scripts/tlshell/tlshell.tcl
    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-amsmath.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changes.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogo.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textcomp.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textpos.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xunicode.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-autonum.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changelayout.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-inputtrc.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-mathtools.sty
    trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogox.sty

Modified: trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua	2019-04-03 21:40:52 UTC (rev 50739)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.69"
+printversion = "v0.70"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -388,7 +388,7 @@
     print ("lwarpmk: \"" .. sourcename .. "-images.txt\" does not exist.")
     print ("lwarpmk: Your project does not use SVG math or other lateximages,")
     print ("lwarpmk: or the file has been deleted somehow.")
-    print ("lwarpmk: Use \"lwarpmk html\" to recompile your project")
+    print ("lwarpmk: Use \"lwarpmk html1\" to recompile your project")
     print ("lwarpmk: and recreate \"" .. sourcename .. "-images.txt\".")
     print ("lwarpmk: If your project does not use SVG math or other lateximages,")
     print ("lwarpmk: then \"" .. sourcename .. "-images.txt\" will never exist, and")
@@ -400,8 +400,9 @@
 -- Warning if must recompile before creating limages:
     print ("")
     print ("lwarpmk: ===")
+    print ("lwarpmk: Cross-references are not yet correct.")
     print ("lwarpmk: The document must be recompiled before creating the lateximages.")
-    print ("lwarpmk: Enter \"lwarpmk html\" again, then try \"lwarpmk limages\" again.")
+    print ("lwarpmk: Enter \"lwarpmk html1\" again, then try \"lwarpmk limages\" again.")
     print ("lwarpmk: ===")
 end --warnlimagesrecompile
 

Modified: trunk/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl	2019-04-03 21:40:52 UTC (rev 50739)
@@ -1,12 +1,12 @@
 #!/usr/bin/env perl
-# $Id: tlmgr.pl 50333 2019-03-11 01:55:52Z preining $
+# $Id: tlmgr.pl 50692 2019-04-01 15:01:10Z preining $
 #
 # Copyright 2008-2019 Norbert Preining
 # This file is licensed under the GNU General Public License version 2
 # or any later version.
 
-my $svnrev = '$Revision: 50333 $';
-my $datrev = '$Date: 2019-03-11 02:55:52 +0100 (Mon, 11 Mar 2019) $';
+my $svnrev = '$Revision: 50692 $';
+my $datrev = '$Date: 2019-04-01 17:01:10 +0200 (Mon, 01 Apr 2019) $';
 my $tlmgrrevision;
 my $tlmgrversion;
 my $prg;
@@ -6906,6 +6906,12 @@
         # TODO should we die here? Probably yes because one of 
         # checksum file or signature file has changed!
         tldie("$prg: verification of checksum for $location failed: $msg\n");
+      } elsif ($ret == $VS_EXPKEYSIG) {
+        # do nothing, try to get new tlpdb and hope sig is better?
+        debug("$prg: good signature bug gpg key expired, continuing anyway!\n");
+      } elsif ($ret == $VS_REVKEYSIG) {
+        # do nothing, try to get new tlpdb and hope sig is better?
+        debug("$prg: good signature but from revoked gpg key, continuing anyway!\n");
       } elsif ($ret == $VS_VERIFIED) {
         $remotetlpdb = TeXLive::TLPDB->new(root => $location,
           tlpdbfile => $loc_copy_of_remote_tlpdb);
@@ -9763,7 +9769,7 @@
 distribution (L<https://tug.org/texlive>) and both are licensed under the
 GNU General Public License Version 2 or later.
 
-$Id: tlmgr.pl 50333 2019-03-11 01:55:52Z preining $
+$Id: tlmgr.pl 50692 2019-04-01 15:01:10Z preining $
 =cut
 
 # test HTML version: pod2html --cachedir=/tmp tlmgr.pl >/tmp/tlmgr.html

Modified: trunk/Build/source/texk/texlive/linked_scripts/tlshell/tlshell.tcl
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/tlshell/tlshell.tcl	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Build/source/texk/texlive/linked_scripts/tlshell/tlshell.tcl	2019-04-03 21:40:52 UTC (rev 50739)
@@ -11,7 +11,7 @@
 catch {rename send {}}
 
 # unix: make sure TL comes first on process searchpath
-# on windows, runscript takes care of this.
+# on windows, a wrapper takes care of this.
 if {$::tcl_platform(platform) ne "windows"} {
   set texbin [file dirname [file normalize [info script]]]
   set savedir [pwd]
@@ -27,18 +27,6 @@
   unset texbin
   unset savedir
   unset dirs
-} else {
-  # until we have a better wrapper, just hardcode stuff
-  set texbin [file dirname [file normalize [info script]]]
-  set texbin "$texbin\\..\\..\\..\\bin\\win32"
-  set texbin [file normalize $texbin]
-  set texbin [string map {/ \\} $texbin]
-  set dirs [split $::env(PATH) ";"]
-  if {[lindex $dirs 0] ne $texbin} {
-    set ::env(PATH) "${texbin};$::env(PATH)"
-  }
-  unset texbin
-  unset dirs
 }
 
 # declarations and utilities shared with install-tl-gui.tcl
@@ -49,9 +37,9 @@
 set ::our_platform [exec -ignorestderr tlmgr print-platform]
 
 # searchpath and locale:
-# windows: most scripts run via [w]runscript, which adjusts the searchpath
+# windows: tlshell runs via a wrapper which adjusts the searchpath
 # for the current process.
-# tlshell.tcl should  be run via a symlink in a directory
+# others: tlshell.tcl should  be run via a symlink in a directory
 # which also contains (a symlink to) kpsewhich.
 # This directory will be prepended to the searchpath.
 # kpsewhich should disentangle symlinks.
@@ -1530,7 +1518,7 @@
       [string cat [__ "If update fails, try on a command-line:"] \
          "\ntlmgr update --self\n" \
          [__ "Use an administrative command prompt for an admin install."]]]
-  return [$ans eq ok]
+  return [expr {$ans eq "ok"}]
 }
 
 proc update_tlmgr {} {

Modified: trunk/Master/texmf-dist/doc/latex/lwarp/README.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/doc/latex/lwarp/README.txt	2019-04-03 21:40:52 UTC (rev 50739)
@@ -1,5 +1,5 @@
 
-LaTeX lwarp package v0.69   README.txt
+LaTeX lwarp package v0.70   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	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/scripts/lwarp/lwarpmk.lua	2019-04-03 21:40:52 UTC (rev 50739)
@@ -2,7 +2,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.69"
+printversion = "v0.70"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -388,7 +388,7 @@
     print ("lwarpmk: \"" .. sourcename .. "-images.txt\" does not exist.")
     print ("lwarpmk: Your project does not use SVG math or other lateximages,")
     print ("lwarpmk: or the file has been deleted somehow.")
-    print ("lwarpmk: Use \"lwarpmk html\" to recompile your project")
+    print ("lwarpmk: Use \"lwarpmk html1\" to recompile your project")
     print ("lwarpmk: and recreate \"" .. sourcename .. "-images.txt\".")
     print ("lwarpmk: If your project does not use SVG math or other lateximages,")
     print ("lwarpmk: then \"" .. sourcename .. "-images.txt\" will never exist, and")
@@ -400,8 +400,9 @@
 -- Warning if must recompile before creating limages:
     print ("")
     print ("lwarpmk: ===")
+    print ("lwarpmk: Cross-references are not yet correct.")
     print ("lwarpmk: The document must be recompiled before creating the lateximages.")
-    print ("lwarpmk: Enter \"lwarpmk html\" again, then try \"lwarpmk limages\" again.")
+    print ("lwarpmk: Enter \"lwarpmk html1\" again, then try \"lwarpmk limages\" again.")
     print ("lwarpmk: ===")
 end --warnlimagesrecompile
 

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.dtx	2019-04-03 21:40:52 UTC (rev 50739)
@@ -16,7 +16,7 @@
 % \iffalse
 %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
 %<package>\ProvidesPackage{lwarp}
-%<package>    [2019/03/21 v0.69  Allows LaTeX to directly produce HTML5 output.]
+%<package>    [2019/04/03 v0.70  Allows LaTeX to directly produce HTML5 output.]
 %
 %<*driver>
 \documentclass{ltxdoc}
@@ -75,6 +75,7 @@
 \newunicodechar{₦}{\textnaira}
 \newunicodechar{₱}{\textpeso}
 \newunicodechar{℞}{\textrecipe}
+\newunicodechar{‽}{\textinterrobang}
 \newunicodechar{⸘}{\textinterrobangdown}
 \newunicodechar{‰}{\textperthousand}
 \newunicodechar{‱}{\textpertenthousand}
@@ -2041,9 +2042,17 @@
 \newcommand{\limitssaveboxes}{%
 \trouble{boxes}
 \trouble{HTML>corrupted}
+\trouble{savebox=\cs{savebox}}
+\trouble{sbox=\cs{sbox}}
+\trouble{lrbox=\env{lrbox}}
+\trouble{usebox=\cs{usebox}}
 \TeX\ boxes are placed inline and do not allow line breaks, so boxes
+\watchout[boxes]
 with long contents may overflow the line during \HTML\ conversion.
 \pkg{lwarp} uses methods which help avoid this problem.
+
+\cs{savebox} and related do not (yet) support \env{minipage} or \cs{parbox}.
+\watchout[\env{minipage}, \cs{parbox}]
 }
 
 \newcommand{\limitsminipage}{%
@@ -2340,7 +2349,8 @@
 \textred{NOTE: As of this writing, the \pkg{siunitx} extension
 for \brand{MathJax} is not currently hosted at any public CDN,
 thus \pkg{siunitx} is not usable with \brand{MathJax} unless a local copy
-of this extension is created first.}
+of this extension is created first.
+See \cs{MathJaxFilename} to select a custom MathJax script.}
 
 Tabular \texttt{S} columns are rendered as simple \texttt{c} columns,
 \trouble[\env{tabular}]{siunitx=\pkg{siunitx}>tabular S and s columns}
@@ -2552,7 +2562,7 @@
 %<*package>
 % \fi
 %
-% \CheckSum{31088}
+% \CheckSum{31232}
 %
 % \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
@@ -2664,6 +2674,7 @@
 % \changes{v0.67}{2019/02/23}{\ 2019/02/23}
 % \changes{v0.68}{2019/03/05}{\ 2019/03/05}
 % \changes{v0.69}{2019/03/21}{\ 2019/03/21}
+% \changes{v0.70}{2019/04/03}{\ 2019/04/03}
 
 
 
@@ -2878,6 +2889,23 @@
 %
 % \begin{description}
 % \needspace{2\baselineskip}
+% \item[v0.70:] Error handling, \brand{MathJax}, \pkg{mathtools}.
+%   \begin{itemize}
+%       \item Error handling for ``Label(s) changed.''
+%             Refuse to \cmds{lwarpmk limages} until recompile first.
+%       \item Fix: If Computer Modern font is used, ensures \pkg{cm-super} or \pkg{lmodern}
+%           is used.
+%       \item Fixes for \cs{makebox}.
+%       \item Fixes for \cs{parbox} inside a \element{span}.
+%       \item MathJax: Updated to v2.7.5.  Loads the \filenm{autoload-all.js} extension.
+%           Added \cs{MathJaxFilename} to select custom scripts.
+%       \item \pkg{textcomp}, \pkg{xunicode}: Fix for \cs{textinterrobang}.
+%           \margintag{packages}
+%       \item \pkg{mhchem}: Works with \brand{MathJax}.  See \cref{sec:mhchem}.
+%       \item \pkg{changes}: Updated to v3.1.2.
+%       \item Added \pkg{autonum}, \pkg{changelayout}, \pkg{inputtrc}, \pkg{mathtools}, \pkg{metalogox}.
+%   \end{itemize}
+% \needspace{2\baselineskip}
 % \item[v0.69:] Error handling, many fixes, improved \pkg{keyfloat} \Slash \pkg{tocdata}.
 %   \begin{itemize}
 %       \item Fix for \HTML\ corruption of \env{lateximage} displays.
@@ -3708,7 +3736,7 @@
 %           \margintag{math}
 %       \item Improved \cs{ensuremath}.
 %       \item \brand{MathJax} with \pkg{siunitx}: Updated script and documentation.
-%       \item \pkg{textcomp}: Improved \cs{interrobangdown}.
+%       \item \pkg{textcomp}: Improved \cs{textinterrobangdown}.
 %           \margintag{symbols}
 %       \item \pkg{realscripts}: Fix for subscripts in a \env{lateximage}.
 %       \item \pkg{morewrites}: Enforces loading before \pkg{lwarp}.
@@ -4451,7 +4479,7 @@
 % Page layout: & \pkg{2in1}, \pkg{2up}, \pkg{a4}, \pkg{a4wide}, \pkg{a5comb},
 %       \pkg{addlines}, \pkg{anysize}, \pkg{atbegshi},
 %       \pkg{blowup},  \pkg{booklet},  \pkg{bophook}, \pkg{bounddvi}, \pkg{bxpapersize},
-%       \pkg{canoniclayout},
+%       \pkg{canoniclayout}, \pkg{changelayout},
 %       \pkg{changepage}, \pkg{chngpage}, \pkg{clrdblpg},
 %       \pkg{continue}, \pkg{draftcopy}, \pkg{draftfigure}, \pkg{draftwatermark},
 %       \pkg{ebook}, \pkg{everyshi},
@@ -4537,7 +4565,8 @@
 %	\pkg{amsthm}, \pkg{ntheorem}, \pkg{theorem}. \\
 %
 % Additional math: & Math fonts via \SVG\ images,
-%   \pkg{breqn}, \pkg{cases}, \pkg{resizegather}, \pkg{xfakebold}, \pkg{xy}.
+%   \pkg{breqn}, \pkg{cases}, \pkg{mathtools}, \pkg{resizegather},
+%   \pkg{autonum} (ignored), \pkg{xfakebold}, \pkg{xy}.
 %
 %   Tested to work as-is:
 %   \pkg{amscd}, \pkg{bm}, \pkg{braket}, \pkg{delarray}, \pkg{guass}, \pkg{nicematrix},
@@ -4669,7 +4698,9 @@
 %
 % Symbols: & Native \LaTeX\ diacriticals, \pkg{academicons}, \pkg{bbding},
 %   \pkg{chemgreek}, \pkg{dingbat}, \pkg{eurosym},
-%   \pkg{fontawesome}, \pkg{fontawesome5}, \pkg{marvosym}, \pkg{pifont}, \pkg{textalpha},
+%   \pkg{fontawesome}, \pkg{fontawesome5}, \pkg{marvosym},
+%   \pkg{metalogo}, \pkg{metalogox},
+%   \pkg{pifont}, \pkg{textalpha},
 %   \pkg{textcomp}, \pkg{textgreek}, \pkg{typicons}, \pkg{xunicode}.
 %
 %   Tested to work as-is:
@@ -4678,7 +4709,7 @@
 % \midrule
 %
 % Files: &
-%   \pkg{attachfile}, \pkg{attachfile2}, \pkg{hyperxmp}, \pkg{intopdf},
+%   \pkg{attachfile}, \pkg{attachfile2}, \pkg{hyperxmp}, \pkg{inputtrc}, \pkg{intopdf},
 %   \pkg{pdfpages}, \pkg{pdfx}, \pkg{xmpincl}. \\
 %
 % \midrule
@@ -6230,7 +6261,8 @@
 %
 %
 % \pkg{lwarp} supports \pkg{book}, \pkg{report}, and \pkg{article} classes,
-% as well as the equivalent Koma-script classes and \pkg{memoir}.
+% as well as the equivalent Koma-script classes and \pkg{memoir}, and
+% various CJK-related classes and packages.
 %
 % Load the \pkg{lwarp} package immediately after the font and UTF-8 setup commands.
 %
@@ -6549,6 +6581,7 @@
 % \cs{packagediagramname} & The suffix for a package's \env{lateximage} \attribute{alt} tags. \\
 % \midrule
 % \cs{CSSFilename} & The \CSS\ for the following files. \\
+% \cs{MathJaxFilename} & The MathJax script for the following files. \\
 % \midrule
 % \cs{HTMLLanguage} & The \HTML\ \attribute{lang} tag. \\
 % \cs{HTMLTitle} & The homepage's \element{title}, overriding \cs{title}. \\
@@ -6642,6 +6675,7 @@
 %
 % \ItemDescribeMacro{\linkhomename} \DescribeDefault{Home}
 %   Name of the link to the home page.  Paragraphs are allowed.
+%   Redefine with \cs{renewcommand}.
 % \changes{v0.63}{2018/11/29}{Docs: \cs{linkhomename}.}
 %
 % \ItemDescribeCounter{tocdepth} Sectioning depth of the table of contents.
@@ -6680,6 +6714,7 @@
 %
 % \ItemDescribeMacro{\sidetocname} \DescribeDefault{Contents}
 %   Name of the side\TOC.  Paragraphs are allowed.
+%   Redefine with \cs{renewcommand}.
 % \changes{v0.63}{2018/11/29}{Docs: \cs{sidetocname}.}
 %
 % \ItemDescribeCounter{FileDepth}  \DescribeDefault{-5}
@@ -6751,7 +6786,7 @@
 %   \gindex{filename>length}
 %   The maximum length of the filenames generated by \pkg{lwarp}.
 %   ``\filenm{.html}'' is added to this length.
-%   Redefine with \cs{newcommand}.
+%   Redefine with \cs{renewcommand}.
 %
 % \ItemDescribeCounter{FootnoteDepth} \DescribeDefault{3}
 %   Determines where to place pending footnotes.
@@ -6767,7 +6802,8 @@
 % \ItemDescribeMacro{\abstractname}  \DescribeDefault{Abstract}
 %   The name of the abstract.
 %   This may also be over-written
-%   by the \pkg{babel} package.  Defaults to ``Abstract''.
+%   by the \pkg{babel} package.  Defaults to ``|Abstract|''.
+%   Redefine with \cs{renewcommand}.
 %
 % \end{description}
 %
@@ -6789,6 +6825,18 @@
 %   \cs{CSSFilename} may be used before each file break to set the \CSS\ for
 %   individual pagess of the website.
 %
+% \ItemDescribeMacro{\MathJaxFilename}  \marg{filename}
+%   \DescribeDefault{\filenm{lwarp_mathjax.txt}} \quad
+%   Sets the MathJax script file to use for the following
+%   files.  May be changed before each each sectioning command which would
+%   cause a file split.
+%
+%   The MathJax script file is copied into the head of each \HTML\ file.
+%   This may be used to point to a local repository, add extensions, or change
+%   the script somewhere in the middle of the document.
+%   \cs{MathJaxFilename} may be used before each file break to set the script file for
+%   individual pages of the website.
+%
 % \ItemDescribeMacro{\HTMLLanguage}  \marg{langauge} \DescribeDefault{en-US} \quad
 %   The \HTML\ file's \HTML\ \attribute{lang} meta tag.
 %   Defaults to \attribute{en-US}.
@@ -6879,10 +6927,12 @@
 %
 % \ItemDescribeMacro{\mathimagename}  \DescribeDefault{math image}
 % \label{sec:mathimagename}
+%   Redefine with \cs{renewcommand}.
 %   \describemathimagename
 %
 % \ItemDescribeMacro{\packagediagramname}  \DescribeDefault{diagram}
 % \label{sec:packagediagramname}
+%   Redefine with \cs{renewcommand}.
 %   \describepackagediagramname
 %
 % \ItemDescribeEnv{warpprint} An environment which is only used
@@ -6961,7 +7011,8 @@
 % \subsection{Customizing the \CSS}
 % \label{sec:csscustomization}
 %
-% \DescribeMacro{\CSSFilename} \DescribeDefault{lwarp.css}
+% \DescribeMacro{\CSSFilename} \marg{filename} \DescribeDefault{lwarp.css}
+%
 % \cs{CSSFilename} may be used to choose which |.css| file is used to display
 % each page of the web site.  Use \cs{CSSFilename} before |\begin{document}|
 % to assign the style of the home page.
@@ -7197,7 +7248,7 @@
 % \gindex{description>HTML meta tag}
 % \gindex{meta tag, HTML>description}
 % \DescribeMacro{\HTMLDescription} \marg{A description of the web page.}
-% \quad The default is no description.
+% \DescribeDefault{(none)}
 %
 % Each page of \HTML\ output should have its own \HTML\ meta description,
 % which usually shows up in web search results,
@@ -7228,9 +7279,10 @@
 % \gindex{HTML>meta tag>title}
 % \gindex{title>HTML meta tag}
 % \gindex{meta tag, HTML>title}
-% \DescribeMacro{\HTMLTitle} \marg{title} \quad Sets the contents
-%   of the web page \element{meta name="title"} element.
-%   Defaults to |\HTMLtitle{\thetitle}|.
+% \DescribeMacro{\HTMLTitle} \marg{title}
+% \DescribeDefault{\texttt{\cs{HTMLtitle}\{\cs{thetitle}\}}}
+%
+% Sets the contents of the web page \element{meta name="title"} element.
 %   May be set empty to cancel the meta title tag.
 %
 % See \cref{sec:htmlsettings} for \cs{HTMLTitleBeforeSection} and
@@ -7242,9 +7294,10 @@
 % \gindex{HTML>meta tag>author}
 % \gindex{author>HTML meta tag}
 % \gindex{meta tag, HTML>author}
-% \DescribeMacro{\HTMLAuthor} \marg{author} \quad Sets the contents
-%	of the web page \element{meta name="author"} element.
-%	Defaults to |\HTMLAuthor{\theauthor}|.
+% \DescribeMacro{\HTMLAuthor} \marg{author}
+% \DescribeDefault{\texttt{\cs{HTMLAuthor}\{\cs{theauthor}\}}}
+%
+% Sets the contents of the web page \element{meta name="author"} element.
 %	May be set empty to cancel the meta author tag.
 %
 % \cs{author} may be used to create a list of authors and their affiliations,
@@ -7504,11 +7557,14 @@
 % \subsection{Section names}
 % \label{sec:limitssectionnames}
 %
-% If using named \HTML\ files, by selecting |\booltrue{FileSectionNames}|:
+% If using named \HTML\ files, by selecting |\booltrue{FileSectionNames}|,
+% the generated filenames may be simplified by using \cs{FilenameSimplify}
+% and \cs{FilenameNullify}:
 %
-% \DescribeMacro{\FilenameSimplify}
+% \DescribeMacro{\FilenameSimplify} \marg{text}
 % \gindex{filename>simplify}
 % \gindex{section>file names}
+%
 % To remove common short words from the automatically-generated filenames,
 % replacing each with a single hyphen ``|-|'',
 % use \cs{FilenameSimplify}:
@@ -7526,7 +7582,8 @@
 % to a single hyphen ``|-|''.
 % Finally, single hyphens at the start or end of the filename are removed.
 %
-% \DescribeMacro{\FilenameNullify}
+% \DescribeMacro{\FilenameNullify} \marg{macros}
+%
 % Macro names may appear in the automatically-generated file names.
 % \trouble[macros in section names]{sectioning>macro in name}
 % \trouble{filename>corrupted}
@@ -10700,6 +10757,7 @@
 \LWR at loadafter{attachfile}
 \LWR at loadafter{attachfile2}
 \LWR at loadafter{authblk}
+\LWR at loadafter{autonum}
 \LWR at loadafter{axessibility}
 \LWR at loadafter{axodraw2}
 \LWR at loadafter{backref}
@@ -10729,6 +10787,7 @@
 \LWR at loadafter{cases}
 % \LWR at loadafter{ccaption}% may be preloaded by memoir
 \LWR at loadafter{changebar}
+\LWR at loadafter{changelayout}
 \LWR at notmemoirloadafter{changepage}
 \LWR at loadafter{changes}
 \LWR at loadafter{chappg}
@@ -10853,6 +10912,7 @@
 \LWR at notmemoirloadafter{index}
 % inputenc must be loaded before lwarp
 % inputenx must be loaded before lwarp
+% inputtrc may be loaded before lwarp
 \LWR at loadafter{intopdf}
 \LWR at loadafter{karnaugh-map}
 \LWR at loadafter{keyfloat}
@@ -10883,10 +10943,12 @@
 \LWR at loadafter{marginfix}
 \LWR at loadafter{marginnote}
 \LWR at loadafter{marvosym}
+\LWR at loadafter{mathtools}
 \LWR at loadafter{mcaption}
 \LWR at loadafter{mdframed}
 \LWR at loadafter{memhfixc}
 \LWR at loadafter{metalogo}
+\LWR at loadafter{metalogox}
 \LWR at loadafter{mhchem}
 \LWR at loadafter{microtype}
 \LWR at loadafter{midfloat}
@@ -11212,6 +11274,43 @@
 %    \end{macrocode}
 %
 %
+% \section{Avoid a bitmapped font}
+%
+% If \DVI\ or \PDF\ \LaTeX,
+% and if the default Computer Modern is the selected font family,
+% ensure that \pkg{cm-super} or \pkg{lmodern} is used to provide a vector font.
+%
+% \changes{v0.70}{2019/03/25}{Ensure vector font.}
+%    \begin{macrocode}
+\ifxetexorluatex
+\else
+    \ifdefstring{\f at family}{cmr}{
+        \IfFileExists{type1ec.sty}% found in cm-super
+        {}
+        {% cm-super not installed
+            \IfFileExists{lmodern.sty}{
+                \PackageInfo{lwarp}{cm-super not installed, loading lmodern}
+                \RequirePackage{lmodern}
+            }{
+                \PackageError{lwarp}
+                {%
+                    Lwarp requires a vector font.\MessageBreak
+                    Install and load cm-super, lmodern, or another\MessageBreak
+                    Type-1 vector font before loading lwarp%
+                }
+                {%
+                    Install cm-super or lmodern.\MessageBreak
+                    If lmodern, load it before lwarp:\MessageBreak
+                        \space\space\protect\usepackage{lmodern}\MessageBreak
+                        \space\space\protect\usepackage{lwarp}%
+                }
+            }
+        }% cm-super not installed
+    }{}% f at family
+\fi
+%    \end{macrocode}
+%
+%
 % \section{Upright quotes}
 %
 % In PDF\TeX, preserve upright quotes in verbatim text.
@@ -12743,8 +12842,10 @@
 % Maybe nullify the \env{comment} environment if the new package
 % will be redefining it for a new purpose.
 % \changes{v0.67}{2019/02/15}{\pkg{easyReview}: Supported.}
+% \changes{v0.70}{2019/03/23}{\pkg{changes}: Updated to v3.1.2.}
 %    \begin{macrocode}
     \ifdefstring{\LWR at strresulttwo}{easyReview}{\LWR at nullifycomment}{}%
+    \ifdefstring{\LWR at strresulttwo}{changes}{\LWR at nullifycomment}{}%
 %    \end{macrocode}
 % If \HTML, check if the package should be loaded before \pkg{lwarp},
 % or never at all:
@@ -15035,6 +15136,11 @@
     overflow: auto;
 }
 
+.inlineminipage {
+    display: inline-block ;
+    text-align: left
+}
+
 /* Paragraphs in the flexbox did not collapse their margins. */
 /* Have not yet researched this. */
 .minipage p {margin: .75ex 0em .75ex 0em ;}
@@ -16626,12 +16732,24 @@
 % \subsection{\filenm{lwarp_mathjax.txt}}
 
 % \DescribeFile{lwarp_mathjax.txt}
-% Used by \pkg{lwarp} when using \brand{MathJax}.
+% The default MathJax script used by \pkg{lwarp} when using \brand{MathJax}.
+% A recent version of MathJax is used, as served by the recommended repository.
+% Adjustments are made to allow \LaTeX\ to control the equation tags.
 %
-% This must be present when compiling the project,
-% but does not need to be present when distributing
+% \cs{MathJaxFilename} determines which script file is copied into the \HTML\ pages,
+% and defaults to \filenm{lwarp_mathjax.txt}.
+% The script files must be present when compiling the project,
+% but do not need to be present when distributing
 % the resulting \HTML\ files.
 %
+% \gindex{MathJax=\brand{MathJax}>custom script}
+% \trouble{MathJax=\brand{MathJax}>custom script}
+% To generate a custom script, such as to use a local repository,
+% \margintag{custom script}
+% copy \filenm{lwarp_mathjax.txt} to a new file,
+% make changes while keeping \pkg{lwarp}'s adjustments for equation numbering,
+% and use \cs{MathJaxFilename} to select new filename.
+%
 % \changes{v0.28}{2017/04/11}{File: \filenm{lwarp_mathjax.txt}: Updated \protect\acro{CDN} repository.}
 % \changes{v0.30}{2017/04/26}{Fix: \filenm{lwarp_mathjax.txt}: Only written in print mode.}
 % \changes{v0.34}{2017/07/27}{File: \filenm{lwarp_mathjax.txt}: Version change.}
@@ -16641,8 +16759,9 @@
 % \changes{v0.59}{2018/07/13}{File: \filenm{lwarp_mathjax.txt}: Updated to MathJax v2.7.4.}
 % \changes{v0.59}{2018/07/16}{File: \filenm{lwarp_mathjax.txt}: Fix: Removed chapter number from tagged non-numeric MathJax equations.}
 % \changes{v0.62}{2018/11/05}{File: \filenm{lwarp_mathjax.txt}: Removed inoperable \pkg{siunitx} extension.}
+% \changes{v0.70}{2019/03/24}{File: \filenm{lwarp_mathjax.txt}: Updated to MathJax v2.7.5.}
+% \changes{v0.70}{2019/03/24}{File: \filenm{lwarp_mathjax.txt}: Loads \filenm{autoload-all.js} extension.}
 %
-%
 % ^^A *lwarp_mathjax.txt
 %
 % \codeconfig
@@ -16721,16 +16840,17 @@
 <script type="text/x-mathjax-config">
 MathJax.Hub.Config({
     TeX: {
-    equationNumbers: {
-        autoNumber: "AMS"
+        extensions: ["autoload-all.js"] ,
+        equationNumbers: {
+            autoNumber: "AMS"
+        }
     }
-    }
 });
 </script>
 
 <!-- Alternative CDN provider: -->
 <script type="text/javascript" async
-src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-AMS_HTML-full">
+src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_HTML-full">
 </script>
 
 <!-- No longer supported after April 30, 2017: -->
@@ -16881,7 +17001,7 @@
 -- Copyright 2016-2018 Brian Dunn
 
 
-printversion = "v0.69"
+printversion = "v0.70"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -17283,7 +17403,7 @@
     print ("lwarpmk: \"" .. sourcename .. "-images.txt\" does not exist.")
     print ("lwarpmk: Your project does not use SVG math or other lateximages,")
     print ("lwarpmk: or the file has been deleted somehow.")
-    print ("lwarpmk: Use \"lwarpmk html\" to recompile your project")
+    print ("lwarpmk: Use \"lwarpmk html1\" to recompile your project")
     print ("lwarpmk: and recreate \"" .. sourcename .. "-images.txt\".")
     print ("lwarpmk: If your project does not use SVG math or other lateximages,")
     print ("lwarpmk: then \"" .. sourcename .. "-images.txt\" will never exist, and")
@@ -17296,8 +17416,9 @@
 -- Warning if must recompile before creating limages:
     print ("")
     print ("lwarpmk: ===")
+    print ("lwarpmk: Cross-references are not yet correct.")
     print ("lwarpmk: The document must be recompiled before creating the lateximages.")
-    print ("lwarpmk: Enter \"lwarpmk html\" again, then try \"lwarpmk limages\" again.")
+    print ("lwarpmk: Enter \"lwarpmk html1\" again, then try \"lwarpmk limages\" again.")
     print ("lwarpmk: ===")
 end --warnlimagesrecompile
 
@@ -18879,6 +19000,7 @@
 % \changes{v0.20}{2016/12/24}{Fix: Minipages inside a span.}
 % \changes{v0.34}{2017/07/29}{Fix: Minipages, BlocksClass, and lists inside a span.}
 % \changes{v0.44}{2017/11/15}{Added \env{list} and \env{trivlist}.}
+% \changes{v0.70}{2019/04/02}{Improved \env{minipage}, \cs{parbox} inside a span.}
 %
 %    \begin{macrocode}
 \newcommand*{\LWR at nestspanitem}{%
@@ -18896,7 +19018,9 @@
 {% not in a lateximage
     \LWR at traceinfo{LWR at nestspan: NOT inside a lateximage}%
     \addtocounter{LWR at spandepth}{1}%
-    \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}{}{}%
+    \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}%
+        {\LWR at subhtmlelementclass{span}{inlineminipage}}%
+        {\LWR at htmltagc{/span}}%
     \RenewDocumentEnvironment{BlockClass}{o m}{}{}%
     \renewcommand{\BlockClassSingle}[2]{##2}%
     \renewcommand{\LWR at forcenewpage}{}%
@@ -19581,10 +19705,11 @@
 %    \end{macrocode}
 % Print a closing tag and some extra vertical space.
 % \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.}
+% \changes{v0.70}{2019/03/25}{Reduced underfull \cs{hbox} warnings.}
 %    \begin{macrocode}
         \leavevmode\LWR at orignewline%
         \LWR at htmltagc{/\LWR at tagregularparagraph}%
-        \LWR at orignewline%
+        \LWR at origpar%
 %    \end{macrocode}
 % No longer doing a paragraph:
 %    \begin{macrocode}
@@ -19912,6 +20037,51 @@
 
 
 
+
+
+% \section{MathJax script}
+
+% \codehtml
+%    \begin{macrocode}
+\begin{warpHTML}
+%    \end{macrocode}
+
+% \begin{macro}{\LWR at mathjaxfilename}
+% \DescribeDefault{\filenm{lwarp_mathjax.txt}}
+% The MathJax script filename to use.
+% This file is copied into the head of each \HTML\ page.
+% This may be changed mid-document using \cs{MathJaxFilename},
+% allowing the use of a custom MathJax script, such as for a local repository,
+% or different MathJax script files to be used for different sections of the document.
+%
+% \changes{v0.70}{2019/03/24}{Added.}
+%    \begin{macrocode}
+\newcommand*{\LWR at mathjaxfilename}{lwarp_mathjax.txt}
+%    \end{macrocode}
+% \end{macro}
+
+% \begin{macro}{\MathJaxFilename} \marg{filename} \qquad
+% Assigns the MathJax script file to be used by the following \HTML\ pages.
+%
+% \changes{v0.70}{2019/03/24}{Added.}
+%    \begin{macrocode}
+\newcommand*{\MathJaxFilename}[1]{%
+    \renewcommand*{\LWR at mathjaxfilename}{#1}%
+    \@onelevel at sanitize\LWR at mathjaxfilename%
+}
+
+\end{warpHTML}
+%    \end{macrocode}
+%
+% \codeprint
+%    \begin{macrocode}
+\begin{warpprint}
+\newcommand*{\MathJaxFilename}[1]{}
+\end{warpprint}
+%    \end{macrocode}
+% \end{macro}
+
+
 % \section{Title, \HTML\ meta author, \HTML\ meta description}
 %
 %
@@ -22252,7 +22422,7 @@
 % ^^A         \verbatiminput{lwarp_KaTeX.txt}%
 % ^^A     }{%
 %    \begin{macrocode}
-        \verbatiminput{lwarp_mathjax.txt}%
+        \verbatiminput{\LWR at mathjaxfilename}%
 %    \end{macrocode}
 % ^^A     }%
 %    \begin{macrocode}
@@ -22389,16 +22559,6 @@
 \let\LWR at origltx@label\ltx at label
 \let\ltx at label\LWR at htmlmathlabel
 %    \end{macrocode}
-% Logos:
-%    \begin{macrocode}
-\LetLtxMacro\TeX\LWR at TeX
-\LetLtxMacro\LaTeX\LWR at LaTeX
-\LetLtxMacro\LuaTeX\LWR at LuaTeX
-\LetLtxMacro\LuaLaTeX\LWR at LuaLaTeX
-\LetLtxMacro\XeTeX\LWR at XeTeX
-\LetLtxMacro\XeLaTeX\LWR at XeLaTeX
-\LetLtxMacro\ConTeXt\LWR at ConTeXt
-%    \end{macrocode}
 % Not yet started any paragraph handling:
 %    \begin{macrocode}
 \global\boolfalse{LWR at doingapar}
@@ -22569,27 +22729,54 @@
 % Seems to be required sometimes:
 %    \begin{macrocode}
 \LWR at orignewpage
-%    \end{macrocode}
-% For \env{lateximage} commands:
-%    \begin{macrocode}
-\immediate\write\LWR at lateximagesfile{%
-    |end|end|end|%
-}%
-\immediate\closeout\LWR at lateximagesfile
 }
 %    \end{macrocode}
 % \end{macro}
 
 
+
+% \begin{macro}{\enddocument}
+% If labels have not changed, mark successful completion
+% of the \env{lateximages} file.
+% Executed as everything is being shut down.
+% \changes{v0.70}{2019/03/26}{If labels changed, require recompile before making limages.}
 %    \begin{macrocode}
+\xpatchcmd{\enddocument}
+    {%
+        \if at tempswa
+        \@latex at warning@no at line{Label(s) may have changed.
+        Rerun to get cross-references right}%
+        \fi
+    }
+    {%
+        \if at tempswa
+            \@latex at warning@no at line{Label(s) may have changed.
+            Rerun to get cross-references right}%
+        \else
+            \immediate\write\LWR at lateximagesfile{%
+                |end|end|end|%
+            }%
+        \fi
+    }
+    {}
+    {
+        \PackageWarningNoLine{lwarp}
+        {%
+            Could not patch \protect\enddocument.\MessageBreak
+            If labels have changed, be sure to recompile before\MessageBreak
+            creating lateximages with\MessageBreak
+            \space\space lwarpmk limages,\MessageBreak
+            or the images may be corrupt%
+        }
+    }
+%    \end{macrocode}
+% \end{macro}
+
+%    \begin{macrocode}
 \end{warpHTML}
 %    \end{macrocode}
 
 
-
-
-
-
 % \section{Title page}
 % \label{sec:titles}
 %
@@ -22652,7 +22839,7 @@
 % \DescribeMacro{\@title}
 % \DescribeMacro{\@author}
 % \DescribeMacro{\@date}
-% \cs{@title}, \cs{@author}, etc.\ store the values
+% \cs{@title}, \cs{@author}, and \cs{@date} \ store the values
 % as originally assigned, including any \cs{thanks}, \cs{and}, or \cs{affiliation}.
 % These are low-level macros intended to be used by other macros
 % only inside a \env{titlepage} or \env{titlingpage},
@@ -22674,6 +22861,7 @@
 % \DescribeMacro{\thetitle}
 % \DescribeMacro{\theauthor}
 % \DescribeMacro{\thedate}
+% \DescribeMacro{\HTMLPageBottom}
 % \cs{thetitle}, \cs{theauthor}, and \cs{thedate} are available
 % if \pkg{titling} has been loaded, and are sanitized user-level
 % versions from which have been removed the \cs{thanks} and \cs{affiliation},
@@ -22683,13 +22871,11 @@
 % Thus, these commands are to be used in the main text whenever the user
 % wishes to refer to the document's title and such.  One practical use for this
 % is to place the authors at the bottom of each \HTML\ page, such as:
-%
-% \DescribeMacro{\HTMLPageBottom} \marg{text}
-% \begin{Verbatim}[gobble=2,frame=lines,obeytabs,tabsize=4]
+% \begin{sourceverb}
 % \HTMLPageBottom{
-% \begin{center}\textcopyright~2016 \theauthor\end{center}
+%   \begin{center}\textcopyright~2016 \theauthor\end{center}
 % }
-% \end{Verbatim}
+% \end{sourceverb}
 %
 % \cs{theauthor} does not work well if \pkg{authblk} is used.
 % \trouble[\cs{theauthor}, \pkg{authblk}]{theauthor=\cs{theauthor} and \pkg{authblk}}
@@ -23317,7 +23503,8 @@
 
 % \subsection{Attributions}
 
-% \begin{macro}{\attribution}
+% \begin{macro}{\attribution} \marg{name}
+%
 % For use with quote, quotation, verse:
 %
 % Ex: |"A quotation." \attribution{\textsc{Author Name}\\\textsl{Book Title}}|
@@ -28910,14 +29097,14 @@
 \newcommand*{\LWR at newautoidanchor}{%
 \ifnumcomp{\value{LWR at lateximagedepth}}{>}{0}%
 {}%
-{
+{%
     \ifbool{LWR at freezethisautoid}{}{%
         \addtocounter{LWR at thisautoid}{1}%
         \LWR at htmltag{a id="\LWR at print@mbox{autoid-\arabic{LWR at thisautoid}}"}%
             \LWR at htmltag{/a}%
     }%
+}%
 }
-}
 %    \end{macrocode}
 % \end{macro}
 
@@ -29079,7 +29266,7 @@
 % \changes{v0.58}{2018/06/07}{Improved print/\HTML\ output selection.}
 %    \begin{macrocode}
 \newcommand*{\LWR at HTML@caption at begin}[1]
-{
+{%
 \LWR at traceinfo{LWR at HTML@caption at begin}%
 %    \end{macrocode}
 % Keep par and minipage changes local:
@@ -30142,6 +30329,10 @@
 \let\textellipsis\LWR at origtextellipsis%
 \let\textless\LWR at origtextless%
 \let\textgreater\LWR at origtextgreater%
+%    \end{macrocode}
+% \changes{v0.70}{2019/03/28}{Fix: \cs{\&} in a lateximage.}
+%    \begin{macrocode}
+\let\&\LWR at origampersand%
 \LetLtxMacro\rmfamily\LWR at origrmfamily%
 \LetLtxMacro\sffamily\LWR at origsffamily%
 \LetLtxMacro\ttfamily\LWR at origttfamily%
@@ -30186,10 +30377,6 @@
 %    \begin{macrocode}
 \let\newline\LWR at orignewline%
 \LetLtxMacro\includegraphics\LWR at origincludegraphics%
-\let\TeX\LWR at origTeX%
-\let\LaTeX\LWR at origLaTeX%
-\let\LaTeXe\LWR at origLaTeXe%
-\renewcommand*{\Xe}{X\textsubscript{E}}%
 %    \end{macrocode}
 % \changes{v0.42}{2017/10/16}{Improved \cs{ensuremath}.}
 %    \begin{macrocode}
@@ -30390,13 +30577,13 @@
                 \LWR at origincludegraphics{\LWR at baselinename}%
             }
         }{
-            \PackageWarning{lwarp}{Load graphicx or graphics
+            \PackageWarningNoLine{lwarp}{Load graphicx or graphics
                 for improved SVG math baselines,}
             \newcommand*{\LWR at addbaselinemarker}{}
         }
     }
 }{% lwarp_baseline_marker.png or .eps is not present
-    \PackageWarning{lwarp}{File \LWR at baselinename\space is not installed alongside
+    \PackageWarningNoLine{lwarp}{File \LWR at baselinename\space is not installed alongside
         the lwarp-*.sty files, so SVG math baselines may not be accurate,}
     \newcommand*{\LWR at addbaselinemarker}{}
 }
@@ -31114,7 +31301,8 @@
 
 % \subsection{Equation environment}
 %
-% Remember existing \env{equation} environment:
+% Remember existing \env{equation} environment,
+% after redefined by \pkg{amsmath}, if loaded.
 %    \begin{macrocode}
 \AtBeginDocument{
 \let\LWR at origequation\equation
@@ -32461,7 +32649,14 @@
 }
 %    \end{macrocode}
 % \end{macro}
-%
+
+% If \pkg{inputtrc} was loaded before \pkg{lwarp},
+% as is usually done,
+% explicitly load the lwarp patches now:
+%    \begin{macrocode}
+\LWR at PreloadedPackage{inputtrc}
+%    \end{macrocode}
+
 % If \pkg{textcomp} was loaded before \pkg{lwarp},
 % perhaps as part of the font-related packages,
 % explicitly load the lwarp patches now:
@@ -32897,7 +33092,7 @@
 %
 %    \begin{macrocode}
 \AtEndPreamble{
-\RequirePackage{cleveref}
+    \RequirePackage{cleveref}
 }
 %    \end{macrocode}
 %
@@ -33504,8 +33699,11 @@
 % \changes{v0.36}{2017/08/15}{Fix: Handles width and horiz position.}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
 % \changes{v0.69}{2019/03/09}{Fix: Handle paren arg.}
+% \changes{v0.70}{2019/04/02}{Fix: Accept long arg.}
+% \changes{v0.70}{2019/04/02}{Fix: No width given.}
+% \changes{v0.70}{2019/04/02}{Fix: Ignore width of 0pt.}
 %    \begin{macrocode}
-\NewDocumentCommand{\LWR at HTML@makebox}{>{\SplitArgument{1}{,}}d() o o m}{%
+\NewDocumentCommand{\LWR at HTML@makebox}{>{\SplitArgument{1}{,}}d() o o +m}{%
 %    \end{macrocode}
 %
 % Build the style depending on arguments:
@@ -33521,15 +33719,20 @@
         }%
     }%
     {% [width]
-        \setlength{\LWR at tempwidth}{#2}%
-        \appto{\LWR at temptwo}{%
-            width:\LWR at printlength{\LWR at tempwidth} ; % space
+        \IfValueT{#2}% [width]
+        {%
+            \setlength{\LWR at tempwidth}{#2}%
+            \ifdimgreater{\LWR at tempwidth}{0pt}{%
+                \appto{\LWR at temptwo}{%
+                    width:\LWR at printlength{\LWR at tempwidth} ; % space
+                }%
+            }{}%
         }%
-        \IfValueT{#3}%
-        {% [width] [posn]
-            \LWR@@makebox at align{#3}%
-        }%
     }%
+    \IfValueT{#3}%
+    {% [width] [posn]
+        \LWR@@makebox at align{#3}%
+    }%
     \InlineClass[%
         \LWR at print@mbox{display:inline-block} ; %
         \LWR at temptwo%
@@ -33547,11 +33750,10 @@
 % \changes{v0.36}{2017/08/15}{Fix: Handles width and horiz position.}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
 % \changes{v0.69}{2019/03/09}{Fix: Handle paren arg.}
+% \changes{v0.70}{2019/04/02}{Fix: Accept long arg.}
 %
 %    \begin{macrocode}
-\LetLtxMacro\LWR at origframebox\framebox
-
-\NewDocumentCommand{\LWR at HTML@framebox}{d() o o m}{%
+\NewDocumentCommand{\LWR at HTML@framebox}{d() o o +m}{%
     \fbox{\makebox(#1)[#2][#3]{#4}}%
 }
 
@@ -33614,7 +33816,8 @@
 \LWR at traceinfo{HTML fbox}%
 \LWR at forceminwidth{\fboxrule}%
 \InlineClass[%
-\LWR at fboxstyle%
+    \LWR at print@mbox{display:inline-block} ; %
+    \LWR at fboxstyle%
 ]{fbox}{#1}%
 }
 %    \end{macrocode}
@@ -33781,17 +33984,10 @@
 %    \end{macrocode}
 % \end{environment}
 %
-%    \begin{macrocode}
-\end{warpHTML}
-%    \end{macrocode}
 %
-%
-%
 % \begin{macro}{\raisebox} \marg{raiselen} \oarg{height} \oarg{depth} \marg{text}
 % \changes{v0.57}{2018/05/28}{Improved print/\HTML\ output selection.}
 %    \begin{macrocode}
-\begin{warpHTML}
-
 \NewDocumentCommand{\LWR at HTML@raisebox}{m o o m}{%
 #4%
 }
@@ -35135,8 +35331,8 @@
 % Logos for \HTML\ and print modes:
 %
 % Some of these logos may be redefined in a later package,
-% so after loading other packages, and at the beginning of the document, their definitions
-% are finally \cs{let} in \cs{LWR at LwarpStart}.
+% so after loading other packages, and at the beginning of the document,
+% their definitions are finally set by \cs{LWR at formatted}.
 %
 % For \CSS\ conversions, see: \\
 % \url{http://edward.oconnor.cx/2007/08/tex-poshlet} \\
@@ -35143,20 +35339,58 @@
 % \url{http://nitens.org/taraborelli/texlogo} \\
 % and the spacing described in the \pkg{metafont} package documentation.
 %
-%
-%
-% \subsection{\HTML\ logos}
-%
 % \changes{v0.62}{2018/10/23}{Logos: CSS instead of \element{sup}, \element{sub}.}
 % \changes{v0.62}{2018/10/23}{Logos: Improved CSS.}
 % \changes{v0.62}{2018/10/23}{Logos: Made robust.}
+% \changes{v0.70}{2019/03/30}{Logos: Improved for \pkg{metalogox}, \env{lateximage}s.}
 %
+%
+% \changes{v0.62}{2018/10/23}{Logos: Fix for \XeTeX\ logo if \pkg{graphics} is not loaded.}
+%
+% \codeall
+%    \begin{macrocode}
+\begin{warpall}
+\newrobustcmd*{\Xe}
+    {X\hspace{-.1667em}\raisebox{-.5ex}{E}}
+
+\AtBeginDocument{
+\@ifpackageloaded{graphics}{
+    \@ifpackageloaded{metalogo}{}{
+        \renewrobustcmd*{\Xe}
+            {X\hspace{-.1667em}\raisebox{-.5ex}{\reflectbox{E}}}
+    }
+}{
+    \PackageWarningNoLine{lwarp}{Load graphicx or graphics
+        for improved XeTeX logo}
+}
+}
+
+\providerobustcmd*{\XeTeX}{\mbox{\Xe\hspace{-.125em}\TeX}}
+\providerobustcmd*{\XeLaTeX}{\mbox{\Xe\hspace{-.125em}\LaTeX}}
+\providerobustcmd*{\AmS}{%
+    \leavevmode\hbox{$\mathcal A\kern-.2em\lower.376ex%
+    \hbox{$\mathcal M$}\kern-.2em\mathcal S$}%
+}
+\newrobustcmd*{\LyX}{\textsf{LyX}}
+\providerobustcmd*{\LuaTeX}{\mbox{Lua\TeX}}
+\providerobustcmd*{\LuaLaTeX}{\mbox{Lua\LaTeX}}
+\providerobustcmd*{\BibTeX}{\mbox{B\textsc{ib}\TeX}}
+\providerobustcmd*{\MakeIndex}{\mbox{\textit{MakeIndex}}}
+\providerobustcmd*{\ConTeXt}{\mbox{Con\TeX{}t}}
+\providerobustcmd*{\MiKTeX}{\mbox{MiK\TeX}}
+\end{warpall}
+%    \end{macrocode}
+%
+%
+%
 % \codehtml
 %    \begin{macrocode}
 \begin{warpHTML}
 %    \end{macrocode}
-
-
+%
+% The print-mode versions of the following may be changed by \pkg{metalogo},
+% so their print formatting is recorded \cs{AtBeginDocument}.
+%
 % \begin{macro}{\TeX} \TeX
 % \nopagebreak
 %
@@ -35166,9 +35400,7 @@
 % \LaTeX, \LuaTeX, \ConTeXt, etc.
 % \changes{v0.42}{2017/10/20}{If \progcode{FormatWP} use explicit style.}
 %    \begin{macrocode}
-\LetLtxMacro\LWR at origTeX\TeX
-
-\newrobustcmd*{\LWR at TeX}
+\newrobustcmd*{\LWR at HTML@TeX}
 {%
     \InlineClass{latexlogofont}%
     {%
@@ -35180,6 +35412,7 @@
         }%
     }%
 }
+\AtBeginDocument{\LWR at formatted{TeX}}% may have been patched by metalogo
 %    \end{macrocode}
 % \end{macro}
 %
@@ -35187,9 +35420,7 @@
 % \changes{v0.42}{2017/10/20}{If \progcode{FormatWP} use explicit style.}
 % \begin{macro}{\LaTeXe} \LaTeX, \LaTeXe
 %    \begin{macrocode}
-\LetLtxMacro\LWR at origLaTeX\LaTeX
-
-\newrobustcmd*{\LWR at LaTeX}
+\newrobustcmd*{\LWR at HTML@LaTeX}
 {%
     \InlineClass{latexlogofont}%
     {%
@@ -35204,9 +35435,10 @@
     }%
 }
 
-\LetLtxMacro\LWR at origLaTeXe\LaTeXe
+\AtBeginDocument{\LWR at formatted{LaTeX}}% may have been patched by metalogo
 
-\renewrobustcmd*{\LaTeXe}
+
+\newrobustcmd*{\LWR at HTML@LaTeXe}
 {%
     \LaTeX%
     \InlineClass{latexlogofont}{%
@@ -35216,6 +35448,7 @@
         }%
     }%
 }
+\AtBeginDocument{\LWR at formatted{LaTeXe}}% may have been patched by metalogo
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -35224,8 +35457,11 @@
 % \begin{macro}{\LuaTeX}
 % \begin{macro}{\LuaLaTeX} \LuaTeX, \LuaLaTeX
 %    \begin{macrocode}
-\newrobustcmd*{\LWR at LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX}
-\newrobustcmd*{\LWR at LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX}
+\newrobustcmd*{\LWR at HTML@LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX}
+\AtBeginDocument{\LWR at formatted{LuaTeX}}% may have been patched by metalogo
+
+\newrobustcmd*{\LWR at HTML@LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX}
+\AtBeginDocument{\LWR at formatted{LuaLaTeX}}% may have been patched by metalogo
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -35241,23 +35477,28 @@
 % |xelatexlogo| is a \CSS\ class which aligns the backwards E in \XeLaTeX{} and spaces
 % \LaTeX{} appropriately.
 %    \begin{macrocode}
-\newrobustcmd*{\Xe}
+\newrobustcmd*{\LWR at HTML@Xe}
     {%
         X%
         \InlineClass{xelatexlogosub}{\HTMLunicode{18e}}%
     }
+\AtBeginDocument{\LWR at formatted{Xe}}% may have been patched by metalogo
 
-\newrobustcmd*{\LWR at XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX}
+\newrobustcmd*{\LWR at HTML@XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX}
+\AtBeginDocument{\LWR at formatted{XeTeX}}% may have been patched by metalogo
 
-\newrobustcmd*{\LWR at XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX}
+\newrobustcmd*{\LWR at HTML@XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX}
+\AtBeginDocument{\LWR at formatted{XeLaTeX}}% may have been patched by metalogo
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \begin{macro}{\ConTeXt} \ConTeXt
 %    \begin{macrocode}
-\newrobustcmd*{\LWR at ConTeXt}
-{\InlineClass{latexlogofont}{Con}\TeX{}%
-\InlineClass{latexlogofont}{t}}
+\newrobustcmd*{\LWR at HTML@ConTeXt}{%
+    \InlineClass{latexlogofont}{Con}\TeX{}%
+    \InlineClass{latexlogofont}{t}%
+}
+\LWR at formatted{ConTeXt}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -35265,11 +35506,13 @@
 % \begin{macro}{\BibTeX}
 % \begin{macro}{\MakeIndex} \BibTeX, \MakeIndex
 %    \begin{macrocode}
-\providerobustcmd*{\BibTeX}
-{\InlineClass{latexlogofont}{B\textsc{ib}}\TeX}
+\newrobustcmd*{\LWR at HTML@BibTeX}
+    {\InlineClass{latexlogofont}{B\textsc{ib}}\TeX}
+\LWR at formatted{BibTeX}
 
-\newrobustcmd*{\MakeIndex}
-{\InlineClass{latexlogofont}{\textit{MakeIndex}}}
+\newrobustcmd*{\LWR at HTML@MakeIndex}
+    {\InlineClass{latexlogofont}{\textit{MakeIndex}}}
+\LWR at formatted{MakeIndex}
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -35281,7 +35524,7 @@
 % |amslogo| is a \CSS\ class used for the \AmS\ logo.
 %    \begin{macrocode}
 \AtBeginDocument{%
-\DeclareDocumentCommand{\AmS}{}
+\newrobustcmd*{\LWR at HTML@AmS}
 {%
     \InlineClass{amslogo}{%
         \textit{%
@@ -35291,6 +35534,7 @@
         }%
     }%
 }%
+\LWR at formatted{AmS}
 }
 %    \end{macrocode}
 % \end{macro}
@@ -35298,7 +35542,8 @@
 %
 % \begin{macro}{\MiKTeX} \MiKTeX
 %    \begin{macrocode}
-\newrobustcmd*{\MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX}
+\newrobustcmd*{\LWR at HTML@MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX}
+\LWR at formatted{MiKTeX}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -35308,7 +35553,8 @@
 %
 % |lyxlogo| is a \CSS\ class used for the \LyX\ logo.
 %    \begin{macrocode}
-\newrobustcmd*{\LyX}{\InlineClass{lyxlogo}{LyX}}
+\newrobustcmd*{\LWR at HTML@LyX}{\InlineClass{lyxlogo}{LyX}}
+\LWR at formatted{LyX}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -35318,45 +35564,8 @@
 %    \end{macrocode}
 %
 %
-%
-% \subsection{Print logos}
-%
-% \changes{v0.62}{2018/10/23}{Logos: Fix for \XeTeX\ logo if \pkg{graphics} is not loaded.}
-%
-% \codeprint
-%    \begin{macrocode}
-\begin{warpprint}
 
-\newrobustcmd*{\XeTeXrevE}
-    {\hspace{-.1667em}\raisebox{-.5ex}{E}\hspace{-.125em}}
 
-\AtBeginDocument{
-\@ifpackageloaded{graphics}{
-    \renewrobustcmd*{\XeTeXrevE}
-        {\hspace{-.1667em}\raisebox{-.5ex}{\reflectbox{E}}\hspace{-.125em}}
-}{
-    \PackageWarning{lwarp}{Load graphicx or graphics
-        for improved XeTeX logo}
-}
-}
-
-\providerobustcmd*{\XeTeX}{\mbox{X\XeTeXrevE\TeX}}
-\providerobustcmd*{\XeLaTeX}{\mbox{X\XeTeXrevE\LaTeX}}
-\providerobustcmd*{\AmS}{%
-    \leavevmode\hbox{$\mathcal A\kern-.2em\lower.376ex%
-    \hbox{$\mathcal M$}\kern-.2em\mathcal S$}%
-}
-\newrobustcmd*{\LyX}{\textsf{LyX}}
-\providerobustcmd*{\LuaTeX}{\mbox{Lua\TeX}}
-\providerobustcmd*{\LuaLaTeX}{\mbox{Lua\LaTeX}}
-\providerobustcmd*{\BibTeX}{\mbox{B\textsc{ib}\TeX}}
-\providerobustcmd*{\MakeIndex}{\mbox{\textit{MakeIndex}}}
-\providerobustcmd*{\ConTeXt}{\mbox{Con\TeX{}t}}
-\providerobustcmd*{\MiKTeX}{\mbox{MiK\TeX}}
-\end{warpprint}
-%    \end{macrocode}
-
-
 % \section{\cs{AtBeginDocument}, \cs{AtEndDocument}}
 
 % \codehtml
@@ -36758,78 +36967,97 @@
 }% not mathjax
 %    \end{macrocode}
 %
-% The following \AmS\ environments are more easily patched in-place:
+% The following \AmS\ environments are patched in-place:
 %
 % \changes{v0.44}{2017/11/16}{AMS environments: Fix: Groups for \env{lateximage}s.}
 % \changes{v0.50}{2018/03/01}{AMS environments: Improved \SVG\ math display.}
 % \changes{v0.51}{2018/03/11}{AMS environments: Fix: \cs{addcontentsline} inside \SVG\ math.  Provides an autoid anchor.}
 % \changes{v0.67}{2019/02/17}{AMS environments: Added \pkg{xfakebold} support.}
+% \changes{v0.70}{2019/03/29}{AMS environments: Refactored.}
 %
-% \begin{environment}{multline}
+%
+% \begin{noindmacro}{\LWR at amsmathenv@@before} \marg{environment name}
+%
+% Embeds the environment inside a \env{lateximage}.
 %    \begin{macrocode}
-\BeforeBeginEnvironment{multline}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \booltrue{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
+\newcommand*{\LWR at amsmathenv@@before}[1]{%
     \begin{BlockClass}{displaymathnumbered}
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{multline}]
+    \begin{lateximage}[\LWR at amsmathbodynumbered{#1}]
     \LWR at applyxfakebold%
 }
+%    \end{macrocode}
+% \end{noindmacro}
+%
+%
+% \begin{noindmacro}{\LWR at amsmathenv@before} \marg{environment name}
+%
+% Embeds the environment with \brand{MathJax} or a \env{lateximage}.
+%    \begin{macrocode}
+\newcommand*{\LWR at amsmathenv@before}[1]{%
+    \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
+    {
+        \LWR at syncmathjax
+        \boolfalse{LWR at amsmultline}
+        \ifstrequal{#1}{multline}{\booltrue{LWR at amsmultline}}{}
+        \ifstrequal{#1}{multline*}{\booltrue{LWR at amsmultline}}{}
+%    \end{macrocode}
+% \pkg{autonum}'s ``+'' environments are not supported by \brand{MathJax}.
+%    \begin{macrocode}
+        \LWR at beginhideamsmath
+    }
+    {
+        \LWR at amsmathenv@@before{multline}
+    }
 }
-
-\AfterEndEnvironment{multline}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \boolfalse{LWR at amsmultline}
-    \LWR at addmathjax{multline}{\the\@envbody}
+%    \end{macrocode}
+% \end{noindmacro}
+%
+%
+% \begin{noindmacro}{\LWR at amsmathenv@@after}
+%
+% Embeds the environment inside a \env{lateximage}.
+%    \begin{macrocode}
+\newcommand*{\LWR at amsmathenv@@after}{%
+    \end{lateximage}\end{BlockClass}
 }
-{\end{lateximage}\end{BlockClass}}
-
+%    \end{macrocode}
+% \end{noindmacro}
+%
+%
+% \begin{noindmacro}{\LWR at amsmathenv@after} \marg{environment name}
+%
+% Embeds the environment with \brand{MathJax} or a \env{lateximage}.
+%    \begin{macrocode}
+\newcommand*{\LWR at amsmathenv@after}[1]{%
+    \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
+    {
+        \LWR at endhideamsmath
+        \boolfalse{LWR at amsmultline}
+        \LWR at addmathjax{#1}{\the\@envbody}
+    }
+    {\LWR at amsmathenv@@after}
 }
 %    \end{macrocode}
+% \end{noindmacro}
+%
+%
+% \begin{environment}{multline}
+%    \begin{macrocode}
+\BeforeBeginEnvironment{multline}{\LWR at amsmathenv@before{multline}}
+
+\AfterEndEnvironment{multline}{\LWR at amsmathenv@after{multline}}
+%    \end{macrocode}
 % \end{environment}
 
 
 % \begin{environment}{multline*}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{multline*}{
+\BeforeBeginEnvironment{multline*}{\LWR at amsmathenv@before{multline*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \booltrue{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{multline*}]
-    \LWR at applyxfakebold%
-}
-}
+\AfterEndEnvironment{multline*}{\LWR at amsmathenv@after{multline*}}
 
-\AfterEndEnvironment{multline*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \boolfalse{LWR at amsmultline}
-    \LWR at addmathjax{multline*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
 %    \end{macrocode}
 % \end{environment}
 
@@ -36836,65 +37064,17 @@
 
 % \begin{environment}{gather}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{gather}{
+\BeforeBeginEnvironment{gather}{\LWR at amsmathenv@before{gather}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{gather}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{gather}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{gather}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{gather}{\LWR at amsmathenv@after{gather}}
 %    \end{macrocode}
 % \end{environment}
 
 % \begin{environment}{gather*}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{gather*}{
+\BeforeBeginEnvironment{gather*}{\LWR at amsmathenv@before{gather*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{gather*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{gather*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{gather*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{gather*}{\LWR at amsmathenv@after{gather*}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -36901,33 +37081,9 @@
 
 % \begin{environment}{align}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{align}{
+\BeforeBeginEnvironment{align}{\LWR at amsmathenv@before{align}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{align}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{align}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{align}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{align}{\LWR at amsmathenv@after{align}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -36934,33 +37090,9 @@
 
 % \begin{environment}{align*}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{align*}{
+\BeforeBeginEnvironment{align*}{\LWR at amsmathenv@before{align*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{align*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{align*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{align*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{align*}{\LWR at amsmathenv@after{align*}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -36967,33 +37099,9 @@
 
 % \begin{environment}{flalign}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{flalign}{
+\BeforeBeginEnvironment{flalign}{\LWR at amsmathenv@before{flalign}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{flalign}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{flalign}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{flalign}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{flalign}{\LWR at amsmathenv@after{flalign}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -37000,33 +37108,9 @@
 
 % \begin{environment}{flalign*}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{flalign*}{
+\BeforeBeginEnvironment{flalign*}{\LWR at amsmathenv@before{flalign*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{flalign*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{flalign*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{flalign*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{flalign*}{\LWR at amsmathenv@after{flalign*}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -37034,33 +37118,9 @@
 % \begin{environment}{alignat}
 % \changes{v0.51}{2018/03/11}{Fix: Added.}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{alignat}{
+\BeforeBeginEnvironment{alignat}{\LWR at amsmathenv@before{alignat}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{alignat}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{alignat}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{alignat}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{alignat}{\LWR at amsmathenv@after{alignat}}
 %    \end{macrocode}
 % \end{environment}
 
@@ -37067,33 +37127,9 @@
 
 % \begin{environment}{alignat*}
 %    \begin{macrocode}
-\BeforeBeginEnvironment{alignat*}{
+\BeforeBeginEnvironment{alignat*}{\LWR at amsmathenv@before{alignat*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{alignat*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{alignat*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{alignat*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{alignat*}{\LWR at amsmathenv@after{alignat*}}
 %    \end{macrocode}
 % \end{environment}
 %
@@ -38146,16 +38182,91 @@
 \renewcommand*{\authorcr}{\protect\LWR at newlinebr}
 %    \end{macrocode}
 %
+% \iffalse
+%</authblk>
+% \fi
 %
 %
+%
+%
+%
 % \iffalse
-%</authblk>
+%<*autonum>
 % \fi
 %
+% \part{lwarp-autonum.sty}
 %
+% \section{autonum}
 %
+% \DescribePackage{autonum}
+% \pkg{autonum} is ignored.
 %
+% All equations are numbered in \HTML\ output.
+% \trouble[numbering]{autonum=\pkg{autonum}}
+%
+% \brand{MathJax} does not support the ``+'' environments.
+%
+% \changes{v0.70}{2019/03/28}{\pkg{autonum}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackageDrop{autonum}[2015/01/18]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\RequirePackage{amsmath}
+
+
+\newenvironment{equation+}{\equation}{\endequation}
+
+
+\newenvironment{gather+}{\gather}{\endgather}
+
+\BeforeBeginEnvironment{gather+}{\LWR at amsmathenv@@before{gather+}}
+
+\AfterEndEnvironment{gather+}{\LWR at amsmathenv@@after}
+
+
+\newenvironment{multline+}{\multline}{\endmultline}
+
+\BeforeBeginEnvironment{multline+}{\LWR at amsmathenv@@before{multline+}}
+
+\AfterEndEnvironment{multline+}{\LWR at amsmathenv@@after}
+
+
+\newenvironment{flalign+}{\flalign}{\endflalign}
+
+\BeforeBeginEnvironment{flalign+}{\LWR at amsmathenv@@before{flaline+}}
+
+\AfterEndEnvironment{flalign+}{\LWR at amsmathenv@@after}
+
+
+\newenvironment{align+}{\align}{\endalign}
+
+\BeforeBeginEnvironment{align+}{\LWR at amsmathenv@@before{aline+}}
+
+\AfterEndEnvironment{align+}{\LWR at amsmathenv@@after}
+
+
+\newenvironment{alignat+}{\alignat}{\endalignat}
+
+\BeforeBeginEnvironment{alignat+}{\LWR at amsmathenv@@before{alineat+}}
+
+\AfterEndEnvironment{alignat+}{\LWR at amsmathenv@@after}
+
+
+\newenvironment{split+}{\split}{\endsplit}
+%    \end{macrocode}
+%
 % \iffalse
+%</autonum>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*axessibility>
 % \fi
 %
@@ -39626,7 +39737,11 @@
         \let\caption at makeanchor\@firstofone
       \fi
       \@makecaption{\csname fnum@#1\endcsname}%
-                   {\ignorespaces\caption at makeanchor{#3}}\par
+                   {\ignorespaces\caption at makeanchor{#3}}%
+%    \end{macrocode}
+% \changes{v0.70}{2019/03/24}{\pkg{caption}: Fix: Extra par tags.}
+%    \begin{macrocode}
+% \par
       \caption at if@minipage\@minipagetrue\@minipagefalse}%
   \caption at end%
 }
@@ -39806,8 +39921,63 @@
 %
 %
 %
+% \iffalse
+%<*changelayout>
+% \fi
 %
+% \part{lwarp-changelayout.sty}
+%
+% \section{changelayout}
+%
+% \credits{Ahmed Musa}
+%
+% \DescribePackage{changelayout}
+% \pkg{changelayout} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.70}{2019/04/02}{\pkg{changelayout}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{changelayout}[2009/10/07]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\renewrobustcmd\cpl at backtodefaults{}
+
+\renewrobustcmd\cpl at checkifoddpage{%
+  \cpl at oddpagefalse%
+}
+
+\renewrobustcmd\changepagelayout[1]{%
+  \setkeys[KV]{changelay}{#1}%
+}
+
+\renewrobustcmd{\changetextlayout}[1]{\changepagelayout{#1}}
+
+\renewrobustcmd\adjustpagelayout[1]{%
+  \setkeys[KV at X]{changelay}{#1}%
+}
+
+\renewrobustcmd{\adjusttextlayout}[1]{\adjustpagelayout{#1}}
+
+\renewrobustcmd\adjusttextwidth[1]{%
+  \setkeys[KV]{changelay}{#1}%
+    \begin{BlockClass}[color:\LWR at colorstyle{named}{\cpl at textcolor}]{changelayout}
+        \color{\cpl at textcolor}%
+        \cpl at content
+    \end{BlockClass}
+}
+%    \end{macrocode}
+%
 % \iffalse
+%</changelayout>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*changepage>
 % \fi
 
@@ -39871,63 +40041,126 @@
 % \pkg{changes} is patched for use by \pkg{lwarp}.
 %
 % \changes{v0.67}{2019/02/15}{\pkg{changes}: Added.}
+% \changes{v0.70}{2019/03/24}{\pkg{changes}: Updated to v3.1.2.}
 %
 % \codehtml
 %
 %    \begin{macrocode}
-\LWR at ProvidesPackagePass{changes}[2015/04/27]
+\LWR at ProvidesPackagePass{changes}[2019/01/26]
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-\xpatchcmd{\Changes at output}
-    {#1}
-    {\LWR at textcurrentcolor{#1}}
+\renewcommand{\ChangesListline}[4]{%
+    \IfSubStr{\Changes at loc@show}{#1}{%
+        \LWR at startpars%
+        #2: #3 \qquad
+        \nameref{autopage-#4}%
+        \LWR at stoppars%
+    }{}%
+}
+
+\renewcommand{\Changes at summaryline}[4]{%
+    \IfSubStr{\Changes at loc@show}{#1}{%
+        \ifthenelse{\not\equal{\Changes at loc@style}{compactsummary} \or #2 > 0}%
+            {%
+                #3:~#2#4%
+            }{}%
+    }{}%
+}
+
+\xpatchcmd{\listofchanges}
+    {{\changesauthorname: \changesanonymousname}}
+    {{\LWR at textcurrentcolor{\changesauthorname: \changesanonymousname}}}
     {}
-    {\LWR at patcherror{changes}{Changes at output}}
+    {\LWR at patcherror{changes}{listofchanges A}}
 
 \xpatchcmd{\listofchanges}
-    {
-        \ifthenelse{\equal{\Changes at InID}{\@empty}}
-        {\changesauthorname: \changesanonymousname}
-        {%
-        \changesauthorname: \Changes at InID
-        \ifthenelse{\equal{\Changes at InName}{\@empty}}
-        {}
-        { (\Changes at InName)}
-        }
-    }
-    {
-        \LWR at textcurrentcolor{% lwarp
-            \ifthenelse{\equal{\Changes at InID}{\@empty}}
-            {\changesauthorname: \changesanonymousname}
-            {%
-            \changesauthorname: \Changes at InID
-            \ifthenelse{\equal{\Changes at InName}{\@empty}}
-            {}
-            { (\Changes at InName)}
-            }
-        }
-    }
+    {\changesauthorname: \Changes at InID}
+    {\LWR at textcurrentcolor{\changesauthorname: \Changes at InID}}
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges B}}
 
 \xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+    {(\Changes at InName)}
+    {\LWR at textcurrentcolor{(\Changes at InName)}}
     {}
-    {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges C}}
 
 \xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+    {\parbox{\Changes at summary@width}}
     {}
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges D}}
 
-\xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+\xpatchcmd{\Changes at Markup@comment}
+    {%
+        \ifthenelse{\isAnonymous{#2}}%
+            {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+            {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+        #1%
+    }
+    {%
+        \LWR at textcurrentcolor{%         lwarp
+        \ifthenelse{\isAnonymous{#2}}%
+            {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+            {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+        #1%
+        }%                              lwarp
+    }
     {}
+    {\LWR at patcherror{changes}{\Changes at Markup@comment A}}
+
+\xpatchcmd{\Changes at Markup@comment}
+    {%
+        \uwave{%
+            \ifthenelse{\isAnonymous{#2}}%
+                {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+                {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+            #1%
+        }%
+    }
+    {%
+        \LWR at textcurrentcolor{%         lwarp
+        \uwave{%
+            \ifthenelse{\isAnonymous{#2}}%
+                {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+                {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+            #1%
+        }%
+        }%                              lwarp
+    }
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{\Changes at Markup@comment B}}
+
+\xpatchcmd{\Changes at output}
+    {\Changes at Markup@author{\Changes at output@author{#2}{left}}}
+    {\LWR at textcurrentcolor{\Changes at Markup@author{\Changes at output@author{#2}{left}}}}
+    {}
+    {\LWR at patcherror{changes}{Changes at output A}}
+
+\xpatchcmd{\Changes at output}
+    {%
+        \ifthenelse{\equal{#1}{added}}{\Changes at Markup@added{#3}}{}%
+        \ifthenelse{\equal{#1}{deleted}}{\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{replaced}}{{\Changes at Markup@added{#3}}\allowbreak\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{highlight}}{\Changes at Markup@highlight{#3}}{}%
+    }
+    {%
+        \LWR at textcurrentcolor{%
+        \ifthenelse{\equal{#1}{added}}{\Changes at Markup@added{#3}}{}%
+        \ifthenelse{\equal{#1}{deleted}}{\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{replaced}}{{\Changes at Markup@added{#3}}\allowbreak\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{highlight}}{\Changes at Markup@highlight{#3}}{}%
+        }%
+    }
+    {}
+    {\LWR at patcherror{changes}{Changes at output B}}
+
+\xpatchcmd{\Changes at output}
+    {\Changes at Markup@author{\Changes at output@author{#2}{right}}}
+    {\LWR at textcurrentcolor{\Changes at Markup@author{\Changes at output@author{#2}{right}}}}
+    {}
+    {\LWR at patcherror{changes}{Changes at output C}}
 %    \end{macrocode}
 %
 % \iffalse
@@ -49263,8 +49496,51 @@
 %
 %
 %
+% \iffalse
+%<*inputtrc>
+% \fi
 %
+% \part{lwarp-inputtrc.sty}
+%
+% \section{inputtrc}
+%
+% \credits{Uwe L\"uck}
+%
+% \DescribePackage{inputtrc}
+% \pkg{inputtrc} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.70}{2019/03/30}{\pkg{inputtrc}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{inputtrc}[2012/10/10]
+%    \end{macrocode}
+%
+% Patched to remove extraneous spaces,
+% which sometimes showed up in logos inside a \env{lateximage}.
+%    \begin{macrocode}
+\renewcommand*{\IT at prim@input}[1]{%
+  \typeout{\IT at indent\IT at currfile INPUTTING #1}%
+%% ... TODO: option to write to `.log' only.
+  \xdef\IT at filestack{{\IT at currfile}\IT at filestack}%
+  \xdef\IT at currfile{#1}%
+  \expandafter \gdef\expandafter \IT at indent\expandafter{%
+    \IT at indent \IT at indent@unit}%                lwarp
+  \@@input#1%                                   lwarp
+  \expandafter\IT at pop@indent\IT at indent   \@nil% lwarp
+  \expandafter\IT at pop@file  \IT at filestack\@nil% lwarp
+  \IT at maybe@returnmessage%% v0.2                lwarp
+}
+%    \end{macrocode}
+%
 % \iffalse
+%</inputtrc>
+% \fi
+%
+%
+%
+% \iffalse
 %<*intopdf>
 % \fi
 %
@@ -51747,6 +52023,61 @@
 %
 %
 % \iffalse
+%<*mathtools>
+% \fi
+%
+% \part{lwarp-mathtools.sty}
+%
+% \section{mathtools}
+%
+% \credits{Morten Høgholm, Lars Madsen}
+%
+% \DescribePackage{mathtools}
+% \pkg{mathtools} is patched for use by \pkg{lwarp}.
+%
+% \optn{showonlyrefs} and \optn{mathic} are disabled.
+% \trouble[numbering, italics]{mathtools=\pkg{mathtools}}
+%
+% \changes{v0.70}{2019/03/28}{\pkg{mathtools}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{mathtools}[2018/01/08]
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\RequirePackage{graphicx}
+%    \end{macrocode}
+%    \begin{macrocode}
+\MHInternalSyntaxOn
+%    \end{macrocode}
+%
+% Forces \optn{showonlyrefs} off because \pkg{lwarp} uses \pkg{cleveref},
+% which is not compatible with \optn{showonlyrefs}.
+%    \begin{macrocode}
+\renewcommand*\MT_showonlyrefs_true:{\MT_showonlyrefs_false:}
+\mathtoolsset{showonlyrefs=false}
+%    \end{macrocode}
+%
+% Forces math italic correction off.
+% Not patched for \pkg{lwarp}.
+%    \begin{macrocode}
+\renewcommand*{\MT_mathic_true:}{\MT_mathic_false:}
+\mathtoolsset{mathic=false}
+%    \end{macrocode}
+%    \begin{macrocode}
+\MHInternalSyntaxOff
+%    \end{macrocode}
+%
+% \iffalse
+%</mathtools>
+% \fi
+%
+%
+%
+%
+% \iffalse
 %<*mcaption>
 % \fi
 
@@ -52412,23 +52743,31 @@
 % \credits{Andrew Gilbert Moschou}
 %
 % \DescribePackage{metalogo}
-% \pkg{metalogo} is emulated.
+% \pkg{metalogo} is used in print mode, and emulated in \HTML.
 %
 % \changes{v0.38}{2017/08/25}{\pkg{metalogo}: Added.}
+% \changes{v0.70}{2019/03/29}{\pkg{metalogo}: Used in print mode.}
 %
 % \codehtml
 %
 %    \begin{macrocode}
-\LWR at ProvidesPackageDrop{metalogo}[2010/05/29]
+\LWR at ProvidesPackagePass{metalogo}[2010/05/29]
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-\newcommand\setlogokern[2]{}
-\newcommand\setlogodrop[2][XeTeX]{}
-\newcommand\setLaTeXa[1]{}
-\newcommand\setLaTeXee[1]{}
-\newcommand\seteverylogo[1]{}
-\newcommand\everylogo[1]{}
+\newcommand*{\LWR at HTML@setlogokern}[2]{}
+\newcommand*{\LWR at HTML@setlogodrop}[2][XeTeX]{}
+\newcommand*{\LWR at HTML@setLaTeXa}[1]{}
+\newcommand*{\LWR at HTML@setLaTeXee}[1]{}
+\newcommand*{\LWR at HTML@seteverylogo}[1]{}
+\newcommand*{\LWR at HTML@everylogo}[1]{}
+
+\LWR at formatted{setlogokern}
+\LWR at formatted{setlogodrop}
+\LWR at formatted{setLaTeXa}
+\LWR at formatted{setLaTeXee}
+\LWR at formatted{seteverylogo}
+\LWR at formatted{everylogo}
 %    \end{macrocode}
 %
 % \iffalse
@@ -52437,8 +52776,45 @@
 %
 %
 %
+% \iffalse
+%<*metalogox>
+% \fi
 %
+% \part{lwarp-metalogox.sty}
+%
+% \section{metalogox}
+%
+% \credits{Brian Dunn}
+%
+% \DescribePackage{metalogox}
+% \pkg{metalogox} is patched for use by \pkg{lwarp}.
+%
+% \changes{v0.70}{2019/03/30}{\pkg{metalogox}: Added.}
+%
+% \codehtml
+%
+%    \begin{macrocode}
+\LWR at ProvidesPackagePass{metalogox}[2019/01/20]
+%    \end{macrocode}
+%
+% \cs{AtBeginDocument}, adjust the logo setting according to the font
+% which is active at that moment.
+%    \begin{macrocode}
+\AtBeginDocument{
+    \let\LWR at metalogox@currentformatting\LWR at formatting
+    \renewcommand*{\LWR at formatting}{print}%
+    \autoadjustlogos*
+    \let\LWR at formatting\LWR at metalogox@currentformatting
+}
+%    \end{macrocode}
+%
 % \iffalse
+%</metalogox>
+% \fi
+%
+%
+%
+% \iffalse
 %<*mhchem>
 % \fi
 %
@@ -52452,17 +52828,28 @@
 % \DescribePackage{mhchem}
 % \pkg{mhchem} is patched for use by \pkg{lwarp}.
 %
-% \pkg{mhchem} expressions are converted to \SVG\ math.
+% Without \brand{MathJax}, \pkg{mhchem} expressions are converted to \SVG\ math.
+% \margintag{without \brand{MathJax}}
 % Inline expressions use hashed filenames to allow reuse,
 % and assume that any \pkg{mhchem} options are global.
 %
-% The \brand{MathJax} \pkg{mhchem} extension is not yet used.
-% \trouble[\brand{MathJax} and \pkg{mhchem}]{MathJax=\brand{MathJax}>mhchem=\pkg{mhchem}}
+% For \brand{MathJax}, the \pkg{mhchem} extension is used if
+% \trouble{MathJax=\brand{MathJax}>mhchem=\pkg{mhchem}}
 % \trouble{mhchem=\pkg{mhchem}>MathJax=\brand{MathJax}}
-% If \brand{MathJax} is used for math in the rest of the document,
-% \pkg{lwarp} converts standalone \pkg{mhchem}
-% expressions into \SVG\ math images, but expressions inside math
-% must be placed between \cs{displaymathother} and \cs{displaymathnormal}:
+% \margintag{\brand{MathJax} with \pkg{mhchem} extension}
+% the \pkg{mhchem} expression is used inside a math expression:
+% \begin{sourceverb}
+% $\ce{C6H5-CHO}$
+% \end{sourceverb}
+%
+% If \emph{not} used inside a math expression, \pkg{lwarp} converts standalone \pkg{mhchem}
+% \marginpar{not inside math}
+% expressions into \SVG\ math images.
+%
+% If the \brand{MathJax} \pkg{mhchem} extension is not used,
+% \margintag{\brand{MathJax} without \pkg{mhchem} extension}
+% expressions inside math must be placed
+% between \cs{displaymathother} and \cs{displaymathnormal}:
 % \begin{sourcedisplay}
 % \cs{displaymathother} \\
 % \cs{[} \cs{ce}\{ \dots\ \} \cs{]}  \qquad \dots \qquad \$ \cs{ce} \{ \dots\ \} \$ \\
@@ -52469,7 +52856,8 @@
 % \cs{displaymathnormal}
 % \end{sourcedisplay}
 %
-% When producing \HTML\ output, \pkg{lwarp} does not support
+% When producing \HTML\ output without the \brand{MathJax} \pkg{mhchem} extension,
+% \pkg{lwarp} does not support
 % \trouble[nested math]{mhchem=\pkg{mhchem}>nested dollar signs}
 % the use of nested dollar signs in \pkg{mhchem} expressions.
 % \gindex{array>mhchem=\pkg{mhchem}}
@@ -60199,6 +60587,7 @@
 % \changes{v0.42}{2017/10/13}{\pkg{textcomp}: Improved \cs{interrobangdown}.}
 % \changes{v0.54}{2018/04/08}{\pkg{textcomp}: Fix for \cs{textperthousand}.}
 % \changes{v0.58}{2018/06/07}{\pkg{textcomp}: Improved print/\HTML\ output selection.}
+% \changes{v0.70}{2019/04/03}{\pkg{textcomp}: Fix for \cs{textinterrobang}.}
 %
 % \codehtml
 %
@@ -60231,6 +60620,7 @@
 \newcommand*{\LWR at HTML@textnaira}{\HTMLunicode{20A6}}
 \newcommand*{\LWR at HTML@textpeso}{\HTMLunicode{20B1}}
 \newcommand*{\LWR at HTML@textrecipe}{\HTMLunicode{211E}}
+\newcommand*{\LWR at HTML@textinterrobang}{\HTMLunicode{203D}}
 \newcommand*{\LWR at HTML@textinterrobangdown}{\HTMLunicode{2E18}}
 \newcommand*{\LWR at HTML@textperthousand}{\HTMLunicode{2030}}
 \newcommand*{\LWR at HTML@textpertenthousand}{\HTMLunicode{2031}}
@@ -60258,6 +60648,7 @@
 \newcommand*{\LWR at HTML@textnaira}{₦}
 \newcommand*{\LWR at HTML@textpeso}{₱}
 \newcommand*{\LWR at HTML@textrecipe}{℞}
+\newcommand*{\LWR at HTML@textinterrobang}{‽}
 \newcommand*{\LWR at HTML@textinterrobangdown}{⸘}
 \newcommand*{\LWR at HTML@textperthousand}{‰}
 \newcommand*{\LWR at HTML@textpertenthousand}{‱}
@@ -60279,6 +60670,7 @@
 \LWR at formatted{textnaira}
 \LWR at formatted{textpeso}
 \LWR at formatted{textrecipe}
+\LWR at formatted{textinterrobang}
 \LWR at formatted{textinterrobangdown}
 \LWR at formatted{textperthousand}
 \LWR at formatted{textpertenthousand}
@@ -60346,6 +60738,7 @@
     \renewcommand*{\textnaira}{}%
     \renewcommand*{\textpeso}{}%
     \renewcommand*{\textrecipe}{}%
+    \renewcommand*{\textinterrobang}{}%
     \renewcommand*{\textinterrobangdown}{}%
     \renewcommand*{\textperthousand}{}%
     \renewcommand*{\textpertenthousand}{}%
@@ -60449,6 +60842,7 @@
 % \credits{Norman Gray}
 %
 % \changes{v0.20}{2017/01/11}{\pkg{textpos}: Added.}
+% \changes{v0.70}{2019/03/28}{\pkg{textpos}: Added optional arg to \env{textblock}.}
 %
 % \DescribePackage{textpos}
 % \pkg{textpos} is emulated.
@@ -60459,7 +60853,7 @@
 %    \end{macrocode}
 
 %    \begin{macrocode}
-\NewDocumentEnvironment{textblock}{m r()}{}{}
+\NewDocumentEnvironment{textblock}{m o r()}{}{}
 \NewDocumentEnvironment{textblock*}{m o r()}{}{}
 \newcommand*{\TPGrid}[3][]{}
 \NewDocumentCommand{\TPMargin}{s o}{}
@@ -64727,6 +65121,7 @@
 \NewDocumentCommand{\LWR at HTML@textcolor}{o m m}{%
 \begingroup%
 %    \end{macrocode}
+%
 % Set the \PDF\ color, to be picked up by \SVG\ math if possible.
 %
 % The print-mode \cs{color} command cannot accept the \optn{named}
@@ -65830,8 +66225,9 @@
 \LWR at formatted{textcircled}
 %    \end{macrocode}
 %
-% Nullify \pkg{textcomp} macros when generating filenames:
+% Nullify \pkg{xunicode} macros when generating filenames:
 % \changes{v0.67}{2019/02/13}{\pkg{xunicode}: Nullify in filenames.}
+% \changes{v0.70}{2019/04/03}{\pkg{xunicode}: Fix for \cs{textinterrobang}.}
 %    \begin{macrocode}
 \FilenameNullify{%
     \renewcommand*{\textdegree}{}%
@@ -65847,6 +66243,7 @@
     \renewcommand*{\textnaira}{}%
     \renewcommand*{\textpeso}{}%
     \renewcommand*{\textrecipe}{}%
+    \renewcommand*{\textinterrobang}{}%
     \renewcommand*{\textinterrobangdown}{}%
     \renewcommand*{\textperthousand}{}%
     \renewcommand*{\textpertenthousand}{}%

Modified: trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/source/latex/lwarp/lwarp.ins	2019-04-03 21:40:52 UTC (rev 50739)
@@ -63,6 +63,7 @@
 \file{lwarp-attachfile.sty}{\from{lwarp.dtx}{attachfile}}
 \file{lwarp-attachfile2.sty}{\from{lwarp.dtx}{attachfile2}}
 \file{lwarp-authblk.sty}{\from{lwarp.dtx}{authblk}}
+\file{lwarp-autonum.sty}{\from{lwarp.dtx}{autonum}}
 \file{lwarp-axessibility.sty}{\from{lwarp.dtx}{axessibility}}
 \file{lwarp-axodraw2.sty}{\from{lwarp.dtx}{axodraw2}}
 \file{lwarp-backref.sty}{\from{lwarp.dtx}{backref}}
@@ -91,6 +92,7 @@
 \file{lwarp-caption.sty}{\from{lwarp.dtx}{caption}}
 \file{lwarp-cases.sty}{\from{lwarp.dtx}{cases}}
 \file{lwarp-changebar.sty}{\from{lwarp.dtx}{changebar}}
+\file{lwarp-changelayout.sty}{\from{lwarp.dtx}{changelayout}}
 \file{lwarp-changepage.sty}{\from{lwarp.dtx}{changepage}}
 \file{lwarp-changes.sty}{\from{lwarp.dtx}{changes}}
 \file{lwarp-chappg.sty}{\from{lwarp.dtx}{chappg}}
@@ -211,6 +213,7 @@
 \file{lwarp-ifoddpage.sty}{\from{lwarp.dtx}{ifoddpage}}
 \file{lwarp-imakeidx.sty}{\from{lwarp.dtx}{imakeidx}}
 \file{lwarp-index.sty}{\from{lwarp.dtx}{index}}
+\file{lwarp-inputtrc.sty}{\from{lwarp.dtx}{inputtrc}}
 \file{lwarp-intopdf.sty}{\from{lwarp.dtx}{intopdf}}
 \file{lwarp-karnaugh-map.sty}{\from{lwarp.dtx}{karnaugh-map}}
 \file{lwarp-keyfloat.sty}{\from{lwarp.dtx}{keyfloat}}
@@ -243,10 +246,12 @@
 \file{lwarp-marginfix.sty}{\from{lwarp.dtx}{marginfix}}
 \file{lwarp-marginnote.sty}{\from{lwarp.dtx}{marginnote}}
 \file{lwarp-marvosym.sty}{\from{lwarp.dtx}{marvosym}}
+\file{lwarp-mathtools.sty}{\from{lwarp.dtx}{mathtools}}
 \file{lwarp-mcaption.sty}{\from{lwarp.dtx}{mcaption}}
 \file{lwarp-mdframed.sty}{\from{lwarp.dtx}{mdframed}}
 \file{lwarp-memhfixc.sty}{\from{lwarp.dtx}{memhfixc}}
 \file{lwarp-metalogo.sty}{\from{lwarp.dtx}{metalogo}}
+\file{lwarp-metalogox.sty}{\from{lwarp.dtx}{metalogox}}
 \file{lwarp-mhchem.sty}{\from{lwarp.dtx}{mhchem}}
 \file{lwarp-microtype.sty}{\from{lwarp.dtx}{microtype}}
 \file{lwarp-midfloat.sty}{\from{lwarp.dtx}{midfloat}}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsmath.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsmath.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-amsmath.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -35,288 +35,78 @@
 }
 
 }% not mathjax
-\BeforeBeginEnvironment{multline}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \booltrue{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
+\newcommand*{\LWR at amsmathenv@@before}[1]{%
     \begin{BlockClass}{displaymathnumbered}
     \LWR at newautoidanchor%
     \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{multline}]
+    \begin{lateximage}[\LWR at amsmathbodynumbered{#1}]
     \LWR at applyxfakebold%
 }
+\newcommand*{\LWR at amsmathenv@before}[1]{%
+    \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
+    {
+        \LWR at syncmathjax
+        \boolfalse{LWR at amsmultline}
+        \ifstrequal{#1}{multline}{\booltrue{LWR at amsmultline}}{}
+        \ifstrequal{#1}{multline*}{\booltrue{LWR at amsmultline}}{}
+        \LWR at beginhideamsmath
+    }
+    {
+        \LWR at amsmathenv@@before{multline}
+    }
 }
-
-\AfterEndEnvironment{multline}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \boolfalse{LWR at amsmultline}
-    \LWR at addmathjax{multline}{\the\@envbody}
+\newcommand*{\LWR at amsmathenv@@after}{%
+    \end{lateximage}\end{BlockClass}
 }
-{\end{lateximage}\end{BlockClass}}
-
+\newcommand*{\LWR at amsmathenv@after}[1]{%
+    \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
+    {
+        \LWR at endhideamsmath
+        \boolfalse{LWR at amsmultline}
+        \LWR at addmathjax{#1}{\the\@envbody}
+    }
+    {\LWR at amsmathenv@@after}
 }
+\BeforeBeginEnvironment{multline}{\LWR at amsmathenv@before{multline}}
 
-\BeforeBeginEnvironment{multline*}{
+\AfterEndEnvironment{multline}{\LWR at amsmathenv@after{multline}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \booltrue{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{multline*}]
-    \LWR at applyxfakebold%
-}
-}
+\BeforeBeginEnvironment{multline*}{\LWR at amsmathenv@before{multline*}}
 
-\AfterEndEnvironment{multline*}{
+\AfterEndEnvironment{multline*}{\LWR at amsmathenv@after{multline*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \boolfalse{LWR at amsmultline}
-    \LWR at addmathjax{multline*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
 
-}
+\BeforeBeginEnvironment{gather}{\LWR at amsmathenv@before{gather}}
 
+\AfterEndEnvironment{gather}{\LWR at amsmathenv@after{gather}}
 
-\BeforeBeginEnvironment{gather}{
+\BeforeBeginEnvironment{gather*}{\LWR at amsmathenv@before{gather*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{gather}]
-    \LWR at applyxfakebold%
-}
-}
+\AfterEndEnvironment{gather*}{\LWR at amsmathenv@after{gather*}}
 
-\AfterEndEnvironment{gather}{
+\BeforeBeginEnvironment{align}{\LWR at amsmathenv@before{align}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{gather}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
+\AfterEndEnvironment{align}{\LWR at amsmathenv@after{align}}
 
-}
+\BeforeBeginEnvironment{align*}{\LWR at amsmathenv@before{align*}}
 
-\BeforeBeginEnvironment{gather*}{
+\AfterEndEnvironment{align*}{\LWR at amsmathenv@after{align*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{gather*}]
-    \LWR at applyxfakebold%
-}
-}
+\BeforeBeginEnvironment{flalign}{\LWR at amsmathenv@before{flalign}}
 
-\AfterEndEnvironment{gather*}{
+\AfterEndEnvironment{flalign}{\LWR at amsmathenv@after{flalign}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{gather*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
+\BeforeBeginEnvironment{flalign*}{\LWR at amsmathenv@before{flalign*}}
 
-}
+\AfterEndEnvironment{flalign*}{\LWR at amsmathenv@after{flalign*}}
 
-\BeforeBeginEnvironment{align}{
+\BeforeBeginEnvironment{alignat}{\LWR at amsmathenv@before{alignat}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{align}]
-    \LWR at applyxfakebold%
-}
-}
+\AfterEndEnvironment{alignat}{\LWR at amsmathenv@after{alignat}}
 
-\AfterEndEnvironment{align}{
+\BeforeBeginEnvironment{alignat*}{\LWR at amsmathenv@before{alignat*}}
 
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{align}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
-\BeforeBeginEnvironment{align*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{align*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{align*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{align*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
-\BeforeBeginEnvironment{flalign}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{flalign}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{flalign}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{flalign}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
-\BeforeBeginEnvironment{flalign*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{flalign*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{flalign*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{flalign*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
-\BeforeBeginEnvironment{alignat}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymathnumbered}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbodynumbered{alignat}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{alignat}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{alignat}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
-
-\BeforeBeginEnvironment{alignat*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at syncmathjax
-    \boolfalse{LWR at amsmultline}
-    \LWR at beginhideamsmath
-}
-{
-    \begin{BlockClass}{displaymath}
-    \LWR at newautoidanchor%
-    \booltrue{LWR at indisplaymathimage}%
-    \begin{lateximage}[\LWR at amsmathbody{alignat*}]
-    \LWR at applyxfakebold%
-}
-}
-
-\AfterEndEnvironment{alignat*}{
-
-\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }%
-{
-    \LWR at endhideamsmath
-    \LWR at addmathjax{alignat*}{\the\@envbody}
-}
-{\end{lateximage}\end{BlockClass}}
-
-}
+\AfterEndEnvironment{alignat*}{\LWR at amsmathenv@after{alignat*}}
 \endinput
 %%
 %% End of file `lwarp-amsmath.sty'.

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-autonum.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-autonum.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-autonum.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -0,0 +1,56 @@
+%%
+%% This is file `lwarp-autonum.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `autonum')
+%% 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{autonum}[2015/01/18]
+\RequirePackage{amsmath}
+
+\newenvironment{equation+}{\equation}{\endequation}
+
+\newenvironment{gather+}{\gather}{\endgather}
+
+\BeforeBeginEnvironment{gather+}{\LWR at amsmathenv@@before{gather+}}
+
+\AfterEndEnvironment{gather+}{\LWR at amsmathenv@@after}
+
+\newenvironment{multline+}{\multline}{\endmultline}
+
+\BeforeBeginEnvironment{multline+}{\LWR at amsmathenv@@before{multline+}}
+
+\AfterEndEnvironment{multline+}{\LWR at amsmathenv@@after}
+
+\newenvironment{flalign+}{\flalign}{\endflalign}
+
+\BeforeBeginEnvironment{flalign+}{\LWR at amsmathenv@@before{flaline+}}
+
+\AfterEndEnvironment{flalign+}{\LWR at amsmathenv@@after}
+
+\newenvironment{align+}{\align}{\endalign}
+
+\BeforeBeginEnvironment{align+}{\LWR at amsmathenv@@before{aline+}}
+
+\AfterEndEnvironment{align+}{\LWR at amsmathenv@@after}
+
+\newenvironment{alignat+}{\alignat}{\endalignat}
+
+\BeforeBeginEnvironment{alignat+}{\LWR at amsmathenv@@before{alineat+}}
+
+\AfterEndEnvironment{alignat+}{\LWR at amsmathenv@@after}
+
+\newenvironment{split+}{\split}{\endsplit}
+\endinput
+%%
+%% End of file `lwarp-autonum.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-autonum.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -80,7 +80,7 @@
         \let\caption at makeanchor\@firstofone
       \fi
       \@makecaption{\csname fnum@#1\endcsname}%
-                   {\ignorespaces\caption at makeanchor{#3}}\par
+                   {\ignorespaces\caption at makeanchor{#3}}%
       \caption at if@minipage\@minipagetrue\@minipagefalse}%
   \caption at end%
 }

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changelayout.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changelayout.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changelayout.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -0,0 +1,46 @@
+%%
+%% This is file `lwarp-changelayout.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `changelayout')
+%% 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{changelayout}[2009/10/07]
+\renewrobustcmd\cpl at backtodefaults{}
+
+\renewrobustcmd\cpl at checkifoddpage{%
+  \cpl at oddpagefalse%
+}
+
+\renewrobustcmd\changepagelayout[1]{%
+  \setkeys[KV]{changelay}{#1}%
+}
+
+\renewrobustcmd{\changetextlayout}[1]{\changepagelayout{#1}}
+
+\renewrobustcmd\adjustpagelayout[1]{%
+  \setkeys[KV at X]{changelay}{#1}%
+}
+
+\renewrobustcmd{\adjusttextlayout}[1]{\adjustpagelayout{#1}}
+
+\renewrobustcmd\adjusttextwidth[1]{%
+  \setkeys[KV]{changelay}{#1}%
+    \begin{BlockClass}[color:\LWR at colorstyle{named}{\cpl at textcolor}]{changelayout}
+        \color{\cpl at textcolor}%
+        \cpl at content
+    \end{BlockClass}
+}
+\endinput
+%%
+%% End of file `lwarp-changelayout.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changelayout.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changes.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changes.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-changes.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -15,56 +15,118 @@
 %%   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{changes}[2015/04/27]
-\xpatchcmd{\Changes at output}
-    {#1}
-    {\LWR at textcurrentcolor{#1}}
+\LWR at ProvidesPackagePass{changes}[2019/01/26]
+\renewcommand{\ChangesListline}[4]{%
+    \IfSubStr{\Changes at loc@show}{#1}{%
+        \LWR at startpars%
+        #2: #3 \qquad
+        \nameref{autopage-#4}%
+        \LWR at stoppars%
+    }{}%
+}
+
+\renewcommand{\Changes at summaryline}[4]{%
+    \IfSubStr{\Changes at loc@show}{#1}{%
+        \ifthenelse{\not\equal{\Changes at loc@style}{compactsummary} \or #2 > 0}%
+            {%
+                #3:~#2#4%
+            }{}%
+    }{}%
+}
+
+\xpatchcmd{\listofchanges}
+    {{\changesauthorname: \changesanonymousname}}
+    {{\LWR at textcurrentcolor{\changesauthorname: \changesanonymousname}}}
     {}
-    {\LWR at patcherror{changes}{Changes at output}}
+    {\LWR at patcherror{changes}{listofchanges A}}
 
 \xpatchcmd{\listofchanges}
-    {
-        \ifthenelse{\equal{\Changes at InID}{\@empty}}
-        {\changesauthorname: \changesanonymousname}
-        {%
-        \changesauthorname: \Changes at InID
-        \ifthenelse{\equal{\Changes at InName}{\@empty}}
-        {}
-        { (\Changes at InName)}
-        }
-    }
-    {
-        \LWR at textcurrentcolor{% lwarp
-            \ifthenelse{\equal{\Changes at InID}{\@empty}}
-            {\changesauthorname: \changesanonymousname}
-            {%
-            \changesauthorname: \Changes at InID
-            \ifthenelse{\equal{\Changes at InName}{\@empty}}
-            {}
-            { (\Changes at InName)}
-            }
-        }
-    }
+    {\changesauthorname: \Changes at InID}
+    {\LWR at textcurrentcolor{\changesauthorname: \Changes at InID}}
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges B}}
 
 \xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+    {(\Changes at InName)}
+    {\LWR at textcurrentcolor{(\Changes at InName)}}
     {}
-    {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges C}}
 
 \xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+    {\parbox{\Changes at summary@width}}
     {}
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{listofchanges D}}
 
-\xpatchcmd{\listofchanges}
-    {\parbox{\Changes at Len@summ}}
+\xpatchcmd{\Changes at Markup@comment}
+    {%
+        \ifthenelse{\isAnonymous{#2}}%
+            {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+            {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+        #1%
+    }
+    {%
+        \LWR at textcurrentcolor{%         lwarp
+        \ifthenelse{\isAnonymous{#2}}%
+            {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+            {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+        #1%
+        }%                              lwarp
+    }
     {}
+    {\LWR at patcherror{changes}{\Changes at Markup@comment A}}
+
+\xpatchcmd{\Changes at Markup@comment}
+    {%
+        \uwave{%
+            \ifthenelse{\isAnonymous{#2}}%
+                {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+                {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+            #1%
+        }%
+    }
+    {%
+        \LWR at textcurrentcolor{%         lwarp
+        \uwave{%
+            \ifthenelse{\isAnonymous{#2}}%
+                {\textbf{[\arabic{Changes at commentCount#2}]:} }%
+                {\textbf{[#3~\arabic{Changes at commentCount#2}]:} }%
+            #1%
+        }%
+        }%                              lwarp
+    }
     {}
-    {\LWR at patcherror{changes}{listofchanges}}
+    {\LWR at patcherror{changes}{\Changes at Markup@comment B}}
+
+\xpatchcmd{\Changes at output}
+    {\Changes at Markup@author{\Changes at output@author{#2}{left}}}
+    {\LWR at textcurrentcolor{\Changes at Markup@author{\Changes at output@author{#2}{left}}}}
+    {}
+    {\LWR at patcherror{changes}{Changes at output A}}
+
+\xpatchcmd{\Changes at output}
+    {%
+        \ifthenelse{\equal{#1}{added}}{\Changes at Markup@added{#3}}{}%
+        \ifthenelse{\equal{#1}{deleted}}{\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{replaced}}{{\Changes at Markup@added{#3}}\allowbreak\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{highlight}}{\Changes at Markup@highlight{#3}}{}%
+    }
+    {%
+        \LWR at textcurrentcolor{%
+        \ifthenelse{\equal{#1}{added}}{\Changes at Markup@added{#3}}{}%
+        \ifthenelse{\equal{#1}{deleted}}{\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{replaced}}{{\Changes at Markup@added{#3}}\allowbreak\Changes at Markup@deleted{#4}}{}%
+        \ifthenelse{\equal{#1}{highlight}}{\Changes at Markup@highlight{#3}}{}%
+        }%
+    }
+    {}
+    {\LWR at patcherror{changes}{Changes at output B}}
+
+\xpatchcmd{\Changes at output}
+    {\Changes at Markup@author{\Changes at output@author{#2}{right}}}
+    {\LWR at textcurrentcolor{\Changes at Markup@author{\Changes at output@author{#2}{right}}}}
+    {}
+    {\LWR at patcherror{changes}{Changes at output C}}
 \endinput
 %%
 %% End of file `lwarp-changes.sty'.

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-inputtrc.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-inputtrc.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-inputtrc.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -0,0 +1,33 @@
+%%
+%% This is file `lwarp-inputtrc.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `inputtrc')
+%% 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{inputtrc}[2012/10/10]
+\renewcommand*{\IT at prim@input}[1]{%
+  \typeout{\IT at indent\IT at currfile INPUTTING #1}%
+%% ... TODO: option to write to `.log' only.
+  \xdef\IT at filestack{{\IT at currfile}\IT at filestack}%
+  \xdef\IT at currfile{#1}%
+  \expandafter \gdef\expandafter \IT at indent\expandafter{%
+    \IT at indent \IT at indent@unit}%                lwarp
+  \@@input#1%                                   lwarp
+  \expandafter\IT at pop@indent\IT at indent   \@nil% lwarp
+  \expandafter\IT at pop@file  \IT at filestack\@nil% lwarp
+  \IT at maybe@returnmessage%% v0.2                lwarp
+}
+\endinput
+%%
+%% End of file `lwarp-inputtrc.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-inputtrc.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-mathtools.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-mathtools.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-mathtools.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -0,0 +1,28 @@
+%%
+%% This is file `lwarp-mathtools.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `mathtools')
+%% 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{mathtools}[2018/01/08]
+\RequirePackage{graphicx}
+\MHInternalSyntaxOn
+\renewcommand*\MT_showonlyrefs_true:{\MT_showonlyrefs_false:}
+\mathtoolsset{showonlyrefs=false}
+\renewcommand*{\MT_mathic_true:}{\MT_mathic_false:}
+\mathtoolsset{mathic=false}
+\MHInternalSyntaxOff
+\endinput
+%%
+%% End of file `lwarp-mathtools.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-mathtools.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogo.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogo.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogo.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -15,13 +15,20 @@
 %%   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{metalogo}[2010/05/29]
-\newcommand\setlogokern[2]{}
-\newcommand\setlogodrop[2][XeTeX]{}
-\newcommand\setLaTeXa[1]{}
-\newcommand\setLaTeXee[1]{}
-\newcommand\seteverylogo[1]{}
-\newcommand\everylogo[1]{}
+\LWR at ProvidesPackagePass{metalogo}[2010/05/29]
+\newcommand*{\LWR at HTML@setlogokern}[2]{}
+\newcommand*{\LWR at HTML@setlogodrop}[2][XeTeX]{}
+\newcommand*{\LWR at HTML@setLaTeXa}[1]{}
+\newcommand*{\LWR at HTML@setLaTeXee}[1]{}
+\newcommand*{\LWR at HTML@seteverylogo}[1]{}
+\newcommand*{\LWR at HTML@everylogo}[1]{}
+
+\LWR at formatted{setlogokern}
+\LWR at formatted{setlogodrop}
+\LWR at formatted{setLaTeXa}
+\LWR at formatted{setLaTeXee}
+\LWR at formatted{seteverylogo}
+\LWR at formatted{everylogo}
 \endinput
 %%
 %% End of file `lwarp-metalogo.sty'.

Added: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogox.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogox.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogox.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -0,0 +1,27 @@
+%%
+%% This is file `lwarp-metalogox.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lwarp.dtx  (with options: `metalogox')
+%% 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{metalogox}[2019/01/20]
+\AtBeginDocument{
+    \let\LWR at metalogox@currentformatting\LWR at formatting
+    \renewcommand*{\LWR at formatting}{print}%
+    \autoadjustlogos*
+    \let\LWR at formatting\LWR at metalogox@currentformatting
+}
+\endinput
+%%
+%% End of file `lwarp-metalogox.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-metalogox.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textcomp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textcomp.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textcomp.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -33,6 +33,7 @@
 \newcommand*{\LWR at HTML@textnaira}{\HTMLunicode{20A6}}
 \newcommand*{\LWR at HTML@textpeso}{\HTMLunicode{20B1}}
 \newcommand*{\LWR at HTML@textrecipe}{\HTMLunicode{211E}}
+\newcommand*{\LWR at HTML@textinterrobang}{\HTMLunicode{203D}}
 \newcommand*{\LWR at HTML@textinterrobangdown}{\HTMLunicode{2E18}}
 \newcommand*{\LWR at HTML@textperthousand}{\HTMLunicode{2030}}
 \newcommand*{\LWR at HTML@textpertenthousand}{\HTMLunicode{2031}}
@@ -53,6 +54,7 @@
 \newcommand*{\LWR at HTML@textnaira}{₦}
 \newcommand*{\LWR at HTML@textpeso}{₱}
 \newcommand*{\LWR at HTML@textrecipe}{℞}
+\newcommand*{\LWR at HTML@textinterrobang}{‽}
 \newcommand*{\LWR at HTML@textinterrobangdown}{⸘}
 \newcommand*{\LWR at HTML@textperthousand}{‰}
 \newcommand*{\LWR at HTML@textpertenthousand}{‱}
@@ -74,6 +76,7 @@
 \LWR at formatted{textnaira}
 \LWR at formatted{textpeso}
 \LWR at formatted{textrecipe}
+\LWR at formatted{textinterrobang}
 \LWR at formatted{textinterrobangdown}
 \LWR at formatted{textperthousand}
 \LWR at formatted{textpertenthousand}
@@ -125,6 +128,7 @@
     \renewcommand*{\textnaira}{}%
     \renewcommand*{\textpeso}{}%
     \renewcommand*{\textrecipe}{}%
+    \renewcommand*{\textinterrobang}{}%
     \renewcommand*{\textinterrobangdown}{}%
     \renewcommand*{\textperthousand}{}%
     \renewcommand*{\textpertenthousand}{}%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textpos.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textpos.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-textpos.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -20,7 +20,7 @@
 
 \LWR at ProvidesPackageDrop{textpos}[2016/06/07]
 
-\NewDocumentEnvironment{textblock}{m r()}{}{}
+\NewDocumentEnvironment{textblock}{m o r()}{}{}
 \NewDocumentEnvironment{textblock*}{m o r()}{}{}
 \newcommand*{\TPGrid}[3][]{}
 \NewDocumentCommand{\TPMargin}{s o}{}

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xunicode.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xunicode.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp-xunicode.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -38,6 +38,7 @@
     \renewcommand*{\textnaira}{}%
     \renewcommand*{\textpeso}{}%
     \renewcommand*{\textrecipe}{}%
+    \renewcommand*{\textinterrobang}{}%
     \renewcommand*{\textinterrobangdown}{}%
     \renewcommand*{\textperthousand}{}%
     \renewcommand*{\textpertenthousand}{}%

Modified: trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2019-04-03 21:40:04 UTC (rev 50738)
+++ trunk/Master/texmf-dist/tex/latex/lwarp/lwarp.sty	2019-04-03 21:40:52 UTC (rev 50739)
@@ -17,7 +17,7 @@
 %% version 2005/12/01 or later.
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 \ProvidesPackage{lwarp}
-    [2019/03/21 v0.69  Allows LaTeX to directly produce HTML5 output.]
+    [2019/04/03 v0.70  Allows LaTeX to directly produce HTML5 output.]
 
 
 
@@ -211,6 +211,7 @@
 \LWR at loadafter{attachfile}
 \LWR at loadafter{attachfile2}
 \LWR at loadafter{authblk}
+\LWR at loadafter{autonum}
 \LWR at loadafter{axessibility}
 \LWR at loadafter{axodraw2}
 \LWR at loadafter{backref}
@@ -239,6 +240,7 @@
 \LWR at loadafter{caption2}
 \LWR at loadafter{cases}
 \LWR at loadafter{changebar}
+\LWR at loadafter{changelayout}
 \LWR at notmemoirloadafter{changepage}
 \LWR at loadafter{changes}
 \LWR at loadafter{chappg}
@@ -385,10 +387,12 @@
 \LWR at loadafter{marginfix}
 \LWR at loadafter{marginnote}
 \LWR at loadafter{marvosym}
+\LWR at loadafter{mathtools}
 \LWR at loadafter{mcaption}
 \LWR at loadafter{mdframed}
 \LWR at loadafter{memhfixc}
 \LWR at loadafter{metalogo}
+\LWR at loadafter{metalogox}
 \LWR at loadafter{mhchem}
 \LWR at loadafter{microtype}
 \LWR at loadafter{midfloat}
@@ -627,6 +631,32 @@
 \fi
 
 \fi
+\ifxetexorluatex
+\else
+    \ifdefstring{\f at family}{cmr}{
+        \IfFileExists{type1ec.sty}% found in cm-super
+        {}
+        {% cm-super not installed
+            \IfFileExists{lmodern.sty}{
+                \PackageInfo{lwarp}{cm-super not installed, loading lmodern}
+                \RequirePackage{lmodern}
+            }{
+                \PackageError{lwarp}
+                {%
+                    Lwarp requires a vector font.\MessageBreak
+                    Install and load cm-super, lmodern, or another\MessageBreak
+                    Type-1 vector font before loading lwarp%
+                }
+                {%
+                    Install cm-super or lmodern.\MessageBreak
+                    If lmodern, load it before lwarp:\MessageBreak
+                        \space\space\protect\usepackage{lmodern}\MessageBreak
+                        \space\space\protect\usepackage{lwarp}%
+                }
+            }
+        }% cm-super not installed
+    }{}% f at family
+\fi
 \ifPDFTeX
 \RequirePackage{upquote}
 \fi
@@ -1085,6 +1115,7 @@
 {}% no filename
 {% yes filename was found
     \ifdefstring{\LWR at strresulttwo}{easyReview}{\LWR at nullifycomment}{}%
+    \ifdefstring{\LWR at strresulttwo}{changes}{\LWR at nullifycomment}{}%
     \ifbool{warpingHTML}{\LWR at checkloadfilename{\LWR at strresulttwo}}{}%
     \ifboolexpr{
         bool{warpingHTML} and
@@ -2421,6 +2452,11 @@
     overflow: auto;
 }
 
+.inlineminipage {
+    display: inline-block ;
+    text-align: left
+}
+
 /* Paragraphs in the flexbox did not collapse their margins. */
 /* Have not yet researched this. */
 .minipage p {margin: .75ex 0em .75ex 0em ;}
@@ -3882,16 +3918,17 @@
 <script type="text/x-mathjax-config">
 MathJax.Hub.Config({
     TeX: {
-    equationNumbers: {
-        autoNumber: "AMS"
+        extensions: ["autoload-all.js"] ,
+        equationNumbers: {
+            autoNumber: "AMS"
+        }
     }
-    }
 });
 </script>
 
 <!-- Alternative CDN provider: -->
 <script type="text/javascript" async
-src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-AMS_HTML-full">
+src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_HTML-full">
 </script>
 
 <!-- No longer supported after April 30, 2017: -->
@@ -3914,7 +3951,7 @@
 
 -- Copyright 2016-2018 Brian Dunn
 
-printversion = "v0.69"
+printversion = "v0.70"
 requiredconfversion = "2" -- also at *lwarpmk.conf
 
 function printhelp ()
@@ -4300,7 +4337,7 @@
     print ("lwarpmk: \"" .. sourcename .. "-images.txt\" does not exist.")
     print ("lwarpmk: Your project does not use SVG math or other lateximages,")
     print ("lwarpmk: or the file has been deleted somehow.")
-    print ("lwarpmk: Use \"lwarpmk html\" to recompile your project")
+    print ("lwarpmk: Use \"lwarpmk html1\" to recompile your project")
     print ("lwarpmk: and recreate \"" .. sourcename .. "-images.txt\".")
     print ("lwarpmk: If your project does not use SVG math or other lateximages,")
     print ("lwarpmk: then \"" .. sourcename .. "-images.txt\" will never exist, and")
@@ -4312,8 +4349,9 @@
 -- Warning if must recompile before creating limages:
     print ("")
     print ("lwarpmk: ===")
+    print ("lwarpmk: Cross-references are not yet correct.")
     print ("lwarpmk: The document must be recompiled before creating the lateximages.")
-    print ("lwarpmk: Enter \"lwarpmk html\" again, then try \"lwarpmk limages\" again.")
+    print ("lwarpmk: Enter \"lwarpmk html1\" again, then try \"lwarpmk limages\" again.")
     print ("lwarpmk: ===")
 end --warnlimagesrecompile
 
@@ -5234,7 +5272,9 @@
 {% not in a lateximage
     \LWR at traceinfo{LWR at nestspan: NOT inside a lateximage}%
     \addtocounter{LWR at spandepth}{1}%
-    \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}{}{}%
+    \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}%
+        {\LWR at subhtmlelementclass{span}{inlineminipage}}%
+        {\LWR at htmltagc{/span}}%
     \RenewDocumentEnvironment{BlockClass}{o m}{}{}%
     \renewcommand{\BlockClassSingle}[2]{##2}%
     \renewcommand{\LWR at forcenewpage}{}%
@@ -5554,7 +5594,7 @@
     {% yes nest par tags
         \leavevmode\LWR at orignewline%
         \LWR at htmltagc{/\LWR at tagregularparagraph}%
-        \LWR at orignewline%
+        \LWR at origpar%
         \global\boolfalse{LWR at doingapar}%
         \global\boolfalse{LWR at minipagethispar}%
         \PN at parnotes@auto%
@@ -5671,7 +5711,22 @@
 \newcommand*{\CSSFilename}[1]{}
 \end{warpprint}
 
+
 \begin{warpHTML}
+
+\newcommand*{\LWR at mathjaxfilename}{lwarp_mathjax.txt}
+
+\newcommand*{\MathJaxFilename}[1]{%
+    \renewcommand*{\LWR at mathjaxfilename}{#1}%
+    \@onelevel at sanitize\LWR at mathjaxfilename%
+}
+
+\end{warpHTML}
+\begin{warpprint}
+\newcommand*{\MathJaxFilename}[1]{}
+\end{warpprint}
+
+\begin{warpHTML}
 \let\LWR at origtitle\title
 
 \renewcommand*{\title}[1]{%
@@ -6610,7 +6665,7 @@
     \begingroup%
     \LWR at restoreoriglists%
     \boolfalse{LWR at verbtags}%
-        \verbatiminput{lwarp_mathjax.txt}%
+        \verbatiminput{\LWR at mathjaxfilename}%
     \booltrue{LWR at verbtags}%
     \endgroup%
     \LWR at stoppars%
@@ -6655,13 +6710,6 @@
 \let\LWR at origcaption\caption
 \let\LWR at origltx@label\ltx at label
 \let\ltx at label\LWR at htmlmathlabel
-\LetLtxMacro\TeX\LWR at TeX
-\LetLtxMacro\LaTeX\LWR at LaTeX
-\LetLtxMacro\LuaTeX\LWR at LuaTeX
-\LetLtxMacro\LuaLaTeX\LWR at LuaLaTeX
-\LetLtxMacro\XeTeX\LWR at XeTeX
-\LetLtxMacro\XeLaTeX\LWR at XeLaTeX
-\LetLtxMacro\ConTeXt\LWR at ConTeXt
 \global\boolfalse{LWR at doingapar}
 \global\boolfalse{LWR at doingstartpars}
 \mainmatter
@@ -6728,12 +6776,37 @@
 \LWR at htmltag{/body}\LWR at orignewline
 \LWR at htmltag{/html}\LWR at orignewline
 \LWR at orignewpage
-\immediate\write\LWR at lateximagesfile{%
-    |end|end|end|%
-}%
-\immediate\closeout\LWR at lateximagesfile
 }
 
+\xpatchcmd{\enddocument}
+    {%
+        \if at tempswa
+        \@latex at warning@no at line{Label(s) may have changed.
+        Rerun to get cross-references right}%
+        \fi
+    }
+    {%
+        \if at tempswa
+            \@latex at warning@no at line{Label(s) may have changed.
+            Rerun to get cross-references right}%
+        \else
+            \immediate\write\LWR at lateximagesfile{%
+                |end|end|end|%
+            }%
+        \fi
+    }
+    {}
+    {
+        \PackageWarningNoLine{lwarp}
+        {%
+            Could not patch \protect\enddocument.\MessageBreak
+            If labels have changed, be sure to recompile before\MessageBreak
+            creating lateximages with\MessageBreak
+            \space\space lwarpmk limages,\MessageBreak
+            or the images may be corrupt%
+        }
+    }
+
 \end{warpHTML}
 
 \begin{warpall}
@@ -9310,14 +9383,14 @@
 \newcommand*{\LWR at newautoidanchor}{%
 \ifnumcomp{\value{LWR at lateximagedepth}}{>}{0}%
 {}%
-{
+{%
     \ifbool{LWR at freezethisautoid}{}{%
         \addtocounter{LWR at thisautoid}{1}%
         \LWR at htmltag{a id="\LWR at print@mbox{autoid-\arabic{LWR at thisautoid}}"}%
             \LWR at htmltag{/a}%
     }%
+}%
 }
-}
 
 \newcommand*{\@captype}{}
 
@@ -9374,7 +9447,7 @@
     }
     {\endBlockClass}
 \newcommand*{\LWR at HTML@caption at begin}[1]
-{
+{%
 \LWR at traceinfo{LWR at HTML@caption at begin}%
 \begingroup%
 \@setpar{\LWR at closeparagraph\@@par}%
@@ -9812,6 +9885,7 @@
 \let\textellipsis\LWR at origtextellipsis%
 \let\textless\LWR at origtextless%
 \let\textgreater\LWR at origtextgreater%
+\let\&\LWR at origampersand%
 \LetLtxMacro\rmfamily\LWR at origrmfamily%
 \LetLtxMacro\sffamily\LWR at origsffamily%
 \LetLtxMacro\ttfamily\LWR at origttfamily%
@@ -9841,10 +9915,6 @@
 \LetLtxMacro\hline\LWR at orighline%
 \let\newline\LWR at orignewline%
 \LetLtxMacro\includegraphics\LWR at origincludegraphics%
-\let\TeX\LWR at origTeX%
-\let\LaTeX\LWR at origLaTeX%
-\let\LaTeXe\LWR at origLaTeXe%
-\renewcommand*{\Xe}{X\textsubscript{E}}%
 \LetLtxMacro\@ensuredmath\LWR at origensuredmath%
 \LWR at restoreorigaccents%
 \LWR at restoreoriglists%
@@ -9906,13 +9976,13 @@
                 \LWR at origincludegraphics{\LWR at baselinename}%
             }
         }{
-            \PackageWarning{lwarp}{Load graphicx or graphics
+            \PackageWarningNoLine{lwarp}{Load graphicx or graphics
                 for improved SVG math baselines,}
             \newcommand*{\LWR at addbaselinemarker}{}
         }
     }
 }{% lwarp_baseline_marker.png or .eps is not present
-    \PackageWarning{lwarp}{File \LWR at baselinename\space is not installed alongside
+    \PackageWarningNoLine{lwarp}{File \LWR at baselinename\space is not installed alongside
         the lwarp-*.sty files, so SVG math baselines may not be accurate,}
     \newcommand*{\LWR at addbaselinemarker}{}
 }
@@ -10785,6 +10855,9 @@
         }%
         {}%
 }
+
+\LWR at PreloadedPackage{inputtrc}
+
 \LWR at PreloadedPackage{textcomp}
 
 \LWR at PreloadedPackage{xunicode}
@@ -10961,7 +11034,7 @@
 
 \begin{warpHTML}
 \AtEndPreamble{
-\RequirePackage{cleveref}
+    \RequirePackage{cleveref}
 }
 \AfterEndPreamble{
 \LWR at traceinfo{Patching cleveref.}
@@ -11235,7 +11308,7 @@
         \LWR at print@mbox{text-align:\LWR at align} ; %
     }%
 }
-\NewDocumentCommand{\LWR at HTML@makebox}{>{\SplitArgument{1}{,}}d() o o m}{%
+\NewDocumentCommand{\LWR at HTML@makebox}{>{\SplitArgument{1}{,}}d() o o +m}{%
 {% scope
     \def\LWR at temptwo{}%
     \IfValueTF{#1}%
@@ -11247,15 +11320,20 @@
         }%
     }%
     {% [width]
-        \setlength{\LWR at tempwidth}{#2}%
-        \appto{\LWR at temptwo}{%
-            width:\LWR at printlength{\LWR at tempwidth} ; % space
+        \IfValueT{#2}% [width]
+        {%
+            \setlength{\LWR at tempwidth}{#2}%
+            \ifdimgreater{\LWR at tempwidth}{0pt}{%
+                \appto{\LWR at temptwo}{%
+                    width:\LWR at printlength{\LWR at tempwidth} ; % space
+                }%
+            }{}%
         }%
-        \IfValueT{#3}%
-        {% [width] [posn]
-            \LWR@@makebox at align{#3}%
-        }%
     }%
+    \IfValueT{#3}%
+    {% [width] [posn]
+        \LWR@@makebox at align{#3}%
+    }%
     \InlineClass[%
         \LWR at print@mbox{display:inline-block} ; %
         \LWR at temptwo%
@@ -11265,9 +11343,7 @@
 }% scope
 }
 \LWR at formatted{makebox}
-\LetLtxMacro\LWR at origframebox\framebox
-
-\NewDocumentCommand{\LWR at HTML@framebox}{d() o o m}{%
+\NewDocumentCommand{\LWR at HTML@framebox}{d() o o +m}{%
     \fbox{\makebox(#1)[#2][#3]{#4}}%
 }
 
@@ -11294,7 +11370,8 @@
 \LWR at traceinfo{HTML fbox}%
 \LWR at forceminwidth{\fboxrule}%
 \InlineClass[%
-\LWR at fboxstyle%
+    \LWR at print@mbox{display:inline-block} ; %
+    \LWR at fboxstyle%
 ]{fbox}{#1}%
 }
 \AtBeginDocument{\LWR at formatted{fbox}}
@@ -11376,9 +11453,6 @@
 }
 
 \LWR at formattedenv{fminipage}
-\end{warpHTML}
-\begin{warpHTML}
-
 \NewDocumentCommand{\LWR at HTML@raisebox}{m o o m}{%
 #4%
 }
@@ -12013,11 +12087,38 @@
 \end{warpHTML}
 
 
-\begin{warpHTML}
+\begin{warpall}
+\newrobustcmd*{\Xe}
+    {X\hspace{-.1667em}\raisebox{-.5ex}{E}}
 
-\LetLtxMacro\LWR at origTeX\TeX
+\AtBeginDocument{
+\@ifpackageloaded{graphics}{
+    \@ifpackageloaded{metalogo}{}{
+        \renewrobustcmd*{\Xe}
+            {X\hspace{-.1667em}\raisebox{-.5ex}{\reflectbox{E}}}
+    }
+}{
+    \PackageWarningNoLine{lwarp}{Load graphicx or graphics
+        for improved XeTeX logo}
+}
+}
 
-\newrobustcmd*{\LWR at TeX}
+\providerobustcmd*{\XeTeX}{\mbox{\Xe\hspace{-.125em}\TeX}}
+\providerobustcmd*{\XeLaTeX}{\mbox{\Xe\hspace{-.125em}\LaTeX}}
+\providerobustcmd*{\AmS}{%
+    \leavevmode\hbox{$\mathcal A\kern-.2em\lower.376ex%
+    \hbox{$\mathcal M$}\kern-.2em\mathcal S$}%
+}
+\newrobustcmd*{\LyX}{\textsf{LyX}}
+\providerobustcmd*{\LuaTeX}{\mbox{Lua\TeX}}
+\providerobustcmd*{\LuaLaTeX}{\mbox{Lua\LaTeX}}
+\providerobustcmd*{\BibTeX}{\mbox{B\textsc{ib}\TeX}}
+\providerobustcmd*{\MakeIndex}{\mbox{\textit{MakeIndex}}}
+\providerobustcmd*{\ConTeXt}{\mbox{Con\TeX{}t}}
+\providerobustcmd*{\MiKTeX}{\mbox{MiK\TeX}}
+\end{warpall}
+\begin{warpHTML}
+\newrobustcmd*{\LWR at HTML@TeX}
 {%
     \InlineClass{latexlogofont}%
     {%
@@ -12029,9 +12130,8 @@
         }%
     }%
 }
-\LetLtxMacro\LWR at origLaTeX\LaTeX
-
-\newrobustcmd*{\LWR at LaTeX}
+\AtBeginDocument{\LWR at formatted{TeX}}% may have been patched by metalogo
+\newrobustcmd*{\LWR at HTML@LaTeX}
 {%
     \InlineClass{latexlogofont}%
     {%
@@ -12046,9 +12146,9 @@
     }%
 }
 
-\LetLtxMacro\LWR at origLaTeXe\LaTeXe
+\AtBeginDocument{\LWR at formatted{LaTeX}}% may have been patched by metalogo
 
-\renewrobustcmd*{\LaTeXe}
+\newrobustcmd*{\LWR at HTML@LaTeXe}
 {%
     \LaTeX%
     \InlineClass{latexlogofont}{%
@@ -12058,27 +12158,38 @@
         }%
     }%
 }
-\newrobustcmd*{\LWR at LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX}
-\newrobustcmd*{\LWR at LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX}
-\newrobustcmd*{\Xe}
+\AtBeginDocument{\LWR at formatted{LaTeXe}}% may have been patched by metalogo
+\newrobustcmd*{\LWR at HTML@LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX}
+\AtBeginDocument{\LWR at formatted{LuaTeX}}% may have been patched by metalogo
+
+\newrobustcmd*{\LWR at HTML@LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX}
+\AtBeginDocument{\LWR at formatted{LuaLaTeX}}% may have been patched by metalogo
+\newrobustcmd*{\LWR at HTML@Xe}
     {%
         X%
         \InlineClass{xelatexlogosub}{\HTMLunicode{18e}}%
     }
+\AtBeginDocument{\LWR at formatted{Xe}}% may have been patched by metalogo
 
-\newrobustcmd*{\LWR at XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX}
+\newrobustcmd*{\LWR at HTML@XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX}
+\AtBeginDocument{\LWR at formatted{XeTeX}}% may have been patched by metalogo
 
-\newrobustcmd*{\LWR at XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX}
-\newrobustcmd*{\LWR at ConTeXt}
-{\InlineClass{latexlogofont}{Con}\TeX{}%
-\InlineClass{latexlogofont}{t}}
-\providerobustcmd*{\BibTeX}
-{\InlineClass{latexlogofont}{B\textsc{ib}}\TeX}
+\newrobustcmd*{\LWR at HTML@XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX}
+\AtBeginDocument{\LWR at formatted{XeLaTeX}}% may have been patched by metalogo
+\newrobustcmd*{\LWR at HTML@ConTeXt}{%
+    \InlineClass{latexlogofont}{Con}\TeX{}%
+    \InlineClass{latexlogofont}{t}%
+}
+\LWR at formatted{ConTeXt}
+\newrobustcmd*{\LWR at HTML@BibTeX}
+    {\InlineClass{latexlogofont}{B\textsc{ib}}\TeX}
+\LWR at formatted{BibTeX}
 
-\newrobustcmd*{\MakeIndex}
-{\InlineClass{latexlogofont}{\textit{MakeIndex}}}
+\newrobustcmd*{\LWR at HTML@MakeIndex}
+    {\InlineClass{latexlogofont}{\textit{MakeIndex}}}
+\LWR at formatted{MakeIndex}
 \AtBeginDocument{%
-\DeclareDocumentCommand{\AmS}{}
+\newrobustcmd*{\LWR at HTML@AmS}
 {%
     \InlineClass{amslogo}{%
         \textit{%
@@ -12088,41 +12199,15 @@
         }%
     }%
 }%
+\LWR at formatted{AmS}
 }
-\newrobustcmd*{\MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX}
-\newrobustcmd*{\LyX}{\InlineClass{lyxlogo}{LyX}}
+\newrobustcmd*{\LWR at HTML@MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX}
+\LWR at formatted{MiKTeX}
+\newrobustcmd*{\LWR at HTML@LyX}{\InlineClass{lyxlogo}{LyX}}
+\LWR at formatted{LyX}
 \end{warpHTML}
-\begin{warpprint}
 
-\newrobustcmd*{\XeTeXrevE}
-    {\hspace{-.1667em}\raisebox{-.5ex}{E}\hspace{-.125em}}
 
-\AtBeginDocument{
-\@ifpackageloaded{graphics}{
-    \renewrobustcmd*{\XeTeXrevE}
-        {\hspace{-.1667em}\raisebox{-.5ex}{\reflectbox{E}}\hspace{-.125em}}
-}{
-    \PackageWarning{lwarp}{Load graphicx or graphics
-        for improved XeTeX logo}
-}
-}
-
-\providerobustcmd*{\XeTeX}{\mbox{X\XeTeXrevE\TeX}}
-\providerobustcmd*{\XeLaTeX}{\mbox{X\XeTeXrevE\LaTeX}}
-\providerobustcmd*{\AmS}{%
-    \leavevmode\hbox{$\mathcal A\kern-.2em\lower.376ex%
-    \hbox{$\mathcal M$}\kern-.2em\mathcal S$}%
-}
-\newrobustcmd*{\LyX}{\textsf{LyX}}
-\providerobustcmd*{\LuaTeX}{\mbox{Lua\TeX}}
-\providerobustcmd*{\LuaLaTeX}{\mbox{Lua\LaTeX}}
-\providerobustcmd*{\BibTeX}{\mbox{B\textsc{ib}\TeX}}
-\providerobustcmd*{\MakeIndex}{\mbox{\textit{MakeIndex}}}
-\providerobustcmd*{\ConTeXt}{\mbox{Con\TeX{}t}}
-\providerobustcmd*{\MiKTeX}{\mbox{MiK\TeX}}
-\end{warpprint}
-
-
 \begin{warpHTML}
 
 \AfterEndPreamble{\LWR at LwarpStart}



More information about the tex-live-commits mailing list