[latex3-commits] [git/LaTeX3-latex3-latex3] color-models: Merge branch 'color-multi-model' into color-models (c2ad06d47)

Joseph Wright joseph.wright at morningstar2.co.uk
Tue Jul 7 12:35:41 CEST 2020


Repository : https://github.com/latex3/latex3
On branch  : color-models
Link       : https://github.com/latex3/latex3/commit/c2ad06d47244010c3c75e4101dc4ac2b5789f93b

>---------------------------------------------------------------

commit c2ad06d47244010c3c75e4101dc4ac2b5789f93b
Merge: 21c56f43c 95b06e5cb
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date:   Tue Jul 7 11:35:41 2020 +0100

    Merge branch 'color-multi-model' into color-models


>---------------------------------------------------------------

c2ad06d47244010c3c75e4101dc4ac2b5789f93b
 l3backend/CHANGELOG.md                             |   8 +-
 l3backend/README.md                                |   2 +-
 l3backend/l3backend-basics.dtx                     |  12 +-
 l3backend/l3backend-box.dtx                        |   2 +-
 l3backend/l3backend-color.dtx                      |   2 +-
 l3backend/l3backend-draw.dtx                       |   6 +-
 l3backend/l3backend-graphics.dtx                   |   2 +-
 l3backend/l3backend-header.dtx                     |   2 +-
 l3backend/l3backend-pdf.dtx                        |   2 +-
 l3experimental/l3color/l3color.dtx                 |  84 ++-
 l3experimental/l3color/testfiles/m3color001.lvt    |  27 +-
 .../l3color/testfiles/m3color001.ptex.tlg          |  42 +-
 l3experimental/l3color/testfiles/m3color001.tlg    |  42 +-
 .../l3color/testfiles/m3color001.uptex.tlg         |  42 +-
 .../l3color/testfiles/m3color001.xetex.tlg         |  42 +-
 l3experimental/l3color/testfiles/m3color003.lvt    |  30 +
 .../l3color/testfiles/m3color003.ptex.tlg          |  58 +-
 l3experimental/l3color/testfiles/m3color003.tlg    |  58 +-
 .../l3color/testfiles/m3color003.uptex.tlg         |  58 +-
 .../l3color/testfiles/m3color003.xetex.tlg         |  58 +-
 l3kernel/CHANGELOG.md                              |  10 +
 l3kernel/doc/l3obsolete.txt                        |  68 +--
 l3kernel/doc/l3prefixes.csv                        |   3 +
 l3kernel/l3deprecation.dtx                         | 415 +++----------
 l3kernel/l3file.dtx                                | 169 ++++--
 l3kernel/l3names.dtx                               | 646 ---------------------
 l3kernel/l3prop.dtx                                |  24 +-
 l3kernel/l3seq.dtx                                 |   2 +-
 l3kernel/testfiles/d3dvipdfmx.lvt                  |  14 +-
 l3kernel/testfiles/d3dvipdfmx.tlg                  |  11 +
 ...{d3xdvipdfmx.xetex.tlg => d3dvipdfmx.xetex.tlg} |  19 +
 l3kernel/testfiles/d3dvips.luatex.tlg              |  14 +
 l3kernel/testfiles/d3dvips.lvt                     |  13 +-
 l3kernel/testfiles/d3dvips.tlg                     |  14 +
 l3kernel/testfiles/d3dvips.xetex.tlg               |  19 +
 l3kernel/testfiles/d3dvisvgm.luatex.tlg            |  12 +
 l3kernel/testfiles/d3dvisvgm.lvt                   |  13 +-
 l3kernel/testfiles/d3dvisvgm.tlg                   |  12 +
 l3kernel/testfiles/d3dvisvgm.xetex.tlg             |  12 +
 l3kernel/testfiles/d3pdfmode.lvt                   |   6 +-
 l3kernel/testfiles/d3pdfmode.ptex.tlg              |  22 +
 l3kernel/testfiles/d3pdfmode.tlg                   |   9 +
 l3kernel/testfiles/d3pdfmode.uptex.tlg             |  22 +
 l3kernel/testfiles/d3pdfmode.xetex.tlg             |  19 +
 l3kernel/testfiles/d3xdvipdfmx.lvt                 |   6 +-
 l3kernel/testfiles/d3xdvipdfmx.ptex.tlg            |  22 +
 l3kernel/testfiles/d3xdvipdfmx.tlg                 |  17 +
 l3kernel/testfiles/d3xdvipdfmx.uptex.tlg           |  22 +
 l3kernel/testfiles/d3xdvipdfmx.xetex.tlg           |  11 +
 l3kernel/testfiles/m3deprecation001.luatex.tlg     |  45 +-
 l3kernel/testfiles/m3deprecation001.tlg            |  45 +-
 l3kernel/testfiles/m3deprecation002.luatex.tlg     |  45 +-
 l3kernel/testfiles/m3deprecation002.tlg            |  45 +-
 l3kernel/testfiles/m3deprecation003.luatex.tlg     |  10 +-
 l3kernel/testfiles/m3deprecation003.tlg            |  10 +-
 l3kernel/testfiles/m3deprecation004.tlg            |  33 +-
 l3kernel/testfiles/m3file001.lvt                   |  35 ++
 l3kernel/testfiles/m3file001.ptex.tlg              |  37 +-
 l3kernel/testfiles/m3file001.tlg                   |  37 +-
 l3kernel/testfiles/m3file001.uptex.tlg             |  37 +-
 l3kernel/testfiles/m3file001.xetex.tlg             |  37 +-
 l3kernel/testfiles/support/driver.tex              |   3 +-
 l3packages/xparse/xparse.dtx                       |   2 +-
 l3packages/xtemplate/xtemplate.dtx                 |   2 +-
 64 files changed, 1282 insertions(+), 1366 deletions(-)

