软件包 fontspec 的未知选项‘\eu@zf@math’

软件包 fontspec 的未知选项‘\eu@zf@math’

首先,最小工作样本如下。

\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

相关内容