From 378b2ba55f417b42b93d9edb06dd4d007872f8b9 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 8 Nov 2019 03:00:45 +0000 Subject: CTAN sync 201911080300 --- macros/latex/contrib/asmeconf/README.md | 4 +- .../latex/contrib/asmeconf/asmeconf-template.pdf | Bin 502614 -> 484899 bytes .../latex/contrib/asmeconf/asmeconf-template.tex | 40 +- macros/latex/contrib/asmeconf/asmeconf.cls | 67 +- macros/latex/contrib/asmejour/README.md | 4 +- .../latex/contrib/asmejour/asmejour-template.pdf | Bin 476968 -> 476955 bytes .../latex/contrib/asmejour/asmejour-template.tex | 9 +- macros/latex/contrib/asmejour/asmejour.cls | 17 +- macros/latex/contrib/footnotehyper/README.md | 41 +- .../latex/contrib/footnotehyper/footnotehyper.dtx | 126 +- .../latex/contrib/footnotehyper/footnotehyper.ins | 48 - .../latex/contrib/footnotehyper/footnotehyper.pdf | Bin 57912 -> 61195 bytes macros/latex/contrib/grffile/README.md | 18 + macros/latex/contrib/grffile/grffile.dtx | 1433 ++++++++++++++++++++ macros/latex/contrib/grffile/grffile.pdf | Bin 0 -> 353503 bytes macros/latex/contrib/l3kernel/CHANGELOG.md | 10 +- macros/latex/contrib/l3kernel/README.md | 2 +- macros/latex/contrib/l3kernel/expl3.dtx | 6 +- macros/latex/contrib/l3kernel/expl3.pdf | Bin 585147 -> 585033 bytes macros/latex/contrib/l3kernel/interface3.pdf | Bin 1534753 -> 1534997 bytes macros/latex/contrib/l3kernel/interface3.tex | 2 +- macros/latex/contrib/l3kernel/l3alloc.dtx | 2 +- macros/latex/contrib/l3kernel/l3basics.dtx | 2 +- macros/latex/contrib/l3kernel/l3bootstrap.dtx | 2 +- macros/latex/contrib/l3kernel/l3box.dtx | 2 +- macros/latex/contrib/l3kernel/l3candidates.dtx | 4 +- macros/latex/contrib/l3kernel/l3clist.dtx | 2 +- macros/latex/contrib/l3kernel/l3coffins.dtx | 2 +- macros/latex/contrib/l3kernel/l3color-base.dtx | 2 +- macros/latex/contrib/l3kernel/l3debug.dtx | 2 +- macros/latex/contrib/l3kernel/l3deprecation.dtx | 6 +- macros/latex/contrib/l3kernel/l3doc.dtx | 2 +- macros/latex/contrib/l3kernel/l3docstrip.dtx | 2 +- macros/latex/contrib/l3kernel/l3docstrip.pdf | Bin 263471 -> 263406 bytes macros/latex/contrib/l3kernel/l3expan.dtx | 2 +- macros/latex/contrib/l3kernel/l3file.dtx | 2 +- macros/latex/contrib/l3kernel/l3final.dtx | 2 +- macros/latex/contrib/l3kernel/l3flag.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-assign.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-aux.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-basics.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-convert.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-expo.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-extended.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-logic.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-parse.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-random.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-round.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-traps.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp-trig.dtx | 2 +- macros/latex/contrib/l3kernel/l3fp.dtx | 2 +- macros/latex/contrib/l3kernel/l3fparray.dtx | 2 +- macros/latex/contrib/l3kernel/l3int.dtx | 2 +- macros/latex/contrib/l3kernel/l3intarray.dtx | 2 +- .../latex/contrib/l3kernel/l3kernel-functions.dtx | 2 +- macros/latex/contrib/l3kernel/l3keys.dtx | 2 +- macros/latex/contrib/l3kernel/l3legacy.dtx | 2 +- macros/latex/contrib/l3kernel/l3luatex.dtx | 2 +- macros/latex/contrib/l3kernel/l3msg.dtx | 2 +- macros/latex/contrib/l3kernel/l3names.dtx | 2 +- macros/latex/contrib/l3kernel/l3prefixes.pdf | Bin 59064 -> 59064 bytes macros/latex/contrib/l3kernel/l3prg.dtx | 2 +- macros/latex/contrib/l3kernel/l3prop.dtx | 2 +- macros/latex/contrib/l3kernel/l3quark.dtx | 14 +- macros/latex/contrib/l3kernel/l3regex.dtx | 2 +- macros/latex/contrib/l3kernel/l3seq.dtx | 2 +- macros/latex/contrib/l3kernel/l3skip.dtx | 4 +- macros/latex/contrib/l3kernel/l3sort.dtx | 2 +- macros/latex/contrib/l3kernel/l3str-convert.dtx | 2 +- macros/latex/contrib/l3kernel/l3str.dtx | 2 +- macros/latex/contrib/l3kernel/l3styleguide.pdf | Bin 280271 -> 280166 bytes macros/latex/contrib/l3kernel/l3styleguide.tex | 2 +- macros/latex/contrib/l3kernel/l3syntax-changes.pdf | Bin 227998 -> 227888 bytes macros/latex/contrib/l3kernel/l3syntax-changes.tex | 2 +- macros/latex/contrib/l3kernel/l3sys.dtx | 7 +- macros/latex/contrib/l3kernel/l3term-glossary.pdf | Bin 186787 -> 186679 bytes macros/latex/contrib/l3kernel/l3term-glossary.tex | 2 +- macros/latex/contrib/l3kernel/l3tl-analysis.dtx | 2 +- macros/latex/contrib/l3kernel/l3tl.dtx | 2 +- macros/latex/contrib/l3kernel/l3token.dtx | 2 +- macros/latex/contrib/l3kernel/l3unicode.dtx | 2 +- macros/latex/contrib/l3kernel/source3.pdf | Bin 5693995 -> 5694617 bytes macros/latex/contrib/l3kernel/source3.tex | 2 +- macros/latex/contrib/lwarp/README.txt | 2 +- macros/latex/contrib/lwarp/lwarp.dtx | 627 +++++---- macros/latex/contrib/lwarp/lwarp.ins | 1 + macros/latex/contrib/lwarp/lwarp.pdf | Bin 2486257 -> 2493809 bytes macros/latex/contrib/lwarp/lwarpmk.lua | 2 +- macros/latex/contrib/oberdiek/README.txt | 2 +- macros/latex/contrib/oberdiek/accsupp.pdf | Bin 146703 -> 143244 bytes macros/latex/contrib/oberdiek/aliascnt.pdf | Bin 103506 -> 102037 bytes macros/latex/contrib/oberdiek/alphalph.pdf | Bin 198686 -> 193130 bytes macros/latex/contrib/oberdiek/askinclude.pdf | Bin 265850 -> 254703 bytes macros/latex/contrib/oberdiek/atbegshi.pdf | Bin 238401 -> 230848 bytes macros/latex/contrib/oberdiek/atenddvi.pdf | Bin 96112 -> 94817 bytes macros/latex/contrib/oberdiek/attachfile2.pdf | Bin 271773 -> 262049 bytes macros/latex/contrib/oberdiek/atveryend.pdf | Bin 191935 -> 185769 bytes macros/latex/contrib/oberdiek/auxhook.pdf | Bin 105339 -> 103704 bytes macros/latex/contrib/oberdiek/bigintcalc.pdf | Bin 352284 -> 335422 bytes macros/latex/contrib/oberdiek/bitset.pdf | Bin 350945 -> 335601 bytes macros/latex/contrib/oberdiek/bmpsize.pdf | Bin 334590 -> 321654 bytes macros/latex/contrib/oberdiek/bookmark.pdf | Bin 295034 -> 284584 bytes macros/latex/contrib/oberdiek/catchfile.pdf | Bin 144454 -> 140522 bytes macros/latex/contrib/oberdiek/centernot.pdf | Bin 167624 -> 166432 bytes macros/latex/contrib/oberdiek/chemarr.pdf | Bin 94602 -> 93028 bytes macros/latex/contrib/oberdiek/classlist.pdf | Bin 96619 -> 94603 bytes macros/latex/contrib/oberdiek/colonequals.pdf | Bin 102626 -> 101476 bytes macros/latex/contrib/oberdiek/dvipscol.pdf | Bin 89542 -> 88601 bytes macros/latex/contrib/oberdiek/embedfile.pdf | Bin 216223 -> 209765 bytes macros/latex/contrib/oberdiek/engord.pdf | Bin 132358 -> 129605 bytes macros/latex/contrib/oberdiek/enparen.pdf | Bin 120297 -> 118177 bytes macros/latex/contrib/oberdiek/eolgrab.pdf | Bin 134496 -> 131179 bytes macros/latex/contrib/oberdiek/epstopdf.pdf | Bin 181478 -> 176111 bytes macros/latex/contrib/oberdiek/etexcmds.pdf | Bin 131015 -> 127684 bytes macros/latex/contrib/oberdiek/fibnum.pdf | Bin 146925 -> 142633 bytes macros/latex/contrib/oberdiek/flags.pdf | Bin 102501 -> 100887 bytes macros/latex/contrib/oberdiek/gettitlestring.pdf | Bin 142847 -> 138311 bytes macros/latex/contrib/oberdiek/grfext.pdf | Bin 149013 -> 144711 bytes macros/latex/contrib/oberdiek/grffile.dtx | 1412 ------------------- macros/latex/contrib/oberdiek/grffile.pdf | Bin 159592 -> 0 bytes macros/latex/contrib/oberdiek/hologo.pdf | Bin 397486 -> 381267 bytes macros/latex/contrib/oberdiek/holtxdoc.pdf | Bin 123250 -> 120802 bytes macros/latex/contrib/oberdiek/hopatch.pdf | Bin 126669 -> 123258 bytes macros/latex/contrib/oberdiek/hycolor.pdf | Bin 226620 -> 218909 bytes macros/latex/contrib/oberdiek/hypbmsec.pdf | Bin 110435 -> 109430 bytes macros/latex/contrib/oberdiek/hypcap.pdf | Bin 109017 -> 107147 bytes macros/latex/contrib/oberdiek/hypdestopt.pdf | Bin 129527 -> 126952 bytes macros/latex/contrib/oberdiek/hypdoc.pdf | Bin 150628 -> 145946 bytes macros/latex/contrib/oberdiek/hypgotoe.pdf | Bin 108266 -> 105557 bytes macros/latex/contrib/oberdiek/hyphsubst.pdf | Bin 126506 -> 123351 bytes macros/latex/contrib/oberdiek/ifdraft.pdf | Bin 92297 -> 91504 bytes macros/latex/contrib/oberdiek/iflang.pdf | Bin 155949 -> 151769 bytes macros/latex/contrib/oberdiek/infwarerr.pdf | Bin 147080 -> 142120 bytes macros/latex/contrib/oberdiek/inputenx.pdf | Bin 795215 -> 756001 bytes macros/latex/contrib/oberdiek/intcalc.pdf | Bin 326643 -> 311872 bytes macros/latex/contrib/oberdiek/kvdefinekeys.pdf | Bin 117906 -> 114014 bytes macros/latex/contrib/oberdiek/kvoptions.pdf | Bin 309969 -> 300209 bytes macros/latex/contrib/oberdiek/kvsetkeys.pdf | Bin 219662 -> 212957 bytes macros/latex/contrib/oberdiek/letltxmacro.pdf | Bin 147322 -> 143033 bytes macros/latex/contrib/oberdiek/listingsutf8.pdf | Bin 120491 -> 118432 bytes macros/latex/contrib/oberdiek/ltxcmds.pdf | Bin 292290 -> 280743 bytes macros/latex/contrib/oberdiek/luacolor.pdf | Bin 140627 -> 137115 bytes macros/latex/contrib/oberdiek/luatex.pdf | Bin 205270 -> 199124 bytes macros/latex/contrib/oberdiek/magicnum.pdf | Bin 151116 -> 146803 bytes macros/latex/contrib/oberdiek/makerobust.pdf | Bin 89302 -> 88245 bytes macros/latex/contrib/oberdiek/mleftright.pdf | Bin 129818 -> 126500 bytes macros/latex/contrib/oberdiek/oberdiek.pdf | Bin 439336 -> 429853 bytes macros/latex/contrib/oberdiek/oberdiek.tex | 47 +- macros/latex/contrib/oberdiek/pagegrid.pdf | Bin 144113 -> 139893 bytes macros/latex/contrib/oberdiek/pagesel.pdf | Bin 122302 -> 119789 bytes macros/latex/contrib/oberdiek/pdfcol.pdf | Bin 145322 -> 141674 bytes macros/latex/contrib/oberdiek/pdfcolfoot.pdf | Bin 112535 -> 110408 bytes macros/latex/contrib/oberdiek/pdfcolmk.pdf | Bin 144057 -> 140361 bytes macros/latex/contrib/oberdiek/pdfcolparallel.pdf | Bin 149359 -> 145142 bytes macros/latex/contrib/oberdiek/pdfcolparcolumns.pdf | Bin 125421 -> 123365 bytes macros/latex/contrib/oberdiek/pdfcrypt.pdf | Bin 139967 -> 136233 bytes macros/latex/contrib/oberdiek/pdfescape.pdf | Bin 234876 -> 226577 bytes macros/latex/contrib/oberdiek/pdflscape.pdf | Bin 132649 -> 129405 bytes macros/latex/contrib/oberdiek/pdfrender.pdf | Bin 202520 -> 196539 bytes macros/latex/contrib/oberdiek/pdftexcmds.pdf | Bin 232471 -> 225949 bytes macros/latex/contrib/oberdiek/picture.pdf | Bin 114999 -> 112778 bytes macros/latex/contrib/oberdiek/pmboxdraw.pdf | Bin 516461 -> 490117 bytes macros/latex/contrib/oberdiek/protecteddef.pdf | Bin 138222 -> 134013 bytes macros/latex/contrib/oberdiek/refcount.pdf | Bin 177955 -> 173123 bytes macros/latex/contrib/oberdiek/rerunfilecheck.pdf | Bin 141152 -> 137032 bytes macros/latex/contrib/oberdiek/resizegather.pdf | Bin 134361 -> 130955 bytes macros/latex/contrib/oberdiek/rotchiffre.pdf | Bin 161338 -> 156943 bytes macros/latex/contrib/oberdiek/scrindex.pdf | Bin 110890 -> 108731 bytes macros/latex/contrib/oberdiek/selinput.pdf | Bin 153732 -> 151202 bytes macros/latex/contrib/oberdiek/setouterhbox.pdf | Bin 151424 -> 147193 bytes macros/latex/contrib/oberdiek/settobox.pdf | Bin 112454 -> 111275 bytes macros/latex/contrib/oberdiek/soulutf8.pdf | Bin 224591 -> 215530 bytes macros/latex/contrib/oberdiek/stackrel.pdf | Bin 100674 -> 99039 bytes macros/latex/contrib/oberdiek/stampinclude.pdf | Bin 101903 -> 100971 bytes macros/latex/contrib/oberdiek/stringenc.pdf | Bin 582291 -> 547591 bytes macros/latex/contrib/oberdiek/tabularht.pdf | Bin 148442 -> 144719 bytes macros/latex/contrib/oberdiek/tabularkv.pdf | Bin 88749 -> 87063 bytes macros/latex/contrib/oberdiek/telprint.pdf | Bin 130156 -> 127469 bytes macros/latex/contrib/oberdiek/thepdfnumber.pdf | Bin 167137 -> 161727 bytes macros/latex/contrib/oberdiek/transparent.pdf | Bin 100291 -> 98390 bytes macros/latex/contrib/oberdiek/twoopt.pdf | Bin 96863 -> 95417 bytes macros/latex/contrib/oberdiek/uniquecounter.pdf | Bin 134116 -> 129787 bytes macros/latex/contrib/oberdiek/zref.pdf | Bin 516424 -> 497086 bytes macros/latex/contrib/tuda-ci/README.md | 73 +- .../contrib/tuda-ci/doc/DEMO-TUDaAnnouncement.pdf | Bin 0 -> 576172 bytes .../latex/contrib/tuda-ci/doc/DEMO-TUDaBeamer.pdf | Bin 626420 -> 622081 bytes .../contrib/tuda-ci/doc/DEMO-TUDaExercise.pdf | Bin 0 -> 570005 bytes .../latex/contrib/tuda-ci/doc/DEMO-TUDaLetter.pdf | Bin 590855 -> 590850 bytes macros/latex/contrib/tuda-ci/doc/DEMO-TUDaPhD.pdf | Bin 635416 -> 816402 bytes .../latex/contrib/tuda-ci/doc/DEMO-TUDaPoster.pdf | Bin 556366 -> 561878 bytes macros/latex/contrib/tuda-ci/doc/DEMO-TUDaPub.pdf | Bin 657262 -> 852649 bytes .../latex/contrib/tuda-ci/doc/DEMO-TUDaReport.pdf | Bin 0 -> 551571 bytes .../contrib/tuda-ci/doc/DEMO-TUDaSciPoster.pdf | Bin 590714 -> 590049 bytes .../latex/contrib/tuda-ci/doc/DEMO-TUDaThesis.pdf | Bin 629337 -> 810788 bytes .../tuda-ci/example/DEMO-TUDaAnnouncement.tex | 122 ++ .../contrib/tuda-ci/example/DEMO-TUDaBeamer.tex | 30 +- .../tuda-ci/example/DEMO-TUDaBibliography.bib | 8 +- .../contrib/tuda-ci/example/DEMO-TUDaExercise.tex | 182 +++ .../tuda-ci/example/DEMO-TUDaFromaddress.lco | 8 +- .../contrib/tuda-ci/example/DEMO-TUDaLetter.tex | 8 +- .../latex/contrib/tuda-ci/example/DEMO-TUDaPhD.tex | 91 +- .../contrib/tuda-ci/example/DEMO-TUDaPoster.tex | 20 +- .../latex/contrib/tuda-ci/example/DEMO-TUDaPub.tex | 68 +- .../contrib/tuda-ci/example/DEMO-TUDaReport.tex | 64 + .../contrib/tuda-ci/example/DEMO-TUDaSciPoster.tex | 8 +- .../contrib/tuda-ci/example/DEMO-TUDaThesis.tex | 28 +- .../contrib/tuda-ci/tex/beamercolorthemeTUDa.sty | 15 +- .../contrib/tuda-ci/tex/beamerfontthemeTUDa.sty | 15 +- .../contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty | 136 +- .../contrib/tuda-ci/tex/beamerouterthemeTUDa.sty | 108 +- .../latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty | 14 +- macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo | 41 + macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty | 159 +++ macros/latex/contrib/tuda-ci/tex/tudabeamer.cls | 25 +- macros/latex/contrib/tuda-ci/tex/tudacolors.def | 12 +- macros/latex/contrib/tuda-ci/tex/tudacolors.sty | 13 +- macros/latex/contrib/tuda-ci/tex/tudaexercise.cls | 726 ++++++++++ macros/latex/contrib/tuda-ci/tex/tudafonts.sty | 34 +- macros/latex/contrib/tuda-ci/tex/tudaletter.cls | 16 +- .../contrib/tuda-ci/tex/tudalettersize10pt.clo | 30 + macros/latex/contrib/tuda-ci/tex/tudaposter.cls | 355 +++-- macros/latex/contrib/tuda-ci/tex/tudapub.cls | 546 +++++--- macros/latex/contrib/tuda-ci/tex/tudarules.sty | 12 +- macros/latex/contrib/tuda-ci/tex/tudasciposter.cls | 83 +- macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo | 30 + macros/latex/contrib/tuda-ci/tex/tudathesis.cfg | 20 +- 231 files changed, 4733 insertions(+), 2629 deletions(-) delete mode 100644 macros/latex/contrib/footnotehyper/footnotehyper.ins create mode 100644 macros/latex/contrib/grffile/README.md create mode 100644 macros/latex/contrib/grffile/grffile.dtx create mode 100644 macros/latex/contrib/grffile/grffile.pdf delete mode 100644 macros/latex/contrib/oberdiek/grffile.dtx delete mode 100644 macros/latex/contrib/oberdiek/grffile.pdf create mode 100644 macros/latex/contrib/tuda-ci/doc/DEMO-TUDaAnnouncement.pdf create mode 100644 macros/latex/contrib/tuda-ci/doc/DEMO-TUDaExercise.pdf create mode 100644 macros/latex/contrib/tuda-ci/doc/DEMO-TUDaReport.pdf create mode 100644 macros/latex/contrib/tuda-ci/example/DEMO-TUDaAnnouncement.tex create mode 100644 macros/latex/contrib/tuda-ci/example/DEMO-TUDaExercise.tex create mode 100644 macros/latex/contrib/tuda-ci/example/DEMO-TUDaReport.tex create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo create mode 100644 macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty create mode 100644 macros/latex/contrib/tuda-ci/tex/tudaexercise.cls (limited to 'macros/latex/contrib') diff --git a/macros/latex/contrib/asmeconf/README.md b/macros/latex/contrib/asmeconf/README.md index ada302df57..40eacb6c21 100644 --- a/macros/latex/contrib/asmeconf/README.md +++ b/macros/latex/contrib/asmeconf/README.md @@ -1,7 +1,7 @@ #asmeconf: A template for ASME conference papers# - Version 1.12 dated 2019/10/02. + Version 1.13 dated 2019/11/06. ####Overview#### This class provides a template to format ASME Conference papers according to @@ -67,6 +67,8 @@ ####Change log#### + v1.13: add babel options for language support; minor text edits; adjust nomenclature list penalties + v1.12: add support for line numbers for editing; add support for final column balancing; edit skips in nomenclature; adjust \\tolerance and \\emergencystretch (for line breaking); improve support for equation tags in captions; adopt standard \\maketitle and \\title commands; include \\versionfootnote for tracking revisions of draft. v1.11: minor adjustments to title, author, and affiliation layout diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.pdf b/macros/latex/contrib/asmeconf/asmeconf-template.pdf index 70a20a31a7..91f4960033 100644 Binary files a/macros/latex/contrib/asmeconf/asmeconf-template.pdf and b/macros/latex/contrib/asmeconf/asmeconf-template.pdf differ diff --git a/macros/latex/contrib/asmeconf/asmeconf-template.tex b/macros/latex/contrib/asmeconf/asmeconf-template.tex index f43b9524be..24a13ff189 100644 --- a/macros/latex/contrib/asmeconf/asmeconf-template.tex +++ b/macros/latex/contrib/asmeconf/asmeconf-template.tex @@ -6,7 +6,7 @@ %% The new guidelines have changed the request author block formatting. %% Nomenclature follows the abstract. Abstract is in italics. %% -%% This file is version 1.12 dated 2019/10/02 +%% This file is version 1.13 dated 2019/11/06. %% %% Author: John H. Lienhard V %% Department of Mechanical Engineering @@ -47,6 +47,11 @@ %% * An option to allow hyphenation of the typewriter font [hyphenate] %% * Hyphenation is normally suppressed for typewriter mode because it is often used for code. %% +%% * Options to set (for the babel package) a primary language [lang= ], and secondary or tertiary +%% * languages, [lang-second] and [lang-third]. English is the default when no language is set. +%% * If a secondary or tertiary language is set, the main language must also be set. +%% * The spanish module makes "." active, clashing with some code; \spanishdeactivate{.} stops this. +%% %% For details of newtxmath and mathalfa, refer to their documentation (available on CTAN: http://ctan.org). %% %% The use of commands defined or modified by the asmeconf class is illustrated below. In particular, @@ -136,7 +141,7 @@ %%% For tracking various versions of your draft. Change text to suit your own needs. Remove from final version. %%% \date{..} is the same command. -\versionfootnote{Documentation for \texttt{asmeconf.cls}. Version 1.12; \today.}% <=== Delete before final submission. +\versionfootnote{Documentation for \texttt{asmeconf.cls}. Version \versionno; \today.}% <=== Delete before final submission. %%% Change these to your keywords. Keywords are automatically printed at the end of the abstract. @@ -197,7 +202,7 @@ Put author names into the \verb|\SetAuthors{name, name,...}| command in the desi Author addresses are to be kept short. List the author institution, and the City, State (US authors), City, Province, Canada (Canadian authors), or City, Country (other international authors). -One author (or more) may be designated as the \verb|\CorrespondingAuthor{email}| by placing the command after \verb|\affil{#}|. Two or more authors may be joint first authors by putting \verb|\JointFirstAuthor| after \verb|\affil{#}|. +One author (or more) may be designated as the corresponding author by placing \verb|\CorrespondingAuthor{email}| after \verb|\affil{#}|. Two or more authors may be joint first authors by putting \verb|\JointFirstAuthor| after \verb|\affil{#}|. After setting up the headers, authors, and title, issue the \verb|\maketitle| command. @@ -230,13 +235,13 @@ For ASME conference papers, the labels Equation and Figure should be abbreviated %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Use title case for subsections and subsubsections \section{Section Headings and Captions} -ASME requires that section headings and captions be set in an uppercase, sans serif font. The class will do this automatically. You can place \verb|\cite{..}|, \verb|\ref{..}|, \verb|\label{..}|, and into headings and captions directly, as you would in the main text. Do not enclose them braces, e.g.\ \verb|{\cite{..}}|, which will cause errors. You can place \verb|\footnote{..}| into headings, but not into captions.\footnote{See \texttt{tex-stackexchange} for various approaches to footnotes in captions, if they seem necessary. For footnotes in tables, use the \texttt{tablefootnote} package.}\footnote{Sequential footnote.} +ASME requires that section headings and captions be set in an uppercase, sans serif font. The class will do this automatically. You can place \verb|\cite{..}|, \verb|\ref{..}|, \verb|\label{..}|, and mathematics into headings and captions directly, as you would in the main text. Do not enclose them braces, e.g.\ \verb|{\cite{..}}|, which will cause errors. You can place \verb|\footnote{..}| into headings, but not into captions.\footnote{See \texttt{tex-stackexchange} for various approaches to footnotes in captions, if they seem necessary. For footnotes in tables, use the \texttt{tablefootnote} package.}\footnote{Sequential footnote.} Text in section headings and captions will not be capitalized if enclosed in a \verb|\NoCaseChange{..}| command. Sections may either be numbered or left unnumbered. -Simple math can be used in either captions or section headings. For a section heading that includes more complicated math (and macros), you may use the optional argument of \verb|\section[..]{..}| to create a pdf bookmark without losing characters or producing warnings or errors. See the \texttt{asmeconf.tex} source file for examples of this. These bookmarks should usually be text expressions, although some math is supported. +Simple math can be used in either captions or section headings. For a section heading that includes more complicated math (and macros), you may use the optional argument of \verb|\section[..]{..}| to create a pdf bookmark without losing characters or producing warnings or errors. See the \texttt{asmeconf-template.tex} source file for examples of this. These bookmarks should usually be text expressions, although some math is supported. If you wish to override the default math format in captions, put \verb|\mathversion{normal}| in the caption. @@ -272,7 +277,7 @@ Run 12 & 24 & 68.3 \\ \begin{table}[t] \caption{Table with more complicated columns}\label{tab:2}% \centering{% -\begin{tabular}{!{\hspace*{0.5cm}} >{\raggedright\hangindent=1em} p{3cm} d{3} @{\hspace*{1cm}} d{3} !{\hspace*{0.5cm}}} +\begin{tabular}{!{\hspace*{0.5cm}} >{\raggedright\hangindent=1em} p{3cm} d{3.3} @{\hspace*{1cm}} d{3.3} !{\hspace*{0.5cm}}} \toprule Experiment & \multicolumn{1}{c@{\hspace*{1cm}}}{$u$ [m/s]} & \multicolumn{1}{c!{\hspace*{0.5cm}}}{$T$ [\textdegree C]} \\ \midrule @@ -331,11 +336,11 @@ Citations are automatically numbered \cite{ning2002}. They should be inserted at The {\upshape\texttt{asmeconf.bst}} \textsc{Bib}\negthinspace\TeX\ style follows the reference styles posted on ASME's conference web site in mid-2019. Examples for these and many other cases are given in the \texttt{asmeconf-sample.bib} file, which is part of this distribution. Nevertheless, a few comments are necessary. %% subsubsections are not numbered -\subsubsection*{DOI, URL, and eprint} Include DOI numbers when they are avaiable. URL's may alternatively be given. +\subsubsection*{DOI, URL, and eprint} Include DOI numbers when they are available. URL's may alternatively be given. Elementary support for \texttt{eprint} numbers is also included, generating a url at the end of the citation. The \texttt{archive} type may be specified using the macros \texttt{arxiv, googlebooks, hndl, jstore}, or \texttt{pubmed} (e.g., \texttt{archive=hndl}, \textit{without} braces). Both \texttt{eprint} and \texttt{archive} fields \textit{must} be given. Other root urls may be invoked using \verb|archive = {http://another.url.org/}|. -\subsubsection*{Online Sources} A bibliography field \verb|@online{..| is included for citation of online sources, such as web pages. See the examples of use in the \texttt{asmejour-sample.bib} file. +\subsubsection*{Online Sources} A bibliography field \verb|@online{..| is included for citation of online sources, such as web pages. See the examples of use in the \texttt{asmeconf-sample.bib} file. \subsubsection*{Date Accessed} The \verb|urldate={..}| field may be used to provide the date on which a given url was accessed. By default, the text printed will be \texttt{accessed `date',}. The word ``accessed'' may be changed using the \verb|urltype={..}| field. @@ -369,7 +374,7 @@ Math italics are used for roman and greek letters by default. If you want an up \end{equation} To get additional symbols in bold math, you can use the \verb|\bm{..}| macro from the \texttt{bm} package, which is loaded by the class. -The class file also provides upright sans-serif greek letters with \verb|\sfalpha| and similar expressions (e.g.\ $\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots \bm{\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots}$), in case they are needed (but note that the \verb|newtxmath| options \verb|frenchmath| and \verb|slantedGreek| also affect how Greek is presented). +The class file also provides upright sans-serif greek letters with \verb|\sfalpha| and similar expressions (e.g.\ $\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots \bm{\sfalpha, \sfbeta, \sfgamma, \sfdelta \ldots}$), in case they are needed (but note that the \verb|newtxmath| options \verb|frenchmath| and \verb|slantedGreek| also affect how greek letters are presented). \subsection{The \texttt{newtxmath} and \texttt{mathalpha} packages~\cite{sharpe1,sharpe2}} The \texttt{newtxmath} package~\cite{sharpe1}, loaded by default, includes a large number of options for mathematics. Most options can be called as options to \verb|\documentclass|. For example, the \texttt{upint} option of \texttt{newtxmath} selects upright integral signs (rather than slanted integral signs): \begin{quote} @@ -391,7 +396,7 @@ The class accepts a number of options in addition to those already described. \subsection{Final Column Balancing} The option \texttt{[balance]} invokes the the \texttt{flushend} package~\cite{tolusis}. This package will attempt to give equal height to the two columns on the last page. The performance of this package is sometimes inconsistent (with odd page layout or, very rarely, errors), so use this option with caution. -\subsection{Line Numbers} The option \texttt{[lineno]} invokes the the \texttt{lineno} package~\cite{bottcher}. This option will produce line numbers in the margins. You must run \LaTeX\ twice for proper placement of the numbers. Tables, captions, and footnotes will not be numbered. Line numbers can be helpful for review and editing, but should not be used in your final manuscript. See the documentation of the \texttt{lineno} package for further commands to control line numbering. +\subsection{Line Numbers} The option \texttt{[lineno]} invokes the the \texttt{lineno} package~\cite{bottcher}. This option will produce line numbers in the margins. You must run \LaTeX\ \textit{twice} for proper placement of the numbers. Tables, captions, and footnotes will not be numbered. Line numbers can be helpful for review and editing, but should not be used in your final manuscript. See the documentation of the \texttt{lineno} package for further commands to control line numbering. The \texttt{lineno} package is not compatible with the \texttt{flushend} package that makes final short columns the same height. Balancing is disabled when this option is called. @@ -400,7 +405,7 @@ The footers are generated with the \texttt{fancyhdr} package~\cite{oostrum}, so \subsection{Superiors Font} The \texttt{newtxtext} package includes a superiors font (both numbers and letters) for use in footnote markers and superscripts. To enable this font, use the option \texttt{[nodefaultsups]}. -\subsection{Old-style Author Grid} The option \texttt{[oldauthors]} invokes the old grid arrangement of author names. The authors and affiliations must be entered differently in this case. See Appendix \ref{appendix:b} for usage. +\subsection{Old-style Author Grid} The option \texttt{[oldauthors]} invokes ASME's old grid-style arrangement of author names. The authors and affiliations must be entered differently in this case. See Appendix \ref{appendix:b} for usage. \subsection{Hyphenation of Typewriter Font} The option \texttt{[hyphenate]} will allow hyphenation of the typewriter font. Hyphenation is normally suppressed for typewriter mode because this font is often used for code. @@ -497,6 +502,19 @@ the option [\texttt{oldauthors}]. When using this form, the author names and ad \hbox{}\hfil\verb|}{lienhard@mit.edu}}{Institution \\ City, State}| %% see after end document for usable code if you go this route. + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Language Support} + +ASME publishes in English, but the \texttt{babel} package is loaded for +users who may wish to include other languages. Options are supported to load a primary language, \texttt{lang=}, as well +as a secondary and tertiary language, \texttt{lang-second} and \texttt{lang-third}. The primary language must be specified explicitly if a secondary language is loaded. If no language option is given, the package defaults to English. + +The standard caption and section names will follow \texttt{babel}'s dictionary for primary languages other than English. Users may additionally change ``Keywords'', ``Nomenclature'', ``Corresponding author'', and ``Joint first authors'' by renewing the commands \verb|\keywordname|, \verb|\nomname|, \verb|\CAwords|, and \verb|\JAwords|. Changes to the page footer were described earlier. The pdf bookmark for ``Appendices'' may be changed by renewing \verb|\appendicesname|. + +No effort has been made to support customization of language-specific fonts, although this is possible by modifying the class file (examples are given in the \texttt{newtx} documentation). The bibliography style, \texttt{asmejour.bst}, is designed in English and aimed at \texttt{BibTeX}. Multilingual bibliographies can be supported using \texttt{BibLaTeX}. + \end{document} diff --git a/macros/latex/contrib/asmeconf/asmeconf.cls b/macros/latex/contrib/asmeconf/asmeconf.cls index 66554fa384..2ce3ccce4e 100644 --- a/macros/latex/contrib/asmeconf/asmeconf.cls +++ b/macros/latex/contrib/asmeconf/asmeconf.cls @@ -5,7 +5,9 @@ %% %% Please note that ASME's journals follow specifications different from ASME conference papers. %% -%% This file is version 1.12 dated 2019/10/02. +%% This file is version 1.13 dated 2019/11/06. + \def\versionno{1.13} + \def\versiondate{2019/11/06\space} %% %% Author: John H. Lienhard V %% Department of Mechanical Engineering @@ -31,7 +33,7 @@ %% This class is not designed for unicode-math or fontspec, given that the ASME conference style is %% specific with respect to the font selections. %% -%% Options for the class are configured on lines 79-153. +%% Options for the class are configured on lines 79-169. %% %% The class defines two environments: abstract and nomenclature. The latter has an optional argument to %% control the space between the entries and the definitions. @@ -67,7 +69,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{asmeconf}[2019/10/02 ASME Conference Paper Format] +\ProvidesClass{asmeconf}[\versiondate ASME Conference Paper Format] \LoadClass[twoside,twocolumn,10pt]{article} % Two-sided layout not used in ASME's specs, although that's how the papers are printed @@ -120,6 +122,21 @@ \setboolean{lineno}{#1} } +%%% set key [lang,lang-second,lang-third] to pass languages to babel. + +%% In case language options are dropped during editing, include this. Subsequent choice of lang= will override it. +\PassOptionsToPackage{english}{babel} + +\define@key{asmeconf}{lang}[english]{% + \PassOptionsToPackage{main=#1}{babel}% +} +\define@key{asmeconf}{lang-second}[english]{% + \PassOptionsToPackage{#1}{babel}% +} +\define@key{asmeconf}{lang-third}[english]{% + \PassOptionsToPackage{#1}{babel}% +} + \ProcessKeyvalOptions* %% option to have colored hyperlinks @@ -180,13 +197,14 @@ \RequirePackage{booktabs} \RequirePackage{array} -\RequirePackage{dcolumn} %%% alignment on decimal places -\newcolumntype{d}[1]{D{.}{.}{#1}} +\RequirePackage{dcolumn} %%% alignment on decimal places +\newcolumntype{d}[1]{D{.}{.}{#1}} %% conflicts with babel's spanish language option. %%%% FONT related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \RequirePackage{mathtools} % extends amsmath \RequirePackage[utf8]{inputenc} +\RequirePackage[]{babel} \RequirePackage[]{newtxtext} \RequirePackage[varqu,varl]{inconsolata} % sans typewriter font \RequirePackage[]{newtxmath} @@ -269,9 +287,10 @@ \RequirePackage[labelfont={sf,bf},hypcap=false]{caption} \RequirePackage[hypcap=false,list=true]{subcaption} +\DeclareCaptionLabelFormat{uppercase}{\MakeTextUppercase{#1} #2} \DeclareCaptionTextFormat{boldmath}{\mathversion{sansbold}#1} -\captionsetup[figure]{name=FIGURE,labelfont={sf,bf,small},textfont={sf,bf,small},textformat=boldmath, labelsep=colon} -\captionsetup[table]{name=TABLE,labelfont={sf,bf,small},textfont={sf,bf,small},textformat=boldmath, labelsep=colon,skip=0.5\baselineskip} +\captionsetup[figure]{labelformat=uppercase, labelfont={sf,bf,small},textfont={sf,bf,small},textformat=boldmath, labelsep=colon} +\captionsetup[table]{labelformat=uppercase, labelfont={sf,bf,small},textfont={sf,bf,small},textformat=boldmath, labelsep=colon,skip=0.5\baselineskip} %name=TABLE, %% This construction avoids a failure of hyperref in relation to uppercase caption %% Discussion: https://tex.stackexchange.com/questions/375695/maketextuppercase-inside-table-captions @@ -280,7 +299,13 @@ \renewcommand*{\caption}[2][\shortcaption]{\def\shortcaption{#2}\scaption[#1]{\MakeTextUppercase{#2}}}% } - +%%%%%% introduce some caption or section names %%%%%%%%%%% + \providecommand{\nomname}{Nomenclature} + \providecommand{\keywordname}{Keywords} + \providecommand{\appendicesname}{APPENDICES} + \providecommand{\JAwords}{Joint first authors} + \providecommand{\CAwords}{Corresponding author} + %%%%%%%%%%%%%%%%%% Section headings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% wish to accommodate hyperref @@ -303,9 +328,9 @@ %% Assumes that appendices are the last content in paper \RenewDocumentCommand{\appendix}{}{% \setcounter{section}{0} - \pdfbookmark[0]{Appendices}{appendices} + \pdfbookmark[0]{\appendicesname}{appendices} \renewcommand\thesection{\Alph{section}} - \titleformat{\section}{\mathversion{sansbold}\bfseries\sffamily\raggedright}{APPENDIX \thesection.}{0.5em}{\MakeTextUppercase} + \titleformat{\section}{\mathversion{sansbold}\bfseries\sffamily\raggedright}{\MakeTextUppercase{\appendixname}\ \thesection.}{0.5em}{\MakeTextUppercase} } %%%%%%%%%%%%% hyperref %%%%%%%%%%%%%%%%%%% @@ -429,12 +454,12 @@ \DeclareDocumentCommand{\keywords}{m}{% \IfNoValueTF{#1}{% \relax}{% - \long\def\@keywords{\par\smallskip\noindent{\bfseries\sffamily Keywords:} #1}% + \long\def\@keywords{\par\smallskip\noindent{\bfseries\sffamily \keywordname:} #1}% } } \DeclareDocumentEnvironment{abstract}{}{% - \section*{Abstract}\itshape% + \section*{\abstractname}\itshape% } {\upshape\@keywords%\medskip% } @@ -453,13 +478,14 @@ \DeclareDocumentCommand{\entry}{m g}{% \IfNoValueTF{#2}{% \itemsep3\p@ plus 1\p@ minus 1\p@% - \goodbreak\item[\itshape#1\hfill]\setlength\itemsep\savitemsep\nopagebreak% \smallskip + \goodbreak\item[\itshape#1\hfill]\setlength\itemsep\savitemsep\@itempenalty=1000%\nopagebreak% \smallskip }{% \item[#1\hfill]#2% + \@itempenalty=-\@lowpenalty% } } -\DeclareDocumentEnvironment{nomenclature}{O{2em} O{Nomenclature}}{% +\DeclareDocumentEnvironment{nomenclature}{O{2em} O{\nomname}}{% \setlength\columnsep{2em} \setlength{\nomenwidth}{#1} \section*{#2} @@ -664,11 +690,12 @@ %% Flag for corresponding author (expecting just one, but if two enter both email addresses and flag both authors) \newif\ifCA\CAfalse -% allow for NO email address to be given by omitting second argument +% allow for NO email address to be given by omitting the argument (g argument is deprecated, seems to have trouble with \IfNoValueTF) \DeclareDocumentCommand{\CorrespondingAuthor}{g}{% \ignorespaces$\bm{^\ast}$% \global\CAtrue% - \IfNoValueTF{#1}{% + % \IfNoValueTF{#1}{% + \ifblank{#1}{% \gdef\@CAsep{\relax} \gdef\@CAemail{\relax} }{% @@ -734,10 +761,10 @@ \centerline{\TypesetCoffin\AuthorBlock} \renewcommand*{\thefootnote}{\fnsymbol{footnote}} \ifJA - \footnotetext[2]{Joint first authors} + \footnotetext[2]{\JAwords} \fi \ifCA - \footnotetext[1]{Corresponding author:\space\@CAemail} + \footnotetext[1]{\CAwords\@CAsep\@CAemail} \fi \let\thefootnote\savethefootnote } @@ -763,10 +790,10 @@ \let\@makefnmark\savemakefnmark \renewcommand*{\thefootnote}{\fnsymbol{footnote}} \ifJA - \footnotetext[2]{Joint first authors} + \footnotetext[2]{\JAwords} \fi \ifCA - \footnotetext[1]{Corresponding author\@CAsep \@CAemail} + \footnotetext[1]{\CAwords\@CAsep\@CAemail} \fi \let\thefootnote\savethefootnote } diff --git a/macros/latex/contrib/asmejour/README.md b/macros/latex/contrib/asmejour/README.md index 6a64280884..6c30bc0159 100644 --- a/macros/latex/contrib/asmejour/README.md +++ b/macros/latex/contrib/asmejour/README.md @@ -1,7 +1,7 @@ #asmejour: A template for ASME journal papers# - Version 1.08 dated 2019/11/06. + Version 1.09 dated 2019/11/07. ####Overview#### This class provides a template to format preprints submitted to ASME journals in the style that @@ -57,6 +57,8 @@ ####Change log#### +v1.09: adjust nomenclature list; edit language support + v1.08: adjust penalties in nomenclature list; fix minor typos in template v1.07: add commands for \\toprule, \\midrule, and \\bottomrule in ASME style; add advice on landscape material; minor edits to \\entry and for language support. diff --git a/macros/latex/contrib/asmejour/asmejour-template.pdf b/macros/latex/contrib/asmejour/asmejour-template.pdf index 4fd675cc23..69c3bf0361 100644 Binary files a/macros/latex/contrib/asmejour/asmejour-template.pdf and b/macros/latex/contrib/asmejour/asmejour-template.pdf differ diff --git a/macros/latex/contrib/asmejour/asmejour-template.tex b/macros/latex/contrib/asmejour/asmejour-template.tex index 9d06d1adc1..c6ea3b60f0 100644 --- a/macros/latex/contrib/asmejour/asmejour-template.tex +++ b/macros/latex/contrib/asmejour/asmejour-template.tex @@ -3,7 +3,7 @@ %% This file is asmejour-template.tex, a template to format papers in the style of ASME journal papers %% as they are being published in 2019. %% -%% This file is version 1.08 dated 2019/11/06 +%% This file is version 1.09 dated 2019/11/07 %% %% Author: John H. Lienhard V %% Department of Mechanical Engineering @@ -43,7 +43,8 @@ %% * for slightly larger small capitals, largesc %% %% * Options to set (for the babel package) a primary language [lang= ], and secondary or tertiary -%% * languages, [lang-second] and [lang-third]. The primary language must be the last option given. +%% * languages, [lang-second] and [lang-third]. If no option is given, english is the main language. +%% * If a secondary or tertiary language is selected, a primary language must also be specified. %% %% * Option to allow hyphenation of the typewriter font [hyphenate] %% * Hyphenation is normally suppressed for typewriter mode because it is often used for code. @@ -151,7 +152,7 @@ This paper is an example and template for the {\upshape\texttt{asmejour}} class. \end{abstract} -\date{Version 1.06, \today} %% can modify this information as desired. +\date{Version \versionno, \today} %% can modify this information as desired. %% Putting \date{} will suppress any date. %% If this command is omitted, date defaults to \today %% This command must come somewhere before \maketitle @@ -549,7 +550,7 @@ ASME publishes in English, but the \texttt{babel} package is loaded for users who may wish to include other languages. Options are supported to load a primary language, \texttt{lang=}, as well as a secondary and tertiary language, \texttt{lang-second} and \texttt{lang-third}. The primary language must be given as the \textit{last} language option in \verb|\documentclass|. -If no language option is given, the package defaults to English. The standard caption and section names will follow \texttt{babel}'s dictionary for primary languages other than English. Users may additionally change ``Keywords'' and ``Nomenclature'' by renewing the commands \verb|\keywordname| and \verb|\nomname|. Changes to the page footer were described earlier. The pdf bookmark for ``Appendices'' by be changed by renewing \verb|\appendicesname|. +If no language option is given, the package defaults to English. The standard caption and section names will follow \texttt{babel}'s dictionary for primary languages other than English. Users may additionally change ``Keywords'', ``Nomenclature'', and ``Corresponding author'' by renewing the commands \verb|\keywordname|, \verb|\nomname|, and \verb|\CAwords|. Changes to the page footer were described earlier. The pdf bookmark for ``Appendices'' by be changed by renewing \verb|\appendicesname|. An example of use is shown in \selectlanguage{french}\appendixname\ \ref{app:fourier}.\selectlanguage{english} diff --git a/macros/latex/contrib/asmejour/asmejour.cls b/macros/latex/contrib/asmejour/asmejour.cls index c75f8ea76d..87bd31d377 100644 --- a/macros/latex/contrib/asmejour/asmejour.cls +++ b/macros/latex/contrib/asmejour/asmejour.cls @@ -6,7 +6,9 @@ %% The asmejour.cls file should be used with the files asmejour.bst (for citations) and asmejour-template.tex. %% %% -%% This file is version 1.08 dated 2019/11/06. +%% This file is version 1.09 dated 2019/11/07. + \def\versionno{1.09} + \def\versiondate{2019/11/07\space} %% %% Author: John H. Lienhard V %% Department of Mechanical Engineering @@ -52,7 +54,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{asmejour}[2019/11/06 asmejour paper format] +\ProvidesClass{asmejour}[\versiondate asmejour paper format] \LoadClass[twoside,9pt,twocolumn]{extarticle} @@ -112,7 +114,7 @@ \PassOptionsToPackage{english}{babel} \define@key{asmejour}{lang}[english]{% - \PassOptionsToPackage{#1}{babel}% + \PassOptionsToPackage{main=#1}{babel}% } \define@key{asmejour}{lang-second}[english]{% \PassOptionsToPackage{#1}{babel}% @@ -267,8 +269,7 @@ \providecommand{\nomname}{Nomenclature} \providecommand{\keywordname}{Keywords} \providecommand{\appendicesname}{Appendices} - - + \providecommand{\CAwords}{Corresponding Author} %%%%%%%%%%%%%%%%% EQUATION AND LINE NUMBERING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -544,9 +545,9 @@ \itemsep12\p@ plus 4\p@ minus 4\p@% \bigskip \goodbreak\item[\bfseries#1\hfill]\itemsep3\p@ plus 1\p@ minus 1\p@\@itempenalty=1000% }{% - \@itempenalty=-\@lowpenalty% \item[\hfill#1${} = {}$]#2% - \setlength\itemsep\savitemsep + \@itempenalty=-\@lowpenalty% + \setlength\itemsep\savitemsep% \settowidth\@widest{#1${} = {}$}% \ifdim\@widest>\widest \global\setlength\widest\@widest\fi% } @@ -727,7 +728,7 @@ ] \ifCA \addtocounter{footnote}{1} - \footnotetext{Corresponding author\@CAsep \@CAemail} + \footnotetext{\CAwords\@CAsep \@CAemail} \fi \ifDate\revfootnote{\@Date} \else\relax \fi } diff --git a/macros/latex/contrib/footnotehyper/README.md b/macros/latex/contrib/footnotehyper/README.md index a9ca08ed8c..8dc69945ef 100644 --- a/macros/latex/contrib/footnotehyper/README.md +++ b/macros/latex/contrib/footnotehyper/README.md @@ -1,10 +1,10 @@ - Source: footnotehyper.dtx (v1.1 2018/01/23) + Source: footnotehyper.dtx (v1.1a 2019/11/07) Author: Jean-Francois Burnol Info: hyperref aware footnote.sty License: LPPL 1.3c - Copyright (C) 2016-2018 Jean-Francois Burnol . + Copyright (C) 2016-2019 Jean-Francois Burnol . ABSTRACT ======== @@ -34,22 +34,31 @@ loaded with its `hyperfootnotes=false` option. The order of loading of INSTALLATION ============ -To extract the package (.sty) and driver (.tex) files from -footnotehyper.dtx: +The recommended way is to first extract the package (.sty) +and driver (.tex) files from footnotehyper.dtx via -- if footnotehyper.ins is present: etex footnotehyper.ins -- without footnotehyper.ins: etex footnotehyper.dtx -- or run latex or pdflatex directly on footnotehyper.dtx + tex footnotehyper.dtx -At least three ways to produce footnotehyper.pdf (method (1) is -preferred): +and then produce the documentation via -1. latex footnotehyper.tex (twice), then dvipdfmx -2. pdflatex footnotehyper.dtx (twice) -3. latex footnotehyper.dtx (twice), then dvips, then ps2pdf + latex footnotehyper.tex (twice) + dvipdfmx footnotehyper.dvi -Method (1) produces the smallest pdf files. -Options can be set in footnotehyper.tex: +It is also possible to produce simultaneously the package +and the documentation via one of these two routes: + + pdflatex footnotehyper.dtx (twice) + +or + + latex footnotehyper.dtx (twice) + dvips + ps2pdf + +The method using the extracted file footnotehyper.tex produces +the smallest pdf file and is the officially preferred one as +it allows to set options in footnotehyper.tex to customize the +footnotehyper.pdf file: - scrdoc class options (paper size, font size, ...) - with or without source code, @@ -84,6 +93,6 @@ The Author of this Work is: - Jean-Francois Burnol `` -This Work consists of the main source file footnotehyper.dtx and the -derived files footnotehyper.sty, footnotehyper.ins, footnotehyper.tex, +This Work consists of the main source file footnotehyper.dtx +and the derived files footnotehyper.sty, footnotehyper.tex, footnotehyper.pdf, footnotehyper.dvi. diff --git a/macros/latex/contrib/footnotehyper/footnotehyper.dtx b/macros/latex/contrib/footnotehyper/footnotehyper.dtx index 5c87bff620..204c40a2bc 100644 --- a/macros/latex/contrib/footnotehyper/footnotehyper.dtx +++ b/macros/latex/contrib/footnotehyper/footnotehyper.dtx @@ -1,22 +1,22 @@ % -*- coding: utf-8; time-stamp-format: "%02d-%02m-%:y at %02H:%02M:%02S %Z" -*- %<*none> -\def\dtxtimestamp {Time-stamp: <23-01-2018 at 20:31:53 CET>} +\def\dtxtimestamp {Time-stamp: <07-11-2019 at 17:09:56 CET>} % %<*!readme> %% %% Package: footnotehyper -%% Version: 1.1 (2018/01/23) +%% Version: 1.1a (2019/11/07) %% License: LPPL 1.3c -%% Copyright (C) 2016-2018 Jean-Francois Burnol . +%% Copyright (C) 2016-2019 Jean-Francois Burnol . %% % -%<*insfile|tex> +%<*tex> \def\pkgname {footnotehyper} -\def\pkgdate {2018/01/23} -\def\docdate {2018/01/23} -\def\pkgversion {v1.1} +\def\pkgdate {2019/11/07} +\def\docdate {2019/11/07} +\def\pkgversion {v1.1a} \def\pkgdescription {hyperref aware footnote.sty (JFB)} -% +% %<*none> % Definition of \pkgLicense \begingroup% cette méthode ne marcherait pas avec caractères en dehors de 32-127 @@ -25,9 +25,9 @@ \catcode32=13\catcode`\\=12^^Brelax^^A ^^Bfirstofone{^^Bendgroup^^Bdef^^BpkgLicense^^A {% Package: footnotehyper -% Version: 1.1 (2018/01/23) +% Version: 1.1a (2019/11/07) % License: LPPL 1.3c -% Copyright (C) 2016-2018 Jean-Francois Burnol . +% Copyright (C) 2016-2019 Jean-Francois Burnol . % % This Work may be distributed and/or modified under the conditions % of the LaTeX Project Public License, version 1.3c. This version of @@ -54,11 +54,11 @@ %<*readme> - Source: footnotehyper.dtx (v1.1 2018/01/23) + Source: footnotehyper.dtx (v1.1a 2019/11/07) Author: Jean-Francois Burnol Info: hyperref aware footnote.sty License: LPPL 1.3c - Copyright (C) 2016-2018 Jean-Francois Burnol . + Copyright (C) 2016-2019 Jean-Francois Burnol . ABSTRACT @@ -89,22 +89,31 @@ loaded with its `hyperfootnotes=false` option. The order of loading of INSTALLATION ============ -To extract the package (.sty) and driver (.tex) files from -footnotehyper.dtx: +The recommended way is to first extract the package (.sty) +and driver (.tex) files from footnotehyper.dtx via -- if footnotehyper.ins is present: etex footnotehyper.ins -- without footnotehyper.ins: etex footnotehyper.dtx -- or run latex or pdflatex directly on footnotehyper.dtx + tex footnotehyper.dtx -At least three ways to produce footnotehyper.pdf (method (1) is -preferred): +and then produce the documentation via -1. latex footnotehyper.tex (twice), then dvipdfmx -2. pdflatex footnotehyper.dtx (twice) -3. latex footnotehyper.dtx (twice), then dvips, then ps2pdf + latex footnotehyper.tex (twice) + dvipdfmx footnotehyper.dvi -Method (1) produces the smallest pdf files. -Options can be set in footnotehyper.tex: +It is also possible to produce simultaneously the package +and the documentation via one of these two routes: + + pdflatex footnotehyper.dtx (twice) + +or + + latex footnotehyper.dtx (twice) + dvips + ps2pdf + +The method using the extracted file footnotehyper.tex produces +the smallest pdf file and is the officially preferred one as +it allows to set options in footnotehyper.tex to customize the +footnotehyper.pdf file: - scrdoc class options (paper size, font size, ...) - with or without source code, @@ -140,8 +149,8 @@ The Author of this Work is: - Jean-Francois Burnol `` -This Work consists of the main source file footnotehyper.dtx and the -derived files footnotehyper.sty, footnotehyper.ins, footnotehyper.tex, +This Work consists of the main source file footnotehyper.dtx +and the derived files footnotehyper.sty, footnotehyper.tex, footnotehyper.pdf, footnotehyper.dvi. % %<*tex>------------------------------------------------------------------------- @@ -161,42 +170,6 @@ footnotehyper.pdf, footnotehyper.dvi. %%% mode: latex %%% End: %------------------------------------------------------------------------- -%<*insfile>--------------------------------------------------------------------- -%% -%% Run tex on this file to extract from footnotehyper.dtx: -%% footnotehyper.sty, footnotehyper.tex, and README.md -%% -%% Refer to README.md for installation instructions, if needed. -%% -\input docstrip.tex -\askforoverwritefalse -\def\pkgpreamble{\defaultpreamble^^J\MetaPrefix^^J% -\string\NeedsTeXFormat{LaTeX2e}^^J% -\string\ProvidesPackage{\pkgname}\perCent^^J% -\space[\pkgdate\space\pkgversion\space\pkgdescription]}% -\generate{\nopreamble\nopostamble -\file{README.md}{\from{\pkgname.dtx}{readme}}% -\usepostamble\defaultpostamble -\file{\pkgname.tex}{\from{\pkgname.dtx}{tex}}% -\usepreamble\pkgpreamble -\file{\pkgname.sty}{\from{\pkgname.dtx}{package}}}% -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} -\Msg{*} -\Msg{* \pkgname.sty} -\Msg{*} -\Msg{* To produce the documentation run latex twice on file \pkgname.tex} -\Msg{* and then run dvipdfmx on file \pkgname.dvi.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} -\endbatchfile -%--------------------------------------------------------------------- %<*none>------------------------------------------------------------------------ ^^Afi^^Aendgroup % @@ -248,7 +221,6 @@ footnotehyper.pdf, footnotehyper.dvi. \generate{\nopreamble\nopostamble \file{README.md}{\from{\pkgname.dtx}{readme}}% \usepostamble\defaultpostamble - \file{\pkgname.ins}{\from{\pkgname.dtx}{insfile}}% \file{\pkgname.tex}{\from{\pkgname.dtx}{tex}}% \usepreamble\pkgpreamble \file{\pkgname.sty}{\from{\pkgname.dtx}{package}}}% @@ -395,7 +367,9 @@ the latter was passed |hyperfootnotes=false| option. Version |v1.1| fixes a bug which arose when |savenotes| environment was used \emph{inside} a minipage: footnotes were disappearing!% % -\footnote{Thanks to François Pantigny for reporting the bug.} +\footnote{Thanks to François Pantigny for reporting the bug. + A later suggestion of the same is to let the package do nothing under + Beamer class, and this is what |v1.1a 2019/11/07| does.} % See related remarks at end of \autoref{sec:notes}. @@ -599,14 +573,15 @@ A few items worth of mention: which causes issues; \fnh takes provisions only to handle the |amsmath| measuring step. \item - \LaTeX2e has some features when using footnotes in |minipage|'s + \LaTeX2e has some ``features'' when using footnotes in |minipage|'s which are themselves in a |minipage| which may also have footnotes externally to the internal minipages... try it out with some |\fbox|es around the sub-|minipages|, to see. - \fnh behaves like original package |footnote| in such contexts. Only - reasonable usage seems to embed the entire contents of the external minipage - in a |savenotes| environment. But there will anyhow be collisions of the + \fnh behaves like original package |footnote| when the |savenotes| + environment is used \emph{inside} a minipage. Only reasonable usage in case + of nested minipages seems to use only a single top level (i.e. external) + |savenotes| environment. But there will anyhow be collisions of the alphabetic enumerations. These collisions are there with or without \fnh (or |footnote.sty|.) I did not make any attempt, nor intend to in future, to address in an automatized manner these problematic contexts. @@ -665,6 +640,14 @@ A few items worth of mention: \ProcessOptions\relax % \end{macrocode} % \end{macro} +% |v1.1a| lets the package abort under Beamer class and warn user. +% \begin{macrocode} +\@ifclassloaded{beamer} + {\PackageWarningNoLine{footnotehyper}{This package is + incompatible with the beamer class. Aborting input..}% + \endinput} + {}% +% \end{macrocode} % Versions up to |v0.9f| loaded |footnote.sty|, with lots of patching % afterwards. Starting with |v0.99|, \fnh does everything by itself with |FNH@| % prefix. Brief overview of some of the fixed issues: @@ -791,7 +774,7 @@ A few items worth of mention: % \end{macro} % \begin{macro}{\FNH@savenotes} % Same as original apart from using |hyperref|-aware \cs{FNH@hyper@fntext}, -% and taking into account |hyperref|'s custom \cs{@xfootnotetext}. This was +% and taking into account |hyperref|'s custom \cs{@xfootnotenext}. This was % missed by |v0.9f| hence |\footnotetext[N]{..}| did not work % inside |savenotes| environment. Fixed for |v0.99|. % @@ -996,8 +979,9 @@ A few items worth of mention: \def\FNH@bad@makefntext@alert{% \PackageWarningNoLine{footnotehyper}% {^^J The footnote environment will not be fully functional, sorry.^^J - You may try to email the author with the following information:}% - \typeout{\meaning\@makefntext}% + You may try to email the author this meaning of \string\@makefntext:^^J + \meaning\@makefntext^^J + together with the used preamble}% \let\FNH@prefntext\@empty\let\FNH@postfntext\@empty }% % \end{macrocode} diff --git a/macros/latex/contrib/footnotehyper/footnotehyper.ins b/macros/latex/contrib/footnotehyper/footnotehyper.ins deleted file mode 100644 index 68fa4ca6c2..0000000000 --- a/macros/latex/contrib/footnotehyper/footnotehyper.ins +++ /dev/null @@ -1,48 +0,0 @@ -%% -%% Package: footnotehyper -%% Version: 1.1 (2018/01/23) -%% License: LPPL 1.3c -%% Copyright (C) 2016-2018 Jean-Francois Burnol . -%% -\def\pkgname {footnotehyper} -\def\pkgdate {2018/01/23} -\def\docdate {2018/01/23} -\def\pkgversion {v1.1} -\def\pkgdescription {hyperref aware footnote.sty (JFB)} -%% -%% Run tex on this file to extract from footnotehyper.dtx: -%% footnotehyper.sty, footnotehyper.tex, and README.md -%% -%% Refer to README.md for installation instructions, if needed. -%% -\input docstrip.tex -\askforoverwritefalse -\def\pkgpreamble{\defaultpreamble^^J\MetaPrefix^^J% -\string\NeedsTeXFormat{LaTeX2e}^^J% -\string\ProvidesPackage{\pkgname}\perCent^^J% -\space[\pkgdate\space\pkgversion\space\pkgdescription]}% -\generate{\nopreamble\nopostamble -\file{README.md}{\from{\pkgname.dtx}{readme}}% -\usepostamble\defaultpostamble -\file{\pkgname.tex}{\from{\pkgname.dtx}{tex}}% -\usepreamble\pkgpreamble -\file{\pkgname.sty}{\from{\pkgname.dtx}{package}}}% -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} -\Msg{*} -\Msg{* \pkgname.sty} -\Msg{*} -\Msg{* To produce the documentation run latex twice on file \pkgname.tex} -\Msg{* and then run dvipdfmx on file \pkgname.dvi.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} -\endbatchfile -\endinput -%% -%% End of file `footnotehyper.ins'. diff --git a/macros/latex/contrib/footnotehyper/footnotehyper.pdf b/macros/latex/contrib/footnotehyper/footnotehyper.pdf index 129b44fc1e..13b98643f0 100644 Binary files a/macros/latex/contrib/footnotehyper/footnotehyper.pdf and b/macros/latex/contrib/footnotehyper/footnotehyper.pdf differ diff --git a/macros/latex/contrib/grffile/README.md b/macros/latex/contrib/grffile/README.md new file mode 100644 index 0000000000..07bb144047 --- /dev/null +++ b/macros/latex/contrib/grffile/README.md @@ -0,0 +1,18 @@ +# grffile legacy LaTeX package + +By default this package just loads the standard graphicx package +Which can include files with spaces or multiple dots. + +The original code, by Heiko Oberdiek, is still available as an option. +This extended the original LaTeX graphics code to support spaces and +multiple dots in filenames. + +If required use + +\usepackage{grffile}[=v1] + +to use the original version of this package (grffile-2017-06-30.sty). + +tex grffile.dtx + +will extract graphics.sty and grffile-2017-06-30.sty \ No newline at end of file diff --git a/macros/latex/contrib/grffile/grffile.dtx b/macros/latex/contrib/grffile/grffile.dtx new file mode 100644 index 0000000000..d2cb7da671 --- /dev/null +++ b/macros/latex/contrib/grffile/grffile.dtx @@ -0,0 +1,1433 @@ +% \iffalse meta-comment +% +% File: grffile.dtx +% Info: Extended file name support for graphics +% +% Copyright (C) 2006-2012 Heiko Oberdiek +% 2016-2019 Oberdiek Package Support Group +% https://github.com/ho-tex/grffile/issues +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either +% version 1.3c of this license or (at your option) any later +% version. This version of this license is in +% http://www.latex-project.org/lppl/lppl-1-3c.txt +% and 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. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is +% Oberdiek Package Support Group +% +% This work consists of the main source file grffile.dtx +% and the derived files +% grffile.sty, grffile.pdf, grffile.ins, grffile.drv, +% grffile-test1.tex. +% +% Distribution: +% CTAN:macros/latex/contrib/grffile/grffile.dtx +% CTAN:macros/latex/contrib/grffile/grffile.pdf +% +% Unpacking: +% (a) If grffile.ins is present: +% tex grffile.ins +% (b) Without grffile.ins: +% tex grffile.dtx +% (c) If you insist on using LaTeX +% latex \let\install=y\input{grffile.dtx} +% (quote the arguments according to the demands of your shell) +% +% Documentation: +% (a) If grffile.drv is present: +% latex grffile.drv +% (b) Without grffile.drv: +% latex grffile.dtx; ... +% The class ltxdoc loads the configuration file ltxdoc.cfg +% if available. Here you can specify further options, e.g. +% use A4 as paper format: +% \PassOptionsToClass{a4paper}{article} +% +% Programm calls to get the documentation (example): +% pdflatex grffile.dtx +% makeindex -s gind.ist grffile.idx +% pdflatex grffile.dtx +% makeindex -s gind.ist grffile.idx +% pdflatex grffile.dtx +% +% Installation: +% TDS:tex/latex/grffile/grffile.sty +% TDS:doc/latex/grffile/grffile.pdf +% TDS:doc/latex/grffile/test/grffile-test1.tex +% TDS:source/latex/grffile/grffile.dtx +% +%<*ignore> +\begingroup + \catcode123=1 % + \catcode125=2 % + \def\x{LaTeX2e}% +\expandafter\endgroup +\ifcase 0\ifx\install y1\fi\expandafter + \ifx\csname processbatchFile\endcsname\relax\else1\fi + \ifx\fmtname\x\else 1\fi\relax +\else\csname fi\endcsname +% +%<*install> +\input docstrip.tex + +\keepsilent +\askforoverwritefalse + +\let\MetaPrefix\relax +\preamble + +This is a generated file. + +Project: grffile + +Copyright (C) 2006-2012 Heiko Oberdiek + 2016-2019 Oberdiek Package Support Group + https://github.com/ho-tex/grffile/issues + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either +version 1.3c of this license or (at your option) any later +version. This version of this license is in + http://www.latex-project.org/lppl/lppl-1-3c.txt +and 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. + +This work has the LPPL maintenance status "maintained". + +This Current Maintainer of this work is Heiko Oberdiek. + +This work consists of the main source file grffile.dtx +and the derived files + grffile.sty, grffile.pdf, grffile.ins, grffile.drv, + grffile-test1.tex. + +\endpreamble +\let\MetaPrefix\DoubleperCent + +\generate{% +% \file{grffile.ins}{\from{grffile.dtx}{install}}% +% \file{grffile.drv}{\from{grffile.dtx}{driver}}% + \usedir{tex/latex/grffile}% + \file{grffile.sty}{\from{grffile.dtx}{new}}% + \file{grffile-2017-06-30.sty}{\from{grffile.dtx}{package}}% +% \usedir{doc/latex/grffile/test}% +% \file{grffile-test1.tex}{\from{grffile.dtx}{test1}}% + \nopreamble + \nopostamble +% \usedir{source/latex/grffile/catalogue}% +% \file{grffile.xml}{\from{grffile.dtx}{catalogue}}% +} + +\catcode32=13\relax% active space +\let =\space% +\Msg{************************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* file into a directory searched by TeX:} +\Msg{*} +\Msg{* grffile.sty} +\Msg{*} +\Msg{* To produce the documentation run the file `grffile.drv'} +\Msg{* through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing!} +\Msg{*} +\Msg{************************************************************************} + +\endbatchfile +% +%<*ignore> +\fi +% +%<*driver> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{grffile.drv}% +\documentclass{ltxdoc} +\usepackage{holtxdoc}[2011/11/22] +\begin{document} + \DocInput{grffile.dtx}% +\end{document} +% +% \fi +% +% +% \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 +% Lower-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 +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \GetFileInfo{grffile.drv} +% +% \title{The \xpackage{grffile} package\thanks{The documentation here +% describes version 1.x, accessed via +% \texttt{\string\usepackage\{grffile\}[=v1]}, +% the current version 2.0 does nothing as the +% current graphics package handles multiple dots, spaces and UTF-8 characters +% in filenames}} +% \date{\today} +% \author{Heiko Oberdiek\thanks +% {Please report any issues at https://github.com/ho-tex/grffile/issues}} +% +% \maketitle +% +% \begin{abstract} +% The package extends the file name processing of package \xpackage{graphics} +% to support a larger range of file names. For example, the file name +% may contain several dots. Or in case of \pdfTeX\ in PDF mode the file name may +% contain spaces. +% \end{abstract} +% +% \tableofcontents +% +% \section{Usage} +% +% \subsection{Option \xoption{multidot}} +% +% The file name parsing of package \xpackage{graphics} is changed, in order +% to detect known extensions. This allows both the use of dots inside the +% base file name and extensions with several dots. +% +% Assume there are two files in the currect directory: \texttt{Hello.World.eps} +% and \texttt{Hello.World.pdf}. \verb|\includegraphics{Hello.World}| will find +% \verb|Hello.World.pdf| with driver \xoption{pdftex} or +% \verb|Hello.World.eps| with driver \xoption{dvips}. +% +% \paragraph{Limitations:} Problem could occur on systems, which don't +% use the dot as extension delimiter. These systems needs an own +% \verb|texsys.cfg| containing definitions for \verb|\filename@parse|. +% The author could not test that, due to a missing example. +% +% \subsection{Option \xoption{babel}} +% +% This option allows the use of shorthand characters of package +% \xpackage{babel} inside the graphics file name. Additionally +% the tilde `\textasciitilde' is supported. The option +% is turned on as default. (In version v1.1 or below of this package, +% the features of this option were part of option \xoption{extendedchars}.) +% +% Example: +% \begin{quote} +%\begin{verbatim} +%\usepackage[frenchb]{babel} +%\usepackage{grffile} +%Image: \includegraphics{C:/path/image} +%\end{verbatim} +% \end{quote} +% +% \subsection{Option \xoption{extendedchars}} +% +% If the input encoding is the same encoding as the encoding that +% is used for file names and the driver allows non-ascii characters. +% Without option \xoption{extendedchars} the 8-bit characters +% are expanded, if they are active characters. For example, +% see the \LaTeX\ package \xpackage{inputenc}. However a +% file name is not input for \LaTeX. Therefore this option +% \xoption{extendedchars} removes the active status and +% the 8-bit characters are not expandable any more. +% +% Example: +% \begin{quote} +% |\usepackage[latin1]{inputenc}|\\ +% |\usepackage[extendedchars]{grffile}|\\ +% |\includegraphics{|\texttt{B\"ackerstra\ss e}|}| +% \end{quote} +% +% If the \verb|draft| option of the graphics package is enabled, the +% file name is printed with the current font encoding for \verb|\ttfamily|. +% Thus it is possible, that such characters are omitted or the wrong +% characters are displayed, if the font encoding is not the same as +% the file name encoding. +% +% \subsection{Option \xoption{encoding}} +% +% Consider the following scenario. Your file system is using +% UTF-8 as encoding for file names. But you use \xoption{latin1} +% as input encoding for your \TeX\ files, because some packages +% are not ready for multi-byte encodings (\xpackage{listings}, \dots). +% +% Then this option \xoption{encoding} loads support for converting +% encodings by loading package \xpackage{stringenc}. +% The option is not defined after the preamble, because +% \LaTeX\ limits package loading to the preamble. +% +% File names are converted, if package \xpackage{stringenc} is loaded +% and the encodings are known, see options \xoption{inputencoding} and +% \xoption{filenameencoding}. +% +% \subsubsection{Option \xoption{inputencoding}} +% +% Option \xoption{inputencoding} specifies the encoding +% of the file name in your \TeX\ input file. +% +% Package \xpackage{inputenx} and package \xpackage{inputenc} +% since version 2006/02/22 v1.1a remember the name of +% the input encoding that is looked up by this package. +% Therefore option \xoption{inputencoding} is usually +% not mandatory. +% +% \subsubsection{Option \xoption{filenameencoding}} +% +% This is the encoding of the filename of your file +% system. This option is mandatory, file names +% are not converted without this option. The option +% is disabled, if the value is empty. +% +% \subsubsection{Example} +% +% Back to the scenario where the file system uses UTF-8 and +% the \LaTeX\ input files are encodind in latin1. +% \begin{quote} +%\begin{verbatim} +%\usepackage[latin1]{inputenc}[2006/02/22] +% % \usepackage[latin1]{inputenx} +%\usepackage{graphicx} +%\usepackage[encoding,filenameencoding=utf8]{grffile} +%\end{verbatim} +% \end{quote} +% +% For older versions of package \xoption{inputenc} option +% \xoption{inputencoding} provides the necessary informations. +% \begin{quote} +%\begin{verbatim} +%\usepackage[latin1]{inputenc} +%\usepackage{graphicx} +%\usepackage{grffile} +%\grffilesetup{ +% encoding, +% inputencoding=latin1, +% filenameencoding=utf8, +%} +%\end{verbatim} +% \end{quote} +% +% \subsection{Option \xoption{space}} +% +% This option allows graphics file names that contain spaces +% if possible. +% +% In general it is not possible to use space inside file names, +% because \TeX\ considers the space character as termination in its +% syntax for commands that expect a file name. +% +% Regarding graphics inclusion with the package \xpackage{graphics} +% file names are used in two or three contexts: +% \begin{enumerate} +% \item The basic \cs{special} statement or primitive command for +% graphics inclusion. The \cs{special} statements for +% drivers \xoption{dvips} or \xoption{dvipdfm} do not allow +% spaces. However \pdfTeX's primitive \cs{pdfximage} +% uses curly braces to delimit the file name and allows spaces. +% In case of \hologo{XeTeX} file names can be enclosed in quotes +% to support spaces (at the cost that quotes no longer work). +% \item \cs{includegraphics} checks the existence of the file. +% Also it looks for the right extension if the extension is +% not given. +% +% If \pdfTeX\ 1.30 is given, the file existence test +% can be rewritten using a new primitive that allows spaces. +% This works in both modes DVI and PDF. +% +% In case of \hologo{XeTeX} the file existence test is rewritten +% to automatically add quotes. +% \item Sometimes files are read as \TeX\ input files. For example, +% \verb|.bb| files or MPS files. +% \end{enumerate} +% If \pdfTeX\ 1.30 or greater is used in PDF mode then the +% graphics file names may contain spaces except for MPS files. +% Therefore option \xoption{space} is only enabled by default, +% if the supported \pdfTeX\ in PDF mode is detected or \hologo{XeTeX} +% is running. +% You can enable the option manually, if you know, your DVI driver +% supports spaces in its \cs{special} syntax and if there is no +% need to read the image file as \TeX\ input file (third context). +% +% \subsection{General use} +% +% The options can be given at many places: +% +% \begin{enumerate} +% \item As package options:\\ +% \verb|\usepackage[]{grffile}| +% \item Setup command of package \xpackage{grffile}:\\ +% \verb|\grffilesetup{}| +% \item The options are also available as options +% for package \xpackage{graphicx}:\\ +% \verb|\setkeys{Gin}{}| +% \item If package \xpackage{graphicx} is loaded the options can also be +% applied for a single image:\\ +% \verb|\includegraphics[]{...}| +% \end{enumerate} +% +% \subsection{Default settings} +% +% \begin{quote} +% \begin{tabular}{@{}lll@{}} +% \xoption{multidot} & |true|\\ +% \xoption{babel} & |true|\\ +% \xoption{extendedchars} & |false|\\ +% \xoption{space} & |true| & if \pdfTeX\ 1.30 or greater is used in PDF mode\\ +% & |false| & otherwise +% \end{tabular} +% \end{quote} +% +% \StopEventually{ +% } +% +% \section{Implementation} +% +% \subsection{New Package status.} +% Changes to the core \verb|graphics| code have made the main features of this package +% (supporting multiple dots and spaces in filenames) unneeded as they +% are supported in the core code. The changes in the core also mean +% some patches in this package no longer work. +% +% So by default this package does nothing but (especially if you have +% rolled back other aspects of the latex code) you may want the +% original version, which is available as +% \begin{verbatim} +% \usepackage{grffile}[=2017/06/30] +% \end{verbatim} +% \begin{macrocode} +%<*new> +\DeclareRelease{v1}{2017-06-30}{grffile-2017-06-30.sty} +\DeclareCurrentRelease{}{2019-11-03} +\ProvidesPackage{grffile}% + [2019/11/03 v2.0 Extended file name support for graphics (legacy)]% +\PackageInfo{grffile}{This package is an empty stub for compatibility} +\RequirePackage{graphicx} +% +% \end{macrocode} +% \subsection{Identification} +% +% \begin{macrocode} +%<*package> +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{grffile}% + [2017/06/30 v1.18 Extended file name support for graphics (HO)]% +% \end{macrocode} +% +% \subsection{Catcode stuff} +% +% \begin{macrocode} +\edef\grffile@RestoreCatcodes{% + \catcode`\noexpand\=\the\catcode`\=\relax + \catcode`\noexpand\:\the\catcode`\:\relax + \catcode`\noexpand\.\the\catcode`\.\relax + \catcode`\noexpand\'\the\catcode`\'\relax + \catcode`\noexpand\<\the\catcode`\<\relax + \catcode`\noexpand\>\the\catcode`\>\relax + \catcode`\noexpand\*\the\catcode`\*\relax + \catcode`\noexpand\^\the\catcode`\^\relax + \catcode`\noexpand\~\the\catcode`\~\relax +} +\@makeother\= +\@makeother\: +\@makeother\. +\@makeother\' +\@makeother\< +\@makeother\> +\@makeother\* +\catcode`\^=7 % +\catcode`\~=\active +% \end{macrocode} +% +% \subsection{Options} +% +% \begin{macrocode} +\RequirePackage{ifpdf}[2010/01/28] +\RequirePackage{ifxetex}[2010/09/12] +\RequirePackage{kvoptions}[2006/08/17] +\SetupKeyvalOptions{% + family=Gin,% + prefix=grffile@% +} +\DeclareDefaultOption{\@unknownoptionerror} +\DeclareBoolOption[true]{multidot} +\DeclareBoolOption[true]{babel} +\DeclareBoolOption[false]{extendedchars} +\DeclareBoolOption{space} +\DeclareVoidOption{encoding}{% + \RequirePackage{stringenc}\relax +} +\DeclareStringOption{inputencoding} +\DeclareStringOption{filenameencoding} +\DeclareDefaultOption{% + \PassOptionsToPackage\CurrentOption{graphics}% +} +% \end{macrocode} +% Default setting for option \xoption{space}. +% \begin{macrocode} +\RequirePackage{pdftexcmds}[2007/11/11] +\ifxetex + \grffile@spacetrue +\else + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname pdf@filesize\endcsname\relax + \grffile@spacefalse + \let\grffile@space@disabled\@empty + \def\grffile@spacetrue{% + \PackageWarning{grffile}{% + Option `space' is not available,\MessageBreak + because it needs pdfTeX >= 1.30 or XeTeX% + }% + }% + \else + \ifpdf + \grffile@spacetrue + \else + \grffile@spacefalse + \fi + \fi +\fi +% \end{macrocode} +% \begin{macrocode} +\ProcessKeyvalOptions* +\AtBeginDocument{% + \DisableKeyvalOption[package=grffile]{Gin}{encoding}% +} +% \end{macrocode} +% \begin{macrocode} +\RequirePackage{graphics} +% \end{macrocode} +% +% \begin{macro}{\grffilesetup} +% \begin{macrocode} +\newcommand*{\grffilesetup}{% + \setkeys{Gin}% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\grffile@org@Ginclude@graphics} +% \begin{macrocode} +\let\grffile@org@Ginclude@graphics\Ginclude@graphics +% \end{macrocode} +% \end{macro} +% \begin{macro}{\Ginclude@graphics} +% \begin{macrocode} +\renewcommand*{\Ginclude@graphics}{% + \ifx\grffile@filenameencoding\@empty + \else + \ifx\grffile@inputencoding\@empty + \expandafter\ifx\csname inputencodingname\endcsname\relax + \expandafter\ifx\csname + CurrentInputEncodingOption\endcsname\relax + \else + \let\grffile@inputencoding\CurrentInputEncodingOption + \fi + \else + \let\grffile@inputencoding\inputencodingname + \fi + \fi + \ifx\grffile@inputencoding\@empty + \else + \grffile@extendedcharstrue + \fi + \fi + \ifnum0\ifgrffile@babel 1\fi\ifgrffile@extendedchars 1\fi>\z@ + \begingroup +% \end{macrocode} +% Support of babel's shorthand characters. +% \begin{macrocode} + \ifgrffile@babel + \csname @safe@activestrue\endcsname +% \end{macrocode} +% Support of active tilde. +% \begin{macrocode} + \edef~{\string~}% +% \end{macrocode} +% Support of characters controlled by package \xpackage{inputenc}. +% \begin{macrocode} + \fi + \ifgrffile@extendedchars + \grffile@inputenc@loop\^^A\^^H% + \grffile@inputenc@loop\^^K\^^K% + \grffile@inputenc@loop\^^N\^^_% + \grffile@inputenc@loop\^^?\^^ff% + \fi + \expandafter\grffile@extchar@Ginclude@graphics + \else + \expandafter\grffile@Ginclude@graphics + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@extchar@Ginclude@graphics} +% \begin{macrocode} +\def\grffile@extchar@Ginclude@graphics#1{% + \toks@{#1}% + \edef\grffile@filename{\the\toks@}% + \ifx\grffile@inputencoding\@empty + \else + \ifx\grfile@filenameencoding\@empty + \else + \ifx\grffile@inputencoding\grffile@filenameencoding + \else + \expandafter\ifx\csname StringEncodingConvert\endcsname\relax + \PackageError{grffile}{% + Package `stringenc' is not loaded,\MessageBreak + omitting file name conversion% + }\@ehc + \else + \StringEncodingConvert\grffile@temp\grffile@filename + \grffile@inputencoding\grffile@filenameencoding + \StringEncodingSuccessFailure{% + \let\grffile@filename\grffile@temp + }{% + \PackageError{grffile}{% + Filename conversion failed% + }\@ehc + }% + \fi + \fi + \fi + \fi +% \toks@\expandafter{\grffile@filename}% + \edef\x{\endgroup +% \noexpand\grffile@Ginclude@graphics{\the\toks@}% + \noexpand\grffile@Ginclude@graphics{\grffile@filename}% + }% + \x +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@inputenc@loop} +% \begin{macrocode} +\def\grffile@inputenc@loop#1#2{% + \count@=`#1\relax + \loop + \begingroup + \uccode`\~=\count@ + \uppercase{% + \endgroup + \edef~{\string~}% + }% + \ifnum\count@<`#2\relax + \advance\count@\@ne + \repeat +} +% \end{macrocode} +% \end{macro} +% Support for option \xoption{space} +% \begin{macro}{\grffile@space@getbase} +% \begin{macrocode} +\def\grffile@space@getbase#1{% + \edef\grffile@tempa{% + \def\noexpand\@tempa####1#1\noexpand\@nil{% + \def\noexpand\Gin@base{####1}% + }% + }% + \grffile@IfFileExists{\filename@area\filename@base#1}{% + \grffile@tempa + \expandafter\@tempa\grffile@file@found\@nil + \edef\Gin@ext{#1}% + }{% + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdf@filesize\endcsname\relax + \ifxetex +% \end{macrocode} +% \begin{macro}{\grffile@XeTeX@IfFileExists} +% \begin{macrocode} + \long\def\grffile@XeTeX@IfFileExists#1{% + \openin\@inputcheck"#1" % + \ifeof\@inputcheck + \closein\@inputcheck + \expandafter\@secondoftwo + \else + \closein\@inputcheck + \expandafter\@firstoftwo + \fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@IfFileExists} +% \begin{macrocode} + \long\def\grffile@IfFileExists#1{% + \grffile@XeTeX@IfFileExists{#1}{% + \edef\grffile@file@found{#1}% + \@firstoftwo + }{% + \let\reserved@a\@secondoftwo + \ifx\input@path\@undefined + \else + \expandafter\@tfor\expandafter\reserved@b\expandafter + :\expandafter=\input@path\do{% + \grffile@XeTeX@IfFileExists{\reserved@b#1}{% + \edef\grffile@file@found{\reserved@b#1}% + \let\reserved@a\@firstoftwo + \iftrue\@break@tfor\fi + }{}% + }% + \fi + \reserved@a + }% + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@org@Gread@QTm} +% Patch \cs{Gread@QTm} of \xfile{xetex.def}. +% \begin{macrocode} + \def\grffile@org@Gread@QTm#1{% + \IfFileExists{\Gin@base.bb}{% + \Gread@eps{\Gin@base.bb}% + }{% + \G@measure@QTm{\Gin@base}{\Gin@ext}% + }% + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \ifx\Gread@QTm\grffile@org@Gread@QTm +% \end{macrocode} +% \begin{macro}{\Gread@QTm} +% \begin{macrocode} + \def\Gread@QTm#1{% + \grffile@IfFileExists{\Gin@base.bb}{% + \Gread@eps{\Gin@base.bb}% + }{% + \G@measure@QTm{\Gin@base}{\Gin@ext}% + }% + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \PackageInfo{grffile}{\string\Gread@QTm\space patched}% + \else + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname Gread@QTm\endcsname\relax + \@ifpackagelater{graphics}{2017/06/01} + {} + {% + \PackageWarning{grffile}{% + \string\Gread@QTm\space of xetex.def not found% + }% + }% + \else +% \end{macrocode} +% \begin{macro}{\grffile@org@Gread@QTm} +% \begin{macrocode} + \let\grffile@org@Gread@QTm\Gread@QTm +% \end{macrocode} +% \end{macro} +% \begin{macro}{\Gread@QTm} +% \begin{macrocode} + \def\Gread@QTm#1{% + \let\grffile@saved@IfFileExists\IfFileExists + \let\IfFileExists\grffile@IfFileExists + \grffile@org@GreadQTm{#1}% + \let\IfFileExists\grffile@saved@IfFileExists + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \fi + \fi +% \end{macrocode} +% \begin{macro}{\grffile@org@Gread@eps} +% \begin{macrocode} + \let\grffile@org@Gread@eps\Gread@eps +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \def\grffile@temp#1\immediate\openin#2 #3\grffile@nil#4\grffile@NIL{% + \begingroup + \toks@{#2}% + \edef\grffile@temp{\the\toks@}% + \def\grffile@test{\@inputcheck####1}% + \ifx\grffile@temp\grffile@test + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \toks@{% + #1% + \immediate\openin\@inputcheck"##1"\relax + #3% + }% + \expandafter\endgroup + \expandafter\def\expandafter\Gread@eps + \expandafter##\expandafter1\expandafter{% + \the\toks@ + }% + \PackageInfo{grffile}{% + \string\Gread@eps\space patched% + }% + }{% + \@ifpackagelater{graphics}{2017/06/01} + {} + {% + \PackageWarning{grffile}{% + Unsupported \string\Gread@eps\space not patched% + }% + }% + \endgroup + }% + }% + \expandafter\grffile@temp\Gread@eps{#1}\grffile@nil + \immediate\openin{} \grffile@nil\grffile@NIL +% \end{macrocode} +% \begin{macrocode} + \else + \begingroup + \let\on@line\@empty + \PackageInfo{grffile}{% + \string\grffile@IfFileExists\space without space support,% + \MessageBreak + because pdfTeX's \string\pdffilesize\space is not available% + \MessageBreak + or XeTeX is not running% + }% + \endgroup +% \end{macrocode} +% \begin{macro}{\grffile@IfFileExists} +% \begin{macrocode} + \long\def\grffile@IfFileExists#1{% + \IfFileExists{#1}{% + \let\grffile@IFE@next\@firstoftwo + }{% + \let\grffile@file@found\@filef@und + \let\grffile@IFE@next\@secondoftwo + }% + \grffile@IFE@next + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \fi +\else +% \end{macrocode} +% \begin{macro}{\grffile@IfFileExists} +% \begin{macrocode} + \long\def\grffile@IfFileExists#1{% + \expandafter\expandafter\expandafter + \ifx\expandafter\expandafter\expandafter\\\pdf@filesize{#1}\\% + \let\reserved@a\@secondoftwo + \ifx\input@path\@undefined + \else + \expandafter\@tfor\expandafter\reserved@b\expandafter + :\expandafter=\input@path\do{% + \expandafter\expandafter\expandafter + \ifx\expandafter\expandafter\expandafter + \\\pdf@filesize{\reserved@b#1}\\% + \else + \edef\grffile@file@found{\reserved@b#1}% + \let\reserved@a\@firstoftwo + \@break@tfor + \fi + }% + \fi + \expandafter\reserved@a + \else + \edef\grffile@file@found{#1}% + \expandafter\@firstoftwo + \fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\fi +% \end{macrocode} +% \begin{macro}{\grffile@Ginclude@graphics} +% \begin{macrocode} +\def\grffile@Ginclude@graphics#1{% + \begingroup + \ifgrffile@space + \let\Gin@getbase\grffile@space@getbase + \fi + \ifgrffile@multidot + \let\filename@base\@empty + \let\filename@simple\grffile@filename@simple + \fi + \grffile@org@Ginclude@graphics{#1}% + \endgroup +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@filename@simple} +% \begin{macrocode} +\def\grffile@filename@simple#1.#2\\{% + \ifx\\#2\\% + \def\filename@base{#1}% + \let\filename@ext\relax + \else + \def\filename@base{}% + \grffile@analyze@ext{#1}.{#2}\\% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@analyze@ext} +% \begin{macrocode} +\def\grffile@analyze@ext#1.#2\\{% + \let\grffile@next\relax + \ifx\\#2\\% + \edef\filename@base{\filename@base#1}% + \let\filename@ext\relax + \def\grffile@next{\grffile@try@extlist}% + \else + \edef\filename@base{\filename@base #1}% + \edef\filename@ext{\filename@dot#2\\}% + \expandafter\ifx\csname Gin@rule@.\filename@ext\endcsname\relax + \edef\filename@base{\filename@base.}% + \def\grffile@next{\grffile@analyze@ext#2\\}% + \else + \grffile@IfFileExists{\filename@area\filename@base.\filename@ext}{% + % success + }{% + \edef\filename@base{\filename@base.\filename@ext}% + \let\filename@ext\relax + \def\grffile@next{\grffile@try@extlist}% + }% + \fi + \fi + \grffile@next +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@try@extlist} +% \begin{macrocode} +\def\grffile@try@extlist{% + \@for\grffile@temp:=\Gin@extensions\do{% + \grffile@IfFileExists{\filename@area\filename@base\grffile@temp}{% + \ifx\filename@ext\relax + \edef\filename@ext{\expandafter\@gobble\grffile@temp\@empty}% + \fi + }{}% + }% + \ifx\filename@ext\relax + \expandafter\let\expandafter\filename@base\expandafter\@empty + \expandafter\grffile@use@last@ext\filename@base.\\% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@use@last@ext} +% \begin{macrocode} +\def\grffile@use@last@ext#1.#2\\{% + \ifx\\#2\\% + \edef\filename@base{\expandafter\filename@dot\filename@base\\}% + \def\filename@ext{#1}% + \expandafter\@gobble + \else + \edef\filename@base{\filename@base#1.}% + \expandafter\@firstofone + \fi + {% + \grffile@use@last@ext#2\\% + }% +} +% \end{macrocode} +% \end{macro} +% +% Print current option setting +% \begin{macro}{\grffile@option@status} +% \begin{macrocode} +\def\grffile@option@status#1{% + \begingroup + \let\on@line\@empty + \PackageInfo{grffile}{% + Option `#1' is % + \expandafter\ifx\csname ifgrffile@#1\expandafter\endcsname + \csname iftrue\endcsname + set to `true'% + \else + \expandafter\ifx\csname grffile@#1@disabled\endcsname\@empty + not available% + \else + set to `false'% + \fi + \fi + }% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\grffile@option@status{multidot} +\grffile@option@status{extendedchars} +\grffile@option@status{space} +% \end{macrocode} +% +% \subsection{Fix \cs{Gin@ii} of package \xpackage{graphicx}} +% +% If the image file name contains the hash character +% macro \cs{Gin@ii} of package \xpackage{graphicx} breaks. +% \begin{macro}{\grffile@Gin@ii@graphicx} +% \begin{macrocode} +\def\grffile@Gin@ii@graphicx[#1]#2{% + \def\@tempa{[}% + \def\@tempb{#2}% + \ifx\@tempa\@tempb + \def\@tempa{\Gin@iii[#1][}% hash-ok + \expandafter\@tempa + \else + \begingroup + \@tempswafalse + \toks@{\Ginclude@graphics{#2}}% + \setkeys{Gin}{#1}% + \Gin@esetsize + \the\toks@ + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@Gin@ii@fixed} +% \begin{macrocode} +\def\grffile@Gin@ii@fixed[#1]#2{% + \def\@tempa{[}% + \begingroup + \toks@={#2}% + \edef\@tempb{\the\toks@}% + \expandafter\endgroup + \ifx\@tempa\@tempb + \def\@tempa{\Gin@iii[#1][}% hash-ok + \expandafter\@tempa + \else + \begingroup + \@tempswafalse + \toks@{\Ginclude@graphics{#2}}% + \setkeys{Gin}{#1}% + \Gin@esetsize + \the\toks@ + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grffile@Fix@Gin@ii} +% \begin{macrocode} +\def\grffile@Fix@Gin@ii{% + \let\Gin@ii\grffile@Gin@ii@fixed + \begingroup + \escapechar=92 % + \PackageInfo{grffile}{\string\Gin@ii\space of package `graphicx' fixed}% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\ifx\Gin@ii\grffile@Gin@ii@graphicx + \grffile@Fix@Gin@ii +\else + \AtBeginDocument{\grffile@Fix@Gin@ii}% +\fi +% \end{macrocode} +% +% \begin{macrocode} +\grffile@RestoreCatcodes +% \end{macrocode} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \section{Test} +% +% \subsection{Multidot with default rule} +% +% \begin{macrocode} +%<*test1> +\NeedsTeXFormat{LaTeX2e} +\documentclass{article} +\usepackage{filecontents} +% file grffile-test.mp: +% beginfig(1); +% draw fullcircle scaled 2cm withpen pencircle scaled 2mm; +% endfig; +% end +\begin{filecontents*}{grffile-test.1} +%!PS +%%BoundingBox: -32 -32 32 32 +%%Creator: MetaPost +%%CreationDate: 2004.06.16:1257 +%%Pages: 1 +%%EndProlog +%%Page: 1 1 + 0 5.66928 dtransform truncate idtransform setlinewidth pop [] 0 setdash + 1 setlinejoin 10 setmiterlimit +newpath 28.34645 0 moveto +28.34645 7.51828 25.35938 14.72774 20.04356 20.04356 curveto +14.72774 25.35938 7.51828 28.34645 0 28.34645 curveto +-7.51828 28.34645 -14.72774 25.35938 -20.04356 20.04356 curveto +-25.35938 14.72774 -28.34645 7.51828 -28.34645 0 curveto +-28.34645 -7.51828 -25.35938 -14.72774 -20.04356 -20.04356 curveto +-14.72774 -25.35938 -7.51828 -28.34645 0 -28.34645 curveto +7.51828 -28.34645 14.72774 -25.35938 20.04356 -20.04356 curveto +25.35938 -14.72774 28.34645 -7.51828 28.34645 0 curveto closepath stroke +showpage +%%EOF +\end{filecontents*} +\usepackage{graphicx} +\usepackage[multidot]{grffile}[2008/10/13] +\DeclareGraphicsRule{*}{mps}{*}{} % for pdflatex +\begin{document} +\includegraphics{grffile-test.1} +\end{document} +% +% \end{macrocode} +% +% \section{Installation} +% +% \subsection{Download} +% +% \paragraph{Package.} This package is available on +% CTAN\footnote{\url{http://ctan.org/pkg/grffile}}: +% \begin{description} +% \item[\CTAN{macros/latex/contrib/grffile/grffile.dtx}] The source file. +% \item[\CTAN{macros/latex/contrib/grffile/grffile.pdf}] Documentation. +% \end{description} +% +% +% \paragraph{Bundle.} All the packages of the bundle `oberdiek' +% are also available in a TDS compliant ZIP archive. There +% the packages are already unpacked and the documentation files +% are generated. The files and directories obey the TDS standard. +% \begin{description} +% \item[\CTAN{install/macros/latex/contrib/grffile.tds.zip}] +% \end{description} +% \emph{TDS} refers to the standard ``A Directory Structure +% for \TeX\ Files'' (\CTAN{tds/tds.pdf}). Directories +% with \xfile{texmf} in their name are usually organized this way. +% +% \subsection{Bundle installation} +% +% \paragraph{Unpacking.} Unpack the \xfile{oberdiek.tds.zip} in the +% TDS tree (also known as \xfile{texmf} tree) of your choice. +% Example (linux): +% \begin{quote} +% |unzip oberdiek.tds.zip -d ~/texmf| +% \end{quote} +% +% \paragraph{Script installation.} +% Check the directory \xfile{TDS:scripts/oberdiek/} for +% scripts that need further installation steps. +% Package \xpackage{attachfile2} comes with the Perl script +% \xfile{pdfatfi.pl} that should be installed in such a way +% that it can be called as \texttt{pdfatfi}. +% Example (linux): +% \begin{quote} +% |chmod +x scripts/oberdiek/pdfatfi.pl|\\ +% |cp scripts/oberdiek/pdfatfi.pl /usr/local/bin/| +% \end{quote} +% +% \subsection{Package installation} +% +% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting +% \docstrip\ archive. The files are extracted by running the +% \xfile{.dtx} through \plainTeX: +% \begin{quote} +% \verb|tex grffile.dtx| +% \end{quote} +% +% \paragraph{TDS.} Now the different files must be moved into +% the different directories in your installation TDS tree +% (also known as \xfile{texmf} tree): +% \begin{quote} +% \def\t{^^A +% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} +% grffile.sty & tex/latex/grffile/grffile.sty\\ +% grffile.pdf & doc/latex/grffile/grffile.pdf\\ +% test/grffile-test1.tex & doc/latex/grffile/test/grffile-test1.tex\\ +% grffile.dtx & source/latex/grffile/grffile.dtx\\ +% \end{tabular}^^A +% }^^A +% \sbox0{\t}^^A +% \ifdim\wd0>\linewidth +% \begingroup +% \advance\linewidth by\leftmargin +% \advance\linewidth by\rightmargin +% \edef\x{\endgroup +% \def\noexpand\lw{\the\linewidth}^^A +% }\x +% \def\lwbox{^^A +% \leavevmode +% \hbox to \linewidth{^^A +% \kern-\leftmargin\relax +% \hss +% \usebox0 +% \hss +% \kern-\rightmargin\relax +% }^^A +% }^^A +% \ifdim\wd0>\lw +% \sbox0{\small\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\footnotesize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\scriptsize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\tiny\t}^^A +% \ifdim\wd0>\linewidth +% \lwbox +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \end{quote} +% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's +% TDS installing feature, then some files can already be in the right +% place, see the documentation of \docstrip. +% +% \subsection{Refresh file name databases} +% +% If your \TeX~distribution +% (\teTeX, \mikTeX, \dots) relies on file name databases, you must refresh +% these. For example, \teTeX\ users run \verb|texhash| or +% \verb|mktexlsr|. +% +% \subsection{Some details for the interested} +% +% \paragraph{Attached source.} +% +% The PDF documentation on CTAN also includes the +% \xfile{.dtx} source file. It can be extracted by +% AcrobatReader 6 or higher. Another option is \textsf{pdftk}, +% e.g. unpack the file into the current directory: +% \begin{quote} +% \verb|pdftk grffile.pdf unpack_files output .| +% \end{quote} +% +% \paragraph{Unpacking with \LaTeX.} +% The \xfile{.dtx} chooses its action depending on the format: +% \begin{description} +% \item[\plainTeX:] Run \docstrip\ and extract the files. +% \item[\LaTeX:] Generate the documentation. +% \end{description} +% If you insist on using \LaTeX\ for \docstrip\ (really, +% \docstrip\ does not need \LaTeX), then inform the autodetect routine +% about your intention: +% \begin{quote} +% \verb|latex \let\install=y\input{grffile.dtx}| +% \end{quote} +% Do not forget to quote the argument according to the demands +% of your shell. +% +% \paragraph{Generating the documentation.} +% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate +% the documentation. The process can be configured by the +% configuration file \xfile{ltxdoc.cfg}. For instance, put this +% line into this file, if you want to have A4 as paper format: +% \begin{quote} +% \verb|\PassOptionsToClass{a4paper}{article}| +% \end{quote} +% An example follows how to generate the +% documentation with pdf\LaTeX: +% \begin{quote} +%\begin{verbatim} +%pdflatex grffile.dtx +%makeindex -s gind.ist grffile.idx +%pdflatex grffile.dtx +%makeindex -s gind.ist grffile.idx +%pdflatex grffile.dtx +%\end{verbatim} +% \end{quote} +% +% \section{Catalogue} +% +% The following XML file can be used as source for the +% \href{http://mirror.ctan.org/help/Catalogue/catalogue.html}{\TeX\ Catalogue}. +% The elements \texttt{caption} and \texttt{description} are imported +% from the original XML file from the Catalogue. +% The name of the XML file in the Catalogue is \xfile{grffile.xml}. +% \begin{macrocode} +%<*catalogue> + + + + grffile + Extended file name support for graphics. + + + + + + The package extends the file name processing of package + graphics to support a larger range + of file names. For example, the file name may contain several dots. + + Or in case of pdfTeX in PDF mode the + file name may contain spaces. +

