forum icon indicating copy to clipboard operation
forum copied to clipboard

使用 `siunitx` 宏包自定义 `list-final-separator` 等连接符时不能正确地处理间距

Open syvshc opened this issue 3 years ago • 1 comments

检查

  • [x] 已在 issues 中进行搜索(包括已关闭的问题)

编译环境

  • 操作系统

    • [x] Windows 11
  • TeX 发行版

    • [x] TeX Live 2022

描述问题

使用 siunitx 宏包自定义 list-final-separator 时不能正确地处理间距, 而在 list-pair-separatorrange-phrase 中可以.

最小工作示例(MWE)

\documentclass{ctexart}
\usepackage{siunitx}
\sisetup{
  list-final-separator = { 和 },
  list-pair-separator = { 和 },
  range-phrase = { 到 },
}
\begin{document}
\numlist{1;2;3}\\
\numrange{1}{10}\\
\qtyrange{50}{150}{\milli\electronvolt}
\end{document}

(用 XeLaTeX 编译后)输出

image

可以看到 1, 2 和 3 中的间距不正确, 而 1 到 1050meV 到 150meV 的间距正确. 并且如果将设置的空格都去掉, 即:

\documentclass{ctexart}
\usepackage{siunitx}
\sisetup{
  list-final-separator = {和},    % <-- here
  list-pair-separator = {和},     % <-- here
  range-phrase = {到},            % <-- here
}
\begin{document}
\numlist{1;2;3}\\
\numrange{1}{10}\\
\qtyrange{50}{150}{\milli\electronvolt}
\end{document}

image

那么三种情况的间距全部错误.

相关问题:

  • https://github.com/CTeX-org/forum/issues/19
  • https://github.com/CTeX-org/forum/issues/23

syvshc avatar Jun 23 '22 15:06 syvshc

是下面 issue 尝试解决的一般性问题,的具体情况之一

  • CTeX-org/ctex-kit#491

muzimuzhi avatar Jun 23 '22 16:06 muzimuzhi