我有一个项目,其中包含位于不同文件夹中的多个 tex 文件,所有这些文件都使用bib
父文件夹中的同一个文件:
ref.bib
Folder1 -> file1.tex
Folder2 -> file2.tex
...
我使用 TexStudio 编译 tex 文件。在 tex 文件中,我可以按如下方式引用 ref.bib:
\bibliography{../ref}
但是,我的同事在 Overleaf 上工作。出于某种原因,这不起作用,他们必须按如下方式引用它:
\bibliography{ref}
可能,TexStudio 在当前 tex 文件的文件夹中寻找 bib 文件,而 Overleaf 在当前项目的根目录中寻找它们。
该bib
文件经常更改,因此将其复制到不同的文件夹不是一个好选择。
有没有办法让它在 TexStudio 和 Overleaf 上同时运行?
注意:我使用的是 Windows 10。
答案1
您可以使用\bibliography{ref}
并将 BIBINPUTS 环境变量本地设置为父目录,但也许更简单的是使用
\bibliography{\ifnum\pdfstrcmp{\jobname}{output}=0 ref\else ../ref\fi}
因为 Overleaf 总是将作业名称设置为输出