diff options
author | Karl Berry <karl@freefriends.org> | 2022-08-23 20:22:21 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-08-23 20:22:21 +0000 |
commit | 7a56dfacda86e4e827037995a1bf905b9713c935 (patch) | |
tree | 3127b039624fc3de52de947874519cf0079830b3 /Master | |
parent | 62e619401727918687f8b03611ed1d6fbd6c3263 (diff) |
l3backend (23aug22)
git-svn-id: svn://tug.org/texlive/trunk@64178 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
17 files changed, 134 insertions, 188 deletions
diff --git a/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md b/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md index 3c8cb7d6d2a..8bf6a938660 100644 --- a/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/l3backend/CHANGELOG.md @@ -6,6 +6,11 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-08-23] + +### Changed +- Approach to setting current color data from LaTeX2e + ## [2022-08-05] ### Changed @@ -257,7 +262,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-08-05...HEAD +[Unreleased]: https://github.com/latex3/latex3/compare/2022-08-23...HEAD +[2022-08-23]: https://github.com/latex3/latex3/compare/2022-08-05...2022-08-23 [2022-08-05]: https://github.com/latex3/latex3/compare/2022-07-01...2022-08-05 [2022-07-01]: https://github.com/latex3/latex3/compare/2022-04-20...2022-07-01 [2022-04-20]: https://github.com/latex3/latex3/compare/2022-04-14...2022-04-20 diff --git a/Master/texmf-dist/doc/latex/l3backend/README.md b/Master/texmf-dist/doc/latex/l3backend/README.md index fe959f8ca7d..724c54a8902 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-08-05 +Release 2022-08-23 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 1d3030cbd3b..00836f6abb2 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/source/latex/l3backend/l3backend-basics.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-basics.dtx index 768bd20d506..135bee63ebe 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % @@ -70,27 +70,27 @@ % \begin{macrocode} \ProvidesExplFile %<*dvipdfmx> - {l3backend-dvipdfmx.def}{2022-08-05}{} + {l3backend-dvipdfmx.def}{2022-08-23}{} {L3 backend support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-dvips.def}{2022-08-05}{} + {l3backend-dvips.def}{2022-08-23}{} {L3 backend support: dvips} %</dvips> %<*dvisvgm> - {l3backend-dvisvgm.def}{2022-08-05}{} + {l3backend-dvisvgm.def}{2022-08-23}{} {L3 backend support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-luatex.def}{2022-08-05}{} + {l3backend-luatex.def}{2022-08-23}{} {L3 backend support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-pdftex.def}{2022-08-05}{} + {l3backend-pdftex.def}{2022-08-23}{} {L3 backend support: PDF output (pdfTeX)} %</pdftex> %<*xetex> - {l3backend-xetex.def}{2022-08-05}{} + {l3backend-xetex.def}{2022-08-23}{} {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 628176536ab..6b5b08457c4 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-color.dtx index 336ff45135d..dabf7284278 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % @@ -79,31 +79,24 @@ % \begin{macro}{\@@_backend_pickup:N} % \begin{macro}{\@@_backend_pickup:w} % Allow for \LaTeXe{} color. Here, the possible input values are limited: -% \texttt{dvips}-style colors can mainly be taken as-is with the exception -% spot ones (here we need a model and a tint). The \texttt{x}-type expansion +% \texttt{dvips}-style colors can be taken as-is. The \texttt{x}-type expansion % is there to cover the case where \pkg{xcolor} is in use. % \begin{macrocode} -\cs_new_protected:Npn \@@_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \@@_backend_pickup:N #1 { - \cs_set_protected:Npn \@@_backend_pickup:N #1 + \exp_args:NV \tl_if_head_is_space:nTF \current@color { - \exp_args:NV \tl_if_head_is_space:nTF \current@color - { - \tl_set:Nx #1 - { - { named } - { \exp_after:wN \use:n \current@color } - } - } - { - \exp_last_unbraced:Nx \@@_backend_pickup:w - { \current@color } \s_@@_stop #1 - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } + } + { + \exp_last_unbraced:Nx \@@_backend_pickup:w + { \current@color } \s_@@_stop #1 } - \cs_new_protected:Npn \@@_backend_pickup:w #1 ~ #2 \s_@@_stop #3 - { \tl_set:Nn #3 { {#1} {#2} } } } +\cs_new_protected:Npn \@@_backend_pickup:w #1 ~ #2 \s_@@_stop #3 + { \tl_set:Nn #3 { {#1} {#2} } } % \end{macrocode} % \end{macro} % \end{macro} @@ -120,41 +113,28 @@ % % \begin{macro}{\@@_backend_pickup:N} % \begin{macro}{\@@_backend_pickup:w} -% The current color in driver-dependent format: pick up the package-mode -% data if available. We end up converting back and forward in this route as -% we store our color data in \texttt{dvips} format. -% The \tn{current@color} needs to be \texttt{x}-expanded before -% \cs{@@_backend_pickup:w} breaks it apart, because for instance -% \pkg{xcolor} sets it to be instructions to generate a color -% \begin{macrocode} -\cs_new_protected:Npn \@@_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +% Same ideas, but with a different backend-dependent format. +% \begin{macrocode} +\cs_new_protected:Npn \@@_backend_pickup:N #1 { - \cs_set_protected:Npn \@@_backend_pickup:N #1 - { - \exp_last_unbraced:Nx \@@_backend_pickup:w - { \current@color } ~ 0 ~ 0 ~ 0 \s_@@_stop #1 - } - \cs_new_protected:Npn \@@_backend_pickup:w - #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s_@@_stop #7 + \exp_last_unbraced:Nx \@@_backend_pickup:w + { \current@color } ~ 0 ~ 0 ~ 0 \s_@@_stop #1 + } +\cs_new_protected:Npn \@@_backend_pickup:w + #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s_@@_stop #7 + { + \str_if_eq:nnTF {#2} { g } + { \tl_set:Nn #7 { { gray } {#1} } } { - \str_if_eq:nnTF {#2} { g } - { \tl_set:Nn #7 { { gray } {#1} } } + \str_if_eq:nnTF {#4} { rg } + { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } { - \str_if_eq:nnTF {#4} { rg } - { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } + \str_if_eq:nnTF {#5} { k } + { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } { - \str_if_eq:nnTF {#5} { k } - { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } - { - \str_if_eq:nnTF {#2} { cs } - { - \tl_set:Nx #7 { { \use:n #1 } { #5 } } - } - { - \tl_set:Nn #7 { { gray } { 0 } } - } - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } } } } diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-draw.dtx index f23e3ec115e..c3d91ed9aff 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-graphics.dtx index e1c2af95fa9..4a4b5136adb 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-header.dtx index abc2f4a7788..f4caf7a7e57 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-opacity.dtx index e3132f69553..a1decb1c384 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx b/Master/texmf-dist/source/latex/l3backend/l3backend-pdf.dtx index 052a3ba73d7..d93ddc4e338 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-08-05} +% \date{Released 2022-08-23} % % \maketitle % diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def index 3f0a4e3c5d4..7146ee10cdc 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-08-05}{} + {l3backend-dvipdfmx.def}{2022-08-23}{} {L3 backend support: dvipdfmx} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -66,27 +66,21 @@ \cs_new_protected:Npn \__kernel_backend_scope_end: { \__kernel_backend_literal:n { x:grestore } } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 + \exp_args:NV \tl_if_head_is_space:nTF \current@color { - \exp_args:NV \tl_if_head_is_space:nTF \current@color - { - \tl_set:Nx #1 - { - { named } - { \exp_after:wN \use:n \current@color } - } - } - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } \s__color_stop #1 - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } + } + { + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } \s__color_stop #1 } - \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 - { \tl_set:Nn #3 { {#1} {#2} } } } +\cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 + { \tl_set:Nn #3 { {#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 diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-dvips.def index 4d561e6b4f3..b7efe7a693e 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-08-05}{} + {l3backend-dvips.def}{2022-08-23}{} {L3 backend support: dvips} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -83,27 +83,21 @@ \cs_new_protected:Npn \__kernel_backend_scope_end: { \__kernel_backend_literal:n { ps:grestore } } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 + \exp_args:NV \tl_if_head_is_space:nTF \current@color { - \exp_args:NV \tl_if_head_is_space:nTF \current@color - { - \tl_set:Nx #1 - { - { named } - { \exp_after:wN \use:n \current@color } - } - } - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } \s__color_stop #1 - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } + } + { + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } \s__color_stop #1 } - \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 - { \tl_set:Nn #3 { {#1} {#2} } } } +\cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 + { \tl_set:Nn #3 { {#1} {#2} } } \cs_new_protected:Npn \__color_backend_select_cmyk:n #1 { \__color_backend_select:n { cmyk ~ #1 } } \cs_new_protected:Npn \__color_backend_select_gray: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 b9a97cca0e7..3f20aef6ff2 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-08-05}{} + {l3backend-dvisvgm.def}{2022-08-23}{} {L3 backend support: dvisvgm} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -97,27 +97,21 @@ } \cs_generate_variant:Nn \__kernel_backend_scope:n { x } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 + \exp_args:NV \tl_if_head_is_space:nTF \current@color { - \exp_args:NV \tl_if_head_is_space:nTF \current@color - { - \tl_set:Nx #1 - { - { named } - { \exp_after:wN \use:n \current@color } - } - } - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } \s__color_stop #1 - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } + } + { + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } \s__color_stop #1 } - \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 - { \tl_set:Nn #3 { {#1} {#2} } } } +\cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 + { \tl_set:Nn #3 { {#1} {#2} } } \cs_new_protected:Npn \__color_backend_select_cmyk:n #1 { \__color_backend_select:n { cmyk ~ #1 } } \cs_new_protected:Npn \__color_backend_select_gray:n #1 diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-luatex.def index 8b056a250a3..9be080803a7 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-08-05}{} + {l3backend-luatex.def}{2022-08-23}{} {L3 backend support: PDF output (LuaTeX)} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -82,34 +82,26 @@ } \cs_generate_variant:Nn \__kernel_backend_matrix:n { x } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } ~ 0 ~ 0 ~ 0 \s__color_stop #1 - } - \cs_new_protected:Npn \__color_backend_pickup:w - #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s__color_stop #7 + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } ~ 0 ~ 0 ~ 0 \s__color_stop #1 + } +\cs_new_protected:Npn \__color_backend_pickup:w + #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s__color_stop #7 + { + \str_if_eq:nnTF {#2} { g } + { \tl_set:Nn #7 { { gray } {#1} } } { - \str_if_eq:nnTF {#2} { g } - { \tl_set:Nn #7 { { gray } {#1} } } + \str_if_eq:nnTF {#4} { rg } + { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } { - \str_if_eq:nnTF {#4} { rg } - { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } + \str_if_eq:nnTF {#5} { k } + { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } { - \str_if_eq:nnTF {#5} { k } - { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } - { - \str_if_eq:nnTF {#2} { cs } - { - \tl_set:Nx #7 { { \use:n #1 } { #5 } } - } - { - \tl_set:Nn #7 { { gray } { 0 } } - } - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } } } } diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def index 2bcf56a29b7..4d5b03c068b 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-08-05}{} + {l3backend-pdftex.def}{2022-08-23}{} {L3 backend support: PDF output (pdfTeX)} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -82,34 +82,26 @@ } \cs_generate_variant:Nn \__kernel_backend_matrix:n { x } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } ~ 0 ~ 0 ~ 0 \s__color_stop #1 - } - \cs_new_protected:Npn \__color_backend_pickup:w - #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s__color_stop #7 + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } ~ 0 ~ 0 ~ 0 \s__color_stop #1 + } +\cs_new_protected:Npn \__color_backend_pickup:w + #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s__color_stop #7 + { + \str_if_eq:nnTF {#2} { g } + { \tl_set:Nn #7 { { gray } {#1} } } { - \str_if_eq:nnTF {#2} { g } - { \tl_set:Nn #7 { { gray } {#1} } } + \str_if_eq:nnTF {#4} { rg } + { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } { - \str_if_eq:nnTF {#4} { rg } - { \tl_set:Nn #7 { { rgb } { #1 ~ #2 ~ #3 } } } + \str_if_eq:nnTF {#5} { k } + { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } { - \str_if_eq:nnTF {#5} { k } - { \tl_set:Nn #7 { { cmyk } { #1 ~ #2 ~ #3 ~ #4 } } } - { - \str_if_eq:nnTF {#2} { cs } - { - \tl_set:Nx #7 { { \use:n #1 } { #5 } } - } - { - \tl_set:Nn #7 { { gray } { 0 } } - } - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } } } } diff --git a/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def b/Master/texmf-dist/tex/latex/l3backend/l3backend-xetex.def index 2fa8d2ce066..29e2cc7c183 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-08-05}{} + {l3backend-xetex.def}{2022-08-23}{} {L3 backend support: XeTeX} \cs_if_exist:NTF \__kernel_dependency_version_check:nn { @@ -66,27 +66,21 @@ \cs_new_protected:Npn \__kernel_backend_scope_end: { \__kernel_backend_literal:n { x:grestore } } %% File: l3backend-color.dtx -\cs_new_protected:Npn \__color_backend_pickup:N #1 { } -\cs_if_exist:cT { ver@color.sty } +\cs_new_protected:Npn \__color_backend_pickup:N #1 { - \cs_set_protected:Npn \__color_backend_pickup:N #1 + \exp_args:NV \tl_if_head_is_space:nTF \current@color { - \exp_args:NV \tl_if_head_is_space:nTF \current@color - { - \tl_set:Nx #1 - { - { named } - { \exp_after:wN \use:n \current@color } - } - } - { - \exp_last_unbraced:Nx \__color_backend_pickup:w - { \current@color } \s__color_stop #1 - } + \tl_set:Nn #1 { { gray } { 0 } } + \msg_warning:nnx { color } { unhandled } + { \current@color } + } + { + \exp_last_unbraced:Nx \__color_backend_pickup:w + { \current@color } \s__color_stop #1 } - \cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 - { \tl_set:Nn #3 { {#1} {#2} } } } +\cs_new_protected:Npn \__color_backend_pickup:w #1 ~ #2 \s__color_stop #3 + { \tl_set:Nn #3 { {#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 |