\mathcal 给出了不应该给出的不同输出

\mathcal 给出了不应该给出的不同输出

我的文档中多次出现mathcal,但它们使用的样式不同。考虑这个 MWE:

\documentclass{standalone}

\usepackage{mathtools}

\usepackage{unicode-math}
\setmainfont[Ligatures=TeX]{STIX}

\setmathfont{XITS Math}
\setmathfont[range={\mathcal},StylisticSet=1]{XITS Math}

\begin{document}

$\operatorname{O}$
$\mathcal{S}$
$\text{$P$}$
$\mathcal{S}$

\end{document}

MWE 输出

如您所见,两个“S”字符是不同的,但它们不应该是不同的。

我做错了什么?

使用的版本:

  • XeTeX,版本 3.14159265-2.6-0.99996(TeX Live 2016)
  • mathtools 2015/11/12 v1.18
  • amsmath 2016/06/28 v2.15d
  • unicode-math 2015/09/24 v0.8c

附录

mathtools之后加载unicode-math解决了这个问题,但会弄乱其他东西。例如,\underbrace{X}_{0}然后给出:

下支撑输出

答案1

这是 中的一个错误unicode-math。例如参见https://github.com/wspr/unicode-math/issues/356

虽然这个问题在 2017/01/27 v0.8d 中得到了修复,但后来又再次出现,最终通过https://github.com/wspr/unicode-math/commit/0f245c2ec4c527397a67f3ff04aea8107a6cbe31并于2018/02/01 v0.8l发布。

相关内容