我继承了一些 latex 文件,除了以下行之外,它们都可以很好地编译
\DeclareMathOperator{\£}{\text{\pounds}}
我删除了该行(并将使用 £ 的位置替换为英镑),一切正常。但我很好奇 - 大概是编译时使用的文件?该代码行似乎也出现在我继承的所有约 50 个文件中,因此如果可能的话,我希望“更正”而不是“删除”。
答案1
当不涉及 UTF-8 输入时,此方法可行。您继承的文件可能采用了不同的输入编码。
将它们转换为 UTF-8 会£
变成双字节字符,并且\DeclareMathOperator
不喜欢\£
。
你可以做
\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator{\mathpound}{\textup{\pounds}}
\def\£{\mathpound}
\begin{document}
$\£(x)$
\end{document}
但我的建议是放弃\£
并为命令选择一个更好的名称。
不要尝试使用该代码执行类似的操作:只能以该方式使用\def\µ{...}
一个带有首字节的双字节字符。0xC2