diff options
147 files changed, 597 insertions, 773 deletions
diff --git a/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md b/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md index e725149f03e..48187b02ea5 100644 --- a/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md @@ -6,6 +6,13 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-04-20] + +### Changed +- Adjust `(x)dvipdfmx` backend approach to color following issues with + multiple color stacks in `xetex.def` +- Move some functions to `l3color` + ## [2022-04-14] ### Added @@ -238,7 +245,8 @@ this project uses date-based 'snapshot' version identifiers. - Include `l3backend` in file names - Moved backend code to internal for each 'parent' module -[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-14...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-20...HEAD +[2022-04-20]: https://github.com/latex3/latex3/compare/2022-04-14...2022-04-20 [2022-04-14]: https://github.com/latex3/latex3/compare/2022-04-10...2022-04-14 [2022-04-10]: https://github.com/latex3/latex3/compare/2022-02-07...2022-04-10 [2022-02-07]: https://github.com/latex3/latex3/compare/2022-01-12...2022-02-07 diff --git a/Master/texmf-dist/doc/latex/l3backend/README.md b/Master/texmf-dist/doc/latex/l3backend/README.md index 824db1bdd30..20ec9a84fe1 100644 --- a/Master/texmf-dist/doc/latex/l3backend/README.md +++ b/Master/texmf-dist/doc/latex/l3backend/README.md @@ -1,7 +1,7 @@ LaTeX3 Backend Drivers ====================== -Release 2022-04-14 +Release 2022-04-20 This package forms parts of `expl3`, and contains the code used to interface with backends (drivers) across the `expl3` codebase. The functions here are diff --git a/Master/texmf-dist/doc/latex/l3backend/l3backend-code.pdf b/Master/texmf-dist/doc/latex/l3backend/l3backend-code.pdf Binary files differindex a5c00203937..3d69a13b8e9 100644 --- a/Master/texmf-dist/doc/latex/l3backend/l3backend-code.pdf +++ b/Master/texmf-dist/doc/latex/l3backend/l3backend-code.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md b/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md index eb5896536a1..78831e58278 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/l3experimental/CHANGELOG.md @@ -7,6 +7,11 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-04-20] + +### Fixed +- Finding graphics files with multiple extensions + ## [2022-04-10] ### Added @@ -246,7 +251,8 @@ this project uses date-based 'snapshot' version identifiers. - New `l3color` module using `xcolor`-like expression syntax - New `l3draw` module, based on `pgf` layer of the TikZ system -[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-10...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-20...HEAD +[2022-04-20]: https://github.com/latex3/latex3/compare/2022-04-10...2022-04-20 [2022-04-10]: https://github.com/latex3/latex3/compare/2022-02-05...2022-04-10 [2022-02-05]: https://github.com/latex3/latex3/compare/2021-11-12...2022-02-05 [2021-11-12]: https://github.com/latex3/latex3/compare/2021-08-27...2021-11-12 diff --git a/Master/texmf-dist/doc/latex/l3experimental/README.md b/Master/texmf-dist/doc/latex/l3experimental/README.md index 8d02dbf001e..61893ee1444 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/README.md +++ b/Master/texmf-dist/doc/latex/l3experimental/README.md @@ -1,7 +1,7 @@ Experimental LaTeX3 Concepts ============================ -Release 2022-04-10 +Release 2022-04-20 Overview -------- diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf Binary files differindex e5f7ea9bc15..cc2eafedb33 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3benchmark/l3benchmark.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3bitset/l3bitset.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3bitset/l3bitset.pdf Binary files differindex 47e6e50d2b1..6be2638c8b1 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3bitset/l3bitset.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3bitset/l3bitset.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf Binary files differindex 31b8834d68e..a980d5775f2 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw-code.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf Binary files differindex d58318d5d3a..36d736d883c 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3draw/l3draw.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3graphics/l3graphics.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3graphics/l3graphics.pdf Binary files differindex 3d5ce27457e..cd16e12ff39 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3graphics/l3graphics.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3graphics/l3graphics.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3opacity/l3opacity.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3opacity/l3opacity.pdf Binary files differindex ffdc6588468..46163501c3b 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3opacity/l3opacity.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3opacity/l3opacity.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf Binary files differindex 74e1f21ef0c..547cc3b5570 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3str/l3str-format.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf b/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf Binary files differindex 8baa8395b8c..2e673babe4e 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/l3sys-shell/l3sys-shell.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf b/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf Binary files differindex 269b1c2ffa6..1cf45fa2ec8 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/xcoffins/xcoffins.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf b/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf Binary files differindex af4ba00c962..f1911808266 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/xgalley/l3galley.pdf diff --git a/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf b/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf Binary files differindex 7addf4afe80..d9e7678c0eb 100644 --- a/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf +++ b/Master/texmf-dist/doc/latex/l3experimental/xgalley/xgalley.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md b/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md index 81af951ced4..39130c2abfe 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/l3kernel/CHANGELOG.md @@ -7,6 +7,11 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-04-20] + +### Changed +- Collect some common code from `l3backend-color` + ## [2022-04-10] ### Added @@ -1073,7 +1078,8 @@ this project uses date-based 'snapshot' version identifiers. - Step functions have been added for dim variables, e.g. `\dim_step_inline:nnnn` -[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-10...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2022-04-20...HEAD +[2022-04-20]: https://github.com/latex3/latex3/compare/2022-04-10...2022-04-20 [2022-04-10]: https://github.com/latex3/latex3/compare/2022-02-24...2022-04-10 [2022-02-24]: https://github.com/latex3/latex3/compare/2022-02-21...2022-02-24 [2022-02-21]: https://github.com/latex3/latex3/compare/2022-02-05...2022-02-21 diff --git a/Master/texmf-dist/doc/latex/l3kernel/README.md b/Master/texmf-dist/doc/latex/l3kernel/README.md index c3054ed481f..22712dc9379 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/README.md +++ b/Master/texmf-dist/doc/latex/l3kernel/README.md @@ -1,7 +1,7 @@ LaTeX3 Programming Conventions ============================== -Release 2022-04-10 +Release 2022-04-20 Overview -------- diff --git a/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf b/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf Binary files differindex 17f1287430e..29776ed923f 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/expl3.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf b/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf Binary files differindex fa6f1230619..229072c9ba6 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/interface3.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/interface3.tex b/Master/texmf-dist/doc/latex/l3kernel/interface3.tex index 9274fe46c33..fa53f4fe9ff 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/interface3.tex +++ b/Master/texmf-dist/doc/latex/l3kernel/interface3.tex @@ -54,7 +54,7 @@ for those people who are interested. {latex-team@latex-project.org}% }% } -\date{Released 2022-04-10} +\date{Released 2022-04-20} \pagenumbering{roman} \maketitle diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf Binary files differindex 1577ec2375d..d7c60a5bc6f 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3doc.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf Binary files differindex c4ccf582496..e853d5aea90 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3docstrip.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf Binary files differindex 9ca06a0a682..c4d0d407a84 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf Binary files differindex 1976dbbfc50..be6541557d2 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news01.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf Binary files differindex 96c2a091579..453e2f405a6 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news02.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf Binary files differindex 68b424976f7..bafa452ea8f 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news03.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf Binary files differindex 4337d21355e..115e960a077 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news04.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf Binary files differindex 6a23c7d8bbc..025aea91cd8 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news05.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf Binary files differindex 07b0787506f..0cf9c2f3fc4 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news06.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf Binary files differindex 221fdc815a0..1861ba93d6d 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news07.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf Binary files differindex 88dce292213..e96b64b0f5e 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news08.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf Binary files differindex 0e81abd0933..2a10b6e0b9e 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news09.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf Binary files differindex 96bbed22455..a56a5e4b3b6 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news10.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf Binary files differindex 39754d32c5c..64c19e20874 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news11.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf Binary files differindex 9035265fc7e..6f43ea20a87 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3news12.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf Binary files differindex 433569b9b2b..12350c7ad7d 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3prefixes.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf Binary files differindex 21449e7b02e..cdb2b804b83 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex index 6fd43ce8019..f28431faa48 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex +++ b/Master/texmf-dist/doc/latex/l3kernel/l3styleguide.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2022-04-10} +\date{Released 2022-04-20} \begin{document} diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf Binary files differindex 587c0c8b36d..c3e6f8dc4fe 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex index 722a90977aa..86f0f57d129 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex +++ b/Master/texmf-dist/doc/latex/l3kernel/l3syntax-changes.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2022-04-10} +\date{Released 2022-04-20} \newcommand{\TF}{\textit{(TF)}} diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf Binary files differindex d200cd3e0c7..6e0af9c77ac 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex index 90b3a71af2e..0239a0ee4ba 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex +++ b/Master/texmf-dist/doc/latex/l3kernel/l3term-glossary.tex @@ -32,7 +32,7 @@ The released version of this bundle is available from CTAN. {latex-team@latex-project.org}% }% } -\date{Released 2022-04-10} +\date{Released 2022-04-20} \newcommand{\TF}{\textit{(TF)}} diff --git a/Master/texmf-dist/doc/latex/l3kernel/source3.pdf b/Master/texmf-dist/doc/latex/l3kernel/source3.pdf Binary files differindex c00c8648b57..4a9e9656321 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/source3.pdf +++ b/Master/texmf-dist/doc/latex/l3kernel/source3.pdf diff --git a/Master/texmf-dist/doc/latex/l3kernel/source3.tex b/Master/texmf-dist/doc/latex/l3kernel/source3.tex index 3defa4b47ae..f889363f679 100644 --- a/Master/texmf-dist/doc/latex/l3kernel/source3.tex +++ b/Master/texmf-dist/doc/latex/l3kernel/source3.tex @@ -53,7 +53,7 @@ for those people who are interested. {latex-team@latex-project.org}% }% } -\date{Released 2022-04-10} +\date{Released 2022-04-20} \pagenumbering{roman} \maketitle diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-basics.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-basics.dtx index adaf33ee445..1eb47c105e2 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-basics.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-basics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % @@ -70,27 +70,27 @@ % \begin{macrocode} \ProvidesExplFile %<*dvipdfmx> - {l3backend-dvipdfmx.def}{2022-04-14}{} + {l3backend-dvipdfmx.def}{2022-04-20}{} {L3 backend support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-dvips.def}{2022-04-14}{} + {l3backend-dvips.def}{2022-04-20}{} {L3 backend support: dvips} %</dvips> %<*dvisvgm> - {l3backend-dvisvgm.def}{2022-04-14}{} + {l3backend-dvisvgm.def}{2022-04-20}{} {L3 backend support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-luatex.def}{2022-04-14}{} + {l3backend-luatex.def}{2022-04-20}{} {L3 backend support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-pdftex.def}{2022-04-14}{} + {l3backend-pdftex.def}{2022-04-20}{} {L3 backend support: PDF output (pdfTeX)} %</pdftex> %<*xetex> - {l3backend-xetex.def}{2022-04-14}{} + {l3backend-xetex.def}{2022-04-20}{} {L3 backend support: XeTeX} %</xetex> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-box.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-box.dtx index 4093f8b3a73..872e2dadcb3 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-box.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-box.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx index 7166fb693d9..6f766bc88a1 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % @@ -60,9 +60,10 @@ %<@@=color> % \end{macrocode} % -% Color support is split into parts: collecting data from \LaTeXe{}, the color stack, general color, separations, and color for -% drawings. We have different approaches in each backend, and have some choices -% to make about \texttt{dvipdfmx}/\XeTeX{} in particular. Whilst it is in some ways +% Color support is split into parts: collecting data from \LaTeXe{}, the color +% stack, general color, separations, and color for drawings. We have different +% approaches in each backend, and have some choices to make about +% \texttt{dvipdfmx}/\XeTeX{} in particular. Whilst it is in some ways % convenient to use the same approach in multiple backends, the fact that % \texttt{dvipdfmx}/\XeTeX{} is PDF-based means it (largely) sticks closer to % direct PDF output. @@ -169,119 +170,29 @@ % \subsection{The color stack} % % For PDF-based engines, we have a color stack available inside the specials. -% This is used for concepts beyond color itself: it is needed to manage th graphics -% state generally. The exact form depends on the engine, and for -% \texttt{dvipdfmx}/\XeTeX{} the backend version. +% This is used for concepts beyond color itself: it is needed to manage the +% graphics state generally. Although \texttt{dvipdfmx}/\XeTeX{} have multiple +% color stacks in recent releases, the way these interact with the original +% single stack and with other graphic state operations means that currently it +% is not feasible to use the multiple stacks. % % \subsubsection{Common code} % % \begin{macrocode} -%<*dvipdfmx|luatex|pdftex|xetex> +%<*luatex|pdftex> % \end{macrocode} % % \begin{variable}{\l_@@_backend_stack_int} -% \pdfTeX{}, \LuaTeX{} and recent \texttt{(x)dvipdfmx} have multiple stacks -% available, and to track which one is in use a variable is required. +% For tracking which stack is in use where multiple stacks are used: +% currently just \pdfTeX{}/\LuaTeX{} but at some future stage may also cover +% \texttt{dvipdfmx}/\XeTeX{}. % \begin{macrocode} \int_new:N \l_@@_backend_stack_int % \end{macrocode} % \end{variable} % % \begin{macrocode} -%</dvipdfmx|luatex|pdftex|xetex> -% \end{macrocode} -% -% \subsubsection{\texttt{dvipdfmx}/\XeTeX{}} -% -% \begin{macrocode} -%<*dvipdfmx|xetex> -% \end{macrocode} -% -% \begin{macro}{\__kernel_color_backend_stack_init:Nnn} -% \begin{variable} -% {\g_@@_backend_stack_int, \c_@@_backend_main_stack_int} -% In \texttt{(x)dvipdfmx}, the base color stack is not set up, so we have to -% force that, as well as providing a mechanism more generally. -% \begin{macrocode} -\int_new:N \g_@@_backend_stack_int -\cs_new_protected:Npx \__kernel_color_backend_stack_init:Nnn #1#2#3 - { - \int_gincr:N \exp_not:N \g_@@_backend_stack_int - \int_const:Nn #1 { \exp_not:N \g_@@_backend_stack_int } - \use:x - { - \__kernel_backend_first_shipout:n - { - \__kernel_backend_literal:n - { - pdfcolorstackinit ~ - \exp_not:N \int_use:N \exp_not:N \g_@@_backend_stack_int - \c_space_tl - \exp_not:N \tl_if_blank:nF {#2} { #2 ~ } - (#3) - } - } - } - } -\cs_if_exist:cTF { main@pdfcolorstack } - { - \int_set:Nn \l_@@_backend_stack_int - { \int_use:c { main@pdfcolorstack } } - } - { - \__kernel_color_backend_stack_init:Nnn \c_@@_backend_main_stack_int - { page ~ direct } { 0 ~ g ~ 0 ~ G } - \int_set_eq:NN \l_@@_backend_stack_int - \c_@@_backend_main_stack_int - \int_const:cn { main@pdfcolorstack } { \c_@@_backend_main_stack_int } - } -% \end{macrocode} -% The backend automatically restores the stack color from the \enquote{classical} -% approach (\texttt{pdf:bcolor}) after a scope. That will be an issue for us, so -% we manually ensure that the one we are using is inserted. -% \begin{macrocode} -\cs_gset_protected:Npn \__kernel_backend_scope_end: - { - \__kernel_backend_literal:n { x:grestore } - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_use:N \g_@@_backend_stack_int \c_space_tl current - } - } -% \end{macrocode} -% \end{variable} -% \end{macro} -% -% \begin{macro}{\__kernel_color_backend_stack_push:nn, \__kernel_color_backend_stack_push:nx} -% \begin{macro}{\__kernel_color_backend_stack_pop:n} -% Simple enough but needs a version check. -% \begin{macrocode} -\cs_new_protected:Npn \__kernel_color_backend_stack_push:nn #1#2 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - push ~ (#2) - } - } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } -\cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - pop - } - } -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macrocode} -%</dvipdfmx|xetex> +%</luatex|pdftex> % \end{macrocode} % % \subsubsection{\LuaTeX and \pdfTeX{}} @@ -309,7 +220,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\__kernel_color_backend_stack_push:nn, \__kernel_color_backend_stack_push:nx} +% \begin{macro}{\__kernel_color_backend_stack_push:nn} % \begin{macro}{\__kernel_color_backend_stack_pop:n} % \begin{macrocode} \cs_new_protected:Npn \__kernel_color_backend_stack_push:nn #1#2 @@ -322,7 +233,6 @@ %</pdftex> \int_eval:n {#1} ~ push ~ {#2} } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } \cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 { %<*luatex> @@ -392,7 +302,7 @@ % \subsubsection{\LuaTeX{} and \pdfTeX{}} % % \begin{macrocode} -%<*dvipdfmx|luatex|pdftex|xetex> +%<*luatex|pdftex> % \end{macrocode} % % \begin{variable}{\l_@@_backend_fill_tl, \l_@@_backend_stroke_tl} @@ -431,6 +341,45 @@ % \end{macro} % \end{macro} % +% \begin{macrocode} +%</luatex|pdftex> +% \end{macrocode} +% +% \subsubsection{\texttt{dvipmdfx}/\XeTeX{}} +% +% These backends have the most possible approaches: it recognises both +% \texttt{dvips}-based color specials and its own format, plus one can +% include PDF statements directly. Recent releases also have a color stack +% approach similar to \pdfTeX{}. Of the stack methods, the dedicated +% the most versatile is the latter as it can cover all of the use cases +% we have. However, at present this interacts problematically with any color +% on the original stack. We therefore stick to a single-stack approach here. +% +% \begin{macrocode} +%<*dvipdfmx|xetex> +% \end{macrocode} +% +% \begin{macro} +% { +% \@@_backend_select:n , +% \@@_backend_select_cmyk:n , +% \@@_backend_select_gray:n , +% \@@_backend_select_rgb:n +% } +% \begin{macro}{\@@_backend_reset:} +% Using the single stack is relatively easy as there is only one route. +% \begin{macrocode} +\cs_new_protected:Npn \@@_backend_select:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ [ #1 ] } } +\cs_new_eq:NN \@@_backend_select_cmyk:n \@@_backend_select:n +\cs_new_eq:NN \@@_backend_select_gray:n \@@_backend_select:n +\cs_new_eq:NN \@@_backend_select_rgb:n \@@_backend_select:n +\cs_new_protected:Npn \@@_backend_reset: + { \__kernel_backend_literal:n { pdf : ec } } +% \end{macrocode} +% \end{macro} +% \end{macro} +% % \begin{macro}{\@@_backend_select_named:n} % For classical named colors, the only value we should get is |Black|. % \begin{macrocode} @@ -446,19 +395,9 @@ % \end{macro} % % \begin{macrocode} -%</dvipdfmx|luatex|pdftex|xetex> +%</dvipdfmx|xetex> % \end{macrocode} % -% \subsubsection{\texttt{dvipmdfx}/\XeTeX{}} -% -% These backends have the most possible approaches: it recognises both -% \texttt{dvips}-based color specials and it's own format, plus one can -% include PDF statements directly. Recent releases also have a color stack -% approach similar to \pdfTeX{}. Of the stack methods, the dedicated -% the most versatile is the latter as it can cover all of the use cases -% we have. Thus it is used in preference to the \texttt{dvips}-style interface -% or the \enquote{native} color specials (which have only one stack). -% % \subsection{Separations} % % Here, life gets interesting and we need essentially one approach per @@ -867,24 +806,53 @@ % \@@_backend_select_devicen:nn , % \@@_backend_select_iccbased:nn % } -% Although \texttt{(x)dvipdfmx} has a built-in approach to color spaces, that -% can't be used with the generic color stacks. So we take an approach in which -% we share the same code as for \pdfTeX{}. % \begin{macrocode} +%<*dvipdfmx|xetex> +\cs_new_protected:Npn \@@_backend_select_separation:nn #1#2 + { \__kernel_backend_literal:x { pdf : bc ~ \pdf_object_ref:n {#1} ~ [ #2 ] } } +%</dvipdfmx|xetex> +%<*luatex|pdftex> \cs_new_protected:Npn \@@_backend_select_separation:nn #1#2 { \@@_backend_select:nn { /#1 ~ cs ~ #2 ~ scn } { /#1 ~ CS ~ #2 ~ SCN } } +%</luatex|pdftex> \cs_new_eq:NN \@@_backend_select_devicen:nn \@@_backend_select_separation:nn \cs_new_eq:NN \@@_backend_select_iccbased:nn \@@_backend_select_separation:nn % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_backend_init_resource:n} +% Resource initiation comes up a few times. For \texttt{dvipdfmx}/\XeTeX{}, +% we skip this as at present it's handled by the backend. +% \begin{macrocode} +\cs_new_protected:Npn \@@_backend_init_resource:n #1 + { +%<*luatex|pdftex> + \bool_lazy_and:nnT + { \cs_if_exist_p:N \pdfmanagement_if_active_p: } + { \pdfmanagement_if_active_p: } + { + \use:x + { + \pdfmanagement_add:nnn + { Page / Resources / ColorSpace } + { #1 } + { \pdf_object_ref_last: } + } + } +%</luatex|pdftex> + } +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\@@_backend_separation_init:nnnnn} % \begin{macro}{\@@_backend_separation_init:nn} % \begin{macro}{\@@_backend_separation_init_CIELAB:nnn} % Initialising the PDF structures needs two parts: creating an object % containing the \enquote{real} name of the Separation, then adding a reference % to that to each page. We use a separate object for the tint transformation -% following the model in the PDF reference. +% following the model in the PDF reference. The object here for the color +% needs to be named as that way it's accessible to +% \texttt{dvipdfmx}/\XeTeX{}. % \begin{macrocode} \cs_new_protected:Npn \@@_backend_separation_init:nnnnn #1#2#3#4#5 { @@ -898,23 +866,16 @@ } \exp_args:Nx \@@_backend_separation_init:nn { \str_convert_pdfname:n {#1} } {#2} - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g_@@_model_int } - { \pdf_object_ref_last: } - } - } + \@@_backend_init_resource:n { color \int_use:N \g_@@_model_int } } \cs_new_protected:Npn \@@_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } - { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \use:x + { + \pdf_object_new:nn { color \int_use:N \g_@@_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g_@@_model_int } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + } \prop_gput:Nnx \g_@@_backend_colorant_prop { /#1 } { \pdf_object_ref_last: } } @@ -978,26 +939,19 @@ } { {#3} } } - \pdf_object_unnamed_write:nx { array } - { - /DeviceN ~ - [ ~ #1 ~ ] ~ - #2 ~ - \pdf_object_ref_last: - \@@_backend_devicen_colorants:n {#1} - } - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } + \use:x { - \use:x + \pdf_object_new:nn { color \int_use:N \g_@@_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g_@@_model_int } { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g_@@_model_int } - { \pdf_object_ref_last: } + /DeviceN ~ + [ ~ #1 ~ ] ~ + #2 ~ + \pdf_object_ref_last: + \@@_backend_devicen_colorants:n {#1} } } + \@@_backend_init_resource:n { color \int_use:N \g_@@_model_int } } \cs_new:Npn \@@_backend_devicen_init:w #1 ~ #2 \s_@@_stop { @@ -1029,23 +983,14 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { @@_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g_@@_model_int } - { ~ \pdf_object_ref_last: } - } - } + \@@_backend_init_resource:n { color \int_use:N \g_@@_model_int } } % \end{macrocode} % \end{macro} - % % \begin{macro}{\@@_backend_iccbased_device:nnn} % This is very similar to setting up a color space: the only part we -% skip is adding it to the page resources. +% add to the page resources differently. % \begin{macrocode} \cs_new_protected:Npn \@@_backend_iccbased_device:nnn #1#2#3 { @@ -1060,16 +1005,7 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { @@_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { Default #2 } - { \pdf_object_ref_last: } - } - } + \@@_backend_init_resource:n { Default #2 } } % \end{macrocode} % \end{macro} @@ -1080,13 +1016,78 @@ % % \subsection{Fill and stroke color} % -% Here, \texttt{dvipdfmx}/\XeTeX{} follows \LuaTeX{} and \pdfTeX{}, -% while for \texttt{dvips} +% Here, \texttt{dvipdfmx}/\XeTeX{} we write direct PDF specials for the fill, +% and only use the stack for the stroke color (see above for comments on why +% we cannot use multiple stacks with these backends). \LuaTeX{} and \pdfTeX{} +% have mutiple stacks that can deal with fill and stroke. For \texttt{dvips} % we have to manage fill and stroke color ourselves. We also handle % \texttt{dvisvgm} independently, as there we can create SVG directly. % % \begin{macrocode} -%<*dvipdfmx|luatex|pdftex|xetex> +%<*dvipdfmx|xetex> +% \end{macrocode} +% +% \begin{macro} +% { +% \@@_backend_fill:n , +% \@@_backend_fill_cmyk:n , +% \@@_backend_fill_gray:n , +% \@@_backend_fill_rgb:n , +% \@@_backend_stroke:n , +% \@@_backend_stroke_cmyk:n , +% \@@_backend_stroke_gray:n , +% \@@_backend_stroke_rgb:n +% } +% \begin{macrocode} +\cs_new_protected:Npn \@@_backend_fill:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ fill ~ [ #1 ] } } +\cs_new_eq:NN \@@_backend_fill_cmyk:n \@@_backend_fill:n +\cs_new_eq:NN \@@_backend_fill_gray:n \@@_backend_fill:n +\cs_new_eq:NN \@@_backend_fill_rgb:n \@@_backend_fill:n +\cs_new_protected:Npn \@@_backend_stroke:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ stroke ~ [ #1 ] } } +\cs_new_eq:NN \@@_backend_stroke_cmyk:n \@@_backend_stroke:n +\cs_new_eq:NN \@@_backend_stroke_gray:n \@@_backend_stroke:n +\cs_new_eq:NN \@@_backend_stroke_rgb:n \@@_backend_stroke:n +% \end{macrocode} +% \end{macro} +% +% \begin{macro} +% { +% \@@_backend_fill_separation:nn, +% \@@_backend_stroke_separation:nn, +% \@@_backend_fill_devicen:nn, +% \@@_backend_stroke_devicen:nn +% } +% \begin{macrocode} +\cs_new_protected:Npn \@@_backend_fill_separation:nn #1#2 + { + \__kernel_backend_literal:x + { pdf : bc ~ fill ~ \pdf_object_ref:n {#1} ~ [ #2 ] } + } +\cs_new_protected:Npn \@@_backend_stroke_separation:nn #1#2 + { + \__kernel_backend_literal:x + { pdf : bc ~ stroke ~ \pdf_object_ref:n {#1} ~ [ #2 ] } + } +\cs_new_eq:NN \@@_backend_fill_devicen:nn \@@_backend_fill_separation:nn +\cs_new_eq:NN \@@_backend_stroke_devicen:nn \@@_backend_stroke_separation:nn +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_backend_fill_reset:, \@@_backend_stroke_reset:} +% \begin{macrocode} +\cs_new_eq:NN \@@_backend_fill_reset: \@@_backend_reset: +\cs_new_eq:NN \@@_backend_stroke_reset: \@@_backend_reset: +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +%</dvipdfmx|xetex> +% \end{macrocode} +% +% \begin{macrocode} +%<*luatex|pdftex> % \end{macrocode} % % \begin{macro} @@ -1117,7 +1118,6 @@ \tl_set:Nn \l_@@_backend_fill_tl {#1} \__kernel_color_backend_stack_push:nn \l_@@_backend_stack_int { #1 ~ \l_@@_backend_stroke_tl } - \group_insert_after:N \@@_backend_reset: } \cs_new_protected:Npn \@@_backend_stroke_cmyk:n #1 { \@@_backend_stroke:n { #1 ~ K } } @@ -1130,7 +1130,6 @@ \tl_set:Nn \l_@@_backend_stroke_tl {#1} \__kernel_color_backend_stack_push:nn \l_@@_backend_stack_int { \l_@@_backend_fill_tl \c_space_tl #1 } - \group_insert_after:N \@@_backend_reset: } % \end{macrocode} % \end{macro} @@ -1152,8 +1151,15 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_backend_fill_reset:, \@@_backend_stroke_reset:} % \begin{macrocode} -%</dvipdfmx|luatex|pdftex|xetex> +\cs_new_eq:NN \@@_backend_fill_reset: \@@_backend_reset: +\cs_new_eq:NN \@@_backend_stroke_reset: \@@_backend_reset: +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +%</luatex|pdftex> % \end{macrocode} % % \begin{macrocode} @@ -1182,7 +1188,6 @@ \cs_new_protected:Npn \@@_backend_fill:n #1 { \__kernel_backend_literal:n { color~push~ #1 } - \group_insert_after:N \@@_backend_reset: } \cs_new_protected:Npn \@@_backend_stroke_cmyk:n #1 { \__kernel_backend_postscript:n { /color.sc { #1 ~ setcmykcolor } def } } @@ -1210,6 +1215,13 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_backend_fill_reset:, \@@_backend_stroke_reset:} +% \begin{macrocode} +\cs_new_eq:NN \@@_backend_fill_reset: \@@_backend_reset: +\cs_new_protected:Npn \@@_backend_stroke_reset: { } +% \end{macrocode} +% \end{macro} +% % \begin{macrocode} %</dvips> % \end{macrocode} @@ -1237,7 +1249,6 @@ \cs_new_protected:Npn \@@_backend_fill:n #1 { \__kernel_backend_literal:n { color~push~ #1 } - \group_insert_after:N \@@_backend_reset: } % \end{macrocode} % \end{macro} @@ -1327,6 +1338,13 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_backend_fill_reset:, \@@_backend_stroke_reset:} +% \begin{macrocode} +\cs_new_eq:NN \@@_backend_fill_reset: \@@_backend_reset: +\cs_new_protected:Npn \@@_backend_stroke_reset: { } +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\@@_backend_devicen_init:nnn, \@@_backend_iccbased_init:nnn} % No support at present. % \begin{macrocode} diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx index 4a0d7796822..c8029dfca5d 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx index 08df3f16b5d..9d5b31faa98 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx index 2298af2a4e3..cad715a2004 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx index 9fd8426741d..4c5de69fb4a 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % @@ -139,14 +139,16 @@ % \end{macrocode} % % \begin{variable}{\c_@@_backend_stack_int} -% Set up a stack. +% Set up a stack, where that is applicable. % \begin{macrocode} \bool_lazy_and:nnT { \cs_if_exist_p:N \pdfmanagement_if_active_p: } { \pdfmanagement_if_active_p:} { +%<*luatex|pdftex> \__kernel_color_backend_stack_init:Nnn \c_@@_backend_stack_int { page ~ direct } { /opacity 1 ~ gs } +%</luatex|pdftex> \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity 1 } { << /ca ~ 1 /CA ~ 1 >> } } @@ -178,7 +180,12 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity #1 } { << /ca ~ #1 /CA ~ #1 >> } +%<*dvipdfmx|xetex> + \__kernel_backend_literal:n +%</dvipdfmx|xetex> +%<*luatex|pdftex> \__kernel_color_backend_stack_push:nn \c_@@_backend_stack_int +%</luatex|pdftex> { /opacity #1 ~ gs } \group_insert_after:N \@@_backend_reset: } @@ -189,7 +196,11 @@ \cs_gset_protected:Npn \@@_backend_select_aux:n #1 { } } \cs_new_protected:Npn \@@_backend_reset: - { \__kernel_color_backend_stack_pop:n \c_@@_backend_stack_int } + { +%<*luatex|pdftex> + \__kernel_color_backend_stack_pop:n \c_@@_backend_stack_int +%</luatex|pdftex> + } % \end{macrocode} % \end{macro} % \end{macro} @@ -224,7 +235,12 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity.stroke #1 } { << /CA ~ #2 >> } - \__kernel_color_backend_stack_push:nn \c_@@_backend_stack_int +%<*dvipdfmx|xetex> + \__kernel_backend_literal:n +%</dvipdfmx|xetex> +%<*luatex|pdftex> + \__kernel_color_backend_stack_push:nn \c_@@_backend_stack_int +%</luatex|pdftex> { /opacity.fill #1 ~ gs /opacity.stroke #2 ~ gs } \group_insert_after:N \@@_backend_reset: } diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx index 071b8805f5c..f8cf0111602 100644 --- a/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx +++ b/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-14} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3benchmark/l3benchmark.dtx b/Master/texmf-dist/source/latex/l3experimental/l3benchmark/l3benchmark.dtx index 0eb34e5c0c7..a2cc6311a95 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3benchmark/l3benchmark.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3benchmark/l3benchmark.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -122,7 +122,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3benchmark}{2022-04-10}{} +\ProvidesExplPackage{l3benchmark}{2022-04-20}{} {L3 Experimental benchmarking} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3bitset/l3bitset.dtx b/Master/texmf-dist/source/latex/l3experimental/l3bitset/l3bitset.dtx index 3443ca7d25b..0038883adf2 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3bitset/l3bitset.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3bitset/l3bitset.dtx @@ -42,7 +42,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % \begin{documentation} @@ -264,7 +264,7 @@ %<@@=bitset> % \end{macrocode} % \begin{macrocode} -\ProvidesExplPackage{l3bitset}{2022-04-10}{} +\ProvidesExplPackage{l3bitset}{2022-04-20}{} {L3 Experimental bitset support} % \end{macrocode} % A bitset is a string variable. diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx index 926ff3387ea..4059deb74c1 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-boxes.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-layers.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-layers.dtx index e82e7a1e2a9..bbdc422604c 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-layers.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-layers.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx index 024faef3247..27252d36c4d 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-paths.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx index fe3c28351ea..d67f61cbcc5 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-points.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx index 2fcc7e8ac0f..2a4968ba782 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-scopes.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx index 53dfd48728f..91f16e362d5 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-softpath.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx index b93f593a7e8..b4cdd7b1f38 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-state.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx index bdc96e0c88d..3461dd983c2 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw-transforms.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx index 31ac35f0425..9dcca5c6f8f 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3draw/l3draw.dtx @@ -110,7 +110,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -1173,7 +1173,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3draw}{2022-04-10}{} +\ProvidesExplPackage{l3draw}{2022-04-20}{} {L3 Experimental core drawing support} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3graphics/l3graphics.dtx b/Master/texmf-dist/source/latex/l3experimental/l3graphics/l3graphics.dtx index cf4a70983d2..0a3556c5bed 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3graphics/l3graphics.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3graphics/l3graphics.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -185,13 +185,14 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3graphics}{2022-04-10}{} +\ProvidesExplPackage{l3graphics}{2022-04-20}{} {L3 Experimental graphics inclusion support} % \end{macrocode} % -% \begin{variable}{\l_@@_internal_ior, \l_@@_internal_tl} +% \begin{variable}{\l_@@_internal_dim, \l_@@_internal_ior, \l_@@_internal_tl} % Scratch space. % \begin{macrocode} +\dim_new:N \l_@@_internal_dim \ior_new:N \l_@@_internal_ior \tl_new:N \l_@@_internal_tl % \end{macrocode} @@ -631,7 +632,9 @@ % \begin{macro}{\graphics_get_full_name:nN} % \begin{macro}[TF]{\graphics_get_full_name:nN} % \begin{macro}{\@@_get_full_name:n} -% A simple search. +% As well as searching by path, etc., there is a need here to check that +% we do not trip over |foo.bar| if |.bar| is not a known extension for +% the current backend. % \begin{macrocode} \cs_new_protected:Npn \graphics_get_full_name:nN #1#2 { @@ -645,8 +648,18 @@ \seq_set_eq:NN \l_file_search_path_seq \l_graphics_search_path_seq \file_get_full_name:nNTF {#1} \l_@@_full_name_str { - \str_if_eq:eeT { \l_@@_full_name_str } { #1 .tex } + \str_if_eq:eeTF { \l_@@_full_name_str } { #1 .tex } { \@@_get_full_name:n {#1} } + { + \file_parse_full_name:VNNN \l_@@_full_name_str + \l_@@_dir_str \l_@@_name_str \l_@@_ext_str + \seq_map_inline:Nn \l_graphics_search_ext_seq + { + \str_if_eq:nVT {##1} \l_@@_ext_str + { \seq_map_break:n { \use_none:nn } } + } + \@@_get_full_name:n {#1} + } } { \@@_get_full_name:n {#1} } \exp_args:NNNV \group_end: diff --git a/Master/texmf-dist/source/latex/l3experimental/l3opacity/l3opacity.dtx b/Master/texmf-dist/source/latex/l3experimental/l3opacity/l3opacity.dtx index 192f6b6818d..0ad59425ff9 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3opacity/l3opacity.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3opacity/l3opacity.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -97,7 +97,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3opacity}{2022-04-10}{} +\ProvidesExplPackage{l3opacity}{2022-04-20}{} {L3 Experimental opacity support} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx b/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx index c84c77c6081..6ca47a96939 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3str/l3str-format.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -166,7 +166,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3str-format}{2022-04-10}{} +\ProvidesExplPackage{l3str-format}{2022-04-20}{} {L3 Experimental string formatting} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx b/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx index db10bbbf606..3f8f711278f 100644 --- a/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/l3sys-shell/l3sys-shell.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -151,7 +151,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3sys-shell}{2022-04-10}{} +\ProvidesExplPackage{l3sys-shell}{2022-04-20}{} {L3 Experimental system shell functions} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx b/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx index e7773188c01..44a79131812 100644 --- a/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx @@ -53,7 +53,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -672,7 +672,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{xcoffins}{2022-04-10}{} +\ProvidesExplPackage{xcoffins}{2022-04-20}{} {L3 Experimental design level coffins} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx b/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx index 5dd9d565eba..08bc1732934 100644 --- a/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/xgalley/l3galley.dtx @@ -61,7 +61,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -686,7 +686,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{l3galley}{2022-04-10}{} +\ProvidesExplPackage{l3galley}{2022-04-20}{} {L3 Experimental galley code} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx b/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx index 2e541d65507..1d721dd5902 100644 --- a/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx +++ b/Master/texmf-dist/source/latex/l3experimental/xgalley/xgalley.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -731,7 +731,7 @@ % \end{macrocode} % % \begin{macrocode} -\ProvidesExplPackage{xgalley}{2022-04-10}{} +\ProvidesExplPackage{xgalley}{2022-04-20}{} {L3 Experimental galley} \RequirePackage{xtemplate,l3galley} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx index 34e12e7d550..4b64f6a13df 100644 --- a/Master/texmf-dist/source/latex/l3kernel/expl3.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/expl3.dtx @@ -24,7 +24,7 @@ % %<*driver|generic|package|2ekernel> %</driver|generic|package|2ekernel> -\def\ExplFileDate{2022-04-10}% +\def\ExplFileDate{2022-04-20}% %<*driver> \documentclass[full]{l3doc} \usepackage{graphicx} @@ -51,7 +51,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx index c945620eced..322813f1634 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3basics.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx index 5b137477ca3..42be007851e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3bootstrap.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx index 7c19e49bfd4..5376ce1713a 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx index d8e01d0d0bf..79a4b5a0a1e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3candidates.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx index 69409085fe7..2bb46eda42f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3cctab.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx index a2e5dd0ec0e..8bce2d8d74d 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3clist.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx index d00fe3918d4..db9d753ee58 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3coffins.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx index 93f42374efe..1cb9c71bb68 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3color.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3color.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -1600,7 +1600,10 @@ \exp_after:wN \@@_draw:nnn \l_@@_current_tl { stroke } } \cs_new_protected:Npn \@@_draw:nnn #1#2#3 - { \use:c { @@_backend_ #3 _ #1 :n } {#2} } + { + \use:c { @@_backend_ #3 _ #1 :n } {#2} + \exp_args:Nc \group_insert_after:N { @@_backend_ #3 _ reset: } + } % \end{macrocode} % \end{macro} % \end{macro} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx index 65457cbdeaf..ce4c2b02796 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3debug.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx index 4d48f2a0077..ed7222bf67c 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3deprecation.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -487,15 +487,14 @@ % % \subsection{Deprecated \pkg{l3sys} functions} % +% \begin{macrocode} +%<@@=sys> +% \end{macrocode} +% % \begin{macro}{\sys_load_deprecation:} % \begin{macrocode} \__kernel_patch_deprecation:nnNNpn { 2021-01-11 } { (no~longer~required) } -\cs_gset_protected:Npn \sys_load_deprecation: - { - \bool_if:NF \g_@@_deprecation_bool - { \__kernel_sys_configuration_load:n { l3deprecation } } - \bool_gset_true:N \g_@@_deprecation_bool - } +\cs_gset_protected:Npn \sys_load_deprecation: { } % \end{macrocode} % \end{macro} % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx index 0db227edf9d..b948b6ef148 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3doc.dtx @@ -85,7 +85,7 @@ and all files in that bundle must be distributed together. % require you to do updates, if the class changes.}} % % \author{\Team} -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % \maketitle % \tableofcontents % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx index 9319cd39e51..adaab466635 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3docstrip.dtx @@ -63,7 +63,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx index 614a73d29e2..5f68d32791b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3expan.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx index adf73279bc7..b3c86f0117f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3file.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3file.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx index 22fae08ae6d..a36e3e7f30c 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3flag.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx index 38f6d3ff6ac..ec8dcce6390 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-assign.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % \maketitle % % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx index 9ae275ac225..169bfa4b4d9 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-aux.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx index 8cd126989af..1c4abe1c822 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-basics.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx index 6fc2681f561..62c44efe0ab 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-convert.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx index fdaece8932a..9ec52f82363 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-expo.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx index d116ce92211..56b5bcab2b5 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-extended.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx index 7c24b0822c9..909f20d9e79 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-logic.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx index 307a848a088..cb2630f5dad 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-parse.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx index 8ad1b848804..c437ea1cb18 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-random.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx index 8cb45a097bd..fddead799ab 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-round.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx index 6cd2dd1b9b5..45977704d63 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-traps.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % \maketitle % % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx index 993db8a0b62..b4e1b6bfb6e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp-trig.dtx @@ -40,7 +40,7 @@ % {latex-team@latex-project.org}^^A % }^^A % } -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx index c0f2daa4829..1b692e111d6 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fp.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx index 2b279e18d7c..1dcd88b349e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3fparray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx index e8dc857816b..1def079f9c7 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3int.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3int.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx index 916cef5db2f..ef7cedf8d93 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3intarray.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx index bd62a0dbca6..f5e3dd4c325 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3kernel-functions.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx index 81eb124edd9..dcfa2a5c8b0 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3keys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx index 534d37be27c..19e3a8c0ea4 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3legacy.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx index 04786d3c1f5..1d54693b884 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3luatex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx index ef95cabf996..d315aff78e5 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3msg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx index 50512593c3c..94a18e5ee5b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3names.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3names.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % @@ -794,6 +794,8 @@ \@@_primitive:NN \crampedscriptstyle \tex_crampedscriptstyle:D \@@_primitive:NN \crampedtextstyle \tex_crampedtextstyle:D \@@_primitive:NN \csstring \tex_csstring:D + \@@_primitive:NN \discretionaryligaturemode + \tex_discretionaryligaturemode:D \@@_primitive:NN \directlua \tex_directlua:D \@@_primitive:NN \dviextension \tex_dviextension:D \@@_primitive:NN \dvifeedback \tex_dvifeedback:D @@ -840,10 +842,12 @@ \@@_primitive:NN \luatexbanner \tex_luatexbanner:D \@@_primitive:NN \luatexrevision \tex_luatexrevision:D \@@_primitive:NN \luatexversion \tex_luatexversion:D + \@@_primitive:NN \mathdefaultsmode \tex_mathdefaultsmode:D \@@_primitive:NN \mathdelimitersmode \tex_mathdelimitersmode:D \@@_primitive:NN \mathdir \tex_mathdir:D \@@_primitive:NN \mathdirection \tex_mathdirection:D \@@_primitive:NN \mathdisplayskipmode \tex_mathdisplayskipmode:D + \@@_primitive:NN \matheqdirmode \tex_matheqdirmode:D \@@_primitive:NN \matheqnogapstep \tex_matheqnogapstep:D \@@_primitive:NN \mathnolimitsmode \tex_mathnolimitsmode:D \@@_primitive:NN \mathoption \tex_mathoption:D diff --git a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx index b2ed19cb085..d94bd4f0342 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3pdf.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx index 98f62111870..da352b14fc1 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3prg.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx index 1d0694fe6a2..b86bb5f6ddf 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3prop.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx index 53ea8dfc182..3088a12d35f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3quark.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx index e9c254bb029..192dd6ecc67 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3regex.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx index bf285df9646..545321f959e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3seq.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx index 75e80b0c54f..dac1117ef4b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3skip.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx index 11604bbf817..a677ae672ee 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3sort.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx index 8646c378e52..52cbcc19a29 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3str-convert.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx index ddfdd102793..00b4e96dd2f 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3str.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3str.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx index a211af619bd..ca862ca831e 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3sys.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx index faa9960f790..9ffd8a140a9 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text-case.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx index a055aec838d..7b7b2957e7b 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text-purify.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx index 3cb5795a5df..caa3ba34a25 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx index 0db5f15d7ab..bcce1944fd3 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3tl-analysis.dtx @@ -44,7 +44,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx index 68d2cdaf8a5..af83797cd19 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3tl.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx index 3d5858a37ad..6b1b1759ffd 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3token.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3token.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx index db57bd0f386..19134440aea 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3unicode.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2022-04-10} +% \date{Released 2022-04-20} % % \maketitle % diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def index e5141ab8ed1..fdf2baaab68 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-dvipdfmx.def}{2022-04-14}{} + {l3backend-dvipdfmx.def}{2022-04-20}{} {L3 backend support: dvipdfmx} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -87,83 +87,13 @@ \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 { \tl_set:Nn #3 { {#1} {#2} } } } -\int_new:N \l__color_backend_stack_int -\int_new:N \g__color_backend_stack_int -\cs_new_protected:Npx \__kernel_color_backend_stack_init:Nnn #1#2#3 - { - \int_gincr:N \exp_not:N \g__color_backend_stack_int - \int_const:Nn #1 { \exp_not:N \g__color_backend_stack_int } - \use:x - { - \__kernel_backend_first_shipout:n - { - \__kernel_backend_literal:n - { - pdfcolorstackinit ~ - \exp_not:N \int_use:N \exp_not:N \g__color_backend_stack_int - \c_space_tl - \exp_not:N \tl_if_blank:nF {#2} { #2 ~ } - (#3) - } - } - } - } -\cs_if_exist:cTF { main@pdfcolorstack } - { - \int_set:Nn \l__color_backend_stack_int - { \int_use:c { main@pdfcolorstack } } - } - { - \__kernel_color_backend_stack_init:Nnn \c__color_backend_main_stack_int - { page ~ direct } { 0 ~ g ~ 0 ~ G } - \int_set_eq:NN \l__color_backend_stack_int - \c__color_backend_main_stack_int - \int_const:cn { main@pdfcolorstack } { \c__color_backend_main_stack_int } - } -\cs_gset_protected:Npn \__kernel_backend_scope_end: - { - \__kernel_backend_literal:n { x:grestore } - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_use:N \g__color_backend_stack_int \c_space_tl current - } - } -\cs_new_protected:Npn \__kernel_color_backend_stack_push:nn #1#2 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - push ~ (#2) - } - } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } -\cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - pop - } - } -\tl_new:N \l__color_backend_fill_tl -\tl_new:N \l__color_backend_stroke_tl -\cs_new_protected:Npn \__color_backend_select_cmyk:n #1 - { \__color_backend_select:nn { #1 ~ k } { #1 ~ K } } -\cs_new_protected:Npn \__color_backend_select_gray:n #1 - { \__color_backend_select:nn { #1 ~ g } { #1 ~ G } } -\cs_new_protected:Npn \__color_backend_select_rgb:n #1 - { \__color_backend_select:nn { #1 ~ rg } { #1 ~ RG } } -\cs_new_protected:Npn \__color_backend_select:nn #1#2 - { - \tl_set:Nn \l__color_backend_fill_tl {#1} - \tl_set:Nn \l__color_backend_stroke_tl {#2} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { #1 ~ #2 } - } +\cs_new_protected:Npn \__color_backend_select:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_select_cmyk:n \__color_backend_select:n +\cs_new_eq:NN \__color_backend_select_gray:n \__color_backend_select:n +\cs_new_eq:NN \__color_backend_select_rgb:n \__color_backend_select:n \cs_new_protected:Npn \__color_backend_reset: - { \__kernel_color_backend_stack_pop:n \l__color_backend_stack_int } + { \__kernel_backend_literal:n { pdf : ec } } \cs_new_protected:Npn \__color_backend_select_named:n #1 { \str_if_eq:nnTF {#1} { Black } @@ -199,9 +129,12 @@ \__color_backend_devicen_colorants:w } \cs_new_protected:Npn \__color_backend_select_separation:nn #1#2 - { \__color_backend_select:nn { /#1 ~ cs ~ #2 ~ scn } { /#1 ~ CS ~ #2 ~ SCN } } + { \__kernel_backend_literal:x { pdf : bc ~ \pdf_object_ref:n {#1} ~ [ #2 ] } } \cs_new_eq:NN \__color_backend_select_devicen:nn \__color_backend_select_separation:nn \cs_new_eq:NN \__color_backend_select_iccbased:nn \__color_backend_select_separation:nn +\cs_new_protected:Npn \__color_backend_init_resource:n #1 + { + } \cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 { \pdf_object_unnamed_write:nx { dict } @@ -214,23 +147,16 @@ } \exp_args:Nx \__color_backend_separation_init:nn { \str_convert_pdfname:n {#1} } {#2} - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new_protected:Npn \__color_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } - { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \use:x + { + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + } \prop_gput:Nnx \g__color_backend_colorant_prop { /#1 } { \pdf_object_ref_last: } } @@ -280,26 +206,19 @@ } { {#3} } } - \pdf_object_unnamed_write:nx { array } - { - /DeviceN ~ - [ ~ #1 ~ ] ~ - #2 ~ - \pdf_object_ref_last: - \__color_backend_devicen_colorants:n {#1} - } - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } + \use:x { - \use:x + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } + /DeviceN ~ + [ ~ #1 ~ ] ~ + #2 ~ + \pdf_object_ref_last: + \__color_backend_devicen_colorants:n {#1} } } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new:Npn \__color_backend_devicen_init:w #1 ~ #2 \s__color_stop { @@ -323,17 +242,8 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { ~ \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } - \cs_new_protected:Npn \__color_backend_iccbased_device:nnn #1#2#3 { \pdf_object_if_exist:nF { __color_icc_ #1 } @@ -347,49 +257,32 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { Default #2 } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { Default #2 } } -\cs_new_protected:Npn \__color_backend_fill_cmyk:n #1 - { \__color_backend_fill:n { #1 ~ k } } -\cs_new_protected:Npn \__color_backend_fill_gray:n #1 - { \__color_backend_fill:n { #1 ~ g } } -\cs_new_protected:Npn \__color_backend_fill_rgb:n #1 - { \__color_backend_fill:n { #1 ~ rg } } \cs_new_protected:Npn \__color_backend_fill:n #1 - { - \tl_set:Nn \l__color_backend_fill_tl {#1} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int - { #1 ~ \l__color_backend_stroke_tl } - \group_insert_after:N \__color_backend_reset: - } -\cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 - { \__color_backend_stroke:n { #1 ~ K } } -\cs_new_protected:Npn \__color_backend_stroke_gray:n #1 - { \__color_backend_stroke:n { #1 ~ G } } -\cs_new_protected:Npn \__color_backend_stroke_rgb:n #1 - { \__color_backend_stroke:n { #1 ~ RG } } + { \__kernel_backend_literal:n { pdf : bc ~ fill ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_fill_cmyk:n \__color_backend_fill:n +\cs_new_eq:NN \__color_backend_fill_gray:n \__color_backend_fill:n +\cs_new_eq:NN \__color_backend_fill_rgb:n \__color_backend_fill:n \cs_new_protected:Npn \__color_backend_stroke:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ stroke ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_stroke_cmyk:n \__color_backend_stroke:n +\cs_new_eq:NN \__color_backend_stroke_gray:n \__color_backend_stroke:n +\cs_new_eq:NN \__color_backend_stroke_rgb:n \__color_backend_stroke:n +\cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 { - \tl_set:Nn \l__color_backend_stroke_tl {#1} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int - { \l__color_backend_fill_tl \c_space_tl #1 } - \group_insert_after:N \__color_backend_reset: + \__kernel_backend_literal:x + { pdf : bc ~ fill ~ \pdf_object_ref:n {#1} ~ [ #2 ] } } -\cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 - { \__color_backend_fill:n { /#1 ~ cs ~ #2 ~ scn } } \cs_new_protected:Npn \__color_backend_stroke_separation:nn #1#2 - { \__color_backend_stroke:n { /#1 ~ CS ~ #2 ~ SCN } } + { + \__kernel_backend_literal:x + { pdf : bc ~ stroke ~ \pdf_object_ref:n {#1} ~ [ #2 ] } + } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_eq:NN \__color_backend_stroke_reset: \__color_backend_reset: %% File: l3backend-box.dtx \cs_new_protected:Npn \__box_backend_clip:N #1 { @@ -923,8 +816,6 @@ { \cs_if_exist_p:N \pdfmanagement_if_active_p: } { \pdfmanagement_if_active_p:} { - \__kernel_color_backend_stack_init:Nnn \c__opacity_backend_stack_int - { page ~ direct } { /opacity 1 ~ gs } \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity 1 } { << /ca ~ 1 /CA ~ 1 >> } } @@ -942,7 +833,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity #1 } { << /ca ~ #1 /CA ~ #1 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_backend_literal:n { /opacity #1 ~ gs } \group_insert_after:N \__opacity_backend_reset: } @@ -953,7 +844,8 @@ \cs_gset_protected:Npn \__opacity_backend_select_aux:n #1 { } } \cs_new_protected:Npn \__opacity_backend_reset: - { \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int } + { + } \cs_new_protected:Npn \__opacity_backend_fill:n #1 { \__opacity_backend_fill_stroke:xx @@ -979,7 +871,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity.stroke #1 } { << /CA ~ #2 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_backend_literal:n { /opacity.fill #1 ~ gs /opacity.stroke #2 ~ gs } \group_insert_after:N \__opacity_backend_reset: } diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def index bc3c87d637f..382f862f97d 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-dvips.def}{2022-04-14}{} + {l3backend-dvips.def}{2022-04-20}{} {L3 backend support: dvips} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -336,7 +336,6 @@ \cs_new_protected:Npn \__color_backend_fill:n #1 { \__kernel_backend_literal:n { color~push~ #1 } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 { \__kernel_backend_postscript:n { /color.sc { #1 ~ setcmykcolor } def } } @@ -350,6 +349,8 @@ { \__kernel_backend_postscript:n { /color.sc { separation ~ #1 ~ #2 } def } } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_protected:Npn \__color_backend_stroke_reset: { } %% File: l3backend-box.dtx \cs_new_protected:Npn \__box_backend_clip:N #1 { diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvisvgm.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvisvgm.def index 6742f2433bc..9aec9f6c630 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvisvgm.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvisvgm.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-dvisvgm.def}{2022-04-14}{} + {l3backend-dvisvgm.def}{2022-04-20}{} {L3 backend support: dvisvgm} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -161,7 +161,6 @@ \cs_new_protected:Npn \__color_backend_fill:n #1 { \__kernel_backend_literal:n { color~push~ #1 } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 { \__color_backend_cmyk:w #1 \s__color_stop } @@ -218,6 +217,8 @@ \cs_new_protected:Npn \__color_backend_stroke_separation:nn #1#2 { } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_protected:Npn \__color_backend_stroke_reset: { } \cs_new_protected:Npn \__color_backend_devicen_init:nnn #1#2#3 { } \cs_new_protected:Npn \__color_backend_iccbased_init:nnn #1#2#3 { } %% File: l3backend-box.dtx diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def index ae3b02531c3..deb03202f5a 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-luatex.def}{2022-04-14}{} + {l3backend-luatex.def}{2022-04-20}{} {L3 backend support: PDF output (LuaTeX)} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -129,7 +129,6 @@ \tex_pdfextension:D colorstack ~ \int_eval:n {#1} ~ push ~ {#2} } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } \cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 { \tex_pdfextension:D colorstack ~ @@ -151,14 +150,6 @@ } \cs_new_protected:Npn \__color_backend_reset: { \__kernel_color_backend_stack_pop:n \l__color_backend_stack_int } -\cs_new_protected:Npn \__color_backend_select_named:n #1 - { - \str_if_eq:nnTF {#1} { Black } - { \__color_backend_select_gray:n { 0 } } - { \msg_error:nnn { color } { unknown-named-color } {#1} } - } -\msg_new:nnn { color } { unknown-named-color } - { Named~color~'#1'~is~not~known. } \prop_new:N \g__color_backend_colorant_prop \cs_new:Npx \__color_backend_devicen_colorants:n #1 { @@ -189,18 +180,8 @@ { \__color_backend_select:nn { /#1 ~ cs ~ #2 ~ scn } { /#1 ~ CS ~ #2 ~ SCN } } \cs_new_eq:NN \__color_backend_select_devicen:nn \__color_backend_select_separation:nn \cs_new_eq:NN \__color_backend_select_iccbased:nn \__color_backend_select_separation:nn -\cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 +\cs_new_protected:Npn \__color_backend_init_resource:n #1 { - \pdf_object_unnamed_write:nx { dict } - { - /FunctionType ~ 2 - /Domain ~ [0 ~ 1] - \tl_if_blank:nF {#3} { /Range ~ [#3] } - /C0 ~ [#4] ~ - /C1 ~ [#5] /N ~ 1 - } - \exp_args:Nx \__color_backend_separation_init:nn - { \str_convert_pdfname:n {#1} } {#2} \bool_lazy_and:nnT { \cs_if_exist_p:N \pdfmanagement_if_active_p: } { \pdfmanagement_if_active_p: } @@ -209,15 +190,33 @@ { \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } + { #1 } { \pdf_object_ref_last: } } } } +\cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 + { + \pdf_object_unnamed_write:nx { dict } + { + /FunctionType ~ 2 + /Domain ~ [0 ~ 1] + \tl_if_blank:nF {#3} { /Range ~ [#3] } + /C0 ~ [#4] ~ + /C1 ~ [#5] /N ~ 1 + } + \exp_args:Nx \__color_backend_separation_init:nn + { \str_convert_pdfname:n {#1} } {#2} + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } + } \cs_new_protected:Npn \__color_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } - { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \use:x + { + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + } \prop_gput:Nnx \g__color_backend_colorant_prop { /#1 } { \pdf_object_ref_last: } } @@ -267,26 +266,19 @@ } { {#3} } } - \pdf_object_unnamed_write:nx { array } - { - /DeviceN ~ - [ ~ #1 ~ ] ~ - #2 ~ - \pdf_object_ref_last: - \__color_backend_devicen_colorants:n {#1} - } - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } + \use:x { - \use:x + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } + /DeviceN ~ + [ ~ #1 ~ ] ~ + #2 ~ + \pdf_object_ref_last: + \__color_backend_devicen_colorants:n {#1} } } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new:Npn \__color_backend_devicen_init:w #1 ~ #2 \s__color_stop { @@ -310,17 +302,8 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { ~ \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } - \cs_new_protected:Npn \__color_backend_iccbased_device:nnn #1#2#3 { \pdf_object_if_exist:nF { __color_icc_ #1 } @@ -334,16 +317,7 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { Default #2 } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { Default #2 } } \cs_new_protected:Npn \__color_backend_fill_cmyk:n #1 { \__color_backend_fill:n { #1 ~ k } } @@ -356,7 +330,6 @@ \tl_set:Nn \l__color_backend_fill_tl {#1} \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { #1 ~ \l__color_backend_stroke_tl } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 { \__color_backend_stroke:n { #1 ~ K } } @@ -369,7 +342,6 @@ \tl_set:Nn \l__color_backend_stroke_tl {#1} \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { \l__color_backend_fill_tl \c_space_tl #1 } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 { \__color_backend_fill:n { /#1 ~ cs ~ #2 ~ scn } } @@ -377,6 +349,8 @@ { \__color_backend_stroke:n { /#1 ~ CS ~ #2 ~ SCN } } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_eq:NN \__color_backend_stroke_reset: \__color_backend_reset: %% File: l3backend-box.dtx \cs_new_protected:Npn \__box_backend_clip:N #1 { @@ -922,7 +896,9 @@ \cs_gset_protected:Npn \__opacity_backend_select_aux:n #1 { } } \cs_new_protected:Npn \__opacity_backend_reset: - { \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int } + { + \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int + } \cs_new_protected:Npn \__opacity_backend_fill:n #1 { \__opacity_backend_fill_stroke:xx @@ -948,7 +924,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity.stroke #1 } { << /CA ~ #2 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int { /opacity.fill #1 ~ gs /opacity.stroke #2 ~ gs } \group_insert_after:N \__opacity_backend_reset: } diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def index ddc356a7bee..32cec72b2e3 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-pdftex.def}{2022-04-14}{} + {l3backend-pdftex.def}{2022-04-20}{} {L3 backend support: PDF output (pdfTeX)} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -129,7 +129,6 @@ \tex_pdfcolorstack:D \int_eval:n {#1} ~ push ~ {#2} } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } \cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 { \tex_pdfcolorstack:D @@ -151,14 +150,6 @@ } \cs_new_protected:Npn \__color_backend_reset: { \__kernel_color_backend_stack_pop:n \l__color_backend_stack_int } -\cs_new_protected:Npn \__color_backend_select_named:n #1 - { - \str_if_eq:nnTF {#1} { Black } - { \__color_backend_select_gray:n { 0 } } - { \msg_error:nnn { color } { unknown-named-color } {#1} } - } -\msg_new:nnn { color } { unknown-named-color } - { Named~color~'#1'~is~not~known. } \prop_new:N \g__color_backend_colorant_prop \cs_new:Npx \__color_backend_devicen_colorants:n #1 { @@ -189,18 +180,8 @@ { \__color_backend_select:nn { /#1 ~ cs ~ #2 ~ scn } { /#1 ~ CS ~ #2 ~ SCN } } \cs_new_eq:NN \__color_backend_select_devicen:nn \__color_backend_select_separation:nn \cs_new_eq:NN \__color_backend_select_iccbased:nn \__color_backend_select_separation:nn -\cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 +\cs_new_protected:Npn \__color_backend_init_resource:n #1 { - \pdf_object_unnamed_write:nx { dict } - { - /FunctionType ~ 2 - /Domain ~ [0 ~ 1] - \tl_if_blank:nF {#3} { /Range ~ [#3] } - /C0 ~ [#4] ~ - /C1 ~ [#5] /N ~ 1 - } - \exp_args:Nx \__color_backend_separation_init:nn - { \str_convert_pdfname:n {#1} } {#2} \bool_lazy_and:nnT { \cs_if_exist_p:N \pdfmanagement_if_active_p: } { \pdfmanagement_if_active_p: } @@ -209,15 +190,33 @@ { \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } + { #1 } { \pdf_object_ref_last: } } } } +\cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 + { + \pdf_object_unnamed_write:nx { dict } + { + /FunctionType ~ 2 + /Domain ~ [0 ~ 1] + \tl_if_blank:nF {#3} { /Range ~ [#3] } + /C0 ~ [#4] ~ + /C1 ~ [#5] /N ~ 1 + } + \exp_args:Nx \__color_backend_separation_init:nn + { \str_convert_pdfname:n {#1} } {#2} + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } + } \cs_new_protected:Npn \__color_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } - { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \use:x + { + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + } \prop_gput:Nnx \g__color_backend_colorant_prop { /#1 } { \pdf_object_ref_last: } } @@ -267,26 +266,19 @@ } { {#3} } } - \pdf_object_unnamed_write:nx { array } - { - /DeviceN ~ - [ ~ #1 ~ ] ~ - #2 ~ - \pdf_object_ref_last: - \__color_backend_devicen_colorants:n {#1} - } - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } + \use:x { - \use:x + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } + /DeviceN ~ + [ ~ #1 ~ ] ~ + #2 ~ + \pdf_object_ref_last: + \__color_backend_devicen_colorants:n {#1} } } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new:Npn \__color_backend_devicen_init:w #1 ~ #2 \s__color_stop { @@ -310,17 +302,8 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { ~ \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } - \cs_new_protected:Npn \__color_backend_iccbased_device:nnn #1#2#3 { \pdf_object_if_exist:nF { __color_icc_ #1 } @@ -334,16 +317,7 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { Default #2 } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { Default #2 } } \cs_new_protected:Npn \__color_backend_fill_cmyk:n #1 { \__color_backend_fill:n { #1 ~ k } } @@ -356,7 +330,6 @@ \tl_set:Nn \l__color_backend_fill_tl {#1} \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { #1 ~ \l__color_backend_stroke_tl } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 { \__color_backend_stroke:n { #1 ~ K } } @@ -369,7 +342,6 @@ \tl_set:Nn \l__color_backend_stroke_tl {#1} \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { \l__color_backend_fill_tl \c_space_tl #1 } - \group_insert_after:N \__color_backend_reset: } \cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 { \__color_backend_fill:n { /#1 ~ cs ~ #2 ~ scn } } @@ -377,6 +349,8 @@ { \__color_backend_stroke:n { /#1 ~ CS ~ #2 ~ SCN } } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_eq:NN \__color_backend_stroke_reset: \__color_backend_reset: %% File: l3backend-box.dtx \cs_new_protected:Npn \__box_backend_clip:N #1 { @@ -922,7 +896,9 @@ \cs_gset_protected:Npn \__opacity_backend_select_aux:n #1 { } } \cs_new_protected:Npn \__opacity_backend_reset: - { \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int } + { + \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int + } \cs_new_protected:Npn \__opacity_backend_fill:n #1 { \__opacity_backend_fill_stroke:xx @@ -948,7 +924,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity.stroke #1 } { << /CA ~ #2 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int { /opacity.fill #1 ~ gs /opacity.stroke #2 ~ gs } \group_insert_after:N \__opacity_backend_reset: } diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def index 710543cd4bf..1e070ebdc30 100644 --- a/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def +++ b/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def @@ -26,7 +26,7 @@ %% %% File: l3backend-basics.dtx \ProvidesExplFile - {l3backend-xetex.def}{2022-04-14}{} + {l3backend-xetex.def}{2022-04-20}{} {L3 backend support: XeTeX} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -87,83 +87,13 @@ \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 { \tl_set:Nn #3 { {#1} {#2} } } } -\int_new:N \l__color_backend_stack_int -\int_new:N \g__color_backend_stack_int -\cs_new_protected:Npx \__kernel_color_backend_stack_init:Nnn #1#2#3 - { - \int_gincr:N \exp_not:N \g__color_backend_stack_int - \int_const:Nn #1 { \exp_not:N \g__color_backend_stack_int } - \use:x - { - \__kernel_backend_first_shipout:n - { - \__kernel_backend_literal:n - { - pdfcolorstackinit ~ - \exp_not:N \int_use:N \exp_not:N \g__color_backend_stack_int - \c_space_tl - \exp_not:N \tl_if_blank:nF {#2} { #2 ~ } - (#3) - } - } - } - } -\cs_if_exist:cTF { main@pdfcolorstack } - { - \int_set:Nn \l__color_backend_stack_int - { \int_use:c { main@pdfcolorstack } } - } - { - \__kernel_color_backend_stack_init:Nnn \c__color_backend_main_stack_int - { page ~ direct } { 0 ~ g ~ 0 ~ G } - \int_set_eq:NN \l__color_backend_stack_int - \c__color_backend_main_stack_int - \int_const:cn { main@pdfcolorstack } { \c__color_backend_main_stack_int } - } -\cs_gset_protected:Npn \__kernel_backend_scope_end: - { - \__kernel_backend_literal:n { x:grestore } - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_use:N \g__color_backend_stack_int \c_space_tl current - } - } -\cs_new_protected:Npn \__kernel_color_backend_stack_push:nn #1#2 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - push ~ (#2) - } - } -\cs_generate_variant:Nn \__kernel_color_backend_stack_push:nn { nx } -\cs_new_protected:Npn \__kernel_color_backend_stack_pop:n #1 - { - \__kernel_backend_literal:x - { - pdfcolorstack ~ - \int_eval:n {#1} ~ - pop - } - } -\tl_new:N \l__color_backend_fill_tl -\tl_new:N \l__color_backend_stroke_tl -\cs_new_protected:Npn \__color_backend_select_cmyk:n #1 - { \__color_backend_select:nn { #1 ~ k } { #1 ~ K } } -\cs_new_protected:Npn \__color_backend_select_gray:n #1 - { \__color_backend_select:nn { #1 ~ g } { #1 ~ G } } -\cs_new_protected:Npn \__color_backend_select_rgb:n #1 - { \__color_backend_select:nn { #1 ~ rg } { #1 ~ RG } } -\cs_new_protected:Npn \__color_backend_select:nn #1#2 - { - \tl_set:Nn \l__color_backend_fill_tl {#1} - \tl_set:Nn \l__color_backend_stroke_tl {#2} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int { #1 ~ #2 } - } +\cs_new_protected:Npn \__color_backend_select:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_select_cmyk:n \__color_backend_select:n +\cs_new_eq:NN \__color_backend_select_gray:n \__color_backend_select:n +\cs_new_eq:NN \__color_backend_select_rgb:n \__color_backend_select:n \cs_new_protected:Npn \__color_backend_reset: - { \__kernel_color_backend_stack_pop:n \l__color_backend_stack_int } + { \__kernel_backend_literal:n { pdf : ec } } \cs_new_protected:Npn \__color_backend_select_named:n #1 { \str_if_eq:nnTF {#1} { Black } @@ -199,9 +129,12 @@ \__color_backend_devicen_colorants:w } \cs_new_protected:Npn \__color_backend_select_separation:nn #1#2 - { \__color_backend_select:nn { /#1 ~ cs ~ #2 ~ scn } { /#1 ~ CS ~ #2 ~ SCN } } + { \__kernel_backend_literal:x { pdf : bc ~ \pdf_object_ref:n {#1} ~ [ #2 ] } } \cs_new_eq:NN \__color_backend_select_devicen:nn \__color_backend_select_separation:nn \cs_new_eq:NN \__color_backend_select_iccbased:nn \__color_backend_select_separation:nn +\cs_new_protected:Npn \__color_backend_init_resource:n #1 + { + } \cs_new_protected:Npn \__color_backend_separation_init:nnnnn #1#2#3#4#5 { \pdf_object_unnamed_write:nx { dict } @@ -214,23 +147,16 @@ } \exp_args:Nx \__color_backend_separation_init:nn { \str_convert_pdfname:n {#1} } {#2} - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new_protected:Npn \__color_backend_separation_init:nn #1#2 { - \pdf_object_unnamed_write:nx { array } - { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + \use:x + { + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } + { /Separation /#1 ~ #2 ~ \pdf_object_ref_last: } + } \prop_gput:Nnx \g__color_backend_colorant_prop { /#1 } { \pdf_object_ref_last: } } @@ -280,26 +206,19 @@ } { {#3} } } - \pdf_object_unnamed_write:nx { array } - { - /DeviceN ~ - [ ~ #1 ~ ] ~ - #2 ~ - \pdf_object_ref_last: - \__color_backend_devicen_colorants:n {#1} - } - \bool_lazy_and:nnT - { \cs_if_exist_p:N \pdfmanagement_if_active_p: } - { \pdfmanagement_if_active_p: } + \use:x { - \use:x + \pdf_object_new:nn { color \int_use:N \g__color_model_int } { array } + \pdf_object_write:nn { color \int_use:N \g__color_model_int } { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { \pdf_object_ref_last: } + /DeviceN ~ + [ ~ #1 ~ ] ~ + #2 ~ + \pdf_object_ref_last: + \__color_backend_devicen_colorants:n {#1} } } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } \cs_new:Npn \__color_backend_devicen_init:w #1 ~ #2 \s__color_stop { @@ -323,17 +242,8 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn { Page / Resources / ColorSpace } - { color \int_use:N \g__color_model_int } - { ~ \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { color \int_use:N \g__color_model_int } } - \cs_new_protected:Npn \__color_backend_iccbased_device:nnn #1#2#3 { \pdf_object_if_exist:nF { __color_icc_ #1 } @@ -347,49 +257,32 @@ } \pdf_object_unnamed_write:nx { array } { /ICCBased ~ \pdf_object_ref:n { __color_icc_ #1 } } - \cs_if_exist:NT \pdfmanagement_add:nnn - { - \use:x - { - \pdfmanagement_add:nnn - { Page / Resources / ColorSpace } - { Default #2 } - { \pdf_object_ref_last: } - } - } + \__color_backend_init_resource:n { Default #2 } } -\cs_new_protected:Npn \__color_backend_fill_cmyk:n #1 - { \__color_backend_fill:n { #1 ~ k } } -\cs_new_protected:Npn \__color_backend_fill_gray:n #1 - { \__color_backend_fill:n { #1 ~ g } } -\cs_new_protected:Npn \__color_backend_fill_rgb:n #1 - { \__color_backend_fill:n { #1 ~ rg } } \cs_new_protected:Npn \__color_backend_fill:n #1 - { - \tl_set:Nn \l__color_backend_fill_tl {#1} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int - { #1 ~ \l__color_backend_stroke_tl } - \group_insert_after:N \__color_backend_reset: - } -\cs_new_protected:Npn \__color_backend_stroke_cmyk:n #1 - { \__color_backend_stroke:n { #1 ~ K } } -\cs_new_protected:Npn \__color_backend_stroke_gray:n #1 - { \__color_backend_stroke:n { #1 ~ G } } -\cs_new_protected:Npn \__color_backend_stroke_rgb:n #1 - { \__color_backend_stroke:n { #1 ~ RG } } + { \__kernel_backend_literal:n { pdf : bc ~ fill ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_fill_cmyk:n \__color_backend_fill:n +\cs_new_eq:NN \__color_backend_fill_gray:n \__color_backend_fill:n +\cs_new_eq:NN \__color_backend_fill_rgb:n \__color_backend_fill:n \cs_new_protected:Npn \__color_backend_stroke:n #1 + { \__kernel_backend_literal:n { pdf : bc ~ stroke ~ [ #1 ] } } +\cs_new_eq:NN \__color_backend_stroke_cmyk:n \__color_backend_stroke:n +\cs_new_eq:NN \__color_backend_stroke_gray:n \__color_backend_stroke:n +\cs_new_eq:NN \__color_backend_stroke_rgb:n \__color_backend_stroke:n +\cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 { - \tl_set:Nn \l__color_backend_stroke_tl {#1} - \__kernel_color_backend_stack_push:nn \l__color_backend_stack_int - { \l__color_backend_fill_tl \c_space_tl #1 } - \group_insert_after:N \__color_backend_reset: + \__kernel_backend_literal:x + { pdf : bc ~ fill ~ \pdf_object_ref:n {#1} ~ [ #2 ] } } -\cs_new_protected:Npn \__color_backend_fill_separation:nn #1#2 - { \__color_backend_fill:n { /#1 ~ cs ~ #2 ~ scn } } \cs_new_protected:Npn \__color_backend_stroke_separation:nn #1#2 - { \__color_backend_stroke:n { /#1 ~ CS ~ #2 ~ SCN } } + { + \__kernel_backend_literal:x + { pdf : bc ~ stroke ~ \pdf_object_ref:n {#1} ~ [ #2 ] } + } \cs_new_eq:NN \__color_backend_fill_devicen:nn \__color_backend_fill_separation:nn \cs_new_eq:NN \__color_backend_stroke_devicen:nn \__color_backend_stroke_separation:nn +\cs_new_eq:NN \__color_backend_fill_reset: \__color_backend_reset: +\cs_new_eq:NN \__color_backend_stroke_reset: \__color_backend_reset: %% File: l3backend-box.dtx \cs_new_protected:Npn \__box_backend_clip:N #1 { @@ -977,8 +870,6 @@ { \cs_if_exist_p:N \pdfmanagement_if_active_p: } { \pdfmanagement_if_active_p:} { - \__kernel_color_backend_stack_init:Nnn \c__opacity_backend_stack_int - { page ~ direct } { /opacity 1 ~ gs } \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity 1 } { << /ca ~ 1 /CA ~ 1 >> } } @@ -996,7 +887,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity #1 } { << /ca ~ #1 /CA ~ #1 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_backend_literal:n { /opacity #1 ~ gs } \group_insert_after:N \__opacity_backend_reset: } @@ -1007,7 +898,8 @@ \cs_gset_protected:Npn \__opacity_backend_select_aux:n #1 { } } \cs_new_protected:Npn \__opacity_backend_reset: - { \__kernel_color_backend_stack_pop:n \c__opacity_backend_stack_int } + { + } \cs_new_protected:Npn \__opacity_backend_fill:n #1 { \__opacity_backend_fill_stroke:xx @@ -1033,7 +925,7 @@ \pdfmanagement_add:nnn { Page / Resources / ExtGState } { opacity.stroke #1 } { << /CA ~ #2 >> } - \__kernel_color_backend_stack_push:nn \c__opacity_backend_stack_int + \__kernel_backend_literal:n { /opacity.fill #1 ~ gs /opacity.stroke #2 ~ gs } \group_insert_after:N \__opacity_backend_reset: } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3benchmark/l3benchmark.sty b/Master/texmf-dist/tex/latex/l3experimental/l3benchmark/l3benchmark.sty index 4c7b9e96214..c84c141eea2 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3benchmark/l3benchmark.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3benchmark/l3benchmark.sty @@ -20,7 +20,7 @@ %% %% File: l3benchmark.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3benchmark}{2022-04-10}{} +\ProvidesExplPackage{l3benchmark}{2022-04-20}{} {L3 Experimental benchmarking} \fp_new:N \g_benchmark_duration_target_fp \fp_gset:Nn \g_benchmark_duration_target_fp { 1 } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3bitset/l3bitset.sty b/Master/texmf-dist/tex/latex/l3experimental/l3bitset/l3bitset.sty index 4fa73bedaa7..fc83c269194 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3bitset/l3bitset.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3bitset/l3bitset.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: l3bitset.dtx -\ProvidesExplPackage{l3bitset}{2022-04-10}{} +\ProvidesExplPackage{l3bitset}{2022-04-20}{} {L3 Experimental bitset support} \cs_new_protected:Npn \bitset_new:N #1 { diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty b/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty index 58e1769f88d..19163062860 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3draw/l3draw.sty @@ -28,7 +28,7 @@ %% %% File: l3draw.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3draw}{2022-04-10}{} +\ProvidesExplPackage{l3draw}{2022-04-20}{} {L3 Experimental core drawing support} \scan_new:N \s__draw_mark \scan_new:N \s__draw_stop diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3graphics/l3graphics.sty b/Master/texmf-dist/tex/latex/l3experimental/l3graphics/l3graphics.sty index 3b4f473f480..9b13f3782aa 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3graphics/l3graphics.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3graphics/l3graphics.sty @@ -20,8 +20,9 @@ %% %% File: l3graphics.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3graphics}{2022-04-10}{} +\ProvidesExplPackage{l3graphics}{2022-04-20}{} {L3 Experimental graphics inclusion support} +\dim_new:N \l__graphics_internal_dim \ior_new:N \l__graphics_internal_ior \tl_new:N \l__graphics_internal_tl \scan_new:N \s__graphics_stop @@ -292,8 +293,18 @@ \seq_set_eq:NN \l_file_search_path_seq \l_graphics_search_path_seq \file_get_full_name:nNTF {#1} \l__graphics_full_name_str { - \str_if_eq:eeT { \l__graphics_full_name_str } { #1 .tex } + \str_if_eq:eeTF { \l__graphics_full_name_str } { #1 .tex } { \__graphics_get_full_name:n {#1} } + { + \file_parse_full_name:VNNN \l__graphics_full_name_str + \l__graphics_dir_str \l__graphics_name_str \l__graphics_ext_str + \seq_map_inline:Nn \l_graphics_search_ext_seq + { + \str_if_eq:nVT {##1} \l__graphics_ext_str + { \seq_map_break:n { \use_none:nn } } + } + \__graphics_get_full_name:n {#1} + } } { \__graphics_get_full_name:n {#1} } \exp_args:NNNV \group_end: diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3opacity/l3opacity.sty b/Master/texmf-dist/tex/latex/l3experimental/l3opacity/l3opacity.sty index 2bc5ff3b45d..e72e975a612 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3opacity/l3opacity.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3opacity/l3opacity.sty @@ -20,7 +20,7 @@ %% %% File: l3opacity.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3opacity}{2022-04-10}{} +\ProvidesExplPackage{l3opacity}{2022-04-20}{} {L3 Experimental opacity support} \cs_new_protected:Npn \opacity_select:n #1 { \__opacity_select:nN {#1} \__opacity_backend_select:n } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty index 9d3a1cec381..4b52e462886 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty @@ -20,7 +20,7 @@ %% %% File: l3str-format.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3str-format}{2022-04-10}{} +\ProvidesExplPackage{l3str-format}{2022-04-20}{} {L3 Experimental string formatting} \cs_generate_variant:Nn \use:nn { nf } \cs_generate_variant:Nn \use:nnn { fnf } diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty b/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty index 82c3e44bad9..1f66cb02587 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/l3sys-shell/l3sys-shell.sty @@ -20,7 +20,7 @@ %% %% File: l3sys-shell.dtx \RequirePackage{expl3} -\ProvidesExplPackage{l3sys-shell}{2022-04-10}{} +\ProvidesExplPackage{l3sys-shell}{2022-04-20}{} {L3 Experimental system shell functions} \scan_new:N \s__sys_stop \quark_new:N \q__sys_nil diff --git a/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty b/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty index 4c3d6d531a0..62a999ede6a 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/xcoffins/xcoffins.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: xcoffins.dtx -\ProvidesExplPackage{xcoffins}{2022-04-10}{} +\ProvidesExplPackage{xcoffins}{2022-04-20}{} {L3 Experimental design level coffins} \keys_define:nn { coffin } { diff --git a/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty b/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty index 8d52f950685..1913ee12844 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/xgalley/l3galley.sty @@ -32,7 +32,7 @@ }% \endinput } -\ProvidesExplPackage{l3galley}{2022-04-10}{} +\ProvidesExplPackage{l3galley}{2022-04-20}{} {L3 Experimental galley code} \int_new:N \l__galley_tmp_int \seq_new:N \g__galley_tmpa_seq diff --git a/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty b/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty index d65e9bf4ece..69373ce1948 100644 --- a/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty +++ b/Master/texmf-dist/tex/latex/l3experimental/xgalley/xgalley.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: xgalley.dtx -\ProvidesExplPackage{xgalley}{2022-04-10}{} +\ProvidesExplPackage{xgalley}{2022-04-20}{} {L3 Experimental galley} \RequirePackage{xtemplate,l3galley} \clist_new:N \l__galley_tmpa_clist diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex index 8d286c95e9a..998c1dcc6c5 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex @@ -70,7 +70,7 @@ %% and all files in that bundle must be distributed together. %% %% File: expl3.dtx -\def\ExplFileDate{2022-04-10}% +\def\ExplFileDate{2022-04-20}% \begingroup \def\next{\endgroup}% \expandafter\ifx\csname PackageError\endcsname\relax @@ -922,6 +922,8 @@ Type H <return> for immediate help}\def~{\errmessage{% \__kernel_primitive:NN \crampedscriptstyle \tex_crampedscriptstyle:D \__kernel_primitive:NN \crampedtextstyle \tex_crampedtextstyle:D \__kernel_primitive:NN \csstring \tex_csstring:D + \__kernel_primitive:NN \discretionaryligaturemode + \tex_discretionaryligaturemode:D \__kernel_primitive:NN \directlua \tex_directlua:D \__kernel_primitive:NN \dviextension \tex_dviextension:D \__kernel_primitive:NN \dvifeedback \tex_dvifeedback:D @@ -968,10 +970,12 @@ Type H <return> for immediate help}\def~{\errmessage{% \__kernel_primitive:NN \luatexbanner \tex_luatexbanner:D \__kernel_primitive:NN \luatexrevision \tex_luatexrevision:D \__kernel_primitive:NN \luatexversion \tex_luatexversion:D + \__kernel_primitive:NN \mathdefaultsmode \tex_mathdefaultsmode:D \__kernel_primitive:NN \mathdelimitersmode \tex_mathdelimitersmode:D \__kernel_primitive:NN \mathdir \tex_mathdir:D \__kernel_primitive:NN \mathdirection \tex_mathdirection:D \__kernel_primitive:NN \mathdisplayskipmode \tex_mathdisplayskipmode:D + \__kernel_primitive:NN \matheqdirmode \tex_matheqdirmode:D \__kernel_primitive:NN \matheqnogapstep \tex_matheqnogapstep:D \__kernel_primitive:NN \mathnolimitsmode \tex_mathnolimitsmode:D \__kernel_primitive:NN \mathoption \tex_mathoption:D @@ -29076,7 +29080,10 @@ Type H <return> for immediate help}\def~{\errmessage{% \exp_after:wN \__color_draw:nnn \l__color_current_tl { stroke } } \cs_new_protected:Npn \__color_draw:nnn #1#2#3 - { \use:c { __color_backend_ #3 _ #1 :n } {#2} } + { + \use:c { __color_backend_ #3 _ #1 :n } {#2} + \exp_args:Nc \group_insert_after:N { __color_backend_ #3 _ reset: } + } \tl_new:N \l__color_named_tl \cs_new_protected:Npn \color_set:nn #1#2 { @@ -35365,12 +35372,7 @@ Type H <return> for immediate help}\def~{\errmessage{% \__kernel_patch_deprecation:nnNNpn { 2020-06-18 } { \seq_map_indexed_function:NN } \cs_gset:Npn \seq_indexed_map_function:NN { \seq_map_indexed_function:NN } \__kernel_patch_deprecation:nnNNpn { 2021-01-11 } { (no~longer~required) } -\cs_gset_protected:Npn \sys_load_deprecation: - { - \bool_if:NF \g__str_deprecation_bool - { \__kernel_sys_configuration_load:n { l3deprecation } } - \bool_gset_true:N \g__str_deprecation_bool - } +\cs_gset_protected:Npn \sys_load_deprecation: { } \__kernel_patch_deprecation:nnNNpn { 2020-01-03 } { \text_lowercase:n } \cs_gset:Npn \tl_lower_case:n #1 { \text_lowercase:n {#1} } diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex index a7a2ac6dbfd..e579987e0a7 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: expl3.dtx -\def\ExplFileDate{2022-04-10}% +\def\ExplFileDate{2022-04-20}% \let\ExplLoaderFileDate\ExplFileDate \begingroup \catcode`\_=11 diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx index 08875b5a725..2cb7f12271e 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: expl3.dtx -\def\ExplFileDate{2022-04-10}% +\def\ExplFileDate{2022-04-20}% \let\ExplLoaderFileDate\ExplFileDate \begingroup \catcode`\_=11 diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty index b4b85ce414d..3ff81a91a75 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: expl3.dtx -\def\ExplFileDate{2022-04-10}% +\def\ExplFileDate{2022-04-20}% \let\ExplLoaderFileDate\ExplFileDate \ProvidesPackage{expl3} [% |