Redefinir el comando \citet (caso de dos argumentos opcionales)

Redefinir el comando \citet (caso de dos argumentos opcionales)

Necesito redefinir el comando "\citet" para que su salida se imprima en rojo. Hice:

\let\oldcitet\citet
\renewcommand*\citet[2][]{{\color{red}\oldcitet[#1]{#2}}}

eso funciona para el caso de "un argumento opcional": \citet[ARG]{label}.

¿Cómo puedo obtener el mismo resultado para el caso de "dos argumentos opcionales" \citet[ARG1][ARG2]{label}:?

Respuesta1

No es necesario verificar ningún argumento opcional, si usa el #1#{argumento para obtener todo antes de {:

\let\oldcitet\citet
\def\citet#1#{\citetaux{#1}}
\newcommand*\citetaux[2]{{\color{red}\oldcitet#1{#2}}}

información relacionada