
Ich habe gerade einAntwortdas eine temporäre Variable mit verwendet \write\@auxout
und dachte, es wäre eine gute Idee, den Gültigkeitsbereich mit , zu verwenden \begingroup
. \endgroup
Aus irgendeinem Grund ergibt sich daraus:
! Undefinierte Steuersequenz.
<write> \tempvariable
MWE
\documentclass{article}
\makeatletter
\newcommand{\abc}{%
\begingroup%
\newcommand\tempvariable{\relax}%
\write\@auxout{\tempvariable}%
\endgroup%
}
\makeatother
\begin{document}
Why isn't this working???
\abc
\end{document}
Warum passiert das und wie kann ich das Problem beheben?
Antwort1
Das Hinzufügen \immediate
sollte helfen:
\documentclass{article}
\makeatletter
\newcommand{\abc}{%
\begingroup%
\newcommand\tempvariable{\relax}%
% \write\@auxout{\tempvariable}%
\immediate \write\@auxout{\tempvariable}%
\endgroup%
}
\makeatother
\begin{document}
Why isn't this working???
\abc
\end{document}
Aus Ihrer Antwort unter dem Link erkenne ich, dass Sie den Befehl kennen \immediate
, daher ist vermutlich kein weiterer Kommentar erforderlich.