[latex3-commits] [l3svn] branch master updated: New two-part internal representation of colour

noreply at latex-project.org noreply at latex-project.org
Tue Sep 26 15:25:43 CEST 2017


This is an automated email from the git hooks/post-receive script.

joseph pushed a commit to branch master
in repository l3svn.

The following commit(s) were added to refs/heads/master by this push:
       new  08d78d5   New two-part internal representation of colour
08d78d5 is described below

commit 08d78d5b7e02971eb43b353b739a20ce0c46232d
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Tue Sep 26 14:21:39 2017 +0100

    New two-part internal representation of colour
    
    The driver for this change is mainly to support spot colours: they need some different
    hanlding from others. It should also allow extension to spot mixes: at this stage
    the mechanisms are undeveloped but the path is clear.
    
    As the color model and actual setting are separate, I've broken into two parts.
    At some future stage we may want to worry about foreground/background but that
    is not done yet. Partly this depends on whether the colour is strictly internal.
    
    Separating the setting data using commas or similar is in some was attractive but
    as we always need spaces in the \special it's not really that helpful. The same
    would apply to storing as a prop: attractive in a conceptual sense but not efficient
    at point-of-use, and with no real gain.
    
    At the moment, there is still no sense of setting or managing colours, just picking
    up LaTeX2e ones. As such, the complexities of separations have not been touched at
    all yet.
---
 l3kernel/l3color.dtx                    |   62 +++++++------
 l3kernel/l3drivers.dtx                  |  147 ++++++++++++++++++++++++-------
 l3kernel/testfiles/m3expl001.luatex.tlg |   12 +--
 l3kernel/testfiles/m3expl001.ptex.tlg   |    8 +-
 l3kernel/testfiles/m3expl001.tlg        |   12 +--
 l3kernel/testfiles/m3expl001.uptex.tlg  |    8 +-
 l3kernel/testfiles/m3expl001.xetex.tlg  |    8 +-
 l3kernel/testfiles/m3expl003.luatex.tlg |   12 +--
 l3kernel/testfiles/m3expl003.ptex.tlg   |    8 +-
 l3kernel/testfiles/m3expl003.tlg        |   12 +--
 l3kernel/testfiles/m3expl003.uptex.tlg  |    8 +-
 l3kernel/testfiles/m3expl003.xetex.tlg  |    8 +-
 12 files changed, 218 insertions(+), 87 deletions(-)

diff --git a/l3kernel/l3color.dtx b/l3kernel/l3color.dtx
index 85a4c2e..d8e44e3 100644
--- a/l3kernel/l3color.dtx
+++ b/l3kernel/l3color.dtx
@@ -78,34 +78,35 @@
 %
 % \subsection{Internal functions}
 %
-% \begin{variable}[added = 2017-06-15, updated = 2017-09-23]
-%   {\l__color_current_tl}
+% \begin{variable}[added = 2017-09-26]
+%   {\l__color_current_model_tl, \l__color_current_setting_tl}
 %   The color currently active for foreground (text, \emph{etc.}) material.
-%   This is stored in the form of a color model followed by one or more
-%   values. There are four pre-defined models, three of which take numerical
-%   values in the range $[0,1]$:
-%   \begin{itemize}
-%     \item \texttt{gray \meta{gray}} Grayscale color with the \meta{gray}
-%       value running from $0$ (fully black) to $1$ (fully white)
-%     \item \texttt{cmyk \meta{cyan} \meta{magenta} \meta{yellow} \meta{black}}
-%     \item \texttt{rgb \meta{red} \meta{green} \meta{blue}}
-%   \end{itemize}
-%   Notice that the value are separated by spaces. There is a fourth pre-defined
-%   model using a string value and a numerical one:
+%   This information is stored in two parts: the model in use and
+%   \meta{setting}: the latter is a \emph{space} separated list of one or more
+%   values, with the required number depending on the model in use.
+%
+%   There are four pre-defined color models which have meaning and data
+%   requirements as follows:
 %   \begin{itemize}
