Moi23
05-03-2008, 17:34
Hallo,
ich versuche jetzt schon seit Stunden ein Problem in den Griff zu bekommen - hoffnungslos.
Ich habe wenig Erfahrung im Pakete schreiben, moechte das aber dennoch tun und stehe vor einem Problem.
Ich moechte mit dem xkeyval-Paket Variablen definieren und diese dann an bereits bestehende Funktionen uebergeben. So auch an \definecolor.
\define@key[Moi]{box}{color}[1,0,0]{#1}
\define@choicekey*+[Moi]{box}{farbcode}[\input\nummer]{rgb, name}{%
\ifcase\nummer%\relax
\definecolor{tmpboxcolor}{rgb}{\Moi@box@color}
\or
Tue erstmal nichts
\fi
}{%
}
\newcommand\ITsetboxpar[2]{%
\setkeys[Moi]{box}{color={#2}, farbcode=#1}
%\definecolor{tmpboxcolor}{rgb}{#2}
}
Ich moechte also \Moi@box@color an definecolor uebergeben. Ich bekomme genau da einen Fehler, das heisst, wenn ich die Zeile auskommentiere, dann funktioniert der Code.
In der vorletzten Zeile steht \definecolor{tmpboxcolor}{rgb}{#2} auskommentiert, weil diese Methode theoretisch funktioniert. Warum? Was macht LaTeX intern mit #2 und mit Macros in definecolor?
Mein Ziel ist es eigentlich wie bei hyperref auch vordefinierte Farben an xkey-Variablen zu uebergeben. Auch hier bekomme ich das einfach nicht hin.
Wenn mir da einer weiterhelfen koennte, wuerde ich mich sehr freuen.
ich versuche jetzt schon seit Stunden ein Problem in den Griff zu bekommen - hoffnungslos.
Ich habe wenig Erfahrung im Pakete schreiben, moechte das aber dennoch tun und stehe vor einem Problem.
Ich moechte mit dem xkeyval-Paket Variablen definieren und diese dann an bereits bestehende Funktionen uebergeben. So auch an \definecolor.
\define@key[Moi]{box}{color}[1,0,0]{#1}
\define@choicekey*+[Moi]{box}{farbcode}[\input\nummer]{rgb, name}{%
\ifcase\nummer%\relax
\definecolor{tmpboxcolor}{rgb}{\Moi@box@color}
\or
Tue erstmal nichts
\fi
}{%
}
\newcommand\ITsetboxpar[2]{%
\setkeys[Moi]{box}{color={#2}, farbcode=#1}
%\definecolor{tmpboxcolor}{rgb}{#2}
}
Ich moechte also \Moi@box@color an definecolor uebergeben. Ich bekomme genau da einen Fehler, das heisst, wenn ich die Zeile auskommentiere, dann funktioniert der Code.
In der vorletzten Zeile steht \definecolor{tmpboxcolor}{rgb}{#2} auskommentiert, weil diese Methode theoretisch funktioniert. Warum? Was macht LaTeX intern mit #2 und mit Macros in definecolor?
Mein Ziel ist es eigentlich wie bei hyperref auch vordefinierte Farben an xkey-Variablen zu uebergeben. Auch hier bekomme ich das einfach nicht hin.
Wenn mir da einer weiterhelfen koennte, wuerde ich mich sehr freuen.