\begin{document} unterbricht die Neudefinition von \Re

\begin{document} unterbricht die Neudefinition von \Re

Um den Realteiloperator im gotischen Stil durch ein einfaches „Re“ zu ersetzen, funktioniert bei mir Folgendes:

\documentclass[a4paper,11pt,twoside,fleqn]{report}
[...]
\usepackage{amsmath}
\usepackage{mathtools}
\usepackage[bold-style=ISO]{unicode-math} % must come after ams and symbols
[...]
\begin{document}
\def\Re{\operatorname{Re}}

Wenn ich jedoch die letzten beiden Zeilen vertausche, ist meine Neudefinition \Rewirkungslos. Was passiert da? Wie kann ich \begin{document}eine Makro-Neudefinition überschreiben?

Antwort1

In sind eine Reihe von Befehlen unicode-mathenthalten, \AtBeginDocumentdie erst ausgeführt werden, wenn die Verarbeitung den \begin{document}Befehl erreicht. Sie können denselben Trick selbst verwenden, um eine Definition zu überschreiben:

Beispielausgabe

\documentclass[a4paper,11pt,twoside,fleqn]{report}

\usepackage{mathtools}
\usepackage[bold-style=ISO]{unicode-math}

\AtBeginDocument{\renewcommand{\Re}{\operatorname{Re}}}
\begin{document}

\( \Re z \)
\end{document}

Ähnliche Befehle wie \AtEndOfPackagesind auch im LaTeX-Kern definiert. Weitere Befehle \AtBeginEnvironmentsind im etoolboxPaket enthalten.

verwandte Informationen