Как я могу переопределить помеченную звездочкой команду LaTeX, которая принимает параметры?
Я пытаюсь переопределить \chapter
команда как это
\let\oldchapter\chapter
\renewcommand\chapter[1]{{\color{green!30!blue!80}\oldchapter{#1}}}
Эти инструкции работали, прежде чем я начну использовать помеченную версию \chapter*
, но теперь я получаю ошибки компиляции. Я много искал и нашел несколько руководств ( вроде этого) и ответы, но я не могу заставить свой код работать. Пожалуйста, скажите мне, как я могу отредактировать этот код, чтобы он работал, я видел много примеров, но я не мог найти правильный способ переопределить помеченные команды.
1 ответ
Решение
Наконец, я нашел решение из этой старой темы. Мой рабочий код сейчас:
\newcommand{\@chapterstar}[1]{{\color{green!30!blue!80}\oldchapter*{#1}}}
\newcommand{\@chapternostar}[1]{{\color{green!30!blue!80}\oldchapter{#1}}}
\renewcommand{\chapter}{\@ifstar{\@chapterstar}{\@chapternostar}}