我已经编写了一个自定义的 beamer 模板(它由多个文件组成)。我将其推送到 github,现在我想将其用作另一个 git 项目中的 git 子模块。
如果 .tex 文件和所有 .sty 文件都位于同一目录中,则 beamer 模板可以正常工作,但如果我在子模块中使用它,则不行,因为编译器 (pdflatex) 找不到 sty 文件。这是目录树:
具体来说,该beamercolorthemepadua.sty
文件包含具有以下乳胶代码的其他文件:
\usepackage{mycolor}
\useinnertheme{padua}
\useoutertheme{padua}
\usecolortheme{padua}
该main.tex
文件包含带有以下乳胶指令的 beamer 模板:
\mode<presentation>
{
\usepackage{YAUBT/beamerthemepadua}
}
现在,如果我main.tex
从项目的根目录编译文件,其中包括子目录中的 beamertemplate,则编译器(pdflatex
和latexmk
)不会成功,因为:
这是有道理的,因为这些文件不在编译器工作的同一目录中。
我怎样才能告诉 LaTeX 它应该在子目录中搜索?
我也尝试修改TEXINPUTS
变量,但没有成功。任何提示都将不胜感激。
答案1
如果你使用
TEXINPUTS=.:$PWD/YAUBT//:$TEXINPUTS
代替
TEXINPUTS=.:$PWD/YAUBT:$TEXINPUTS
它不仅会搜索YAUBT
目录,还会搜索其子目录,例如img
,从而能够找到您的图像。