diff options
author | Karl Berry <karl@freefriends.org> | 2021-06-05 21:10:24 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-06-05 21:10:24 +0000 |
commit | 9c010ac1d8ca51f8cc3735f106cb91f4dd1c8690 (patch) | |
tree | 5cc38c1c7a2c26a3dc483b67cdf6eb27c3ce3984 /Master/texmf-dist/doc/latex-dev/base | |
parent | 5b7ef85ce25670aae3176daeee0a21757631bebc (diff) |
latex-dev (5jun21)
git-svn-id: svn://tug.org/texlive/trunk@59474 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex-dev/base')
87 files changed, 666 insertions, 428 deletions
diff --git a/Master/texmf-dist/doc/latex-dev/base/README.md b/Master/texmf-dist/doc/latex-dev/base/README.md index 4997754b3c3..0ebb2a67e73 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 2021-06-01 pre-release 3 +Release 2021-12-01 pre-release 0 Overview -------- diff --git a/Master/texmf-dist/doc/latex-dev/base/alltt.pdf b/Master/texmf-dist/doc/latex-dev/base/alltt.pdf Binary files differindex b763b6bda82..1ed2d7cf4fc 100644 --- a/Master/texmf-dist/doc/latex-dev/base/alltt.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/alltt.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf b/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf Binary files differindex dea65fdbf84..496657f44eb 100644 --- a/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/cfgguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/changes.txt b/Master/texmf-dist/doc/latex-dev/base/changes.txt index 75e7d04a2f8..634eb0e351f 100644 --- a/Master/texmf-dist/doc/latex-dev/base/changes.txt +++ b/Master/texmf-dist/doc/latex-dev/base/changes.txt @@ -6,6 +6,50 @@ completeness or accuracy and it contains some references to files that are not part of the distribution. ================================================================================ +================================================================================ +All changes above are only part of the development branch for the next release. +================================================================================ + +######################### +# 2020-06-01 Release +######################### + +2021-05-31 David Carlisle <David.Carlisle@latex-project.org> + + * ltclass.dtx: Initialise \@raw@classoptionslist to \relax to + match \@classoptionslist + +2021-05-30 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * doc.dtx (subsection{Macros for the `documentation parts'}): + Use same error message text as in format + +2021-05-26 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * ltdefns.dtx (subsection{Robust commands and protect}): + Normalize error message in \MakeRobust + +2021-05-26 Phelype Oleinik <phelype.oleinik@latex-project.org> + + * lthooks.dtx: + Remove deprecated \DeclareDefaultHookLabel for good. + +2021-05-25 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * lthooks.dtx, ltfilehook.dtx: + Normalized some error message texts + +2021-05-24 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * ltcmd.dtx, ltcmdhooks.dtx, ltfilehook.dtx, lthooks.dtx, ltpara.dtx: + Use \msg_... instead of \__kernel_msg... commands for normalized + error and warning commands. + +2021-05-14 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * ltoutput.dtx: normalize the error commands, always use + \@latex@error not \@latexerr + 2021-04-29 Frank Mittelbach <Frank.Mittelbach@latex-project.org> * lthooks.dtx (subsection{\LaTeXe{} package interface commands}): @@ -16,7 +60,6 @@ are not part of the distribution. * lthooks.dtx, ltfilehook.dtx: Switch to kernel (not package) errors. - 2021-04-29 Marcel Krüger <Marcel.Krueger@latex-project.org> * ltoutenc.dtx (subsection{Definitions for the TU encoding}): @@ -359,11 +402,6 @@ are not part of the distribution. * ltmiscen.dtx (subsection{Environments}): \enddocument should always start out in vmode (gh/385) -================================================================================ -All changes above are only part of the development branch for the next release. -================================================================================ - - ######################### # 2020-10-01 PL 4 Release ######################### diff --git a/Master/texmf-dist/doc/latex-dev/base/classes.pdf b/Master/texmf-dist/doc/latex-dev/base/classes.pdf Binary files differindex cf7d562b569..ba722ade83b 100644 --- a/Master/texmf-dist/doc/latex-dev/base/classes.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/classes.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf b/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf Binary files differindex d41d2f7dc7a..1be79a4d941 100644 --- a/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/clsguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf b/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf Binary files differindex 65eada2d18e..661a4f35472 100644 --- a/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/cmfonts.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf b/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf Binary files differindex b81d5740ddf..8b411f291ac 100644 --- a/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/cyrguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/doc.pdf b/Master/texmf-dist/doc/latex-dev/base/doc.pdf Binary files differindex b4b752d02fe..e40bac6c17a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf b/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf Binary files differindex 1f93adfd241..535c38f3f01 100644 --- a/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/docstrip.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/encguide.pdf b/Master/texmf-dist/doc/latex-dev/base/encguide.pdf Binary files differindex 2682e5e3a13..7174fe634db 100644 --- a/Master/texmf-dist/doc/latex-dev/base/encguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/encguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/exscale.pdf b/Master/texmf-dist/doc/latex-dev/base/exscale.pdf Binary files differindex c15633e2c5b..d814296c9e7 100644 --- a/Master/texmf-dist/doc/latex-dev/base/exscale.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/exscale.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf b/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf Binary files differindex d8149b7da81..5353d938f3e 100644 --- a/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/fix-cm.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf b/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf Binary files differindex c498f9f4491..b773b230012 100644 --- a/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/fntguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf b/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf Binary files differindex df0b482d628..223c4fc9d8e 100644 --- a/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/graphpap.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf b/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf Binary files differindex a756833b7e7..cb731ce0ec8 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ifthen.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf b/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf Binary files differindex ca53fac3a5d..d91193b1096 100644 --- a/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/inputenc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/latexchanges.pdf b/Master/texmf-dist/doc/latex-dev/base/latexchanges.pdf Binary files differindex 3e4f2aaa9d3..fa0be13cc9f 100644 --- a/Master/texmf-dist/doc/latex-dev/base/latexchanges.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/latexchanges.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf b/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf Binary files differindex cdce0fb74f2..f2e104646ec 100644 --- a/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/latexrelease.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf b/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf Binary files differindex 5fb4a095416..c5f5f7ccabd 100644 --- a/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/latexsym.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/lb2.pdf b/Master/texmf-dist/doc/latex-dev/base/lb2.pdf Binary files differindex 6cc60fec762..ff53c048ee1 100644 --- a/Master/texmf-dist/doc/latex-dev/base/lb2.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/lb2.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/letter.pdf b/Master/texmf-dist/doc/latex-dev/base/letter.pdf Binary files differindex 2431b6d81f5..069855100a5 100644 --- a/Master/texmf-dist/doc/latex-dev/base/letter.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/letter.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf b/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf Binary files differindex 2a58b0470ef..fce107fd9a9 100644 --- a/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/lgc2.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/lppl.pdf b/Master/texmf-dist/doc/latex-dev/base/lppl.pdf Binary files differindex dfccc5d5ebd..4e5547d3562 100644 --- a/Master/texmf-dist/doc/latex-dev/base/lppl.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/lppl.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf Binary files differindex ccc055e33b4..9c523ad313a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-code.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf Binary files differindex 86cc6e3e96b..dd70bd22400 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltcmdhooks-doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf Binary files differindex ef767fa2074..c17d10e276d 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-code.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf Binary files differindex 28e0f8a5f26..211e7f85492 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltfilehook-doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf b/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf Binary files differindex b50be3475f7..a97b1e19232 100644 --- a/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/lthooks-code.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf Binary files differindex 369fa250697..6446eaa88ee 100644 --- a/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/lthooks-doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf b/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf Binary files differindex 3b803f33837..84af40d945a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltluatex.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf Binary files differindex 02b805b97dd..fd05f9537f3 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf Binary files differindex 0f16508cc2a..e91726a6dd1 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews01.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf Binary files differindex 718558863a4..afbca536259 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews02.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf Binary files differindex be857e7ee4a..11ab1ee0932 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews03.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf Binary files differindex 005348dff73..bcf06e380c4 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews04.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf Binary files differindex 7008d76f685..f9343d862b8 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews05.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf Binary files differindex 538c9768f39..b6b42938fc4 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews06.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf Binary files differindex d6b706b9061..23f3bebaec4 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews07.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf Binary files differindex 9931ddee80f..5dbe32de57d 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews08.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf Binary files differindex 616c594eb8f..9158a8a6def 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews09.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf Binary files differindex 7e0f03f1ccd..5c583fa62e3 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews10.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf Binary files differindex 6ef42aca9f6..b7b4299fee5 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews11.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf Binary files differindex 3ea3f11d6a8..7d483314d2c 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews12.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf Binary files differindex a94411b8c2f..bcc2ebf91ca 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews13.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf Binary files differindex 79be2aab4d2..ebb1a11b88c 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews14.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf Binary files differindex aa4ef31e3ee..422230b8918 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews15.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf Binary files differindex a11d785c60d..33b870c2c51 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews16.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf Binary files differindex b25ec2b3b4b..e426d8f8030 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews17.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf Binary files differindex 7e926718fbe..1b9d9720a81 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews18.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf Binary files differindex 96f3be47116..ee9d4d9fafd 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews19.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf Binary files differindex 5b2ed0ee073..91ffd73c534 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews20.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf Binary files differindex e8dfbc7c0ff..2d6f14527f3 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews21.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf Binary files differindex 240c83b6c66..7e75b681d7b 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews22.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf Binary files differindex 9807ac1a7a7..638b76a2c8a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews23.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf Binary files differindex 0aa98e091e8..f3be86d42e7 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews24.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf Binary files differindex 3393251fb8a..f88b90f53e7 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews25.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf Binary files differindex b6da2cc18db..1f27e496417 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews26.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf Binary files differindex d3f0ab919f2..a2037f6688c 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews27.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf Binary files differindex d6670e6a432..72d813e6ac2 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews28.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf Binary files differindex 60644a30e48..ca2747c4387 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews29.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf Binary files differindex 87651bc4566..4cb04aceef4 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews30.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf Binary files differindex f50f3665665..445abc7e119 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews31.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf Binary files differindex 51c980520e1..d4494fdd6cb 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews32.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf b/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf Binary files differindex 486fd7b9ab6..305c7aed93c 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews33.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltnews33.tex b/Master/texmf-dist/doc/latex-dev/base/ltnews33.tex index 7f23e9d8532..88bce820557 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltnews33.tex +++ b/Master/texmf-dist/doc/latex-dev/base/ltnews33.tex @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright 2019-2020 +% Copyright 2019-2021 % The LaTeX Project and any individual authors listed elsewhere % in this file. % @@ -33,6 +33,16 @@ \NeedsTeXFormat{LaTeX2e}[2020-02-02] \documentclass{ltnews} + +%%CCC Temporary definitions: +\providecommand\Dash {\unskip ---} + + + +%% NOTE: Chris' preferred hyphens! +%%\showhyphens{parameters} +\hyphenation{because para-me-ters} + \usepackage[T1]{fontenc} \usepackage{lmodern,url,hologo} @@ -85,12 +95,25 @@ \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}% +} +\newcommand\colonize[1]{#1:} +\makeatother + +\let\finalvspace\vspace % for document layout fixes + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \providecommand\tubcommand[1]{} \tubcommand{\input{tubltmac}} \publicationmonth{June} -\publicationyear{2021 --- Draft Version} +\publicationyear{2021} %% --- Draft Version 3p \publicationissue{33} @@ -109,15 +132,17 @@ \section{Introduction} -The focus of the June 2020 release is to provide further important -building blocks for producing reliable tagged PDF output in the future -(see \cite{33:blueprint}), they are discussed in the next two -sections. In addition we included a number of smaller enhancement and -fixes that are outlined on the next pages. As usual, more detail can -on individual changes can be found in the \texttt{changes.txt} files -in the distribution and, of course, in the documented -sources~\cite{33:source2e}. +The focus of the June 2021 release is to provide further important +building blocks for the future production of +reliable tagged PDF output +(see \cite{33:blueprint}); these enhancements +are discussed in the next two +sections. +Subsequent sections describe quite a number of recent smaller +enhancements and fixes. As usual, more detail on individual changes +can be found in the \texttt{changes.txt} files in the distribution +and, of course, in the documented sources~\cite{33:source2e}. @@ -125,534 +150,716 @@ sources~\cite{33:source2e}. Largely triggered by the need for better control of paragraph text processing, in particular when producing tagged PDF output, we have -extended the paragraph processing of \LaTeX{} so that the kernel gains -control both at the start and the end of each paragraph. This is done -in a manner that is (or should be) transparent to packages and user -documents. +changed \LaTeX{} so that the kernel gains control both at the start +and at the end of each paragraph. This is done in a manner that is (or +should be) transparent to both packages and documents. -Beside the internal control points for exclusive use of the \LaTeX{} -kernel we also implemented four public hooks that can be used by -packages or user via the hook management declarations to achieve -special effects or implement manipulations that in the past were only -possible through redefinitions of \cs{everypar} or \cs{par} with the -usual issue that such changes would conflict with changes in other -packages. +Besides the addition of internal control points for the exclusive use +of the \LaTeX{} kernel, we also implemented four public hooks that can +be used in packages or documents (via the normal hook management +declarations) to achieve special effects, etc. Until now, such +enhancements required redefinitions of \cs{everypar} or \cs{par}, +which led to the usual issues since such changes can easily conflict +with changes made by other packages. -The documentation of the hooks together with a few examples is -provided in \file{ltpara-doc.pdf} and for those who want to study the -(quite interesting) code is found in -\file{ltpara-code.pdf}. Additionally it is included as part of the -full kernel documentation in \file{source2e.pdf}. +The documentation of these new \enquote{paragraph hooks}, together +with a few examples, is in \file{ltpara-doc.pdf} and, for those who +want to study it, the (quite interesting) code can be found in +\file{ltpara-code.pdf}. Additionally, both of these files are included +as part of the full kernel documentation in \file{source2e.pdf}. \section{Extending the hook concept to commands} -Up to now the hook management covered hooks for a few core areas, such -as hooks for the \cs{shipout} process or those in the \env{document} -environment, as well as generic hooks for file loading (helpful for -patching) and for arbitrary environments (executed by \cs{begin} and -\cs{end}). +Up to now, hook management covered hooks for only a few core areas, +such as the hooks for the \cs{shipout} process or those in the +\env{document} environment, as well as some \enquote {generic} hooks, +both for file loading (helpful for patching such files) and for +arbitrary environments (the hooks executed within \cs{begin} and +\cs{end}). This concept of \enquote{generic hooks} has now been +extended to provide \hook{/before} and \hook{/after} hooks for any +(document-level) command\Dash in theory at least. -This has now been extended to add \hook{/before} and \hook{/after} -hooks to any (document-level) command---in theory at that is. In -practice the new generic \hook{cmd} hooks, especially the -\hook{cmd/.../after} hooks may fail with commands that are too complex -to be automatically patched and break them if the hook is filled with -code. The restrictions are documented in \texttt{ltcmdhooks-doc.pdf}. -However, given that these hooks are mainly meant for package -developers to provide a better interoperability between different -packages and between packages and the \LaTeX{} kernel, these -restrictions are of minor importance: for commands where the mechanism -can't be applied, one is in the same situation as before and for all -others there will be a noticeable improvement. This is especially -important for our big project providing accessible and tagged PDF -output~\cite{33:blueprint}, because for this we will eventually have -to patch many third-party packages and this is only feasible, if it can -be done in controlled and standardized ways. +In practice, these new generic \hook{cmd} hooks, especially the +\hook{cmd/.../after}, hooks may fail with commands that are too +complex to be automatically patched, breaking if the hook contains any +code. These restrictions are documented in +\texttt{ltcmdhooks-doc.pdf}. +% +However, given that these hooks are mainly meant for developers who +wish to provide better interoperability between different packages, +and between packages and the \LaTeX{} kernel, these restrictions are, +we hope, of minor importance. Indeed, for commands where this +mechanism can't be applied, one is in the same situation as before; +and for all others there will be a noticeable improvement. +These hooks will be especially important for our current project to +provide accessible and tagged PDF output~\cite{33:blueprint} because +we will eventually have to patch many third-party packages, and this +must be done in controlled and standardized ways. -\section{Other changes to the \LaTeX{} kernel} -\subsection{Adjusting \env{itemize} labels with \cs{labelitemfont}} +\section{Other hook business} -The command \cs{labelitemfont} was in fact already introduced with the -\LaTeX\ release 2020-02-02, but back then we forgot to describe it, so -we do this now. Its purpose is to resolve some bad formatting issues -with the \env{itemize} environment and at the same time make it easier -to adjust its layout if necessary. What could happen in the past was the -\env{itemize} labels, e.g., the \textbullet{}, would sometimes react to -surrounding font changes and could suddenly change shape, for example -to \textit{\textbullet}. - -Now \cs{labelitemfont} is applied to each -label defaulting to \cs{normalfont} which will prevent this behavior. -By choosing a different settings other effects can be achieved, for example -\begin{verbatim} - \renewcommand\labelitemfont - {\normalfont\fontfamily{lmss}\selectfont} - \renewcommand\labelitemfont - {\rmfamily\normalshape} -\end{verbatim} -The first will take the symbols from Latin Modern Sans so that you get -% -\def\myfont#1{{\let\labelitemfont\empty\fontfamily{lmss}\selectfont#1}} -% -\myfont\labelitemi, \myfont\labelitemii, \myfont\labelitemiii\ and -\myfont\labelitemiv, while the second variant freezes the font family -and shape, but leave the series variable, so that an \env{itemize} in -a bold context would show bolder symbols. Making it empty would give -you the buggy old behavior back. -% -\githubissue{497} +\subsection{Shipping out a page while bypassing hooks} -\subsection{A note on file names with spaces, dots or UTF-8 characters} +In the 2020 October release, several hooks were added to control the +process of constructing and shipping out a page box: these support, +for example, the addition of background or foreground material +to some or all pages. + + +We have now added a command, called \cs{RawShipout}, which does not do +any rebuilding of the page box and so does not run most of these +hooks. When using this new command, essential internal book-keeping +is still carried out, such as updating the \texttt{totalpages} counter +and adding \texttt{shipout/firstpage} or \texttt{shipout/lastpage} +material when appropriate. + + +\subsection{A new Lua callback in \pkg{ltshipout}, +for custom attributes} + +For use just before shipping out a page, there is now a \LuaTeX{} +callback \texttt{pre\_shipout\_filter} to contain final adjustments to +the box being shipped out. This is particularly useful for +Lua\TeX\ packages which flag (using, for example, attributes or +properties) elements on a page in order to apply effects (such as the +insertion of \enquote{color commands}) to these elements at shipout. + + + +\section{Improved handling of file names} + +\subsection[File names with spaces, multiple dots or\\ + \acro{utf-8} characters] + {File names with spaces, multiple dots or \acro{utf-8} characters} In one of the recent \LaTeX{} releases we improved the interface for specifying file names so that they can now safely contain spaces -(as is common on Windows but also elsewhere), UTF-8 characters -outside the \acro{ascii} range as well as names with several dots in -it. In the past this was only possible by applying a special syntax -(in cases of spaces), not at all for most UTF-8 characters and -not in all circumstances for files with several dots. - -However, \TeX{} has a built-in rule saying that you can leave out the -extension if it is \texttt{.tex}. Because of that \verb=\input{file}= -or \verb=\input{file.tex}= both load \file{file.tex} if it -exists. While this is convenient most of the time it is a little -awkward in some scenarios (for example, when both \file{file} and -\file{file.tex} exist) and also when you manually try to implement -that rule. +(as is common these days), +more than one dot character, and also \acro{utf-8} characters +outside the \acro{ascii} range. +In the past this was only possible by applying a special syntax +in the case of spaces, +while file names with several dots often failed, +as did most \acro{utf-8} characters. -\LaTeX{} therefore had one special syntax for \cs{include} and -\cs{includeonly}: they always expected that their arguments contains a -file name\footnote{In case of \cs{includeonly} a comma separated list - of such names.} without its extension, which had to be -\texttt{.tex}. Thus when you mistakenly wrote -\verb=\include{mychap.tex}= (for example, when you changed from \cs{input} -to \cs{include} somewhere), \LaTeX{} went ahead and looked for the -file \file{mychap.tex.tex} for inclusion and tried to write support -information to the file \file{mychap.tex.aux}. The reason was that -\cs{include} had to construct both physical file names from the -argument and it didn't bother to do something special about the -extension \texttt{.tex}. -As a side effect of the new implementation this has now changed and -the argument of \cs{include} now gets the extension \texttt{.tex} -removed if it was used. Thus \verb=\include{mychap.tex}= now loads -\file{mychap.tex} and no longer looks for \file{mychap.tex.tex}. -% -\githubissue{486} +\subsubsection{Consequences for file names in \cs{include}} +\TeX{} has a built-in rule saying that you can normally leave out the +extension if it is \texttt{.tex}. Thus \verb=\input{file}= and +\verb=\input{file.tex}= both load \file{file.tex} (if it exists). +While this is convenient most of the time, it is a little awkward in +some scenarios (for example, when both \file{file} and \file{file.tex} +exist) and also when you manually try to implement the rule. -\subsection{\cs{end}\texttt{\textbraceleft document\textbraceright} - should always start in v-mode} +\LaTeX{} therefore had one special syntax for \cs{include} and +\cs{includeonly}: they always expected that +their arguments contain a +file name\footnote{In the case of \cs{includeonly}, a comma-separated list of such names.} +with no extension given, + so that it had to be \texttt{.tex}. Thus, + when you mistakenly wrote +\verb=\include{mychap.tex}= (for example, +because you changed from \cs{input} +to \cs{include}), +\LaTeX{} went ahead and looked for the +file \file{mychap.tex.tex} for inclusion and tried to +use the file \file{mychap.tex.aux} for internal (auxiliary) information. The reason was that +\cs{include} had to construct both +of these file names from the given +argument and it didn't bother to do +anything special +with the supplied +extension \texttt{.tex}. -Until now \verb=\end{document}= executed the code from the -\cs{AtEndDocument} hook as its first action. This meant that it was -executed in horizontal mode if the user left no empty line after the -last paragraph. As a result one could get a spurious space added, for -example, when that code contained a \cs{write} statement. This was -fixed and now \cs{enddocument} first issues a \cs{par} to ensure that -it always starts out in vertical mode. +With the new implementation this has +changed: +the extension \texttt{.tex} +now gets removed/ignored if it was +supplied. +Thus \verb=\include{mychap.tex}= now +no longer looks for \file{mychap.tex.tex} +but loads +\file{mychap.tex} +and uses \file{mychap.aux}. % -\githubissue{385} +\githubissue{486} -\subsection{Allow extra space between name and address in \pkg{letter} class} +\subsection{Normalization of robust commands in file names} -The \cs{opening} command in the \pkg{letter} class expects the -name and address to be separated by \verb=\\= but it didn't allow to -use an optional argument at this point to add some extra space after -the name. The coding has now been slightly altered to allow for this. +The handling of file names has been modified so that \verb|\string| is +applied to normalize robust commands within the file name. +Previously, for example, \verb|\input{\sqrt{2}}| would cause +\LaTeX\ to loop indefinitely whereas with +the new normalization +it looks for the file named \verb|sqrt {2}.tex| +(and therefore very likely reports ``file not found''). % -\githubissue{427} +\githubissue{481} -\subsection[Add a Lua callback to \pkg{ltshipout} to provide - a uniform location for applying custom attributes] - {Add a Lua callback to \pkg{ltshipout} to provide - a uniform - \mbox\quad location for applying custom attributes} -Just before shipping out a page, a new \LuaTeX{} callback -\texttt{pre\_shipout\_filter} is now called to allow final -adjustments to the box to be shipped out. This is particularly for -Lua\TeX\ packages which flag certain elements of the page (e.g. using -attributes or properties) in order to apply certain effects to these -elements at shipout. An example for this is the \pkg{luacolor} -package which could insert the color commands using this callback. +\subsection{Fix for \env{filecontents} with \acro{utf-8} + chars in the file name} +Since a few releases back, the \env{filecontents} environment has +allowed \acro{utf-8} characters in the file name. There was, however, +a bug that would not allow \emph{over}writing a file with \acro{utf-8} +characters in its name. This has been fixed and now +\env{filecontents} allows any characters in the file name. +% +\githubissue{415} -\subsection{Improved copy\,\&\,paste support for \pdfTeX{} documents} -When compiling with \pdfTeX{}, additional information is added to the -PDF file to improve copying from and searching in text. This especially -allows ligatures to copy correctly from \pdfTeX{} generated PDF files in -most cases. -Since this has been integrated into the kernel, most documents should no -longer need to load the \pkg{cmap} package or input \texttt{glyphtounicode}. -% -\githubissue{465} +\section{Updates to the font selection scheme} -\subsection{Provide a hook in \cs{selectfont}} +\subsection{A new hook in \cs{selectfont}} -After \cs{selectfont} has altered the font we run a hook so that -packages can make final adjustments. This functionality was originally -provided by the \pkg{everysel} package, the new implementation is -slightly different and uses the standard hook management. +After \cs{selectfont} has changed the font, we now run a hook (\hook{selectfont}) +so that packages can make final \mbox{adjustments}. This functionality was +originally provided by the \pkg{everysel} package but our +implementation is slightly different and uses the standard hook +management. % \githubissue{444} -\subsection{Delay change of font series and shape to \cs{selectfont} call} +\subsection{Change of font series/shape delayed until \cs{selectfont}} -With the NFSS extensions introduced in 2020 the font series and shape -settings can be influenced by changes to the font family. The setting -is therefore delayed until \cs{selectfont} is executed to avoid -unnecessary or incorrect substitutions that may otherwise happen due -to the order of declarations. +With the NFSS extensions introduced in 2020, the font series and shape +settings can be influenced by changes to the font family. The +settings of these two are now therefore delayed until \cs{selectfont} +is executed; this avoids unnecessary or incorrect substitutions that +may otherwise happen due to the order of declarations. % \githubissue{444} -\subsection{Allow \cs{nocite} in preamble} +\section{Glyphs, characters \& encodings} -A natural place for \verb=\nocite{*}= would be the preamble of the -document, but for historical reasons \LaTeX{} issued an error message -if it was placed there. From the new release on it is now allowed in -the preamble. +\subsection{Improved copy\,\&\,paste for \pdfTeX{} documents} + +When compiling with \pdfTeX{}, additional information +(from the file \texttt{glyphtounicode.tex}) is now added automatically +to the PDF file in order to improve copying from, and searching in, +text. + +In particular, this allows the most common ligatures to be copied as +intended from all generated PDF files without the need to explicitly +load the package \pkg{cmap}. % -\githubissue{424} +\githubissue{465} -\subsection{Shipping out a page while bypassing hooks} -In the 2020 October release several hooks were added to the page -shipout process, e.g., to add some background or foreground material -to some or all pages. We now also added a \cs{RawShipout} command that -bypasses most of these hooks during the shipout. Some essential -internal bookkeeping still takes place such as updating the -\texttt{totalpages} counter or adding \texttt{shipout/firstpage} or -\texttt{shipout/lastpage} material if the page happens to be the first -or last. - -\subsection{Robust commands in filename arguments} -The filename handling has been modified so that \verb|\string| is -applied while normalizing robust commands while determining the file -name. Previously \verb|\input{\sqrt{2}}| would cause \LaTeX\ to loop indefinitely. -With the new behavior it accesses \verb|sqrt {2}.tex|. -% -\githubissue{481} +\subsection{Support for more Unicode characters} -\subsection[Additional support for Unicode characters from the - Latin Extended Additional block] - {Additional support for Unicode characters from the Latin\\ - \mbox\quad Extended Additional block} \LaTeX\ is quite capable of typesetting characters such as -\enquote{\d{m}}, but until now it lacked the Unicode mappings for some -characters that are used to write Sanskrit words in Latin -transliteration (as seen in books about yoga, Buddhist philosophy, -etc.). These have now been added so that such characters can be -entered directly instead of resorting to \verb=\d{m}= and so forth. +\enquote{\d{m}}, but until now it could not access some Unicode +characters from the Latin Extended Additional block. This meant that, +for example, there were no Unicode mappings for some characters that +are used to write Sanskrit words in Latin transliteration (as seen in +books about yoga, Buddhist philosophy, etc.). +% +These characters have now been added so that they can be entered +directly instead of using \verb=\d{m}=, etc. % \githubissue{484} -\subsection{Always have color groups set up} -To use color in \LaTeX{} certain constructs, especially boxes, need an -extra layer of groups to ensure that the color setting does not -\emph{escape} and continue outside the box when it shouldn't. To -arrange for this the \LaTeX{} kernel defined a number of commands, e.g., -\cs{color@begingroup} to be used in such places. They have been -initially no-ops and only the color packages redefined them to become -real groups. This arrangement complicates the coding as one has to -account for a group being there (or not there) depending of what is -loaded in the document. So now the kernel already adds the groups. + +\subsection{More ``dashes'' in encodings \texttt{OT1}, + \texttt{T1} and \texttt{TU}} + +When pasting in text from external sources, one can encounter these +three Unicode characters % -\githubissue{488} +\texttt{"2011} (non-breaking hyphen), +\texttt{"2012} (figure dash) and +\texttt{"2015} (horizontal bar), +% +in addition to the more common +% +\texttt{"2013} (en-dash) and \texttt{"2014} (em-dash). +% +In the past, these first three produced an error message when used +with \pdfTeX{} (since they are not available in \texttt{OT1} or +\texttt{T1} encoded fonts). They now typeset an approximation to the +glyph: e.g., the ``figure dash'' is approximated by an en-dash. +With Unicode engines they either work (when the glyph is contained in +the selected Unicode font) or they typeset nothing, producing a +``Missing character'' warning in the log file. -\subsection{Execute \cs{par} at the end of \cs{marginpar} arguments} +With all engines these characters can also now be accessed using the +command names \cs{textnonbreakinghyphen}, \cs{textfiguredash} and +\cs{texthorizontalbar}, respectively. +% +\githubissue{404} -In preparation for tagged PDF it is important to properly tag all -paragraphs and this requires running code at the beginning and end of -each. At the end of a paragraph this is done inside the \cs{par} -command, but the way \cs{marginpar} was coded, \LaTeX{} ended the -marginal note without ever explicitly calling \cs{par}. This has now -been changed. -Another case where this issue caused problems was the \pkg{lineno} -package where the last line was not numbered if the \cs{marginpar} -ended without a \cs{par} in the document. +\subsection{Poor man's \cs{textasteriskcentered}} + +The \cs{textasteriskcentered} symbol, used as part of the set of +footnote symbols in \LaTeX{}, is assumed to be implemented by every +font with the \texttt{TS1} encoding (when \pdfTeX{} is used) or with +the \texttt{TU} encoding for the Unicode engines. That assumption is +unfortunately not correct for all fonts since, for example, the +\texttt{stix2} fonts don't provide this glyph. A result is that one +gets missing glyph messages when using \cs{thanks}, etc. + +Therefore \cs{textasteriskcentered} now checks whether there is such a +glyph and, if not, uses a normal \enquote{*}, but slightly enlarged +and lowered. This may not be perfect in all cases, but it is +certainly better than no glyph showing up. % -\githubissue{489} +\githubissue{502} + +\subsection {The characters from \pkg{textcomp} are in the kernel} + +A couple of releases back, the functionality of the \pkg{textcomp} +package was integrated into the \LaTeX{} kernel. Thus it is no longer +necessary to load this package in order to access glyphs such as +\cs{textcopyright}, \cs{texteuro} or \cs{textyen}. + + +At this time the opportunity was also taken to bring some order to the +chaos surrounding the question: \enquote{which glyphs from the + \texttt{TS1} encoding are available in a given font?}. This was +done using an approach based on font families and collections, with +the differing glyph coverage of the \enquote*{text symbols} being +indicated by assigning to a font family or collection a ``sub-encoding +number'' that indicates which glyphs from the \texttt{TS1} encoding are +guaranteed to be available when using a font from that family or +collection. This assignment ensures that \LaTeX{} always errs on the +side of caution, possibly claiming that a glyph is not available even +when it in fact is. + +\iffalse %%FMi but drop that + +The documented code for this can be found now in the file +\file{lttextcomp.dtx} but we hope to publish a full explanation of +the approach very soon now. + +\fi %% FMi potential drop + + + +\subsubsection + [A note on the history of ``text symbols''] + {A note on the history of ``text symbols'' and + the \texttt{TS1} encoding} + + +The \enquote{text symbol encoding} (\texttt{TS1}) was originally +designed at the Cork Conference as a companion to the \texttt{T1} +encoding. In it various symbols that are not subject to hyphenation +got assembled and the \pkg{textcomp} package was developed to make +them accessible. Unfortunately the \TeX{} community was a bit too +enthusiastic and included several symbols only available in a few +\TeX{} fonts and some, such as the capital accents, not available at +all but developed as part of the reference font implementation. + +In hindsight that was a very bad idea because it meant that other +existing fonts (at the time) and later new fonts that got developed +were unable to provide the full set of glyphs that made up the +\texttt{TS1} encoding. For existing free PostScript fonts people +took the extra effort and produced virtual fonts that faked (some) of +the missing glyphs. But this was and is a time-consuming effort so it +was done for only a few basic fonts. But even then, only some fonts +included all glyphs from \texttt{TS1} so the \pkg{textcomp} already +back then contained a long list, dividing fonts into 5 categories +according to which glyphs were implemented and which were missing. + + +When we recently integrated the functionality of the \pkg{textcomp} +into the \LaTeX{} kernel +many new free fonts had appeared and +unfortunately the chaos around the question \enquote{which glyphs of + the \texttt{TS1} encoding are implemented by which font} had +increased with it. Not only did one find many new holes, it was next to +impossible to order the set of fonts into a reasonable set of +sub-encodings that are contained in each other in a single sequence. + +In the end we decided on nine or ten sub-encodings with a reasonable +number of fonts in each so that all fonts implemented all glyphs of the +sub-encoding they got mapped to. Thus when typesetting with a font one +could be sure that a command like \cs{textcopyleft} would either +typeset the requested character (if the glyph was part of the +sub-encoding the font belonged to) or it would raise an error, saying +that the glyph is unavailable in that font. The mapping would ensure +that \LaTeX{} always errs on the side of caution, because it might +claim a glyph is unavailable even though in fact it is.\looseness-1 + +For example, the old \texttt{pcr} (PostScript Courier) font (as well +as most other older PS fonts) is mapped to sub-encoding 5 and +therefore claims that \cs{textasciigrave} is unavailable even though +in fact for Courier this is not true. If one uses such a font and this +becomes an issue then there are a couple (suboptimal) possibilities. +For one, one can alter the mapping of Courier and pretend that belongs +to a fuller sub-encoding, e.g. +\begin{verbatim} + \DeclareEncodingSubset{TS1}{pcr}{2} +\end{verbatim} +The downside is, that \LaTeX{} then believes other glyphs that are in fact +unavailable are also there, so that it is important to check that the +final document doesn't have some missing glyphs. + +An alternative is to pretend that \cs{textasciigrave} can always be +taken from the \texttt{TS1} encoding (no questions asked): +\begin{verbatim} + \DeclareTextSymbolDefault{\textasciigrave}{TS1} +\end{verbatim} +Again there is a danger that this is not true when it is used with a +different font and would then generate a missing glyph. + +Finally, and possibly the best solution, if not impossible for other +reasons, is to simply use a different font, for example, to use the +\TeX{} Gyre Cursor font (a reimplementation of Courier with a +much more complete glyph set). -\subsection{Producing several footnote marks to one footnote} + +\section{New or improved commands} + +\subsection{Adjusting \env{itemize} labels with \cs{labelitemfont}} + +The command \cs{labelitemfont} was introduced already with the +\LaTeX\ release 2020-02-02, but back then we forgot to describe it, so +we do this now. Its purpose is to resolve some bad formatting issues +with the \env{itemize} environment and also to make it easier to +adjust the layout when necessary. What could happen in the past was +that the \env{itemize} labels (e.g., the \textbullet{}) would +sometimes react to surrounding font changes and could then suddenly +change shape, for example to \textit{\textbullet}. + +This new command \cs{labelitemfont}, which defaults to \cs{normalfont}, +can be used to provide additional control in the typesetting of +each label. Thus by choosing +different settings other effects can be achieved. Here are two +examples: +\begin{verbatim} + \renewcommand\labelitemfont + {\normalfont\fontfamily{lmss}\selectfont} + \renewcommand\labelitemfont + {\rmfamily\normalshape} +\end{verbatim} +The first definition will take the symbols from the font Latin Modern +Sans, so that you get +% +\def\myfont#1{{\let\labelitemfont\empty\fontfamily{lmss}\selectfont#1}}% +% +\myfont\labelitemi, \myfont\labelitemii, \myfont\labelitemiii\ and +\!\!\myfont\labelitemiv\,; while the second variant freezes the font family +and shape, but leaves the series as a variable quantity, so that an +\env{itemize} in a bold context would show bolder symbols. Making +\cs{labelitemfont} empty would give you back the buggy old behavior. +% +\githubissue{497} + + +\subsection{Producing several marks for one footnote} It is sometimes necessary to reference the same footnote several -times, i.e., produce several footnote marks with the same number or -symbol. This is now always possible by placing a \cs{label} into the -\cs{footnote} and reference it with the command \cs{footref} -elsewhere. This way marks referring to footnotes anywhere on the page -(including those in \texttt{minipage}s) can be generated. In the past -this command was only available with certain classes or when loading -the \pkg{footmisc} package. +times: i.e., to produce several footnote marks using the same number +or symbol. This is now easily possible by placing a \cs{label} within +the referenced \cs{footnote} and referencing this label by using the +new command \cs{footref}. This means that footnote marks can be +generated to refer to arbitrary footnotes (including those in +\texttt{minipage}s). + +This \cs{footref} command has previously been available, but only when +using certain classes or the \pkg{footmisc} package. % \githubissue{482} +\subsection{Allow \cs{nocite} in the preamble} -\subsection[Providing the raw option list of packages or documentclass - to key/value handlers] - {Providing the raw option list of packages or documentclass\\ - \mbox\quad to key/value handlers} +A natural place for \verb=\nocite{*}= would be the preamble of the +document, but for historical reasons \LaTeX{} issued an error message +if it was placed there. This command is now allowed in the preamble. +% +\githubissue{424} -\LaTeXe{} has always normalized space in option lists so\\ -\verb|\documentclass[ a4paper , 12pt ]{article}|\\ -processed the intended options \texttt{a4paper} and \texttt{12pt}. -Unfortunately the mechanism used was designed for the simple option -names of the standard option processing. Many classes and packages -now use extended \emph{keyval} processing, however this white space -normalization makes this difficult: -\verb|[bb=1 2 3 4]| -which might be expected to pass a bounding box of four numbers is -normalized to \texttt{bb=1234} and -\verb|[bb={1 2 3 4}]|\\ -which might be expected to quote the spaces results in low level \TeX{} -parsing errors. +\subsection{Made \cs{\textbackslash} generally robust} +In 2018 most \LaTeX{} user-level commands were made robust, including +the \cs{\textbackslash} command. However, \cs{\textbackslash} gets +redefined in various environments and not all these cases were caught: +such as, in particular, its use as the row delimiter in \env{tabular} +structures. This has been corrected so that \cs{\textbackslash} +should now be robust in all circumstances. -For compatibility reasons, the standard option processing has not been -changed however the original un-normalized package and class option lists -are now saved. They are not used in the standard processing, however -extended package option systems may use these \enquote{raw} option list -macros if they are defined. -The one change affecting the standard processing is that the low level -error mentioned above is now avoided as values (any tokens to the -right of an = sign) are removed from consideration from the -\enquote{unused option list}. In this release \texttt{clip=true} and -\texttt{clip=false} both contribute \texttt{clip} to the list of -options that have been used. +This change also fixed one anomaly present in the past: +in a tabular preamble of the form +\finalvspace*{-.3\baselineskip} +\begin{quote} + \hspace*{-.15em}\verb={l=\texttt{\string>}\verb={\raggedright}p{10cm}r}= % stupid class +\end{quote} +\finalvspace*{-.3\baselineskip} +a \cs{\textbackslash} in the second column would have the definition +used within \cs{raggedright} and so it would not indicate the +(premature) end of the \env{tabular}. Thus, for example,% +\finalvspace*{-.3\baselineskip} +\begin{quote} + \verb=a & b1 \\ b2 & c \\= +\end{quote} +\finalvspace*{-.3\baselineskip} +was interpreted as a single row of the \env{tabular} (as intended), +whereas +\finalvspace*{-.3\baselineskip} +\begin{quote} + \verb=a & \\ b2 & c \\= +\end{quote} +\finalvspace*{-.3\baselineskip} +resulted in two rows! This happened because the \cs{\textbackslash} +directly following the \verb=&= got interpreted while it still had the +\enquote{end the row} meaning and not yet the \enquote{start a new + line within the second column} meaning. + +With \cs{\textbackslash} now being robust, the special scanning mode +initiated by the \verb=&= ends immediately when this command is seen: +the second column is therefore then started, which results in the +\cs{\textbackslash} being interpreted as being within that column and +hence as having its expected, within-column, meaning. + +We have restored consistency here: now both of the above lines +produce a single \env{tabular} row. +% +As before, you can +put \cs{raggedright}\cs{arraybackslash} in the \env{tabular}'s +preamble for a column to ensure that \cs{\textbackslash} is always +interpreted as a tabular row separator when used in that column. And +you can use \cs{tabularnewline} to explicitly ask for a new table row, +even when \cs{\textbackslash} has a different meaning within the +current column. % -\githubissue{85} +\githubissue{548} -\subsection{Poor man's \cs{textasteriskcentered} if missing} -The \cs{textasteriskcentered} symbol, used as part of the set of -footnote symbols in \LaTeX{}, is assumed to be implemented by -every font in the \texttt{TS1} encoding (when \pdfTeX{} is used) or -in the \texttt{TU} encoding for the Unicode engines. Unfortunately, -that assumption is not correct for all fonts, for example, for the -\texttt{stix2} fonts don't offer the glyph, with the result that one -gets missing glyphs when using \cs{thanks} etc. - -For that reason the definition for \cs{textasteriskcentered} was -altered to check if there is a glyph in the right position and if not -a normal \enquote{*} is used, slightly enlarged and lowered. That may -not be perfect in all cases, but certainly better than nothing show -up. +\subsection{Allow extra space between name and address in \pkg{letter} class} + +The \cs{opening} command in the \pkg{letter} class expects the name +and address to be separated by \verb=\\=, but it didn't allow the use +of an optional argument to add some extra space after the name. The +code has now been slightly altered to allow this. % -\githubissue{502} +\githubissue{427} -\subsection{Provide more ``dashes'' in encodings \texttt{OT1}, - \texttt{T1} and \texttt{TU}} +\subsection{Additions to \cs{tracingall}} -When pasting in text from external sources one sometimes encounters -the Unicode characters -% -\texttt{"2011} (non-breaking hyphen), -\texttt{"2012} (figure dash) and -\texttt{"2015} (horizontal bar) -% -in addition to the common \texttt{"2013} (en-dash) and \texttt{"2014} -(em-dash). In the past the first three characters produced an error -message when used with \pdfTeX{}. Now they typeset an approximation -(as they are unavailable in \texttt{OT1} or \texttt{T1} encoded fonts -used by \pdfTeX{}), e.g., the figure dash is approximated by an en-dash. +In July 2020 David Jones suggested an extension to \TeX{} engines, +that added the possibility to set \cs{tracinglostchars}\texttt{=3} in +order to generate an error message in case some character is missing +from a font. In previous years, a warning about a missing character +was silently printed to the \texttt{.log} file\linebreak +(if $\cs{tracinglostchars}>0$) and to the terminal\linebreak + (if ${}>1$). This extension was added for \TL{} and \MiKTeX{} +(except in Knuth's \TeX, of course), +so that with $\cs{tracinglostchars}>2$ you now also get an +error message for each missing glyph. -In Unicode engines they either work (if contained in the selected -Unicode font) or typeset nothing and produce a ``Missing character'' -warning in the log file. +Later, in January 2021, Petr Olšák suggested yet another extension: +a new primitive +\mbox{parameter} +% +\cs{tracingstacklevels} that, when both it and \cs{tracingmacros} are +positive, will add to the \mbox{tracing} information for each +macro a visual indication (using dots) of +its nesting level in the macro expansion stack. -However, what works in all engines now, is to access the characters -via the command names \cs{textnonbreakinghyphen}, \cs{textfiguredash} -and \cs{texthorizontalbar}, respectively. +These changes have both now been added to \LaTeX's debugging macros +\cs{tracingall} and \cs{tracingnone}, so that these two new extensions +are activated/deactivated as appropriate, so long as the \TeX{} engine +supports them. An example document demonstrating these parameters is +in the linked GitHub issue. % -\githubissue{404} +\githubissue{524} -\subsection{\env{filecontents} with \acro{utf-8} characters in file name} -Since a few releases back, the \env{filecontents} environment allows writing a -file with \acro{utf-8} characters in its name. However there was a bug that -would not allow \emph{over}writing a file with \acro{utf-8} characters in the -name. This has been fixed and now \env{filecontents} allows any characters in -the file name. -% -\githubissue{415} +\section{Code improvements} + +\subsection{Execute \cs{par} at the end of \cs{marginpar}} +Previously, \LaTeX{} ended a \cs{marginpar} without ever explicitly +calling \cs{par}. This command is now explicitly added because it is +essential to the correct working of the paragraph hooks. +Another case where this issue caused problems was the \pkg{lineno} +package, where the last line was not numbered if the \cs{marginpar} +ended without an explicit \cs{par}. +% +\githubissue{489} -\subsection{Extending \pkg{latexrelease} to declare an entire module} -In the 2020-10-01 release, \LaTeX's new hook management system was added to the -kernel (see \cite{33:ltnews32}) and, as with all changes to the kernel, it was -added to \pkg{latexrelease}, so that it is possible to roll back to a date where -such module didn't exist yet, or roll forward from an older release and have the -hook management system by loading the \pkg{latexrelease} package. -However rolling back from a later release to the 2020-10-01 release didn't quite -work because it would try to define all the commands from \pkg{lthooks} again, -and that would result in errors, as usual with commands defined with -\cs{newcommand} or in the case of \pkg{lthooks}, \cs{cs\_new:Npn}. +\subsection{Execute \cs{AtEndDocument} hook in vertical mode} -To solve this issue, now completely new modules can be defined in -\pkg{latexrelease} using \cs{NewModuleRelease} -and then when rolling back or forward it will know if the code -of the module has to be read or completely ignored. More details can be -found in the \pkg{latexrelease} documentation (\verb|texdoc latexrelease|). +Until now \verb=\end{document}= executed the code from the +\cs{AtEndDocument} hook as its first action. This meant that this +hook was executed in horizontal mode if the user left no empty line +after the last paragraph. As a result, one could get a spurious space +added when, for example, that code contained a \cs{write} +statement. This was fixed and now \cs{enddocument} first issues a +\cs{par} to ensure that it always goes into vertical mode. % -\githubissue{479} +\githubissue{385} +\subsection{Color groups made permanent} + +The use of color in certain \LaTeX{} constructs, especially boxes, +needs an extra layer of grouping to ensure that the color setting does +not \emph{escape} and continue outside the box when it shouldn't. +% +To support this, the \LaTeX{} kernel defines a number of commands, +e.g., \cs{color@begingroup} to be used in such places. -\subsection{Small fix for rolling back prior to 2020-02-02} -Whereas the \pkg{latexrelease} package can usually emulate an older \LaTeX{} -kernel without much problem, rolling back to before the 2020-02-02 release -didn't work properly because the management of the \cs{ExplSyntaxOn/Off} status -for packages cannot be removed by the rollback without messing up catcodes after -an \pkg{expl3}-based package is loaded. This has been fixed and now rollback is -more careful not to leave \pkg{ExplSyntaxOn} after a package ends. +Until now, these commands were initially set as no-ops and only the +color packages redefined them to become real groups; this methodology +complicates the coding as one has to account for a group being present +or not (\mbox{depending} on what is loaded in the document). % -\githubissue{504} +The kernel therefore now permanently adds these \enquote{color groups}. +% +\githubissue{488} +\subsection{Provide the raw option list to key/value option handlers} -\subsection[Add \cs{tracingstacklevels} - and \cs{tracinglostchars}\texttt{=3} to \cs{tracingall}] - {Add \cs{tracingstacklevels} - and \cs{tracinglostchars}\texttt{=3}\\ - \mbox\quad to \cs{tracingall}} +Before any further processing of the option list, the original +(un-normalized, \enquote{raw} and unchanged) list of package or class +options is now saved, as \cs{@raw@opt@...}; this list is not used by +the standard option processing code but it is now available for use by +extended class/package processing systems. Note that, for +compatibility reasons, the standard option processing code has not +been changed. -In July 2020 David Jones suggested an extension to \TeX{} engines, that -added the possibility to set \cs{tracinglostchars}\texttt{=3} to have an -error in case some character is missing from a font. In previous years, -the warning for a missing character would be silently printed to the -\texttt{.log} file (if $\cs{tracinglostchars}>0$) and to the terminal -(if ${}>1$). This extension was added for \TL{} and \MiKTeX{} (except -in Knuth's \TeX, of course) and now with $\cs{tracinglostchars}>2$ you -get an error on a missing glyph. -Later, in January 2021, Petr Olšák suggested yet another extension, a -new primitive parameter \cs{tracingstacklevels} that, when positive (and -when \cs{tracingmacros} is also positive), will print a visual -indication of the macro nesting level in \TeX's tracing information. -Both these changes were incorporated to \LaTeX's debugging macros -\cs{tracingall} and \cs{tracingnone}, so when you use them, the new -extensions are automatically activated/deactivated if your \TeX{} -distributions has a recent enough engine. An example document -demonstrating these parameters is available in the linked GitHub issue. +One +aspect of this +change does affect the standard \mbox{processing}: any tokens to the +right of an \texttt{=} +sign are \mbox{removed} +from consideration +when constructing +the \enquote{\mbox{unused} option list}. +For example, in +this release \texttt{clip=true} and +\texttt{clip=false} both contribute \texttt{clip} to the list of +options that have been used. % -\githubissue{524} +\githubissue{85} -\subsection{Make \cs{\textbackslash} generally robust} +\subsection{New for \pkg{latexrelease}\,: \cs{NewModuleRelease}} + +To explain the need for this new feature, we shall consider the +following example: in the 2020-10-01 release, \LaTeX's new hook +management system was added to the kernel (see \cite{33:ltnews32}) +and, as with all changes to the kernel, it was added to +\pkg{latexrelease}; this made it possible to roll back to a date where +this module didn't yet exist, or to roll forward from an older +\LaTeX{} release to get the hook management system (by loading the +\pkg{latexrelease} package). +% +However, this method of rolling back from a later release to the +2020-10-01 release didn't quite work because it would try to define +all the commands from \pkg{lthooks} again; and this would of course +result in the expected errors from commands defined with +\cs{newcommand} or (as in \pkg{lthooks}) \cs{cs\_new:Npn}. + +To solve such issues, we now provide \cs{NewModuleRelease} so that +completely new modules can be defined using the facilities of +\pkg{latexrelease} in such a way that, when rolling back or forward, +the system will know whether the code of the new module has to be read +or completely ignored. More details on this can be found in the +\pkg{latexrelease} documentation (get this with +\verb|texdoc latexrelease|). +% +\githubissue{479} -In 2018 most \LaTeX{} user-level commands were made robust including -\cs{\textbackslash}. However, \cs{\textbackslash} is redefined in -various environments and not all cases were caught, in particular its use as row -delimiter in \env{tablular} structures. This has now been corrected and -\cs{\textbackslash} should be robust in all standard -circumstances. Doing that also fixed one anomaly present in the past: -in a tabular preamble of the form -\begin{quote} - \verb={l=\texttt{\string>}\verb={raggedright}p{10cm}r}= % stupid class -\end{quote} -a \cs{\textbackslash} in the second column would have the definition -used by \cs{raggedright} and would not indicate the (premature) end of -the \env{tabular}, e.g., -\begin{quote} - \verb=a & b1 \\ b2 & c \\= -\end{quote} -would be a single row in that \env{tabular}. However, writing -\begin{quote} - \verb=a & \\ b2 & c \\= -\end{quote} -would give you two rows: due to the scanning process the -\cs{\textbackslash} directly following the \verb=&= still had -the \enquote{end the row} meaning and not the \enquote{start a new - line in the second column} meaning. -With \cs{\textbackslash} now robust, the scanning after \verb=&= ends -when the command is seen and the second column is started and so now -both lines above consistently produce a single \env{tabular} row. +\subsection{Small fix for rolling back prior to 2020-02-02} -As before, you can use \cs{raggedright} \cs{arraybackslash} in the -\env{tabular} preamble to ensure that \cs{\textbackslash} is always -interpreted as a row separator when used in the column or you could -use \cs{tabularnewline} to explicitly ask for a new row even when -\cs{\textbackslash} has a different meaning in the current column. +Whereas the \pkg{latexrelease} package can usually emulate an older +\LaTeX{} kernel without much problem, rolling back to before the +2020-02-02 release didn't work properly: this is because the +management of the \cs{ExplSyntaxOn/Off} status for packages (after an +\pkg{expl3}-based package is loaded) cannot be removed by the rollback +without messing up the catcodes. This has been fixed so that rollback +is now more careful not to leave \cs{ExplSyntaxOn} after a package +ends. % -\githubissue{548} +\githubissue{504} \section{Changes to packages in the \pkg{graphics} category} -\subsection{Removed spurious warning for generic graphics rules} +\subsection{Removed warning when loading graphics files} -A previous release mistakenly caused a warning to appear when loading a graphics -file with an unknown extension through a generic graphics rule. The warning -would incorrectly say that the file was not found, whereas the file would be -included correctly. The warning now doesn't show up in that case. +A previous release sometimes mistakenly caused a (false) warning +message to appear when \mbox{using} a generic graphics rule to find +and load a graphics file with an unknown \mbox{extension}. +%%CCC removing hyphenation here makes this one line longer. +This warning would incorrectly say that the file was not found, +whereas the file would in fact be correctly loaded. The warning now +doesn't show up in that case. % \githubissue{516} -\subsection{Fixed loading \texttt{gzip}ped PostScript graphics files} +\subsection{Fixed loading of \texttt{gzip}ped + PostScript files} -A previous release mistakenly changed the file searching mechanism and -compressed graphics files would raise an error when being loaded with -\cs{includegraphics}. This has been fixed and now \texttt{gzip}ped graphics -load correctly. +A previous release mistakenly changed the file searching mechanism so +that compressed PostScript graphics files would raise an error when +being loaded with \cs{includegraphics}. This has been fixed so that +\texttt{gzip}ped graphics files now load correctly. % \githubissue{519} - \section{Changes to packages in the \pkg{tools} category} -\subsection{\pkg{layout}: Support extra language options} -The package now recognizes \texttt{japanese} and \texttt{romanian} as +\subsection{\pkg{layout}: Added language options} + +This package now recognizes \texttt{japanese} and \texttt{romanian} as language options. % \githubissue[s]{353 and 529} @@ -660,71 +867,64 @@ language options. \subsection{\pkg{array} and \pkg{longtable}: Make \cs{\textbackslash} generally robust} -The fix for this issue was also applied to these packages, see above. +The fix for this issue was also applied to these packages; see above. % \githubissue{548} \subsection{\pkg{longtable}: General bug fix update} -Minor update to \pkg{longtable} to fix bugs reported. Notably the -possibility of incorrect page breaks if floats appear on the same page -that a \env{longtable} starts. As this may affect page breaking in -existing documents, a rollback to \pkg{longtable 4.13} -(\file{longtable-2020-01-07.sty}) is supported. + +This is a minor update to the \pkg{longtable} package that fixes several +reported bugs: notably the possibility of incorrect page breaks when +floats appear on the page where a \env{longtable} starts. As this may +affect page breaking in existing documents, a rollback to +\pkg{longtable 4.13} (\file{longtable-2020-01-07.sty}) is supported. % \gnatsissue{tools}{2914 3396 3512} -\githubissue{133 183 464} +\githubissue{133 137 183 464 561} -\subsection[\pkg{trace}: Add \cs{tracingstacklevels} - and \cs{tracinglostchars}\texttt{=3} to \cs{traceon}] - {\pkg{trace}: Add \cs{tracingstacklevels} and\\ - \mbox\quad \cs{tracinglostchars}\texttt{=3} to \cs{traceon}} +\subsection{\pkg{trace}: Additions to \cs{traceon}} -The enhancement mentioned earlier was also added to the \pkg{trace} package. -% -\iffalse -The \cs{tracingstacklevels} and \cs{tracinglostchars} extensions -mentioned earlier for \cs{tracingall} were also added for -\cs{traceon} in the \pkg{trace} package, so if you're using that you -can also benefit from these new debugging tools. -\fi -% +The \cs{tracingstacklevels} and \cs{tracinglostchars} extensions to +\cs{tracingall} (see above) were also added to \cs{traceon} in the +\pkg{trace} package, so its users can also benefit from these new +debugging possibilities. % \githubissue{524} - - \subsection{\pkg{bm}: Better support for commands with optional arguments} -Some uses of optional arguments that were supported by \cs{bm} stopped -being supported (in 2004) when \cs{kernel@ifnextchar} was used -internally by the format instead of \cs{@ifnextchar}. This update -handles both versions of this command and restores the original -behaviour. -In addition package options for guiding the use of \enquote{poor man's - bold} in fallback situations were added. +Some uses of optional arguments in \cs{bm} stopped being supported (in +2004) when \cs{kernel@ifnextchar} was used internally by the format +instead of \cs{@ifnextchar}. This update handles both versions of this +command and restores the original \mbox{behavior}. + +In addition, package options for guiding the use of \enquote{poor + man's bold} in fallback situations were added. % \githubissue{554} -\section{Changes to packages in the \pkg{amsmath} category} -%\subsection{\pkg{amsmath}: Make \cs{\textbackslash} generally robust} -The fix for issue 548 was also applied in \pkg{amsmath}, see above. +\section{Changes to packages in the \pkg{amsmath} category} + +The fix for issue 548 was also applied in \pkg{amsmath}; see above. % \githubissue{548} -%\medskip + + +\medskip \begin{thebibliography}{9} \fontsize{9.3}{11.3}\selectfont \bibitem{33:blueprint} Frank Mittelbach and Chris Rowley: - \emph{\LaTeX{} Tagged PDF — A blueprint for a large project}.\\ + \emph{\LaTeX{} Tagged PDF \Dash A blueprint for a large project}.\\ \url{https://latex-project.org/publications/indexbyyear/2020/} \bibitem{33:source2e} diff --git a/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf Binary files differindex 8984f1ccb56..a9b55237f15 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltpara-code.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf Binary files differindex c8bff05546b..f383268f22b 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltpara-doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf b/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf Binary files differindex 828e444c2f5..2572de0e02e 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltshipout-code.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf Binary files differindex 4c8457428f5..7fece645c86 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltshipout-doc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf b/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf Binary files differindex 2788cb0a369..eac1bd78681 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltx3info.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf b/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf Binary files differindex aa2a071366e..7ee087bfd9c 100644 --- a/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/ltxdoc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf b/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf Binary files differindex 42d3a434e9e..bcc83fe99db 100644 --- a/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/makeindx.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/manual.pdf b/Master/texmf-dist/doc/latex-dev/base/manual.pdf Binary files differindex cb9024f559c..af10de35fc7 100644 --- a/Master/texmf-dist/doc/latex-dev/base/manual.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/manual.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/modguide.pdf b/Master/texmf-dist/doc/latex-dev/base/modguide.pdf Binary files differindex 0edb139e190..9fed1a2afac 100644 --- a/Master/texmf-dist/doc/latex-dev/base/modguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/modguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf b/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf Binary files differindex 8e6a4987f3f..cd1c7a0cb6a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/nfssfont.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/proc.pdf b/Master/texmf-dist/doc/latex-dev/base/proc.pdf Binary files differindex b0d40320198..fe4a87ed377 100644 --- a/Master/texmf-dist/doc/latex-dev/base/proc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/proc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/slides.pdf b/Master/texmf-dist/doc/latex-dev/base/slides.pdf Binary files differindex 3116ccc852e..2880f7e6215 100644 --- a/Master/texmf-dist/doc/latex-dev/base/slides.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/slides.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf b/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf Binary files differindex faa2053db2d..88753cd798d 100644 --- a/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/slifonts.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/source2e.pdf b/Master/texmf-dist/doc/latex-dev/base/source2e.pdf Binary files differindex fbc7f5ac41f..1be35a8dfd7 100644 --- a/Master/texmf-dist/doc/latex-dev/base/source2e.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/source2e.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf b/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf Binary files differindex 2156a292b98..72a10a0a106 100644 --- a/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/syntonly.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf b/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf Binary files differindex dd55f4b589f..a4fd67964cb 100644 --- a/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/tlc2.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/tulm.pdf b/Master/texmf-dist/doc/latex-dev/base/tulm.pdf Binary files differindex 34f1ca3ce0b..a9acd70daf4 100644 --- a/Master/texmf-dist/doc/latex-dev/base/tulm.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/tulm.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf b/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf Binary files differindex 80d5bc6a1e1..0546617e221 100644 --- a/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/usrguide.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf b/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf Binary files differindex 3e2c599b39f..84266a6d86b 100644 --- a/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/usrguide3.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf b/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf Binary files differindex 625decf88d8..6b0881842c2 100644 --- a/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/utf8ienc.pdf diff --git a/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf b/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf Binary files differindex 7267cc53443..d0e4064414a 100644 --- a/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf +++ b/Master/texmf-dist/doc/latex-dev/base/webcomp.pdf |