diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/lwarp/lwarp.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/lwarp/lwarp.dtx | 1351 |
1 files changed, 874 insertions, 477 deletions
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx index b33c56507f6..a5004000864 100644 --- a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx +++ b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx @@ -16,7 +16,7 @@ % \iffalse %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01] %<package>\ProvidesPackage{lwarp} -%<package> [2019/03/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 @@ A line break will occur in the text where the \cs{marginBlock} occurs. \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 @@ Some units will require that the expression be placed inside math mode. \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 @@ This boolean may be tested by the user for later use. %<*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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % 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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % % 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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % % % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % % \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 @@ This boolean may be tested by the user for later use. % % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % \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 @@ This boolean may be tested by the user for later use. % 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 @@ This boolean may be tested by the user for later use. \LWR@loadafter{attachfile} \LWR@loadafter{attachfile2} \LWR@loadafter{authblk} +\LWR@loadafter{autonum} \LWR@loadafter{axessibility} \LWR@loadafter{axodraw2} \LWR@loadafter{backref} @@ -10729,6 +10787,7 @@ This boolean may be tested by the user for later use. \LWR@loadafter{cases} % \LWR@loadafter{ccaption}% may be preloaded by memoir \LWR@loadafter{changebar} +\LWR@loadafter{changelayout} \LWR@notmemoirloadafter{changepage} \LWR@loadafter{changes} \LWR@loadafter{chappg} @@ -10853,6 +10912,7 @@ This boolean may be tested by the user for later use. \LWR@notmemoirloadafter{index} % inputenc must be loaded before lwarp % inputenx must be loaded before lwarp +% inputtrc may be loaded before lwarp \LWR@loadafter{intopdf} \LWR@loadafter{karnaugh-map} \LWR@loadafter{keyfloat} @@ -10883,10 +10943,12 @@ This boolean may be tested by the user for later use. \LWR@loadafter{marginfix} \LWR@loadafter{marginnote} \LWR@loadafter{marvosym} +\LWR@loadafter{mathtools} \LWR@loadafter{mcaption} \LWR@loadafter{mdframed} \LWR@loadafter{memhfixc} \LWR@loadafter{metalogo} +\LWR@loadafter{metalogox} \LWR@loadafter{mhchem} \LWR@loadafter{microtype} \LWR@loadafter{midfloat} @@ -11212,6 +11274,43 @@ This boolean may be tested by the user for later use. % \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@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@family +\fi +% \end{macrocode} +% +% % \section{Upright quotes} % % In PDF\TeX, preserve upright quotes in verbatim text. @@ -12743,8 +12842,10 @@ This boolean may be tested by the user for later use. % 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@strresulttwo}{easyReview}{\LWR@nullifycomment}{}% + \ifdefstring{\LWR@strresulttwo}{changes}{\LWR@nullifycomment}{}% % \end{macrocode} % If \HTML, check if the package should be loaded before \pkg{lwarp}, % or never at all: @@ -15035,6 +15136,11 @@ div.wpminipage { border: 1px solid green ; margin: .5ex ; padding: .5ex ;} 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 @@ page_compositor "." % \subsection{\filenm{lwarp_mathjax.txt}} % \DescribeFile{lwarp_mathjax.txt} -% Used by \pkg{lwarp} when using \brand{MathJax}. -% -% This must be present when compiling the project, -% but does not need to be present when distributing +% 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. +% +% \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,7 +16759,8 @@ page_compositor "." % \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 % @@ -16721,16 +16840,17 @@ MathJax.Hub.Register.StartupHook("TeX AMSmath Ready",function () { <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 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX- -- Copyright 2016-2018 Brian Dunn -printversion = "v0.69" +printversion = "v0.70" requiredconfversion = "2" -- also at *lwarpmk.conf function printhelp () @@ -17283,7 +17403,7 @@ function warnlimages () 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 @@ function warnlimagesrecompile () -- 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 @@ end -- not --version % \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@nestspanitem}{% @@ -18896,7 +19018,9 @@ end -- not --version {% not in a lateximage \LWR@traceinfo{LWR@nestspan: NOT inside a lateximage}% \addtocounter{LWR@spandepth}{1}% - \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}{}{}% + \RenewDocumentEnvironment{minipage}{O{t} o O{t} m}% + {\LWR@subhtmlelementclass{span}{inlineminipage}}% + {\LWR@htmltagc{/span}}% \RenewDocumentEnvironment{BlockClass}{o m}{}{}% \renewcommand{\BlockClassSingle}[2]{##2}% \renewcommand{\LWR@forcenewpage}{}% @@ -19581,10 +19705,11 @@ end -- not --version % \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@orignewline% \LWR@htmltagc{/\LWR@tagregularparagraph}% - \LWR@orignewline% + \LWR@origpar% % \end{macrocode} % No longer doing a paragraph: % \begin{macrocode} @@ -19912,6 +20037,51 @@ end -- not --version + + +% \section{MathJax script} + +% \codehtml +% \begin{macrocode} +\begin{warpHTML} +% \end{macrocode} + +% \begin{macro}{\LWR@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@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@mathjaxfilename}{#1}% + \@onelevel@sanitize\LWR@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 @@ end -- not --version % ^^A \verbatiminput{lwarp_KaTeX.txt}% % ^^A }{% % \begin{macrocode} - \verbatiminput{lwarp_mathjax.txt}% + \verbatiminput{\LWR@mathjaxfilename}% % \end{macrocode} % ^^A }% % \begin{macrocode} @@ -22389,16 +22559,6 @@ end -- not --version \let\LWR@origltx@label\ltx@label \let\ltx@label\LWR@htmlmathlabel % \end{macrocode} -% Logos: -% \begin{macrocode} -\LetLtxMacro\TeX\LWR@TeX -\LetLtxMacro\LaTeX\LWR@LaTeX -\LetLtxMacro\LuaTeX\LWR@LuaTeX -\LetLtxMacro\LuaLaTeX\LWR@LuaLaTeX -\LetLtxMacro\XeTeX\LWR@XeTeX -\LetLtxMacro\XeLaTeX\LWR@XeLaTeX -\LetLtxMacro\ConTeXt\LWR@ConTeXt -% \end{macrocode} % Not yet started any paragraph handling: % \begin{macrocode} \global\boolfalse{LWR@doingapar} @@ -22569,25 +22729,52 @@ end -- not --version % Seems to be required sometimes: % \begin{macrocode} \LWR@orignewpage -% \end{macrocode} -% For \env{lateximage} commands: -% \begin{macrocode} -\immediate\write\LWR@lateximagesfile{% - |end|end|end|% -}% -\immediate\closeout\LWR@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} -\end{warpHTML} +\xpatchcmd{\enddocument} + {% + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. + Rerun to get cross-references right}% + \fi + } + {% + \if@tempswa + \@latex@warning@no@line{Label(s) may have changed. + Rerun to get cross-references right}% + \else + \immediate\write\LWR@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} @@ -22652,7 +22839,7 @@ end -- not --version % \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 @@ end -- not --version % \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 @@ end -- not --version % 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 @@ end -- not --version % \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,13 +29097,13 @@ autopage-\theLWR@currentautosec% \newcommand*{\LWR@newautoidanchor}{% \ifnumcomp{\value{LWR@lateximagedepth}}{>}{0}% {}% -{ +{% \ifbool{LWR@freezethisautoid}{}{% \addtocounter{LWR@thisautoid}{1}% \LWR@htmltag{a id="\LWR@print@mbox{autoid-\arabic{LWR@thisautoid}}"}% \LWR@htmltag{/a}% }% -} +}% } % \end{macrocode} % \end{macro} @@ -29079,7 +29266,7 @@ autopage-\theLWR@currentautosec% % \changes{v0.58}{2018/06/07}{Improved print/\HTML\ output selection.} % \begin{macrocode} \newcommand*{\LWR@HTML@caption@begin}[1] -{ +{% \LWR@traceinfo{LWR@HTML@caption@begin}% % \end{macrocode} % Keep par and minipage changes local: @@ -30142,6 +30329,10 @@ autopage-\theLWR@currentautosec% \let\textellipsis\LWR@origtextellipsis% \let\textless\LWR@origtextless% \let\textgreater\LWR@origtextgreater% +% \end{macrocode} +% \changes{v0.70}{2019/03/28}{Fix: \cs{\&} in a lateximage.} +% \begin{macrocode} +\let\&\LWR@origampersand% \LetLtxMacro\rmfamily\LWR@origrmfamily% \LetLtxMacro\sffamily\LWR@origsffamily% \LetLtxMacro\ttfamily\LWR@origttfamily% @@ -30186,10 +30377,6 @@ autopage-\theLWR@currentautosec% % \begin{macrocode} \let\newline\LWR@orignewline% \LetLtxMacro\includegraphics\LWR@origincludegraphics% -\let\TeX\LWR@origTeX% -\let\LaTeX\LWR@origLaTeX% -\let\LaTeXe\LWR@origLaTeXe% -\renewcommand*{\Xe}{X\textsubscript{E}}% % \end{macrocode} % \changes{v0.42}{2017/10/16}{Improved \cs{ensuremath}.} % \begin{macrocode} @@ -30390,13 +30577,13 @@ autopage-\theLWR@currentautosec% \LWR@origincludegraphics{\LWR@baselinename}% } }{ - \PackageWarning{lwarp}{Load graphicx or graphics + \PackageWarningNoLine{lwarp}{Load graphicx or graphics for improved SVG math baselines,} \newcommand*{\LWR@addbaselinemarker}{} } } }{% lwarp_baseline_marker.png or .eps is not present - \PackageWarning{lwarp}{File \LWR@baselinename\space is not installed alongside + \PackageWarningNoLine{lwarp}{File \LWR@baselinename\space is not installed alongside the lwarp-*.sty files, so SVG math baselines may not be accurate,} \newcommand*{\LWR@addbaselinemarker}{} } @@ -31114,7 +31301,8 @@ autopage-\theLWR@currentautosec% % \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@origequation\equation @@ -32461,7 +32649,14 @@ autopage-\theLWR@currentautosec% } % \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@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 @@ autopage-\theLWR@currentautosec% % % \begin{macrocode} \AtEndPreamble{ -\RequirePackage{cleveref} + \RequirePackage{cleveref} } % \end{macrocode} % @@ -33504,8 +33699,11 @@ autopage-\theLWR@currentautosec% % \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@HTML@makebox}{>{\SplitArgument{1}{,}}d() o o m}{% +\NewDocumentCommand{\LWR@HTML@makebox}{>{\SplitArgument{1}{,}}d() o o +m}{% % \end{macrocode} % % Build the style depending on arguments: @@ -33521,15 +33719,20 @@ autopage-\theLWR@currentautosec% }% }% {% [width] - \setlength{\LWR@tempwidth}{#2}% - \appto{\LWR@temptwo}{% - width:\LWR@printlength{\LWR@tempwidth} ; % space - }% - \IfValueT{#3}% - {% [width] [posn] - \LWR@@makebox@align{#3}% + \IfValueT{#2}% [width] + {% + \setlength{\LWR@tempwidth}{#2}% + \ifdimgreater{\LWR@tempwidth}{0pt}{% + \appto{\LWR@temptwo}{% + width:\LWR@printlength{\LWR@tempwidth} ; % space + }% + }{}% }% }% + \IfValueT{#3}% + {% [width] [posn] + \LWR@@makebox@align{#3}% + }% \InlineClass[% \LWR@print@mbox{display:inline-block} ; % \LWR@temptwo% @@ -33547,11 +33750,10 @@ autopage-\theLWR@currentautosec% % \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@origframebox\framebox - -\NewDocumentCommand{\LWR@HTML@framebox}{d() o o m}{% +\NewDocumentCommand{\LWR@HTML@framebox}{d() o o +m}{% \fbox{\makebox(#1)[#2][#3]{#4}}% } @@ -33614,7 +33816,8 @@ color:\LWR@origpound\LWR@tempcolor% \LWR@traceinfo{HTML fbox}% \LWR@forceminwidth{\fboxrule}% \InlineClass[% -\LWR@fboxstyle% + \LWR@print@mbox{display:inline-block} ; % + \LWR@fboxstyle% ]{fbox}{#1}% } % \end{macrocode} @@ -33781,17 +33984,10 @@ color:\LWR@origpound\LWR@tempcolor% % \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@HTML@raisebox}{m o o m}{% #4% } @@ -35135,28 +35331,66 @@ color:\LWR@origpound\LWR@tempcolor% % 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@LwarpStart}. +% so after loading other packages, and at the beginning of the document, +% their definitions are finally set by \cs{LWR@formatted}. % % For \CSS\ conversions, see: \\ % \url{http://edward.oconnor.cx/2007/08/tex-poshlet} \\ % \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 @@ color:\LWR@origpound\LWR@tempcolor% % \LaTeX, \LuaTeX, \ConTeXt, etc. % \changes{v0.42}{2017/10/20}{If \progcode{FormatWP} use explicit style.} % \begin{macrocode} -\LetLtxMacro\LWR@origTeX\TeX - -\newrobustcmd*{\LWR@TeX} +\newrobustcmd*{\LWR@HTML@TeX} {% \InlineClass{latexlogofont}% {% @@ -35180,6 +35412,7 @@ color:\LWR@origpound\LWR@tempcolor% }% }% } +\AtBeginDocument{\LWR@formatted{TeX}}% may have been patched by metalogo % \end{macrocode} % \end{macro} % @@ -35187,9 +35420,7 @@ color:\LWR@origpound\LWR@tempcolor% % \changes{v0.42}{2017/10/20}{If \progcode{FormatWP} use explicit style.} % \begin{macro}{\LaTeXe} \LaTeX, \LaTeXe % \begin{macrocode} -\LetLtxMacro\LWR@origLaTeX\LaTeX - -\newrobustcmd*{\LWR@LaTeX} +\newrobustcmd*{\LWR@HTML@LaTeX} {% \InlineClass{latexlogofont}% {% @@ -35204,9 +35435,10 @@ color:\LWR@origpound\LWR@tempcolor% }% } -\LetLtxMacro\LWR@origLaTeXe\LaTeXe +\AtBeginDocument{\LWR@formatted{LaTeX}}% may have been patched by metalogo -\renewrobustcmd*{\LaTeXe} + +\newrobustcmd*{\LWR@HTML@LaTeXe} {% \LaTeX% \InlineClass{latexlogofont}{% @@ -35216,6 +35448,7 @@ color:\LWR@origpound\LWR@tempcolor% }% }% } +\AtBeginDocument{\LWR@formatted{LaTeXe}}% may have been patched by metalogo % \end{macrocode} % \end{macro} % \end{macro} @@ -35224,8 +35457,11 @@ color:\LWR@origpound\LWR@tempcolor% % \begin{macro}{\LuaTeX} % \begin{macro}{\LuaLaTeX} \LuaTeX, \LuaLaTeX % \begin{macrocode} -\newrobustcmd*{\LWR@LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX} -\newrobustcmd*{\LWR@LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX} +\newrobustcmd*{\LWR@HTML@LuaTeX}{\InlineClass{latexlogofont}{Lua}\TeX} +\AtBeginDocument{\LWR@formatted{LuaTeX}}% may have been patched by metalogo + +\newrobustcmd*{\LWR@HTML@LuaLaTeX}{\InlineClass{latexlogofont}{Lua}\LaTeX} +\AtBeginDocument{\LWR@formatted{LuaLaTeX}}% may have been patched by metalogo % \end{macrocode} % \end{macro} % \end{macro} @@ -35241,23 +35477,28 @@ color:\LWR@origpound\LWR@tempcolor% % |xelatexlogo| is a \CSS\ class which aligns the backwards E in \XeLaTeX{} and spaces % \LaTeX{} appropriately. % \begin{macrocode} -\newrobustcmd*{\Xe} +\newrobustcmd*{\LWR@HTML@Xe} {% X% \InlineClass{xelatexlogosub}{\HTMLunicode{18e}}% } +\AtBeginDocument{\LWR@formatted{Xe}}% may have been patched by metalogo -\newrobustcmd*{\LWR@XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX} +\newrobustcmd*{\LWR@HTML@XeTeX}{\InlineClass{xelatexlogo}{\Xe}\TeX} +\AtBeginDocument{\LWR@formatted{XeTeX}}% may have been patched by metalogo -\newrobustcmd*{\LWR@XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX} +\newrobustcmd*{\LWR@HTML@XeLaTeX}{\InlineClass{xelatexlogo}{\Xe}\LaTeX} +\AtBeginDocument{\LWR@formatted{XeLaTeX}}% may have been patched by metalogo % \end{macrocode} % \end{macro} % \end{macro} % \begin{macro}{\ConTeXt} \ConTeXt % \begin{macrocode} -\newrobustcmd*{\LWR@ConTeXt} -{\InlineClass{latexlogofont}{Con}\TeX{}% -\InlineClass{latexlogofont}{t}} +\newrobustcmd*{\LWR@HTML@ConTeXt}{% + \InlineClass{latexlogofont}{Con}\TeX{}% + \InlineClass{latexlogofont}{t}% +} +\LWR@formatted{ConTeXt} % \end{macrocode} % \end{macro} % @@ -35265,11 +35506,13 @@ color:\LWR@origpound\LWR@tempcolor% % \begin{macro}{\BibTeX} % \begin{macro}{\MakeIndex} \BibTeX, \MakeIndex % \begin{macrocode} -\providerobustcmd*{\BibTeX} -{\InlineClass{latexlogofont}{B\textsc{ib}}\TeX} +\newrobustcmd*{\LWR@HTML@BibTeX} + {\InlineClass{latexlogofont}{B\textsc{ib}}\TeX} +\LWR@formatted{BibTeX} -\newrobustcmd*{\MakeIndex} -{\InlineClass{latexlogofont}{\textit{MakeIndex}}} +\newrobustcmd*{\LWR@HTML@MakeIndex} + {\InlineClass{latexlogofont}{\textit{MakeIndex}}} +\LWR@formatted{MakeIndex} % \end{macrocode} % \end{macro} % \end{macro} @@ -35281,7 +35524,7 @@ color:\LWR@origpound\LWR@tempcolor% % |amslogo| is a \CSS\ class used for the \AmS\ logo. % \begin{macrocode} \AtBeginDocument{% -\DeclareDocumentCommand{\AmS}{} +\newrobustcmd*{\LWR@HTML@AmS} {% \InlineClass{amslogo}{% \textit{% @@ -35291,6 +35534,7 @@ color:\LWR@origpound\LWR@tempcolor% }% }% }% +\LWR@formatted{AmS} } % \end{macrocode} % \end{macro} @@ -35298,7 +35542,8 @@ color:\LWR@origpound\LWR@tempcolor% % % \begin{macro}{\MiKTeX} \MiKTeX % \begin{macrocode} -\newrobustcmd*{\MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX} +\newrobustcmd*{\LWR@HTML@MiKTeX}{\InlineClass{latexlogofont}{MiK}\TeX} +\LWR@formatted{MiKTeX} % \end{macrocode} % \end{macro} % @@ -35308,7 +35553,8 @@ color:\LWR@origpound\LWR@tempcolor% % % |lyxlogo| is a \CSS\ class used for the \LyX\ logo. % \begin{macrocode} -\newrobustcmd*{\LyX}{\InlineClass{lyxlogo}{LyX}} +\newrobustcmd*{\LWR@HTML@LyX}{\InlineClass{lyxlogo}{LyX}} +\LWR@formatted{LyX} % \end{macrocode} % \end{macro} % @@ -35318,43 +35564,6 @@ color:\LWR@origpound\LWR@tempcolor% % \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}} @@ -36758,77 +36967,96 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"% }% 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@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@syncmathjax - \booltrue{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ +\newcommand*{\LWR@amsmathenv@@before}[1]{% \begin{BlockClass}{displaymathnumbered} \LWR@newautoidanchor% \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbodynumbered{multline}] + \begin{lateximage}[\LWR@amsmathbodynumbered{#1}] \LWR@applyxfakebold% } +% \end{macrocode} +% \end{noindmacro} +% +% +% \begin{noindmacro}{\LWR@amsmathenv@before} \marg{environment name} +% +% Embeds the environment with \brand{MathJax} or a \env{lateximage}. +% \begin{macrocode} +\newcommand*{\LWR@amsmathenv@before}[1]{% + \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% + { + \LWR@syncmathjax + \boolfalse{LWR@amsmultline} + \ifstrequal{#1}{multline}{\booltrue{LWR@amsmultline}}{} + \ifstrequal{#1}{multline*}{\booltrue{LWR@amsmultline}}{} +% \end{macrocode} +% \pkg{autonum}'s ``+'' environments are not supported by \brand{MathJax}. +% \begin{macrocode} + \LWR@beginhideamsmath + } + { + \LWR@amsmathenv@@before{multline} + } } - -\AfterEndEnvironment{multline}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \boolfalse{LWR@amsmultline} - \LWR@addmathjax{multline}{\the\@envbody} +% \end{macrocode} +% \end{noindmacro} +% +% +% \begin{noindmacro}{\LWR@amsmathenv@@after} +% +% Embeds the environment inside a \env{lateximage}. +% \begin{macrocode} +\newcommand*{\LWR@amsmathenv@@after}{% + \end{lateximage}\end{BlockClass} } -{\end{lateximage}\end{BlockClass}} - +% \end{macrocode} +% \end{noindmacro} +% +% +% \begin{noindmacro}{\LWR@amsmathenv@after} \marg{environment name} +% +% Embeds the environment with \brand{MathJax} or a \env{lateximage}. +% \begin{macrocode} +\newcommand*{\LWR@amsmathenv@after}[1]{% + \ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% + { + \LWR@endhideamsmath + \boolfalse{LWR@amsmultline} + \LWR@addmathjax{#1}{\the\@envbody} + } + {\LWR@amsmathenv@@after} } % \end{macrocode} +% \end{noindmacro} +% +% +% \begin{environment}{multline} +% \begin{macrocode} +\BeforeBeginEnvironment{multline}{\LWR@amsmathenv@before{multline}} + +\AfterEndEnvironment{multline}{\LWR@amsmathenv@after{multline}} +% \end{macrocode} % \end{environment} % \begin{environment}{multline*} % \begin{macrocode} -\BeforeBeginEnvironment{multline*}{ +\BeforeBeginEnvironment{multline*}{\LWR@amsmathenv@before{multline*}} -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \booltrue{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymath} - \LWR@newautoidanchor - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbody{multline*}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{multline*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \boolfalse{LWR@amsmultline} - \LWR@addmathjax{multline*}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} - -} +\AfterEndEnvironment{multline*}{\LWR@amsmathenv@after{multline*}} % \end{macrocode} % \end{environment} @@ -36836,197 +37064,53 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"% % \begin{environment}{gather} % \begin{macrocode} -\BeforeBeginEnvironment{gather}{ +\BeforeBeginEnvironment{gather}{\LWR@amsmathenv@before{gather}} -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymathnumbered} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbodynumbered{gather}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{gather}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{gather}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} - -} +\AfterEndEnvironment{gather}{\LWR@amsmathenv@after{gather}} % \end{macrocode} % \end{environment} % \begin{environment}{gather*} % \begin{macrocode} -\BeforeBeginEnvironment{gather*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymath} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbody{gather*}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{gather*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{gather*}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} +\BeforeBeginEnvironment{gather*}{\LWR@amsmathenv@before{gather*}} -} +\AfterEndEnvironment{gather*}{\LWR@amsmathenv@after{gather*}} % \end{macrocode} % \end{environment} % \begin{environment}{align} % \begin{macrocode} -\BeforeBeginEnvironment{align}{ +\BeforeBeginEnvironment{align}{\LWR@amsmathenv@before{align}} -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymathnumbered} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbodynumbered{align}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{align}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{align}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} - -} +\AfterEndEnvironment{align}{\LWR@amsmathenv@after{align}} % \end{macrocode} % \end{environment} % \begin{environment}{align*} % \begin{macrocode} -\BeforeBeginEnvironment{align*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymath} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbody{align*}] - \LWR@applyxfakebold% -} -} +\BeforeBeginEnvironment{align*}{\LWR@amsmathenv@before{align*}} -\AfterEndEnvironment{align*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{align*}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} - -} +\AfterEndEnvironment{align*}{\LWR@amsmathenv@after{align*}} % \end{macrocode} % \end{environment} % \begin{environment}{flalign} % \begin{macrocode} -\BeforeBeginEnvironment{flalign}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymathnumbered} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbodynumbered{flalign}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{flalign}{ +\BeforeBeginEnvironment{flalign}{\LWR@amsmathenv@before{flalign}} -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{flalign}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} - -} +\AfterEndEnvironment{flalign}{\LWR@amsmathenv@after{flalign}} % \end{macrocode} % \end{environment} % \begin{environment}{flalign*} % \begin{macrocode} -\BeforeBeginEnvironment{flalign*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymath} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbody{flalign*}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{flalign*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{flalign*}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} +\BeforeBeginEnvironment{flalign*}{\LWR@amsmathenv@before{flalign*}} -} +\AfterEndEnvironment{flalign*}{\LWR@amsmathenv@after{flalign*}} % \end{macrocode} % \end{environment} @@ -37034,66 +37118,18 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"% % \begin{environment}{alignat} % \changes{v0.51}{2018/03/11}{Fix: Added.} % \begin{macrocode} -\BeforeBeginEnvironment{alignat}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymathnumbered} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbodynumbered{alignat}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{alignat}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{alignat}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} +\BeforeBeginEnvironment{alignat}{\LWR@amsmathenv@before{alignat}} -} +\AfterEndEnvironment{alignat}{\LWR@amsmathenv@after{alignat}} % \end{macrocode} % \end{environment} % \begin{environment}{alignat*} % \begin{macrocode} -\BeforeBeginEnvironment{alignat*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@syncmathjax - \boolfalse{LWR@amsmultline} - \LWR@beginhideamsmath -} -{ - \begin{BlockClass}{displaymath} - \LWR@newautoidanchor% - \booltrue{LWR@indisplaymathimage}% - \begin{lateximage}[\LWR@amsmathbody{alignat*}] - \LWR@applyxfakebold% -} -} - -\AfterEndEnvironment{alignat*}{ - -\ifboolexpr{bool{mathjax} or ( bool{FormatWP} and bool{WPMarkMath} ) }% -{ - \LWR@endhideamsmath - \LWR@addmathjax{alignat*}{\the\@envbody} -} -{\end{lateximage}\end{BlockClass}} +\BeforeBeginEnvironment{alignat*}{\LWR@amsmathenv@before{alignat*}} -} +\AfterEndEnvironment{alignat*}{\LWR@amsmathenv@after{alignat*}} % \end{macrocode} % \end{environment} % @@ -38146,10 +38182,85 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"% \renewcommand*{\authorcr}{\protect\LWR@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@ProvidesPackageDrop{autonum}[2015/01/18] +% \end{macrocode} +% +% \begin{macrocode} +\RequirePackage{amsmath} + + +\newenvironment{equation+}{\equation}{\endequation} + + +\newenvironment{gather+}{\gather}{\endgather} + +\BeforeBeginEnvironment{gather+}{\LWR@amsmathenv@@before{gather+}} + +\AfterEndEnvironment{gather+}{\LWR@amsmathenv@@after} + + +\newenvironment{multline+}{\multline}{\endmultline} + +\BeforeBeginEnvironment{multline+}{\LWR@amsmathenv@@before{multline+}} + +\AfterEndEnvironment{multline+}{\LWR@amsmathenv@@after} + + +\newenvironment{flalign+}{\flalign}{\endflalign} + +\BeforeBeginEnvironment{flalign+}{\LWR@amsmathenv@@before{flaline+}} + +\AfterEndEnvironment{flalign+}{\LWR@amsmathenv@@after} + + +\newenvironment{align+}{\align}{\endalign} + +\BeforeBeginEnvironment{align+}{\LWR@amsmathenv@@before{aline+}} + +\AfterEndEnvironment{align+}{\LWR@amsmathenv@@after} + + +\newenvironment{alignat+}{\alignat}{\endalignat} + +\BeforeBeginEnvironment{alignat+}{\LWR@amsmathenv@@before{alineat+}} + +\AfterEndEnvironment{alignat+}{\LWR@amsmathenv@@after} + + +\newenvironment{split+}{\split}{\endsplit} +% \end{macrocode} +% +% \iffalse +%</autonum> % \fi % % @@ -39626,7 +39737,11 @@ s% \let\caption@makeanchor\@firstofone \fi \@makecaption{\csname fnum@#1\endcsname}% - {\ignorespaces\caption@makeanchor{#3}}\par + {\ignorespaces\caption@makeanchor{#3}}% +% \end{macrocode} +% \changes{v0.70}{2019/03/24}{\pkg{caption}: Fix: Extra par tags.} +% \begin{macrocode} +% \par \caption@if@minipage\@minipagetrue\@minipagefalse}% \caption@end% } @@ -39806,6 +39921,61 @@ s% % % % +% \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@ProvidesPackagePass{changelayout}[2009/10/07] +% \end{macrocode} +% +% \begin{macrocode} +\renewrobustcmd\cpl@backtodefaults{} + +\renewrobustcmd\cpl@checkifoddpage{% + \cpl@oddpagefalse% +} + +\renewrobustcmd\changepagelayout[1]{% + \setkeys[KV]{changelay}{#1}% +} + +\renewrobustcmd{\changetextlayout}[1]{\changepagelayout{#1}} + +\renewrobustcmd\adjustpagelayout[1]{% + \setkeys[KV@X]{changelay}{#1}% +} + +\renewrobustcmd{\adjusttextlayout}[1]{\adjustpagelayout{#1}} + +\renewrobustcmd\adjusttextwidth[1]{% + \setkeys[KV]{changelay}{#1}% + \begin{BlockClass}[color:\LWR@colorstyle{named}{\cpl@textcolor}]{changelayout} + \color{\cpl@textcolor}% + \cpl@content + \end{BlockClass} +} +% \end{macrocode} +% +% \iffalse +%</changelayout> +% \fi +% +% +% % % \iffalse %<*changepage> @@ -39871,63 +40041,126 @@ s% % \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@ProvidesPackagePass{changes}[2015/04/27] +\LWR@ProvidesPackagePass{changes}[2019/01/26] % \end{macrocode} % % \begin{macrocode} -\xpatchcmd{\Changes@output} - {#1} - {\LWR@textcurrentcolor{#1}} - {} - {\LWR@patcherror{changes}{Changes@output}} +\renewcommand{\ChangesListline}[4]{% + \IfSubStr{\Changes@loc@show}{#1}{% + \LWR@startpars% + #2: #3 \qquad + \nameref{autopage-#4}% + \LWR@stoppars% + }{}% +} -\xpatchcmd{\listofchanges} - { - \ifthenelse{\equal{\Changes@InID}{\@empty}} - {\changesauthorname: \changesanonymousname} - {% - \changesauthorname: \Changes@InID - \ifthenelse{\equal{\Changes@InName}{\@empty}} - {} - { (\Changes@InName)} - } - } - { - \LWR@textcurrentcolor{% lwarp - \ifthenelse{\equal{\Changes@InID}{\@empty}} - {\changesauthorname: \changesanonymousname} +\renewcommand{\Changes@summaryline}[4]{% + \IfSubStr{\Changes@loc@show}{#1}{% + \ifthenelse{\not\equal{\Changes@loc@style}{compactsummary} \or #2 > 0}% {% - \changesauthorname: \Changes@InID - \ifthenelse{\equal{\Changes@InName}{\@empty}} - {} - { (\Changes@InName)} - } - } - } + #3:~#2#4% + }{}% + }{}% +} + +\xpatchcmd{\listofchanges} + {{\changesauthorname: \changesanonymousname}} + {{\LWR@textcurrentcolor{\changesauthorname: \changesanonymousname}}} {} - {\LWR@patcherror{changes}{listofchanges}} + {\LWR@patcherror{changes}{listofchanges A}} \xpatchcmd{\listofchanges} - {\parbox{\Changes@Len@summ}} + {\changesauthorname: \Changes@InID} + {\LWR@textcurrentcolor{\changesauthorname: \Changes@InID}} {} + {\LWR@patcherror{changes}{listofchanges B}} + +\xpatchcmd{\listofchanges} + {(\Changes@InName)} + {\LWR@textcurrentcolor{(\Changes@InName)}} {} - {\LWR@patcherror{changes}{listofchanges}} + {\LWR@patcherror{changes}{listofchanges C}} \xpatchcmd{\listofchanges} - {\parbox{\Changes@Len@summ}} + {\parbox{\Changes@summary@width}} {} {} - {\LWR@patcherror{changes}{listofchanges}} + {\LWR@patcherror{changes}{listofchanges D}} -\xpatchcmd{\listofchanges} - {\parbox{\Changes@Len@summ}} +\xpatchcmd{\Changes@Markup@comment} + {% + \ifthenelse{\isAnonymous{#2}}% + {\textbf{[\arabic{Changes@commentCount#2}]:} }% + {\textbf{[#3~\arabic{Changes@commentCount#2}]:} }% + #1% + } + {% + \LWR@textcurrentcolor{% lwarp + \ifthenelse{\isAnonymous{#2}}% + {\textbf{[\arabic{Changes@commentCount#2}]:} }% + {\textbf{[#3~\arabic{Changes@commentCount#2}]:} }% + #1% + }% lwarp + } + {} + {\LWR@patcherror{changes}{\Changes@Markup@comment A}} + +\xpatchcmd{\Changes@Markup@comment} + {% + \uwave{% + \ifthenelse{\isAnonymous{#2}}% + {\textbf{[\arabic{Changes@commentCount#2}]:} }% + {\textbf{[#3~\arabic{Changes@commentCount#2}]:} }% + #1% + }% + } + {% + \LWR@textcurrentcolor{% lwarp + \uwave{% + \ifthenelse{\isAnonymous{#2}}% + {\textbf{[\arabic{Changes@commentCount#2}]:} }% + {\textbf{[#3~\arabic{Changes@commentCount#2}]:} }% + #1% + }% + }% lwarp + } + {} + {\LWR@patcherror{changes}{\Changes@Markup@comment B}} + +\xpatchcmd{\Changes@output} + {\Changes@Markup@author{\Changes@output@author{#2}{left}}} + {\LWR@textcurrentcolor{\Changes@Markup@author{\Changes@output@author{#2}{left}}}} + {} + {\LWR@patcherror{changes}{Changes@output A}} + +\xpatchcmd{\Changes@output} + {% + \ifthenelse{\equal{#1}{added}}{\Changes@Markup@added{#3}}{}% + \ifthenelse{\equal{#1}{deleted}}{\Changes@Markup@deleted{#4}}{}% + \ifthenelse{\equal{#1}{replaced}}{{\Changes@Markup@added{#3}}\allowbreak\Changes@Markup@deleted{#4}}{}% + \ifthenelse{\equal{#1}{highlight}}{\Changes@Markup@highlight{#3}}{}% + } + {% + \LWR@textcurrentcolor{% + \ifthenelse{\equal{#1}{added}}{\Changes@Markup@added{#3}}{}% + \ifthenelse{\equal{#1}{deleted}}{\Changes@Markup@deleted{#4}}{}% + \ifthenelse{\equal{#1}{replaced}}{{\Changes@Markup@added{#3}}\allowbreak\Changes@Markup@deleted{#4}}{}% + \ifthenelse{\equal{#1}{highlight}}{\Changes@Markup@highlight{#3}}{}% + }% + } {} + {\LWR@patcherror{changes}{Changes@output B}} + +\xpatchcmd{\Changes@output} + {\Changes@Markup@author{\Changes@output@author{#2}{right}}} + {\LWR@textcurrentcolor{\Changes@Markup@author{\Changes@output@author{#2}{right}}}} {} - {\LWR@patcherror{changes}{listofchanges}} + {\LWR@patcherror{changes}{Changes@output C}} % \end{macrocode} % % \iffalse @@ -49263,6 +49496,49 @@ alt="\LWR@igalt" \LWR@orignewline% % % % +% \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@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@prim@input}[1]{% + \typeout{\IT@indent\IT@currfile INPUTTING #1}% +%% ... TODO: option to write to `.log' only. + \xdef\IT@filestack{{\IT@currfile}\IT@filestack}% + \xdef\IT@currfile{#1}% + \expandafter \gdef\expandafter \IT@indent\expandafter{% + \IT@indent \IT@indent@unit}% lwarp + \@@input#1% lwarp + \expandafter\IT@pop@indent\IT@indent \@nil% lwarp + \expandafter\IT@pop@file \IT@filestack\@nil% lwarp + \IT@maybe@returnmessage%% v0.2 lwarp +} +% \end{macrocode} +% +% \iffalse +%</inputtrc> +% \fi +% +% % % \iffalse %<*intopdf> @@ -51747,6 +52023,61 @@ alt="\LWR@igalt" \LWR@orignewline% % % % \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@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 @@ background: % \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@ProvidesPackageDrop{metalogo}[2010/05/29] +\LWR@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@HTML@setlogokern}[2]{} +\newcommand*{\LWR@HTML@setlogodrop}[2][XeTeX]{} +\newcommand*{\LWR@HTML@setLaTeXa}[1]{} +\newcommand*{\LWR@HTML@setLaTeXee}[1]{} +\newcommand*{\LWR@HTML@seteverylogo}[1]{} +\newcommand*{\LWR@HTML@everylogo}[1]{} + +\LWR@formatted{setlogokern} +\LWR@formatted{setlogodrop} +\LWR@formatted{setLaTeXa} +\LWR@formatted{setLaTeXee} +\LWR@formatted{seteverylogo} +\LWR@formatted{everylogo} % \end{macrocode} % % \iffalse @@ -52437,6 +52776,43 @@ background: % % % +% \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@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@metalogox@currentformatting\LWR@formatting + \renewcommand*{\LWR@formatting}{print}% + \autoadjustlogos* + \let\LWR@formatting\LWR@metalogox@currentformatting +} +% \end{macrocode} +% +% \iffalse +%</metalogox> +% \fi +% +% % % \iffalse %<*mhchem> @@ -52452,24 +52828,36 @@ background: % \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\ \} \$ \\ % \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 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', % \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 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', \newcommand*{\LWR@HTML@textnaira}{\HTMLunicode{20A6}} \newcommand*{\LWR@HTML@textpeso}{\HTMLunicode{20B1}} \newcommand*{\LWR@HTML@textrecipe}{\HTMLunicode{211E}} +\newcommand*{\LWR@HTML@textinterrobang}{\HTMLunicode{203D}} \newcommand*{\LWR@HTML@textinterrobangdown}{\HTMLunicode{2E18}} \newcommand*{\LWR@HTML@textperthousand}{\HTMLunicode{2030}} \newcommand*{\LWR@HTML@textpertenthousand}{\HTMLunicode{2031}} @@ -60258,6 +60648,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', \newcommand*{\LWR@HTML@textnaira}{₦} \newcommand*{\LWR@HTML@textpeso}{₱} \newcommand*{\LWR@HTML@textrecipe}{℞} +\newcommand*{\LWR@HTML@textinterrobang}{‽} \newcommand*{\LWR@HTML@textinterrobangdown}{⸘} \newcommand*{\LWR@HTML@textperthousand}{‰} \newcommand*{\LWR@HTML@textpertenthousand}{‱} @@ -60279,6 +60670,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', \LWR@formatted{textnaira} \LWR@formatted{textpeso} \LWR@formatted{textrecipe} +\LWR@formatted{textinterrobang} \LWR@formatted{textinterrobangdown} \LWR@formatted{textperthousand} \LWR@formatted{textpertenthousand} @@ -60346,6 +60738,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', \renewcommand*{\textnaira}{}% \renewcommand*{\textpeso}{}% \renewcommand*{\textrecipe}{}% + \renewcommand*{\textinterrobang}{}% \renewcommand*{\textinterrobangdown}{}% \renewcommand*{\textperthousand}{}% \renewcommand*{\textpertenthousand}{}% @@ -60449,6 +60842,7 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', % \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 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', % \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 @@ padding:\LWR@printlength{\fboxsep}% \NewDocumentCommand{\LWR@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 @@ height:\LWR@printlength{\LWR@tempheight}% \LWR@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 @@ height:\LWR@printlength{\LWR@tempheight}% \renewcommand*{\textnaira}{}% \renewcommand*{\textpeso}{}% \renewcommand*{\textrecipe}{}% + \renewcommand*{\textinterrobang}{}% \renewcommand*{\textinterrobangdown}{}% \renewcommand*{\textperthousand}{}% \renewcommand*{\textpertenthousand}{}% |