diff --cc l3experimental/l3color/l3color.dtx
index 981d148b4,eea16d2cc..9627beeea
--- a/l3experimental/l3color/l3color.dtx
+++ b/l3experimental/l3color/l3color.dtx
@@@ -1077,11 -1049,11 +1100,11 @@@
  %   any sense here. There is a bit of a performance hit but this should be
  %   rare and taking place during set-up.
  %    \begin{macrocode}
- \cs_new_protected:Npn \@@_set:nnw #1#2 ! #3 \s_@@_stop
+ \cs_new_protected:Npn \@@_set:nnw #1#2#3 ! #4 \s_@@_stop
    {
 -    \clist_map_inline:nn { cmyk , gray , rgb }
 +    \clist_map_inline:Nn \c_@@_numerical_model_clist
        {
-         \prop_get:cnNT { l_@@_named_ #2 _prop } {##1} \l_@@_internal_tl
+         \prop_get:cnNT { l_@@_named_ #3 _prop } {##1} \l_@@_internal_tl
            {
              \prop_if_in:cnF { l_@@_named_ #1 _prop } {##1}
                {
diff --cc l3experimental/l3color/testfiles/m3color003.lvt
index 7520658c1,f0fc2867a..36192ceb3
--- a/l3experimental/l3color/testfiles/m3color003.lvt
+++ b/l3experimental/l3color/testfiles/m3color003.lvt
@@@ -110,70 -122,22 +122,88 @@@
      \color_show:n { foo1 }
    }
    
+ \TEST { Multiple~models~with~model~fixed }
+   {
+     \OMIT
+     \color_set:nnn { mycr } { cmyk / rgb }
+       { 1 , 0 , 0 , 0 / 1 , 0 , 0 }
+     \color_set:nnn { myrc } { rgb / cmyk }
+       { 1 , 0 , 0 / 1 , 0 , 0 , 0 }
+     \TIMO
+     \color_set:nn  { mixA } { myrc!50!mycr }
+     \color_show:n { mixA }
+     \tl_set:Nn \l_color_fixed_model_tl { cmyk }
+     \color_set:nn  { mixA } { myrc!50!mycr }
+     \color_show:n { mixA }
+     \tl_set:Nn \l_color_fixed_model_tl { rgb }
+     \color_set:nn  { mixA } { myrc!50!mycr }
+     \color_show:n { mixA }
+   }
+ 
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +
 +\TEST { Creating~new~models }
 +  {
 +    \OMIT
 +      \cs_set_protected:Npn \test:nn #1#2
 +        {
 +          \color_model_new:nnn { BarTone #1 } { Separation }
 +            { alternative-space = {#2} }
 +          \color_set:nnn { foo #1 } { BarTone #1 } { 0.5 }
 +          \color_show:n { foo #1 }
 +        }
 +      \cs_generate_variant:Nn \test:nn { nx }
 +    \TIMO
 +    \test:nx { CMYK } { cmyk \token_to_str:N : 0.1 , 0.2 , 0.3 , 0.4 }
 +    \test:nx { RGB  } { rgb  \token_to_str:N : 0.1 , 0.2 , 0.3 }
 +    \test:nx { Gray } { gray \token_to_str:N : 0.1 }
 +  }
 +
 +\TEST { Creating~new~models:~errors }
 +  {
 +    \color_model_new:nnn { BarToneCMYK } { Separation } { }
 +    \color_model_new:nnn { foo1 } { nope } { who-cares }
 +    \color_model_new:nnn { foo2 } { separation } { }
 +    \color_model_new:nnn { foo3 } { separation } { alternative-space }
 +    \color_model_new:nnn { foo4 } { separation } { alternative-space = foo }
 +  }
 +
 +\TEST { Converting~new~models }
 +  {
 +    \OMIT
 +    \color_set:nnn { fooCMYK } { BarToneCMYK } { 0.5 }
 +    \TIMO
 +    \color_export:nnN { fooCMYK } { HTML } \l_tmpa_tl
 +    \tl_show:N \l_tmpa_tl
 +    \color_export:nnN { fooCMYK } { space-sep-cmyk } \l_tmpa_tl
 +    \tl_show:N \l_tmpa_tl
 +    \color_export:nnnN { BarToneCMYK } { 0.125 } { HTML } \l_tmpa_tl
 +    \tl_show:N \l_tmpa_tl
 +  }
 +
 +\TEST { Mixing~separations }
 +  {
 +    \OMIT
 +    \color_set:nnn { fooCMYK } { BarToneCMYK } { 1.0 }
 +    \TIMO
 +    \color_set:nn { foo } { fooCMYK!35 }
 +    \color_show:n { foo }
 +    \color_set:nn { foo } { fooCMYK!55!white }
 +    \color_show:n { foo }
 +  }
 +
 +\TEST { Mixing~separation:~failures }
 +  {
 +    \OMIT
 +    \color_set:nnn { fooCMYK } { BarToneCMYK } { 1.0 }
 +    \TIMO
 +    \color_set:nn { foo } { fooCMYK!35!black }
 +    \color_show:n { foo }
 +    \color_set:nn { foo } { fooCMYK!35!cyan }
 +    \color_show:n { foo }
 +    \color_set:nn { foo } { fooCMYK!35!green }
 +    \color_show:n { foo }
 +  }
 +
  \END
diff --cc l3experimental/l3color/testfiles/m3color003.ptex.tlg
index 32b1bf9a3,da2336117..72055bef9
--- a/l3experimental/l3color/testfiles/m3color003.ptex.tlg
+++ b/l3experimental/l3color/testfiles/m3color003.ptex.tlg
@@@ -151,161 -163,26 +163,185 @@@ The color foo1 has the properties
  l. ...  }
  ============================================================
  ============================================================
- TEST 6: Creating new models
+ TEST 6: Multiple models with model fixed
+ ============================================================
+ Defining \l__color_named_mixA_tl on line ...
+ Defining \l__color_named_mixA_prop on line ...
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ ============================================================
++============================================================
++TEST 7: Creating new models
 +============================================================
 +Defining \c__color_fallback_BarToneCMYK_tl on line ...
 +Defining \__color_parse_mix_BarToneCMYK:nw on line ...
 +Defining \__color_parse_model_BarToneCMYK:w on line ...
 +Defining \__color_backend_BarToneCMYK:n on line ...
 +Defining \__color_convert_BarToneCMYK_cmyk:w on line ...
 +Defining \__color_convert_BarToneCMYK_rgb:w on line ...
 +Defining \__color_convert_BarToneCMYK_gray:w on line ...
 +Defining \__color_model_BarToneCMYK_white: on line ...
 +Defining \l__color_named_fooCMYK_tl on line ...
 +Defining \l__color_named_fooCMYK_prop on line ...
 +The color fooCMYK has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneRGB_tl on line ...
 +Defining \__color_parse_mix_BarToneRGB:nw on line ...
 +Defining \__color_parse_model_BarToneRGB:w on line ...
 +Defining \__color_backend_BarToneRGB:n on line ...
 +Defining \__color_convert_BarToneRGB_rgb:w on line ...
 +Defining \__color_convert_BarToneRGB_cmyk:w on line ...
 +Defining \__color_convert_BarToneRGB_gray:w on line ...
 +Defining \__color_model_BarToneRGB_white: on line ...
 +Defining \l__color_named_fooRGB_tl on line ...
 +Defining \l__color_named_fooRGB_prop on line ...
 +The color fooRGB has the properties:
 +>  model  =>  BarToneRGB
 +>  BarToneRGB  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneGray_tl on line ...
 +Defining \__color_parse_mix_BarToneGray:nw on line ...
 +Defining \__color_parse_model_BarToneGray:w on line ...
 +Defining \__color_backend_BarToneGray:n on line ...
 +Defining \__color_convert_BarToneGray_cmyk:w on line ...
 +Defining \__color_convert_BarToneGray_gray:w on line ...
 +Defining \__color_convert_BarToneGray_rgb:w on line ...
 +Defining \__color_model_BarToneGray_white: on line ...
 +Defining \l__color_named_fooGray_tl on line ...
 +Defining \l__color_named_fooGray_prop on line ...
 +The color fooGray has the properties:
 +>  model  =>  BarToneGray
 +>  BarToneGray  =>  0.5.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 7: Creating new models: errors
++TEST 8: Creating new models: errors
 +============================================================
 +! LaTeX3 Error: Color model 'BarToneCMYK' already defined.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX was asked to define a new color model called 'BarToneCMYK', but this
 +color model already exists.
 +! LaTeX3 Error: Unknown color model type 'nope'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to use create a new color model of type 'nope', but this
 +type of model is not set up.
 +! LaTeX3 Error: Separation color space 'foo2' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Missing/extra '=' in 'alternative-space' (in '..._keyval:Nn')
 +Type <return> to continue.
 + ...                                              
 +l. ...  }
 +LaTeX does not know anything more about this error, sorry.
 +Try typing <return> to proceed.
 +If that doesn't work, type X <return> to quit.
 +! LaTeX3 Error: Separation color space 'foo3' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Separation color space 'foo' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +============================================================
 +============================================================
- TEST 8: Converting new models
++TEST 9: Converting new models
 +============================================================
 +> \l_tmpa_tl=BFB2A6.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=0.05 0.1 0.15 0.2.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=EFECE9.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 9: Mixing separations
++TEST 10: Mixing separations
 +============================================================
 +Defining \l__color_named_foo_tl on line ...
 +Defining \l__color_named_foo_prop on line ...
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.35.
 +<recently read> }
 +l. ...  }
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.55.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 10: Mixing separation: failures
++TEST 11: Mixing separation: failures
 +============================================================
 +! LaTeX3 Error: No model conversion available from 'gray' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'gray' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'cmyk' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'cmyk' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'rgb' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'rgb' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +============================================================
diff --cc l3experimental/l3color/testfiles/m3color003.tlg
index a9afee04e,cd6f777f9..6bfa00691
--- a/l3experimental/l3color/testfiles/m3color003.tlg
+++ b/l3experimental/l3color/testfiles/m3color003.tlg
@@@ -146,161 -158,26 +158,185 @@@ The color foo1 has the properties
  l. ...  }
  ============================================================
  ============================================================
- TEST 6: Creating new models
+ TEST 6: Multiple models with model fixed
+ ============================================================
+ Defining \l__color_named_mixA_tl on line ...
+ Defining \l__color_named_mixA_prop on line ...
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ ============================================================
++============================================================
++TEST 7: Creating new models
 +============================================================
 +Defining \c__color_fallback_BarToneCMYK_tl on line ...
 +Defining \__color_parse_mix_BarToneCMYK:nw on line ...
 +Defining \__color_parse_model_BarToneCMYK:w on line ...
 +Defining \__color_backend_BarToneCMYK:n on line ...
 +Defining \__color_convert_BarToneCMYK_cmyk:w on line ...
 +Defining \__color_convert_BarToneCMYK_rgb:w on line ...
 +Defining \__color_convert_BarToneCMYK_gray:w on line ...
 +Defining \__color_model_BarToneCMYK_white: on line ...
 +Defining \l__color_named_fooCMYK_tl on line ...
 +Defining \l__color_named_fooCMYK_prop on line ...
 +The color fooCMYK has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneRGB_tl on line ...
 +Defining \__color_parse_mix_BarToneRGB:nw on line ...
 +Defining \__color_parse_model_BarToneRGB:w on line ...
 +Defining \__color_backend_BarToneRGB:n on line ...
 +Defining \__color_convert_BarToneRGB_rgb:w on line ...
 +Defining \__color_convert_BarToneRGB_cmyk:w on line ...
 +Defining \__color_convert_BarToneRGB_gray:w on line ...
 +Defining \__color_model_BarToneRGB_white: on line ...
 +Defining \l__color_named_fooRGB_tl on line ...
 +Defining \l__color_named_fooRGB_prop on line ...
 +The color fooRGB has the properties:
 +>  model  =>  BarToneRGB
 +>  BarToneRGB  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneGray_tl on line ...
 +Defining \__color_parse_mix_BarToneGray:nw on line ...
 +Defining \__color_parse_model_BarToneGray:w on line ...
 +Defining \__color_backend_BarToneGray:n on line ...
 +Defining \__color_convert_BarToneGray_cmyk:w on line ...
 +Defining \__color_convert_BarToneGray_gray:w on line ...
 +Defining \__color_convert_BarToneGray_rgb:w on line ...
 +Defining \__color_model_BarToneGray_white: on line ...
 +Defining \l__color_named_fooGray_tl on line ...
 +Defining \l__color_named_fooGray_prop on line ...
 +The color fooGray has the properties:
 +>  model  =>  BarToneGray
 +>  BarToneGray  =>  0.5.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 7: Creating new models: errors
++TEST 8: Creating new models: errors
 +============================================================
 +! LaTeX3 Error: Color model 'BarToneCMYK' already defined.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX was asked to define a new color model called 'BarToneCMYK', but this
 +color model already exists.
 +! LaTeX3 Error: Unknown color model type 'nope'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to use create a new color model of type 'nope', but this
 +type of model is not set up.
 +! LaTeX3 Error: Separation color space 'foo2' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Missing/extra '=' in 'alternative-space' (in '..._keyval:Nn')
 +Type <return> to continue.
 + ...                                              
 +l. ...  }
 +LaTeX does not know anything more about this error, sorry.
 +Try typing <return> to proceed.
 +If that doesn't work, type X <return> to quit.
 +! LaTeX3 Error: Separation color space 'foo3' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Separation color space 'foo' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +============================================================
 +============================================================
- TEST 8: Converting new models
++TEST 9: Converting new models
 +============================================================
 +> \l_tmpa_tl=BFB2A6.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=0.05 0.1 0.15 0.2.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=EFECE9.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 9: Mixing separations
++TEST 10: Mixing separations
 +============================================================
 +Defining \l__color_named_foo_tl on line ...
 +Defining \l__color_named_foo_prop on line ...
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.35.
 +<recently read> }
 +l. ...  }
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.55.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 10: Mixing separation: failures
++TEST 11: Mixing separation: failures
 +============================================================
 +! LaTeX3 Error: No model conversion available from 'gray' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'gray' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'cmyk' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'cmyk' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'rgb' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'rgb' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +============================================================
diff --cc l3experimental/l3color/testfiles/m3color003.uptex.tlg
index 32b1bf9a3,da2336117..72055bef9
--- a/l3experimental/l3color/testfiles/m3color003.uptex.tlg
+++ b/l3experimental/l3color/testfiles/m3color003.uptex.tlg
@@@ -151,161 -163,26 +163,185 @@@ The color foo1 has the properties
  l. ...  }
  ============================================================
  ============================================================
- TEST 6: Creating new models
+ TEST 6: Multiple models with model fixed
+ ============================================================
+ Defining \l__color_named_mixA_tl on line ...
+ Defining \l__color_named_mixA_prop on line ...
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ ============================================================
++============================================================
++TEST 7: Creating new models
 +============================================================
 +Defining \c__color_fallback_BarToneCMYK_tl on line ...
 +Defining \__color_parse_mix_BarToneCMYK:nw on line ...
 +Defining \__color_parse_model_BarToneCMYK:w on line ...
 +Defining \__color_backend_BarToneCMYK:n on line ...
 +Defining \__color_convert_BarToneCMYK_cmyk:w on line ...
 +Defining \__color_convert_BarToneCMYK_rgb:w on line ...
 +Defining \__color_convert_BarToneCMYK_gray:w on line ...
 +Defining \__color_model_BarToneCMYK_white: on line ...
 +Defining \l__color_named_fooCMYK_tl on line ...
 +Defining \l__color_named_fooCMYK_prop on line ...
 +The color fooCMYK has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneRGB_tl on line ...
 +Defining \__color_parse_mix_BarToneRGB:nw on line ...
 +Defining \__color_parse_model_BarToneRGB:w on line ...
 +Defining \__color_backend_BarToneRGB:n on line ...
 +Defining \__color_convert_BarToneRGB_rgb:w on line ...
 +Defining \__color_convert_BarToneRGB_cmyk:w on line ...
 +Defining \__color_convert_BarToneRGB_gray:w on line ...
 +Defining \__color_model_BarToneRGB_white: on line ...
 +Defining \l__color_named_fooRGB_tl on line ...
 +Defining \l__color_named_fooRGB_prop on line ...
 +The color fooRGB has the properties:
 +>  model  =>  BarToneRGB
 +>  BarToneRGB  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneGray_tl on line ...
 +Defining \__color_parse_mix_BarToneGray:nw on line ...
 +Defining \__color_parse_model_BarToneGray:w on line ...
 +Defining \__color_backend_BarToneGray:n on line ...
 +Defining \__color_convert_BarToneGray_cmyk:w on line ...
 +Defining \__color_convert_BarToneGray_gray:w on line ...
 +Defining \__color_convert_BarToneGray_rgb:w on line ...
 +Defining \__color_model_BarToneGray_white: on line ...
 +Defining \l__color_named_fooGray_tl on line ...
 +Defining \l__color_named_fooGray_prop on line ...
 +The color fooGray has the properties:
 +>  model  =>  BarToneGray
 +>  BarToneGray  =>  0.5.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 7: Creating new models: errors
++TEST 8: Creating new models: errors
 +============================================================
 +! LaTeX3 Error: Color model 'BarToneCMYK' already defined.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX was asked to define a new color model called 'BarToneCMYK', but this
 +color model already exists.
 +! LaTeX3 Error: Unknown color model type 'nope'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to use create a new color model of type 'nope', but this
 +type of model is not set up.
 +! LaTeX3 Error: Separation color space 'foo2' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Missing/extra '=' in 'alternative-space' (in '..._keyval:Nn')
 +Type <return> to continue.
 + ...                                              
 +l. ...  }
 +LaTeX does not know anything more about this error, sorry.
 +Try typing <return> to proceed.
 +If that doesn't work, type X <return> to quit.
 +! LaTeX3 Error: Separation color space 'foo3' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Separation color space 'foo' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +============================================================
 +============================================================
- TEST 8: Converting new models
++TEST 9: Converting new models
 +============================================================
 +> \l_tmpa_tl=BFB2A6.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=0.05 0.1 0.15 0.2.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=EFECE9.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 9: Mixing separations
++TEST 10: Mixing separations
 +============================================================
 +Defining \l__color_named_foo_tl on line ...
 +Defining \l__color_named_foo_prop on line ...
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.35.
 +<recently read> }
 +l. ...  }
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.55.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 10: Mixing separation: failures
++TEST 11: Mixing separation: failures
 +============================================================
 +! LaTeX3 Error: No model conversion available from 'gray' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'gray' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'cmyk' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'cmyk' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'rgb' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'rgb' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +============================================================
