我尝试在我的论文中使用描述性宏来提高灵活性,以便将来可以改变符号。
\documentclass{article}
\pagestyle{empty}
\def\energy{\gamma}
\begin{document}
Suppose that $\energy = 10$ joules...
Many paragraphs later we recall that $\gamma = 10$ joules.
\end{document}
现在我的论文很长,有时我会忘记使用 \energy 宏,而只是输入 \gamma。有什么方法可以让 latex 警告我或阻止我在文档的任何地方使用 \gamma?
答案1
困难的是
\newcommand\energy{} % check whether \energy is already defined
\let\energy\gamma
\let\gamma\undefined
那么每次使用时,LaTeX 都会给出错误“未定义的控制序列” \gamma
。
答案2
我以为你可以用
\expandafter\def\expandafter\energy\expandafter{\gamma}
\let\gamma\energy
如果可扩展的话,这个方法应该可以工作\gamma
,但奇怪的是它不能。下面的方法可以工作:
\def\energy{\mathchar"10D}
\let\gamma\energy
\gamma
它需要知道我通过写作得到了什么含义\show\gamma
。我不知道这有多强大。