\typecolon 是 \mathbin;它应该是 \mathrel

\typecolon 是 \mathbin;它应该是 \mathrel

在 中unimath-symbols.pdf,开冒号 ⦂ (U+02982),称为 Z 符号类型冒号,声明为\mathbin。据我所知,您可以按照以下示例所示使用此类型冒号。以下几行

x ⦂ int
f ⦂ int → int

声明一个整数类型的零元符号x(或整数类型,取决于你的词汇)和一个f类型的一元函数符号int → int。因此,开冒号⦂是一个关系符号,这意味着它应该是\mathrel。例如,参见http://czt.sourceforge.net/latex/z/czt-guide.pdf(尽管截至今天,这个符号可能已不再在 Z 中使用)。

  • 知道为什么该符号被列为吗\mathbin
  • 我们是否遇到了文档/解释错误?

更新:阅读后LaTeX 数学简明指南,我不再确信粗结肠周围的间距一定是对称的。对称间距只是:迄今为止用于打字判断的一种方法(我和显然成千上万的人多年来一直使用这种方法)和一些其他来源的方法,例如,形式规范 - Z 符号 - 语法、类型和语义。所以,如果有人对此有强烈的反对意见,请他/她自由地提倡\mathpunct。但无论如何,\mathbin都是错误的。

答案1

理想情况下,Unicode 字符数学分类的默认值将由 Unicode 指定,就像指定字母或非字母的默认分类和大小写变化属性一样。

Unicode 有一份技术报告

http://www.unicode.org/Public/math/revision-14/MathClassEx-14.html

列出这些内容目前还不是 Unicode 字符数据库的正式组成部分,但将来可能会成为其中的一部分。

有代码可以将 Unicode 文本文件直接读入 TeX,目前用于设置 xe(la)tex 和 lua(la)tex 中的默认大写和小写值。我们尝试使用 mathclass-14.txt 设置默认数学代码,但目前尚未启用。但是文件在 ctan 和 tex 分布中

<texmf> /2016/texmf-dist/tex/generic/unicode-data/MathClass.txt

普通冒号:通常具有两种数学代码分类,默认分类使其 \mathrel成为通常左右两侧都有较大空间的冒号,并且\colon是相同的字形,但声明为\mathpunct在大多数情况下左侧没有空间而右侧空间较窄的冒号。

查看 Z 规范

http://www.open-std.org/jtc1/sc22/open/n3187.pdf

它对间距没有过多的规定,但用法似乎有对称空间,所以匹配的数学代码:似乎是合理的。

MathML 的默认运算符词典中缀的间距很窄,因此更像 \mathbin 而不是 \mathrel。

MathClassEx-14.html 底部有一个评论链接,但由于技术报告的一位作者是这里的常客,她已经在聊天中讨论过此问题

如果要建议更改 unicode-math,最好打开一个问题在 github 上

相关内容