如何在 LaTeX 文件本身中指定附加包的路径?
对于图形,您可以使用\graphicspath{{a}{b}}
,然后\includegraphics{file}
找到b/file.pdf
。编辑:应该是\graphicspath{{a/}{b/}}, with slashes at the end.
对于\input
,您使用\def\input@path{{a}{b}}
,然后\input{file}
找到b/file.tex
。编辑:\def\input@path{{a/} {b/}} 是答案,末尾带有斜杠。
我可以使用类似的构造来\usepackage
找到\usepackage{mystuff}
吗b/mystuff.sty
?
我知道我可能会弄乱系统配置或环境变量,但我更喜欢在文件本身中指定这一点,以便我的文件可以在另一台计算机上编译。
我知道我可以简单地使用\usepackage{b/mystuff}
,但它会生成一个警告You have requested b/mystaff but the package provides mystuff
,并且可移植性较差——例如,它需要知道在哪个特定文件夹中mystuff.sty
。
答案1
\usepackage
是一个包装器,\input
因此\input@path
同样适用于此,但最好不要设置\input@path
,只需适当设置 TEXINPUTS