如何找出我的 (La)TeX 安装在寻找包时会检查哪些路径(在 Linux 系统上)?

如何找出我的 (La)TeX 安装在寻找包时会检查哪些路径(在 Linux 系统上)?

我知道我可以使用以下方法检查某个特定包的调用位置

kpsewhich <packagename>.sty

如果我想要一个自定义包,我通常必须将它放在与我的文档相同的文件夹中。

我假设与 $PATH 类似,LaTeX 会检查路径列表以尝试找到我的包。

这些路径是什么?检查的顺序是什么?如果这是系统特定的,我如何才能找到我的系统的配置?

相关问题:

>    /usr/local/texlive/2009/texmf
>    /usr/local/texlive/2009/texmf-dist
>    /usr/local/texlive/texmf-local
>
> as well as other directories.

(这两个列表都不完整)。

答案1

您可以致电

kpsewhich -var-brace-value=TEXINPUTS

您将获得(重新格式化,在 后添加换行符:):

.:
<userhome>/texlive/2019/texmf-config/tex/kpsewhich//:
<userhome>/texlive/2019/texmf-var/tex/kpsewhich//:
<userhome>/texmf/tex/kpsewhich//:
!!/usr/local/texlive/texmf-local/tex/kpsewhich//:
!!/usr/local/texlive/2019/texmf-config/tex/kpsewhich//:
!!/usr/local/texlive/2019/texmf-var/tex/kpsewhich//:
!!/usr/local/texlive/2019/texmf-dist/tex/kpsewhich//:
<userhome>/texlive/2019/texmf-config/tex/generic//:
<userhome>/texlive/2019/texmf-var/tex/generic//:
<userhome>/texmf/tex/generic//:
!!/usr/local/texlive/texmf-local/tex/generic//:
!!/usr/local/texlive/2019/texmf-config/tex/generic//:
!!/usr/local/texlive/2019/texmf-var/tex/generic//:
!!/usr/local/texlive/2019/texmf-dist/tex/generic//:
<userhome>/texlive/2019/texmf-config/tex/latex//:
<userhome>/texlive/2019/texmf-var/tex/latex//:
<userhome>/texmf/tex/latex//:
!!/usr/local/texlive/texmf-local/tex/latex//:
!!/usr/local/texlive/2019/texmf-config/tex/latex//:
!!/usr/local/texlive/2019/texmf-var/tex/latex//:
!!/usr/local/texlive/2019/texmf-dist/tex/latex//:
<userhome>/texlive/2019/texmf-config/tex///:
<userhome>/texlive/2019/texmf-var/tex///:
<userhome>/texmf/tex///:
!!/usr/local/texlive/texmf-local/tex///:
!!/usr/local/texlive/2019/texmf-config/tex///:
!!/usr/local/texlive/2019/texmf-var/tex///:
!!/usr/local/texlive/2019/texmf-dist/tex///

我只是屏蔽了我的主目录的路径;对于你的情况,你可以获取<userhome>/.texlive(这取决于发行版)。尾随的/////表示以递归方式搜索目录。前导!!表示(递归)搜索是通过查看ls-R由生成的文件来完成的maketexlsr。否则,(递归)搜索是在运行时执行的。

按指定顺序搜索各种路径,匹配则停止搜索。

第一个.代表调用 TeX 引擎时的工作目录。

相关内容