\setmathfont 范围有错误吗?

\setmathfont 范围有错误吗?

我正在使用 XeLaTeX 和 unicode-math 以及 Libertinus Math 字体。有些符号缺失,因此我使用范围命令。然后我在大括号旁边看到一个不需要的十字符号。这是一个 MWE。

\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Libertinus Math}
\setmathfont[range={\rightrightarrows,\twoheadrightarrow}]{xits-math.otf}
% The seemingly useleess command below is needed for a different known bug
\setmathfont[range={\int}]{Libertinus Math}
\begin{document}
\[
\Bigl\{\Bigr\}
\]
\end{document}

在此处输入图片描述

上面评论中的已知错误:Unicode-math 更改超出范围的字体

有人知道这是否是已知的错误吗?有解决方案吗?

编辑:我刚刚找到了一个解决方法这里. 有没有“更清洁”的解决方案?

答案1

您可以重置 delcode:

\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Libertinus Math}
\setmathfont[range={\rightrightarrows,\twoheadrightarrow}]{xits-math.otf}
% The seemingly useleess command below is needed for a different known bug
\setmathfont[range={\int}]{Libertinus Math}
\ExplSyntaxOn
\__um_set_delcode:nnn {operators} {`\.} {\c_zero}
\ExplSyntaxOff
\begin{document}
\[
\Bigl\{\Bigr\}
\]
\end{document}

但是如果在 unicode-math(或 xetex,如果它表明 xetex 有错误)中纠正这个问题会更好。

相关内容