von KOMA » Mi 3. Nov 2010, 13:25
Ich bin mir nicht sicher, dass ich genau verstanden habe, was Dein Problem ist und was Du vor hast. Falls ja:
Da gibt es verschiedene Möglichkeiten. Zum einen, kannst Du zunächst prüfen, ob ein zugelassenes Argument übergeben wurde (scrlfile bietet dafür beispielsweise \ifstr, ifthen bietet ebenfalls einen Vergleich) und anderenfalls einen Fehler ausgeben. Du kannst aber auch einfach nur die erlaubten außerhalb mit \createboolean definieren und dann innerhalb der Template-Anweisung lediglich \setboolean aufrufen. Wenn da ein falsches erstes Argument angegeben wird, gibt es von selbst einen Fehler.
Ich würde mir übrigens bei einem Paket überlegen, ob die Verwendung von ifthen wirklich sein muss. Da Vergleiche damit nicht voll expandierbar sind, gibt es unter manchmal Probleme bei der Expansion, die in seltsamen Fehlermeldungen münden. Boolsche Schalter kann LaTeX beispielsweise bereits selbst ohne ifthen mit \newif\iffoo, \foofalse, \footrue, \iffoo ... \else ... \fi.
Auch die Schleifen von ifthen sind vor allem für Anwender nützlich. Paketautoren können auch hier häufig die Schleifen verwenden, die im LaTeX-Kern bereits als interne Anweisungen definiert sind.
Ich bin mir nicht sicher, dass ich genau verstanden habe, was Dein Problem ist und was Du vor hast. Falls ja:
Da gibt es verschiedene Möglichkeiten. Zum einen, kannst Du zunächst prüfen, ob ein zugelassenes Argument übergeben wurde (scrlfile bietet dafür beispielsweise \ifstr, ifthen bietet ebenfalls einen Vergleich) und anderenfalls einen Fehler ausgeben. Du kannst aber auch einfach nur die erlaubten außerhalb mit \createboolean definieren und dann innerhalb der Template-Anweisung lediglich \setboolean aufrufen. Wenn da ein falsches erstes Argument angegeben wird, gibt es von selbst einen Fehler.
Ich würde mir übrigens bei einem Paket überlegen, ob die Verwendung von ifthen wirklich sein muss. Da Vergleiche damit nicht voll expandierbar sind, gibt es unter manchmal Probleme bei der Expansion, die in seltsamen Fehlermeldungen münden. Boolsche Schalter kann LaTeX beispielsweise bereits selbst ohne ifthen mit \newif\iffoo, \foofalse, \footrue, \iffoo ... \else ... \fi.
Auch die Schleifen von ifthen sind vor allem für Anwender nützlich. Paketautoren können auch hier häufig die Schleifen verwenden, die im LaTeX-Kern bereits als interne Anweisungen definiert sind.