LuaLaTeX 使用 icomma 包和 Font TeX Gyre Termes Math 失败

LuaLaTeX 使用 icomma 包和 Font TeX Gyre Termes Math 失败

我遇到了一个错误,如这个最小示例所示。代码不会产生错误,但 LuaLaTeX 会陷入循环,必须终止。

\documentclass{scrbook}
\usepackage{amsmath}
\usepackage{icomma}

\usepackage{unicode-math}
\usepackage{fontspec}

\setmathfont{TeX Gyre Termes Math}

\begin{document}
\begin{equation}
  \nabla  u,
\end{equation}

\end{document}

由于这个icomma软件包确实很旧,我想知道它的功能是否被其他软件包所采用?

答案1

两个包都定义\mathcomma,加载icommaunicode-math


\documentclass{scrbook}

\usepackage{amsmath}



\usepackage{unicode-math}

\usepackage{fontspec}

\setmathfont{TeX Gyre Termes Math}


\usepackage{icomma}

\begin{document}


\begin{equation}
  \nabla  u,
\end{equation}

\end{document}

答案2

如果您只想为小数点分隔符设置适当的间距,我建议您siunitx。它提供了一个\num命令(以及其他命令),可以正确格式化数字。

\documentclass{article}
\usepackage{siunitx}

\begin{document}

\num{2.1}

\end{document}

您可以配置使用点或逗号作为小数分隔符(因为这取决于您的语言),等等。如果您添加:

\sisetup{output-decimal-marker={,}}

在加载包之后,您的前言中将使用逗号作为分隔符,即使您在 的参数中输入一个点\num

是的,逗号周围的间距将会更紧密。

相关内容