+ The package is part of the oberdiek + bundle. + + + + + + + +% +% \end{macrocode} +% +% \begin{thebibliography}{9} +% +% \bibitem{graphics} +% David Carlisle, Sebastian Rahtz: \textit{The \xpackage{graphics} package}; +% 2006/02/20 v1.0o; +% \CTAN{macros/latex/required/graphics/graphics.dtx}. +% +% \bibitem{graphicx} +% Sebastian Rahtz, Heiko Oberdiek: +% \textit{The \xpackage{graphicx} package}; +% 1999/02/16 v1.0f; +% \CTAN{macros/latex/required/graphics/graphicx.dtx}. +% +% \end{thebibliography} +% +% \begin{History} +% \begin{Version}{2004/07/18 v0.5} +% \item +% First version, published in newsgroup \xnewsgroup{de.comp.text.tex}:\\ +% \URL{``\link{Re: Dateinamenproblem}''}^^A +% {http://groups.google.com/group/de.comp.text.tex/msg/b85984095d1a3c95} +% \end{Version} +% \begin{Version}{2006/08/15 v1.0} +% \item +% File existence check by new primitives of pdfTeX 1.30. +% \item +% Implementation partly rewritten. +% \item +% New DTX framework. +% \end{Version} +% \begin{Version}{2006/08/17 v1.1} +% \item +% Adaptation to version 2.3 of package \xpackage{kvoptions}. +% \end{Version} +% \begin{Version}{2006/11/30 v1.2} +% \item +% New option \xoption{babel}. Before this feature was part +% of option \xoption{extendedchars}. +% \end{Version} +% \begin{Version}{2007/04/11 v1.3} +% \item +% Line ends sanitized. +% \end{Version} +% \begin{Version}{2007/06/13 v1.4} +% \item +% Encoding support added with options \xoption{encoding}, +% \xoption{inputencoding}, and \xoption{filenameencoding}. +% \end{Version} +% \begin{Version}{2007/08/16 v1.5} +% \item +% Bug fix in encoding support. +% \end{Version} +% \begin{Version}{2007/11/11 v1.6} +% \item +% Use of package \xpackage{pdftexcmds} for \LuaTeX\ support. +% \end{Version} +% \begin{Version}{2007/11/24 v1.7} +% \item +% Bug fix of broken previous version. +% \end{Version} +% \begin{Version}{2008/08/11 v1.8} +% \item +% Code is not changed. +% \item +% URLs updated. +% \end{Version} +% \begin{Version}{2008/10/13 v1.9} +% \item +% Fix for option `multidot' with default rule. +% \end{Version} +% \begin{Version}{2009/09/25 v1.10} +% \item +% Rewrite of `multidot' algorithm to fix a problem +% (`multidot' with \cs{graphicspath}). +% \end{Version} +% \begin{Version}{2010/01/28 v1.11} +% \item +% Undefined \cs{pdf@filesize} fixed. +% \end{Version} +% \begin{Version}{2010/08/26 v1.12} +% \item +% Macro \cs{Gin@ii} of package \xpackage{graphicx} fixed +% for the case that the file name contains a hash. +% \end{Version} +% \begin{Version}{2010/12/09 v1.13} +% \item +% Option \xoption{space} also supports \hologo{XeTeX}. +% \end{Version} +% \begin{Version}{2011/10/04 v1.14} +% \item +% Fix for option \xoption{space} support of \hologo{XeTeX} +% for EPS files (\cs{Gread@eps}). (Bug reported by Peter Davis.) +% \end{Version} +% \begin{Version}{2011/10/17 v1.15} +% \item +% Bug fix for option \xoption{space} support of \hologo{XeTeX}. +% Wrong usage of \cs{@break@tfor} fixed. +% (Bug reported by Martin Schr\"oder.) +% \end{Version} +% \begin{Version}{2012/04/05 v1.16} +% \item +% Some fix for option \xoption{extendedchars}. +% \end{Version} +% \begin{Version}{2016/05/16 v1.17} +% \item +% Documentation updates. +% \end{Version} +% \begin{Version}{2017/06/30 v1.18} +% \item +% Update to follow \xpackage{graphics} changes. +% \end{Version} +% \end{History} +% +% \PrintIndex +% +% \Finale +\endinput diff --git a/macros/latex/contrib/grffile/grffile.pdf b/macros/latex/contrib/grffile/grffile.pdf new file mode 100644 index 0000000000..7a7dae93b9 Binary files /dev/null and b/macros/latex/contrib/grffile/grffile.pdf differ diff --git a/macros/latex/contrib/l3kernel/CHANGELOG.md b/macros/latex/contrib/l3kernel/CHANGELOG.md index c8c1a1a24a..9aa72250fd 100644 --- a/macros/latex/contrib/l3kernel/CHANGELOG.md +++ b/macros/latex/contrib/l3kernel/CHANGELOG.md @@ -7,6 +7,13 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2019-11-07] + +### Fixed + +- Handling of repeated loading of a backend (issue #646) +- Hanlding of repeated loading of deprecated functions + ## [2019-10-28] ### Fixed @@ -602,7 +609,8 @@ this project uses date-based 'snapshot' version identifiers. - Step func­tions have been added for dim vari­ables, e.g. `\dim_step_in­line:nnnn` -[Unreleased]: https://github.com/latex3/latex3/compare/2019-10-28...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2019-11-07...HEAD +[2019-11-07]: https://github.com/latex3/latex3/compare/2019-10-28...2019-11-07 [2019-10-28]: https://github.com/latex3/latex3/compare/2019-10-27...2019-10-28 [2019-10-27]: https://github.com/latex3/latex3/compare/2019-10-24...2019-10-27 [2019-10-24]: https://github.com/latex3/latex3/compare/2019-10-21...2019-10-24 diff --git a/macros/latex/contrib/l3kernel/README.md b/macros/latex/contrib/l3kernel/README.md index 7871bbad26..df7311fe84 100644 --- a/macros/latex/contrib/l3kernel/README.md +++ b/macros/latex/contrib/l3kernel/README.md @@ -1,7 +1,7 @@ LaTeX3 Programming Conventions ============================== -Release 2019-10-28 +Release 2019-11-07 Overview -------- diff --git a/macros/latex/contrib/l3kernel/expl3.dtx b/macros/latex/contrib/l3kernel/expl3.dtx index b2b0464bc9..89d18df298 100644 --- a/macros/latex/contrib/l3kernel/expl3.dtx +++ b/macros/latex/contrib/l3kernel/expl3.dtx @@ -24,7 +24,7 @@ % %<*driver|generic|package|2ekernel> % -\def\ExplFileDate{2019-10-28}% +\def\ExplFileDate{2019-11-07}% %<*driver> \documentclass[full]{l3doc} \usepackage{graphicx} @@ -51,7 +51,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -1551,7 +1551,7 @@ % \begin{macro}{\__kernel_sys_configuration_load:n} % Very basic. % \begin{macrocode} -\cs_new_protected:Npn \__kernel_sys_configuration_load:n #1 +\cs_gset_protected:Npn \__kernel_sys_configuration_load:n #1 { \group_begin: \cs_set_protected:Npn \ProvidesExplFile diff --git a/macros/latex/contrib/l3kernel/expl3.pdf b/macros/latex/contrib/l3kernel/expl3.pdf index 5be11cc518..5ff3ded9e7 100644 Binary files a/macros/latex/contrib/l3kernel/expl3.pdf and b/macros/latex/contrib/l3kernel/expl3.pdf differ diff --git a/macros/latex/contrib/l3kernel/interface3.pdf b/macros/latex/contrib/l3kernel/interface3.pdf index 72c1d2a0e4..872a46e97c 100644 Binary files a/macros/latex/contrib/l3kernel/interface3.pdf and b/macros/latex/contrib/l3kernel/interface3.pdf differ diff --git a/macros/latex/contrib/l3kernel/interface3.tex b/macros/latex/contrib/l3kernel/interface3.tex index 5f0eb7d06f..5b08ade5dc 100644 --- a/macros/latex/contrib/l3kernel/interface3.tex +++ b/macros/latex/contrib/l3kernel/interface3.tex @@ -54,7 +54,7 @@ for those people who are interested. {latex-team@latex-project.org}% }% } -\date{Released 2019-10-28} +\date{Released 2019-11-07} \pagenumbering{roman} \maketitle diff --git a/macros/latex/contrib/l3kernel/l3alloc.dtx b/macros/latex/contrib/l3kernel/l3alloc.dtx index 5815374fdb..86076bb8f0 100644 --- a/macros/latex/contrib/l3kernel/l3alloc.dtx +++ b/macros/latex/contrib/l3kernel/l3alloc.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3basics.dtx b/macros/latex/contrib/l3kernel/l3basics.dtx index 373850f666..aea1d1fbad 100644 --- a/macros/latex/contrib/l3kernel/l3basics.dtx +++ b/macros/latex/contrib/l3kernel/l3basics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3bootstrap.dtx b/macros/latex/contrib/l3kernel/l3bootstrap.dtx index c5253ae252..7066d5132e 100644 --- a/macros/latex/contrib/l3kernel/l3bootstrap.dtx +++ b/macros/latex/contrib/l3kernel/l3bootstrap.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3box.dtx b/macros/latex/contrib/l3kernel/l3box.dtx index 2f72616abf..55915ae859 100644 --- a/macros/latex/contrib/l3kernel/l3box.dtx +++ b/macros/latex/contrib/l3kernel/l3box.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3candidates.dtx b/macros/latex/contrib/l3kernel/l3candidates.dtx index 05b899a0aa..4e859699e0 100644 --- a/macros/latex/contrib/l3kernel/l3candidates.dtx +++ b/macros/latex/contrib/l3kernel/l3candidates.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -479,7 +479,7 @@ % mappings. % \end{function} % -% \begin{function}[added = 2018-05-03]{\seq_indexed_map_function:NN} +% \begin{function}[rEXP,added = 2018-05-03]{\seq_indexed_map_function:NN} % \begin{syntax} % \cs{seq_indexed_map_function:NN} \meta{seq~var} \meta{function} % \end{syntax} diff --git a/macros/latex/contrib/l3kernel/l3clist.dtx b/macros/latex/contrib/l3kernel/l3clist.dtx index 9c4ca821de..9529c15070 100644 --- a/macros/latex/contrib/l3kernel/l3clist.dtx +++ b/macros/latex/contrib/l3kernel/l3clist.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3coffins.dtx b/macros/latex/contrib/l3kernel/l3coffins.dtx index fa15c3491d..92203d5d8c 100644 --- a/macros/latex/contrib/l3kernel/l3coffins.dtx +++ b/macros/latex/contrib/l3kernel/l3coffins.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3color-base.dtx b/macros/latex/contrib/l3kernel/l3color-base.dtx index eed072790e..9361db0b98 100644 --- a/macros/latex/contrib/l3kernel/l3color-base.dtx +++ b/macros/latex/contrib/l3kernel/l3color-base.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3debug.dtx b/macros/latex/contrib/l3kernel/l3debug.dtx index 4c5cd8ac61..cb1eb81fd8 100644 --- a/macros/latex/contrib/l3kernel/l3debug.dtx +++ b/macros/latex/contrib/l3kernel/l3debug.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3deprecation.dtx b/macros/latex/contrib/l3kernel/l3deprecation.dtx index f3da727225..410f6891a9 100644 --- a/macros/latex/contrib/l3kernel/l3deprecation.dtx +++ b/macros/latex/contrib/l3kernel/l3deprecation.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -573,7 +573,9 @@ { \exp_not:N \ProvidesFile {#1} [ #2~v#3~#4 ] } { \iow_log:x { File:~#1~#2~v#3~#4 } } } -\file_input:n { l3deprecation.def } +\cs_gset_protected:Npn \__kernel_sys_configuration_load:n #1 + { \file_input:n { #1 .def } } +\sys_load_deprecation: % \end{macrocode} % % \begin{macrocode} diff --git a/macros/latex/contrib/l3kernel/l3doc.dtx b/macros/latex/contrib/l3kernel/l3doc.dtx index e2cbc4fd5e..7ddc695d4d 100644 --- a/macros/latex/contrib/l3kernel/l3doc.dtx +++ b/macros/latex/contrib/l3kernel/l3doc.dtx @@ -79,7 +79,7 @@ and all files in that bundle must be distributed together. % % \title{The \cls{l3doc} class} % \author{\Team} -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % \maketitle % \tableofcontents % diff --git a/macros/latex/contrib/l3kernel/l3docstrip.dtx b/macros/latex/contrib/l3kernel/l3docstrip.dtx index 7ab137b18f..8c626f91f9 100644 --- a/macros/latex/contrib/l3kernel/l3docstrip.dtx +++ b/macros/latex/contrib/l3kernel/l3docstrip.dtx @@ -63,7 +63,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3docstrip.pdf b/macros/latex/contrib/l3kernel/l3docstrip.pdf index b28d21fb56..dacf0e35d6 100644 Binary files a/macros/latex/contrib/l3kernel/l3docstrip.pdf and b/macros/latex/contrib/l3kernel/l3docstrip.pdf differ diff --git a/macros/latex/contrib/l3kernel/l3expan.dtx b/macros/latex/contrib/l3kernel/l3expan.dtx index 513ca5f205..7f3ea57e68 100644 --- a/macros/latex/contrib/l3kernel/l3expan.dtx +++ b/macros/latex/contrib/l3kernel/l3expan.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3file.dtx b/macros/latex/contrib/l3kernel/l3file.dtx index f83f7e62bb..2b6c86f8f8 100644 --- a/macros/latex/contrib/l3kernel/l3file.dtx +++ b/macros/latex/contrib/l3kernel/l3file.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3final.dtx b/macros/latex/contrib/l3kernel/l3final.dtx index dd41ed167e..853220d68a 100644 --- a/macros/latex/contrib/l3kernel/l3final.dtx +++ b/macros/latex/contrib/l3kernel/l3final.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3flag.dtx b/macros/latex/contrib/l3kernel/l3flag.dtx index 919bb1e5de..742e3da3a4 100644 --- a/macros/latex/contrib/l3kernel/l3flag.dtx +++ b/macros/latex/contrib/l3kernel/l3flag.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-assign.dtx b/macros/latex/contrib/l3kernel/l3fp-assign.dtx index 66b82bfad2..a09616c307 100644 --- a/macros/latex/contrib/l3kernel/l3fp-assign.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-assign.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % \maketitle % % \begin{documentation} diff --git a/macros/latex/contrib/l3kernel/l3fp-aux.dtx b/macros/latex/contrib/l3kernel/l3fp-aux.dtx index 50673f8c2c..1d3faad843 100644 --- a/macros/latex/contrib/l3kernel/l3fp-aux.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-aux.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-basics.dtx b/macros/latex/contrib/l3kernel/l3fp-basics.dtx index 44a627a477..776192abc7 100644 --- a/macros/latex/contrib/l3kernel/l3fp-basics.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-basics.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-convert.dtx b/macros/latex/contrib/l3kernel/l3fp-convert.dtx index 54fb6a1516..c1443a3eaf 100644 --- a/macros/latex/contrib/l3kernel/l3fp-convert.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-convert.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-expo.dtx b/macros/latex/contrib/l3kernel/l3fp-expo.dtx index 1685725262..394fe63f4c 100644 --- a/macros/latex/contrib/l3kernel/l3fp-expo.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-expo.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-extended.dtx b/macros/latex/contrib/l3kernel/l3fp-extended.dtx index 5f8dee809d..8c28335acc 100644 --- a/macros/latex/contrib/l3kernel/l3fp-extended.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-extended.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-logic.dtx b/macros/latex/contrib/l3kernel/l3fp-logic.dtx index 2ec0ea3d58..0b853df3ce 100644 --- a/macros/latex/contrib/l3kernel/l3fp-logic.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-logic.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-parse.dtx b/macros/latex/contrib/l3kernel/l3fp-parse.dtx index 354dc38f19..a864190535 100644 --- a/macros/latex/contrib/l3kernel/l3fp-parse.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-parse.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-random.dtx b/macros/latex/contrib/l3kernel/l3fp-random.dtx index 96efa6f5bf..7c6d18bc3c 100644 --- a/macros/latex/contrib/l3kernel/l3fp-random.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-random.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-round.dtx b/macros/latex/contrib/l3kernel/l3fp-round.dtx index d3555ec9fc..7c4e5b0b0f 100644 --- a/macros/latex/contrib/l3kernel/l3fp-round.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-round.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp-traps.dtx b/macros/latex/contrib/l3kernel/l3fp-traps.dtx index a9f09c994e..f4e047b462 100644 --- a/macros/latex/contrib/l3kernel/l3fp-traps.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-traps.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % \maketitle % % \begin{documentation} diff --git a/macros/latex/contrib/l3kernel/l3fp-trig.dtx b/macros/latex/contrib/l3kernel/l3fp-trig.dtx index b1bbc3e744..d89f047751 100644 --- a/macros/latex/contrib/l3kernel/l3fp-trig.dtx +++ b/macros/latex/contrib/l3kernel/l3fp-trig.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fp.dtx b/macros/latex/contrib/l3kernel/l3fp.dtx index 6540d13883..8521414085 100644 --- a/macros/latex/contrib/l3kernel/l3fp.dtx +++ b/macros/latex/contrib/l3kernel/l3fp.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3fparray.dtx b/macros/latex/contrib/l3kernel/l3fparray.dtx index cdbe450f3c..35cdb6353c 100644 --- a/macros/latex/contrib/l3kernel/l3fparray.dtx +++ b/macros/latex/contrib/l3kernel/l3fparray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3int.dtx b/macros/latex/contrib/l3kernel/l3int.dtx index cc333941d9..4459cc56b1 100644 --- a/macros/latex/contrib/l3kernel/l3int.dtx +++ b/macros/latex/contrib/l3kernel/l3int.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3intarray.dtx b/macros/latex/contrib/l3kernel/l3intarray.dtx index a258b3d10b..f26e7416aa 100644 --- a/macros/latex/contrib/l3kernel/l3intarray.dtx +++ b/macros/latex/contrib/l3kernel/l3intarray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx index 1c8ad30396..5ad373b5cc 100644 --- a/macros/latex/contrib/l3kernel/l3kernel-functions.dtx +++ b/macros/latex/contrib/l3kernel/l3kernel-functions.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3keys.dtx b/macros/latex/contrib/l3kernel/l3keys.dtx index 666f268846..c8d5f71431 100644 --- a/macros/latex/contrib/l3kernel/l3keys.dtx +++ b/macros/latex/contrib/l3kernel/l3keys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3legacy.dtx b/macros/latex/contrib/l3kernel/l3legacy.dtx index 10a2bd814a..c49ac91e7f 100644 --- a/macros/latex/contrib/l3kernel/l3legacy.dtx +++ b/macros/latex/contrib/l3kernel/l3legacy.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3luatex.dtx b/macros/latex/contrib/l3kernel/l3luatex.dtx index 0c6cc6c953..22780b77fd 100644 --- a/macros/latex/contrib/l3kernel/l3luatex.dtx +++ b/macros/latex/contrib/l3kernel/l3luatex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3msg.dtx b/macros/latex/contrib/l3kernel/l3msg.dtx index c847e0ebb4..969738d3aa 100644 --- a/macros/latex/contrib/l3kernel/l3msg.dtx +++ b/macros/latex/contrib/l3kernel/l3msg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3names.dtx b/macros/latex/contrib/l3kernel/l3names.dtx index d662d0e080..b0edf9235d 100644 --- a/macros/latex/contrib/l3kernel/l3names.dtx +++ b/macros/latex/contrib/l3kernel/l3names.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3prefixes.pdf b/macros/latex/contrib/l3kernel/l3prefixes.pdf index 64d82ca02a..cbb3f89304 100644 Binary files a/macros/latex/contrib/l3kernel/l3prefixes.pdf and b/macros/latex/contrib/l3kernel/l3prefixes.pdf differ diff --git a/macros/latex/contrib/l3kernel/l3prg.dtx b/macros/latex/contrib/l3kernel/l3prg.dtx index 83614a933a..63b2f5845b 100644 --- a/macros/latex/contrib/l3kernel/l3prg.dtx +++ b/macros/latex/contrib/l3kernel/l3prg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3prop.dtx b/macros/latex/contrib/l3kernel/l3prop.dtx index 0b46bb09f9..62cd9ba785 100644 --- a/macros/latex/contrib/l3kernel/l3prop.dtx +++ b/macros/latex/contrib/l3kernel/l3prop.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3quark.dtx b/macros/latex/contrib/l3kernel/l3quark.dtx index 207b61002b..401b66dfc1 100644 --- a/macros/latex/contrib/l3kernel/l3quark.dtx +++ b/macros/latex/contrib/l3kernel/l3quark.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -191,7 +191,7 @@ % easily. % \end{variable} % -% \begin{function}{\quark_if_recursion_tail_stop:N} +% \begin{function}[EXP]{\quark_if_recursion_tail_stop:N} % \begin{syntax} % \cs{quark_if_recursion_tail_stop:N} \meta{token} % \end{syntax} @@ -203,7 +203,7 @@ % and \cs{q_recursion_stop} as the last two items. % \end{function} % -% \begin{function}[updated = 2011-09-06] +% \begin{function}[EXP,updated = 2011-09-06] % {\quark_if_recursion_tail_stop:n, \quark_if_recursion_tail_stop:o} % \begin{syntax} % \cs{quark_if_recursion_tail_stop:n} \Arg{token list} @@ -216,7 +216,7 @@ % and \cs{q_recursion_stop} as the last two items. % \end{function} % -% \begin{function}{\quark_if_recursion_tail_stop_do:Nn} +% \begin{function}[EXP]{\quark_if_recursion_tail_stop_do:Nn} % \begin{syntax} % \cs{quark_if_recursion_tail_stop_do:Nn} \meta{token} \Arg{insertion} % \end{syntax} @@ -230,7 +230,7 @@ % ended. % \end{function} % -% \begin{function}[updated = 2011-09-06] +% \begin{function}[EXP,updated = 2011-09-06] % {\quark_if_recursion_tail_stop_do:nn, \quark_if_recursion_tail_stop_do:on} % \begin{syntax} % \cs{quark_if_recursion_tail_stop_do:nn} \Arg{token list} \Arg{insertion} @@ -246,7 +246,7 @@ % \end{function} % % -% \begin{function}[added = 2018-04-10] +% \begin{function}[EXP,added = 2018-04-10] % { % \quark_if_recursion_tail_break:NN, % \quark_if_recursion_tail_break:nN @@ -337,7 +337,7 @@ % that can be jumped to using \cs{use_none_delimit_by_s_stop:w}. % \end{variable} % -% \begin{function}[added = 2018-04-01]{\use_none_delimit_by_s_stop:w} +% \begin{function}[EXP,added = 2018-04-01]{\use_none_delimit_by_s_stop:w} % \begin{syntax} % \cs{use_none_delimit_by_s_stop:w} \meta{tokens} \cs{s_stop} % \end{syntax} diff --git a/macros/latex/contrib/l3kernel/l3regex.dtx b/macros/latex/contrib/l3kernel/l3regex.dtx index 7282e03b6d..bf7b19ccde 100644 --- a/macros/latex/contrib/l3kernel/l3regex.dtx +++ b/macros/latex/contrib/l3kernel/l3regex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3seq.dtx b/macros/latex/contrib/l3kernel/l3seq.dtx index ec5efa274e..811ac0a7d7 100644 --- a/macros/latex/contrib/l3kernel/l3seq.dtx +++ b/macros/latex/contrib/l3kernel/l3seq.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3skip.dtx b/macros/latex/contrib/l3kernel/l3skip.dtx index 0193b11227..901595ae0d 100644 --- a/macros/latex/contrib/l3kernel/l3skip.dtx +++ b/macros/latex/contrib/l3kernel/l3skip.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -1043,7 +1043,7 @@ % % \section{Primitive conditional} % -% \begin{function}{\if_dim:w} +% \begin{function}[EXP]{\if_dim:w} % \begin{syntax} % \cs{if_dim:w} \meta{dimen_1} \meta{relation} \meta{dimen_2} % ~~\meta{true code} diff --git a/macros/latex/contrib/l3kernel/l3sort.dtx b/macros/latex/contrib/l3kernel/l3sort.dtx index ddc9be8c75..49686a77ab 100644 --- a/macros/latex/contrib/l3kernel/l3sort.dtx +++ b/macros/latex/contrib/l3kernel/l3sort.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3str-convert.dtx b/macros/latex/contrib/l3kernel/l3str-convert.dtx index ff6c75db5c..05531a1e93 100644 --- a/macros/latex/contrib/l3kernel/l3str-convert.dtx +++ b/macros/latex/contrib/l3kernel/l3str-convert.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3str.dtx b/macros/latex/contrib/l3kernel/l3str.dtx index bc8b8de16a..09dde6a4eb 100644 --- a/macros/latex/contrib/l3kernel/l3str.dtx +++ b/macros/latex/contrib/l3kernel/l3str.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3styleguide.pdf b/macros/latex/contrib/l3kernel/l3styleguide.pdf index 335fc4188c..d00c3f0601 100644 Binary files a/macros/latex/contrib/l3kernel/l3styleguide.pdf and b/macros/latex/contrib/l3kernel/l3styleguide.pdf differ diff --git a/macros/latex/contrib/l3kernel/l3styleguide.tex b/macros/latex/contrib/l3kernel/l3styleguide.tex index ba82487262..28948cc82c 100644 --- a/macros/latex/contrib/l3kernel/l3styleguide.tex +++ b/macros/latex/contrib/l3kernel/l3styleguide.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2019-10-28} +\date{Released 2019-11-07} \begin{document} diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf index 483f259c70..e6b56c4699 100644 Binary files a/macros/latex/contrib/l3kernel/l3syntax-changes.pdf and b/macros/latex/contrib/l3kernel/l3syntax-changes.pdf differ diff --git a/macros/latex/contrib/l3kernel/l3syntax-changes.tex b/macros/latex/contrib/l3kernel/l3syntax-changes.tex index 521a6e1e45..a27fb842d0 100644 --- a/macros/latex/contrib/l3kernel/l3syntax-changes.tex +++ b/macros/latex/contrib/l3kernel/l3syntax-changes.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2019-10-28} +\date{Released 2019-11-07} \newcommand{\TF}{\textit{(TF)}} diff --git a/macros/latex/contrib/l3kernel/l3sys.dtx b/macros/latex/contrib/l3kernel/l3sys.dtx index af09373f25..24e79512c7 100644 --- a/macros/latex/contrib/l3kernel/l3sys.dtx +++ b/macros/latex/contrib/l3kernel/l3sys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % @@ -395,7 +395,10 @@ { \sys_finalise: \str_if_exist:NTF \c_sys_backend_str - { \__kernel_msg_error:nn { sys } { backend-set } } + { + \str_if_eq:VnF \c_sys_backend_str {#1} + { \__kernel_msg_error:nn { sys } { backend-set } } + } { \tl_if_blank:nF {#1} { \tl_set:Nn \g_@@_backend_tl {#1} } diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.pdf b/macros/latex/contrib/l3kernel/l3term-glossary.pdf index 398b476956..062c6794b9 100644 Binary files a/macros/latex/contrib/l3kernel/l3term-glossary.pdf and b/macros/latex/contrib/l3kernel/l3term-glossary.pdf differ diff --git a/macros/latex/contrib/l3kernel/l3term-glossary.tex b/macros/latex/contrib/l3kernel/l3term-glossary.tex index cc0ba73953..0f7ed542b3 100644 --- a/macros/latex/contrib/l3kernel/l3term-glossary.tex +++ b/macros/latex/contrib/l3kernel/l3term-glossary.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2019-10-28} +\date{Released 2019-11-07} \newcommand{\TF}{\textit{(TF)}} diff --git a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx index 7836f222d1..e4e8b791e9 100644 --- a/macros/latex/contrib/l3kernel/l3tl-analysis.dtx +++ b/macros/latex/contrib/l3kernel/l3tl-analysis.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3tl.dtx b/macros/latex/contrib/l3kernel/l3tl.dtx index 531259c8f7..a3c39d9df9 100644 --- a/macros/latex/contrib/l3kernel/l3tl.dtx +++ b/macros/latex/contrib/l3kernel/l3tl.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3token.dtx b/macros/latex/contrib/l3kernel/l3token.dtx index 1133adeef4..36ca720071 100644 --- a/macros/latex/contrib/l3kernel/l3token.dtx +++ b/macros/latex/contrib/l3kernel/l3token.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/l3unicode.dtx b/macros/latex/contrib/l3kernel/l3unicode.dtx index ebef490729..9eb3d9747a 100644 --- a/macros/latex/contrib/l3kernel/l3unicode.dtx +++ b/macros/latex/contrib/l3kernel/l3unicode.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2019-10-28} +% \date{Released 2019-11-07} % % \maketitle % diff --git a/macros/latex/contrib/l3kernel/source3.pdf b/macros/latex/contrib/l3kernel/source3.pdf index 9ca33a657d..a40463b4d9 100644 Binary files a/macros/latex/contrib/l3kernel/source3.pdf and b/macros/latex/contrib/l3kernel/source3.pdf differ diff --git a/macros/latex/contrib/l3kernel/source3.tex b/macros/latex/contrib/l3kernel/source3.tex index 1aa4428c4b..45de4218f6 100644 --- a/macros/latex/contrib/l3kernel/source3.tex +++ b/macros/latex/contrib/l3kernel/source3.tex @@ -53,7 +53,7 @@ for those people who are interested. {latex-team@latex-project.org}% }% } -\date{Released 2019-10-28} +\date{Released 2019-11-07} \pagenumbering{roman} \maketitle diff --git a/macros/latex/contrib/lwarp/README.txt b/macros/latex/contrib/lwarp/README.txt index 8783fb594c..195a61cffb 100644 --- a/macros/latex/contrib/lwarp/README.txt +++ b/macros/latex/contrib/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/macros/latex/contrib/lwarp/lwarp.dtx b/macros/latex/contrib/lwarp/lwarp.dtx index 6cc5665d1a..e52d6bfdb3 100644 --- a/macros/latex/contrib/lwarp/lwarp.dtx +++ b/macros/latex/contrib/lwarp/lwarp.dtx @@ -16,7 +16,7 @@ % \iffalse %\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.] % %<*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}