diff --cc l3experimental/l3color/testfiles/m3color003.xetex.tlg
index bdb3c8163,f3bf6e112..210e86878
--- a/l3experimental/l3color/testfiles/m3color003.xetex.tlg
+++ b/l3experimental/l3color/testfiles/m3color003.xetex.tlg
@@@ -146,161 -158,26 +158,185 @@@ The color foo1 has the properties
  l. ...  }
  ============================================================
  ============================================================
- TEST 6: Creating new models
+ TEST 6: Multiple models with model fixed
+ ============================================================
+ Defining \l__color_named_mixA_tl on line ...
+ Defining \l__color_named_mixA_prop on line ...
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ The color mixA has the properties:
+ >  model  =>  rgb
+ >  rgb  =>  1 0 0
+ >  cmyk  =>  1 0 0 0.
+ <recently read> }
+ l. ...  }
+ ============================================================
++============================================================
++TEST 7: Creating new models
 +============================================================
 +Defining \c__color_fallback_BarToneCMYK_tl on line ...
 +Defining \__color_parse_mix_BarToneCMYK:nw on line ...
 +Defining \__color_parse_model_BarToneCMYK:w on line ...
 +Defining \__color_backend_BarToneCMYK:n on line ...
 +Defining \__color_convert_BarToneCMYK_cmyk:w on line ...
 +Defining \__color_convert_BarToneCMYK_rgb:w on line ...
 +Defining \__color_convert_BarToneCMYK_gray:w on line ...
 +Defining \__color_model_BarToneCMYK_white: on line ...
 +Defining \l__color_named_fooCMYK_tl on line ...
 +Defining \l__color_named_fooCMYK_prop on line ...
 +The color fooCMYK has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneRGB_tl on line ...
 +Defining \__color_parse_mix_BarToneRGB:nw on line ...
 +Defining \__color_parse_model_BarToneRGB:w on line ...
 +Defining \__color_backend_BarToneRGB:n on line ...
 +Defining \__color_convert_BarToneRGB_rgb:w on line ...
 +Defining \__color_convert_BarToneRGB_cmyk:w on line ...
 +Defining \__color_convert_BarToneRGB_gray:w on line ...
 +Defining \__color_model_BarToneRGB_white: on line ...
 +Defining \l__color_named_fooRGB_tl on line ...
 +Defining \l__color_named_fooRGB_prop on line ...
 +The color fooRGB has the properties:
 +>  model  =>  BarToneRGB
 +>  BarToneRGB  =>  0.5.
 +<recently read> }
 +l. ...  }
 +Defining \c__color_fallback_BarToneGray_tl on line ...
 +Defining \__color_parse_mix_BarToneGray:nw on line ...
 +Defining \__color_parse_model_BarToneGray:w on line ...
 +Defining \__color_backend_BarToneGray:n on line ...
 +Defining \__color_convert_BarToneGray_cmyk:w on line ...
 +Defining \__color_convert_BarToneGray_gray:w on line ...
 +Defining \__color_convert_BarToneGray_rgb:w on line ...
 +Defining \__color_model_BarToneGray_white: on line ...
 +Defining \l__color_named_fooGray_tl on line ...
 +Defining \l__color_named_fooGray_prop on line ...
 +The color fooGray has the properties:
 +>  model  =>  BarToneGray
 +>  BarToneGray  =>  0.5.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 7: Creating new models: errors
