我正在编写一个生成 .tex 文件并调用 pdflatex 的应用程序(目前在 windows/texlive 上,但它应该与其他发行版和操作系统兼容)。
我想让用户能够包含生成的 .tex 文件之间共享的资源的自定义目录。在 Linux 下,我只需设置TEXINPUTS
环境变量即可完成此操作。
现在在 Windows 下,变量最初是空的,所以我不能只是在那里“附加”东西。但是,如果我设置TEXINPUTS
任何路径,pdflatex 似乎只会检查这些路径,而忘记它之前检查过的内容。不再识别默认路径。这导致 pdflatex 甚至找不到输入文件
如果手动指定输入文件,则不再找到 tex 文件中的任何资源,从文档类文件开始:
如何在 Windows 上正确添加输入路径?
答案1
如果TEXINPUTS
没有设置,TeX 的行为方式相同
set TEXINPUTS=.;
特别注意后面的;
。这意味着“然后跟进标准位置”。因此,如果我们想添加一个位置(比如说C:\SharedTeX
),我们需要_retain the trailing
;`
set TEXINPUTS=.;C:\SharedTeX;
(我还保留.
了IE当前目录,因为这通常是合理的。)
唯一不需要尾随的情况;
是,如果你想要从标准树中“隔离”运行:这只对低级测试有用。(LaTeX 团队正是这样做的,以便在内核开发期间进行测试。)