.bib ファイルを別のファイル内に含めることは可能ですか?

.bib ファイルを別のファイル内に含めることは可能ですか?

文書を書き始めたとき、私はメインの文書ディレクトリに1つの.bibファイルを使うことにしました。各文書はサブディレクトリに作成され、

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

.bibファイルが大幅に増加しているため、これが最も賢明な選択ではなかったかもしれないことに今は気づいています。

すべてのファイルを修正する必要がないようにするために、 「メイン」ファイル内に他のファイル (記事用、書籍用、URL 用など) を.tex含めることができるかどうかを知りたいです。.bib

あるいは、このような退屈な(しかしおそらく当然の)作業を回避するための他の提案があれば教えてください。

答え1

あなたの質問に対する短い答えは「いいえ」です。@daleif がコメントで述べたように、.bibファイル形式には入力のような関数やフィールドはありません。ファイル形式は、およびなどの一連のフィールド識別子と、およびフィールドだけ.bibです。@BOOK@ARTICLE@PREAMBLE@STRINGドキュメンテーション実際のbibtexpostfix 言語では、入力関数についても何も言及されていません (私が調べた限りでは)。 はファイルbibtexから bib データを取得するためだけにハードコードされているようなので.aux、ドキュメントが複数の.bibファイルにわたる参照にアクセスする唯一の方法は、 の引数でそれらをコンマ区切りのリストとして指定することです\bibliography

\bibliography{../biblio}この問題に対して私が提案できる唯一の解決策は、を で検索して置換する短いスクリプトを書くことです\bibliography{file1,file2,etc}。これを行う方法は、コンピュータで使用できるツールによって異なります。たとえば、Unix のようなシステムでは、findと を組み合わせることができますsed。よりプラットフォームに依存しないアプローチとしては、Perl などのスクリプト言語を使用できます。

ただし、大きなファイルをテキスト エディターで編集するのが面倒な場合は.bib、JabRef などの参照マネージャーを使用することをお勧めします。

関連情報