summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx63
1 files changed, 36 insertions, 27 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx b/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx
index 0698395c84f..24852f67ff1 100644
--- a/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx
@@ -67,6 +67,8 @@
%
%<*ignore>
\begingroup
+ \catcode123=1 %
+ \catcode125=2 %
\def\x{LaTeX2e}%
\expandafter\endgroup
\ifcase 0\ifx\install y1\fi\expandafter
@@ -78,7 +80,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: kvsetkeys 2010/01/28 v1.8 Key value parser (HO)}
+\Msg{* Package: kvsetkeys 2010/03/01 v1.9 Key value parser (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -131,7 +133,8 @@ and the derived files
\file{kvsetkeys-test3.tex}{\from{kvsetkeys.dtx}{test2,noetex}}%
}
-\obeyspaces
+\catcode32=13\relax% active space
+\let =\space%
\Msg{************************************************************************}
\Msg{*}
\Msg{* To finish the installation you have to move the following}
@@ -158,7 +161,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{kvsetkeys.drv}%
- [2010/01/28 v1.8 Key value parser (HO)]%
+ [2010/03/01 v1.9 Key value parser (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\begin{document}
@@ -167,7 +170,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{1109}
+% \CheckSum{1135}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -188,7 +191,7 @@ and the derived files
% \GetFileInfo{kvsetkeys.drv}
%
% \title{The \xpackage{kvsetkeys} package}
-% \date{2010/01/28 v1.8}
+% \date{2010/03/01 v1.9}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -546,7 +549,7 @@ and the derived files
\fi
\expandafter\x\csname ver@kvsetkeys.sty\endcsname
\ProvidesPackage{kvsetkeys}%
- [2010/01/28 v1.8 Key value parser (HO)]
+ [2010/03/01 v1.9 Key value parser (HO)]
% \end{macrocode}
%
% \begin{macrocode}
@@ -646,7 +649,7 @@ and the derived files
%
% \begin{macro}{\KVS@IfEmpty}
% \begin{macrocode}
-\def\KVS@IfEmpty#1{%
+\long\def\KVS@IfEmpty#1{%
& \edef\KVS@Temp{\etex@unexpanded{#1}}%
$ \begingroup
$ \toks@{#1}%
@@ -665,7 +668,7 @@ $ \expandafter\endgroup
%
% \begin{macro}{\kv@normalize}
% \begin{macrocode}
-\def\kv@normalize#1{%
+\long\def\kv@normalize#1{%
\begingroup
\toks@{,#1,}%
\KVS@Comma
@@ -709,7 +712,7 @@ $ \expandafter\endgroup
\toks@\expandafter{\expandafter}\expandafter
\KVS@@Comma\the\toks@~\KVS@Nil
}%
- \def\KVS@@Comma#1~#2\KVS@Nil{%
+ \long\def\KVS@@Comma#1~#2\KVS@Nil{%
\toks@\expandafter{\the\toks@#1}%
\KVS@IfEmpty{#2}{%
}{%
@@ -722,14 +725,14 @@ $ \expandafter\endgroup
% \begin{macro}{\KVS@SpaceComma}
% Removes spaces before the comma, may add commas at the end.
% \begin{macrocode}
-\def\KVS@SpaceComma#1{%
+\long\def\KVS@SpaceComma#1{%
\expandafter\KVS@@SpaceComma\the\toks@#1,\KVS@Nil
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\KVS@@SpaceComma}
% \begin{macrocode}
-\def\KVS@@SpaceComma#1 ,#2\KVS@Nil{%
+\long\def\KVS@@SpaceComma#1 ,#2\KVS@Nil{%
\KVS@IfEmpty{#2}{%
\toks@{#1}%
}{%
@@ -749,7 +752,7 @@ $ \expandafter\endgroup
% \end{macro}
% \begin{macro}{\KVS@@CommaSpace}
% \begin{macrocode}
-\def\KVS@@CommaSpace#1, #2\KVS@Nil{%
+\long\def\KVS@@CommaSpace#1, #2\KVS@Nil{%
\KVS@IfEmpty{#2}{%
\toks@{#1}%
}{%
@@ -769,7 +772,7 @@ $ \expandafter\endgroup
% \end{macro}
% \begin{macro}{\KVS@@CommaComma}
% \begin{macrocode}
-\def\KVS@@CommaComma#1,,#2\KVS@Nil{%
+\long\def\KVS@@CommaComma#1,,#2\KVS@Nil{%
\toks@{#1,#2}%
\KVS@IfEmpty{#2}{%
}{%
@@ -790,7 +793,7 @@ $ \expandafter\endgroup
\toks@\expandafter{\expandafter}\expandafter
\KVS@@Equals\the\toks@~\KVS@Nil
}%
- \def\KVS@@Equals#1~#2\KVS@Nil{%
+ \long\def\KVS@@Equals#1~#2\KVS@Nil{%
\edef\KVS@Temp{\the\toks@}%
\ifx\KVS@Temp\KVS@Empty
\expandafter\KVS@FirstOfTwo
@@ -813,14 +816,14 @@ $ \expandafter\endgroup
% \begin{macro}{\KVS@SpaceEquals}
% Removes spaces before the equals sign.
% \begin{macrocode}
-\def\KVS@SpaceEquals#1{%
+\long\def\KVS@SpaceEquals#1{%
\expandafter\KVS@@SpaceEquals\the\toks@#1=\KVS@Nil
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\KVS@@SpaceEquals}
% \begin{macrocode}
-\def\KVS@@SpaceEquals#1 =#2\KVS@Nil{%
+\long\def\KVS@@SpaceEquals#1 =#2\KVS@Nil{%
\KVS@IfEmpty{#2}{%
\toks@{#1}%
}{%
@@ -840,7 +843,7 @@ $ \expandafter\endgroup
% \end{macro}
% \begin{macro}{\KVS@@EqualsSpace}
% \begin{macrocode}
-\def\KVS@@EqualsSpace#1= #2\KVS@Nil{%
+\long\def\KVS@@EqualsSpace#1= #2\KVS@Nil{%
\KVS@IfEmpty{#2}{%
\toks@{#1}%
}{%
@@ -856,7 +859,7 @@ $ \expandafter\endgroup
% \begin{macro}{\kv@parse}
% Normalizes and parses the key value list. Also sets \cs{kv@list}.
% \begin{macrocode}
-\def\kv@parse#1{%
+\long\def\kv@parse#1{%
\kv@normalize{#1}%
\expandafter\kv@parse@normalized\expandafter{\kv@list}%
}
@@ -866,7 +869,7 @@ $ \expandafter\endgroup
% |#1|: key value list\\
% |#2|: processor
% \begin{macrocode}
-\def\kv@parse@normalized#1#2{%
+\long\def\kv@parse@normalized#1#2{%
\KVS@Parse#1,\KVS@Nil{#2}%
}
% \end{macrocode}
@@ -875,7 +878,7 @@ $ \expandafter\endgroup
% |#1,#2|: key value list\\
% |#3|: processor
% \begin{macrocode}
-\def\KVS@Parse#1,#2\KVS@Nil#3{%
+\long\def\KVS@Parse#1,#2\KVS@Nil#3{%
\KVS@IfEmpty{#1}{%
}{%
\KVS@Process#1=\KVS@Nil{#3}%
@@ -892,7 +895,7 @@ $ \expandafter\endgroup
% |#2|: value, |=|\\
% |#3|: processor
% \begin{macrocode}
-\def\KVS@Process#1=#2\KVS@Nil#3{%
+\long\def\KVS@Process#1=#2\KVS@Nil#3{%
\def\kv@key{#1}%
\KVS@IfEmpty{#2}{%
\let\kv@value\relax
@@ -908,7 +911,7 @@ $ \expandafter\endgroup
% |#2|: value\\
% |#3|: processor
% \begin{macrocode}
-\def\KVS@@Process#1#2=\KVS@Nil#3{%
+\long\def\KVS@@Process#1#2=\KVS@Nil#3{%
& \edef\kv@value{\etex@unexpanded{#2}}%
$ \begingroup
$ \toks@{#2}%
@@ -963,7 +966,7 @@ $ \let\kv@value\KVS@Global
%
% \begin{macro}{\kv@processor@default}
% \begin{macrocode}
-\def\kv@processor@default#1#2#3{%
+\long\def\kv@processor@default#1#2#3{%
& \unless\ifcsname KV@#1@#2\endcsname
$ \begingroup\expandafter\expandafter\expandafter\endgroup
$ \expandafter\ifx\csname KV@#1@#2\endcsname\relax
@@ -1042,7 +1045,7 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
%
% \begin{macro}{\kvsetkeys}
% \begin{macrocode}
-\def\kvsetkeys#1#2{%
+\long\def\kvsetkeys#1#2{%
\kv@parse{#2}{\kv@processor@default{#1}}%
}
% \end{macrocode}
@@ -1156,7 +1159,7 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
\makeatletter
\chardef\KVS@TestMode=1 %
\makeatother
-\usepackage{kvsetkeys}[2010/01/28]
+\usepackage{kvsetkeys}[2010/03/01]
%<noetex>\let\unexpanded\SavedUnexpanded
\usepackage{qstest}
\IncludeTests{*}
@@ -1220,7 +1223,7 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
\@makeother\=
\begin{qstest}{normalize}{normalize,active-chars,space-removal}%
- \def\Test#1#2{%
+ \long\def\Test#1#2{%
\@makeother\,%
\@makeother\=%
\scantokens{\toks@={#2}}%
@@ -1236,7 +1239,7 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
\@Test{#1}%
\@makeother\=%
}%
- \def\@Test#1{%
+ \long\def\@Test#1{%
\scantokens{\kv@normalize{#1}}%
\expandafter\expandafter\expandafter\Expect
\expandafter\expandafter\expandafter
@@ -1257,6 +1260,8 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
\Test{{},{},{}}{,{},{},{},}%
\Test{=}{,=,}%
\Test{=,=,=}{,=,=,=,}%
+ \Test{a=\par}{,a=\par,}%
+ \Test{\par}{,\par,}%
\def\TestSet#1{%
\Test{#1#1}{,}%
\Test{#1#1,#1#1}{,}%
@@ -1650,6 +1655,10 @@ $ \expandafter\ifx\csname KV@#1@#2@default\endcsname\relax
% \item
% Compatibility to ini\TeX\ added.
% \end{Version}
+% \begin{Version}{2010/03/01 v1.9}
+% \item
+% Support of \cs{par} inside values.
+% \end{Version}
% \end{History}
%
% \PrintIndex