You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
103 lines
2.9 KiB
103 lines
2.9 KiB
%%
|
|
%% This is file `twoopt.sty',
|
|
%% generated with the docstrip utility.
|
|
%%
|
|
%% The original source files were:
|
|
%%
|
|
%% twoopt.dtx (with options: `package')
|
|
%%
|
|
%% This is a generated file.
|
|
%%
|
|
%% Project: twoopt
|
|
%% Version: 2016/05/16 v1.6
|
|
%%
|
|
%% Copyright (C)
|
|
%% 1999, 2006, 2008 Heiko Oberdiek
|
|
%% 2016-2019 Oberdiek Package Support Group
|
|
%%
|
|
%% This work may be distributed and/or modified under the
|
|
%% conditions of the LaTeX Project Public License, either
|
|
%% version 1.3c of this license or (at your option) any later
|
|
%% version. This version of this license is in
|
|
%% https://www.latex-project.org/lppl/lppl-1-3c.txt
|
|
%% and the latest version of this license is in
|
|
%% https://www.latex-project.org/lppl.txt
|
|
%% and version 1.3 or later is part of all distributions of
|
|
%% LaTeX version 2005/12/01 or later.
|
|
%%
|
|
%% This work has the LPPL maintenance status "maintained".
|
|
%%
|
|
%% The Current Maintainers of this work are
|
|
%% Heiko Oberdiek and the Oberdiek Package Support Group
|
|
%% https://github.com/ho-tex/oberdiek/issues
|
|
%%
|
|
%%
|
|
%% This work consists of the main source file twoopt.dtx
|
|
%% and the derived files
|
|
%% twoopt.sty, twoopt.pdf, twoopt.ins, twoopt.drv.
|
|
%%
|
|
\NeedsTeXFormat{LaTeX2e}
|
|
\ProvidesPackage{twoopt}
|
|
[2016/05/16 v1.6 Definitions with two optional arguments (HO)]%
|
|
\newcommand{\newcommandtwoopt}{%
|
|
\@ifstar{\@newcommandtwoopt*}{\@newcommandtwoopt{}}%
|
|
}
|
|
\newcommand{\@newcommandtwoopt}{}
|
|
\long\def\@newcommandtwoopt#1#2{%
|
|
\expandafter\@@newcommandtwoopt
|
|
\csname2\string#2\endcsname{#1}{#2}%
|
|
}
|
|
\newcommand{\@@newcommandtwoopt}{}
|
|
\long\def\@@newcommandtwoopt#1#2#3[#4][#5][#6]{%
|
|
\newcommand#2#3[1][{#5}]{%
|
|
\to@ScanSecondOptArg#1{##1}{#6}%
|
|
}%
|
|
\newcommand#2#1[{#4}]%
|
|
}
|
|
\newcommand{\renewcommandtwoopt}{%
|
|
\@ifstar{\@renewcommandtwoopt*}{\@renewcommandtwoopt{}}%
|
|
}
|
|
\newcommand{\@renewcommandtwoopt}{}
|
|
\long\def\@renewcommandtwoopt#1#2{%
|
|
\begingroup
|
|
\escapechar\m@ne
|
|
\xdef\@gtempa{{\string#2}}%
|
|
\endgroup
|
|
\expandafter\@ifundefined\@gtempa{%
|
|
\@latex@error{\noexpand#2undefined}\@ehc
|
|
}{}%
|
|
\let#2\@undefined
|
|
\expandafter\let\csname2\string#2\endcsname\@undefined
|
|
\expandafter\@@newcommandtwoopt
|
|
\csname2\string#2\endcsname{#1}{#2}%
|
|
}
|
|
\newcommand{\providecommandtwoopt}{%
|
|
\@ifstar{\@providecommandtwoopt*}{\@providecommandtwoopt{}}%
|
|
}
|
|
\newcommand{\@providecommandtwoopt}{}
|
|
\long\def\@providecommandtwoopt#1#2{%
|
|
\begingroup
|
|
\escapechar\m@ne
|
|
\xdef\@gtempa{{\string#2}}%
|
|
\endgroup
|
|
\expandafter\@ifundefined\@gtempa{%
|
|
\expandafter\@@newcommandtwoopt
|
|
\csname2\string#2\endcsname{#1}{#2}%
|
|
}{%
|
|
\let\to@dummyA\@undefined
|
|
\let\to@dummyB\@undefined
|
|
\@@newcommandtwoopt\to@dummyA{#1}\to@dummyB
|
|
}%
|
|
}
|
|
\newcommand{\to@ScanSecondOptArg}[3]{%
|
|
\@ifnextchar[{%
|
|
\expandafter#1\to@ArgOptToArgArg{#2}%
|
|
}{%
|
|
#1{#2}{#3}%
|
|
}%
|
|
}
|
|
\newcommand{\to@ArgOptToArgArg}{}
|
|
\long\def\to@ArgOptToArgArg#1[#2]{{#1}{#2}}
|
|
\endinput
|
|
%%
|
|
%% End of file `twoopt.sty'.
|
|
|