Alternative Befehlsdefinition rückgängig machen

Alternative Befehlsdefinition rückgängig machen

Ich arbeite mit einem automatisierten System, das Code einfügt, der den Absatzbefehl neu definiert:

% 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

Ich stecke mit dieser Änderung fest.

Dies verursacht Probleme mit einigen LaTeX-Paketen, die ich unterhalb dieser Zeilen verwende.

Gibt es eine einfache Möglichkeit, diese Aktion rückgängig zu machen? Vielleicht

\renewcommand{\paragraph}{\oldparagraph}

Antwort1

Tun \renewcommand{\paragraph}{\oldparagraph}wird tunWenn \paragraphist zunächst definiert.

Besser ist

\let\paragraph\oldparagraph

Falls \oldparagraphes nicht definiert ist, lässt Ihre Klasse dies zunächst nicht \paragraphzu und Sie erhalten einen Fehler, genau wie ohne den eingefügten Code.

Übrigens ist dieser Code falsch und hätte

\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}\par}

sonst Eingaben wie

\paragraph{Title}
Something

wird „Etwas“ nicht in einer neuen Zeile haben (sondern in der gleichen Zeile mit einem zusätzlichen, unechten Leerzeichen), was mit ziemlicher Sicherheit das Ziel der Neudefinition ist.

verwandte Informationen