macOS pdflatex:STDIN 中流式传输的 TEXINPUTS 默认值

macOS pdflatex:STDIN 中流式传输的 TEXINPUTS 默认值

我有一个非常简单的文件hello.tex

我想使用流式传输而不是将文件作为参数,以下命令实际上工作

cat hello.tex | pdflatex

cat hello.tex | TEXINPUTS= pdflatex

TEXINPUTS当未定义时pdflatex似乎使用默认值。


我的问题

我想加载一些自定义的 LaTeX 环境,当我设置时TEXINPUTS

cat hello.tex | TEXINPUTS="./" pdflatex

我收到一个错误,因为它无法加载默认的 LaTeX 文件:

LaTeX Error: File 'article.cls' not found.


有没有办法在TEXINPUTS不取消默认路径的情况下添加一些自定义路径,然后继续标准输入流

答案1

如果 TEXINPUTS 的值以 开头或结尾,:则标准搜索路径将在环境变量中指定的目录之前或之后使用,因此要local在默认路径之前添加目录,请使用TEXINPUTS=local:

答案2

好的,经过一番搜索后(事实上这是一个漫长的搜索,但在发布问题 5 分钟后找到了答案):

:FIGURES//似乎是我正在寻找的默认路径。

现在这个命令可以正常工作:

cat hello.tex | TEXINPUTS=":FIGURES//" pdflatex

答案3

假设您使用 MacTeX 安装程序安装了 TeX Live,则默认的个人 texmf 树的根位于 ~/Library。您必须首先在 ~/Library 中创建树 texmf/tex/latex/ 并将您的个人文件放在那里。无需重新发明轮子。

相关内容