\RequirePackage[siunitx]
我正在尝试更新和编译一些旧文档,但在下一行(! Undefined Control Sequence. \@nnil -> \@nil
在另一个上)遇到了错误\RequirePackage
。看来这scientific-notation=true
不再起作用了(exponent-mode=scientific
似乎是替代品),我只需删除所有table
...选项即可。
所以我现在已经修复了它,但是是否有一个已删除选项及其等效项的列表来帮助从 V2 迁移到 V3?这是一个有详尽文档的软件包,我已经阅读了 CTAN 上的更改说明,所以我知道更改背后的原因,并且我知道旧术语未在最新手册中引用。我也知道我可以强制使用 V2,但当前文档是一个我可能会继续回顾的演示文稿,所以我想迁移到当前版本。
这有点奇怪。以下 MWE 显示了 TeX Live 2021 中的错误:
\documentclass{article}
\usepackage[number-unit-product = \text{~}]{siunitx}
\begin{document}
\end{document}
但更长的文档中如果有相同的选项(作为列表中的最后一个选项),则不会出现这种情况。将相同的列表复制到我的最小文件中会显示这种情况。
我tlmgr update --all
对错误没有影响。
将该选项更新为[product-symbol=~]
似乎可以解决问题,但[product-symbol=\text{~}]
不能(虽然当时我偶尔但不经常地在数学模式下使用 siunitx,但这可能是不必要的)。即使[number-unit-product=~]
不再给出错误,但我敢发誓它以前会给出错误。
我仍然希望(生成)一个过时选项的列表,以避免即使在没有错误的情况下也出现意外的输出
答案1
这变更日志siunitx
有此类详细信息。具体来说,在 v2.8e 和 v3.0.0 之间添加/弃用/删除的每个选项的列表如下可用的,并且应该是全面的。(ChangeLog 也可以使用texdoc
,您只需传递选项,然后选择正确的条目即可。)ChangeLog 应该准确记录所有 v2 更改以及 v3 中的更改:我导入了v2-l
文件中源()中的所有数据。\changes
.dtx
如果有任何遗漏,请报告,我会设法解决。特别是,虽然检查 Git 日志以查看同一主要版本的次要版本之间的更改相对容易,但代码在 v1 和 v2 之间以及 v2 和 v3 之间被重写,因此它们本质上具有独立的历史记录。