siunitx v3 替代“detect-all”

siunitx v3 替代“detect-all”

我有一个文档,其中图片标题设置为无衬线字体。章节标题为粗体。两者都包含偶尔的单元,因此我一直在使用detect-all带有 的选项siunitx

我刚刚发现,根据官方更新日志所有detect-*选项在 v3 中都被删除了siunitx。好吧,从技术上讲它们似乎仍然有效,但至少它们已被弃用,并且不再有文档记录。

预期的替代方案是什么?

答案1

简短的回答:目前没有。

在 v2(和 v1)中siunitx,我使用了基于旧包(sistyle)的方法。这意味着重置一切到已知位置,然后根据要求添加检测到的更改。这样做有几个问题。首先,从 TeX 的角度来看,它相对“昂贵”:我们总是必须至少重置,甚至更多。第二,这意味着我需要知道要检测/重置的内容。这会导致一些问题。方法反映在选项名称中:detect-...因为这就是发生的事情。

在 v3 中,方法有所不同。我只会更改满足用户请求所需的内容。这样工作量就小了,这意味着我不必知道每个可能的更改是什么,这反映了数学和文本模式的工作方式不同。缺点是我无法为所有设置找到一个好的名称。

老年人detect-all则通过应用

mode = match ,
propagate-math-font = true ,
reset-math-version = false ,
reset-text-family = false ,
reset-text-series = false ,
text-family-to-math = true ,
text-series-to-math = true

但您会发现这里没有明显的名称。请注意,在某些极端情况下,它不会像在 v2 中那样做:这就是为什么存在加载 v2 作为选项的后备。

因此,您需要明确设置想要激活的字体控制选项。

相关内容