usepackage、绝对路径和 github 开发

usepackage、绝对路径和 github 开发

我已经为 CTAN 上与 TeXLive 一起分发的软件包创建了 github repo。我想对它进行一些开发,并在提交之前在本地使用它。这似乎是软件包开发的一个相当标准的工作流程。

以前我使用的是 Windows,可以使用软件包的本地开发版本的绝对路径。后来我转到 Linux(Ubuntu),就像这个问题不能使用绝对路径。那里的答案适用于安装新的本地包,但不能与 TeXLive 中已分发的包冲突。

我尝试将 TeXLive 版本的 *.sty 文件重命名为 *.sty.tmp,并使用指向我的开发版本的符号链接,但由于某种原因,符号链接被删除,并且 CTAN 版本被恢复(我假设 tlmgr 很“智能”,正在监视/更新/更正其文件夹)。

那么,如何才能将 Latex 指向 Linux 中 CTAN 包的开发版本?

答案1

Linux 上的情况与 Windows 上的情况相同,您只需确保您的测试版本在搜索路径中位于已安装版本的前面即可。因此,如果您有color.sty想要优先使用的测试版本,/usr/local/texlive/2021/texmf-dist/tex/latex/graphics/color.sty那么您可以执行以下任一操作

  • 放置color.sty在当前工作目录中(.位于路径的前面)
  • 放置color.sty~/texmf/tex/latex/或其任何子目录中(TEXMFHOME 位于默认路径中的安装目录之前
  • 放置color.sty在任何位置(例如您的 git 目录)并设置TEXINPUTS=/path/to/directory:(尾随冒号表示在指定目录后搜索标准位置)。

答案2

最后,我无法让可接受的答案发挥作用。我最终创建了一个本地~/texmf树,并在其中克隆了我的 git 工作以进行开发。它取代了该包的 CTAN 版本。

该解决方案的其他变体可见此处:在 Ubuntu 中创建本地 texmf 树

相关内容