.cls 檔案中使用 unicode-math.sty 的問題

.cls 檔案中使用 unicode-math.sty 的問題

我遇到問題unicode-math.sty(我正在使用 MacTeX2015, 今天早上更新了)。我正在使用以下 MWE 類文件。

testthis.cls

\NeedsTeXFormat{LaTeX2e}[2001/06/01]
\ProvidesClass{testthis}[2015/08/04 v1.0 TESTTHIS Author Class]

\LoadClass{article}

\RequirePackage{unicode-math}

\setmainfont{LucidaBrightOT}
\setmathfont{LucidaBrightMathOT}

%\makeatletter

\newcommand{\m@keit}{blablabla}

\endinput

當我用 XeLaTeX 編譯以下檔案:

% !TEX TS-program = XeLaTeX

\documentclass{testthis}

\begin{document}

A test.

\end{document}

我收到此錯誤:

./testthis.cls:13: LaTeX 錯誤: 指令 \m 已定義。或 name \end... 非法,請參閱手冊第 192 頁。

有關說明,請參閱 LaTeX 手冊或 LaTeX Companion。輸入 H 以獲得立即幫助。 …

l.13 \newcommand{\m@keit}{blablabla}

看來這\setmathfont會導致@恢復為“其他”:如果我任何一個取消註釋\makeatletter 或者使用 TeXLive 2014 或更早版本運行 TeX 文件,錯誤就會消失。或者,如果我註解掉\setmathfont{LucidaBrightMathOT}該錯誤也會消失。

一個謎題和任何見解將是最受歡迎的。

相關內容