这个错误信息是什么意思,是什么原因造成的?

这个错误信息是什么意思,是什么原因造成的?

在我将 mhchem 包(版本 4)添加到 overleaf 上的文档后,立即弹出此错误消息。有谁知道为什么会出现此错误,以及它说明了什么?(此消息弹出在甚至没有 42 个输入行的最小工作示例中。

/usr/local/texlive/2017/texmf-dist/tex/latex/l3kernel/l3regex.sty,第 42 行 软件包 l3regex 警告:该软件包已过时 --- 在输入第 42 行请改用“expl3”。

谢谢

编辑:正如 LianTze Lim 和 Marijn 指出的那样,这不是错误消息,而是警告消息。

答案1

该包在内部mhchem加载了包l3regex。当加载该包时,它会提示最好使用该l3expl包。

一点历史。

很多年前,一些勇敢的人开始编写 LaTeX3 代码,这是“一个长期研究项目,旨在开发下一代 LaTeX 排版系统”。他们工作的核心是包expl3。“Expl”代表“实验”。实验非常成功,以至于他们后来不敢更改包名。围绕核心expl3,开始了许多其他实验,其中包括包l3regex(代表“LaTeX3 正则表达式”)。mhchem使用该包。在某个时间点,LaTeX3 开发人员认为他们有太多的包,将它们全部合并到 中是有意义的expl3,这样用户就不需要加载那么多包(可能以非常特定的顺序)。因此,他们将所有功能移入expl3,同时在 中添加了一个警告,l3regex以便用户知道(但包仍然可以使用)。随后,该mhchem包很快更新为expl3仅使用 而不是l3regex。不幸的是,广泛使用的包发行版(TeXLive 2017?)附带l3regex警告,mhchem旧版本仍在使用l3regex。多年来,它一直在向用户发出警告,但用户mhchem往往不理解。我真的希望这个发行版最终会逐渐被淘汰。

相关内容