我正在使用 revtek4-2 (或 revtex4-1)文档类撰写研究论文,我需要编写一个包含数学符号的脚注,该脚注需要 \widetilde (不是\tilde)。看来 \footnote{} 环境与 \widetilde{} 冲突,从以下最小工作示例可以看出。有什么办法可以规避此问题吗?
谢谢你!
注 1:如果我将 \widetilde{} 替换为 \tilde{},则一切正常,但是 \tilde{} 在我的情况下并不理想,我确实需要使用 \widetilde{} 来代替。
注 2:此问题不会发生在其他文档类别(例如“文章”)中,但出于出版原因,我必须坚持使用 revtex4-2(或 revtex4-1)文档类别。
注 3:我正在使用 Overleaf 来编译 .tex 源。
\documentclass[amsmath,amssymb,reprint]{revtex4-2}
\begin{document}
Here is an example of a footnote with ``widetilde" \footnote{Let us try: $\widetilde{\mathcal{M}_{ij}}$}
\end{document}
答案1
每当出现“移动参数中的脆弱命令”错误时,您都可以应用它\protect
来防止过早扩展。无关但 ''
不是"
。
您需要删除.bbl
之前尝试中损坏的文件,然后运行 pdflaex、bibtaex、pdflatex、pdflatex。
\documentclass[amsmath,amssymb,reprint]{revtex4-2}
\begin{document}
Here is an example of a footnote with
``widetilde''\footnote{Let us try: $\protect\widetilde{\mathcal{M}_{ij}}$}
\end{document}
答案2
为了使用更广泛的变体,命令\widetilde
和\widehat
被重新定义amsfonts
,但该包未能使它们像内核命令那样强大。
如果有几个这样的情况,请\protect
在移动参数前面\widetilde
或\widehat
当中添加。
更实用的解决方案是让命令更强大。不过,这需要删除内核定义。
\documentclass[amsmath,amssymb,reprint]{revtex4-2}
%% remove the kernel inner definition of \widetilde and \widehat
\ExpandArgs{c}\let{widetilde }\relax
\ExpandArgs{c}\let{widehat }\relax
% make them robust
\MakeRobust\widetilde
\MakeRobust\widehat
\begin{document}
Here is an example of a footnote with
``widetilde''\footnote{Let us try: $\widetilde{\mathcal{M}_{ij}}$}
\end{document}
\ExpandArgs
如果你有一个较旧的 LaTeX 版本,它抱怨
\expandafter\let\csname widetilde \endcsname\relax
\expandafter\let\csname widehat \endcsname\relax
空间很重要。