summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty')
-rw-r--r--Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty51
1 files changed, 51 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty b/Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty
new file mode 100644
index 00000000000..d625f6c5ef5
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/latex-referenz/DEoptions.sty
@@ -0,0 +1,51 @@
+% $Id: DEoptions.sty 574 2011-09-05 08:17:17Z herbert $
+% Copyright 2011 by Herbert Voss
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\RequirePackage{keyval}[1997/11/10]
+
+\def\ProcessOptionsExa{%
+ \let\@tempa\@empty
+ \ifx\@currext\@clsextension%
+ \else
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@\@currname @\CurrentOption}%
+ {}{\edef\@tempa{\@tempa,\CurrentOption,}}}%
+ \fi
+ \edef\@tempa{%
+ \noexpand\setkeys{\@currname}{\@tempa\@ptionlist{\@currname.\@currext}}}%
+ \let\exa@origkverr\KV@err%
+ \ifx\@currext\@clsextension\let\KV@errx=\@gobble\fi% never mind
+ \@tempa%
+ \let\KV@err\exa@origkverr%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+
+\def\ExecuteOptionsExa#1{\setkeys{\@currname}{#1}}
+\def\DeclareOptionExa#1{\@ifnextchar[{\exa@dokv{#1}}{\exa@dokv{#1}[]}}
+\long\def\exa@dokv#1[#2]#3{\define@key{\@currname}{#1}[{#2}]{#3}}
+
+\def\exa@filterclassoptions{%
+ \def\exa@filteredclassoptionslist{}
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \ifx\CurrentOption\@empty\else
+ \@expandtwoargs\in@{=}{\CurrentOption}%
+ \ifin@
+ \else
+ \edef\exa@filteredclassoptionslist{%
+ \exa@filteredclassoptionslist,\CurrentOption}
+ \fi
+ \fi
+ }%
+ \let\@classoptionslist=\exa@filteredclassoptionslist%
+}
+
+\newcommand\defexaoption{\define@key{exa@option}}
+\newcommand\setexaoption{\setkeys{exa@option}}
+
+\endinput \ No newline at end of file