diff options
author | Karl Berry <karl@freefriends.org> | 2019-11-10 22:10:55 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-11-10 22:10:55 +0000 |
commit | 966f3ce66328982f136ff1744dee70000acccf01 (patch) | |
tree | 72d1cd01a91bc03f1489ae7d771c7039b5b6df72 | |
parent | 197c71f5ceb7bb67f1aeeff685c1e22657133929 (diff) |
lwarp
git-svn-id: svn://tug.org/texlive/trunk@52729 c570f23f-e606-0410-a88d-b1316a301751
19 files changed, 673 insertions, 504 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua b/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua index e0477be8a65..2ccc1fa5bd0 100755 --- a/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua +++ b/Build/source/texk/texlive/linked_scripts/lwarp/lwarpmk.lua @@ -2,7 +2,7 @@ -- Copyright 2016-2019 Brian Dunn -printversion = "v0.76" +printversion = "v0.78" requiredconfversion = "2" -- also at *lwarpmk.conf function printhelp () diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index b99d8423122..a72cc44f45e 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -1,12 +1,12 @@ #!/usr/bin/env perl -# $Id: tlmgr.pl 52585 2019-10-31 18:26:15Z karl $ +# $Id: tlmgr.pl 52672 2019-11-07 18:35:53Z karl $ # # Copyright 2008-2019 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. -my $svnrev = '$Revision: 52585 $'; -my $datrev = '$Date: 2019-10-31 19:26:15 +0100 (Thu, 31 Oct 2019) $'; +my $svnrev = '$Revision: 52672 $'; +my $datrev = '$Date: 2019-11-07 19:35:53 +0100 (Thu, 07 Nov 2019) $'; my $tlmgrrevision; my $tlmgrversion; my $prg; @@ -1456,7 +1456,7 @@ sub action_path { } elsif ($opts{"w32mode"} eq "admin") { $winadminmode = 1; } else { - tlwarn("$prg: Unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); + tlwarn("$prg: unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); return ($F_ERROR); } } else { @@ -1467,7 +1467,7 @@ sub action_path { tlwarn("$prg: You don't have the privileges to work in --w32mode admin\n"); return ($F_ERROR); } else { - tlwarn("$prg: Unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); + tlwarn("$prg: unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); return ($F_ERROR); } } @@ -1827,7 +1827,7 @@ sub restore_one_package { } } if (!$restore_file) { - tlwarn("$prg: Cannot find restore file $bd/${pkg}.r${rev}.tar.*, no action taken\n"); + tlwarn("$prg: cannot find restore file $bd/${pkg}.r${rev}.tar.*, no action taken\n"); return ($F_ERROR); } $localtlpdb->remove_package($pkg); @@ -1841,7 +1841,7 @@ sub restore_one_package { TeXLive::TLUtils::announce_execute_actions("enable", $localtlpdb->get_package($pkg)); $localtlpdb->save; - # TODO_ERROCHECKING we should check the return values of the + # TODO_ERRORCHECKING we should check the return values of the # various calls above return ($F_OK); } @@ -1864,7 +1864,7 @@ sub setup_backup_directory { debug ("Automatic backups activated, keeping $autobackup backups.\n"); $opts{"backup"} = 1; } else { - tlwarn ("$prg: Option autobackup can only be an integer >= -1.\n"); + tlwarn ("$prg: Option autobackup value can only be an integer >= -1.\n"); tlwarn ("$prg: Disabling auto backups.\n"); $localtlpdb->option("autobackup", 0); $autobackup = 0; @@ -1910,7 +1910,7 @@ sub check_backupdir_selection { init_local_db(1); $opts{"backupdir"} = norm_tlpdb_path($localtlpdb->option("backupdir")); if (!$opts{"backupdir"}) { - return (0, "$prg: No way to determine backupdir.\n"); + return (0, "$prg: cannot determine backupdir.\n"); } # we are still here, there is something set in tlpdb my $ob = abs_path($opts{"backupdir"}); @@ -2284,7 +2284,7 @@ sub write_w32_updater { # create backup; make_container expects file name in a format: some-name.r[0-9]+ my ($size, undef, $fullname) = $localtlp->make_container("tar", $root, $temp, "__BACKUP_$pkg.r$oldrev"); if ($size <= 0) { - tlwarn("$prg: Creation of backup container of $pkg failed.\n"); + tlwarn("$prg: creation of backup container failed for: $pkg\n"); return 1; # backup failed? abort } my $decompressor = $::progs{$DefaultCompressorFormat}; @@ -2299,13 +2299,13 @@ sub write_w32_updater { } # now we should have the file present if (!-r $dlcontainer) { - tlwarn("$prg: Couldn't get $pkg_part.tar.$compressorextension, that is bad\n"); + tlwarn("$prg: couldn't get $pkg_part.tar.$compressorextension, that is bad\n"); return 1; # abort } # unpack xz archive my $sysret = system("$decompressor @decompressorArgs < \"$dlcontainer\" > \"$temp/$pkg_part.tar\""); if ($sysret) { - tlwarn("$prg: Couldn't unpack $pkg_part.tar.$compressorextension\n"); + tlwarn("$prg: couldn't unpack $pkg_part.tar.$compressorextension\n"); return 1; # unpack failed? abort } unlink($dlcontainer); # we don't need that archive anymore @@ -2409,7 +2409,7 @@ EOF copy("$root/tlpkg/installer/tar.exe", "$temp"); # make sure copied tar is working if (system("\"$temp/tar.exe\" --version >nul")) { - tlwarn("$prg: Could not copy tar.exe, that is bad.\n"); + tlwarn("$prg: could not copy tar.exe, that is bad.\n"); return 1; # abort } open UPDATER, ">$temp/updater-w32" or die "Cannot create updater script: $!"; @@ -2560,7 +2560,7 @@ sub auto_remove_install_force_packages { # if foo is of type Package|Documentation it will update only foo # and the respective .ARCH dependencies # if foo is of type Collection|Scheme it will update itself AND -# will check all depending packs of type NOT(COllection|Scheme) +# will check all depending packs of type NOT(Collection|Scheme) # for necessary updates # # tlmgr update --no-depends foo @@ -3245,8 +3245,8 @@ sub action_update { "__BACKUP_${pkg}.r" . $tlp->revision, $tlp->relocated); if ($s <= 0) { - tlwarn("\n$prg: Creation of backup container of $pkg failed.\n"); - tlwarn("$prg: Continuing to update other packages, please retry...\n"); + tlwarn("\n$prg: creation of backup container failed for: $pkg\n"); + tlwarn("$prg: continuing to update other packages, please retry...\n"); $ret |= $F_WARNING; # we should try to update other packages at least next; @@ -3460,7 +3460,7 @@ sub action_update { } if ($bad_file) { tlwarn("$prg: The file $k has disappeared from the critical" . - "package $pkg but is still present in @found_pkgs\n"); + " package $pkg but is still present in @found_pkgs\n"); $ret |= $F_WARNING; } else { push @infra_files_to_be_removed, $k; @@ -3943,7 +3943,7 @@ sub show_one_package_csv { my $totalsize = $srcsize + $docsize + $runsize + $binsize; push @out, $totalsize; } else { - tlwarn("$prg: unkown data field $d\n"); + tlwarn("$prg: unknown data field $d\n"); return($F_WARNING); } } @@ -4056,7 +4056,7 @@ sub show_one_package_detail { if (defined($tag)) { # we already searched for the package in a specific tag, don't retry # all candidates! - tlwarn("$prg: Cannot find package $pkg in repository $tag\n"); + tlwarn("$prg: cannot find package $pkg in repository $tag\n"); return($F_WARNING); } my @cand = $remotetlpdb->candidates($pkg); @@ -4066,7 +4066,7 @@ sub show_one_package_detail { # subsidiary repository, but not installable # because it is not pinned # we will list it but warn about this fact - # useless test, @cand will always be defined becuase $remotetlpdb is virtual + # useless test, @cand will always be defined because $remotetlpdb is virtual my $first = shift @cand; if (defined($first)) { tlwarn("$prg: strange, we have a first candidate but no tlp: $pkg\n"); @@ -4680,12 +4680,12 @@ sub action_option { } elsif ($what eq $TLPDBOptions{"backupdir"}->[2]) { info("$prg: setting option $what to $val.\n"); if (! -d $val) { - info("$prg: the directory $val does not exist; you must create it\n"); + info("$prg: the directory $val does not exists, it has to be created\n"); info("$prg: before backups can be done automatically.\n"); } $localtlpdb->option($opt, $val); } elsif ($what eq $TLPDBOptions{"w32_multi_user"}->[2]) { - # when running w32 do not allow that a non-admin user sets + # when running w32 do not allow that a non-admin users sets # this from false to true my $do_it = 0; if (win32()) { @@ -4754,7 +4754,7 @@ sub action_option { $localtlpdb->option($opt, $n); } } else { - tlwarn ("$prg: Unknown type of option $opt: $TLPDBOptions{$opt}->[0]\n"); + tlwarn ("$prg: unknown type of option $opt: $TLPDBOptions{$opt}->[0]\n"); return ($F_ERROR); } } @@ -5319,10 +5319,10 @@ sub init_tltree { my $Master = $localtlpdb->root; my $tltree = TeXLive::TLTREE->new ("svnroot" => $Master); if ($svn) { - debug("Initializine TLTREE from svn\n"); + debug("Initializing TLTREE from svn\n"); $tltree->init_from_svn; } else { - debug("Initializine TLTREE from find\n"); + debug("Initializing TLTREE from find\n"); $tltree->init_from_files; } return($tltree); @@ -5896,7 +5896,7 @@ sub check_texmfdbs { # POSTACTION # -# explictly run the various post actions, e.g., +# explicitly run the various post actions, e.g., # on a client system or overriding global settings. # # tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] @@ -5931,7 +5931,7 @@ sub action_postaction { chomp($ENV{"TEXMFSYSVAR"} = `kpsewhich -var-value TEXMFVAR`); } elsif ($opts{"w32mode"} eq "admin") { if (!TeXLive::TLWinGoo::admin()) { - tlwarn("$prg: You don't have the permissions for --w32mode=admin\n"); + tlwarn("$prg: you don't have the permissions for --w32mode=admin\n"); return; } } else { @@ -6620,8 +6620,8 @@ sub action_shell { # # set global $location variable. # -# argument $should_i_die specifies what is requried -# to suceed during initialization. +# argument $should_i_die specifies what is required +# to succeed during initialization. # # undef or false: TLPDB needs to be found and initialized, but # support programs need not be found @@ -7219,14 +7219,14 @@ sub load_options_from_config { } elsif ($val eq "1") { $config{"gui-expertmode"} = 1; } else { - tlwarn("$prg: $fn: Unknown value for gui-expertmode: $val\n"); + tlwarn("$prg: $fn: unknown value for gui-expertmode: $val\n"); } } elsif ($key eq "persistent-downloads") { if (($val eq "0") || ($val eq "1")) { $config{'persistent-downloads'} = $val; } else { - tlwarn("$prg: $fn: Unknown value for persistent-downloads: $val\n"); + tlwarn("$prg: $fn: unknown value for persistent-downloads: $val\n"); } } elsif ($key eq "update-exclude") { @@ -7242,7 +7242,7 @@ sub load_options_from_config { } elsif ($val eq "1") { $config{"auto-remove"} = 1; } else { - tlwarn("$prg: $fn: Unknown value for auto-remove: $val\n"); + tlwarn("$prg: $fn: unknown value for auto-remove: $val\n"); } } elsif ($key eq "require-verification") { @@ -7251,7 +7251,7 @@ sub load_options_from_config { } elsif ($val eq "1") { $config{"require-verification"} = 1; } else { - tlwarn("$prg: $fn: Unknown value for require-verification: $val\n"); + tlwarn("$prg: $fn: unknown value for require-verification: $val\n"); } } elsif ($key eq "verify-downloads") { @@ -7260,14 +7260,14 @@ sub load_options_from_config { } elsif ($val eq "1") { $config{"verify-downloads"} = 1; } else { - tlwarn("$prg: $fn: Unknown value for verify-downloads: $val\n"); + tlwarn("$prg: $fn: unknown value for verify-downloads: $val\n"); } } elsif ($key eq "verify-repo") { if ($val =~ m/$allowed_verify_args_regex/) { $config{"verify-repo"} = $val; } else { - tlwarn("$prg: $fn: Unknown value for verify-repo: $val\n"); + tlwarn("$prg: $fn: unknown value for verify-repo: $val\n"); } } elsif ($key eq "no-checksums") { @@ -7276,7 +7276,7 @@ sub load_options_from_config { } elsif ($val eq "0") { $config{"no-checksums"} = 0; } else { - tlwarn("$prg: $fn: Unknown value for no-checksums: $val\n"); + tlwarn("$prg: $fn: unknown value for no-checksums: $val\n"); } } elsif ($sysmode) { @@ -7285,10 +7285,10 @@ sub load_options_from_config { my @acts = split(/,/, $val); $config{'allowed-actions'} = \@acts; } else { - tlwarn("$prg: $fn: Unknown tlmgr configuration variable: $key\n"); + tlwarn("$prg: $fn: unknown tlmgr configuration variable: $key\n"); } } else { - tlwarn("$prg: $fn: Unknown tlmgr configuration variable: $key\n"); + tlwarn("$prg: $fn: unknown tlmgr configuration variable: $key\n"); } } } @@ -7327,8 +7327,8 @@ sub convert_crypto_options { if ((defined($verify_downloads) || defined($require_verification)) && defined($verify_repo)) { # we cannot have all three, warn and bail out - tldie("$prg: The options verify-downloads and require-verification have\n" - . "$prg: been superseded by verify-repo, please use only the latter!\n"); + tldie("$prg: options verify-downloads and require-verification have\n" + . "$prg: been superseded by verify-repo; please use only the latter!\n"); } # return immediately if verify_repo is already set return($verify_repo) if (defined($verify_repo)); @@ -7341,7 +7341,7 @@ sub convert_crypto_options { $ret = "all"; } else { # either nothing passed or --no-require-verification (default) - # use explit setting to main + # use explicit setting to main $ret = "main"; } } else { @@ -7605,7 +7605,7 @@ between an option name and its value. Specify the package repository from which packages should be installed or updated, either a local directory or network location, as below. This -overrides the default package repository found in the installation's TeX +overridesthe default package repository found in the installation's TeX Live Package Database (a.k.a. the TLPDB, which is given entirely in the file C<tlpkg/texlive.tlpdb>). @@ -8709,7 +8709,7 @@ and the respective tags if set. If a path, url, or tag is given after the C<list> keyword, it is interpreted as the source from which to initialize a TL database and lists the contained packages. This can also be an otherwise-unused repository, either local or remote. If the option -C<--with-platforms> is spcified in addition, for each package the +C<--with-platforms> is specified in addition, for each package the available platforms (if any) are also listed. The form C<repository add> adds a repository (optionally attaching a @@ -8925,9 +8925,9 @@ must be specified. Options: =item B<--all> -Update all installed packages except for C<tlmgr> itself. Thus, if -updates to C<tlmgr> itself are present, this will simply give an error, -unless also the option C<--force> or C<--self> is given. (See below.) +Update all installed packages except for C<tlmgr> itself. If updates to +C<tlmgr> itself are present, this gives an error, unless also the option +C<--force> or C<--self> is given. (See below.) In addition to updating the installed packages, during the update of a collection the local installation is (by default) synchronized to the @@ -8944,7 +8944,7 @@ Analogously, if a package has been added to a collection on the server that is also installed locally, it will be added to the local installation. This is called ``auto-install'' and is announced as such when using the option C<--list>. This auto-installation can be -suppressed using the option C<--no-auto-install>. +suppressed using the option C<--no-auto-install> (also not recommended). An exception to the collection dependency checks (including the auto-installation of packages just mentioned) are those that have been @@ -8952,6 +8952,13 @@ auto-installation of packages just mentioned) are those that have been on them. (See the C<remove> action documentation.) To reinstall any such forcibly removed packages use C<--reinstall-forcibly-removed>. +To reiterate: automatic removals and additions are entirely determined +by comparison of collections. Thus, if you manually install an +individual package C<foo> which is later removed from the server, +C<tlmgr> will not notice and will not remove it locally. (It has to be +this way, without major rearchitecture work, because the tlpdb does not +record the repository from which packages come from.) + If you want to exclude some packages from the current update run (e.g., due to a slow link), see the C<--exclude> option below. @@ -9015,12 +9022,12 @@ the key C<update-exclude>. =item B<--no-auto-remove> [I<pkg>...] -By default, C<tlmgr> tries to remove packages which have disappeared on -the server, as described above under C<--all>. This option prevents -such removals, either for all packages (with C<--all>), or for just the -given I<pkg> names. This can lead to an inconsistent TeX installation, -since packages are not infrequently renamed or replaced by their -authors. Therefore this is not recommend. +By default, C<tlmgr> tries to remove packages in an existing collection +which have disappeared on the server, as described above under C<--all>. +This option prevents such removals, either for all packages (with +C<--all>), or for just the given I<pkg> names. This can lead to an +inconsistent TeX installation, since packages are not infrequently +renamed or replaced by their authors. Therefore this is not recommended. =item B<--no-auto-install> [I<pkg>...] @@ -9041,6 +9048,9 @@ is equivalent to tlmgr update --all tlmgr remove --force foobar +Again, since packages are sometimes renamed or replaced, using this +option is not ecommended. + =item B<--reinstall-forcibly-removed> Under normal circumstances C<tlmgr> will not install packages that have @@ -9915,7 +9925,7 @@ This script and its documentation were written for the TeX Live distribution (L<https://tug.org/texlive>) and both are licensed under the GNU General Public License Version 2 or later. -$Id: tlmgr.pl 52585 2019-10-31 18:26:15Z karl $ +$Id: tlmgr.pl 52672 2019-11-07 18:35:53Z karl $ =cut # test HTML version: pod2html --cachedir=/tmp tlmgr.pl >/tmp/tlmgr.html diff --git a/Master/texmf-dist/doc/latex/lwarp/README.txt b/Master/texmf-dist/doc/latex/lwarp/README.txt index 8783fb594cf..195a61cffbc 100644 --- a/Master/texmf-dist/doc/latex/lwarp/README.txt +++ b/Master/texmf-dist/doc/latex/lwarp/README.txt @@ -1,5 +1,5 @@ -LaTeX lwarp package v0.77 README.txt +LaTeX lwarp package v0.78 README.txt Files included are: diff --git a/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf b/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf Binary files differindex 5f1099dd493..1c3d9aec650 100644 --- a/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf +++ b/Master/texmf-dist/doc/latex/lwarp/lwarp.pdf diff --git a/Master/texmf-dist/scripts/lwarp/lwarpmk.lua b/Master/texmf-dist/scripts/lwarp/lwarpmk.lua index e0477be8a65..2ccc1fa5bd0 100755 --- a/Master/texmf-dist/scripts/lwarp/lwarpmk.lua +++ b/Master/texmf-dist/scripts/lwarp/lwarpmk.lua @@ -2,7 +2,7 @@ -- Copyright 2016-2019 Brian Dunn -printversion = "v0.76" +printversion = "v0.78" requiredconfversion = "2" -- also at *lwarpmk.conf function printhelp () diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.dtx b/Master/texmf-dist/source/latex/lwarp/lwarp.dtx index 6cc5665d1aa..e52d6bfdb3e 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/10/15 v0.77 Allows LaTeX to directly produce HTML5 output.] +%<package> [2019/11/07 v0.78 Allows LaTeX to directly produce HTML5 output.] % %<*driver> \documentclass{ltxdoc} @@ -337,9 +337,9 @@ Keywords={LaTeX, HTML, conversion}% \small See the \nameref{sec:indexgen} for ``how-to'', and the \nameref{sec:indextrb} if something doesn't work. +A \nameref{sec:troubleshooting} section is also available. The \nameref{sec:indexidx} contains automated entries for each package, macro, environment, counter, boolean, and other objects; individually and also sorted by category. -A \nameref{sec:troubleshooting} section is also available. \smallskip \hrule \end{minipage}\margintag{Need help?} @@ -1002,7 +1002,7 @@ While emulating \pkg{memoir}, \pkg{lwarp} pre-loads a number of packages (\cref{sec:patch-memoir-packages}). This can cause an options clash when the user's document later loads the same \trouble[options clash]{memoir=\pkg{memoir}>options clash} -\trouble{options clash>memoir=\pkg{memoir}} +\trouble{options>clash with \pkg{memoir}} packages with options. To fix this problem, specify the options before loading \pkg{lwarp}: \begin{sourcedisplay} @@ -2348,18 +2348,31 @@ Subtitles are in a \element{div} of class |mdframedsubtitle|, and likewise for subsubtitles. } -\newcommand{\limitscaption}{% -To pass options to caption, select the options before loading \pkg{lwarp}: -\trouble[options]{caption=\pkg{caption}>options} +\newcommand{\limitspackageloading}{% +Package options may cause problems with \pkg{lwarp}, especially if +they include curley braces. + +If selecting options with braces in \cs{usepackage} does not work: \begin{sourcedisplay} -\cs{documentclass}\{article\} \\ -\dots \\ -\cs{PassOptionsToPackage}\{options\_list\}\{caption\} \\ +\cs{usepackage}[font=\textred{\{}it,small\textred{\}}]\{caption\}\% does not work +\end{sourcedisplay} +\dots\ try instead selecting the package options before loading \pkg{lwarp}: +\begin{sourcedisplay} +\cs{PassOptionsToPackage}\{font=\{it,small\}\}\{caption\} \\ \dots \\ \cs{usepackage\{lwarp\}} \\ \dots \\ \cs{usepackage\{caption\}} \end{sourcedisplay} +\dots\ or try setting package options after the package has been loaded: +\begin{sourcedisplay} +\cs{usepackage}\{caption\} \\ +\cs{captionsetup}\{font=\{it,small\}\} +\end{sourcedisplay} +} + +\newcommand{\limitscaption}{% +\limitspackageloading To ensure proper float numbering, set caption positions such as: @@ -2679,7 +2692,7 @@ This boolean may be tested by the user for later use. %<*package> % \fi % -% \CheckSum{33423} +% \CheckSum{33374} % % \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 @@ -2799,6 +2812,7 @@ This boolean may be tested by the user for later use. % \changes{v0.75}{2019/09/23}{\ 2019/09/23} % \changes{v0.76}{2019/10/08}{\ 2019/10/08} % \changes{v0.77}{2019/10/15}{\ 2019/10/15} +% \changes{v0.78}{2019/11/07}{\ 2019/11/07} @@ -3019,6 +3033,22 @@ This boolean may be tested by the user for later use. % % \begin{description} % \needspace{2\baselineskip} +% \item[v0.78:] Fixes for support files, \attribute{alt} tags, hyperlinks, and the 2019/10 \LaTeX\ release. +% \begin{itemize} +% \item Docs: Improved documentation regarding package options. +% \margintag{docs} +% See \cref{sec:thingstoavoid}. +% \item Fix to overwrite existing support files +% using new \env{filecontents} environment. +% \item \pkg{breqn}: Previously broken by the 2019/10 \LaTeX\ update, but +% \margintag{packages} +% now working again. +% \item \pkg{graphics}: Fix for \cs{includegraphics} \attribute{alt} tags. +% \item \pkg{babel-french}: Fix for hyperlinks. +% \item \pkg{media9}, \pkg{movie15}, \pkg{multimedia}: Fix for the 2019/10 \LaTeX\ update. +% \item \pkg{accessibility}: Added. +% \end{itemize} +% \needspace{2\baselineskip} % \item[v0.77:] Updates to fix recently-broken packages. % \begin{itemize} % \item \pkg{booktabs}: Updated to v1.6180339. @@ -5039,7 +5069,7 @@ This boolean may be tested by the user for later use. % % \midrule % -% Accessibility: & \ipkg{accsupp}, \ipkg{axessibility}. \\ +% Accessibility: & \epkg{accessibility}, \ipkg{accsupp}, \ipkg{axessibility}. \\ % % \midrule % @@ -6318,7 +6348,7 @@ This boolean may be tested by the user for later use. % \begin{enumerate} % \item Declare the \cs{documentclass}. % \item Load text fonts. -% \item Load \pkg{inputenc} or \pkg{inputenx}, \pkg{fontenc}, and/or \pkg{fontspec}. +% \item Load \pkg{inputenc} or \pkg{inputenx}, \pkg{fontenc}, or \pkg{fontspec}. % \item Load \pkg{lwarp}. % \item Load remaining packages. % \end{enumerate} @@ -6335,10 +6365,15 @@ This boolean may be tested by the user for later use. % \item \limitsmathinsectionnames % \item \limitsincludegraphicsscale % \item Possible changes to \env{tabular} environments include: +% \watchout[tabular] % |*| columns, \pkg{multirow}, \pkg{longtable}, \pkg{supertabular}, \pkg{xtab}, % \pkg{bigdelim}. See \cref{sec:limitstabular}. +% \item If using braces in package options, +% \watchout[package options] +% such as with \pkg{caption}, see \cref{sec:thingstoavoid}. % \item Possible option clashes with \pkg{memoir}. See \cref{sec:limitsmemoir}. % \item If using indexes, see \cref{sec:indexsetup}. +% \watchout[indexes] % \item If using many indexes, glossaries, |.aux| files, etc., % see \cref{sec:indexsetup} regarding \pkg{morewrites}. % If \pkg{morewrites} is already used, be sure to add the setup with |allocate=10|. @@ -7820,7 +7855,7 @@ This boolean may be tested by the user for later use. % \cs{HTMLAuthor} may be used to set the meta tag to a simple list of names. % % -% +% \clearpage % % \section{Special cases and limitations} % \label{sec:limitations} @@ -7843,6 +7878,12 @@ This boolean may be tested by the user for later use. % In the document, avoid the following: % % \begin{description} +% \item [Package options:] \ +% \trouble[options with braces]{options>with braces} +% \trouble{caption=\pkg{caption}>options} +% \trouble{package>options with braces} +% \trouble{Missing \cs{begin}\{document\}>package options} +% \limitspackageloading % \item [\texttt{page} counter:] Do not adjust the \texttt{page} counter. % If doing so is required for the print version, place the % adjustment inside a \env{warpprint} environment. @@ -9254,6 +9295,7 @@ This boolean may be tested by the user for later use. % % \DescribePackage{caption} % \DescribePackage{subcaption} +% \label{sec:limitscaption} % \limitscaption % % @@ -10524,6 +10566,12 @@ This boolean may be tested by the user for later use. % % \item [Options clash:] If using \pkg{memoir}, see \cref{sec:limitsmemoir}. % +% \item [``Missing \cs{begin}\{document\}.'':] +% Some packages require that their options be +% specified before \pkg{lwarp} is loaded, or via the package's setup +% macro, especially if these options include the use of braces. +% See \cref{sec:thingstoavoid}. +% % \item [``No room for a new \cs{write}.'':] Before |\usepackage{lwarp}|, add: % \trouble{No room for a new \cs{write}} % \trouble{morewrites} @@ -11395,6 +11443,7 @@ This boolean may be tested by the user for later use. \LWR@loadafter{a5comb} \LWR@notmemoirloadafter{abstract} \LWR@loadafter{academicons} +\LWR@loadafter{accessibility} \LWR@loadafter{accsupp} \LWR@loadafter{acro} \LWR@loadafter{acronym} @@ -13386,31 +13435,56 @@ This boolean may be tested by the user for later use. % \DescribePackage{filecontents} % -% Used to write helper files, done in print mode. -% -% Patched to work with \pkg{morewrites}, per -% \href -% {https://tex.stackexchange.com/questions/312830/does-morewrites-not-support-filecontents-and-can-i-write-body-of-environment-us/312910} -% {\texttt{https://tex.stackexchange.com/questions/312830/\\ -% does-morewrites-not-support-filecontents-and-can-i-write-body-of-environment-us/\\ -% 312910}} +% Used to write helper files while creating the print version. % % \changes{v0.34}{2017/08/02}{\pkg{filecontents}: Required. Patched for \pkg{morewrites}.} +% \changes{v0.78}{2019/11/05}{\pkg{filecontents}: Fix to overwrite existing files using new \env{filecontents} environment.} % -% (Recent versions of \LaTeX\ (as of Fall 2019) now include the functionality -% of the \pkg{filecontents} package, but the package will still be used -% for those who still have older installations.) +% Recent versions of \LaTeX\ (as of Fall 2019) now include the functionality +% of the \pkg{filecontents} package, but with a new optional argument +% used to specify whether to force the overwriting of an existing file. +% If an older \LaTeX\ kernel is used, the original \pkg{filecontents} package is used, +% but it is patched to throw away the new optional argument. % % \begin{macrocode} -\RequirePackage{filecontents} +\@ifundefined{filec@ntents@opt}{% older kernel, discard optional args -\@ifpackagelater{filecontents}{2011/10/09}% -{} -{ -\newwrite\fcwrite -\let\LWR@origfilec@ntents\filec@ntents -\def\filec@ntents{\def\chardef##1\write{\let\reserved@c\fcwrite}\LWR@origfilec@ntents} -} + \RequirePackage{filecontents} + + \LetLtxMacro\LWR@orig@filec@ntents\filec@ntents + + \@ifpackagelater{filecontents}{2011/10/08} + { +% \end{macrocode} +% For a newer version of the \pkg{filecontents} package, simply +% discard the optional argument. +% \begin{macrocode} + \renewcommand*{\filec@ntents}[1][]{\LWR@orig@filec@ntents} + } + {% patch older package for morewrites +% \end{macrocode} +% For an older version of \pkg{filecontents}, +% discard the optional argument, and also patch to work with \pkg{morewrites}, per +% \href +% {https://tex.stackexchange.com/questions/312830/does-morewrites-not-support-filecontents-and-can-i-write-body-of-environment-us/312910} +% {\texttt{https://tex.stackexchange.com/questions/312830/\\ +% does-morewrites-not-support-filecontents-and-can-i-write-body-of-environment-us/\\ +% 312910}} +% \begin{macrocode} + \newwrite\fcwrite + \renewcommand*{\filec@ntents}[1][]{% + \def\chardef##1\write{\let\reserved@c\fcwrite}% + \LWR@orig@filec@ntents% + } + } + +}% older kernel +{% newer kernel +% \end{macrocode} +% For a newer kernel with a \env{filecontents} environment which accepts the +% optional \optn{overwrite} argument, use the environment as-is. +% \begin{macrocode} +}% newer kernel, filecontents env accepts optional args, do not load package % \end{macrocode} % \begin{macrocode} @@ -13559,6 +13633,7 @@ This boolean may be tested by the user for later use. % Remember the original \cs{RequirePackage}: % \begin{macrocode} \LetLtxMacro\LWR@origRequirePackage\RequirePackage +\LetLtxMacro\LWR@origRequirePackageWithOptions\RequirePackageWithOptions % \end{macrocode} % \begin{macro}{\LWR@requirepackagenames} @@ -13792,13 +13867,13 @@ This boolean may be tested by the user for later use. \IfValueTF{#1}% {% options given \IfValueTF{#3}% version given? - {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}[#3]}% - {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}}% + {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}[#3]}% + {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}}% }% {% no options given \IfValueTF{#3}% version given? - {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}[#3]}% - {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}}% + {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}[#3]}% + {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}}% }% } \LetLtxMacro\usepackage\RequirePackage @@ -13824,13 +13899,15 @@ This boolean may be tested by the user for later use. Using package `#1' and adding lwarp modifications,\MessageBreak including options,}% \IfValueTF{#2} -{\ProvidesPackage{lwarp-#1}[#2]} -{\ProvidesPackage{lwarp-#1}} -\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{#1}} -\ProcessOptions\relax -\IfValueTF{#2} -{\LWR@origRequirePackage{#1}[#2]} -{\LWR@origRequirePackage{#1}} + {\ProvidesPackage{lwarp-#1}[#2]} + {\ProvidesPackage{lwarp-#1}} +\DeclareOption*{% + \PassOptionsToPackage{\CurrentOption}{#1}% +} +\ProcessOptions\relax% +\IfValueTF{#2}% + {\LWR@origRequirePackage{#1}[#2]}% + {\LWR@origRequirePackage{#1}}% % \end{macrocode} % In some cases, the following seems to be required % to avoid an ``unknown option'' error, such @@ -13838,7 +13915,7 @@ This boolean may be tested by the user for later use. % \changes{v0.62}{2018/11/11}{Fix: Unknown option error.} % \begin{macrocode} \DeclareOption*{}% -\ProcessOptions\relax +\ProcessOptions\relax% } % \end{macrocode} % \end{macro} @@ -15386,7 +15463,7 @@ This boolean may be tested by the user for later use. % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.css} +\begin{filecontents*}[overwrite]{lwarp.css} /* CSS stylesheet for the LaTeX lwarp package Copyright 2016-2019 Brian Dunn — BD Tech Concepts LLC @@ -17016,7 +17093,7 @@ span.sidetocthetitle { display: none } % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_sagebrush.css} +\begin{filecontents*}[overwrite]{lwarp_sagebrush.css} @import url("lwarp.css") ; @@ -17287,7 +17364,7 @@ nav.sidetoc a:hover { % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_formal.css} +\begin{filecontents*}[overwrite]{lwarp_formal.css} @import url("lwarp.css") ; @@ -17504,7 +17581,7 @@ nav.botnavigation { % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{sample_project.css} +\begin{filecontents*}[overwrite]{sample_project.css} /* ( --- Start of project.css --- ) */ /* ( --- A sample project-specific CSS file for lwarp --- ) */ @@ -17541,7 +17618,7 @@ nav.botnavigation { % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.ist} +\begin{filecontents*}[overwrite]{lwarp.ist} preamble "\\begin{theindex} \\providecommand*\\lettergroupDefault[1]{} @@ -17591,7 +17668,7 @@ page_compositor "." % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.xdy} +\begin{filecontents*}[overwrite]{lwarp.xdy} (require "tex/inputenc/latin.xdy") (merge-rule "\\PS *" "Postscript") (require "texindy.xdy") @@ -17709,7 +17786,7 @@ page_compositor "." % \codeconfig % \begin{macrocode} \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_mathjax.txt} +\begin{filecontents*}[overwrite]{lwarp_mathjax.txt} <!-- https://groups.google.com/forum/#!topic/ mathjax-users/jUtewUcE2bY --> <script type="text/x-mathjax-config"> @@ -17942,13 +18019,13 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.6/MathJax.js?config=TeX- % % ^^A *lwarpmk.lua % \begin{macrocode} -\begin{filecontents*}{lwarpmk.lua} +\begin{filecontents*}[overwrite]{lwarpmk.lua} #!/usr/bin/env texlua -- Copyright 2016-2019 Brian Dunn -printversion = "v0.77" +printversion = "v0.78" requiredconfversion = "2" -- also at *lwarpmk.conf function printhelp () @@ -19909,6 +19986,16 @@ end -- not --version \providecommand*{\LWR@FBcancel}{} \AtBeginDocument{% +% \end{macrocode} +% In some circumstances, \cs{NoAutoSpacing} may be defined when \cs{frenchbsetup} is not. +% \changes{v0.78}{2019/10/29}{\pkg{babel-french}: Fix: Hyperlinks.} +% \begin{macrocode} +\@ifundefined{NoAutoSpacing}% + {}% + {% + \LetLtxMacro\LWR@FBcancel\NoAutoSpacing% + }% + \@ifundefined{frenchbsetup}% {}% {% @@ -19917,7 +20004,6 @@ end -- not --version % ^^A OR: redefine \insertfootnotemarkFB? % \begin{macrocode} % - \LetLtxMacro\LWR@FBcancel\NoAutoSpacing% \renewrobustcmd*{\FBcolonspace}{% \begingroup% \LWR@FBcancel% @@ -29009,11 +29095,11 @@ rowspan="#2" % % then nullify the autospacing commands inside the tabular, % since they were not compatible with the tabular column parsing code, % which uses \pkg{xstring}. -% \changes{v0.41}{2017/10/06}{Fix: \cs{NoAutoSpacing} in a tabular -% with \pkg{babel-french}.} +% \changes{v0.41}{2017/10/06}{\pkg{babel-french}: Fix: \cs{NoAutoSpacing} in a tabular.} +% \changes{v0.78}{2019/10/29}{\pkg{babel-french}: Fix: Hyperlinks.} % \begin{macrocode} \AtBeginDocument{ -\@ifundefined{frenchbsetup}% +\@ifundefined{NoAutoSpacing}% {% no babel-french \newcommand*{\LWR@nullifyNoAutoSpacing}{} }% no babel-french @@ -29889,6 +29975,8 @@ rowspan="#2" % % \end{macrocode} % \end{macro} + + % \subsection{Hyper-references} % % Note that the code currently only sanitizes the underscore character. @@ -29925,6 +30013,46 @@ autopage-\theLWR@currentautosec% % \end{macro} +% \begin{macro}{\LWR@linkcatcodes} +% Sets catcodes before processing macros which have hyperlinks as arguments. +% \changes{v0.78}{2019/10/29}{Factored.} +% \begin{macrocode} +\newcommand*{\LWR@linkcatcodes}{% + \catcode`\#=12% + \catcode`\%=12% + \catcode`\&=12% + \catcode`\~=12% + \catcode`\_=12% +% \end{macrocode} +% For \pkg{babel-french}: +% \changes{v0.78}{2019/10/29}{\pkg{babel-french}: Fix: Hyperlinks.} +% \begin{macrocode} + \LWR@FBcancel% +} +% \end{macrocode} +% \end{macro} + + +% \begin{macro}{\LWR@linkmediacatcodes} +% Sets catcodes before processing macros which have hyperlinks as arguments. +% Modified for multimedia links. +% \changes{v0.78}{2019/10/29}{Factored.} +% \begin{macrocode} +\newcommand*{\LWR@linkmediacatcodes}{% + \catcode`\#=12% + \catcode`\%=12% +% \catcode`\&=12% left alone for splitting flash variables + \catcode`\~=12% + \catcode`\_=12% +% \end{macrocode} +% For \pkg{babel-french}: +% \changes{v0.78}{2019/10/29}{\pkg{babel-french}: Fix: Hyperlinks.} +% \begin{macrocode} + \LWR@FBcancel% +} +% \end{macrocode} +% \end{macro} + % \begin{macro}{\LWR@subhyperref} \marg{URL} % @@ -29937,13 +30065,13 @@ autopage-\theLWR@currentautosec% % \changes{v0.57}{2018/06/05}{Fix: Text catcodes.} % \begin{macrocode} \NewDocumentCommand{\LWR@subhyperref}{m}{% -\LWR@traceinfo{LWR@subhyperref !#1!}% -\LWR@sanitize{#1}% -\LWR@htmltag{% - a href="\LWR@sanitized" % space - \LWR@addlinktitle % space - target="\_{}blank" % space -}% + \LWR@traceinfo{LWR@subhyperref !#1!}% + \LWR@sanitize{#1}% + \LWR@htmltag{% + a href="\LWR@sanitized" % space + \LWR@addlinktitle % space + target="\_{}blank" % space + }% } % \end{macrocode} % \end{macro} @@ -29956,9 +30084,9 @@ autopage-\theLWR@currentautosec% % \changes{v0.57}{2018/06/05}{Fix: Text catcodes.} % \begin{macrocode} \newcommand{\LWR@subhyperreftext}[1]{% -#1% -\LWR@htmltag{/a}% -\LWR@ensuredoingapar% + #1% + \LWR@htmltag{/a}% + \LWR@ensuredoingapar% } % \end{macrocode} % \end{macro} @@ -29968,17 +30096,18 @@ autopage-\theLWR@currentautosec% % \changes{v0.18}{2016/04/14}{Improved \HTML\ output linebreaks.} % \changes{v0.45}{2017/12/29}{Improved URLs with underscores.} % \changes{v0.66}{2019/02/02}{Improved \HTML\ formatting.} +% \changes{v0.78}{2019/11/05}{Remove extra space.} % \begin{macrocode} \NewDocumentCommand{\LWR@subhyperrefclass}{m +m m}{% -\LWR@htmltag{% - a % space - href="\begingroup\@sanitize#1\endgroup" % space - class="#3" % space - \LWR@addlinktitle % space -}\LWR@orignewline% -#2\LWR@orignewline% -\LWR@htmltag{/a}% -\LWR@ensuredoingapar% + \LWR@htmltag{% + a % space + href="\begingroup\@sanitize#1\endgroup" % space + class="#3" % space + \LWR@addlinktitle % space + }\LWR@orignewline% + #2% + \LWR@htmltag{/a}% + \LWR@ensuredoingapar% } % \end{macrocode} % \end{macro} @@ -29995,20 +30124,16 @@ autopage-\theLWR@currentautosec% % \changes{v0.57}{2018/06/05}{Fix: Text catcodes.} % \begin{macrocode} \DeclareDocumentCommand{\LWR@hrefb}{O{} m}{% -\LWR@ensuredoingapar% -\LWR@subhyperref{#2}% -\endgroup% restore catcodes -\LWR@subhyperreftext% + \LWR@ensuredoingapar% + \LWR@subhyperref{#2}% + \endgroup% restore catcodes + \LWR@subhyperreftext% } \newrobustcmd*{\href}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hrefb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hrefb% } % \end{macrocode} % \end{macro} @@ -30021,21 +30146,17 @@ autopage-\theLWR@currentautosec% % \changes{v0.52}{2018/03/26}{Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.} % \begin{macrocode} \newcommand*{\LWR@nolinkurlb}[1]{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\LWR@templink% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \LWR@templink% + \endgroup% } \newrobustcmd*{\nolinkurl}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@nolinkurlb% + \begingroup% + \LWR@linkcatcodes% + \LWR@nolinkurlb% } % \end{macrocode} % \end{macro} @@ -30054,21 +30175,17 @@ autopage-\theLWR@currentautosec% % \changes{v0.52}{2018/03/26}{Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.} % \begin{macrocode} \DeclareDocumentCommand{\LWR@urlb}{m}{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\href{\LWR@templink}{\LWR@templink}% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \href{\LWR@templink}{\LWR@templink}% + \endgroup% } \newrobustcmd*{\url}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@urlb% + \begingroup% + \LWR@linkcatcodes% + \LWR@urlb% } % \end{macrocode} % \end{macro} @@ -36147,8 +36264,10 @@ color:\LWR@origpound\LWR@tempcolor% % \end{macro} % \begin{macro}{\normalfont} +% \changes{v0.78}{2019/11/05}{Uses \cs{LWR@formatted}.} % \begin{macrocode} -\renewrobustcmd*{\normalfont}{\rmfamily\mdseries\upshape\ulcshape} +\newrobustcmd*{\LWR@HTML@normalfont}{\rmfamily\mdseries\upshape\ulcshape} +\LWR@formatted{normalfont} % \end{macrocode} % \end{macro} @@ -37801,6 +37920,72 @@ color:\LWR@origpound\LWR@tempcolor% % % % +% +% \iffalse +%<*afterpage> +% \fi +% +% \part{lwarp-afterpage.sty} +% +% \section{afterpage} +% +% \credits{David Carlisle} +% +% \DescribePackage{afterpage} \pkg{afterpage} is emulated. +% +% \changes{v0.20}{2017/01/11}{\pkg{afterpage}: Added.} +% +% \codehtml +% +% Discard all options for \pkg{lwarp-afterpage}: +% \begin{macrocode} +\LWR@ProvidesPackageDrop{afterpage}[2014/10/28] +% \end{macrocode} +% +% \begin{macrocode} +\newcommand{\afterpage}[1]{#1} +% \end{macrocode} +% +% \iffalse +%</afterpage> +% \fi +% +% +% +% +% +% +% \iffalse +%<*accessibility> +% \fi +% +% \part{lwarp-accessibility.sty} +% +% \section{accessibility} +% +% \DescribePackage{accessibility} \pkg{accessibility} is emulated. +% +% \changes{v0.78}{2019/10/17}{\pkg{accessibility}: Added.} +% +% \codehtml +% +% Discard all options for \pkg{lwarp-accessibility}: +% \begin{macrocode} +\LWR@ProvidesPackageDrop{accessibility}[2019/10/14] +% \end{macrocode} +% +% \begin{macrocode} +\newcommand{\alt}[1]{\ThisAltText{#1}} +\newcommand{\newhref}[3]{\ThisAltText{#2}\href{#1}{#3}}% +\providecommand{\thead}[1]{\textbf{#1}} +% \end{macrocode} +% +% \iffalse +%</accessibility> +% \fi +% +% +% % \iffalse %<*accsupp> % \fi @@ -41063,20 +41248,16 @@ span style="width:\LWR@printlength{\ALG@thistlm}; display:inline-block;"% \LetLtxMacro\burl\url \NewDocumentCommand{\LWR@burlaltb}{O{} +m m}{% -\LWR@ensuredoingapar% -\LWR@subhyperref{#2}% -\LWR@subhyperreftext{#3}% -\endgroup% restore catcodes + \LWR@ensuredoingapar% + \LWR@subhyperref{#2}% + \LWR@subhyperreftext{#3}% + \endgroup% restore catcodes } \newrobustcmd*{\burlalt}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@burlaltb% + \begingroup% + \LWR@linkcatcodes% + \LWR@burlaltb% } \LetLtxMacro\urlalt\burlalt @@ -41411,7 +41592,15 @@ s% % % \codehtml % +% \changes{v0.78}{2019/10/30}{\pkg{caption}: Added warning regarding passing options.} % \begin{macrocode} +\typeout{---} +\typeout{Packages lwarp and caption:} +\typeout{If a ``Missing \protect\begin\protect{document\protect}'' error occurs here,} +\typeout{try using \space \protect\usepackage\protect{caption\protect}\space\protect\captionsetup{options}} +\typeout{instead of \protect\usepackage[options]\protect{caption\protect}.} +\typeout{---} + \LWR@ProvidesPackagePass{caption}[2019/09/01] % \end{macrocode} @@ -49048,27 +49237,12 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space \ifbool{LWR@allowanothergeometry}{% % \end{macrocode} % -% Gather all options: -% \begin{macrocode} -\newcommand*{\LWR@newgeometryoptions}{reset,} - -\DeclareOption*{% - \edef\LWR@newgeometryoptions{\LWR@newgeometryoptions\CurrentOption,}% -} -% \end{macrocode} -% -% Process the options: -% \begin{macrocode} -\ProcessOptions\relax -% \end{macrocode} -% -% Assign and set the selected geometry. +% Assign and set the selected geometry with \optn{reset} prepended. % \cs{AtEndPreamble} \pkg{lwarp} will save this, then set its own geometry. +% \changes{v0.78}{2019/10/20}{\pkg{geometry}: Cleaner option handling.} % \begin{macrocode} -\ifdefvoid{\LWR@newgeometryoptions}{}{ - \expandafter\LWR@origgeometry\expandafter{\LWR@newgeometryoptions} -} - + \edef\LWR@tempone{reset,\@ptionlist{\@currname.\@currext}}% + \expandafter\LWR@origgeometry\expandafter{\LWR@tempone}% }{}% LWR@allowanothergeometry % \end{macrocode} % @@ -49665,11 +49839,12 @@ solid {\FancyVerbRuleColor{\LWR@origpound\LWR@tempcolor}} ; % space % \end{macrocode} % \changes{v0.65}{2018/12/19}{\pkg{graphics}: Added \cs{includegraphics} \attribute{alt} key.} % \changes{v0.74}{2019/08/20}{Add \cs{ThisAltText}.} +% \changes{v0.78}{2019/10/17}{Fix: \attribute{alt} tag expansion.} % \begin{macrocode} \ifdefvoid{\LWR@ThisAltText}{% - \renewcommand*{\LWR@igalt}{\ImageAltText}% + \edef\LWR@igalt{\ImageAltText}% }{% - \renewcommand*{\LWR@igalt}{\LWR@ThisAltText}% + \edef\LWR@igalt{\LWR@ThisAltText}% }% % \end{macrocode} % @@ -50588,22 +50763,18 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \changes{v0.52}{2018/03/26}{\pkg{hyperref}: Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.} % \begin{macrocode} \NewDocumentCommand{\LWR@hyperimageb}{m +m}{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\LWR@htmltag{img src="\LWR@templink" alt="#2" class="hyperimage"}% -\LWR@ensuredoingapar% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \LWR@htmltag{img src="\LWR@templink" alt="#2" class="hyperimage"}% + \LWR@ensuredoingapar% + \endgroup% } \newrobustcmd*{\hyperimage}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperimageb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperimageb% } % \end{macrocode} @@ -50618,20 +50789,16 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \changes{v0.52}{2018/03/26}{\pkg{hyperref}: Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.} % \begin{macrocode} \NewDocumentCommand{\LWR@hyperdefb}{m m +m}{% -\LWR@ensuredoingapar% -\LWR@sublabel{#1.#2}% -#3% -\endgroup% + \LWR@ensuredoingapar% + \LWR@sublabel{#1.#2}% + #3% + \endgroup% } \newcommand*{\hyperdef}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperdefb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperdefb% } % \end{macrocode} @@ -50647,33 +50814,29 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % Creates an \HTML\ link to |URL#category.name| with the given text. % \begin{macrocode} \newcommand{\LWR@hyperreffinish}[1]{% -\begingroup% -\RenewDocumentCommand{\ref}{}{\LWR@ref@ignorestar}% -#1% -\endgroup% -\LWR@htmltag{/a}% + \begingroup% + \RenewDocumentCommand{\ref}{}{\LWR@ref@ignorestar}% + #1% + \endgroup% + \LWR@htmltag{/a}% } \newcommand*{\LWR@hyperrefbb}[3]{% -\LWR@htmltag{% - a href="% - \detokenize\expandafter{#1}\LWR@hashmark% - \detokenize\expandafter{#2}.\detokenize\expandafter{#3}% - "% - \LWR@addlinktitle% -}% -\endgroup% -\LWR@hyperreffinish% + \LWR@htmltag{% + a href="% + \detokenize\expandafter{#1}\LWR@hashmark% + \detokenize\expandafter{#2}.\detokenize\expandafter{#3}% + "% + \LWR@addlinktitle% + }% + \endgroup% + \LWR@hyperreffinish% } \newrobustcmd*{\LWR@hyperrefb}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperrefbb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperrefbb% } % \end{macrocode} % \end{noindmacro} @@ -50684,19 +50847,15 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \begin{macrocode} \NewDocumentCommand{\LWR@hyperrefcb}{O{label}}{% -\LWR@startref{#1}% -\endgroup% -\LWR@hyperreffinish% + \LWR@startref{#1}% + \endgroup% + \LWR@hyperreffinish% } \newcommand*{\LWR@hyperrefc}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperrefcb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperrefcb% } % \end{macrocode} % \end{noindmacro} @@ -50710,8 +50869,8 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \changes{v0.54}{2018/04/19}{\pkg{hyperref}: Fix: \cs{hyperref} and \cs{hyperlink} with special chars in text.} % \begin{macrocode} \DeclareRobustCommand*{\hyperref}{% -\LWR@ensuredoingapar% -\@ifnextchar[\LWR@hyperrefc\LWR@hyperrefb% + \LWR@ensuredoingapar% + \@ifnextchar[\LWR@hyperrefc\LWR@hyperrefb% } % \end{macrocode} % \end{noindmacro} @@ -50725,19 +50884,15 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \changes{v0.52}{2018/03/26}{\pkg{hyperref}: Fix: \progcode{\#}, \progcode{\%}, \progcode{\&}, \progcode{\~}, \progcode{\_} in \URL.} % \begin{macrocode} \NewDocumentCommand{\LWR@hypertargetb}{m +m}{% -\label{LWR-ht-#1}% -#2% -\endgroup% + \label{LWR-ht-#1}% + #2% + \endgroup% } \newcommand*{\hypertarget}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hypertargetb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hypertargetb% } % \end{macrocode} % \end{noindmacro} @@ -50755,18 +50910,14 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % \changes{v0.54}{2018/04/19}{\pkg{hyperref}: Fix: \cs{hyperref} and \cs{hyperlink} with special chars in text.} % \begin{macrocode} \DeclareDocumentCommand{\LWR@hyperlinkb}{m}{% -\LWR@hyperrefcb[LWR-ht-#1]% + \LWR@hyperrefcb[LWR-ht-#1]% } \DeclareDocumentCommand{\hyperlink}{}{% -\LWR@ensuredoingapar% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperlinkb% + \LWR@ensuredoingapar% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperlinkb% } % \end{macrocode} % \end{noindmacro} @@ -50851,7 +51002,7 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} % % \begin{macrocode} \def\hypercalcbp#1{% -\strip@pt\dimexpr 0.99626401\dimexpr(#1)\relax\relax + \strip@pt\dimexpr 0.99626401\dimexpr(#1)\relax\relax }% % \end{macrocode} % \end{noindmacro} @@ -55052,11 +55203,7 @@ background: \newrobustcmd*{\includemedia}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% -% \catcode`\&=12% left alone for splitting flash variables - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@includemediab% } % \end{macrocode} @@ -55787,11 +55934,7 @@ background: \newrobustcmd*{\includemovie}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% - \catcode`\&=12% - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@includemovieb% } @@ -65347,8 +65490,9 @@ remember to convert PDF images to SVG using 'lwarpmk pdftosvg *-fig.pdf', % \end{noindmacro} % \begin{noindmacro}{\titleclass} \marg{name} \oarg{startlevel} \marg{class} \oarg{cmd} +% \changes{v0.78}{2019/10/21}{\pkg{titlesec}: Fix for \cs{titleclass}.} % \begin{macrocode} -\NewDocumentCommand{\titleclass}{m o m o} +\NewDocumentCommand{\titleclass}{m o m o}{} % \end{macrocode} % \end{noindmacro} @@ -71759,10 +71903,13 @@ height:\LWR@printlength{\LWR@tempheight}% % \marg{audio/video} \marg{mimetype} % % Creates a video or audio from a file. +% The 2019/10 update of the \LaTeX\ kernel may cause extra quotes to be added +% in the filenames. They are removed here. +% \changes{v0.78}{2019/11/07}{\pkg{lwarp-common-multimedia}: Fix links with new LaTeX kernel.} % \begin{macrocode} \newcommand*{\LWR@multimedia@fileAV}[4]{% -\filename@parse{#2}% -\IfFileExists{#2}{% +\IfFileExists{#2}{% also sets \@filef@und +\StrSubstitute[100]{\@filef@und}{"}{}[\LWR@parsedfilename]% % \end{macrocode} % The container \element{div} is sized as desired. % \changes{v0.73}{2019/06/24}{\pkg{lwarp-common-multimedia}: Fix: No size for audio file.} @@ -71790,17 +71937,19 @@ height:\LWR@printlength{\LWR@tempheight}% }\LWR@orignewline % \end{macrocode} % The file source and type: +% \changes{v0.78}{2019/11/07}{\pkg{lwarp-common-multimedia}: Fix links with new LaTeX kernel.} % \begin{macrocode} \LWR@htmltag{% source % space src=\textquotedbl% - \@filef@und\unskip\textquotedbl\ % space + \LWR@parsedfilename\unskip\textquotedbl\ % space type=\textquotedbl{}#4\textquotedbl} % \end{macrocode} % The poster text inside paragraph tags, along with a reference to the file. +% \changes{v0.78}{2019/11/07}{\pkg{lwarp-common-multimedia}: Fix links with new LaTeX kernel.} % \begin{macrocode} \LWR@startpars - \href{\@filef@und}{#1} + \href{\LWR@parsedfilename}{#1} \LWR@stoppars % \end{macrocode} % Finish. @@ -71986,11 +72135,7 @@ height:\LWR@printlength{\LWR@tempheight}% % \begin{macrocode} \newrobustcmd*{\LWR@multimedia}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% - \catcode`\&=12% - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@multimediab% } % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/lwarp/lwarp.ins b/Master/texmf-dist/source/latex/lwarp/lwarp.ins index 5290fa245c2..055804e0cd7 100644 --- a/Master/texmf-dist/source/latex/lwarp/lwarp.ins +++ b/Master/texmf-dist/source/latex/lwarp/lwarp.ins @@ -40,6 +40,7 @@ version 2005/12/01 or later. \file{lwarp-a5comb.sty}{\from{lwarp.dtx}{a5comb}} \file{lwarp-abstract.sty}{\from{lwarp.dtx}{abstract}} \file{lwarp-academicons.sty}{\from{lwarp.dtx}{academicons}} +\file{lwarp-accessibility.sty}{\from{lwarp.dtx}{accessibility}} \file{lwarp-accsupp.sty}{\from{lwarp.dtx}{accsupp}} \file{lwarp-acro.sty}{\from{lwarp.dtx}{acro}} \file{lwarp-acronym.sty}{\from{lwarp.dtx}{acronym}} diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-accessibility.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-accessibility.sty new file mode 100644 index 00000000000..6c341f9587d --- /dev/null +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-accessibility.sty @@ -0,0 +1,24 @@ +%% +%% This is file `lwarp-accessibility.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% lwarp.dtx (with options: `accessibility') +%% This is a generated file. +%% 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 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +\LWR@ProvidesPackageDrop{accessibility}[2019/10/14] +\newcommand{\alt}[1]{\ThisAltText{#1}} +\newcommand{\newhref}[3]{\ThisAltText{#2}\href{#1}{#3}}% +\providecommand{\thead}[1]{\textbf{#1}} +\endinput +%% +%% End of file `lwarp-accessibility.sty'. diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-afterpage.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-afterpage.sty index 008a8b829cb..324ec8a0d63 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-afterpage.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-afterpage.sty @@ -17,6 +17,8 @@ %% version 2005/12/01 or later. \LWR@ProvidesPackageDrop{afterpage}[2014/10/28] \newcommand{\afterpage}[1]{#1} +\LWR@ProvidesPackageDrop{afterpage}[2014/10/28] +\newcommand{\afterpage}[1]{#1} \endinput %% %% End of file `lwarp-afterpage.sty'. diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-breakurl.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-breakurl.sty index 80eac667c92..e0cdac6d6ae 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-breakurl.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-breakurl.sty @@ -19,20 +19,16 @@ \LetLtxMacro\burl\url \NewDocumentCommand{\LWR@burlaltb}{O{} +m m}{% -\LWR@ensuredoingapar% -\LWR@subhyperref{#2}% -\LWR@subhyperreftext{#3}% -\endgroup% restore catcodes + \LWR@ensuredoingapar% + \LWR@subhyperref{#2}% + \LWR@subhyperreftext{#3}% + \endgroup% restore catcodes } \newrobustcmd*{\burlalt}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@burlaltb% + \begingroup% + \LWR@linkcatcodes% + \LWR@burlaltb% } \LetLtxMacro\urlalt\burlalt diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty index 212a0993fb4..b6965b64ee1 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-caption.sty @@ -16,6 +16,13 @@ %% and version 1.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. +\typeout{---} +\typeout{Packages lwarp and caption:} +\typeout{If a ``Missing \protect\begin\protect{document\protect}'' error occurs here,} +\typeout{try using \space \protect\usepackage\protect{caption\protect}\space\protect\captionsetup{options}} +\typeout{instead of \protect\usepackage[options]\protect{caption\protect}.} +\typeout{---} + \LWR@ProvidesPackagePass{caption}[2019/09/01] \renewcommand\caption@ibox[3]{% diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-common-multimedia.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-common-multimedia.sty index c57d58df19c..70971ef5625 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-common-multimedia.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-common-multimedia.sty @@ -45,8 +45,8 @@ }{}% } \newcommand*{\LWR@multimedia@fileAV}[4]{% -\filename@parse{#2}% -\IfFileExists{#2}{% +\IfFileExists{#2}{% also sets \@filef@und +\StrSubstitute[100]{\@filef@und}{"}{}[\LWR@parsedfilename]% \ifstrequal{#3}{audio}{% \begin{BlockClass}{AVviewport} }{% @@ -64,10 +64,10 @@ \LWR@htmltag{% source % space src=\textquotedbl% - \@filef@und\unskip\textquotedbl\ % space + \LWR@parsedfilename\unskip\textquotedbl\ % space type=\textquotedbl{}#4\textquotedbl} \LWR@startpars - \href{\@filef@und}{#1} + \href{\LWR@parsedfilename}{#1} \LWR@stoppars \LWR@htmltag{/#3}\LWR@orignewline \end{BlockClass} @@ -154,11 +154,7 @@ } \newrobustcmd*{\LWR@multimedia}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% - \catcode`\&=12% - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@multimediab% } \endinput diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-geometry.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-geometry.sty index c5c2ee4c37a..f1a339ca588 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-geometry.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-geometry.sty @@ -19,16 +19,8 @@ \LWR@ProvidesPackageDropA{geometry}{2018/04/16} \ifbool{LWR@allowanothergeometry}{% -\newcommand*{\LWR@newgeometryoptions}{reset,} - -\DeclareOption*{% - \edef\LWR@newgeometryoptions{\LWR@newgeometryoptions\CurrentOption,}% -} -\ProcessOptions\relax -\ifdefvoid{\LWR@newgeometryoptions}{}{ - \expandafter\LWR@origgeometry\expandafter{\LWR@newgeometryoptions} -} - + \edef\LWR@tempone{reset,\@ptionlist{\@currname.\@currext}}% + \expandafter\LWR@origgeometry\expandafter{\LWR@tempone}% }{}% LWR@allowanothergeometry \renewcommand*{\geometry}[1]{} \renewcommand*{\newgeometry}[1]{} diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty index 61c5a38bef4..b1781c420ee 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-graphics.sty @@ -197,9 +197,9 @@ \renewcommand*{\LWR@igyscale}{1}% \renewcommand*{\LWR@igclass}{inlineimage}% \ifdefvoid{\LWR@ThisAltText}{% - \renewcommand*{\LWR@igalt}{\ImageAltText}% + \edef\LWR@igalt{\ImageAltText}% }{% - \renewcommand*{\LWR@igalt}{\LWR@ThisAltText}% + \edef\LWR@igalt{\LWR@ThisAltText}% }% \IfValueF{#3}{% \IfValueTF{#2}% diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty index 6b959804450..b5bd275e098 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-hyperref.sty @@ -33,122 +33,98 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} \newcommand*{\hyperbaseurl}[1]{} \NewDocumentCommand{\LWR@hyperimageb}{m +m}{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\LWR@htmltag{img src="\LWR@templink" alt="#2" class="hyperimage"}% -\LWR@ensuredoingapar% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \LWR@htmltag{img src="\LWR@templink" alt="#2" class="hyperimage"}% + \LWR@ensuredoingapar% + \endgroup% } \newrobustcmd*{\hyperimage}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperimageb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperimageb% } \NewDocumentCommand{\LWR@hyperdefb}{m m +m}{% -\LWR@ensuredoingapar% -\LWR@sublabel{#1.#2}% -#3% -\endgroup% + \LWR@ensuredoingapar% + \LWR@sublabel{#1.#2}% + #3% + \endgroup% } \newcommand*{\hyperdef}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperdefb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperdefb% } \newcommand{\LWR@hyperreffinish}[1]{% -\begingroup% -\RenewDocumentCommand{\ref}{}{\LWR@ref@ignorestar}% -#1% -\endgroup% -\LWR@htmltag{/a}% + \begingroup% + \RenewDocumentCommand{\ref}{}{\LWR@ref@ignorestar}% + #1% + \endgroup% + \LWR@htmltag{/a}% } \newcommand*{\LWR@hyperrefbb}[3]{% -\LWR@htmltag{% - a href="% - \detokenize\expandafter{#1}\LWR@hashmark% - \detokenize\expandafter{#2}.\detokenize\expandafter{#3}% - "% - \LWR@addlinktitle% -}% -\endgroup% -\LWR@hyperreffinish% + \LWR@htmltag{% + a href="% + \detokenize\expandafter{#1}\LWR@hashmark% + \detokenize\expandafter{#2}.\detokenize\expandafter{#3}% + "% + \LWR@addlinktitle% + }% + \endgroup% + \LWR@hyperreffinish% } \newrobustcmd*{\LWR@hyperrefb}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperrefbb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperrefbb% } \NewDocumentCommand{\LWR@hyperrefcb}{O{label}}{% -\LWR@startref{#1}% -\endgroup% -\LWR@hyperreffinish% + \LWR@startref{#1}% + \endgroup% + \LWR@hyperreffinish% } \newcommand*{\LWR@hyperrefc}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperrefcb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperrefcb% } \DeclareRobustCommand*{\hyperref}{% -\LWR@ensuredoingapar% -\@ifnextchar[\LWR@hyperrefc\LWR@hyperrefb% + \LWR@ensuredoingapar% + \@ifnextchar[\LWR@hyperrefc\LWR@hyperrefb% } \NewDocumentCommand{\LWR@hypertargetb}{m +m}{% -\label{LWR-ht-#1}% -#2% -\endgroup% + \label{LWR-ht-#1}% + #2% + \endgroup% } \newcommand*{\hypertarget}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hypertargetb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hypertargetb% } \DeclareDocumentCommand{\LWR@hyperlinkb}{m}{% -\LWR@hyperrefcb[LWR-ht-#1]% + \LWR@hyperrefcb[LWR-ht-#1]% } \DeclareDocumentCommand{\hyperlink}{}{% -\LWR@ensuredoingapar% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hyperlinkb% + \LWR@ensuredoingapar% + \begingroup% + \LWR@linkcatcodes% + \LWR@hyperlinkb% } \NewDocumentCommand{\autoref}{s m}{% @@ -171,7 +147,7 @@ do not attempt to patch lwarp's version of `hyperref'.)\MessageBreak} \newcommand{\texorpdfstring}[2]{#1} \def\hypercalcbp#1{% -\strip@pt\dimexpr 0.99626401\dimexpr(#1)\relax\relax + \strip@pt\dimexpr 0.99626401\dimexpr(#1)\relax\relax }% \newcommand{\Acrobatmenu}[2]{} diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-media9.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-media9.sty index 4fb95971e0d..47cff027230 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-media9.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-media9.sty @@ -66,10 +66,7 @@ \newrobustcmd*{\includemedia}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@includemediab% } \newcommand*{\mediabutton}[2][]{} diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-movie15.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-movie15.sty index 77e505b41d3..1c27357f2b3 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-movie15.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-movie15.sty @@ -32,11 +32,7 @@ \newrobustcmd*{\includemovie}{% \begingroup% - \catcode`\#=12% - \catcode`\%=12% - \catcode`\&=12% - \catcode`\~=12% - \catcode`\_=12% + \LWR@linkmediacatcodes% \LWR@includemovieb% } diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp-titlesec.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp-titlesec.sty index c40757c6376..367ee7ab03e 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp-titlesec.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp-titlesec.sty @@ -59,7 +59,7 @@ \newcommand{\assignpagestyle}[2]{#2} -\NewDocumentCommand{\titleclass}{m o m o} +\NewDocumentCommand{\titleclass}{m o m o}{} \endinput %% diff --git a/Master/texmf-dist/tex/latex/lwarp/lwarp.sty b/Master/texmf-dist/tex/latex/lwarp/lwarp.sty index 4dd876182ec..9fb90c6691c 100644 --- a/Master/texmf-dist/tex/latex/lwarp/lwarp.sty +++ b/Master/texmf-dist/tex/latex/lwarp/lwarp.sty @@ -17,7 +17,7 @@ %% version 2005/12/01 or later. \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{lwarp} - [2019/10/15 v0.77 Allows LaTeX to directly produce HTML5 output.] + [2019/11/07 v0.78 Allows LaTeX to directly produce HTML5 output.] @@ -188,6 +188,7 @@ \LWR@loadafter{a5comb} \LWR@notmemoirloadafter{abstract} \LWR@loadafter{academicons} +\LWR@loadafter{accessibility} \LWR@loadafter{accsupp} \LWR@loadafter{acro} \LWR@loadafter{acronym} @@ -1077,15 +1078,27 @@ \begin{warpall} -\RequirePackage{filecontents} +\@ifundefined{filec@ntents@opt}{% older kernel, discard optional args -\@ifpackagelater{filecontents}{2011/10/09}% -{} -{ -\newwrite\fcwrite -\let\LWR@origfilec@ntents\filec@ntents -\def\filec@ntents{\def\chardef##1\write{\let\reserved@c\fcwrite}\LWR@origfilec@ntents} -} + \RequirePackage{filecontents} + + \LetLtxMacro\LWR@orig@filec@ntents\filec@ntents + + \@ifpackagelater{filecontents}{2011/10/08} + { + \renewcommand*{\filec@ntents}[1][]{\LWR@orig@filec@ntents} + } + {% patch older package for morewrites + \newwrite\fcwrite + \renewcommand*{\filec@ntents}[1][]{% + \def\chardef##1\write{\let\reserved@c\fcwrite}% + \LWR@orig@filec@ntents% + } + } + +}% older kernel +{% newer kernel +}% newer kernel, filecontents env accepts optional args, do not load package \end{warpall} @@ -1138,6 +1151,7 @@ \begin{warpall} \LetLtxMacro\LWR@origRequirePackage\RequirePackage +\LetLtxMacro\LWR@origRequirePackageWithOptions\RequirePackageWithOptions \newcommand*{\LWR@requirepackagenames}{} @@ -1259,13 +1273,13 @@ \IfValueTF{#1}% {% options given \IfValueTF{#3}% version given? - {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}[#3]}% - {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}}% + {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}[#3]}% + {\LWR@origRequirePackage[#1]{\LWR@parsedrequirepackagenames}}% }% {% no options given \IfValueTF{#3}% version given? - {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}[#3]}% - {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}}% + {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}[#3]}% + {\LWR@origRequirePackage{\LWR@parsedrequirepackagenames}}% }% } \LetLtxMacro\usepackage\RequirePackage @@ -1279,15 +1293,17 @@ Using package `#1' and adding lwarp modifications,\MessageBreak including options,}% \IfValueTF{#2} -{\ProvidesPackage{lwarp-#1}[#2]} -{\ProvidesPackage{lwarp-#1}} -\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{#1}} -\ProcessOptions\relax -\IfValueTF{#2} -{\LWR@origRequirePackage{#1}[#2]} -{\LWR@origRequirePackage{#1}} + {\ProvidesPackage{lwarp-#1}[#2]} + {\ProvidesPackage{lwarp-#1}} +\DeclareOption*{% + \PassOptionsToPackage{\CurrentOption}{#1}% +} +\ProcessOptions\relax% +\IfValueTF{#2}% + {\LWR@origRequirePackage{#1}[#2]}% + {\LWR@origRequirePackage{#1}}% \DeclareOption*{}% -\ProcessOptions\relax +\ProcessOptions\relax% } \newcommand*{\LWR@ProvidesPackageDropA}[2]{% @@ -1928,7 +1944,7 @@ \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.css} +\begin{filecontents*}[overwrite]{lwarp.css} /* CSS stylesheet for the LaTeX lwarp package Copyright 2016-2019 Brian Dunn — BD Tech Concepts LLC @@ -3464,7 +3480,7 @@ span.sidetocthetitle { display: none } \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_sagebrush.css} +\begin{filecontents*}[overwrite]{lwarp_sagebrush.css} @import url("lwarp.css") ; A:link {color:#105030 ; text-decoration: none ; } @@ -3696,7 +3712,7 @@ nav.sidetoc a:hover { \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_formal.css} +\begin{filecontents*}[overwrite]{lwarp_formal.css} @import url("lwarp.css") ; A:link {color:#802020 ; text-decoration:none; } @@ -3889,7 +3905,7 @@ nav.botnavigation { \begin{LWRwriteconf} -\begin{filecontents*}{sample_project.css} +\begin{filecontents*}[overwrite]{sample_project.css} /* ( --- Start of project.css --- ) */ /* ( --- A sample project-specific CSS file for lwarp --- ) */ @@ -3907,7 +3923,7 @@ nav.botnavigation { \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.ist} +\begin{filecontents*}[overwrite]{lwarp.ist} preamble "\\begin{theindex} \\providecommand*\\lettergroupDefault[1]{} @@ -3932,7 +3948,7 @@ page_compositor "." \begin{LWRwriteconf} -\begin{filecontents*}{lwarp.xdy} +\begin{filecontents*}[overwrite]{lwarp.xdy} (require "tex/inputenc/latin.xdy") (merge-rule "\\PS *" "Postscript") (require "texindy.xdy") @@ -3982,7 +3998,7 @@ page_compositor "." \begin{LWRwriteconf} -\begin{filecontents*}{lwarp_mathjax.txt} +\begin{filecontents*}[overwrite]{lwarp_mathjax.txt} <!-- https://groups.google.com/forum/#!topic/ mathjax-users/jUtewUcE2bY --> <script type="text/x-mathjax-config"> @@ -4083,12 +4099,12 @@ src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.6/MathJax.js?config=TeX- \begin{LWR@createlwarpmk} -\begin{filecontents*}{lwarpmk.lua} +\begin{filecontents*}[overwrite]{lwarpmk.lua} #!/usr/bin/env texlua -- Copyright 2016-2019 Brian Dunn -printversion = "v0.77" +printversion = "v0.78" requiredconfversion = "2" -- also at *lwarpmk.conf function printhelp () @@ -5390,11 +5406,16 @@ end -- not --version \providecommand*{\LWR@FBcancel}{} \AtBeginDocument{% +\@ifundefined{NoAutoSpacing}% + {}% + {% + \LetLtxMacro\LWR@FBcancel\NoAutoSpacing% + }% + \@ifundefined{frenchbsetup}% {}% {% \frenchbsetup{FrenchFootnotes=false}% - \LetLtxMacro\LWR@FBcancel\NoAutoSpacing% \renewrobustcmd*{\FBcolonspace}{% \begingroup% \LWR@FBcancel% @@ -9104,7 +9125,7 @@ rowspan="#2" % } \AtBeginDocument{ -\@ifundefined{frenchbsetup}% +\@ifundefined{NoAutoSpacing}% {% no babel-french \newcommand*{\LWR@nullifyNoAutoSpacing}{} }% no babel-french @@ -9448,85 +9469,90 @@ autopage-\theLWR@currentautosec% } } +\newcommand*{\LWR@linkcatcodes}{% + \catcode`\#=12% + \catcode`\%=12% + \catcode`\&=12% + \catcode`\~=12% + \catcode`\_=12% + \LWR@FBcancel% +} + +\newcommand*{\LWR@linkmediacatcodes}{% + \catcode`\#=12% + \catcode`\%=12% + \catcode`\~=12% + \catcode`\_=12% + \LWR@FBcancel% +} + \NewDocumentCommand{\LWR@subhyperref}{m}{% -\LWR@traceinfo{LWR@subhyperref !#1!}% -\LWR@sanitize{#1}% -\LWR@htmltag{% - a href="\LWR@sanitized" % space - \LWR@addlinktitle % space - target="\_{}blank" % space -}% + \LWR@traceinfo{LWR@subhyperref !#1!}% + \LWR@sanitize{#1}% + \LWR@htmltag{% + a href="\LWR@sanitized" % space + \LWR@addlinktitle % space + target="\_{}blank" % space + }% } \newcommand{\LWR@subhyperreftext}[1]{% -#1% -\LWR@htmltag{/a}% -\LWR@ensuredoingapar% + #1% + \LWR@htmltag{/a}% + \LWR@ensuredoingapar% } \NewDocumentCommand{\LWR@subhyperrefclass}{m +m m}{% -\LWR@htmltag{% - a % space - href="\begingroup\@sanitize#1\endgroup" % space - class="#3" % space - \LWR@addlinktitle % space -}\LWR@orignewline% -#2\LWR@orignewline% -\LWR@htmltag{/a}% -\LWR@ensuredoingapar% + \LWR@htmltag{% + a % space + href="\begingroup\@sanitize#1\endgroup" % space + class="#3" % space + \LWR@addlinktitle % space + }\LWR@orignewline% + #2% + \LWR@htmltag{/a}% + \LWR@ensuredoingapar% } \DeclareDocumentCommand{\LWR@hrefb}{O{} m}{% -\LWR@ensuredoingapar% -\LWR@subhyperref{#2}% -\endgroup% restore catcodes -\LWR@subhyperreftext% + \LWR@ensuredoingapar% + \LWR@subhyperref{#2}% + \endgroup% restore catcodes + \LWR@subhyperreftext% } \newrobustcmd*{\href}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@hrefb% + \begingroup% + \LWR@linkcatcodes% + \LWR@hrefb% } \newcommand*{\LWR@nolinkurlb}[1]{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\LWR@templink% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \LWR@templink% + \endgroup% } \newrobustcmd*{\nolinkurl}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@nolinkurlb% + \begingroup% + \LWR@linkcatcodes% + \LWR@nolinkurlb% } \DeclareDocumentCommand{\LWR@urlb}{m}{% -\LWR@ensuredoingapar% -\def\LWR@templink{#1}% -\@onelevel@sanitize\LWR@templink% -\href{\LWR@templink}{\LWR@templink}% -\endgroup% + \LWR@ensuredoingapar% + \def\LWR@templink{#1}% + \@onelevel@sanitize\LWR@templink% + \href{\LWR@templink}{\LWR@templink}% + \endgroup% } \newrobustcmd*{\url}{% -\begingroup% -\catcode`\#=12% -\catcode`\%=12% -\catcode`\&=12% -\catcode`\~=12% -\catcode`\_=12% -\LWR@urlb% + \begingroup% + \LWR@linkcatcodes% + \LWR@urlb% } \newcommand*{\LWR@subinlineimage}[5]{% @@ -12191,7 +12217,8 @@ color:\LWR@origpound\LWR@tempcolor% \newrobustcmd*{\LWR@HTML@slshape}{\renewcommand*{\LWR@f@shape}{sl}} \LWR@formatted{slshape} -\renewrobustcmd*{\normalfont}{\rmfamily\mdseries\upshape\ulcshape} +\newrobustcmd*{\LWR@HTML@normalfont}{\rmfamily\mdseries\upshape\ulcshape} +\LWR@formatted{normalfont} \renewcommand{\sp}[1]{\text{<sup>#1</sup>}{}} |