gpt4 book ai didi

latex - 如何从子目录加载 Latex .sty 文件?

转载 作者:行者123 更新时间:2023-12-03 07:05:56 35 4
gpt4 key购买 nike

我使用了一些不属于 texlive 的 .sty 文件,并且希望将它们放在我的 main.tex 文件夹的子目录中。我使用以下行来加载包:

\usepackage{sty/prettythesis}

这可行,但是使用 xelatex 编译 main.tex 并使用 rubber给我一个警告:

sty/prettythesis.sty: You have requested package `sty/prettythesis',
but the package provides `prettythesis'. (page 1)

有没有一种方法可以防止此警告或处理这种情况,而不必在所有 .sty 文件的\ProvidesPackage 命令中包含“sty\”或设置 TEXINPUTS 环境变量(这似乎不可能从 main.c 中实现) tex 本身)?

最佳答案

我相信这里的这条线索:

谈论的是完全相同的事情:看来,唯一的选择是使用 TEXINPUTS 环境变量;或使用 import package 。 (注意,...Including tex files pg 3. 上的 import 包有一个变体)

有关 TEXINPUTS 的更多信息:

希望这有帮助;
干杯!

 

编辑:我希望人们可以直接在 tex 文件中设置 TEXINPUTS 路径(通过使用 \write18 ——注意,某些版本的 LaTeX 使用 --enable -write18,我的使用 -shell-escape 来启用 \write18;另请参阅 this ) - 但似乎这是不可能的:

"... This isn't possible. ... The environment variable of the child process is set, but this hasn't an effect to its parent process (TeX)." (Re: Setting the environmental variable TEXINPUTS within latex - comp.text.tex).

...所以,现在我只需在 Linux bash 中调用 pdflatex,如下所示:

TEXINPUTS=.//:$TEXINPUTS pdflatex ./myfile.tex

然后它将直接解析 myfile.tex 文件中的 \usepackage{mypackage} - 即使 mypackage.sty 位于子目录,例如 ./subdir/mypackage.sty

关于latex - 如何从子目录加载 Latex .sty 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3936565/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com