summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/xkeyval
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/xkeyval')
-rw-r--r--Master/texmf-dist/source/latex/xkeyval/xkeyval.dtx33
1 files changed, 20 insertions, 13 deletions
diff --git a/Master/texmf-dist/source/latex/xkeyval/xkeyval.dtx b/Master/texmf-dist/source/latex/xkeyval/xkeyval.dtx
index 985f46dd065..939df4cdc05 100644
--- a/Master/texmf-dist/source/latex/xkeyval/xkeyval.dtx
+++ b/Master/texmf-dist/source/latex/xkeyval/xkeyval.dtx
@@ -181,7 +181,7 @@ macro. \PrintChangesX\PrintIndexX
%
% \GetFileInfo{xkeyval.sty}
%
-% \CheckSum{2999}
+% \CheckSum{3001}
%
%\DoNotIndex{\:,\@,\@@,\@backslashchar,\@ehc,\@empty,\@expandtwoargs,
%\@for,\@forloop,\@fornoop,\@fortmp,\@gobble,\@gobbletwo,\@if,\@ifnch,
@@ -2040,6 +2040,7 @@ macro. \PrintChangesX\PrintIndexX
% and scale).
% \begin{macrocode}
\newtoks\XKV@toks
+\newtoks\XKV@tempa@toks
\newcount\XKV@depth
\newif\ifXKV@st
\newif\ifXKV@sg
@@ -2053,10 +2054,10 @@ macro. \PrintChangesX\PrintIndexX
% Load \LaTeX\ primitives if necessary and provide information.
% \begin{macrocode}
\ifx\ProvidesFile\@undefined
- \message{2008/08/10 v2.6 key=value parser (HA)}
+ \message{2008/08/13 v2.6a key=value parser (HA)}
\input xkvtxhdr
\else
- \ProvidesFile{xkeyval.tex}[2008/08/10 v2.6 key=value parser (HA)]
+ \ProvidesFile{xkeyval.tex}[2008/08/13 v2.6a key=value parser (HA)]
\@addtofilelist{xkeyval.tex}
\fi
% \end{macrocode}
@@ -2156,6 +2157,7 @@ macro. \PrintChangesX\PrintIndexX
% \end{macro}
% \begin{macro}{\XKV@for@n}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \marg{list}\meta{cmd}\marg{function}\\
% Fast for-loop. \meta{list} is not expanded. Entries of \meta{list}
% will be stored in \meta{cmd} and at every iteration \meta{function}
@@ -2163,7 +2165,7 @@ macro. \PrintChangesX\PrintIndexX
% Contributed by Morten H\o gholm.
% \begin{macrocode}
\long\def\XKV@for@n#1#2#3{%
- \toks@{#1}\edef#2{\the\toks@}%
+ \XKV@tempa@toks{#1}\edef#2{\the\XKV@tempa@toks}%
\ifx#2\@empty
\XKV@for@break
\else
@@ -2175,11 +2177,12 @@ macro. \PrintChangesX\PrintIndexX
% \end{macro}
% \begin{macro}{\XKV@f@r}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \meta{cmd}\marg{function}\meta{entry}|,|\\
% Looping macro.
% \begin{macrocode}
\long\def\XKV@f@r#1#2#3,{%
- \toks@{#3}\edef#1{\the\toks@}%
+ \XKV@tempa@toks{#3}\edef#1{\the\XKV@tempa@toks}%
\ifx#1\@nnil
\expandafter\@gobbletwo
\else
@@ -2286,17 +2289,19 @@ macro. \PrintChangesX\PrintIndexX
% \end{macro}
% \begin{macro}{\XKV@addtomacro@n}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \meta{macro}\marg{content}\\
% Adds \meta{content} to \meta{macro} without expanding it.
% \begin{macrocode}
\def\XKV@addtomacro@n#1#2{%
- \toks@\expandafter{#1#2}%
- \edef#1{\the\toks@}%
+ \XKV@tempa@toks\expandafter{#1#2}%
+ \edef#1{\the\XKV@tempa@toks}%
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\XKV@addtomacro@o}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \meta{macro}\marg{content}\\
% Adds \meta{content} to \meta{macro} after expanding the first token
% of \meta{content} once. Often used to add the content of a macro
@@ -2350,6 +2355,7 @@ macro. \PrintChangesX\PrintIndexX
% \begin{macro}{\@s@lective@sanitize}
% \changes{v2.5a}{2005/05/31}{Added missing `\%'}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \oarg{level}\marg{character string}\marg{cmd}\\
% Converts selected characters, given by \meta{character string},
% within the first-level expansion of \meta{cmd} to category code~12,
@@ -2377,8 +2383,8 @@ macro. \PrintChangesX\PrintIndexX
\def#3{#2}\@onelevel@sanitize#3%
\edef#3{{#3}{\the\XKV@toks}}%
\expandafter\@s@l@ctive@sanitize\expandafter#3#3%
- \expandafter\toks@\expandafter{#3}%
- \expandafter\endgroup\expandafter\toks@\expandafter{\the\toks@}%
+ \expandafter\XKV@tempa@toks\expandafter{#3}%
+ \expandafter\endgroup\expandafter\toks@\expandafter{\the\XKV@tempa@toks}%
\edef#3{\the\toks@}%
}
% \end{macrocode}
@@ -2476,6 +2482,7 @@ macro. \PrintChangesX\PrintIndexX
% \begin{macro}{\XKV@ch@cksanitize}
% \changes{v1.8b}{2004/12/22}{Fixed bug for key value \cs{@empty}}
% \changes{v2.6 }{2008/08/10}{protecting assignments from \#}
+% \changes{v2.6a}{2008/08/13}{Use private scratch register}
% \marg{character string}\meta{cmd}\meta{token}\\
% This macro first checks whether at least one \meta{token} is in \meta{character string}.
% If that is the case, it checks whether the character has catcode 12.
@@ -2490,7 +2497,7 @@ macro. \PrintChangesX\PrintIndexX
% end of the macro.
% \begin{macrocode}
\def\XKV@ch@cksanitize#1#2#3{%
- \toks@{#1}\edef#2{\the\toks@}%
+ \XKV@tempa@toks{#1}\edef#2{\the\XKV@tempa@toks}%
\@onelevel@sanitize#2%
% \end{macrocode}
% Check whether there is at least one |=| present.
@@ -2504,12 +2511,12 @@ macro. \PrintChangesX\PrintIndexX
% before (and for instance stored in a macro or token register).
% \begin{macrocode}
\def#2##1#3##2\@nil{%
- \toks@{##2}\edef#2{\the\toks@}%
+ \XKV@tempa@toks{##2}\edef#2{\the\XKV@tempa@toks}%
\ifx#2\@empty\else\in@false\fi
}%
#2#1#3\@nil
\fi
- \toks@{#1}\edef#2{\the\toks@}%
+ \XKV@tempa@toks{#1}\edef#2{\the\XKV@tempa@toks}%
}
% \end{macrocode}
% \end{macro}
@@ -4017,7 +4024,7 @@ macro. \PrintChangesX\PrintIndexX
%<*xkvlatex>
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{xkeyval}
- [2008/08/10 v2.6 package option processing (HA)]
+ [2008/08/13 v2.6a package option processing (HA)]
% \end{macrocode}
% Initializations. Load |xkeyval.tex|, adjust some catcodes to define
% internal macros and initialize the |\DeclareOptionX*| working macro.