撤銷備用指令定義

撤銷備用指令定義

我正在使用一個自動化系統,該系統注入一些重新定義段落命令的程式碼:

% 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

新行上不會有「某物」(但在同一行上還有一個虛假空格),這幾乎肯定是重新定義的目的。

相關內容