summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex')
-rw-r--r--Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex35
1 files changed, 18 insertions, 17 deletions
diff --git a/Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex b/Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex
index 1aaf4c68e54..838aa208869 100644
--- a/Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex
+++ b/Master/texmf-dist/tex/generic/xkeyval/xkeyval.tex
@@ -7,7 +7,7 @@
%% xkeyval.dtx (with options: `xkvtex')
%%
%% ---------------------------------------
-%% Copyright (C) 2004-2012 Hendri Adriaens
+%% Copyright (C) 2004-2014 Hendri Adriaens
%% ---------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -58,10 +58,10 @@
\newif\ifXKV@preset
\let\XKV@rm\@empty
\ifx\ProvidesFile\@undefined
- \message{2012/10/14 v2.6b key=value parser (HA)}
+ \message{2014/04/27 v2.6c key=value parser (HA)}
\input xkvtxhdr
\else
- \ProvidesFile{xkeyval.tex}[2012/10/14 v2.6b key=value parser (HA)]
+ \ProvidesFile{xkeyval.tex}[2014/04/27 v2.6c key=value parser (HA)]
\@addtofilelist{xkeyval.tex}
\fi
\long\def\@firstoftwo#1#2{#1}
@@ -144,7 +144,7 @@
#2\@@#3#4\fi{#5}{#1}%
}
\long\def\XKV@wh@l@st#1\@@#2#3\fi#4#5{}
-\def\XKV@addtomacro@n#1#2{%
+\long\def\XKV@addtomacro@n#1#2{%
\XKV@tempa@toks\expandafter{#1#2}%
\edef#1{\the\XKV@tempa@toks}%
}
@@ -223,7 +223,7 @@
}%
\let#1\@empty\@i#3\@s@l@ctive@sanitize
}
-\def\XKV@checksanitizea#1#2{%
+\long\def\XKV@checksanitizea#1#2{%
\XKV@ch@cksanitize{#1}#2=%
\ifin@\else\XKV@ch@cksanitize{#1}#2,\fi
\ifin@\@selective@sanitize[0]{,=}#2\fi
@@ -232,12 +232,12 @@
\XKV@ch@cksanitize{#1}#2,%
\ifin@\@selective@sanitize[0],#2\fi
}
-\def\XKV@ch@cksanitize#1#2#3{%
+\long\def\XKV@ch@cksanitize#1#2#3{%
\XKV@tempa@toks{#1}\edef#2{\the\XKV@tempa@toks}%
\@onelevel@sanitize#2%
\@expandtwoargs\in@#3{#2}%
\ifin@
- \def#2##1#3##2\@nil{%
+ \long\def#2##1#3##2\@nil{%
\XKV@tempa@toks{##2}\edef#2{\the\XKV@tempa@toks}%
\ifx#2\@empty\else\in@false\fi
}%
@@ -359,7 +359,7 @@
\XKV@@ifcmd#1#2{\@nil}\@nil#3%
}
\def\XKV@getkeyname#1#2{\expandafter\XKV@g@tkeyname#1=\@nil#2}
-\def\XKV@g@tkeyname#1=#2\@nil#3{%
+\long\def\XKV@g@tkeyname#1=#2\@nil#3{%
\XKV@ifcmd{#1}\savevalue#3{\XKV@rkvtrue\XKV@sgfalse}{%
\XKV@ifcmd{#1}\gsavevalue#3%
{\XKV@rkvtrue\XKV@sgtrue}{\XKV@rkvfalse\XKV@sgfalse}%
@@ -375,7 +375,7 @@
\def\define@key{\XKV@testoptb\XKV@define@key}
\def\XKV@define@key#1{%
\@ifnextchar[{\XKV@d@fine@k@y{#1}}{%
- \expandafter\def\csname\XKV@header#1\endcsname####1%
+ \long\expandafter\def\csname\XKV@header#1\endcsname####1%
}%
}
\def\XKV@d@fine@k@y#1[#2]{%
@@ -658,7 +658,7 @@
}%
}
\def\setkeys{\XKV@testopta{\XKV@testoptc\XKV@setkeys}}
-\def\XKV@setkeys[#1]#2{%
+\long\def\XKV@setkeys[#1]#2{%
\XKV@checksanitizea{#2}\XKV@resb
\let\XKV@naa\@empty
\XKV@for@o\XKV@resb\XKV@tempa{%
@@ -684,13 +684,13 @@
}%
\XKV@presetfalse
}
-\def\XKV@s@tkeys#1#2{%
+\long\def\XKV@s@tkeys#1#2{%
\XKV@sp@deflist\XKV@na{#2}%
\XKV@for@n{#1}\CurrentOption{%
\expandafter\XKV@s@tk@ys\CurrentOption==\@nil
}%
}
-\def\XKV@s@tk@ys#1=#2=#3\@nil{%
+\long\def\XKV@s@tk@ys#1=#2=#3\@nil{%
\XKV@g@tkeyname#1=\@nil\XKV@tkey
\expandafter\KV@@sp@def\expandafter\XKV@tkey\expandafter{\XKV@tkey}%
\ifx\XKV@tkey\@empty
@@ -780,18 +780,18 @@
}%
\fi
}
-\def\XKV@replacepointers#1{%
+\long\def\XKV@replacepointers#1{%
\let\XKV@tempa\@empty
\let\XKV@resa\@empty
- \XKV@r@placepointers#1\usevalue\@nil
+ \XKV@r@placepointers\@empty#1\usevalue\@nil
}
-\def\XKV@r@placepointers#1\usevalue#2{%
- \XKV@addtomacro@n\XKV@tempa{#1}%
+\long\def\XKV@r@placepointers#1\usevalue#2{%
+ \expandafter\XKV@addtomacro@n\expandafter\XKV@tempa\expandafter{#1}%
\def\XKV@tempb{#2}%
\ifx\XKV@tempb\@nnil\else\XKV@afterfi
\XKV@ifundefined{XKV@\XKV@header#2@value}{%
\XKV@err{no value recorded for key `#2'; ignored}%
- \XKV@r@placepointers
+ \XKV@r@placepointers\@empty
}{%
\@expandtwoargs\in@{,#2,}{,\XKV@resa,}%
\ifin@\XKV@afterelsefi
@@ -799,6 +799,7 @@
\else\XKV@afterfi
\XKV@addtolist@x\XKV@resa{#2}%
\expandafter\expandafter\expandafter\XKV@r@placepointers
+ \expandafter\expandafter\expandafter\@empty
\csname XKV@\XKV@header#2@value\endcsname
\fi
}%