首先,最小工作样本如下。
\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
。