我正在尝试使用一个命令( )在同一个文档中\phi
绘制两个不同的符号(\varphi
和常规)。\phi
我已经尝试过以下方法:
\documentclass{article}
\usepackage{amsmath, amssymb}
\newcommand{\oldphi}{\phi}
\renewcommand{\phi}{\varphi}
\begin{document}
$\phi$
\renewcommand{\phi}{\oldphi}
$\phi$
\end{document}
但这无法编译(使用 pdftex 或 TexMaker),它似乎陷入了循环并且无法创建 pdf,但我不知道为什么?
或者有更好的方法来实现这一点?
答案1
答案2
我已经自己解决了这个问题\let
,因此将其发布出来以供后人参考。
\documentclass{article}
\usepackage{amsmath, amssymb}
\let\oldphi\phi
\let\phi\varphi
\begin{document}
$\phi$
\let\phi\oldphi
$\phi$
\end{document}
我的理解是,\newcommand{\x}{\y}
只需将“ ”替换\a
为“ \b
”,即可形成循环,而\let\a\b
实际上设置\a
为的值\b
,这样就解决了任何自引用问题。