我记得有一个 LaTeX 宏在内部用于定义只能在序言中使用的命令,但我记不住它的名字,也找不到它。
该命令是什么?如何使用它?
答案1
您正在寻找的命令是\@onlypreamble
:
\documentclass{article}
\def\ACommand{\def\Example{}}
\makeatletter
\@onlypreamble\ACommand
\makeatother
\ACommand % ok
\begin{document}
\ACommand % error
\end{document}
输出:
! LaTeX Error: Can be used only in preamble.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.15 \ACommand
% error
?