summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/lwarp
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-04-30 22:38:25 +0000
committerKarl Berry <karl@freefriends.org>2019-04-30 22:38:25 +0000
commitfdeff4adfd93911260438e5e95b534e41970d0bf (patch)
treeaf995fae11b37e30a044effc1db855a7cf6f5c3e /Master/texmf-dist/source/latex/lwarp
parentb9d1e8848fb4f8e45796a706a0391734b0c88c7c (diff)
lwarp (29apr19)
git-svn-id: svn://tug.org/texlive/trunk@50914 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/lwarp')
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.dtx1236
-rw-r--r--Master/texmf-dist/source/latex/lwarp/lwarp.ins6
2 files changed, 1106 insertions, 136 deletions
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx
index a5004000864..e7b98b48d85 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/04/03 v0.70 Allows LaTeX to directly produce HTML5 output.]
+%<package> [2019/04/29 v0.71 Allows LaTeX to directly produce HTML5 output.]
%
%<*driver>
\documentclass{ltxdoc}
@@ -176,12 +176,19 @@
\usepackage{comment}
-\usepackage{tocloft}
-\renewcommand{\cftpartfont}{\Large\bfseries}
-\setlength{\cftsecnumwidth}{2.5em}
-\setlength{\cftsubsecnumwidth}{3em}
-\setlength{\cftsubsubsecindent}{2.8em}
-\setlength{\cftsubsubsecnumwidth}{4em}
+% ^^A tocloft had issues with \textsc
+% \usepackage{tocloft}
+% \renewcommand{\cftpartfont}{\Large\bfseries}
+% \setlength{\cftsecnumwidth}{2.5em}
+% \setlength{\cftsubsecnumwidth}{3em}
+% \setlength{\cftsubsubsecindent}{2.8em}
+% \setlength{\cftsubsubsecnumwidth}{4em}
+
+\usepackage{titletoc}
+\dottedcontents{part}[0em]{\large\bfseries}{3.5em}{1pc}
+\dottedcontents{section}[2em]{\bfseries}{3.5em}{1pc}
+\dottedcontents{subsection}[4em]{}{3.5em}{1pc}
+\dottedcontents{subsubsection}[6em]{}{4em}{1pc}
\usepackage[notbib,notindex,nottoc]{tocbibind}
@@ -260,14 +267,20 @@ Keywords={LaTeX, HTML, conversion}%
}
\makeatother
-\newcommand{\goesto}{$\Rightarrow$}
+\newcommand*{\goesto}{$\Rightarrow$}
+
+\newcommand*{\AV}{\acro{A}\Slash\acro{V}}
+
+\makeatletter
+\@ifpackageloaded{erewhon}{\renewcommand*{\HTMLfive}{\acro{HTML}\textosf{5}}}{}
+\makeatother
\newcommand{\credits}[1]{{\footnotesize(\textit{Emulates or patches code by} \textsc{#1}.)}}
-\newcommand{\codehtml}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for HTML output:~}}}\vspace{-5.25ex}}
-\newcommand{\codeprint}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for PRINT output:~}}}\vspace{-5.25ex}}
-\newcommand{\codeall}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for HTML \& PRINT:~}}}\vspace{-5.25ex}}
-\newcommand{\codeconfig}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{Config file:~}}}\vspace{-5.25ex}}
+\newcommand*{\codehtml}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for HTML output:~}}}\vspace{-5.25ex}}
+\newcommand*{\codeprint}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for PRINT output:~}}}\vspace{-5.25ex}}
+\newcommand*{\codeall}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{for HTML \& PRINT:~}}}\vspace{-5.25ex}}
+\newcommand*{\codeconfig}{\leavevmode\marginpar{\footnotesize\raggedleft\textcolor{codecolor}{\textbf{Config file:~}}}\vspace{-5.25ex}}
\newcommand*{\testthis}{\textcolor{blue}{Please send bug reports!}\watchout[Not fully tested!]}
@@ -1651,6 +1664,50 @@ document. Renew these macros before using the \env{overpic} and \env{Overpic}
environments.
}
+\newcommand*{\limitsmultimedia}{%
+The packages \pkg{multimedia}, \pkg{movie15}, and \pkg{media9} are supported.
+
+\HTMLfive\ \element{audio} and \element{video} objects are created for
+\filenm{.mp3} and \filenm{.mp4} files.
+
+\HTMLfive\ \element{embed} objects are created for \filenm{http} and \filenm{ftp} links.
+
+\cs{href} links are created for other media types.
+(Unfortunately, there is not much overlap between the file types supported for print
+output and the file types supported by \HTMLfive.)
+
+For \pkg{media9}, a multimedia object is inserted for each \optn{addresource=},
+as well as each \optn{flashvars} \optn{source=} and \optn{src=}.
+This may result in duplicate objects.
+
+Undesired objects may be nullified by placing them inside \cs{warpprintonly}
+or the \env{warpprint} environment.
+
+Each \HTML\ multimedia object includes the poster text, except for \element{embed} objects.
+For \pkg{movie15}, the \optn{text} option is supported to specify the poster text.
+
+The \optn{width}, \optn{height}, and \optn{totalheight} options are supported.
+The \HTML\ object is scaled according to the display width, correctly compensating
+for either tall or wide viewports.
+
+Other options are ignored.
+
+\pkg{media9} \cs{addmediapath} is supported. It is assumed that the same path
+structure will exist for the \HTML\ document.
+
+\HTMLfive\ media controls are always specified for each \element{audio}
+and \element{video} object.
+
+\pkg{media9} slideshows are not supported.
+
+\cs{hyperlinkmovie}, \cs{movieref}, and \cs{mediabutton} are not supported.
+
+3D objects are not supported.
+
+If using a \brand{YouTube}\texttrademark\ video, use an ``embedded'' \URL\ with \dots\texttt{/embed/}\dots\
+instead of \dots\texttt{/v/}\dots
+}
+
\newcommand{\limitstabbing}{%
The \env{tabbing} environment works, except that \SVG\ math and \env{lateximage}s
do not yet work inside the environment.
@@ -1666,7 +1723,7 @@ a single \SVG\ image.
\newcommand{\limitstabular}{%
Tabular mostly works as expected, but pay special attention to the
following, especially if working with environments, macros inside tabulars,
-multirows, \texttt{*} column specifiers, \pkg{siunitx} \texttt{S} columns,
+multirows, \pkg{siunitx} \texttt{S} columns,
or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xtab}.
\begin{description}
\item [Defining macros and environments:] \
@@ -1707,10 +1764,6 @@ or the packages \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, or \pkg{xta
\item [Column specifiers:] \
\begin{itemize}
- \item \texttt{*} in a column specification is not used (so far).
- \trouble[* column specification]{tabular>*=\texttt{*} column specification}
- Repeat the column type the correct number of times.
-
\item Only one each of \texttt{@} and \texttt{!}
\margintag{\texttt{@} and \texttt{!}}
is used at each column, and they are used in that order.
@@ -2562,7 +2615,7 @@ This boolean may be tested by the user for later use.
%<*package>
% \fi
%
-% \CheckSum{31232}
+% \CheckSum{31686}
%
% \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
@@ -2675,6 +2728,7 @@ This boolean may be tested by the user for later use.
% \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}
+% \changes{v0.71}{2019/04/29}{\ 2019/04/29}
@@ -2724,12 +2778,12 @@ This boolean may be tested by the user for later use.
% (included with \brand{MiKTeX}) and \brand{Perl}.
% Detailed installation instructions are included for each of the
% major operating systems and \TeX\ distributions.
-%
+%
% A quick-start tutorial is provided, as well as extensive documentation
% for special cases, a general index, and a troubleshooting index.
-% Automatic testing of package load order and image generation offers
-% useful advice for resolving errors.
-%
+% Automatic error testing is provided for configuration files, package load order,
+% and image generation.
+%
% \SVG\ math and many other generated images
% include \LaTeX\ expressions in the \attribute{alt} tags.
% \brand{MathJax} may be used with advanced equation numbering
@@ -2800,10 +2854,13 @@ This boolean may be tested by the user for later use.
%
%
% \clearpage
+% \phantomsection
%
% \restoregeometry
%
-% \section{Support \protect\TeX\ development}
+% \section*{Support \protect\TeX\ development}
+% \addcontentsline{toc}{section}{Support \protect\TeX\ development}
+
% \label{sec:supportinglatex}
% \changes{v0.42}{2017/10/30}{Docs: Added support page.}
%
@@ -2867,6 +2924,9 @@ This boolean may be tested by the user for later use.
% \tableofcontents
%
% \clearpage
+% \phantomsection
+%
+%
% \listoffigures
% \listoftables
%
@@ -2889,6 +2949,24 @@ This boolean may be tested by the user for later use.
%
% \begin{description}
% \needspace{2\baselineskip}
+% \item[v0.71:] Error handling, multimedia, \env{tabular}.
+% \begin{itemize}
+% \item \env{tabular}: Added support for `\texttt{*}' columns.
+% Fix for paragraph tags.
+% \item \env{quotation}: Fix for \HTML\ tag.
+% \item Docs: Added a section about error conditions tested by \pkg{lwarp}.
+% See \cref{sec:errortestingmessages}.
+% \item \prog{lwarpmk}: If file \filenm{lwarpmk.conf} is an older version,
+% or the incorrect operating system,
+% displays the print command to use to recompile.
+% \item \pkg{chemfig}: Updated for v1.4.
+% \margintag{packages}
+% \item \pkg{endfloat}: Updated for v2.7.
+% \item \pkg{textpos}: Updated for v1.9.1.
+% \item Added \pkg{media9}, \pkg{movie15}, \pkg{multimedia}.
+% \margintag{multimedia}
+% \end{itemize}
+% \needspace{2\baselineskip}
% \item[v0.70:] Error handling, \brand{MathJax}, \pkg{mathtools}.
% \begin{itemize}
% \item Error handling for ``Label(s) changed.''
@@ -3707,8 +3785,9 @@ This boolean may be tested by the user for later use.
% \needspace{2\baselineskip}
% \item[v0.42:] \
% \begin{itemize}
-% \item Added \TeX\ development support page,
-% \nameref{sec:supportinglatex}.\margintag{Support \TeX!}
+% \item Added \TeX\ development support page.
+% (See page \pageref{sec:supportinglatex}.)
+% \margintag{Support \TeX!}
% \item Improved assitance for word-processor conversions when
% \margintag{word-processor conversion}
% boolean |FormatWP| is set |true|.
@@ -4616,7 +4695,7 @@ This boolean may be tested by the user for later use.
% \pkg{picture}, \pkg{tikz}, and \pkg{xy} are converted to an \SVG\ image.
%
% \pkg{asymptote}, \pkg{epsfig}, \pkg{epstopdf}, \pkg{figsize}, \pkg{fitbox},
-% \pkg{grffile}, \pkg{overpic},
+% \pkg{grffile}, \pkg{media9}, \pkg{movie15}, \pkg{multimedia}, \pkg{overpic},
% \pkg{psfrag}, \pkg{psfragx}, \pkg{pst-eps}, \pkg{pstool}, \pkg{pstricks},
% \pkg{rviewport}.
%
@@ -8629,6 +8708,24 @@ This boolean may be tested by the user for later use.
% \limitsoverpic
%
%
+% \subsubsection{Multimedia packages}
+%
+% \DescribePackage{multimedia}
+% \DescribePackage{movie15}
+% \DescribePackage{media9}
+% \trouble{multimedia=\pkg{multimedia}}
+% \trouble{media9=\pkg{media9}}
+% \trouble{movie15=\pkg{movie15}}
+% \trouble{graphics>multimedia}
+% \trouble{video}
+% \trouble{audio}
+% \gindex{video}
+% \gindex{audio}
+% \gindex{multimedia}
+% \limitsmultimedia
+%
+%
+%
% \subsection{Tabbing}
% \limitstabbing
%
@@ -9816,8 +9913,123 @@ This boolean may be tested by the user for later use.
% \gindex{FAQ}\gindex{Frequently Asked Questions}\gindex{bugs}
% \gindex{troubleshooting}\gindex{problems}\gindex{error messages}
% \gindex{debugging}
+% \trouble{error messages}
+% \trouble{warning messages}
+%
+%
+% \subsection{\pkg{lwarp} package error conditions and warnings}
+% \label{sec:errortestingmessages}
+% \changes{v0.71}{2019/04/11}{Docs: Error testing.}
%
-% \subsection{Using the \pkg{lwarp.sty} package}
+% \pkg{lwarp} tests for a number of error conditions and prints appropriate
+% warnings. The following is a summary of these conditions.
+%
+% \subsubsection{Configuration file \filenm{lwarpmk.conf}}
+%
+% \begin{description}
+% \item[File does not exist:] The configuration file must exist for \pkg{lwarpmk}.
+% \item[Incorrect \optn{Unix} \slash \optn{Windows} selection:] The operating
+% system which was detected by \pkg{lwarp}. So far only \optn{Unix} and \optn{Windows}
+% are supported.
+% \item[Incorrect delimiter characters.] Older versions of \prog{lwarpmk} used
+% a different delimiter.
+% \item[Source name is set to \optn{lwarp}:]
+% \pkg{lwarp} has recently been recompiled in this directory,
+% which overwrote the project's configuration files.
+% This also occurs if \prog{lwarpmk} is executed in \pkg{lwarp}'s source directory.
+% \item[Incorrect operating system:] The configuratio file was set for a
+% different operating system, perhaps due to sharing in a collaborative project.
+% \item[Outdated configuration files:] \pkg{lwarp} has
+% been updated since this projects was last compiled.
+% If there appears to be a valid print command in the file, \pkg{lwarpmk} displays
+% this to instruct the user how to recompile the print version, which then
+% updates the configuration files.
+% \item[The designated source file does not exist:] For whatever reason\dots
+% \item[Unknown engine:] \pkg{lwarp} cannot determing which engine is being used.
+% Supported are \DVI\ \LaTeX, \PDF\ \LaTeX, \XeLaTeX, \LuaLaTeX, and up\LaTeX.
+% \end{description}
+%
+% \subsubsection{Image generation with \cmds{lwarpmk limages}}
+%
+% \begin{description}
+% \item[``Wait a moment for the images to complete before reloading page.'':] \
+%
+% Images
+% are generated by background tasks. If the document is reloaded before these
+% tasks are complete, some images may not yet be generated.
+% \prog{lwarpmk} tries to wait for background tasks to complete before exiting.
+% \item[\HTML\ version does not exist:] Images are extracted from the \HTML\ version,
+% which must be compiled before images are generated.
+% \item[\filenm{*-images.txt} does not exist:] This file tells which images to
+% extract from the \HTML\ file. If the file does not exist, it may be that
+% no \SVG\ math or \env{lateximage}s were used.
+% If so, \cmds{lwarpmk limages} is not necessary.
+% \item[Cross references are not correct:] The document must have up-to-date
+% cross references to locate the images to extract.
+% A number of conditions may cause incorrect cross references.
+% \item[``WARNING: Images will be incorrect.'':] An image reference was not found.
+% Recompile.
+% \item[\cmds{lwarpmk epstopdf *} or \cmds{lwarpmk pdftosvg *}:] Errors if
+% filenames are not found.
+% \end{description}
+%
+% \subsubsection{Default bitmapped font}
+%
+% \pkg{lwarp} requires the use of a vector font.
+% If \pkg{lwarp} detects that the document uses the default
+% \brand{Computer Modern} font, and the \pkg{cm-super} package is not installed,
+% it is assumed that the font is bitmapped.
+% An error is generated, along with the recommendation to install \pkg{cm-super}
+% or use \pkg{lmodern}.
+%
+% \subsubsection{Packages}
+%
+% \begin{description}
+% \item[Loaded before \pkg{lwarp}:] Some packages and classes must be loaded
+% before \pkg{lwarp}. These include input and font encoding,
+% \pkg{morewrites} and \pkg{newclude},
+% and a number of CJK-related packages and classes.
+% \item[Loaded after \pkg{lwarp}:] Most packages which are modified by
+% \pkg{lwarp} must be loaded after \pkg{lwarp}.
+% \item[Loaded never:] Some packages do not work with \pkg{lwarp}.
+% An error is generated, along with a list of alternatives to consider.
+% \item[Specific packages:] Some packages enforce a specific load order vs.
+% certain other packages.
+% \item[Patching error:] \pkg{lwarp} tries to patch some packages using
+% \pkg{xpatch}. If the original package has been updated more recently than
+% \pkg{lwarp}, a patch may not work. It may be necessary to use an older version
+% of the package until \pkg{lwarp} is updated.
+% \item[\pkg{longtable}:] \pkg{lwarp}'s \pkg{longtable} package issues
+% detailed error messages regarding the use of the table headers and footers.
+% \end{description}
+%
+% \subsubsection{Compiling}
+%
+% \begin{description}
+% \item[Duplicate filenames:] \pkg{lwarp} may generate file names from section names.
+% While doing so, the filenames are simplified and special characters are removed.
+% If this process generates a duplicate filename, and error is generated,
+% describing the filename and which section name generated it.
+% \item[Multirow:] When \cs{multirow} or \cs{multicolrow} are used,
+% \cs{mrowcell} or \cs{mcolrowcell} must be placed in the appropriate cells to
+% avoid corrupted \HTML\ output.
+% \item[(width,height) missing a comma:] \cs{makebox} and \cs{framebox} can accept
+% a parenthesis-delimited width and height, which must be separated by a comma.
+% \item[``Load graphicx or graphics for improved SVG math baselines.'':] \SVG\ math
+% baselines are improved if either of these packages are used.
+% \item[``Load graphicx or graphics for improved XeTeX logo.'':] If these packages
+% are loaded, the \XeLaTeX\ logo can use the reversed ``E''.
+% \item[``It is recommended to use \texttt{[width=xx\cs{linewidth}]}
+% instead of
+% \texttt{[scale=yy]}
+% '':] Browser support of \optn{scale} is not
+% the same effect as \LaTeX.
+% \end{description}
+%
+%
+% \subsection{Using the \pkg{lwarp} package}
+%
+% The following address problems which may occur, and possible solutions to each.
%
% Also see: \\
% \Cref{sec:printcommands}: \nameref{sec:printcommands} \\
@@ -10127,9 +10339,10 @@ This boolean may be tested by the user for later use.
% \item \brand{Microsoft}®, \brand{Encarta}, \brand{MSN}, and \brand{Windows}® are either registered trademarks or
% trademarks of \brand{Microsoft Corporation} in the United States and/or other countries.
% \item \brand{UNIX}® is a registered trademark of \brand{The Open Group}.
+% \item \brand{YouTube}™ is trademark of \brand{Google LLC}.
% \end{itemize}
%
-%
+%
%
% \changes{v0.61}{2018/09/27}{Docs: Multiple indexes.}
%
@@ -10946,6 +11159,7 @@ This boolean may be tested by the user for later use.
\LWR@loadafter{mathtools}
\LWR@loadafter{mcaption}
\LWR@loadafter{mdframed}
+\LWR@loadafter{media9}
\LWR@loadafter{memhfixc}
\LWR@loadafter{metalogo}
\LWR@loadafter{metalogox}
@@ -10957,10 +11171,12 @@ This boolean may be tested by the user for later use.
% morefloats must be allowed early for print mode
\LWR@notmemoirloadafter{moreverb}
% morewrites must be loaded before lwarp
+\LWR@notmemoirloadafter{movie15}
\LWR@notmemoirloadafter{mparhack}
\LWR@loadafter{multicap}
%\LWR@loadafter{multicol}% loaded by ltxdoc
\LWR@loadafter{multicolrule}
+\LWR@loadafter{multimedia}
\LWR@loadafter{multirow}
\LWR@loadafter{multitoc}
\LWR@loadafter{musicography}
@@ -11347,14 +11563,27 @@ This boolean may be tested by the user for later use.
% \end{macro}
%
%
-% Prints a length in the given units, without printing the unit itself.
% \begin{macro}{\LWR@convertto} \marg{dest unit} \marg{length}
+%
+% Prints a length in the given units, without printing the unit itself.
% \begin{macrocode}
\newcommand*{\LWR@convertto}[2]{\strip@pt\dimexpr #2*65536/\number\dimexpr 1#1}
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\LWR@printpercentlength} \marg{smaller} \marg{larger}
+%
+% Prints a percent ratio of the two lengths.
+% \begin{macrocode}
+\newcommand*{\LWR@printpercentlength}[2]{%
+ \setcounter{LWR@tempcountone}{100*\ratio{#1}{#2}}%
+ \arabic{LWR@tempcountone}%
+}
+% \end{macrocode}
+% \end{macro}
+
+
% \begin{macro}{\LWR@patcherror} \marg{packagename} \marg{macroname}
%
% Prints an error if could not patch a macro.
@@ -13980,11 +14209,13 @@ This boolean may be tested by the user for later use.
\fullexpandarg%
\IfSubStr*{\jobname}{-pstool}
{
- \typeout{lwarp: jobname with -pstool is found,}%
- \typeout{lwarp: \space\space not generating configuration files.}%
+ \PackageInfo{lwarp}{%
+ Jobname with -pstool is found.\MessageBreak
+ Not generating lwarp configuration files,%
+ }
}
{
- \typeout{lwarp: generating configuration files}
+ \PackageInfo{lwarp}{Generating lwarp configuration files,}%
\includecomment{LWRwriteconf}
}
\end{warpprint}
@@ -14676,12 +14907,6 @@ blockquote {
margin-right: 2em ;
}
-blockquotation {
- display: block ;
- margin-left: 2em ;
- margin-right: 2em ;
-}
-
/* quotchap is for the quotchap package */
div.quotchap {
display: block ;
@@ -14691,7 +14916,7 @@ div.quotchap {
margin-right: 2em ;
}
-blockquote p, blockquotation p, div.quotchap p {
+blockquote p, div.quotchap p {
line-height: 1.5;
text-align: left ;
font-size: .85em ;
@@ -16986,6 +17211,9 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-
% \changes{v0.66}{2019/01/27}{\prog{lwarpmk}: Added \optn{ImagesDirectory} and \optn{ImagesName}.}
% \changes{v0.66}{2019/01/30}{\prog{lwarpmk}: Fix for \cmds{cleanlimages}.}%
% \changes{v0.68}{2019/03/02}{\prog{lwarpmk}: Improved error handling if incomplete compile.}%
+% \changes{v0.71}{2019/04/11}{\prog{lwarpmk}: If wrong \filenm{lwarpmk.conf} version,
+% or wrong OS,
+% displays the print command to recompile.}%
%
% The following is only generated if the \optn{lwarpmk} option
% was given to \pkg{lwarp}.
@@ -17001,7 +17229,7 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-
-- Copyright 2016-2018 Brian Dunn
-printversion = "v0.70"
+printversion = "v0.71"
requiredconfversion = "2" -- also at *lwarpmk.conf
function printhelp ()
@@ -17082,6 +17310,21 @@ function cvalueerror ( line, linenum , cvalue )
end
+function printhowtorecompile ()
+-- Tells the user how to recompile to regenerate the configuration files.
+ print ("lwarpmk: The configuration files lwarpmk.conf and "..sourcename..".lwarpmkconf" )
+ print ("lwarpmk: must be updated. To do so, recompile" )
+ print ("lwarpmk: " , sourcename..".tex" )
+ if ( printlatexcmd == "" ) then
+ print ("lwarpmk: using xe/lua/pdflatex," )
+ else
+ print ("lwarpmk: using the command:")
+ print ("lwarpmk: " , printlatexcmd )
+ end
+ print ("lwarpmk: then use lwarpmk again.")
+end -- printhowtorecompile
+
+
function ignoreconf ()
-- Global argument index
argindex = 2
@@ -17243,19 +17486,14 @@ end --- for Windows
if ( (package.config:sub(1,1)) ~= dirslash ) then
print ("lwarpmk: ===")
print ("lwarpmk: It appears that lwarpmk.conf is for a different operating system." )
- print ("lwarpmk: To adjust lwarpmk.conf for the current operating system," )
- print ("lwarpmk: recompile the original document using xe/lua/pdflatex." )
- print ("lwarpmk: ")
- print ("lwarpmk: lwarpmk shall attempt to continue...")
+ printhowtorecompile ()
print ("lwarpmk: ===")
+ os.exit(1)
end
-- Error if the configuration file's version is not current:
if ( confversion ~= requiredconfversion ) then
print ("lwarpmk: ===")
- print ("lwarpmk: The configuration files lwarpmk.conf and "..sourcename..".lwarpmkconf" )
- print ("lwarpmk: must be updated. To update the configuration files," )
- print ("lwarpmk: recompile "..sourcename..".tex using xe/lua/pdflatex," )
- print ("lwarpmk: then use lwarpmk again.")
+ printhowtorecompile ()
print ("lwarpmk: ===")
os.exit(1)
end
@@ -17577,7 +17815,7 @@ function createlateximages ()
--
-- See if the document must be recompiled first:
checklimages ()
--- See if the print version exists:
+-- See if the HTML version exists:
checkhtmlpdfexists ()
-- Attempt to create the lateximages:
print ("lwarpmk: Creating lateximages.")
@@ -18130,7 +18368,7 @@ end -- not --version
}
% \end{macrocode}
% \end{macro}
-%
+%
% \begin{macro}{\LWR@getexparray} \marg{name} \marg{index}
% \begin{macrocode}
\newcommand*{\LWR@getexparray}[2]{%
@@ -19275,7 +19513,7 @@ end -- not --version
%
-% \subsection{\HTML{}5 semantic elements}
+% \subsection{\HTMLfive\ semantic elements}
% \begin{macro}{\LWR@htmlelement} \marg{element}
@@ -19704,12 +19942,16 @@ end -- not --version
{% yes nest par tags
% \end{macrocode}
% Print a closing tag and some extra vertical space.
+%
+% (The fill seems to be required to force the \pkg{caption}
+% package to create flush left caption text in the \HTML.)
% \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.}
% \changes{v0.70}{2019/03/25}{Reduced underfull \cs{hbox} warnings.}
+% \changes{v0.71}{2019/04/08}{Flush left captions.}
% \begin{macrocode}
+ \@hspacer{\fill}% \hspace*{\fill}
\leavevmode\LWR@orignewline%
\LWR@htmltagc{/\LWR@tagregularparagraph}%
- \LWR@origpar%
% \end{macrocode}
% No longer doing a paragraph:
% \begin{macrocode}
@@ -19868,10 +20110,10 @@ end -- not --version
% \end{macrocode}
% Disable the special \env{minipage} \& \cs{hspace} interaction
% until a new minipage is found:
+% \changes{v0.71}{2019/04/08}{Reduced underfull \cs{hbox} warnings.}
% \begin{macrocode}
\global\boolfalse{LWR@minipagethispar}
-
- }% an intentionally blank line
+ }%
% \end{macrocode}
% If was not in an \HTML\ paragraph:
% \begin{macrocode}
@@ -20439,8 +20681,8 @@ end -- not --version
\boolean{LWR@doingstartpars} \AND%
\cnttest{\value{LWR@lateximagedepth}}{=}{0}%
}%
- {}%
- {\LWR@htmltagc{\LWR@tagregularparagraph}\LWR@orignewline}%
+ {}%
+ {\LWR@htmltagc{\LWR@tagregularparagraph}\LWR@orignewline}%
% \end{macrocode}
% \begin{macrocode}
\@makefntext{%
@@ -20448,12 +20690,15 @@ end -- not --version
}%
% \end{macrocode}
% Don't add the closing paragraph tag if are inside a \env{lateximage}:
+% \changes{v0.71}{2019/04/07}{Improved \HTML\ formatting.}
+% \changes{v0.71}{2019/04/08}{Reduced underfull \cs{hbox} warnings.}
% \begin{macrocode}
\ifthenelse{\cnttest{\value{LWR@lateximagedepth}}{>}{0}}%
{}%
{%
+ \leavevmode\LWR@orignewline%
\LWR@htmltagc{/\LWR@tagregularparagraph}%
- \LWR@orignewline%
+ \LWR@origpar%
}%
\color@endgroup%
}% vbox
@@ -23544,17 +23789,22 @@ end -- not --version
% \begin{macrocode}
\renewenvironment*{quote}
{
-\LWR@forcenewpage
-\LWR@htmlblocktag{blockquote}
+ \LWR@forcenewpage
+ \LWR@htmlblocktag{blockquote}
}
{\LWR@htmlblocktag{/blockquote}}
-
+% \end{macrocode}
+% \end{environment}
+%
+% \changes{v0.71}{2019/04/27}{Fix: \env{blockquotation} tag.}
+% \begin{environment}{quotation}
+% \begin{macrocode}
\renewenvironment*{quotation}
{
-\LWR@forcenewpage
-\LWR@htmlblocktag{blockquotation}
+ \LWR@forcenewpage
+ \LWR@htmlblocktag{blockquote}
}
-{\LWR@htmlblocktag{/blockquotation}}
+{\LWR@htmlblocktag{/blockquote}}
% \end{macrocode}
% \end{environment}
@@ -24667,13 +24917,22 @@ end -- not --version
%
% \begin{macrocode}
\newcommand*{\LWR@closetabledatacell}{%
-\LWR@stoppars%
\global\booltrue{LWR@intabularmetadata}%
-\ifbool{LWR@exitingtabular}{}%
+\ifbool{LWR@exitingtabular}%
+{%
+% \end{macrocode}
+% \changes{v0.71}{2019/04/27}{Fix: Tabular par tags.}
+% \begin{macrocode}
+ \LWR@stoppars%
+}%
{% not exiting tabular
\ifboolexpr{bool{LWR@skippingmrowcell} or bool{LWR@skippingmcolrowcell}}%
{%
% \end{macrocode}
+% \changes{v0.71}{2019/04/27}{Fix: Tabular par tags.}
+% \begin{macrocode}
+ \LWR@stoppars%
+% \end{macrocode}
% If not skipping a \cs{multicolumnrow} cell,
% insert the |@| and |!| columns after this non-existant column.
% \changes{v0.41}{2017/10/03}{Fix: At/bang column with \cs{multirow}.}
@@ -24698,8 +24957,9 @@ end -- not --version
{\LWR@getexparray{LWR@colafterspec}{\arabic{LWR@tableLaTeXcolindex}}}%
% \end{macrocode}
% Close paragraphs:
+% \changes{v0.71}{2019/04/27}{Fix: Tabular par tags.}
% \begin{macrocode}
- \ifbool{LWR@tableparcell}{\LWR@stoppars}{}%
+ \LWR@stoppars%
\global\boolfalse{LWR@tableparcell}%
% \end{macrocode}
%
@@ -25294,17 +25554,10 @@ end -- not --version
% \subsection{Parsing '*' columns}
%
-% \changes{v0.69}{2019/03/10}{Error if used a tabular * column.}
% \begin{macro}{\LWR@parsestarcolumn}
+% Star columns should already have been expanded, so this should never be used.
% \begin{macrocode}
\newcommand*{\LWR@parsestarcolumn}{%
- \PackageError{lwarp}%
- {%
- The tabular star column specifier\MessageBreak
- *{xx}{yy}\MessageBreak
- is not yet supported by lwarp%
- }%
- {Convert *{xx}{yy} to xx copies of yy.}%
\addtocounter{LWR@tablecolspecindex}{2}%
}
% \end{macrocode}
@@ -25335,6 +25588,114 @@ end -- not --version
% \end{macro}
+% \subsection{Expanding the star column specifiations}
+
+% \DescribeCounter{LWR@starcount}
+% Internal count for duplicating star columns.
+% \begin{macrocode}
+\newcount\LWR@starcount
+% \end{macrocode}
+%
+% \begin{macro}{\LWR@expcolspec}
+% Temporary storage used to build the expanded column specifier.
+% \begin{macrocode}
+\newcommand*{\LWR@expcolspec}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \DescribeCounter{LWR@splitstarindex}
+% Indexes into the column specifiers.
+% \begin{macrocode}
+\newcounter{LWR@splitstarindex}
+% \end{macrocode}
+%
+% \DescribeCounter{LWR@splitstarcopies}
+% Number of copies.
+% \begin{macrocode}
+\newcounter{LWR@splitstarcopies}
+% \end{macrocode}
+%
+% \begin{macro}{\LWR@splitstarcontents}
+% Contents to duplicate.
+% \begin{macrocode}
+\newcommand*{\LWR@splitstarcontents}{}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \begin{macro}{\expandcolspec} Expands \cs{LWR@origcolspec} for star columns.
+% \changes{v0.71}{2019/04/26}{Added support for tabular `\texttt{*}' column.}
+% \begin{macrocode}
+\newcommand*{\expandcolspec}{%
+% \end{macrocode}
+%
+% Find the position of any star token.
+% \begin{macrocode}
+ \StrPosition{\LWR@origcolspec}{*}[\LWR@tempone]%
+% \end{macrocode}
+%
+% Expand until no stars are found:
+% \begin{macrocode}
+ \whileboolexpr{ test {\ifnumgreater{\LWR@tempone}{0}}}%
+ {%
+% \end{macrocode}
+%
+% Begin with any characters to the left of the star.
+% \begin{macrocode}
+ \setcounter{LWR@splitstarindex}{\LWR@tempone}%
+ \addtocounter{LWR@splitstarindex}{-1}%
+ \StrLeft{\LWR@origcolspec}{\value{LWR@splitstarindex}}[\LWR@expcolspec]%
+% \end{macrocode}
+%
+% Move past the star to remember its number of copies.
+% \begin{macrocode}
+ \addtocounter{LWR@splitstarindex}{2}%
+ \StrChar{\LWR@origcolspec}{\value{LWR@splitstarindex}}[\LWR@tempone]%
+ \setcounter{LWR@splitstarcopies}{\expandafter\@firstofone\LWR@tempone}%
+% \end{macrocode}
+%
+% Move past the number of copies and remember the contents.
+% \begin{macrocode}
+ \addtocounter{LWR@splitstarindex}{1}%
+ \StrChar{\LWR@origcolspec}{\value{LWR@splitstarindex}}[\LWR@splitstarcontents]%
+% \end{macrocode}
+%
+% For each copy, append the contents.
+% \begin{macrocode}
+ \ifnumgreater{\value{LWR@splitstarcopies}}{0}%
+ {%
+ \LWR@starcount=\value{LWR@splitstarcopies}%
+ \loop
+ \appto\LWR@expcolspec{%
+% \end{macrocode}
+% (Remove the enclosing braces.)
+% \begin{macrocode}
+ \expandafter\@firstofone\LWR@splitstarcontents%
+ }%
+ \advance \LWR@starcount -1
+ \ifnum \LWR@starcount>0 \repeat
+ }{}%
+% \end{macrocode}
+%
+% Remove any token to the left, and append the rightmost remainding tokens.
+% \begin{macrocode}
+ \StrGobbleLeft{\LWR@origcolspec}{\value{LWR@splitstarindex}}[\colspecremainder]%
+ \appto{\LWR@expcolspec}{\colspecremainder}%
+% \end{macrocode}
+%
+% Remember the final result.
+% \begin{macrocode}
+ \edef\LWR@origcolspec{\LWR@expcolspec}%
+% \end{macrocode}
+%
+% See if more stars exist.
+% \begin{macrocode}
+ \StrPosition{\LWR@origcolspec}{*}[\LWR@tempone]%
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+
% \subsection{Parsing the column specifications}
@@ -25417,7 +25778,6 @@ end -- not --version
% \end{macrocode}
%
%
-%
% \begin{macro}{\LWR@parsetablecols} \marg{colspecs}
%
% Scans the column specification left to right.
@@ -25449,6 +25809,11 @@ end -- not --version
\StrSubstitute{\LWR@origcolspec}{ }{}[\LWR@origcolspec]%
% \end{macrocode}
%
+% Expand any star columns:
+% \begin{macrocode}
+\expandcolspec%
+% \end{macrocode}
+%
% The parsed column spec data array, |LWR@tablecolspec|,
% will be overwritten with new values.
%
@@ -25560,7 +25925,7 @@ end -- not --version
\IfStrEq{\LWR@strresult}{w}{\LWR@parsewcolumn}{}%
\IfStrEq{\LWR@strresult}{W}{\LWR@parsewcolumn}{}%
% \end{macrocode}
-% Error if found a star column:
+% A star column:
% \begin{macrocode}
\IfStrEq{\LWR@strresult}{*}{\LWR@parsestarcolumn}{}%
% \end{macrocode}
@@ -29273,10 +29638,6 @@ autopage-\theLWR@currentautosec%
% \begin{macrocode}
\begingroup%
% \end{macrocode}
-% The \pkg{caption} code was not allowing the closing |par| tag:
-% \begin{macrocode}
-\@setpar{\LWR@closeparagraph\@@par}%
-% \end{macrocode}
% No need for a |minipage| or \cs{parbox} inside the caption:
% \begin{macrocode}
\RenewDocumentEnvironment{minipage}{O{t} o O{t} m}{}{}%
@@ -33669,7 +34030,7 @@ autopage-\theLWR@currentautosec%
}{%
\PackageError{lwarp}%
{(width,height) is missing a comma ',' character}%
- {\protect\makebox\space \protect\framebox\space accept
+ {\protect\makebox\space and \protect\framebox\space accept
a size in the format (width,height).}%
}%
}
@@ -35821,6 +36182,8 @@ color:\LWR@origpound\LWR@tempcolor%
%
% ^^A The following adjustments apply to the lwarp-* package listings:
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
+%
% \titleformat{\part}[hang]
% {\hrule\nopagebreak[4]\large\ttfamily\bfseries}{}{0pt}{}[\marginpar{\hfill{}File\,\thepart}]
% \titlespacing*{\part}{0pt}{*4}{0ex}
@@ -39751,7 +40114,7 @@ s%
% \marg{caption label} \marg{caption text}
% \begin{macrocode}
\renewcommand\caption@@@make[2]{%
-\LWR@startpars% lwarp
+\LWR@traceinfo{caption@@@make}%
% \sbox\@tempboxa{#1}%
% \ifdim\wd\@tempboxa=\z@
% \let\caption@lsep\relax
@@ -39760,38 +40123,37 @@ s%
\let\caption@lsep\@empty
\let\caption@tfmt\@firstofone
}%
- \@setpar{\LWR@closeparagraph\@@par}% lwarp
\caption@applyfont
- \caption@fmt
+% \caption@fmt
{\ifcaption@star\else
\begingroup
- \captionlabelfont
+ \captionlabelfont
#1%
\endgroup
\fi}%
{\ifcaption@star\else
\begingroup
\caption@iflf\captionlabelfont
- \relax\caption@lsep
+ \relax
+ \caption@lsep
\endgroup
\fi}%
- {{\captiontextfont
- \caption@ifstrut
- {\vrule\@height\ht\strutbox\@width\z@}%
- {}%
- \nobreak\hskip\z@skip % enable hyphenation
- \caption@tfmt{#2}
- \LWR@ensuredoingapar% lwarp
- \caption@ifstrut
- {\ifhmode\@finalstrut\strutbox\fi}%
- {}%
- \par}}
-\LWR@stoppars% lwarp
+ {{%
+ \captiontextfont
+% \caption@ifstrut
+% {\vrule\@height\ht\strutbox\@width\z@}%
+% {}%
+% \nobreak\hskip\z@skip % enable hyphenation
+ \caption@tfmt{#2}%
+% \caption@ifstrut
+% {\ifhmode\@finalstrut\strutbox\fi}%
+% {}%
+ }}%
+\LWR@traceinfo{caption@@@make done}%
}
% \end{macrocode}
% \end{noindmacro}
-% ^^A *8* move to caption itself?
% \begin{noindmacro}{\caption@@make@} \marg{} \marg{}
% \begin{macrocode}
\renewcommand{\caption@@make@}[2]{%
@@ -39803,6 +40165,21 @@ s%
% \end{macrocode}
% \end{noindmacro}
+% \begin{noindmacro}{\caption@makecaption}
+% \changes{v0.71}{2019/04/08}{Reduced underfull \cs{hbox} warnings.}
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+% \caption@iftop
+% {\vskip\belowcaptionskip}%
+% {\caption@rule\vskip\abovecaptionskip}%
+ \caption@@make{#1}{#2}%
+% \caption@iftop
+% {\vskip\abovecaptionskip\caption@rule}%
+% {\vskip\belowcaptionskip}%
+}
+% \end{macrocode}
+% \end{noindmacro}
+
% \begin{macrocode}
% \DeclareCaptionBox{none}{#2}
@@ -40254,6 +40631,7 @@ s%
% may be changed at any time, and are unlikely to be reused inline anyhow.
%
% \changes{v0.51}{2018/03/04}{\pkg{chemfig}: Added.}
+% \changes{v0.71}{2019/04/25}{\pkg{chemfig}: Updated for v1.4.}
%
% \codehtml
%
@@ -40262,28 +40640,61 @@ s%
% \end{macrocode}
% \begin{macrocode}
-\LetLtxMacro\LWR@chemfig@origchemfig\chemfig
-\DeclareDocumentCommand\chemfig{s O{} O{} m}{%
+\catcode`\_=11
+
+\@ifpackagelater{chemfig}{2019/04/18}%
+{% 2019/04/18 or newer
+
+ \LetLtxMacro\LWR@chemfig@origchemfig\chemfig
+
+ \renewcommand*{\chemfig}[2][]{%
+ \begin{lateximage}[(-chemfig-~\packagediagramname)]%
+ \LWR@chemfig@origchemfig[#1]{#2}%
+ \end{lateximage}%
+ }
+
+ \GlobalLetLtxMacro\LWR@chemfig@origCF_lewisc\CF_lewisc
+ \gdef\CF_lewisc#1,#2\_nil{%
\begin{lateximage}[(-chemfig-~\packagediagramname)]%
- \IfBooleanTF{#1}{%
- \LWR@chemfig@origchemfig*[#2][#3]{#4}%
- }{%
- \LWR@chemfig@origchemfig[#2][#3]{#4}%
+ \LWR@chemfig@origCF_lewisc#1,#2\_nil
+ \end{lateximage}
}
+
+ \gpreto{\schemestart}{\begin{lateximage}[(-chemfig-~\packagediagramname)]}
+ \gappto{\CF_schemestop}{\end{lateximage}}
+
+}% 2019/04/18 or newer
+{% older than 2019/04/18
+
+ \LetLtxMacro\LWR@chemfig@origchemfig\chemfig
+
+ \DeclareDocumentCommand\chemfig{s O{} O{} m}{%
+ \begin{lateximage}[(-chemfig-~\packagediagramname)]%
+ \IfBooleanTF{#1}{%
+ \LWR@chemfig@origchemfig*[#2][#3]{#4}%
+ }{%
+ \LWR@chemfig@origchemfig[#2][#3]{#4}%
+ }
+ \end{lateximage}%
+ }
+
+ \LetLtxMacro\LWR@chemfig@origCF@lewis@b\CF@lewis@b
+
+ \def\CF@lewis@b#1#2{%
+ \begin{lateximage}[(-chemfig-~\packagediagramname)]%
+ \LWR@chemfig@origCF@lewis@b{#1}{#2}%
\end{lateximage}%
-}
+ }
-\LetLtxMacro\LWR@chemfig@origCF@lewis@b\CF@lewis@b
+ \preto{\schemestart}{\begin{lateximage}[(-chemfig-~\packagediagramname)]}
+ \appto{\CF@schemestop}{\end{lateximage}}
+
+}% older than 2019/04/18
+
+\catcode`\_=8%
-\def\CF@lewis@b#1#2{%
-\begin{lateximage}[(-chemfig-~\packagediagramname)]%
-\LWR@chemfig@origCF@lewis@b{#1}{#2}%
-\end{lateximage}%
-}
-\preto{\schemestart}{\begin{lateximage}[(-chemfig-~\packagediagramname)]}
-\appto{\CF@schemestop}{\end{lateximage}}
\LetLtxMacro\LWR@chemfig@origchemleft\chemleft
@@ -40666,6 +41077,7 @@ s%
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
%
%
% \iffalse
@@ -41722,6 +42134,7 @@ name = \chemmacros_translate:n {scheme-name}
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
%
%
% \iffalse
@@ -42350,35 +42763,35 @@ name = \chemmacros_translate:n {scheme-name}
\ifx\@CTcap\undefined\let\@CTcap\@CTcaption\fi
\ifx\@CTcap\empty
\if@CTcaptionloaded\else
- \PackageWarningNoLine{ctable}{\MessageBreak
+ \PackageWarningNoLine{lwarp-ctable}{\MessageBreak
An empty cap= option prevents lot/loc entry only\MessageBreak
if the caption package is loaded!}
\fi
\fi
\if@CTinmemoir\else
\ifx\@CTbotcap\undefined
- \PackageError{ctable}{\MessageBreak
+ \PackageError{lwarp-ctable}{\MessageBreak
You can, currently, use the sidecap option only with\MessageBreak
memoir documents. Use topcap or botcap only}
\fi
\fi
\ifdim\@CTwidth=0pt\else
\ifdim\@CTmaxwidth=0pt\else
- \PackageError{ctable}{\MessageBreak
+ \PackageError{lwarp-ctable}{\MessageBreak
You may not use the width and maxwidth options together\MessageBreak
Use either width or maxwidth}
\fi
\fi
\ifx\@CTpos\empty
\ifx\@CTsideways\empty\else
- \PackageError{ctable}{\MessageBreak
+ \PackageError{lwarp-ctable}{\MessageBreak
You may not use the pos and sideways options together\MessageBreak
Rotated tables and figures are always typeset on a separate page}
\fi
\fi
\ifx\@CTcaption\empty
\ifx\@CTlabel\empty\else
- \PackageError{ctable}{\MessageBreak
+ \PackageError{lwarp-ctable}{\MessageBreak
You may not label a captionless table\MessageBreak
Such a label can't be referenced}
\fi
@@ -43276,11 +43689,12 @@ name = \chemmacros_translate:n {scheme-name}
%
% \changes{v0.45}{2017/12/19}{\pkg{endfloat}: Added.}
% \changes{v0.52}{2018/03/26}{\pkg{endfloat}: Updated for v2.6.}
+% \changes{v0.71}{2019/04/25}{\pkg{endfloat}: Updated for v2.7.}
%
% \codehtml
%
% \begin{macrocode}
-\LWR@ProvidesPackageDrop{endfloat}[2018/03/24]
+\LWR@ProvidesPackageDrop{endfloat}[2019/04/15]
% \end{macrocode}
%
% \begin{macrocode}
@@ -43300,6 +43714,11 @@ name = \chemmacros_translate:n {scheme-name}
\providecommand\efloatheading[1]{}
\providecommand\efloatpreamble{}
\providecommand\efloatpostamble{}
+\NewDocumentCommand{\addtodelayedfloat}{s m m}{}
+\providecommand{\efloatbegin}{}
+\providecommand{\efloatend}{}
+\providecommand{\efloatbeginlist}{}
+\providecommand{\efloatendlist}{}
% \end{macrocode}
%
% \iffalse
@@ -44242,6 +44661,7 @@ name = \chemmacros_translate:n {scheme-name}
% \begin{macrocode}
\@makefntext{}%
% \end{macrocode}
+% The footnote text will follow after \cs{V@@@footnotetext} has completed.
% \begin{macrocode}
\bgroup%
\aftergroup{\V@@@footnotetext}%
@@ -44530,7 +44950,7 @@ name = \chemmacros_translate:n {scheme-name}
% \begin{macrocode}
\renewcommand*{\@f@ref}[4]{%
\@ifundefined{#1r@#2@#3}{%
- \PackageError{fancyref}{%
+ \PackageError{lwarp-fancyref}{%
\backslashchar#1ref\space format ``#2''
undefined\MessageBreak
for label type ``#3''%
@@ -44690,10 +45110,11 @@ name = \chemmacros_translate:n {scheme-name}
{}%
{\LWR@htmltagc{\LWR@tagregularparagraph}\LWR@orignewline}%
% \end{macrocode}
-% Append the footnote to the list:
+% Append the footnote mark to the list:
% \begin{macrocode}
\@makefntext{}%
% \end{macrocode}
+% The footnote text will follow after \cs{V@@@footnotetext} has completed.
% \begin{macrocode}
\bgroup%
\aftergroup{\V@@@footnotetext}%
@@ -47248,6 +47669,7 @@ solid \LWR@origpound\LWR@tempcolor ; %
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
%
%
% \iffalse
@@ -48057,6 +48479,7 @@ alt="\LWR@igalt" \LWR@orignewline%
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
%
%
%
@@ -48506,11 +48929,14 @@ alt="\LWR@igalt" \LWR@orignewline%
%
% \codehtml
% \begin{macrocode}
-% \LWR@ProvidesPackageDrop{hyperref}
-\typeout{Using the lwarp html version of package `hyperref', discarding options.}
-\typeout{ Are not using ProvidesPackage, so that other packages}
-\typeout{ do not attempt to patch lwarp's version of `hyperref'.}
-% \ProvidesPackage{lwarp-#1-#2}
+% \LWR@ProvidesPackageDrop{hyperref}% not allowed
+% \ProvidesPackage{lwarp-#1-#2}% not allowed
+\PackageInfo{lwarp}{%
+Using the lwarp HTML version of package `hyperref',\MessageBreak
+and discarding options.\MessageBreak
+(Not using \protect\ProvidesPackage, so that other packages\MessageBreak
+do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak}
+
\DeclareOption*{}
% \end{macrocode}
% \changes{v0.68}{2019/02/28}{\pkg{hyperref}: Fix for options with braces.}
@@ -49191,7 +49617,7 @@ alt="\LWR@igalt" \LWR@orignewline%
{%
\@ifundefined{#1@idxfile}%
{%
- \PackageWarning{imakeidx}{Undefined index file `#1'}%
+ \PackageWarning{lwarp-imakeidx}{Undefined index file `#1'}%
\begingroup
\@sanitize
\imki@nowrindex%
@@ -49206,7 +49632,7 @@ alt="\LWR@igalt" \LWR@orignewline%
{%
\@ifundefined{#1_html@idxfile}%
{%
- \PackageWarning{imakeidx}{Undefined index file `#1_html'}%
+ \PackageWarning{lwarp-imakeidx}{Undefined index file `#1_html'}%
\begingroup
\@sanitize
\imki@nowrindex%
@@ -49689,7 +50115,7 @@ alt="\LWR@igalt" \LWR@orignewline%
\ifdefstring{\@karnaughmap@local@matrixtemplate@}{0}{% lwarp
% \ifnum0=\@karnaughmap@local@matrixtemplate@% original
% print error if no template could be found
- \PackageError{karnaugh-map}{%
+ \PackageError{lwarp-karnaugh-map}{%
Can not find a template fitting your specification (\@karnaughmap@var@mapsizex@\space x \@karnaughmap@var@mapsizey@\space x \@karnaughmap@var@mapsizez@)%
}{%
Existing templates have the following dimensions: 2x2x1, 2x4x1, 4x2x1, 4x4x1, 4x4x2, and 4x4x4.
@@ -50936,7 +51362,7 @@ alt="\LWR@igalt" \LWR@orignewline%
right:\def\lst@PlaceNumber{\LWR@origrlap{\LWR@orignormalfont
\kern 6in \kern\lst@numbersep
\lst@numberstyle{\thelstnumber}}}%
- }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}}
+ }{\PackageError{lwarp-listings}{Numbers #1 unknown}\@ehc}}
% \end{macrocode}
%
% \begin{macrocode}
@@ -52111,6 +52537,7 @@ alt="\LWR@igalt" \LWR@orignewline%
%
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
%
%
%
@@ -52703,6 +53130,139 @@ background:
%
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
+%
+%
+%
+% \iffalse
+%<*media9>
+% \fi
+%
+% \part{lwarp-media9.sty}
+%
+% \section{media9}
+%
+% \DescribePackage{media9}
+% \pkg{media9} is emulated.
+%
+% \limitsmultimedia
+%
+% Many special characters are converted to regular catcode 12 characters
+% \watchout[\& in a URL]
+% for use inside a \URL.
+% \& is used in the flash variables fields, which are split with
+% \pkg{xparse} \cs{SplitList}, which does not seem to work with a
+% catcode 12 divider token, so \& is not
+% converted to catcode 12, and will not work in a \URL\ with \pkg{media9}.
+% Using \& in a \URL\ in a \optn{flashvars} field may also cause parsing problems
+% with print output, as well.
+%
+%
+% \changes{v0.71}{2018/04/23}{\pkg{media9}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{media9}[2019/02/21]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-multimedia}
+
+\RequirePackage{xkeyval}
+% \end{macrocode}
+%
+% \begin{noindmacro}{\addmediapath} \marg{path}
+%
+% Supported.
+% \begin{macrocode}
+\newcommand*{\LWR@medianine@path}{}
+
+\newcommand*{\addmediapath}[1]{\appto\LWR@medianine@path{{#1}}}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% The options and poster text are reused in several places.
+% \begin{macrocode}
+\newcommand*{\LWR@medianine@postertext}{}
+\newcommand*{\LWR@medianine@options}{}
+% \end{macrocode}
+%
+% Each \optn{addresource} can generate a multimedia object.
+% \begin{macrocode}
+\define@key{LWR@medianine}{addresource}{%
+ \expandafter\LWR@multimedia\expandafter[\LWR@medianine@options]
+ {\LWR@medianine@postertext}
+ {#1}
+}
+% \end{macrocode}
+%
+% Each \optn{flashvars} \optn{source} can generate a multimedia object.
+% \begin{macrocode}
+\newcommand*{\LWR@medianine@flashvarsb}[1]{%
+ \IfBeginWith{#1}{source=}{%
+ \StrGobbleLeft{#1}{7}[\LWR@tempone]%
+ \expandafter\LWR@multimedia\expandafter[\LWR@medianine@options]%
+ {\LWR@medianine@postertext}%
+ {\LWR@tempone}%
+ }{}%
+ \IfBeginWith{#1}{src=}{%
+ \StrGobbleLeft{#1}{4}[\LWR@tempone]%
+ \expandafter\LWR@multimedia\expandafter[\LWR@medianine@options]%
+ {\LWR@medianine@postertext}%
+ {\LWR@tempone}%
+ }{}%
+}
+
+\NewDocumentCommand{\LWR@medianine@flashvars}{ >{\SplitList{&}} m }{%
+ \ProcessList {#1}{\LWR@medianine@flashvarsb}%
+}
+
+\define@key{LWR@medianine}{flashvars}{%
+ \LWR@medianine@flashvars{#1}%
+}
+% \end{macrocode}
+%
+% \begin{noindmacro}{\includemedia} \oarg{options} \marg{poster text} \marg{file or \URL}
+% \begin{macrocode}
+\newcommand*{\LWR@includemediab}[3][]{%
+ \let\input@path\LWR@medianine@path%
+ \renewcommand*{\LWR@medianine@options}{#1}%
+ \renewcommand*{\LWR@medianine@postertext}{#2}%
+ \setkeys*{LWR@medianine}{#1}%
+ \IfBeginWith{#3}{http}{\LWR@multimedia[#1]{#2}{#3}}{%
+ \IfBeginWith{#3}{HTTP}{\LWR@multimedia[#1]{#2}{#3}}{%
+ \IfBeginWith{#3}{ftp}{\LWR@multimedia[#1]{#2}{#3}}{%
+ \IfBeginWith{#3}{FTP}{\LWR@multimedia[#1]{#2}{#3}}{%
+ }}}}%
+ \endgroup%
+}
+
+\newrobustcmd*{\includemedia}{%
+ \begingroup%
+ \catcode`\#=12%
+ \catcode`\%=12%
+% \catcode`\&=12% left alone for splitting flash variables
+ \catcode`\~=12%
+ \catcode`\_=12%
+ \LWR@includemediab%
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\mediabutton} \oarg{options} \marg{text}
+%
+% Ignored.
+% \begin{macrocode}
+\newcommand*{\mediabutton}[2][]{}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \iffalse
+%</media9>
+% \fi
+%
+%
%
%
% \iffalse
@@ -53285,6 +53845,69 @@ background:
%
%
%
+%
+% \iffalse
+%<*movie15>
+% \fi
+%
+% \part{lwarp-movie15.sty}
+%
+% \section{movie15}
+%
+% \DescribePackage{movie15}
+% \pkg{movie15} is emualted.
+%
+% \limitsmultimedia
+%
+% \changes{v0.71}{2019/04/22}{\pkg{movie15}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{movie15}[2012/05/16]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-multimedia}
+
+\RequirePackage{xkeyval}
+
+\newcommand*{\LWR@moviefifteen@text}{}
+
+\define@key{LWR@moviefifteen}{text}{\renewcommand{\LWR@moviefifteen@text}{#1}}
+
+\newcommand*{\LWR@includemovieb}[4][]{%
+ \renewcommand{\LWR@moviefifteen@text}{(multimedia)}
+ \setkeys*{LWR@moviefifteen}{#1}%
+ \LWR@multimediab[#1,width=#2,height=#3]{\LWR@moviefifteen@text}{#4}%
+}
+
+\newrobustcmd*{\includemovie}{%
+ \begingroup%
+ \catcode`\#=12%
+ \catcode`\%=12%
+ \catcode`\&=12%
+ \catcode`\~=12%
+ \catcode`\_=12%
+ \LWR@includemovieb%
+}
+
+
+\newcommand*{\movieref}[3][]{}
+
+\LetLtxMacro\movie\LWR@multimedia
+% \LetLtxMacro\sound\LWR@multimedia% not in media15
+
+\newcommand{\hyperlinkmovie}[3][]{}
+% \end{macrocode}
+%
+% \iffalse
+%</movie15>
+% \fi
+%
+%
+%
+%
% \iffalse
%<*mparhack>
% \fi
@@ -53481,6 +54104,43 @@ background:
%
%
%
+% \iffalse
+%<*multimedia>
+% \fi
+%
+% \part{lwarp-multimedia.sty}
+%
+% \section{multimedia}
+%
+% \DescribePackage{multimedia}
+% \pkg{multimedia} is emulated.
+%
+% \limitsmultimedia
+%
+% \changes{v0.71}{2019/04/22}{\pkg{multimedia}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\LWR@ProvidesPackageDrop{multimedia}[2012/05/02]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\LWR@origRequirePackage{lwarp-common-multimedia}
+
+\LetLtxMacro\movie\LWR@multimedia
+\LetLtxMacro\sound\LWR@multimedia
+
+\newcommand{\hyperlinkmovie}[3][]{}
+% \end{macrocode}
+%
+% \iffalse
+%</multimedia>
+% \fi
+%
+%
+%
+%
%
% \iffalse
%<*multirow>
@@ -53935,9 +54595,12 @@ class="td%
%
% Discard all options for \pkg{lwarp-nameref}:
% \begin{macrocode}
-\typeout{Using the lwarp html version of package `nameref', discarding options.}
-\typeout{ Are not using ProvidesPackage, so that other packages}
-\typeout{ do not attempt to patch lwarp's version of `nameref'.}
+\PackageInfo{lwarp}{%
+Using the lwarp HTML version of package `nameref',\MessageBreak
+and discarding options.\MessageBreak
+(Not using \protect\ProvidesPackage, so that other packages\MessageBreak
+do not attempt to patch lwarp's version of `nameref'.)\MessageBreak
+}
\DeclareOption*{}
\ProcessOptions\relax
% \end{macrocode}
@@ -54515,6 +55178,7 @@ class="td%
%
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
%
%
%
@@ -55191,6 +55855,7 @@ class="td%
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
%
%
%
@@ -60843,13 +61508,14 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
% \changes{v0.20}{2017/01/11}{\pkg{textpos}: Added.}
% \changes{v0.70}{2019/03/28}{\pkg{textpos}: Added optional arg to \env{textblock}.}
+% \changes{v0.71}{2019/04/25}{\pkg{textpos}: Updated for v1.9.1.}
%
% \DescribePackage{textpos}
% \pkg{textpos} is emulated.
% \codehtml
% \begin{macrocode}
-\LWR@ProvidesPackageDrop{textpos}[2016/06/07]
+\LWR@ProvidesPackageDrop{textpos}[2019/04/15]
% \end{macrocode}
% \begin{macrocode}
@@ -60869,6 +61535,8 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
\newcommand{\textblocklabel}[1]{}
\newcommand*{\showtextsize}{}
\newcommand{\textblockorigin}[2]{}
+\newcommand*{\TPoptions}[1]{}
+\newcommand*{\TPReferencePosition}[1]{}
% \end{macrocode}
% \iffalse
@@ -64828,6 +65496,9 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf',
%
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
+%
+%
% \iffalse
%<*xcolor>
% \fi
@@ -65511,6 +66182,7 @@ height:\LWR@printlength{\LWR@tempheight}%
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
%
%
%
@@ -66616,6 +67288,9 @@ height:\LWR@printlength{\LWR@tempheight}%
%
% ^^A *memoir
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
+%
+%
% \iffalse
%<*patch-memoir>
% \fi
@@ -68065,6 +68740,297 @@ height:\LWR@printlength{\LWR@tempheight}%
% \fi
%
%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{0}}
+%
+%
+% ^^A *common-multimedia
+%
+% \iffalse
+%<*common-multimedia>
+% \fi
+%
+% \part{lwarp-common-multimedia.sty}
+%
+% \section{common-multimedia}
+%
+% \DescribePackage{lwarp-common-multimedia}
+% Common code for \pkg{multimedia}, \pkg{movie15}, and \pkg{media9}.
+%
+% \limitsmultimedia
+%
+% \changes{v0.71}{2019/04/22}{\pkg{lwarp-common-multimedia}: Added.}
+%
+% \codehtml
+%
+% \begin{macrocode}
+\ProvidesPackage{lwarp-common-multimedia}[2019/04/22]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\RequirePackage{xkeyval}
+
+\define@key{LWR@multimedia}{width}{\setlength{\LWR@multimedia@width}{#1}}
+\define@key{LWR@multimedia}{height}{\setlength{\LWR@multimedia@height}{#1}}
+\define@key{LWR@multimedia}{totalheight}{\setlength{\LWR@multimedia@height}{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newlength{\LWR@multimedia@width}
+\newlength{\LWR@multimedia@height}
+\newlength{\LWR@multimedia@maxdimension}
+% \end{macrocode}
+%
+%
+% \begin{noindmacro}{\LWR@multimedia@printsize}
+% Proportional to \cs{linewidth} and the viewport's smaller dimension.
+% This scales each object such that it will always fit on the screen,
+% even if a tall or wide object inside a tall or wide viewport.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@printsize}{%
+ \setlength{\LWR@multimedia@maxdimension}{%
+ \maxof%
+ {\linewidth}%
+ {\maxof{\LWR@multimedia@width}{\LWR@multimedia@height}}%
+ }%
+ \setlength{\LWR@multimedia@maxdimension}{1.1\LWR@multimedia@maxdimension}%
+ \ifdimgreater{\LWR@multimedia@width}{0pt}{%
+ width:%
+ \LWR@printpercentlength%
+ {\LWR@multimedia@width}%
+ {\LWR@multimedia@maxdimension}vmin ; % space
+ }{}%
+ \ifdimgreater{\LWR@multimedia@height}{0pt}{%
+ height:%
+ \LWR@printpercentlength%
+ {\LWR@multimedia@height}%
+ {\LWR@multimedia@maxdimension}vmin ; % space
+ }{}%
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimedia@fileAV}
+% \marg{poster text} \marg{filename}
+% \marg{audio/video} \marg{mimetype}
+%
+% Creates a video or audio from a file.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@fileAV}[4]{%
+\filename@parse{#2}%
+\IfFileExists{#2}{%
+% \end{macrocode}
+% The container \element{div} is sized as desired.
+% \begin{macrocode}
+ \begin{BlockClass}[\LWR@multimedia@printsize\ margin:auto]{AVviewport}
+% \end{macrocode}
+% Paragraph tags are unnecessary for the \AV\ tags.
+% \begin{macrocode}
+ \LWR@stoppars
+% \end{macrocode}
+% The \AV\ element is 100\% of the container.
+% \begin{macrocode}
+ \LWR@htmltag{%
+ #3\ % space
+ width=\textquotedbl{}100\%\textquotedbl\ % space
+ height=\textquotedbl{}100\%\textquotedbl\ % space
+ controls%
+ }\LWR@orignewline
+% \end{macrocode}
+% The file source and type:
+% \begin{macrocode}
+ \LWR@htmltag{%
+ source % space
+ src=\textquotedbl%
+ \@filef@und\unskip\textquotedbl\ % space
+ type=\textquotedbl{}#4\textquotedbl}
+% \end{macrocode}
+% The poster text inside paragraph tags, along with a reference to the file.
+% \begin{macrocode}
+ \LWR@startpars
+ \href{\@filef@und}{#1}
+ \LWR@stoppars
+% \end{macrocode}
+% Finish.
+% \begin{macrocode}
+ \LWR@htmltag{/#3}\LWR@orignewline
+ \end{BlockClass}
+}{%
+ \PackageError{lwarp-common-multimedia}
+ {File '#2' not found}
+ {Perhaps an incorrect path?}
+}%
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimedia@httpAV}
+% \marg{poster text} \marg{filename}
+% \marg{audio/video} \marg{mimetype}
+%
+% Creates a video or audio from a \URL\ link.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@httpAV}[4]{%
+% \end{macrocode}
+% The container \element{div} is sized as desired.
+% \begin{macrocode}
+ \begin{BlockClass}[\LWR@multimedia@printsize\ margin:auto]{AVviewport}
+% \end{macrocode}
+% Paragraph tags are unnecessary for the \AV\ tags.
+% \begin{macrocode}
+ \LWR@stoppars
+% \end{macrocode}
+% The \AV\ element is 100\% of the container.
+% \begin{macrocode}
+ \LWR@htmltag{%
+ #3\ % space
+ width=\textquotedbl{}100\%\textquotedbl\ % space
+ height=\textquotedbl{}100\%\textquotedbl\ controls}\LWR@orignewline
+% \end{macrocode}
+% The file source and type:
+% \begin{macrocode}
+ \LWR@htmltag{%
+ source % space
+ src=\textquotedbl#2\textquotedbl\ % space
+ type=\textquotedbl#4\textquotedbl}
+% \end{macrocode}
+% The poster text inside paragraph tags, along with a reference to the \URL.
+% \begin{macrocode}
+ \LWR@startpars
+ \href{#2}{#1}
+ \LWR@stoppars
+% \end{macrocode}
+% Finish.
+% \begin{macrocode}
+ \LWR@htmltag{/#3}\LWR@orignewline
+ \end{BlockClass}
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimedia@AV}
+% \marg{poster text} \marg{filename}
+% \marg{audio/video} \marg{mimetype}
+%
+% Creates an audio or video from a file or a \URL.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@AV}[4]{%
+ \IfBeginWith{#2}{http}%
+ {\LWR@multimedia@httpAV{#1}{#2}{#3}{#4}}%
+ {%
+ \IfBeginWith{#2}{HTTP}%
+ {\LWR@multimedia@httpAV{#1}{#2}{#3}{#4}}%
+ {\LWR@multimedia@fileAV{#1}{#2}{#3}{#4}}%
+ }%
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimedia@embed}
+% \marg{poster text} \marg{URL or filename} \marg{mime type}
+%
+% Embeds multimedia of an arbitrary type.
+% The poster text is not used, as it would appear along with the video if
+% the \element{embed} element is supported.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@embed}[3]{%
+ \begin{BlockClass}[width:100\%]{AVviewport}%
+ \LWR@stoppars
+ \LWR@htmltag{%
+ embed % space
+ \ifblank{#3}{}{type=\textquotedbl#3\textquotedbl\ }%
+ style=\textquotedbl\LWR@multimedia@printsize\ margin:auto\textquotedbl\ % space
+ src=\textquotedbl#2\textquotedbl\ % space
+ }%
+ \LWR@startpars
+ \end{BlockClass}
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimedia@percenterror}
+% Error message if the comment character is used among the arguments
+% of \cs{LWR@multimediab}.
+% \begin{macrocode}
+\newcommand*{\LWR@multimedia@percenterror}{%
+ \PackageError{lwarp-media9}
+ {%
+ Do not use a percent comment
+ between\MessageBreak
+ \protect\includemedia\space arguments%
+ }
+ {Percent is changed to a regular character to allow its use inside a URL.}
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% \begin{noindmacro}{\LWR@multimediab}
+% \oarg{options} \marg{poster text} \marg{filename}
+%
+% Creates multimedia.
+% Examines the file extension to determine the type.
+% If not a supported type, creates an embedded object if it has a \URL.
+% If neither, create a link to the unsupported object.
+% \begin{macrocode}
+\newcommand*{\LWR@multimediab}[3][]{%
+% \end{macrocode}
+% Error if the percent character appears among the arguments.
+% This could happen since the comment character has been temporarily disabled,
+% for use in a \URL.
+% \begin{macrocode}
+ \if#1\@percentchar\LWR@multimedia@percenterror\fi%
+ \if#2\@percentchar\LWR@multimedia@percenterror\fi%
+ \if#3\@percentchar\LWR@multimedia@percenterror\fi%
+% \end{macrocode}
+% Record the desired size.
+% \begin{macrocode}
+ \setlength{\LWR@multimedia@width}{0pt}%
+ \setlength{\LWR@multimedia@height}{0pt}%
+ \setkeys*{LWR@multimedia}{#1}%
+% \end{macrocode}
+% If a known \AV\ type, create an \HTML5\ \element{video} or \element{audio}.
+% \begin{macrocode}
+ \IfEndWith{#3}{.mp4}{\LWR@multimedia@AV{#2}{#3}{video}{video/mp4}}{%
+ \IfEndWith{#3}{.MP4}{\LWR@multimedia@AV{#2}{#3}{video}{video/mp4}}{%
+ \IfEndWith{#3}{.mp3}{\LWR@multimedia@AV{#2}{#3}{audio}{audio/mpeg}}{%
+ \IfEndWith{#3}{.MP3}{\LWR@multimedia@AV{#2}{#3}{audio}{audio/mpeg}}{%
+% \end{macrocode}
+% If an arbitrary \URL, embed it.
+% \begin{macrocode}
+ \IfBeginWith{#3}{http}{\LWR@multimedia@embed{#2}{#3}{}}{%
+ \IfBeginWith{#3}{HTTP}{\LWR@multimedia@embed{#2}{#3}{}}{%
+ \IfBeginWith{#3}{ftp}{\LWR@multimedia@embed{#2}{#3}{}}{%
+ \IfBeginWith{#3}{FTP}{\LWR@multimedia@embed{#2}{#3}{}}{%
+% \end{macrocode}
+% If unknown, create a link to it.
+% \begin{macrocode}
+ \href{#3}{#2}% unknown format
+ }}}}}}}}%
+ \endgroup%
+}
+% \end{macrocode}
+% \end{noindmacro}
+%
+% Catcodes which may apper in a \URL.
+% \begin{macrocode}
+\newrobustcmd*{\LWR@multimedia}{%
+ \begingroup%
+ \catcode`\#=12%
+ \catcode`\%=12%
+ \catcode`\&=12%
+ \catcode`\~=12%
+ \catcode`\_=12%
+ \LWR@multimediab%
+}
+% \end{macrocode}
+%
+% \iffalse
+%</common-multimedia>
+% \fi
+%
+%
+% \addtocontents{toc}{\protect\setcounter{tocdepth}{4}}
+%
+%
%
% \clearpage
% \renewcommand*{\partname}{}
diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.ins b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
index 64e8af4b5d6..41dbcb45c21 100644
--- a/Master/texmf-dist/source/latex/lwarp/lwarp.ins
+++ b/Master/texmf-dist/source/latex/lwarp/lwarp.ins
@@ -20,7 +20,7 @@
%% \usedir{tex/latex/ package }
\preamble
This is a generated file.
-Copyright 2016-2018 Brian Dunn
+Copyright 2016-2019 Brian Dunn
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
@@ -249,6 +249,7 @@ version 2005/12/01 or later.
\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-media9.sty}{\from{lwarp.dtx}{media9}}
\file{lwarp-memhfixc.sty}{\from{lwarp.dtx}{memhfixc}}
\file{lwarp-metalogo.sty}{\from{lwarp.dtx}{metalogo}}
\file{lwarp-metalogox.sty}{\from{lwarp.dtx}{metalogox}}
@@ -259,10 +260,12 @@ version 2005/12/01 or later.
\file{lwarp-minitoc.sty}{\from{lwarp.dtx}{minitoc}}
\file{lwarp-morefloats.sty}{\from{lwarp.dtx}{morefloats}}
\file{lwarp-moreverb.sty}{\from{lwarp.dtx}{moreverb}}
+\file{lwarp-movie15.sty}{\from{lwarp.dtx}{movie15}}
\file{lwarp-mparhack.sty}{\from{lwarp.dtx}{mparhack}}
\file{lwarp-multicap.sty}{\from{lwarp.dtx}{multicap}}
\file{lwarp-multicol.sty}{\from{lwarp.dtx}{multicol}}
\file{lwarp-multicolrule.sty}{\from{lwarp.dtx}{multicolrule}}
+\file{lwarp-multimedia.sty}{\from{lwarp.dtx}{multimedia}}
\file{lwarp-multirow.sty}{\from{lwarp.dtx}{multirow}}
\file{lwarp-multitoc.sty}{\from{lwarp.dtx}{multitoc}}
\file{lwarp-musicography.sty}{\from{lwarp.dtx}{musicography}}
@@ -451,6 +454,7 @@ version 2005/12/01 or later.
\file{lwarp-zwpagelayout.sty}{\from{lwarp.dtx}{zwpagelayout}}
\file{lwarp-patch-komascript.sty}{\from{lwarp.dtx}{patch-komascript}}
\file{lwarp-patch-memoir.sty}{\from{lwarp.dtx}{patch-memoir}}
+\file{lwarp-common-multimedia.sty}{\from{lwarp.dtx}{common-multimedia}}
}
\Msg{*********************************************************}
\Msg{*}