diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx | 63 |
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 |