我有一个非常简单的文件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/ 并将您的个人文件放在那里。无需重新发明轮子。