From 3f516ebc134388ce112da396f5fa48763112c68a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 28 Dec 2020 22:32:26 +0000 Subject: expkv-def (28dec20) git-svn-id: svn://tug.org/texlive/trunk@57246 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/generic/expkv-def/expkv-def.tex | 60 +++++++++++----------- 1 file changed, 30 insertions(+), 30 deletions(-) (limited to 'Master/texmf-dist/tex/generic') diff --git a/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex b/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex index a4259fe376f..83df70fc0ea 100644 --- a/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex +++ b/Master/texmf-dist/tex/generic/expkv-def/expkv-def.tex @@ -35,8 +35,8 @@ \else \expandafter\endinput \fi -\def\ekvdVersion{0.6} -\def\ekvdDate{2020-10-12} +\def\ekvdVersion{0.7} +\def\ekvdDate{2020-12-28} \csname ekvd@tmp\endcsname \expandafter\chardef\csname ekvd@tmp\endcsname=\catcode`\@ \catcode`\@=11 @@ -105,15 +105,11 @@ {% \ekvd@ifalso {% - \ekv@expB@unbraceA{\ekv@expB@unbraceA{\ekvd@add@noval{#1}}}% + \ekv@expargtwice{\ekvd@add@noval{#1}}% {\ekvchangeset{#2}}% \ekvd@assert@not@protected@also }% - {% - \ekv@expB@unbraceA - {\ekv@expB@unbraceA{\ekvdefNoVal\ekvd@set{#1}}}% - {\ekvchangeset{#2}}% - }% + {\ekv@expargtwice{\ekvdefNoVal\ekvd@set{#1}}{\ekvchangeset{#2}}}% }% }% } @@ -132,7 +128,7 @@ \ekvd@assert@not@long \ekvd@prot#1\ekvd@tmp{#3}% \ekvd@ifalso - {\ekv@expB@unbraceA{\ekvd@add@noval{#2}}\ekvd@tmp{}}% + {\ekv@exparg{\ekvd@add@noval{#2}}\ekvd@tmp{}}% {\ekvletNoVal\ekvd@set{#2}\ekvd@tmp}% }% }% @@ -147,35 +143,37 @@ {% \ekvd@prot\ekvd@long#1\ekvd@tmp##1{#3}% \ekvd@ifalso - {\ekv@expB@unbraceA{\ekvd@add@val{#2}}{\ekvd@tmp{##1}}{}}% + {\ekv@exparg{\ekvd@add@val{#2}}{\ekvd@tmp{##1}}{}}% {\ekvlet\ekvd@set{#2}\ekvd@tmp}% }% }% } \protected\def\ekvd@t@code{\ekvd@type@code\def} \protected\def\ekvd@t@ecode{\ekvd@type@code\edef} -\protected\long\def\ekvd@type@default#1#2#3% +\protected\long\def\ekvd@type@default#1#2#3#4% {% \ekvd@assert@arg {% - \ekvifdefined\ekvd@set{#2}% + \ekvifdefined\ekvd@set{#3}% {% \ekvd@assert@not@new \ekvd@assert@not@long \ekvd@prot\edef\ekvd@tmp {% \unexpanded\expandafter#1% - {\csname\ekv@name\ekvd@set{#2}\endcsname{#3}}% + {#2\csname\ekv@name\ekvd@set{#3}\endcsname{#4}}% }% \ekvd@ifalso - {\ekv@expB@unbraceA{\ekvd@add@noval{#2}}\ekvd@tmp{}}% - {\ekvletNoVal\ekvd@set{#2}\ekvd@tmp}% + {\ekv@exparg{\ekvd@add@noval{#3}}\ekvd@tmp{}}% + {\ekvletNoVal\ekvd@set{#3}\ekvd@tmp}% }% - {\ekvd@err@undefined@key{#2}}% + {\ekvd@err@undefined@key{#3}}% }% } -\protected\def\ekvd@t@default{\ekvd@type@default{}} -\protected\def\ekvd@t@qdefault{\ekvd@type@default{\expandafter\expandafter}} +\protected\def\ekvd@t@default{\ekvd@type@default{}{}} +\protected\def\ekvd@t@qdefault{\ekvd@type@default{\expandafter\expandafter}{}} +\let\ekvd@t@odefault\ekvd@t@qdefault +\protected\def\ekvd@t@fdefault{\ekvd@type@default{}{\romannumeral`\^^@}} \protected\long\def\ekvd@t@edefault#1#2% {% \ekvd@assert@arg @@ -187,32 +185,34 @@ \ekvd@prot\edef\ekvd@tmp {\csname\ekv@name\ekvd@set{#1}\endcsname{#2}}% \ekvd@ifalso - {\ekv@expB@unbraceA{\ekvd@add@noval{#1}}\ekvd@tmp{}}% + {\ekv@exparg{\ekvd@add@noval{#1}}\ekvd@tmp{}}% {\ekvletNoVal\ekvd@set{#1}\ekvd@tmp}% }% {\ekvd@err@undefined@key{#1}}% }% } -\long\def\ekvd@type@initial#1#2#3% +\long\def\ekvd@type@initial#1#2#3#4% {% \ekvd@assert@arg {% - \ekvifdefined\ekvd@set{#2}% + \ekvifdefined\ekvd@set{#3}% {% \ekvd@assert@not@new \ekvd@assert@not@also \ekvd@assert@not@long \ekvd@assert@not@protected - #1{#3}% - \csname\ekv@name\ekvd@set{#2}\expandafter\endcsname\expandafter + #1{#2#4}% + \csname\ekv@name\ekvd@set{#3}\expandafter\endcsname\expandafter {\ekvd@tmp}% }% - {\ekvd@err@undefined@key{#2}}% + {\ekvd@err@undefined@key{#3}}% }% } -\def\ekvd@t@initial{\ekvd@type@initial{\def\ekvd@tmp}} -\def\ekvd@t@oinitial{\ekvd@type@initial{\ekv@expB@unbraceA{\def\ekvd@tmp}}} -\def\ekvd@t@einitial{\ekvd@type@initial{\edef\ekvd@tmp}} +\def\ekvd@t@initial{\ekvd@type@initial{\def\ekvd@tmp}{}} +\def\ekvd@t@oinitial{\ekvd@type@initial{\ekv@exparg{\def\ekvd@tmp}}{}} +\def\ekvd@t@einitial{\ekvd@type@initial{\edef\ekvd@tmp}{}} +\def\ekvd@t@finitial + {\ekvd@type@initial{\ekv@exparg{\def\ekvd@tmp}}{\romannumeral`\^^@}} \protected\def\ekvd@type@bool#1#2#3#4#5% {% \ekvd@ifnew{}{#4}% @@ -422,7 +422,7 @@ \edef\ekvd@tmp{\ekvd@set}% \expandafter\ekvd@type@meta@a\expandafter{\ekvd@tmp}{#7}{#2}% \ekvd@ifalso - {\ekv@expB@unbraceA{#3{#6}}{\ekvd@tmp#4}{#5}}% + {\ekv@exparg{#3{#6}}{\ekvd@tmp#4}{#5}}% {\csname ekvlet#1\endcsname\ekvd@set{#6}\ekvd@tmp}% }% }% @@ -453,7 +453,7 @@ {% \ekvd@type@meta@a#7{#2}% \ekvd@ifalso - {\ekv@expB@unbraceA{#3{#6}}{\ekvd@tmp#4}{#5}}% + {\ekv@exparg{#3{#6}}{\ekvd@tmp#4}{#5}}% {\csname ekvlet#1\endcsname\ekvd@set{#6}\ekvd@tmp}% }% }% @@ -475,7 +475,7 @@ {% \ekvd@if@not@already@choice{#1}% {% - \ekv@expB@unbraceA + \ekv@exparg {% \expandafter\ekvd@add@aux \csname\ekv@name\ekvd@set{#1}\endcsname{{##1}}{#1}% -- cgit v1.2.3