summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-07-17 20:01:08 +0000
committerKarl Berry <karl@freefriends.org>2022-07-17 20:01:08 +0000
commitea754d8138c914e69555b2cf181ac05cdbe9b8fd (patch)
treec7c754bff8964c6c52dd71ce1dc790dcd529b3ca /Master
parentaad6090f06fd84391dbcac7f0617d77d510d3a22 (diff)
latex-base-dev (17jul22)
git-svn-id: svn://tug.org/texlive/trunk@63922 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/README.md19
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/alltt.pdfbin223831 -> 223831 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/cfgguide.pdfbin242888 -> 242888 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/changes.txt89
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/classes.pdfbin560350 -> 560611 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/clsguide.pdfbin402780 -> 402780 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/cmfonts.pdfbin292376 -> 292160 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/cyrguide.pdfbin239689 -> 239689 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/doc-code.pdfbin1081761 -> 1077586 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/doc.pdfbin755188 -> 755127 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/docstrip.pdfbin503774 -> 503716 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/encguide.pdfbin1318126 -> 1318126 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/exscale.pdfbin204711 -> 204711 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/fix-cm.pdfbin288328 -> 287733 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/fntguide.pdfbin502880 -> 502880 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/graphpap.pdfbin161713 -> 161713 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ifthen.pdfbin221211 -> 221211 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/inputenc.pdfbin318204 -> 318204 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lamport-manual.pdfbin170878 -> 170878 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/latexrelease.pdfbin281906 -> 281906 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/latexsym.pdfbin200760 -> 200760 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lb2.pdfbin252140 -> 252140 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/letter.pdfbin337706 -> 337880 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lgc2.pdfbin215684 -> 215684 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lppl.pdfbin132382 -> 132382 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdfbin720249 -> 719018 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdfbin479100 -> 478530 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdfbin803034 -> 801140 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdfbin548731 -> 547909 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdfbin1096874 -> 1091456 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdfbin703775 -> 701509 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltluatex.pdfbin317700 -> 317700 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltmarks-code.pdfbin715660 -> 715770 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltmarks-doc.pdfbin587106 -> 586138 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews.pdfbin1180993 -> 1210464 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews.tex6
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews01.pdfbin161518 -> 161518 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews02.pdfbin159792 -> 159792 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews03.pdfbin159332 -> 159332 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews04.pdfbin152525 -> 152525 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews05.pdfbin174494 -> 174494 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews06.pdfbin142849 -> 142849 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews07.pdfbin137811 -> 137811 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews08.pdfbin155053 -> 155053 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews09.pdfbin129570 -> 129570 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews10.pdfbin169416 -> 169416 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews11.pdfbin111948 -> 111948 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews12.pdfbin156551 -> 156551 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews13.pdfbin182225 -> 182225 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews14.pdfbin170473 -> 170473 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews15.pdfbin130309 -> 130309 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews16.pdfbin138073 -> 138073 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews17.pdfbin166228 -> 166228 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews18.pdfbin38033 -> 38033 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews19.pdfbin230028 -> 230028 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews20.pdfbin318548 -> 318548 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews21.pdfbin244867 -> 244867 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews22.pdfbin317773 -> 317773 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews23.pdfbin286591 -> 286591 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews24.pdfbin265279 -> 265279 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews25.pdfbin204935 -> 204935 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews26.pdfbin379462 -> 379462 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews27.pdfbin250592 -> 250592 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews28.pdfbin376643 -> 376643 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews29.pdfbin455107 -> 455107 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews30.pdfbin511909 -> 511909 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews31.pdfbin526323 -> 526323 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews32.pdfbin546160 -> 546160 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews33.pdfbin522412 -> 522412 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews34.pdfbin508044 -> 508044 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews35.pdfbin563513 -> 563534 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews35.tex2
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews36.pdfbin0 -> 306491 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltnews36.tex225
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdfbin667130 -> 667151 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdfbin560603 -> 560009 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdfbin820873 -> 819020 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdfbin565171 -> 563793 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltx3info.pdfbin219349 -> 219349 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdfbin243273 -> 242645 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/makeindx.pdfbin165821 -> 165821 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/modguide.pdfbin243605 -> 243605 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/nfssfont.pdfbin211180 -> 211180 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/proc.pdfbin227059 -> 227059 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/slides.pdfbin375518 -> 375518 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/slifonts.pdfbin234191 -> 234191 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/source2e.pdfbin5760499 -> 5713613 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/syntonly.pdfbin189789 -> 189966 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/tlc2.pdfbin290615 -> 290615 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/tulm.pdfbin162772 -> 162772 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/usrguide.pdfbin430994 -> 430994 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/usrguide3.pdfbin403394 -> 410688 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/usrguide3.tex57
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdfbin353405 -> 353405 bytes
-rw-r--r--Master/texmf-dist/doc/latex-dev/base/webcomp.pdfbin146198 -> 146198 bytes
-rw-r--r--Master/texmf-dist/source/latex-dev/base/classes.dtx4
-rw-r--r--Master/texmf-dist/source/latex-dev/base/cmfonts.fdd40
-rw-r--r--Master/texmf-dist/source/latex-dev/base/doc.dtx126
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltclass.dtx9
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltfinal.dtx112
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltfssbas.dtx66
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx17
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltkeys.dtx64
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltvers.dtx2
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltxdoc.dtx8
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/article.cls2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/bk10.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/bk11.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/bk12.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/book.cls2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/doc.sty102
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/latex.ltx95
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/latexrelease.sty30
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ltxdoc.cls4
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/omlcmm.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/omlcmr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/omscmr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/omscmsy.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/omxcmex.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmdh.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmfib.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmfr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmss.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ot1cmvtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/report.cls2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/shortvrb.sty2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/size10.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/size11.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/size12.clo2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmdh.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmfib.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmfr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmr.fd5
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmss.fd20
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/t1cmvtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ts1cmr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ts1cmss.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ts1cmtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ts1cmvtt.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ucmr.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ucmss.fd2
-rw-r--r--Master/texmf-dist/tex/latex-dev/base/ucmtt.fd2
145 files changed, 768 insertions, 402 deletions
diff --git a/Master/texmf-dist/doc/latex-dev/base/README.md b/Master/texmf-dist/doc/latex-dev/base/README.md
index 769562d5024..c020d51d211 100644
--- a/Master/texmf-dist/doc/latex-dev/base/README.md
+++ b/Master/texmf-dist/doc/latex-dev/base/README.md
@@ -1,7 +1,7 @@
The LaTeX kernel
================
-Release 2022-11-01 pre-release 0
+Release 2022-11-01 pre-release 1
Overview
--------
@@ -9,7 +9,7 @@ Overview
This bundle provides the core LaTeX kernel. In addition to this bundle,
a minimal LaTeX system also needs the files contained in the
-- LaTeX team documentation (`doc`)
+
- L3 programming layer (`l3kernel`)
- L3 backend interfaces (`l3backend`)
- L3 unicode support (`unicode-data`)
@@ -55,18 +55,12 @@ The following files contain further information:
- `ltx3info.tex` gives you some historical information about the LaTeX3
project
-- `manual.err` lists errata in _LaTeX: A Document Preparation System_ (Lamport)
+- `lamport-manual.err` lists errata in _LaTeX: A Document Preparation System_ (Lamport)
- `tlc2.err` lists errata in _The LaTeX Companion_ (Mittelbach et al.)
The files `ltnews*.tex` (part of the `doc` bundle) contain the LaTeX
newsletters, the highest number being the most recent.
-For historical reasons, the base distribution and the core documentation
-are bundled separately. Documentation is found in the `doc` bundle. In an
-installed TeX system, `base` and `doc` should be placed within the same
-location; the distinction is therefore primarily of importance when looking
-at the development code.
-
Installation
------------
@@ -80,10 +74,9 @@ Requirements
------------
The LaTeX kernel requires the e-TeX extensions to TeX, which were finalised
-in the late 1990s and are available in modern TeX-derived engines. Some new
-features require `\ifincsname`, which is currently available in release
-versions of pdfTeX, XeTeX and LuaTeX, and is being introduced shortly in
-e-pTeX and e-upTeX.
+in the late 1990s and are available in modern TeX-derived engines. It also
+requires a set of common post-e-TeX extensions, generally known as the
+pdfTeX additions. These are available in all modern TeX engines.
License
-------
diff --git a/Master/texmf-dist/doc/latex-dev/base/alltt.pdf b/Master/texmf-dist/doc/latex-dev/base/alltt.pdf
index 22d164744be..cf5ccb38f81 100644
--- a/Master/texmf-dist/doc/latex-dev/base/alltt.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/alltt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf b/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf
index b1b3d28e578..0f5d6bb7b08 100644
--- a/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/changes.txt b/Master/texmf-dist/doc/latex-dev/base/changes.txt
index ce72312d3d4..0c9fbba1c2a 100644
--- a/Master/texmf-dist/doc/latex-dev/base/changes.txt
+++ b/Master/texmf-dist/doc/latex-dev/base/changes.txt
@@ -6,11 +6,94 @@ completeness or accuracy and it contains some references to files that
are not part of the distribution.
================================================================================
+2022-07-10 David Carlisle <David.Carlisle@latex-project.org>
+
+ * cmfonts.fdd: avoid EC sans serif fonts at small design sizes.
+ The medium weight is bolder and wider than the bold extended.
+ Scale the 8pt font for sizes 5,6,7. gh/879
+
+2022-06-22 David Carlisle <David.Carlisle@latex-project.org>
+
+ * ltkeys.dtx:
+ add .ifnot property (.legacy_if_set_inverse:n)
+
+ * doc.dtx
+ recast Package Option declarations using \DeclareKeys
+
+2022-06-10 Ulrike Fischer <Ulrike.Fischer@latex-project.org>
+
+ * cmfonts.fdd
+ Add font definitions for slanted small caps (gh/782)
+
+2022-06-10 Ulrike Fischer <Ulrike.Fischer@latex-project.org>
+
+ * cmfonts.fdd
+ Add font definitions for slanted small caps (gh/782)
+
================================================================================
All changes above are only part of the development branch for the next release.
-================================================================================
+================================================================================
+
+#########################
+# 2022-06-01 PL5 Release
+#########################
+
+2022-07-05 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Correct name of store for raw class options list
+ Support \CurrentOption in unknown keys
+
+2022-07-04 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
+
+ * ltfssbas.dtx, ltfssdcl.dtx:
+ Ignore spaces if necessary, i.e., after display math done with $$ (gh/886)
+
+2022-07-04 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltfinal.dtx
+ Introduce \MakeTitlecase, \CaseSwitch and \DeclareCaseChangeEquivalent
+ as LaTeX2e names for expl3 case changing hooks, needed to support
+ some customisation requirements (e.g. biblatex)
+
+#########################
+# 2022-06-01 PL4 Release
+#########################
+
+2022-06-30 David Carlisle <David.Carlisle@latex-project.org>
+
+ * ltfinal.dtx: update MakeUppercase and \MakeLowercase for gh/881
+ \protectd@edef no longer needed with latest l3 code.
+ added \AddToNoCaseChangeList
+
+#########################
+# 2022-06-01 PL3 Release
+#########################
+
+2022-06-23 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
+
+ * ltxdoc.dtx (section{Useful abbreviations}):
+ Update \cmd definition to work with new \cs (gh/874)
+
+#########################
+# 2022-06-01 PL2 Release
+#########################
+
+2022-06-20 Joseph Wright <Joseph.Wright@latex-project.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Use raw options data for keyval handling
+
+2022-06-19 Joseph Wright <Joseph.Wright@latex-proejct.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Correct approach to removing keys from \@unusedoptionlist
+
+#########################
+# 2022-06-01 PL1 Release
+#########################
-2022-06-16 Joseph Wright <Joseph.Wright@latex-proejct.org>
+2022-06-16 Joseph Wright <Joseph.Wright@latex-project.org>
* ltkeys.dtx (subsection{Main mechanism})
Remove key name but avoid touching key value in \@unusedoptionlist
@@ -215,7 +298,7 @@ All changes above are only part of the development branch for the next release.
* ltplain.dtx (section{Plain \TeX}):
Alter \obeyspaces and \obeylines to use a redirection for special
- use cases (gh/367)}
+ use cases (gh/367)
2022-01-20 Frank Mittelbach <Frank.Mittelbach@latex-project.org>
diff --git a/Master/texmf-dist/doc/latex-dev/base/classes.pdf b/Master/texmf-dist/doc/latex-dev/base/classes.pdf
index a782718ef0d..87441962664 100644
--- a/Master/texmf-dist/doc/latex-dev/base/classes.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/classes.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf b/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf
index e39b67d6f15..bcdb0c99bdd 100644
--- a/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf b/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf
index 16babe34e89..3802d6b12a1 100644
--- a/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf b/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf
index 8f10c4a5b39..5057e54a02d 100644
--- a/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/doc-code.pdf b/Master/texmf-dist/doc/latex-dev/base/doc-code.pdf
index 01ee8fae11c..2f8a0c8df2b 100644
--- a/Master/texmf-dist/doc/latex-dev/base/doc-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/doc-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/doc.pdf b/Master/texmf-dist/doc/latex-dev/base/doc.pdf
index b7f2d52ba14..aba11266ef8 100644
--- a/Master/texmf-dist/doc/latex-dev/base/doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf b/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf
index 5891ba52e52..612a48bd44f 100644
--- a/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/encguide.pdf b/Master/texmf-dist/doc/latex-dev/base/encguide.pdf
index 55a843b9b28..becc70520bf 100644
--- a/Master/texmf-dist/doc/latex-dev/base/encguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/encguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/exscale.pdf b/Master/texmf-dist/doc/latex-dev/base/exscale.pdf
index cb8356298f3..b380e777d0f 100644
--- a/Master/texmf-dist/doc/latex-dev/base/exscale.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/exscale.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf b/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf
index eee7e7d9c3a..cc88987966c 100644
--- a/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf b/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf
index c155ce98b2f..a2b03458457 100644
--- a/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf b/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf
index 8168a99044d..81a23d161e6 100644
--- a/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf b/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf
index 73fe175dc81..e1c5d222ecb 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf b/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf
index 406e3d6fa46..4445df126a0 100644
--- a/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lamport-manual.pdf b/Master/texmf-dist/doc/latex-dev/base/lamport-manual.pdf
index 4383556908f..f6c1e635a72 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lamport-manual.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lamport-manual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf b/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf
index 732bfb26f8e..2cad49e1446 100644
--- a/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf b/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf
index 2dc448b2928..5af483ac785 100644
--- a/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lb2.pdf b/Master/texmf-dist/doc/latex-dev/base/lb2.pdf
index ba5f34dd123..43e435c3ae0 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lb2.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lb2.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/letter.pdf b/Master/texmf-dist/doc/latex-dev/base/letter.pdf
index ff3ce8c44dc..7c1dcd55812 100644
--- a/Master/texmf-dist/doc/latex-dev/base/letter.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/letter.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf b/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf
index e2882d2b051..9560b062fdb 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lppl.pdf b/Master/texmf-dist/doc/latex-dev/base/lppl.pdf
index 9649fdb7417..94c82b58bb7 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lppl.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lppl.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf
index f14ffecd0a3..56416966d66 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf
index 4c53d8ec8c4..40b7f4ecb53 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf
index 4b061d2a0aa..7b59fe3a026 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf
index 046c4c96aba..8a60d59829d 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf b/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf
index ce35e017454..0c0c9f29a4e 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf
index 2fcdd137032..094e4f76c7c 100644
--- a/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf b/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf
index ca6e145aba0..bae6dabc744 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltmarks-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltmarks-code.pdf
index 8073a3346f2..7fd6df326fe 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltmarks-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltmarks-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltmarks-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltmarks-doc.pdf
index 478db2f574a..bebd49d9065 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltmarks-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltmarks-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf
index 01eff648b0f..7546e0aed8b 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews.tex b/Master/texmf-dist/doc/latex-dev/base/ltnews.tex
index cba11c3ce31..8d45f77cda3 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews.tex
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews.tex
@@ -1,7 +1,7 @@
% \iffalse meta-comment
%
% Copyright (C) 2006, 2009, 2011, 2014 Heiko Oberdiek
-% Copyright (C) 2014-2021
+% Copyright (C) 2014-2022
% The LaTeX Project and any individual authors listed elsewhere
% in this file.
%
@@ -38,9 +38,9 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltnews.tex}%
- [2021/11/12 v1.4d Master file for ltnews*.tex (LaTeX Project)]
+ [2022/06/10 v1.4e Master file for ltnews*.tex (LaTeX Project)]
-\providecommand*{\lastissue}{35}
+\providecommand*{\lastissue}{36}
\InputIfFileExists{ltnews-lastissue.cfg}{}{}
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf
index e7edf21b386..3aec482defc 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf
index 160186c4e1b..e9bfcc62b09 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf
index 979e833d5ed..aa3494706f9 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf
index f2cfc633fd1..a3983345e60 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf
index a57fa4a6b4f..9d896763b8e 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf
index 657592f3103..92f3e0ef3f7 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf
index 7213bf9294c..b1302260497 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf
index 4a5dfba987b..84e87f2af89 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf
index e82d020e2e9..372f6eae3ec 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf
index f30a263d10c..2759d890b63 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf
index e4502abab13..ef59d439fa1 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf
index 7332c60ea98..e4c78b5eb05 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf
index 705c2bba3ef..373e26adae1 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf
index e54e2af71fa..622e0bf074c 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf
index 3402da5d62e..007ac69cf34 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf
index 10c2ed87254..7dc3976ba0f 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf
index d8dc2643871..2dbc414d6f2 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf
index 62051b98de0..40756259d44 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf
index 607c5e93629..fc49ae3311a 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf
index c8a813b3593..d9c123003a5 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf
index 28d1f4b3902..fde160c811a 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf
index 67fa8c18a57..e7e19e44806 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf
index 82d4c1b1502..28ecc021b30 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf
index cb6118e1131..4498ad50c1f 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf
index c637eea5f0a..57b8a9b29f0 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf
index 88a9f99bb7a..0db59d50959 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf
index 296c8d3beac..bde51913b19 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf
index aecbb27797a..a47920f8e0a 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf
index 07f98d4992c..1696257c158 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf
index 4288ec154de..aed2058cefa 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf
index 1ae3e8c4075..fd4d604bdef 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf
index 901165053f0..e4d4b6254c2 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf
index f77d04b7144..8557cfc7838 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews34.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews34.pdf
index 667790ca607..9232aadfe9f 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews34.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews34.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews35.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews35.pdf
index 62476fffbbe..67b75a4d509 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews35.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews35.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews35.tex b/Master/texmf-dist/doc/latex-dev/base/ltnews35.tex
index 0e0cda79b12..a035e4d5c72 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltnews35.tex
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews35.tex
@@ -208,7 +208,7 @@ means that existing documents are in no way affected by the work that
is carried out and is in a wider alpha or beta test phase.
Documentation about the new command and
-already existing keys are in \file{l3meta.pdf} and \file{documentmetadata-support.pdf}
+already existing keys are in \file{ltmeta} (part of \file{source2e.pdf}) and \file{documentmetadata-support.pdf}
and also in the documentation of the \pkg{pdfmanagement-testphase} package.
Package and class authors can test if a user has used \cs{DocumentMetadata}
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews36.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews36.pdf
new file mode 100644
index 00000000000..dc8c3d21ed4
--- /dev/null
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews36.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews36.tex b/Master/texmf-dist/doc/latex-dev/base/ltnews36.tex
new file mode 100644
index 00000000000..df72bc1d647
--- /dev/null
+++ b/Master/texmf-dist/doc/latex-dev/base/ltnews36.tex
@@ -0,0 +1,225 @@
+% \iffalse meta-comment
+%
+% Copyright 2021-2022
+% The LaTeX Project and any individual authors listed elsewhere
+% in this file.
+%
+% This file is part of the LaTeX base system.
+% -——————————————
+%
+% It 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.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl.txt
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2008 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+% The list of all files belonging to the LaTeX base distribution is
+% given in the file `manifest.txt'. See also `legal.txt' for additional
+% information.
+%
+% The list of derived (unpacked) files belonging to the distribution
+% and covered by LPPL is defined by the unpacking scripts (with
+% extension .ins) which are part of the distribution.
+%
+% \fi
+% Filename: ltnews36.tex
+%
+% This is issue 36 of LaTeX News.
+
+\NeedsTeXFormat{LaTeX2e}[2020-02-02]
+
+\documentclass{ltnews}
+
+%% Maybe needed only for Chris' inadequate system:
+\providecommand\Dash {\unskip \textemdash}
+
+%% NOTE: Chris' preferred hyphens!
+%%\showhyphens{parameters}
+%% \hyphenation{because parameters parameter}
+
+\usepackage[T1]{fontenc}
+
+\usepackage{lmodern,url,hologo}
+
+\usepackage{csquotes}
+\usepackage{multicol}
+\usepackage{color}
+
+\providecommand\hook[1]{\texttt{#1}}
+
+\providecommand\meta[1]{$\langle$\textrm{\itshape#1}$\rangle$}
+\providecommand\option[1]{\texttt{#1}}
+\providecommand\env[1]{\texttt{#1}}
+\providecommand\Arg[1]{\texttt\{\meta{#1}\texttt\}}
+
+
+\providecommand\eTeX{\hologo{eTeX}}
+\providecommand\XeTeX{\hologo{XeTeX}}
+\providecommand\LuaTeX{\hologo{LuaTeX}}
+\providecommand\pdfTeX{\hologo{pdfTeX}}
+\providecommand\MiKTeX{\hologo{MiKTeX}}
+\providecommand\CTAN{\textsc{ctan}}
+\providecommand\TL{\TeX\,Live}
+\providecommand\githubissue[2][]{\ifhmode\unskip\fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(%
+ \href{https://github.com/latex3/latex2e/issues/\getfirstgithubissue#2 \relax}%
+ {github issue#1 #2}%
+ )}%
+ \par\smallskip}
+%% But Chris has to mostly disable \href for his TEXPAD app:
+%% \def\href #1{} % Only For Chris' deficient TeX engine
+
+% simple solution right now (just link to the first issue if there are more)
+\def\getfirstgithubissue#1 #2\relax{#1}
+
+\providecommand\sxissue[1]{\ifhmode\unskip
+ \else
+ % githubissue preceding
+ \vskip-\smallskipamount
+ \vskip-\parskip
+ \fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(\url{https://tex.stackexchange.com/#1})}\par}
+
+\providecommand\gnatsissue[2]{\ifhmode\unskip\fi
+ \quad\penalty500\strut\nobreak\hfill
+ \mbox{\small\slshape(%
+ \href{https://www.latex-project.org/cgi-bin/ltxbugs2html?pr=#1\%2F\getfirstgithubissue#2 \relax}%
+ {gnats issue #1/#2}%
+ )}%
+ \par}
+
+\let\cls\pkg
+\providecommand\env[1]{\texttt{#1}}
+\providecommand\acro[1]{\textsc{#1}}
+
+\vbadness=1400 % accept slightly empty columns
+
+
+\makeatletter
+% maybe not the greatest design but normally we wouldn't have subsubsections
+\renewcommand{\subsubsection}{%
+ \@startsection {subsubsection}{2}{0pt}{1.5ex \@plus 1ex \@minus .2ex}%
+ {-1em}{\@subheadingfont\colonize}%
+}
+\providecommand\colonize[1]{#1:}
+\makeatother
+
+\let\finalvspace\vspace % for document layout fixes
+
+% Undo ltnews's \verbatim@font with active < and >
+\makeatletter
+\def\verbatim@font{%
+ \normalsize\ttfamily}
+\makeatletter
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand\tubcommand[1]{}
+\tubcommand{\input{tubltmac}}
+
+\publicationmonth{November}
+\publicationyear{2022 --- DRAFT version for upcoming release}
+
+\publicationissue{36}
+
+\begin{document}
+
+\tubcommand{\addtolength\textheight{4.2pc}} % only for TUB
+
+\maketitle
+{\hyphenpenalty=10000 \exhyphenpenalty=10000 \spaceskip=3.33pt \hbadness=10000
+\tableofcontents}
+
+\setlength\rightskip{0pt plus 3em}
+
+
+\medskip
+
+
+\section{Introduction}
+
+\section{New or improved commands}
+
+\section{Code improvements}
+
+\subsection{Support for slanted small caps in the EC-fonts }
+Since some time \LaTeX{} supports the combination of the shapes
+small caps and italic/slanted. The EC-fonts contain slanted small caps fonts
+but using them required the loading of an external package. Suitable font definitions
+have now been added to \pkg{t1cmd.fd} and so from now on
+\begin{verbatim}
+ \textsc{\textsl{slanted small}}
+ \textsc{\textit{italic small caps}}
+ \bfseries
+ \textsc{\textsl{bold slanted small caps}}
+ \textsc{\textit{bold italic small caps}}
+\end{verbatim}
+will give the expected result: {\fontfamily{cmr}
+\textsc{\textsl{slanted small}} \textsc{\textit{italic small caps}}
+\bfseries
+\textsc{\textsl{bold slanted small caps}} \textsc{\textit{bold italic small caps}}}
+%
+\githubissue{782}
+
+
+\subsection{EC sans serif at small sizes}
+The EC (T1 encoded Computer Modern) sans serif fonts have errors at
+small sizes. (The medium weight is bolder and wider than the bold
+extended) The default \texttt{.fd} file has been adjusted to use a
+scaled 8pt font.
+%
+\githubissue{879}
+
+
+\section{Bug fixes}
+
+\section{Changes to packages in the \pkg{amsmath} category}
+
+\section{Changes to packages in the \pkg{graphics} category}
+
+\section{Changes to packages in the \pkg{tools} category}
+
+
+\medskip
+
+\begin{thebibliography}{9}
+
+\fontsize{9.3}{11.3}\selectfont
+
+%\bibitem{36:blueprint} Frank Mittelbach and Chris Rowley:
+% \emph{\LaTeX{} Tagged PDF \Dash A blueprint for a large project}.\\
+% \url{https://latex-project.org/publications/indexbyyear/2020/}
+
+%\bibitem{36:source2e}
+% \emph{\LaTeX{} documentation on the \LaTeX{} Project Website}.\\
+% \url{https://latex-project.org/help/documentation/}
+
+%\bibitem{36:ltnews31} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 31}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews31.pdf}
+
+%\bibitem{36:ltnews32} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 32}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews32.pdf}
+
+%\bibitem{36:ltnews33} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 33}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews33.pdf}
+
+%\bibitem{36:ltnews34} \LaTeX{} Project Team:
+% \emph{\LaTeXe{} news 34}.\\
+% \url{https://latex-project.org/news/latex2e-news/ltnews34.pdf}
+%
+%\bibitem{36:ltfilehook-doc} Frank Mittelbach, Phelype Oleinik, \LaTeX{}~Project~Team:
+% \emph{The \texttt{\upshape ltfilehook} documentation}.\\
+% Run \texttt{texdoc} \texttt{ltfilehook-doc} to view.
+\end{thebibliography}
+
+
+
+\end{document}
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf
index fa5199e1715..d58f89f9945 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf
index d0e7ee73e81..eff75892bcd 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf
index a475b7424ec..4c887476823 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf
index 99c24eb7c0a..76578851f98 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf b/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf
index 07563692ff6..753b3308a28 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf
index 6d1b06cc5b1..3be77146ebc 100644
--- a/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf b/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf
index da0fa7cab98..552a8675cfe 100644
--- a/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/modguide.pdf b/Master/texmf-dist/doc/latex-dev/base/modguide.pdf
index e085c32c5ed..5898f659898 100644
--- a/Master/texmf-dist/doc/latex-dev/base/modguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/modguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf b/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf
index e0c44536aa0..97fa122ce95 100644
--- a/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/proc.pdf b/Master/texmf-dist/doc/latex-dev/base/proc.pdf
index 93cd6b8c443..eeeed891243 100644
--- a/Master/texmf-dist/doc/latex-dev/base/proc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/proc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/slides.pdf b/Master/texmf-dist/doc/latex-dev/base/slides.pdf
index cbbbfe01321..f89b9f64ff2 100644
--- a/Master/texmf-dist/doc/latex-dev/base/slides.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/slides.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf b/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf
index 609139b7414..5a92ec1246a 100644
--- a/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/source2e.pdf b/Master/texmf-dist/doc/latex-dev/base/source2e.pdf
index 0a4fe0f023b..b6bca6034f3 100644
--- a/Master/texmf-dist/doc/latex-dev/base/source2e.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/source2e.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf b/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf
index d880fd08abf..5a2d5eae9b3 100644
--- a/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf b/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf
index 12b609b372d..d3630181bdf 100644
--- a/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/tulm.pdf b/Master/texmf-dist/doc/latex-dev/base/tulm.pdf
index e7f39c7338a..513aadc9189 100644
--- a/Master/texmf-dist/doc/latex-dev/base/tulm.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/tulm.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf b/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf
index a2e85401fd6..f2a32eb6ea2 100644
--- a/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf b/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf
index 5cb860dab40..40a7c85f384 100644
--- a/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/usrguide3.tex b/Master/texmf-dist/doc/latex-dev/base/usrguide3.tex
index efec9ad2a2c..a148c77ed57 100644
--- a/Master/texmf-dist/doc/latex-dev/base/usrguide3.tex
+++ b/Master/texmf-dist/doc/latex-dev/base/usrguide3.tex
@@ -37,7 +37,7 @@
\author{\copyright~Copyright 2020-2022, \LaTeX\ Project Team.\\
All rights reserved.}
-\date{2022-02-19}
+\date{2022-07-05}
\NewDocumentCommand\cs{m}{\texttt{\textbackslash\detokenize{#1}}}
\NewDocumentCommand\marg{m}{\arg{#1}}
@@ -1054,4 +1054,59 @@ it is set to \dimeval{\topskip+\baselineskip*\inteval{40-1}}, given
the values \cs{topskip} (\dimeval{\topskip}) and \cs{baselineskip}
(\dimeval{\baselineskip}) in the current document.
+\section{Case changing}
+
+\TeX{} provides two primitives \cs{uppercase} and \cs{lowercase} for changing
+the case of text. However, these have a range of limitations: they only change
+the case of explicit characters, do not account for the surrounding context, do
+not support UTF-8 input with 8-bit engines, etc. To overcome this problem,
+\LaTeX{} provides the commands \cs{MakeUppercase}, \cs{MakeLowercase} and
+\cs{MakeTitlecase}: these offer significant enhancement over the \TeX{}
+primitives. These commands are engine-robust (\cs{protected}), and so
+can be used in moving arguments.
+
+Upper- and lower-casing are well-understood in general conversation.
+Titlecasing here follows the definition given by the Unicode Consortium: the
+first character of the input will be converted to (broadly) uppercase, and the
+rest of the input to lowercase. The full range of Unicode UTF-8 input can be
+supported, with the proviso that at present the characters set up with 8-bit
+engines match those available in standard input encodings (|T1|, |T2|, |LGR|).
+\begin{quotation}
+ \begin{tabular}{rl}
+ |\MakeUppercase{hello WORLD ßüé}| & \MakeUppercase{hello WORLD ßüé} \\
+ |\MakeLowercase{hello WORLD ßüé}| & \MakeLowercase{hello WORLD ßüé} \\
+ |\MakeTitlecase{hello WORLD ßüé}| & \MakeTitlecase{hello WORLD ßüé} \\
+ \end{tabular}
+\end{quotation}
+
+The input given to these commands is `expanded' before case changing is
+applied. This means that any commands within the input that convert to pure
+text will be case changed. Mathematical content is automatically excluded, as
+are the arguments to the commands \cs{label}, \cs{ref}, \cs{cite}, \cs{begin}
+and \cs{end}. Additional exclusions can be added using the command
+\cs{AddToNoCaseChangeList}. Input can be excluded from case changing using the
+command \cs{NoCaseChange}.
+\begin{quotation}
+ \begin{tabular}{rl}
+ |\MakeUppercase{Some text $y = mx + c$}|
+ & \MakeUppercase{Some text $y = mx + c$} \\
+ |\MakeUppercase{\NoCaseChange{iPhone}}|
+ & \MakeLowercase{\NoCaseChange{iPhone}} \\
+ \end{tabular}
+\end{quotation}
+
+To allow robust commands to be used within case changing \emph{and} to produce
+the expected output, two additional control commands are available.
+\cs{CaseSwitch} allows the user to specify the result for the four possible
+cases
+\begin{itemize}
+ \item No case changing
+ \item Uppercasing
+ \item Lowercasing
+ \item Titlecasing (only applies for the start of the input)
+\end{itemize}
+The command \cs{DeclareCaseChangeEquivalent} provides a way to substitute a
+command by an alternative version when it is found inside a case changing
+situation.
+
\end{document}
diff --git a/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf b/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf
index a2bf91d2e50..ff3d528a125 100644
--- a/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf b/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf
index 9d88470900b..2d1f29c35bd 100644
--- a/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf
+++ b/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex-dev/base/classes.dtx b/Master/texmf-dist/source/latex-dev/base/classes.dtx
index 857cfc799ee..188679d4d94 100644
--- a/Master/texmf-dist/source/latex-dev/base/classes.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/classes.dtx
@@ -53,7 +53,7 @@
%<*driver>
\ProvidesFile{classes.drv}
%</driver>
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
%<article|report|book> Standard LaTeX document class]
%<10pt|11pt|12pt> Standard LaTeX file (size option)]
% \end{macrocode}
@@ -2538,7 +2538,7 @@
% The macro above uses |\@makechapterhead|\meta{text} to format the
% heading of the chapter.
%
-% We begin by leaving some white space. The we open a group in
+% We begin by leaving some white space. Then we open a group in
% which we have a paragraph indent of 0pt, and in which we have the
% text set ragged right. We also reset the font.
% \changes{v1.3c}{1995/05/25}{replace \cs{reset@font} with
diff --git a/Master/texmf-dist/source/latex-dev/base/cmfonts.fdd b/Master/texmf-dist/source/latex-dev/base/cmfonts.fdd
index f991ee564ee..477085eaeff 100644
--- a/Master/texmf-dist/source/latex-dev/base/cmfonts.fdd
+++ b/Master/texmf-dist/source/latex-dev/base/cmfonts.fdd
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1993-2019
+% Copyright 1993-2022
% The LaTeX Project and any individual authors listed elsewhere
% in this file.
%
@@ -67,7 +67,7 @@
%<*driver, >
\ProvidesFile{cmfonts.drv}
%</driver, >
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
%
%<*driver>
\documentclass{ltxdoc}
@@ -261,13 +261,13 @@
% (thanks to Christian Cornelssen)}
% \begin{macrocode}
%<*new|ec>
-%<*!tt>
+%<*!tt&!T1cmss>
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
%<ec> <17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
%<!ec> <17.28><20.74><24.88>genb*#5}{}}
-%</!tt>
+%</!tt&!T1cmss>
% \end{macrocode}
% For monospaced fonts, the normal interpolation breaks down below
% 8pt, so scale the 8pt fonts instead.
@@ -282,6 +282,21 @@
%<ec> <35.83>genb*#5}{}}
%<!ec> <9><10><10.95><12><14.4><17.28><20.74><24.88>genb*#5}{}}
%</tt>
+% \end{macrocode}
+% \changes{v2.5l}{2022/07/10}%
+% {Avoid ec ss fonts at design size 5, 6, 7. gh/879}
+% For ec cmss fonts avoid the small design sizes which have incorrect
+% definitions.
+% (Medium weight bolder and wider than bold extended for 5pt and 6pt,
+% 7pt does not have expected contrast. Scale 8pt, matching |fix-cm|).
+% gh/879
+% \begin{macrocode}
+%<*T1cmss>
+\providecommand{\EC@ssfamily}[5]{%
+ \DeclareFontShape{#1}{#2}{#3}{#4}%
+ {<5><6><7><8>#50800%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
+%</T1cmss>
%</new|ec>
% \end{macrocode}
%
@@ -375,6 +390,8 @@
% \changes{v2.5a}{1997/01/14}
% {EC fonts}
% \changes{v2.5d}{1997/06/02}{bold sc fonts latex/2497}
+% \changes{v2.5k}{2022/06/10}{add support for slanted small caps github/782}
+%
% \begin{macrocode}
%<*ec>
\EC@family{T1}{cmr}{m}{n}{ecrm}
@@ -387,6 +404,9 @@
\EC@family{T1}{cmr}{bx}{sl}{ecbl}
\EC@family{T1}{cmr}{bx}{sc}{ecxc}
\EC@family{T1}{cmr}{m}{ui}{ecui}
+\EC@family{T1}{cmr}{m}{scsl}{ecsc}
+\EC@family{T1}{cmr}{bx}{scsl}{ecoc}
+\EC@family{T1}{cmr}{b}{scsl}{ecoc}
%</ec>
%</T1cmr>
% \end{macrocode}
@@ -489,12 +509,12 @@
% {EC fonts}
% \begin{macrocode}
%<*ec>
-\EC@family{T1}{cmss}{m}{n}{ecss}
-\EC@family{T1}{cmss}{m}{sl}{ecsi}
-\EC@family{T1}{cmss}{m}{it}{ecsi}
-\EC@family{T1}{cmss}{bx}{n}{ecsx}
-\EC@family{T1}{cmss}{bx}{it}{ecso}
-\EC@family{T1}{cmss}{bx}{sl}{ecso}
+\EC@ssfamily{T1}{cmss}{m}{n}{ecss}
+\EC@ssfamily{T1}{cmss}{m}{sl}{ecsi}
+\EC@ssfamily{T1}{cmss}{m}{it}{ecsi}
+\EC@ssfamily{T1}{cmss}{bx}{n}{ecsx}
+\EC@ssfamily{T1}{cmss}{bx}{it}{ecso}
+\EC@ssfamily{T1}{cmss}{bx}{sl}{ecso}
%</ec>
% \end{macrocode}
% The next substitution is very questionable.
diff --git a/Master/texmf-dist/source/latex-dev/base/doc.dtx b/Master/texmf-dist/source/latex-dev/base/doc.dtx
index d6b21744df0..d137038d634 100644
--- a/Master/texmf-dist/source/latex-dev/base/doc.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/doc.dtx
@@ -45,7 +45,7 @@
%<+package>
%<+package>\ProvidesPackage{doc}
%<+shortvrb>\ProvidesPackage{shortvrb}
-%<+package|shortvrb> [2022/06/08 v3.0j
+%<+package|shortvrb> [2022/07/03 v3.0k
%<+package|shortvrb> Standard LaTeX documentation package V3 (FMi)]
%\catcode`\<=12
%
@@ -260,8 +260,8 @@
% \begin{abstract}
% Roughly 30 years ago (version 1.0 was dated 1988/05/05) I wrote
% the first version of the \DOC package, a package to provide code
-% documentation for \TeX{} code. Since then it has be used all over
-% the place to document the \LaTeX{} kernel and most of the
+% documentation for \TeX{} code. Since then it has been used all
+% over the place to document the \LaTeX{} kernel and most of the
% packages that are nowadays available. The core code of version 2
% (which is the current version) exists since 1998, i.e., for 20
% years.
@@ -1909,112 +1909,38 @@
% should be altered further.
% \fmi{cleanup replacement of kvoptions}
%
-% \begin{macrocode}
-\ExplSyntaxOn
-% \end{macrocode}
% Some keys are available as options for use in \cs{usepackage} some are
% for the generated item \api's:
-% \fmi{cleanup documentation (and code once the new key interface is there)}
-% \begin{macrocode}
-\newif \ifdoc@noprint
-\newif \ifdoc@noindex
-\newif \ifdoc@hyperref \doc@hyperreftrue
-\newif \ifdoc@multicol \doc@multicoltrue
-\newif \ifdoc@debugshow
-\newif \ifdoc@reportchangedates
-\keys_define:nn {doc}
- {
- noprint .choice:,
- noprint / true .code:n = { \legacy_if_set_true:n { doc@noprint } },
- noprint / false .code:n = { \legacy_if_set_false:n { doc@noprint } },
- noprint .default:n = { true },
- noindex .choice:,
- noindex / true .code:n = { \legacy_if_set_true:n { doc@noindex } },
- noindex / false .code:n = { \legacy_if_set_false:n { doc@noindex } },
- noindex .default:n = { true },
- hyperref .choice:,
- hyperref / true .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- hyperref / false .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- hyperref .default:n = { true },
-% \end{macrocode}
+% \changes{v3.0k}{2022/06/22}{Use \cs{DeclareKeys}}
% \changes{v3.0h}{2022/06/01}{fix choice key name (gh/750)}
-% \begin{macrocode}
- nohyperref .choice:,
- nohyperref / true .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- nohyperref / false .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- nohyperref .default:n = { true },
- multicol .choice:,
- multicol / true .code:n = { \legacy_if_set_true:n { doc@multicol } },
- multicol / false .code:n = { \legacy_if_set_false:n { doc@multicol } },
- multicol .default:n = { true },
- nomulticol .choice:,
- nomulticol / true .code:n = { \legacy_if_set_false:n { doc@multicol } },
- nomulticol / false .code:n = { \legacy_if_set_true:n { doc@multicol } },
-% \end{macrocode}
% \changes{v3.0h}{2022/06/01}{fix default key name (gh/750)}
% \begin{macrocode}
- nomulticol .default:n = { true },
- debugshow .choice:,
- debugshow / true .code:n = { \legacy_if_set_true:n { doc@debugshow } },
- debugshow / false .code:n = { \legacy_if_set_false:n { doc@debugshow } },
- debugshow .default:n = { true },
- reportchangedates .choice:,
- reportchangedates / true .code:n = { \legacy_if_set_true:n { doc@reportchangedates } },
- reportchangedates / false .code:n = { \legacy_if_set_false:n { doc@reportchangedates } },
- reportchangedates .default:n = { true },
- }
-% \end{macrocode}
-% This one is for \cs{usepackage} and \cs{NewDocElement}:
-% \begin{macrocode}
-\newif \ifdoc@toplevel \doc@topleveltrue
-\keys_define:nn {doc}
+\DeclareKeys
{
- toplevel .choice:,
- toplevel / true .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- toplevel / false .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- toplevel .default:n = { true },
- notoplevel .choice:,
- notoplevel / true .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- notoplevel / false .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- notoplevel .default:n = { true }
+ noprint .if = {doc@noprint},
+ noindex .if = {doc@noindex},
+ hyperref .if = {doc@hyperref},
+ nohyperref .ifnot = {doc@hyperref},
+ multicol .if = {doc@multicol},
+ nomulticol .ifnot = {doc@multicol},
+ debugshow .if = {doc@debugshow},
+ reportchangedates .if = {doc@reportchangedates},
+ toplevel .if = {doc@toplevel},
+ notoplevel .ifnot = {doc@toplevel},
+ macrolike .if = {doc@macrolike},
+ envlike .ifnot = {doc@macrolike},
+ idxtype .store = \doc@idxtype,
+ idxgroup .store = \doc@idxgroup,
+ printtype .store = \doc@printtype,
+ outer .if = {doc@outer},
}
% \end{macrocode}
-% These are for \cs{NewDocElement}:
-% \begin{macrocode}
-\newif \ifdoc@macrolike
-\keys_define:nn {doc}
- {
- macrolike .choice:,
- macrolike / true .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- macrolike / false .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- macrolike .default:n = { true },
- envlike .choice:,
- envlike / true .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- envlike / false .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- envlike .default:n = { true }
- }
-
-\keys_define:nn { doc }
- {
- idxtype .tl_set:N = \doc@idxtype,
- idxgroup .tl_set:N = \doc@idxgroup,
- printtype .tl_set:N = \doc@printtype
- }
-% \end{macrocode}
-% And this one only for instances of doc elements in the document, it
-% covers the case where you want to document a macro which is
-% declared to be \cs{outer}. This is not a concept officially
-% supported by \LaTeX{} but there are cases when it gets used.
+%
+% Setting these options to true initially.
% \begin{macrocode}
-\newif\ifdoc@outer
-\keys_define:nn {doc}
- {
- outer .choice:,
- outer / true .code:n = { \legacy_if_set_true:n { doc@outer } },
- outer / false .code:n = { \legacy_if_set_false:n { doc@outer } },
- outer .default:n = { true },
- }
-\ExplSyntaxOff
+\doc@hyperreftrue
+\doc@multicoltrue
+\doc@topleveltrue
% \end{macrocode}
%
% \subsection{Processing the package keys}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltclass.dtx b/Master/texmf-dist/source/latex-dev/base/ltclass.dtx
index 20e59353ec0..35c4251fcea 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltclass.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltclass.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltclass.dtx}
- [2022/04/16 v1.5b LaTeX Kernel (Class & Package Interface)]
+ [2022/06/20 v1.5c LaTeX Kernel (Class & Package Interface)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltclass.dtx}
@@ -2150,7 +2150,7 @@
% actions prepend \cs{@currpath} to \cs{@currname} (namely loading,
% as we have to respect the given path).
%
-% A file substituiton isn't followed just yet because at this point
+% A file substitution isn't followed just yet because at this point
% we are parsing user input, so the file is still what the user
% asked for, and not the file actually loaded.
% \begin{macrocode}
@@ -2176,6 +2176,7 @@
\@ifl@aded\@currext\@currname
% \end{macrocode}
% \changes{v1.5b}{2022/03/18}{Switch to \cs{ProcessKeyOptions}}
+% \changes{v1.5c}{2022/06/20}{Pass raw options to \cs{ProcessKeyOptions}}
% In the current preferred approach, a key family name will exist for
% processing using \pkg{ltkeys}. In that case, we replace the previous
% package options with the new ones, then call the key handler.
@@ -2185,7 +2186,9 @@
\@ifundefined{opt@fam@\@currname.\@currext}
{\@onefilewithoptions@clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap@space#2 \@empty}%
+ \@namedef{@raw@opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt@fam@\@currname.\@currext\endcsname]%
diff --git a/Master/texmf-dist/source/latex-dev/base/ltfinal.dtx b/Master/texmf-dist/source/latex-dev/base/ltfinal.dtx
index b1b8ff953be..fafd0c69126 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltfinal.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltfinal.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltfinal.dtx}
- [2022/06/02 v2.2u LaTeX Kernel (Final Settings)]
+ [2022/07/05 v2.2w LaTeX Kernel (Final Settings)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltfinal.dtx}
@@ -1063,11 +1063,12 @@
% \end{macrocode}
%
% \begin{macro}{\MakeUppercase}
-% \begin{macro}{\MakeUppercase}
+% \begin{macro}{\MakeLowercase}
+% \begin{macro}{\MakeTitlecase}
% \begin{macro}{\NoCaseChange}
-% \begin{macro}{\@uclclist}
-% \begin{macro}{\@expl@text@lowercase@@n}
-% \begin{macro}{\@expl@text@uppercase@@n}
+% \begin{macro}{\AddToNoCaseChangeList}
+% \begin{macro}{\CaseSwitch}
+% \begin{macro}{\DeclareCaseChangeEquivalent}
% \begin{macro}{\@uclclist}
%
%
@@ -1077,82 +1078,71 @@
% And whilst we're doing things with uc/lc tables, here are two
% commands to upper- and lower-case a string.
%
-% \emph{Note} that this implementation is subject to change! At
-% the moment we're not providing any way to extend the list of
-% uc/lc commands, since finding a good interface is difficult.
-% These commands have some nasty features, such as uppercasing
-% mathematics, environment names, labels, etc. A much better
-% long-term solution is to use all-caps fonts, but these aren't
-% generally available.
%
-% Two wrappers around the L3 case changing functions.
+% \changes{v2.1h}{2019/09/14}{Expand UTF8 chars when case changing (github/177)}
+% \changes{v2.2r}{2022/02/20}
+% {Use \cs{@expl@text@uppercase@@n}, removing local redefinition of \cs{UTF@two@octets@noexpand}}%
+% \changes{v2.2t}{2022/04/21}{Support \cs{noexpand} in argument of \cs{@expl@text@uppercase@@n}}
+% \changes{v2.2v}{2022/06/30}{Just use \cs{text_lowercase:n} without \cs{protectd@edf} gh/881x}%
+% \changes{v2.2w}{2022/07/04}{Introduced \cs{CaseSwitch}, \cs{DeclareCaseChangeEquivalent} and \cs{MakeTitlecase} to support hooking into case changing gh/889}%
+% Wrappers around the L3 case changing functions.
% |\protected| to make them mostly safe as replacements for |uppercase|
% and |\lowercase|.
+%
+% In
+%\begin{verbatim}
+% \markboth{\MakeUppercase\contentsname}
+% {\MakeUppercase\contentsname}
+%\end{verbatim}
+% then the uppercasing is only done to the first letter of the
+% contents name, since the mark expands out to:
+%\begin{verbatim}
+% \mark{\MakeUppercase Table of Contents}
+% {\MakeUppercase Table of Contents}
+%\end{verbatim}
+% In order to get round this, we redefine |\MakeUppercase| and
+% |\MakeLowercase| to grab their argument and brace it.
+%
+% Earlier versions needed to procsss |\@uclclist| in an |\edef|
+% to handle legacy input encodings, but recent (2022) expl3 versions
+% handle non-UTF8 text natively so we simply call the |\text_...case:n|
+% functions.
% \begin{macrocode}
\ExplSyntaxOn
-\protected\def\@expl@text@lowercase@@n{\text_lowercase:n}
-\protected\def\@expl@text@uppercase@@n{\text_uppercase:n}
+\cs_new_protected_nopar:cpn{MakeUppercase~}{\text_uppercase:n}
+\cs_set_nopar:Npx\MakeUppercase#1{\use:c{MakeUppercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeLowercase~}{\text_lowercase:n}
+\cs_set_nopar:Npx\MakeLowercase#1{\use:c{MakeLowercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeTitlecase~}{\text_titlecase:n}
+\cs_set_nopar:Npx\MakeTitlecase#1{\use:c{MakeTitlecase~}{#1}}
% \end{macrocode}
%
% \changes{v2.2u}{2022/06/02}{Add \cs{NoCaseChange}}
+% \changes{v2.2u}{2022/06/30}{Add \cs{AddToNoCaseChangeList}}
% |\NoCaseChange| protects its argument from the case change functions.
+%
+% |\AddToNoCaseChangeList| Allows new commands to protect their arguments, eg
+% |AddToNoCaseChangeList{\eqref}| would protect the argument of |\eqref|
+% in the same way as the argument of |\ref|.
% \begin{macrocode}
-\tl_put_right:Nn \l_text_case_exclude_arg_tl { \NoCaseChange }
+\cs_new_protected_nopar:Npn\AddToNoCaseChangeList
+ {\tl_put_right:Nn \l_text_case_exclude_arg_tl}
+\AddToNoCaseChangeList{ \NoCaseChange }
\cs_new_protected:Npn \NoCaseChange #1 {#1}
+\cs_new_eq:NN \CaseSwitch \text_case_switch:nnnn
+\cs_new_eq:NN \DeclareCaseChangeEquivalent
+ \text_declare_case_equivalent:Nn
\ExplSyntaxOff
% \end{macrocode}
%
-% \begin{macrocode}
-\DeclareRobustCommand{\MakeUppercase}[1]{{%
- \def\i{I}\def\j{J}%
- \def\reserved@a##1##2{\let##1##2\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
-% \end{macrocode}
-% Tell UTF-8 processing to process chars even though we are in an \cs{protected@edef}.
-% \changes{v2.1h}{2019/09/14}{Expand UTF8 chars when case changing (github/177)}
-% \changes{v2.2r}{2022/02/20}
-% {Use \cs{@expl@text@uppercase@@n}, removing local redefinition of \cs{UTF@two@octets@noexpand}}%
-% \changes{v2.2t}{2022/04/21}{Support \cs{noexpand} in argument of \cs{@expl@text@uppercase@@n}}
-% \begin{macrocode}
- \protected@edef\reserved@a{\@expl@text@uppercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
-\DeclareRobustCommand{\MakeLowercase}[1]{{%
- \def\reserved@a##1##2{\let##2##1\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\@expl@text@lowercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
-% \end{macrocode}
-%
% \changes{v2.2q}{2021/09/06}{Correctly upper and lowercase
% \cs{ij} and \cs{IJ} (gh/658)}
% \begin{macrocode}
\def\@uclclist{\oe\OE\o\O\ae\AE
\dh\DH\dj\DJ\l\L\ng\NG\ss\SS\ij\IJ\th\TH}
% \end{macrocode}
-% The above code works, but has the nasty side-effect that if you
-% say something like:
-%\begin{verbatim}
-% \markboth{\MakeUppercase\contentsname}
-% {\MakeUppercase\contentsname}
-%\end{verbatim}
-% then the uppercasing is only done to the first letter of the
-% contents name, since the mark expands out to:
-%\begin{verbatim}
-% \mark{\protect\MakeUppercase Table of Contents}
-% {\protect\MakeUppercase Table of Contents}
-%\end{verbatim}
-% In order to get round this, we redefine |\MakeUppercase| and
-% |\MakeLowercase| to grab their argument and brace it. This is a
-% very low-level hack, and is \emph{not} recommended practice!
-% This is an instance of a general problem that makes it unsafe to
-% grab arguments unbraced, and probably needs a more general
-% solution. For the moment though, this hack will do:
-% \begin{macrocode}
-\protected@edef\MakeUppercase#1{\MakeUppercase{#1}}
-\protected@edef\MakeLowercase#1{\MakeLowercase{#1}}
-% \end{macrocode}
+%
+% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltfssbas.dtx b/Master/texmf-dist/source/latex-dev/base/ltfssbas.dtx
index d013ec0ecbc..cc43622a4bc 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltfssbas.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltfssbas.dtx
@@ -35,7 +35,7 @@
%
%
\ProvidesFile{ltfssbas.dtx}
- [2021/06/09 v3.2j LaTeX Kernel (NFSS Basic Macros)]
+ [2022/07/04 v3.2k LaTeX Kernel (NFSS Basic Macros)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -1127,26 +1127,72 @@
% \end{macro}
%
%
-% \begin{macro}{\frozen@everymath}
+%
+
+%
+% \begin{macro}{\frozen@everydisplay}
% \changes{v2.1a}{1994/01/17}{New math font setup}
% Now we define the behaviour of the frozen hooks: first
% check the math setup then call the user hook.
+%
+% The check code may push tokens after the math formula with
+% \cs{aftergroup} and they would prevent a \verb=$$= from dropping
+% following spaces. We therefore use a switch to be set as the
+% first thing after the group so that following code can determine
+% if there was a display or some inline math (in the latter case
+% we better not drop spaces).
+% After setting the switch we also have to place \cs{ignorespaces}
+% because setting the switch may be the only thing that happens
+% after the display.
+% \changes{v3.2k}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% The issue with handling of spaces was found in 2022, but it is
+% really a bug fix for the code added in 2021/11.
% \begin{macrocode}
-\frozen@everymath = {\check@mathfonts
- \the\everymath}
+%</2ekernel>
+%<latexrelease>\IncludeInRelease{2021/11/15}
+%<latexrelease> {\frozen@everydisplay}{Handle spaces after math}%
+%<*2ekernel|latexrelease>
+\frozen@everydisplay = {%
+ \aftergroup\@ignoretrue \aftergroup\ignorespaces
+ \check@mathfonts
+ \the\everydisplay}
% \end{macrocode}
% \end{macro}
-%
-%
-% \begin{macro}{\frozen@everydisplay}
+
+
+% \begin{macro}{\frozen@everymath}
% \changes{v2.1a}{1994/01/17}{New math font setup}
-% Ditto for the display hook.
+% \changes{v3.2k}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% The frozen code for inline math is similar, except that here we
+% do not want to drop following spaces.
% \begin{macrocode}
-\frozen@everydisplay = {\check@mathfonts
- \the\everydisplay}
+\frozen@everymath = {%
+ \aftergroup\@ignorefalse
+ \check@mathfonts
+ \the\everymath}
% \end{macrocode}
% \end{macro}
%
+% \begin{macrocode}
+%</2ekernel|latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<latexrelease>\IncludeInRelease{2020/10/01}
+%<latexrelease> {\frozen@everydisplay}{Handle spaces after math}%
+%<latexrelease>
+%<latexrelease>\frozen@everydisplay = {\check@mathfonts
+%<latexrelease> \the\everydisplay}
+%<latexrelease>\frozen@everymath = {\check@mathfonts
+%<latexrelease> \the\everymath}
+%<latexrelease>
+%<latexrelease>\EndIncludeInRelease
+%<*2ekernel>
+% \end{macrocode}
+%
+%
+%
+%
+%
+%
% \changes{v3.0q}{1996/07/27}{\cs{if@inmath} switch removed}
%
% \begin{macro}{\curr@math@size}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx b/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx
index 65bc40803e9..dd9f12f802c 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx
@@ -36,7 +36,7 @@
%
%
\ProvidesFile{ltfssdcl.dtx}
- [2021/10/15 v3.0y LaTeX Kernel (NFSS Declarative Interface)]
+ [2022/07/04 v3.0z LaTeX Kernel (NFSS Declarative Interface)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -602,8 +602,8 @@
% math mode, so we use some recursive \cs{group_insert_after:N} for this
% before we execute \cs{mv@\meta{version}@reset}.
% \begin{macrocode}
- \group_insert_after:N \__nfss_init_mv_freeze:N \exp_after:wN
- \group_insert_after:N \cs:w mv@#1@reset \cs_end:
+ \group_insert_after:N \__nfss_init_mv_freeze:N
+ \exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
% \end{macrocode}
% The \cs{check@mathfonts} is called at the very beginning of each
% math formula, so it is a good way to hook in the resetting.
@@ -650,6 +650,17 @@
% \begin{macrocode}
\@font@info{No~ math~ alphabet~ change~ to~ frozen~ version~ #1}
}
+% \end{macrocode}
+% If this is executed after a math display, we may have to arrange
+% for ignoring spaces, because they are now hidden if
+% the tokens from above intervene. This is signaled by the 2e
+% switch \texttt{@ignore} which is set in \cs{frozen@everymath} and
+% \cs{frozen@everydisplay}.
+%
+% This is all 2e code so we use that syntax.
+% \changes{v3.0z}{2022/07/04}{Ignore spaces if necessary (gh/886)}
+% \begin{macrocode}
+ \if@ignore \ignorespaces \fi
}
}
% \end{macrocode}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltkeys.dtx b/Master/texmf-dist/source/latex-dev/base/ltkeys.dtx
index c6dfa5f6ddb..df671d4259f 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltkeys.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltkeys.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltkeys.dtx}
- [2022/06/16 v1.0g LaTeX Kernel (Kevyal options)]
+ [2022/07/05 v1.0i LaTeX Kernel (Kevyal options)]
% \iffalse
\documentclass{l3doc}
\GetFileInfo{ltkeys.dtx}
@@ -72,6 +72,7 @@
% \begin{itemize}
% \item \texttt{.code} --- execute arbitrary code
% \item \texttt{.if} --- sets a \TeX{} \cs{if...} switch
+% \item \texttt{.ifnot} --- sets an inverted \TeX{} \cs{if...} switch
% \item \texttt{.store} --- stores a value in a macro
% \item \texttt{.usage} -- defines whether the option can be given only
% when loading (\texttt{load}), in the preamble (\texttt{preamble}) or
@@ -152,11 +153,13 @@
%
% \subsection{Key properties}
%
-% \begin{macro}{.code, .if, .store, .usage}
+% \begin{macro}{.code, .if, .ifnot, .store, .usage}
% \changes{v1.0b}{2022/02/05}
% {Create properties in \texttt{ltlkeys}}
% \changes{v1.0c}{2022/02/07}
% {Correct \texttt.{.code} property}
+% \changes{v1.0i}{2022/06/22}
+% {Add \texttt.{.notif} property}
% \begin{macrocode}
\group_begin:
\cs_set_protected:Npn \@@_tmp:nn #1#2
@@ -170,6 +173,7 @@
\@@_tmp:nn
{ code:n } { code }
{ legacy_if_set:n } { if }
+ { legacy_if_set_inverse:n } { ifnot }
{ tl_set:N } { store }
{ usage:n } { usage }
{ \q_recursion_tail } { }
@@ -205,6 +209,7 @@
% \begin{macro}{\@@_options_aux:n}
% \changes{v1.0b}{2022/01/15}
% {Clear option list in end-of-package hook}
+% \changes{v1.0i}{2022/07/05}{Support \cs{CurrentOption}}
% \begin{macro}{\@@_options_end:}
% The main function calls functions to collect up the global and local
% options into \cs{l_@@_options_clist} before calling the
@@ -239,7 +244,8 @@
{ \keys_define:nn {#1} { unknown .undefine: } }
}
\bool_set_true:N \l_@@_options_loading_bool
- \keys_set:nV {#1} \l_@@_options_clist
+ \clist_map_variable:NNn \l_@@_options_clist \CurrentOption
+ { \keys_set:nV {#1} \CurrentOption }
\bool_set_false:N \l_@@_options_loading_bool
\AtEndOfPackage { \cs_set_eq:NN \@unprocessedoptions \scan_stop: }
\@@_option_end:
@@ -258,6 +264,7 @@
%
% \begin{macro}{\@@_options_global:n}
% \changes{v1.0f}{2022/03/18}{Simplify to always cover global options}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
% Global (class) options are handled differently for \LaTeXe{} packages
% and classes. Hence this function is essentially a check on the current
% file type. The initial test is needed as \LaTeXe{} allows variables to
@@ -266,7 +273,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_global:n #1
{
- \cs_if_eq:NNF \@classoptionslist \scan_stop:
+ \cs_if_eq:NNF \@raw@classoptionslist \scan_stop:
{
\cs_if_eq:NNTF \@currext \@clsextension
{ \@@_options_class:n {#1} }
@@ -278,8 +285,11 @@
%
% \begin{macro}{\@@_options_class:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
-% \begin{macro}{\@@_options_remove:nnn}
-% \changes{v1.0g}{2022/06/16}{New function}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_class:nnn}
+% \changes{v1.0h}{2022/06/20}{New function}
+% \changes{v1.0i}{2022/07/05}{Correct naming of raw class options storage}
% For classes, each option (stripped of any content after |=|)
% is checked for existence as a key. If found, the option is added to
% the combined list for processing. On the other hand, unused options
@@ -289,36 +299,44 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_class:n #1
{
- \cs_if_free:cF { opt@ \@currname . \@currext }
+ \cs_if_free:cF { @raw@opt@ \@currname . \@currext }
{
\keys_if_exist:nnTF {#1} { unknown }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
{
- \clist_map_inline:cn { opt@ \@currname . \@currext }
+ \clist_map_inline:cn { @raw@opt@ \@currname . \@currext }
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_class:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
}
}
}
-\cs_new_protected:Npn \@@_options_remove:nnn #1#2#3
+\cs_new_protected:Npn \@@_options_class:nnn #1#2#3
{
\keys_if_exist:nnTF {#3} {#1}
{ \clist_put_right:Nn \l_@@_options_clist {#2} }
- { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ {
+ \str_if_eq:eeF
+ { \exp_not:v { @raw@opt@ \@currname . \@currext } }
+ { \exp_not:V \@raw@classoptionslist }
+ { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ }
}
-\cs_generate_variant:Nn \@@_options_remove:nnn { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macro}{\@@_options_package:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_package:nnn}
+% \changes{v1.0h}{2022/06/19}{New function}
% For global options when processing a package, the tasks are slightly
% different from those for a class. The check is the same, but here
% there is nothing to do if the option is not applicable. Each valid
@@ -326,18 +344,28 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_package:n #1
{
- \clist_map_inline:Nn \@classoptionslist
+ \clist_map_inline:Nn \@raw@classoptionslist
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_package:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
}
+\cs_new_protected:Npn \@@_options_package:nnn #1#2#3
+ {
+ \keys_if_exist:nnT {#3} {#1}
+ {
+ \clist_put_right:Nn \l_@@_options_clist {#2}
+ \clist_remove_all:Nn \@unusedoptionlist {#1}
+ }
+ }
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\@@_options_local:}
-% If local options are found, the are added to the processing list.
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% If local options are found, they are added to the processing list.
% \LaTeXe{} stores options for each file in a macro which may or may not
% exist, hence the need to use \cs{cs_if_exist:c}.
% \begin{macrocode}
@@ -345,10 +373,10 @@
{
\cs_if_eq:NNF \@currext \@clsextension
{
- \cs_if_exist:cT { opt@ \@currname . \@currext }
+ \cs_if_exist:cT { @raw@opt@ \@currname . \@currext }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
}
}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltvers.dtx b/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
index cd228e62b4c..024d1078400 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
@@ -115,7 +115,7 @@
{2022-06-01}
%</2ekernel|latexrelease>
%<*2ekernel>
-\def\patch@level{-0}
+\def\patch@level{-1}
% \end{macrocode}
%
% \begin{macro}{\development@branch@name}
diff --git a/Master/texmf-dist/source/latex-dev/base/ltxdoc.dtx b/Master/texmf-dist/source/latex-dev/base/ltxdoc.dtx
index f68c45ee360..46c324c5900 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltxdoc.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltxdoc.dtx
@@ -30,7 +30,7 @@
%
%<class>\NeedsTeXFormat{LaTeX2e}
%<class>\ProvidesClass{ltxdoc}
-%<class> [2022/06/14 v2.1g Standard LaTeX documentation class]
+%<class> [2022/06/22 v2.1h Standard LaTeX documentation class]
%
%<*driver>
\documentclass{ltxdoc}
@@ -294,10 +294,12 @@
% \changes{v2.0k}{1994/05/21}{New definition, so \cmd\{ works.}
% \begin{macro}{\cs}
% \changes{v2.0d}{1994/03/17}{Add \cs{cs}}
+% \changes{v2.1h}{2022/06/22}{Update \cs{cmd} definition to work with new \cs{cs}}
% \begin{macrocode}
-\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}}
+%\DeclareRobustCommand\cs[1]... % defined later
+%\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}} % can't use with new \cs
+\def\cmd#1{\texttt{\char`\\\expandafter\cmd@to@cs\string#1}}
\def\cmd@to@cs#1#2{\char\number`#2\relax}
-%\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} % already part of doc.sty
% \end{macrocode}
% \end{macro}
% \end{macro}
diff --git a/Master/texmf-dist/tex/latex-dev/base/article.cls b/Master/texmf-dist/tex/latex-dev/base/article.cls
index d3c6498a07b..1488c02e760 100644
--- a/Master/texmf-dist/tex/latex-dev/base/article.cls
+++ b/Master/texmf-dist/tex/latex-dev/base/article.cls
@@ -43,7 +43,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{article}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX document class]
\newcommand\@ptsize{}
\newif\if@restonecol
diff --git a/Master/texmf-dist/tex/latex-dev/base/bk10.clo b/Master/texmf-dist/tex/latex-dev/base/bk10.clo
index 728e33406a5..3befcaa3945 100644
--- a/Master/texmf-dist/tex/latex-dev/base/bk10.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/bk10.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{bk10.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
diff --git a/Master/texmf-dist/tex/latex-dev/base/bk11.clo b/Master/texmf-dist/tex/latex-dev/base/bk11.clo
index 4206d873481..5bec4cf1184 100644
--- a/Master/texmf-dist/tex/latex-dev/base/bk11.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/bk11.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{bk11.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xipt{13.6}%
diff --git a/Master/texmf-dist/tex/latex-dev/base/bk12.clo b/Master/texmf-dist/tex/latex-dev/base/bk12.clo
index e33fefc2e81..b38d1c7c590 100644
--- a/Master/texmf-dist/tex/latex-dev/base/bk12.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/bk12.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{bk12.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xiipt{14.5}%
diff --git a/Master/texmf-dist/tex/latex-dev/base/book.cls b/Master/texmf-dist/tex/latex-dev/base/book.cls
index d4f775775ac..28a99524e79 100644
--- a/Master/texmf-dist/tex/latex-dev/base/book.cls
+++ b/Master/texmf-dist/tex/latex-dev/base/book.cls
@@ -43,7 +43,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{book}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX document class]
\newcommand\@ptsize{}
\newif\if@restonecol
diff --git a/Master/texmf-dist/tex/latex-dev/base/doc.sty b/Master/texmf-dist/tex/latex-dev/base/doc.sty
index 586b35af069..bbaa9a9937e 100644
--- a/Master/texmf-dist/tex/latex-dev/base/doc.sty
+++ b/Master/texmf-dist/tex/latex-dev/base/doc.sty
@@ -53,7 +53,7 @@
\DeclareCurrentRelease{v3}{2022-06-01}
\ProvidesPackage{doc}
- [2022/06/08 v3.0j
+ [2022/07/03 v3.0k
Standard LaTeX documentation package V3 (FMi)]
%%
%% Package `doc' to use with LaTeX 2e
@@ -67,88 +67,28 @@
\catcode`\^^A=14
\catcode`\^^X=14
\AtBeginDocument{\catcode`\^^A=14\relax\catcode`\^^X=14\relax}
-\ExplSyntaxOn
-\newif \ifdoc@noprint
-\newif \ifdoc@noindex
-\newif \ifdoc@hyperref \doc@hyperreftrue
-\newif \ifdoc@multicol \doc@multicoltrue
-\newif \ifdoc@debugshow
-\newif \ifdoc@reportchangedates
-\keys_define:nn {doc}
- {
- noprint .choice:,
- noprint / true .code:n = { \legacy_if_set_true:n { doc@noprint } },
- noprint / false .code:n = { \legacy_if_set_false:n { doc@noprint } },
- noprint .default:n = { true },
- noindex .choice:,
- noindex / true .code:n = { \legacy_if_set_true:n { doc@noindex } },
- noindex / false .code:n = { \legacy_if_set_false:n { doc@noindex } },
- noindex .default:n = { true },
- hyperref .choice:,
- hyperref / true .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- hyperref / false .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- hyperref .default:n = { true },
- nohyperref .choice:,
- nohyperref / true .code:n = { \legacy_if_set_false:n { doc@hyperref } },
- nohyperref / false .code:n = { \legacy_if_set_true:n { doc@hyperref } },
- nohyperref .default:n = { true },
- multicol .choice:,
- multicol / true .code:n = { \legacy_if_set_true:n { doc@multicol } },
- multicol / false .code:n = { \legacy_if_set_false:n { doc@multicol } },
- multicol .default:n = { true },
- nomulticol .choice:,
- nomulticol / true .code:n = { \legacy_if_set_false:n { doc@multicol } },
- nomulticol / false .code:n = { \legacy_if_set_true:n { doc@multicol } },
- nomulticol .default:n = { true },
- debugshow .choice:,
- debugshow / true .code:n = { \legacy_if_set_true:n { doc@debugshow } },
- debugshow / false .code:n = { \legacy_if_set_false:n { doc@debugshow } },
- debugshow .default:n = { true },
- reportchangedates .choice:,
- reportchangedates / true .code:n = { \legacy_if_set_true:n { doc@reportchangedates } },
- reportchangedates / false .code:n = { \legacy_if_set_false:n { doc@reportchangedates } },
- reportchangedates .default:n = { true },
- }
-\newif \ifdoc@toplevel \doc@topleveltrue
-\keys_define:nn {doc}
+\DeclareKeys
{
- toplevel .choice:,
- toplevel / true .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- toplevel / false .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- toplevel .default:n = { true },
- notoplevel .choice:,
- notoplevel / true .code:n = { \legacy_if_set_false:n { doc@toplevel } },
- notoplevel / false .code:n = { \legacy_if_set_true:n { doc@toplevel } },
- notoplevel .default:n = { true }
+ noprint .if = {doc@noprint},
+ noindex .if = {doc@noindex},
+ hyperref .if = {doc@hyperref},
+ nohyperref .ifnot = {doc@hyperref},
+ multicol .if = {doc@multicol},
+ nomulticol .ifnot = {doc@multicol},
+ debugshow .if = {doc@debugshow},
+ reportchangedates .if = {doc@reportchangedates},
+ toplevel .if = {doc@toplevel},
+ notoplevel .ifnot = {doc@toplevel},
+ macrolike .if = {doc@macrolike},
+ envlike .ifnot = {doc@macrolike},
+ idxtype .store = \doc@idxtype,
+ idxgroup .store = \doc@idxgroup,
+ printtype .store = \doc@printtype,
+ outer .if = {doc@outer},
}
-\newif \ifdoc@macrolike
-\keys_define:nn {doc}
- {
- macrolike .choice:,
- macrolike / true .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- macrolike / false .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- macrolike .default:n = { true },
- envlike .choice:,
- envlike / true .code:n = { \legacy_if_set_false:n { doc@macrolike } },
- envlike / false .code:n = { \legacy_if_set_true:n { doc@macrolike } },
- envlike .default:n = { true }
- }
-
-\keys_define:nn { doc }
- {
- idxtype .tl_set:N = \doc@idxtype,
- idxgroup .tl_set:N = \doc@idxgroup,
- printtype .tl_set:N = \doc@printtype
- }
-\newif\ifdoc@outer
-\keys_define:nn {doc}
- {
- outer .choice:,
- outer / true .code:n = { \legacy_if_set_true:n { doc@outer } },
- outer / false .code:n = { \legacy_if_set_false:n { doc@outer } },
- outer .default:n = { true },
- }
-\ExplSyntaxOff
+\doc@hyperreftrue
+\doc@multicoltrue
+\doc@topleveltrue
\ProcessKeyOptions
\newif\ifscan@allowed \scan@allowedtrue
\def\SetupDoc#1{%
diff --git a/Master/texmf-dist/tex/latex-dev/base/latex.ltx b/Master/texmf-dist/tex/latex-dev/base/latex.ltx
index 9a7f3b7099e..7ca690a8c99 100644
--- a/Master/texmf-dist/tex/latex-dev/base/latex.ltx
+++ b/Master/texmf-dist/tex/latex-dev/base/latex.ltx
@@ -706,7 +706,7 @@
\def\fmtname{LaTeX2e}
\edef\fmtversion
{2022-06-01}
-\def\patch@level{-0}
+\def\patch@level{-1}
\edef\development@branch@name{develop \the\year-\the\month-\the\day}
\iffalse
\def\reserved@a#1/#2/#3\@nil{%
@@ -7745,10 +7745,16 @@ Type H <return> for immediate help.}%
\let\frozen@everydisplay\everydisplay
\newtoks\everymath
\newtoks\everydisplay
-\frozen@everymath = {\check@mathfonts
- \the\everymath}
-\frozen@everydisplay = {\check@mathfonts
- \the\everydisplay}
+
+\frozen@everydisplay = {%
+ \aftergroup\@ignoretrue \aftergroup\ignorespaces
+ \check@mathfonts
+ \the\everydisplay}
+
+\frozen@everymath = {%
+ \aftergroup\@ignorefalse
+ \check@mathfonts
+ \the\everymath}
\let\curr@math@size\@empty
\def\pickup@font{%
\expandafter \ifx \font@name \relax
@@ -9066,8 +9072,8 @@ Type H <return> for immediate help.}%
(local:~ \int_use:N\c@localmathalphabets) }
\cs_gset_eq:cc { mv@#1@frozen }{ mv@#1 }
\tl_gset:cx { g__nfss_frozen_mv_ #1 _tl }{ \int_use:c { c@mv@#1 } }
- \group_insert_after:N \__nfss_init_mv_freeze:N \exp_after:wN
- \group_insert_after:N \cs:w mv@#1@reset \cs_end:
+ \group_insert_after:N \__nfss_init_mv_freeze:N
+ \exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
\tl_gput_right:No \check@mathfonts
{
\exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
@@ -9088,6 +9094,7 @@ Type H <return> for immediate help.}%
{
\@font@info{No~ math~ alphabet~ change~ to~ frozen~ version~ #1}
}
+ \if@ignore \ignorespaces \fi
}
}
\cs_new_protected:Npn \__nfss_init_mv_freeze:N #1 {%
@@ -14274,7 +14281,9 @@ Type H <return> for immediate help.}%
\@ifundefined{opt@fam@\@currname.\@currext}
{\@onefilewithoptions@clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap@space#2 \@empty}%
+ \@namedef{@raw@opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt@fam@\@currname.\@currext\endcsname]%
@@ -14807,6 +14816,7 @@ Type H <return> for immediate help.}%
\__keys_tmp:nn
{ code:n } { code }
{ legacy_if_set:n } { if }
+ { legacy_if_set_inverse:n } { ifnot }
{ tl_set:N } { store }
{ usage:n } { usage }
{ \q_recursion_tail } { }
@@ -14838,7 +14848,8 @@ Type H <return> for immediate help.}%
{ \keys_define:nn {#1} { unknown .undefine: } }
}
\bool_set_true:N \l__keys_options_loading_bool
- \keys_set:nV {#1} \l__keys_options_clist
+ \clist_map_variable:NNn \l__keys_options_clist \CurrentOption
+ { \keys_set:nV {#1} \CurrentOption }
\bool_set_false:N \l__keys_options_loading_bool
\AtEndOfPackage { \cs_set_eq:NN \@unprocessedoptions \scan_stop: }
\__keys_option_end:
@@ -14852,7 +14863,7 @@ Type H <return> for immediate help.}%
}
\cs_new_protected:Npn \__keys_options_global:n #1
{
- \cs_if_eq:NNF \@classoptionslist \scan_stop:
+ \cs_if_eq:NNF \@raw@classoptionslist \scan_stop:
{
\cs_if_eq:NNTF \@currext \@clsextension
{ \__keys_options_class:n {#1} }
@@ -14861,47 +14872,59 @@ Type H <return> for immediate help.}%
}
\cs_new_protected:Npn \__keys_options_class:n #1
{
- \cs_if_free:cF { opt@ \@currname . \@currext }
+ \cs_if_free:cF { @raw@opt@ \@currname . \@currext }
{
\keys_if_exist:nnTF {#1} { unknown }
{
\clist_put_right:Nv \l__keys_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
{
- \clist_map_inline:cn { opt@ \@currname . \@currext }
+ \clist_map_inline:cn { @raw@opt@ \@currname . \@currext }
{
- \__keys_options_remove:enn
+ \exp_args:Ne \__keys_options_class:nnn
{ \__keys_remove_equals:n {##1} }
{##1} {#1}
}
}
}
}
-\cs_new_protected:Npn \__keys_options_remove:nnn #1#2#3
+\cs_new_protected:Npn \__keys_options_class:nnn #1#2#3
{
\keys_if_exist:nnTF {#3} {#1}
{ \clist_put_right:Nn \l__keys_options_clist {#2} }
- { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ {
+ \str_if_eq:eeF
+ { \exp_not:v { @raw@opt@ \@currname . \@currext } }
+ { \exp_not:V \@raw@classoptionslist }
+ { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ }
}
-\cs_generate_variant:Nn \__keys_options_remove:nnn { e }
\cs_new_protected:Npn \__keys_options_package:n #1
{
- \clist_map_inline:Nn \@classoptionslist
+ \clist_map_inline:Nn \@raw@classoptionslist
{
- \__keys_options_remove:enn
+ \exp_args:Ne \__keys_options_package:nnn
{ \__keys_remove_equals:n {##1} }
{##1} {#1}
}
}
+\cs_new_protected:Npn \__keys_options_package:nnn #1#2#3
+ {
+ \keys_if_exist:nnT {#3} {#1}
+ {
+ \clist_put_right:Nn \l__keys_options_clist {#2}
+ \clist_remove_all:Nn \@unusedoptionlist {#1}
+ }
+ }
\cs_new_protected:Npn \__keys_options_local:
{
\cs_if_eq:NNF \@currext \@clsextension
{
- \cs_if_exist:cT { opt@ \@currname . \@currext }
+ \cs_if_exist:cT { @raw@opt@ \@currname . \@currext }
{
\clist_put_right:Nv \l__keys_options_clist
- { opt@ \@currname . \@currext }
+ { @raw@opt@ \@currname . \@currext }
}
}
}
@@ -17115,28 +17138,22 @@ Type H <return> for immediate help.}%
\lccode`\^^[=`\^^[ % oe in OT1
\fi % End of reset block for 8-bit engines
\ExplSyntaxOn
-\protected\def\@expl@text@lowercase@@n{\text_lowercase:n}
-\protected\def\@expl@text@uppercase@@n{\text_uppercase:n}
-\tl_put_right:Nn \l_text_case_exclude_arg_tl { \NoCaseChange }
+\cs_new_protected_nopar:cpn{MakeUppercase~}{\text_uppercase:n}
+\cs_set_nopar:Npx\MakeUppercase#1{\use:c{MakeUppercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeLowercase~}{\text_lowercase:n}
+\cs_set_nopar:Npx\MakeLowercase#1{\use:c{MakeLowercase~}{#1}}
+\cs_new_protected_nopar:cpn{MakeTitlecase~}{\text_titlecase:n}
+\cs_set_nopar:Npx\MakeTitlecase#1{\use:c{MakeTitlecase~}{#1}}
+\cs_new_protected_nopar:Npn\AddToNoCaseChangeList
+ {\tl_put_right:Nn \l_text_case_exclude_arg_tl}
+\AddToNoCaseChangeList{ \NoCaseChange }
\cs_new_protected:Npn \NoCaseChange #1 {#1}
+\cs_new_eq:NN \CaseSwitch \text_case_switch:nnnn
+\cs_new_eq:NN \DeclareCaseChangeEquivalent
+ \text_declare_case_equivalent:Nn
\ExplSyntaxOff
-\DeclareRobustCommand{\MakeUppercase}[1]{{%
- \def\i{I}\def\j{J}%
- \def\reserved@a##1##2{\let##1##2\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\@expl@text@uppercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
-\DeclareRobustCommand{\MakeLowercase}[1]{{%
- \def\reserved@a##1##2{\let##2##1\reserved@a}%
- \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}%
- \protected@edef\reserved@a{\@expl@text@lowercase@@n{\noexpand\unexpanded{#1}}}%
- \reserved@a
- }}
\def\@uclclist{\oe\OE\o\O\ae\AE
\dh\DH\dj\DJ\l\L\ng\NG\ss\SS\ij\IJ\th\TH}
-\protected@edef\MakeUppercase#1{\MakeUppercase{#1}}
-\protected@edef\MakeLowercase#1{\MakeLowercase{#1}}
\let\reserved@a\@filelist
\let\reserved@b=\@undefined
\let\reserved@c=\@undefined
diff --git a/Master/texmf-dist/tex/latex-dev/base/latexrelease.sty b/Master/texmf-dist/tex/latex-dev/base/latexrelease.sty
index 3979ee773b4..33493b9bef5 100644
--- a/Master/texmf-dist/tex/latex-dev/base/latexrelease.sty
+++ b/Master/texmf-dist/tex/latex-dev/base/latexrelease.sty
@@ -8120,6 +8120,27 @@ of this package available from CTAN}
\ignorespaces}
\EndIncludeInRelease
+\IncludeInRelease{2021/11/15}
+ {\frozen@everydisplay}{Handle spaces after math}%
+\frozen@everydisplay = {%
+ \aftergroup\@ignoretrue \aftergroup\ignorespaces
+ \check@mathfonts
+ \the\everydisplay}
+
+\frozen@everymath = {%
+ \aftergroup\@ignorefalse
+ \check@mathfonts
+ \the\everymath}
+\EndIncludeInRelease
+\IncludeInRelease{2020/10/01}
+ {\frozen@everydisplay}{Handle spaces after math}%
+
+\frozen@everydisplay = {\check@mathfonts
+ \the\everydisplay}
+\frozen@everymath = {\check@mathfonts
+ \the\everymath}
+
+\EndIncludeInRelease
\IncludeInRelease{2020/02/02}%
{\LoadFontDefinitionFile}{Loading .fd files}%
\def\LoadFontDefinitionFile#1#2{%
@@ -9227,8 +9248,8 @@ of this package available from CTAN}
(local:~ \int_use:N\c@localmathalphabets) }
\cs_gset_eq:cc { mv@#1@frozen }{ mv@#1 }
\tl_gset:cx { g__nfss_frozen_mv_ #1 _tl }{ \int_use:c { c@mv@#1 } }
- \group_insert_after:N \__nfss_init_mv_freeze:N \exp_after:wN
- \group_insert_after:N \cs:w mv@#1@reset \cs_end:
+ \group_insert_after:N \__nfss_init_mv_freeze:N
+ \exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
\tl_gput_right:No \check@mathfonts
{
\exp_after:wN \group_insert_after:N \cs:w mv@#1@reset \cs_end:
@@ -9249,6 +9270,7 @@ of this package available from CTAN}
{
\@font@info{No~ math~ alphabet~ change~ to~ frozen~ version~ #1}
}
+ \if@ignore \ignorespaces \fi
}
}
\cs_new_protected:Npn \__nfss_init_mv_freeze:N #1 {%
@@ -13966,7 +13988,9 @@ of this package available from CTAN}
\@ifundefined{opt@fam@\@currname.\@currext}
{\@onefilewithoptions@clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap@space#2 \@empty}%
+ \@namedef{@raw@opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt@fam@\@currname.\@currext\endcsname]%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ltxdoc.cls b/Master/texmf-dist/tex/latex-dev/base/ltxdoc.cls
index e66d2c91adf..dad98fadd09 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ltxdoc.cls
+++ b/Master/texmf-dist/tex/latex-dev/base/ltxdoc.cls
@@ -43,7 +43,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltxdoc}
- [2022/06/14 v2.1g Standard LaTeX documentation class]
+ [2022/06/22 v2.1h Standard LaTeX documentation class]
\DeclareOption{a5paper}{\@latexerr{Option not supported}%
{}}
\newif\ifltxdoc@load@cfg@ \ltxdoc@load@cfg@true
@@ -79,7 +79,7 @@
\addtolength\oddsidemargin{20pt}
\addtolength\evensidemargin{20pt}
\setcounter{StandardModuleDepth}{1}
-\def\cmd#1{\cs{\expandafter\cmd@to@cs\string#1}}
+\def\cmd#1{\texttt{\char`\\\expandafter\cmd@to@cs\string#1}}
\def\cmd@to@cs#1#2{\char\number`#2\relax}
\providecommand\marg[1]{%
{\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
diff --git a/Master/texmf-dist/tex/latex-dev/base/omlcmm.fd b/Master/texmf-dist/tex/latex-dev/base/omlcmm.fd
index fcd7ac66daf..329e1cb193d 100644
--- a/Master/texmf-dist/tex/latex-dev/base/omlcmm.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/omlcmm.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{omlcmm.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OML}{cmm}{\skewchar\font127 }
\DeclareFontShape{OML}{cmm}{m}{it}%
{<5><6><7><8><9>gen*cmmi%
diff --git a/Master/texmf-dist/tex/latex-dev/base/omlcmr.fd b/Master/texmf-dist/tex/latex-dev/base/omlcmr.fd
index e0fce9650ee..34a6edab171 100644
--- a/Master/texmf-dist/tex/latex-dev/base/omlcmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/omlcmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{omlcmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OML}{cmr}{\skewchar\font127 }
\DeclareFontShape{OML}{cmr}{m}{n}%
{<->ssub*cmm/m/it}{}
diff --git a/Master/texmf-dist/tex/latex-dev/base/omscmr.fd b/Master/texmf-dist/tex/latex-dev/base/omscmr.fd
index c1a3b8a4924..35be157bd6b 100644
--- a/Master/texmf-dist/tex/latex-dev/base/omscmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/omscmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{omscmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OMS}{cmr}{\skewchar\font48 }
\DeclareFontShape{OMS}{cmr}{m}{n}%
{<->ssub*cmsy/m/n}{}
diff --git a/Master/texmf-dist/tex/latex-dev/base/omscmsy.fd b/Master/texmf-dist/tex/latex-dev/base/omscmsy.fd
index 423f041e2f3..696a1cd9942 100644
--- a/Master/texmf-dist/tex/latex-dev/base/omscmsy.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/omscmsy.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{omscmsy.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OMS}{cmsy}{\skewchar\font48 }
\DeclareFontShape{OMS}{cmsy}{m}{n}{%
<5><6><7><8><9><10>gen*cmsy%
diff --git a/Master/texmf-dist/tex/latex-dev/base/omxcmex.fd b/Master/texmf-dist/tex/latex-dev/base/omxcmex.fd
index dfd16bd3a4c..2f3fa1342fe 100644
--- a/Master/texmf-dist/tex/latex-dev/base/omxcmex.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/omxcmex.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{omxcmex.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OMX}{cmex}{}
\DeclareFontShape{OMX}{cmex}{m}{n}{%
<->sfixed*cmex10%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmdh.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmdh.fd
index a34ae5c92e8..2ad840921f1 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmdh.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmdh.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmdh.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmdh}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmdh}{m}{n}{%
<10>cmdunh10%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmfib.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmfib.fd
index e4ddbecd024..31a94988252 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmfib.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmfib.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmfib.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmfib}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmfib}{m}{n}{%
<8>cmfib8%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmfr.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmfr.fd
index c1a5bf7bb02..378a07d8670 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmfr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmfr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmfr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmfr}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmfr}{m}{n}{%
<10>cmff10%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmr.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmr.fd
index 90c019feed5..a79e2b366f2 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmr}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmr}{m}{n}%
{<5><6><7><8><9><10><12>gen*cmr%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmss.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmss.fd
index 7b98b6232f7..891c4f46c44 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmss.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmss.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmss.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmss}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmss}{m}{n}
{%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmtt.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmtt.fd
index 2658d0a5319..02f080ce517 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmtt}{\hyphenchar \font\m@ne}
\DeclareFontShape{OT1}{cmtt}{m}{n}
{%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ot1cmvtt.fd b/Master/texmf-dist/tex/latex-dev/base/ot1cmvtt.fd
index 0dd9bdd91a9..bf485c7e1d7 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ot1cmvtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ot1cmvtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ot1cmvtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{OT1}{cmvtt}{\hyphenchar\font45 }
\DeclareFontShape{OT1}{cmvtt}{m}{n}%
{%
diff --git a/Master/texmf-dist/tex/latex-dev/base/report.cls b/Master/texmf-dist/tex/latex-dev/base/report.cls
index ac7d0f64793..2b2c29351d2 100644
--- a/Master/texmf-dist/tex/latex-dev/base/report.cls
+++ b/Master/texmf-dist/tex/latex-dev/base/report.cls
@@ -43,7 +43,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{report}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX document class]
\newcommand\@ptsize{}
\newif\if@restonecol
diff --git a/Master/texmf-dist/tex/latex-dev/base/shortvrb.sty b/Master/texmf-dist/tex/latex-dev/base/shortvrb.sty
index 4141d998138..9b4753ced92 100644
--- a/Master/texmf-dist/tex/latex-dev/base/shortvrb.sty
+++ b/Master/texmf-dist/tex/latex-dev/base/shortvrb.sty
@@ -43,7 +43,7 @@
%% extension .ins) which are part of the distribution.
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
\ProvidesPackage{shortvrb}
- [2022/06/08 v3.0j
+ [2022/07/03 v3.0k
Standard LaTeX documentation package V3 (FMi)]
%%
%% Package `doc' to use with LaTeX 2e
diff --git a/Master/texmf-dist/tex/latex-dev/base/size10.clo b/Master/texmf-dist/tex/latex-dev/base/size10.clo
index 6f0c7561b20..03dc8e61fc5 100644
--- a/Master/texmf-dist/tex/latex-dev/base/size10.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/size10.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{size10.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
diff --git a/Master/texmf-dist/tex/latex-dev/base/size11.clo b/Master/texmf-dist/tex/latex-dev/base/size11.clo
index 1ba265275ea..71f930d413d 100644
--- a/Master/texmf-dist/tex/latex-dev/base/size11.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/size11.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{size11.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xipt{13.6}%
diff --git a/Master/texmf-dist/tex/latex-dev/base/size12.clo b/Master/texmf-dist/tex/latex-dev/base/size12.clo
index c07477787c9..e85a5983c4c 100644
--- a/Master/texmf-dist/tex/latex-dev/base/size12.clo
+++ b/Master/texmf-dist/tex/latex-dev/base/size12.clo
@@ -42,7 +42,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
\ProvidesFile{size12.clo}
- [2021/10/04 v1.4n
+ [2022/07/02 v1.4n
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xiipt{14.5}%
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmdh.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmdh.fd
index 2855ca8a1f9..780a713ce9b 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmdh.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmdh.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmdh.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmfib.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmfib.fd
index 63db02be391..c2f39ac5212 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmfib.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmfib.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmfib.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmfr.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmfr.fd
index d71ca32c4c8..ec37c5faf36 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmfr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmfr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmfr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmr.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmr.fd
index ff17222f16f..04c86917c23 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
@@ -62,6 +62,9 @@
\EC@family{T1}{cmr}{bx}{sl}{ecbl}
\EC@family{T1}{cmr}{bx}{sc}{ecxc}
\EC@family{T1}{cmr}{m}{ui}{ecui}
+\EC@family{T1}{cmr}{m}{scsl}{ecsc}
+\EC@family{T1}{cmr}{bx}{scsl}{ecoc}
+\EC@family{T1}{cmr}{b}{scsl}{ecoc}
\endinput
%%
%% End of file `t1cmr.fd'.
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmss.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmss.fd
index 5dc6c724b0c..1f7138b51b7 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmss.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmss.fd
@@ -46,18 +46,18 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmss.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
-\providecommand{\EC@family}[5]{%
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
+\providecommand{\EC@ssfamily}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
- {<5><6><7><8><9><10><10.95><12><14.4>%
- <17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
+ {<5><6><7><8>#50800%
+ <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83>genb*#5}{}}
\DeclareFontFamily{T1}{cmss}{}
-\EC@family{T1}{cmss}{m}{n}{ecss}
-\EC@family{T1}{cmss}{m}{sl}{ecsi}
-\EC@family{T1}{cmss}{m}{it}{ecsi}
-\EC@family{T1}{cmss}{bx}{n}{ecsx}
-\EC@family{T1}{cmss}{bx}{it}{ecso}
-\EC@family{T1}{cmss}{bx}{sl}{ecso}
+\EC@ssfamily{T1}{cmss}{m}{n}{ecss}
+\EC@ssfamily{T1}{cmss}{m}{sl}{ecsi}
+\EC@ssfamily{T1}{cmss}{m}{it}{ecsi}
+\EC@ssfamily{T1}{cmss}{bx}{n}{ecsx}
+\EC@ssfamily{T1}{cmss}{bx}{it}{ecso}
+\EC@ssfamily{T1}{cmss}{bx}{sl}{ecso}
%%%%%% Font/shape undefined, therefore substituted
\DeclareFontShape{T1}{cmss}{m}{sc}%
{<->sub*cmr/m/sc}{}
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmtt.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmtt.fd
index 8ef2377d9f8..3cb4e498c51 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@ttfamily}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8>#50800%
diff --git a/Master/texmf-dist/tex/latex-dev/base/t1cmvtt.fd b/Master/texmf-dist/tex/latex-dev/base/t1cmvtt.fd
index d31fe4202bc..bd33c77b7fd 100644
--- a/Master/texmf-dist/tex/latex-dev/base/t1cmvtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/t1cmvtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{t1cmvtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@ttfamily}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8>#50800%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ts1cmr.fd b/Master/texmf-dist/tex/latex-dev/base/ts1cmr.fd
index b3e92d27237..62e7610e4a8 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ts1cmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ts1cmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ts1cmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ts1cmss.fd b/Master/texmf-dist/tex/latex-dev/base/ts1cmss.fd
index 2ca7eae58c2..88329e97559 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ts1cmss.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ts1cmss.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ts1cmss.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@family}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8><9><10><10.95><12><14.4>%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ts1cmtt.fd b/Master/texmf-dist/tex/latex-dev/base/ts1cmtt.fd
index 2947b13e1a3..bbea6182516 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ts1cmtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ts1cmtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ts1cmtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@ttfamily}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8>#50800%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ts1cmvtt.fd b/Master/texmf-dist/tex/latex-dev/base/ts1cmvtt.fd
index c4a96cfc2b2..33e6ede3271 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ts1cmvtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ts1cmvtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ts1cmvtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\providecommand{\EC@ttfamily}[5]{%
\DeclareFontShape{#1}{#2}{#3}{#4}%
{<5><6><7><8>#50800%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ucmr.fd b/Master/texmf-dist/tex/latex-dev/base/ucmr.fd
index e795726253a..7ab1d923a2a 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ucmr.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ucmr.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ucmr.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{U}{cmr}{\hyphenchar\font45 }
\DeclareFontShape{U}{cmr}{m}{n}%
{<5><6><7><8><9><10><12>gen*cmr%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ucmss.fd b/Master/texmf-dist/tex/latex-dev/base/ucmss.fd
index 60bbff556ee..963b6316c86 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ucmss.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ucmss.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ucmss.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{U}{cmss}{\hyphenchar\font45 }
\DeclareFontShape{U}{cmss}{m}{n}%
{%
diff --git a/Master/texmf-dist/tex/latex-dev/base/ucmtt.fd b/Master/texmf-dist/tex/latex-dev/base/ucmtt.fd
index fdf09d32a07..5fa40718388 100644
--- a/Master/texmf-dist/tex/latex-dev/base/ucmtt.fd
+++ b/Master/texmf-dist/tex/latex-dev/base/ucmtt.fd
@@ -46,7 +46,7 @@
%% making successful document exchange impossible.
%%
\ProvidesFile{ucmtt.fd}
- [2019/12/16 v2.5j Standard LaTeX font definitions]
+ [2022/07/10 v2.5l Standard LaTeX font definitions]
\DeclareFontFamily{U}{cmtt}{\hyphenchar \font\m@ne}
\DeclareFontShape{U}{cmtt}{m}{n}%
{%