-%     \item \texttt{named \meta{name} \meta{tint}}
+%     \item \texttt{gray} Grayscale color requiring a single \meta{settings}
+%       value in the range~$[0,1]$ ($0$ is fully black, $1$ is fully white)
+%     \item \texttt{cmyk} CMYK color requiring four entries in the
+%       \meta{settings}, one for each of cyan, magenta, yellow and black,
+%       each in the range~$[0,1]$
+%     \item \texttt{rgb} RGB color requiring three entries in the
+%       \meta{settings}, one for each of red, green and blue, each in the
+%       range~$[0,1]$
+%     \item \texttt{named} A pre-defined named (spot) color, with one two
+%       entries in the setting, the name itself and the loading (tint);
+%       the latter should be in the range~$[0,1]$
 %   \end{itemize}
-%   where the \meta{name} should be a pre-defined string color name and the
-%   \meta{tint} should be in the range $[0,1]$.
 %
-%   Additional color models may be defined based on mixing of named colors:
-%   these will generally follow the pattern of the standard \texttt{cmyk}
-%   model but with each value representing the contribution of a named (spot)
-%   color.
+%   Additional models may be created to allow mixing of named colors. The
+%   number of \meta{settings} these require will depend on the number of
+%   colors to be mixed.
 %   \begin{texnote}
-%     This format is based on that for \texttt{dvips} color specials, extended
-%     to cover additional types. Each driver should provide appropriate
-%     conversion to their native format at the point of output.
+%     The content of \cs{l__color_current_setting_tl} is space-separated as
+%     this allows it to be used directly in specials in many common cases.
 %   \end{texnote}
 % \end{variable}
 %
@@ -145,12 +146,17 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \begin{variable}{\l__color_current_tl}
-%   The current color: the format here is taken from \texttt{dvips} but it
-%   is easy enough to convert to \texttt{pdfmode} as required.
+% \begin{variable}{\l__color_current_model_tl, \l__color_current_setting_tl}
+%   The current color in two distinct parts. As the setting data is used only
+%   for specials, and those are always space-separated, it makes most sense to
+%   hold the internal information in that form. Any splitting is done by a
+%   delimited function but often the entire \texttt{tl} can be used as-is:
+%   see \texttt{l3drivers.dtx}.
 %    \begin{macrocode}
-\tl_new:N \l__color_current_tl
-\tl_set:Nn \l__color_current_tl { gray~0 }
+\tl_new:N \l__color_current_model_tl
+\tl_set:Nn \l__color_current_model_tl { gray }
+\tl_new:N \l__color_current_setting_tl
+\tl_set:Nn \l__color_current_setting_tl { 0 }
 %    \end{macrocode}
 % \end{variable}
 %
diff --git a/l3kernel/l3drivers.dtx b/l3kernel/l3drivers.dtx
index 0ec3f3b..0d432ee 100644
--- a/l3kernel/l3drivers.dtx
+++ b/l3kernel/l3drivers.dtx
@@ -511,7 +511,9 @@
 %    \end{macrocode}
 %
 % \begin{macro}[aux]{\@@_color_pickup:}
-%   Allow for \LaTeXe{}.
+%   Allow for \LaTeXe{} color. Here, the possible input values are limited:
+%   \texttt{dvips}-style colors can mainly be taken as-is with the exception
+%   of named ones (here we need a model and a tint).
 %    \begin{macrocode}
 %<*package>
 \AtBeginDocument
