![软件包 fontspec 的未知选项‘\eu@zf@math’](https://linux22.com/image/474812/%E8%BD%AF%E4%BB%B6%E5%8C%85%20fontspec%20%E7%9A%84%E6%9C%AA%E7%9F%A5%E9%80%89%E9%A1%B9%E2%80%98%5Ceu%40zf%40math%E2%80%99.png)
首先,最小工作样本如下。
\documentclass{ctexbook}
\usepackage{mathspec}
\begin{document}
Some words.
\end{document}
使用 MacTeX 2024 (最新版本)编译tex
上述文件XeLaTeX
,将会产生如下错误。
Unknown option '\eu@zf@math' for package fontspec. ...Package[\eu@zf@math]{fontspec}[2008/08/09]
那么如何消除误差呢?
答案1
该mathspec
软件包存在 问题ctexbook
。但它也存在 问题,fontspec
因为它以可能危险的方式对其进行了修补。
您可以自行承担风险执行以下操作。
\PassOptionsToPackage{no-math}{fontspec}
\documentclass{ctexbook}
%%%% Fix the error
\ExplSyntaxOn
\NewCommandCopy{\kernelRequirePackage}{\RequirePackage}
\RenewDocumentCommand{\RequirePackage}{O{}mo}
{
\str_if_eq:nnF { #2 } { fontspec }
{
\IfNoValueTF{#3}{\kernelRequirePackage[#1]{#2}}{\kernelRequirePackage[#1]{#2}[#3]}
}
}
\ExplSyntaxOff
\usepackage{mathspec}
\RenewCommandCopy{\RequirePackage}{\kernelRequirePackage}
%%%
\begin{document}
Some words.
\end{document}
解释:ctexbook
已经加载,fontspec
因此我禁用mathspec
尝试加载它(发生错误的地方)并no-math
在开始时将选项传递给它。
我认为现在没有什么真正理由使用它mathspec
。