Zunächst solltest Du Gin nicht verwenden. Das wird schon von einem bekannten Paket verwendet. Sonst bekommst Du möglicherweise irgendwann Probleme. Desweiteren solltest Du immer ein vollständiges Minimalbeispiel (siehe VM-Anleitung) erstellen, damit man was zum Testen hat.
Jetzt zu Deiner Frage: Direkt geht das nicht. Man kann aber Umwege definieren, mit denen es doch geht. Primitive Lösung:
Code:
\documentclass{article}
\usepackage{keyval}
\makeatletter
\define@key{AreusPhoenix}{replace}{\process@AreusPhoenix@replace#1\@empty\@empty}
\newcommand*{\process@AreusPhoenix@replace}[2]{%
\begin{tabular}{ll}
1: & #1\\
2: & #2\\
\end{tabular}
}
\makeatother
\begin{document}
\setkeys{AreusPhoenix}{replace={das sind}{zwei Argument}}
\bigskip
Allerdings funktionieren so zwei Argumente nicht:
\setkeys{AreusPhoenix}{replace=das ist nicht nur ein Argument}
\end{document}
Soll es sowohl mit ein, als auch mit zwei Argumenten funktionieren, muss man schon deutlich mehr investieren, beispielsweise und ansatzweise:
Code:
\documentclass{article}
\usepackage{keyval}
\makeatletter
\define@key{AreusPhoenix}{replace}{\process@AreusPhoenix@replace#1\@empty\@empty\@empty\@nil}
\newcommand*{\process@AreusPhoenix@replace}{}%
\def\process@AreusPhoenix@replace#1#2#3\@nil{%
\def\reserved@a{\@empty\@empty\@empty}%
\def\reserved@b{#3}%
\ifx\reserved@a\reserved@b
Zwei Argument:
\begin{tabular}{ll}
1 & #1.\\
2 & #2.\\
\end{tabular}
\else
Ein Argument: #1#2#3.
\fi
}
\makeatother
\begin{document}
\ttfamily
\setkeys{AreusPhoenix}{replace={das sind}{zwei Argument}}
\bigskip
\setkeys{AreusPhoenix}{replace=das ist ein Argument}
\end{document}
Lesezeichen