@@ -519,7 +521,20 @@
     \@ifpackageloaded { color }
       {
         \cs_new_protected:Npn \@@_color_pickup:
-          { \tl_set:Nx \l__color_current_tl { \current at color } }
+          {
+            \exp_args:NV \tl_if_head_is_space:nTF \current at color
+              {
+                \tl_set:Nn \l__color_current_model_tl { named }
+                \tl_set:Nx \l__color_current_setting_tl
+                   { \exp_args:wN \use:n \current at color \c_space_tl 1 }
+              }
+              { \exp_args:wN \@@_color_pickup_aux:w \current at color \q_stop }
+          }
+        \cs_new_protected:Npn \@@_color_pickup_aux:w #1 ~ #2 \q_stop
+          {
+            \tl_set:Nn \l__color_current_model_tl {#1}
+            \tl_set:Nn \l__color_current_setting_tl {#2}
+        }
       }
       { \cs_new_protected:Npn \@@_color_pickup: { } }
   }
@@ -528,21 +543,50 @@
 % \end{macro}
 %
 % \begin{macro}[int]{\@@_color_ensure_current:}
+% \begin{macro}[aux, EXP]
+%   {
+%     \@@_color_convert_gray: ,
+%     \@@_color_convert_cmyk: ,
+%     \@@_color_convert_rgb:  ,
+%     \@@_color_convert_named:
+%   }
 % \begin{macro}[aux]{\@@_color_reset:}
-%   Directly set the color using the specials: no optimisation here.
+%   Convert the color data to the appropriate form: \texttt{named} colors can't
+%   have a tint level here! The easy route of just picking up \texttt{named}
+%   won't work as there could be additional models created for mixing named
+%   colors. (They would not be supported at the moment, but still need to be
+%   handled.)
 %    \begin{macrocode}
 \cs_new_protected:Npn \@@_color_ensure_current:
   {
 %<*package>
     \@@_color_pickup:
 %</package>
-    \tex_special:D { color~push~\l__color_current_tl }
+    \tex_special:D
+      {
+        color~push~
+        \use:c { @@_color_convert_ \l__color_current_model_tl : }
+      }
   }
+\cs_new:Npn \@@_color_convert_gray:
+  { gray ~ \l__color_current_setting_tl }
+\cs_new:Npn \@@_color_convert_cmyk:
+  { cmyk ~ \l__color_current_setting_tl }
+\cs_new:Npn \@@_color_convert_rgb:
+  { rgb ~ \l__color_current_setting_tl }
+\cs_new:Npn \@@_color_convert_named:
+  {
+    \exp_after:wN \@@_color_convert_named:w
+      \l__color_current_setting_tl
+  }
+\cs_new:Npn \@@_color_convert_named:w #1 ~ #2
+  { \c_space_tl #1 }
 \cs_new_protected:Npn \@@_color_reset:
   { \tex_special:D { color~pop } }
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
+% \end{macro}
 %
 %    \begin{macrocode}
 %</dvisvgm|dvipdfmx|dvips|xdvipdfmx>
@@ -573,23 +617,43 @@
             \exp_last_unbraced:Nx \@@_color_pickup_aux:w
               { \current at color } ~ 0 ~ 0 ~ 0 \q_stop
           }
-        \cs_new:Npn \@@_color_pickup_aux:w #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \q_stop
+        \cs_new_protected:Npn \@@_color_pickup_aux:w
+          #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \q_stop
           {
-            \tl_set:Nx \l__color_current_tl
+            \str_if_eq:nnTF {#2} { g }
+              {
+                \tl_set:Nn \l__color_current_model_tl { gray }
+                \tl_set:Nn \l__color_current_setting_tl { #1 }
+              }
               {
-                \str_if_eq:nnTF {#2} { g }
-                  { gray ~ #1 }
+                \str_if_eq:nnTF {#4} { rg }
+                  {
+                    \tl_set:Nn \l__color_current_model_tl { rgb }
+                    \tl_set:Nn \l__color_current_setting_tl
+                      { #1 ~ #2 ~ #3 }
+                  }
                   {
-                    \str_if_eq:nnTF {#4} { rg }
-                      { rgb ~ #1 ~ #2 ~ #3 }
-                      {
-                        \str_if_eq:nnTF {#5} { k }
-                          { cmyk ~ #1 ~ #2 ~ #3 ~ #4 }
-                          { gray ~ #1 }
-                      }
+                     \str_if_eq:nnTF {#5} { k }
+                       {
+                        \tl_set:Nn \l__color_current_model_tl { cmyk }
+                        \tl_set:Nn \l__color_current_setting_tl
+                          { #1 ~ #2 ~ #3 ~ #4 }
+                       }
+                       {
+                         \str_if_eq:nnTF {#2} { cs }
+                           {
+                             \tl_set:Nn \l__color_current_model_tl { named }
+                             \tl_set:Nx \l__color_current_setting_tl
+                               { \use_none:n #1 ~ #5 }
+                           }
+                           {
+                             \tl_set:Nn \l__color_current_model_tl { gray }
+                             \clist_set:Nn \l__color_current_setting_tl { 0 }
+                           }
+                       }
                   }
               }
-          }
+        }
       }
       { \cs_new_protected:Npn \@@_color_pickup: { } }
   }
@@ -609,14 +673,17 @@
 % \begin{macro}[int]{\@@_color_ensure_current:}
 % \begin{macro}[aux, EXP]
 %   {
-%     \@@_color_convert:w, \@@_color_convert_gray:w,
-%     \@@_color_convert_cmyk:w, \@@_color_convert_rgb:w
+%     \@@_color_convert_gray: ,
+%     \@@_color_convert_cmyk: ,
+%     \@@_color_convert_rgb:  ,
+%     \@@_color_convert_named:
 %   }
+% \begin{macro}[aux, EXP]{\@@_color_convert_named:w}
 % \begin{macro}[aux]{\@@_color_reset:}
 %   There is a dedicated primitive/primitive interface for setting colors.
 %   As with scoping, this approach is not suitable for cached operations.
-%   Since we are using the \texttt{dvips} format to store color, there is a
-%   bit of work to correctly place it in the output.
+%   Most of the conversions are trivial but the need to cover named colors
+%   makes life slightly more interesting.
 %    \begin{macrocode}
 \cs_new_protected:Npx \@@_color_ensure_current:
   {
@@ -628,21 +695,34 @@
       { \pdftex_pdfcolorstack:D }
         \exp_not:N \l_@@_color_stack_int push
           {
-            \exp_not:N \exp_after:wN
-            \exp_not:N \@@_color_convert:w
-            \exp_not:N \l__color_current_tl
-            \c_space_tl 0 ~ 0 ~ 0
-            \exp_not:N \q_stop
+            \exp_not:N \use:c
+              { @@_color_convert_ \exp_not:N \l__color_current_model_tl : }
           }
   }
-\cs_new:Npn \@@_color_convert:w #1 ~
-  { \use:c { @@_color_convert_ #1 :w } }
-\cs_new:Npn \@@_color_convert_gray:w #1 ~ #2 \q_stop
-  { #1 ~ g ~ #1 ~ G }
-\cs_new:Npn \@@_color_convert_cmyk:w #1 ~ #2 ~ #3 ~ #4 ~#5 \q_stop
-  { #1 ~ #2 ~ #3 ~ #4 ~ k ~ #1 ~ #2 ~ #3 ~ #4 ~ K }
-\cs_new:Npn \@@_color_convert_rgb:w #1 ~ #2 ~ #3 ~ #4 \q_stop
-  { #1 ~ #2 ~ #3 ~ rg ~ #1 ~ #2 ~ #3 ~ RG }
+\cs_new:Npn \@@_color_convert_gray:
+  {
+    \l__color_current_setting_tl \c_space_tl g ~
+    \l__color_current_setting_tl \c_space_tl G
+  }
+\cs_new:Npn \@@_color_convert_cmyk:
+  {
+    \l__color_current_setting_tl \c_space_tl k ~
+    \l__color_current_setting_tl \c_space_tl K
+  }
+\cs_new:Npn \@@_color_convert_rgb:
+  {
+    \l__color_current_setting_tl \c_space_tl rg ~
+    \l__color_current_setting_tl \c_space_tl RG
+  }
+\cs_new:Npn \@@_color_convert_named:
+  {
+    \exp_after:wN \@@_color_convert_named:w
+      \l__color_current_setting_tl
+  }
+\cs_new:Npn \@@_color_convert_named:w #1 ~ #2
+  {
+    /#1 ~ cs ~ /#1 ~ CS ~ #2 ~ sc ~ #2 ~ SC
+  }
 \cs_new_protected:Npx \@@_color_reset:
   {
     \cs_if_exist:NTF \luatex_pdfextension:D
@@ -654,6 +734,7 @@
 % \end{macro}
 % \end{macro}
 % \end{macro}
+% \end{macro}
 %
 %    \begin{macrocode}
 %</pdfmode>
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index 9b7b433..50c3406 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -5323,7 +5323,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5705,10 +5706,11 @@ Defining \c__expl_def_ext_tl on line ...
 Defining \l__driver_color_stack_int on line ...
 \l__driver_color_stack_int=\count193
 Defining \__driver_color_ensure_current: on line ...
-Defining \__driver_color_convert:w on line ...
-Defining \__driver_color_convert_gray:w on line ...
-Defining \__driver_color_convert_cmyk:w on line ...
-Defining \__driver_color_convert_rgb:w on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index 755a196..15a6f0b 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -5313,7 +5313,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5694,6 +5695,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3dvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index 733a254..726c8a8 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -5313,7 +5313,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5897,10 +5898,11 @@ Defining \c__expl_def_ext_tl on line ...
 Defining \l__driver_color_stack_int on line ...
 \l__driver_color_stack_int=\count195
 Defining \__driver_color_ensure_current: on line ...
-Defining \__driver_color_convert:w on line ...
-Defining \__driver_color_convert_gray:w on line ...
-Defining \__driver_color_convert_cmyk:w on line ...
-Defining \__driver_color_convert_rgb:w on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index f468c5f..5961963 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -5311,7 +5311,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5893,6 +5894,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3dvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index bed7148..32c2ae3 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -5301,7 +5301,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5677,6 +5678,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3xdvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index 9b7b433..50c3406 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -5323,7 +5323,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5705,10 +5706,11 @@ Defining \c__expl_def_ext_tl on line ...
 Defining \l__driver_color_stack_int on line ...
 \l__driver_color_stack_int=\count193
 Defining \__driver_color_ensure_current: on line ...
-Defining \__driver_color_convert:w on line ...
-Defining \__driver_color_convert_gray:w on line ...
-Defining \__driver_color_convert_cmyk:w on line ...
-Defining \__driver_color_convert_rgb:w on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index 755a196..15a6f0b 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -5313,7 +5313,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5694,6 +5695,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3dvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index 733a254..726c8a8 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -5313,7 +5313,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5897,10 +5898,11 @@ Defining \c__expl_def_ext_tl on line ...
 Defining \l__driver_color_stack_int on line ...
 \l__driver_color_stack_int=\count195
 Defining \__driver_color_ensure_current: on line ...
-Defining \__driver_color_convert:w on line ...
-Defining \__driver_color_convert_gray:w on line ...
-Defining \__driver_color_convert_cmyk:w on line ...
-Defining \__driver_color_convert_rgb:w on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index f468c5f..5961963 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -5311,7 +5311,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5893,6 +5894,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3dvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index bed7148..32c2ae3 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -5301,7 +5301,8 @@ Defining message LaTeX/kernel/show-coffin on line ...
 Defining \color_group_begin: on line ...
 Defining \color_group_end: on line ...
 Defining \color_ensure_current: on line ...
-Defining \l__color_current_tl on line ...
+Defining \l__color_current_model_tl on line ...
+Defining \l__color_current_setting_tl on line ...
 Defining \c_sys_jobname_str on line ...
 Defining \c_sys_minute_int on line ...
 Defining \c_sys_hour_int on line ...
@@ -5677,6 +5678,11 @@ Defining key expl/log-functions/false on line ...
 Defining \c__expl_def_ext_tl on line ...
  (l3xdvipdfmx.def
 Defining \__driver_color_ensure_current: on line ...
+Defining \__driver_color_convert_gray: on line ...
+Defining \__driver_color_convert_cmyk: on line ...
+Defining \__driver_color_convert_rgb: on line ...
+Defining \__driver_color_convert_named: on line ...
+Defining \__driver_color_convert_named:w on line ...
 Defining \__driver_color_reset: on line ...
 Defining \__driver_literal:n on line ...
 Defining \__driver_scope_begin: on line ...

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the latex3-commits mailing list