++TEST 8: Creating new models: errors
 +============================================================
 +! LaTeX3 Error: Color model 'BarToneCMYK' already defined.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX was asked to define a new color model called 'BarToneCMYK', but this
 +color model already exists.
 +! LaTeX3 Error: Unknown color model type 'nope'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to use create a new color model of type 'nope', but this
 +type of model is not set up.
 +! LaTeX3 Error: Separation color space 'foo2' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Missing/extra '=' in 'alternative-space' (in '..._keyval:Nn')
 +Type <return> to continue.
 + ...                                              
 +l. ...  }
 +LaTeX does not know anything more about this error, sorry.
 +Try typing <return> to proceed.
 +If that doesn't work, type X <return> to quit.
 +! LaTeX3 Error: Separation color space 'foo3' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +! LaTeX3 Error: Separation color space 'foo' require an alternative space.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to create a separation color space, but no 
 +    alternative-space=<model>:<value(s)>
 +key was given with the correct information.
 +============================================================
 +============================================================
- TEST 8: Converting new models
++TEST 9: Converting new models
 +============================================================
 +> \l_tmpa_tl=BFB2A6.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=0.05 0.1 0.15 0.2.
 +<recently read> }
 +l. ...  }
 +> \l_tmpa_tl=EFECE9.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 9: Mixing separations
++TEST 10: Mixing separations
 +============================================================
 +Defining \l__color_named_foo_tl on line ...
 +Defining \l__color_named_foo_prop on line ...
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.35.
 +<recently read> }
 +l. ...  }
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  0.55.
 +<recently read> }
 +l. ...  }
 +============================================================
 +============================================================
- TEST 10: Mixing separation: failures
++TEST 11: Mixing separation: failures
 +============================================================
 +! LaTeX3 Error: No model conversion available from 'gray' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'gray' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'cmyk' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'cmyk' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +! LaTeX3 Error: No model conversion available from 'rgb' to 'BarToneCMYK'.
 +For immediate help type H <return>.
 + ...                                              
 +l. ...  }
 +LaTeX has been asked to convert a color from model 'rgb' to
 +model'BarToneCMYK', but there is no method available to do that.
 +The color foo has the properties:
 +>  model  =>  BarToneCMYK
 +>  BarToneCMYK  =>  1.
 +<recently read> }
 +l. ...  }
 +============================================================





More information about the latex3-commits mailing list.