Я работаю с автоматизированной системой, которая внедряет некоторый код, переопределяющий команду абзаца:
% Redefines (sub)paragraphs to behave more like sections
\ifx\paragraph\undefined\else
\let\oldparagraph\paragraph
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
\fi
\ifx\subparagraph\undefined\else
\let\oldsubparagraph\subparagraph
\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
\fi
Я застрял с этим изменением.
Это вызывает проблемы с некоторыми пакетами LaTeX, которые я использую ниже этих строк.
Есть ли простой способ отменить это действие? Может быть
\renewcommand{\paragraph}{\oldparagraph}
решение1
Делать \renewcommand{\paragraph}{\oldparagraph}
будет делатьесли \paragraph
определяется с самого начала.
Лучше есть
\let\paragraph\oldparagraph
В случае, если \oldparagraph
он не определен, ваш класс не позволяет \paragraph
начать с этого, и вы получите ошибку, такую же, как и без внедренного кода.
Кстати, этот код неверный, и его следовало бы
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}\par}
в противном случае вводите такие данные, как
\paragraph{Title}
Something
не будет иметь «Something» на новой строке (но на той же строке с дополнительным пробелом), что почти наверняка является целью переопределения.