是否可以將 .bib 檔案包含在另一個檔案中?

是否可以將 .bib 檔案包含在另一個檔案中?

當我開始編寫文件時,我決定.bib在主文檔目錄中使用單一文件。每個文件將在子目錄中建立並以以下內容終止

\bibliography{../biblio} 
\end{document}

我現在意識到這可能不是最明智的選擇,因為我的.bib文件正在大幅增長。

為了避免被迫修復我的所有.tex文件,我想知道是否可以.bib從「主」內部包含其他文件(例如,一個用於文章,一個用於書籍,一個用於網址等)一。

或者,如果您有其他建議可以避免我執行如此繁瑣(但可能是應得的)任務。

答案1

對你的問題的簡短回答是否定的。正如 @daleif 在評論中提到的,.bib文件格式沒有類似輸入的函數或欄位。文件.bib格式只是一系列欄位標識符,例如@BOOK@ARTICLE,以及@PREAMBLE@STRING欄位。這文件對於實際的bibtex後綴語言也沒有提及輸入函數(據我所知)。似乎bibtex只是為了從文件中獲取書目數據而進行了硬編碼.aux,因此文檔訪問多個.bib文件的引用的唯一方法是將它們指定為 的參數中的逗號分隔列表\bibliography

對於您的問題,我可以建議的唯一解決方案是編寫一個簡短的腳本,該腳本將執行搜尋並替換\bibliography{../biblio}\bibliography{file1,file2,etc}。如何執行此操作取決於計算機上可用的工具。例如,在類別 Unix 系統上,您可能可以findsed.對於更獨立於平台的方法,可以使用腳本語言,例如 Perl。

但是,如果您只是發現在文字編輯器中編輯大.bib檔案很麻煩,您可能會更喜歡使用參考管理器,例如 JabRef。

相關內容