我打算以独立且可编译的方式共享我的 LaTeX 文档及其所有附件文件。但我不知道如何从文件中引用姊妹文件夹.sty
。
.tex
我在母目录中有以下文件:
\documentclass{article}
\usepackage{./testfolder/testpackage}
\begin{document}
Test
\end{document}
在子文件夹中.sty
有一个名为:testpackage.sty
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{./testfolder/testpackage}
\usepackage{libertine}
\endinput
到目前为止一切顺利。但现在我需要从 加载另一个包testpackage.sty
,而我需要加载的包位于 文件夹所在的姊妹文件夹中testpackage.sty
。所以我尝试这样做:
.tex
母目录中的文件:
\documentclass{article}
\usepackage{./testfolder/testpackage}
\begin{document}
Test
\lipsum[1]
\end{document}
.sty
子目录 1 中的文件:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{./testfolder/testpackage}
\usepackage{libertine}
\usepackage{../testfolder2/testpackage2}
\endinput
.sty
子目录 2(目录 1 的姊妹目录)中的文件:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{../testfolder2/testpackage2}
\usepackage{lipsum}
\endinput
尝试编译我的.tex
文件导致此错误:
LaTeX 错误:未找到文件“../testfolder2/testpackage2.sty”。
我做错了什么?根据LaTeX/模块化文档,应该可以用来../
指定姊妹目录。
(我知道有关于如何说明目录路径的约定,但我通过谷歌搜索找不到任何内容,所以我放弃了这个问题)。
答案1
.tex
母目录中的文件:
\documentclass{article}
\usepackage{./testfolder/testpackage}
\begin{document}
Test
\lipsum[1]
\end{document}
.sty
子目录 1 中的文件:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{./testfolder/testpackage}
\usepackage{libertine}
\usepackage{testfolder2/testpackage2}
\endinput
.sty
子目录 2 中的文件:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{testfolder2/testpackage2}
\usepackage{lipsum}
\endinput