如何更新版本化的 \RequirePackage

如何更新版本化的 \RequirePackage

Texlive 从 Debian/testing 升级后,以下功能不再起作用:

\RequirePackage[ngerman=ngerman-x-2014-05-21]{hyphsubst}

如何更新这个命令?

  • 如何找出当前 ngerman 包的日期?

  • 或者如何提供不再是当前 Texlive 发行版一部分的旧软件包?

答案1

TeX language.datLive 2017 包含

% from dehyph-exptl:
german-x-2017-03-31 dehypht-x-2017-03-31.tex
=german-x-latest
ngerman-x-2017-03-31 dehyphn-x-2017-03-31.tex
=ngerman-x-latest

该名称ngerman-x-2014-05-21已被 TL 2016 取代。但的格式language.dat告诉你,你总是可以通过以下方式引用这些模式:

ngerman-x-latest

如果模式文件已更新,此方法也会有效。因此

\RequirePackage[ngerman=ngerman-x-latest]{hyphsubst}

是最好的方法。


如果您想重现旧的中断,恐怕您需要language.dat自己编辑文件并重建格式。

  1. 在旧的 TeX Live 发行版中查找dehypht-x-2014-05-21.tex和的副本。dehypht-x-2014-05-21.pat

  2. 将它们保存在 中$TEXMFLOCAL/tex/generic/dehyph-exptl,创建必要的目录树;$TEXMFLOCAL请参阅 的输出kpsewhich -var-value=TEXMFLOCAL

  3. 跑步sudo texmflsr

  4. 追加以下行

    ngerman-x-2014-05-21 dehypht-x-2014-05-21

    language.dat(你通过做找到它kpsewhich language.dat

  5. 跑步sudo fmtutil-sys --all

然后\RequirePackage[ngerman=ngerman-x-2014-05-21]{hyphsubst}就可以工作了。

相关内容