在子文件夹中安装包

在子文件夹中安装包

目前,我有一些修改过的包和一些我自己的包放在与我的 tex 文件相同的文件夹中。我想将它们全部移动到名为 packages 的子文件夹中,以便更好地概览我的文件。有什么方法可以实现吗?

答案1

对于我所有较大的 LaTeX 项目,我都维护一个项目本地texmf子文件夹,目的正是:自己的和修改过的包、尚未成为主要 TeX 发行版一部分的包的新版本等等。我通过TEXINPUTS在项目中设置Makefile或在 bash 中手动设置来包含此文件夹:export TEXINPUTS=./texmf//:${TEXINPUTS}

(注意:双斜杠//使 LaTeX 也搜索子文件夹。如果项目本地texmf文件夹还包含与参考书目相关的包,例如 新版本biblatex,则也必须进行BSTINPUTS相应设置。)

人们经常听说,最好将附加/自己的软件包或现有软件包的更新放入计算机范围或用户范围的texmf树中。如果您仅在一台计算机上独自完成一个项目,那么这可能很有效,但在协作环境中,它肯定不会那么有效。

通过将所有“非标准”包保存在与项目相关的texmf子文件夹中,我可以将所有内容放在一个版本控制系统中(例如 git 或 subversion)。协作的同事(即使是那些仍然坚持使用 TexLive 2010 的同事)可以签出并构建项目,而无需手动安装或更新十几个 LaTeX 包。

答案2

跑步前pdflatex先做export TEXMFHOME=packages/

答案3

对于 MikTeX-Portable,不存在 Daniel 和 Herbert 描述的简单解决方案,但通过 MikTEX->Options->Add Root 添加软件包路径似乎没问题。只需在编译不使用修改的软件包而是使用原始软件包的其他项目之前小心删除附加路径即可。

相关内容