Skip to content

Commit

Permalink
temporary xcolor patch for l3color use
Browse files Browse the repository at this point in the history
  • Loading branch information
Ulrike Fischer committed Jan 13, 2021
1 parent e302a0e commit 375f7b9
Showing 1 changed file with 83 additions and 0 deletions.
83 changes: 83 additions & 0 deletions xcolor-patches-tmp.sty
@@ -0,0 +1,83 @@
%% LaTeX2e file `xcolor-patches.sty'
%% generated by the `filecontents' environment
%% from source `test-utf8' on 2021/01/14.
%%
\ProvidesPackage{xcolor-patches-tmp}[2021/01/14 v0.1 patch xcolor for l3color]

\RequirePackage{l3color}
\ExplSyntaxOn
\cs_gset_eq:NN \@expl@color@set@@nnn \color_set:nnn
\cs_generate_variant:Nn \color_set:nn {ne}
\cs_new_protected:Npn \@expl@color@set@@ne #1 #2
{
\exp_args:Nx \__color_if_defined:nT {#2}
{ \color_set:ne {#1}{#2} }
}
\ExplSyntaxOff
%\pretocmd{\XC@col@rlet} {\@expl@color@set@@ne{#2}{#4}}{}{\fail}
\def\XC@col@rlet[#1]#2[#3]#4%
{\@expl@color@set@@ne{#2}{#4}%
\begingroup
\edef\@@cls{#1}\XC@edef\@@nam{#2}\XC@sdef\@@mod{#3}\XC@edef\@@clr{#4}%
\XC@info\@@clr\@@tmp\XC@@tstfalse
\ifnum\@@tmp=\@ne\ifx\@@mod\@empty
\ifx\@@cls\@empty
\XC@@tsttrue
\else
\edef\@@tmp
{\expandafter\expandafter\expandafter\@secondoffive
\csname\string\color@\@@clr\endcsname}%
\ifx\@@cls\@@tmp\XC@@tsttrue\fi
\fi
\fi\fi
\ifXC@@tst
\XC@logdef\@@nam\XC@c@l@rlet\@@nam\@@clr
\else
\extractcolorspec\@@clr\@@clr
\ifx\@@mod\@empty\else
\expandafter\convertcolorspec\@@clr\@@mod\@@clr
\edef\@@clr{{\@@mod}{\@@clr}}\fi
\edef\@@tmp{\noexpand\XC@definecolor[\@@cls]{\@@nam}\@@clr}%
\fi
\expandafter\endgroup\@@tmp\xglobal@stop}

%\pretocmd{\XC@definec@lor}{\@expl@color@set@@nnn{#2}{#4}{#5}}{}{\fail}
\def\XC@definec@lor[#1]#2[#3]#4#5%
{\@expl@color@set@@nnn{#2}{#4}{#5}%
\begingroup
\XC@sdef\@@cls{#1}\XC@edef\@@nam{#2}\edef\colornameprefix{#3}%
\XC@logdef\@@nam
\XC@getmodclr02{#4}{#5}{\let\@@tmp\relax}%
{\ifx\@@mod\XC@mod@named
\XC@c@l@rlet\@@nam\@@clr
\else
\ifx\@@cls\XC@mod@ps
\edef\@@drv{\@@mod\space\@@clr}\def\@@hue{0}%
\edef\@@clr{\@nameuse{XC@clr@\@@mod @white}}%
\else
\ifconvertcolorsD
\let\@@tmp\@@mod\XC@sdef\@@mod{\XC@tgt@mod\@@tmp}%
\convertcolorspec\@@tmp\@@clr\@@mod\@@clr
\fi
\XC@coremodel\@@mod\@@clr
\csname color@\@@mod\expandafter\endcsname
\expandafter\@@drv\expandafter{\@@clr}%
\ifcase\XC@@xcp@
\immediate\write\XC@@xcp{/\colornameprefix\@@nam{\expandafter
\XC@strip@comma\@@clr,,\@nnil}XC\@@mod}%
\let\@@cls\XC@mod@named
\fi
\ifx\@@cls\@empty\else
\let\@@tmp\@@cls
\@nameuse{define@color@\@@cls}\@@nam\@@drv
\csname color@\@@tmp\expandafter\endcsname
\expandafter\@@drv\expandafter{\@@nam}%
\fi
\fi
\toks@\expandafter{\@@drv}%
\edef\@@tmp
{\ifglobalcolors\global\else\xglobal@\fi
\noexpand\@namedef{\string\color@\@@nam}%
{\noexpand\xcolor@{\@@cls}{\the\toks@}{\@@mod}{\@@clr}}}%
\fi}%
\expandafter\endgroup\@@tmp\xglobal@stop}

0 comments on commit 375f7b9

Please sign in to comment.