Переопределить команду \citet (два необязательных аргумента)

Переопределить команду \citet (два необязательных аргумента)

Мне нужно переопределить команду "\citet", чтобы ее вывод был напечатан красным цветом. Я сделал:

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

который работает для случая «одного необязательного аргумента»: \citet[ARG]{label}.

Как получить тот же результат для случая «два необязательных аргумента» \citet[ARG1][ARG2]{label}:?

решение1

Вам не нужно проверять наличие какого-либо необязательного аргумента, если вы используете аргумент, #1#{чтобы получить все до {:

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

Связанный контент