LaTeX の参考文献管理:BibTeX と biblatex の使い方
文献データと表示形式を分け、まず大学・学会・出版社の指定に従います。手書きの項目、従来の BibTeX、biblatex を使い分けます。ここでは架空の DOI ではなく、本文のキーと一致する実在の書籍を例にします。
方式を選ぶ
| 方式 | 用途 | 主なコマンド |
|---|---|---|
thebibliography | 少数で再利用しない文献 | \bibitem と \cite |
| BibTeX | .bst 指定のテンプレート | \bibliographystyle と \bibliography |
| biblatex | 特別な制約がなく柔軟な書式が必要 | \addbibresource と \printbibliography |
次の手書き例には .bib が不要です。参照更新に必要な繰り返しはプラットフォームが処理します。
\documentclass[a4paper,11pt]{ltjsarticle}
\begin{document}
For typesetting background, see~\cite{knuth1984}.
\begin{thebibliography}{9}
\bibitem{knuth1984} Donald E. Knuth. \emph{The TeXbook}. Addison-Wesley, 1984.
\end{thebibliography}
\end{document}
refs.bib を作る
ファイルツリーに refs.bib を作り、次の2冊を入れます。キーは knuth1984 と lamport1994 です。
@book{knuth1984,
author = {Donald E. Knuth},
title = {The TeXbook},
publisher = {Addison-Wesley},
year = {1984}
}
@book{lamport1994,
author = {Leslie Lamport},
title = {LaTeX: A Document Preparation System},
edition = {2},
publisher = {Addison-Wesley},
year = {1994}
}
データは再利用できますが、方式を変えるときは、特殊なフィールドやスタイルの互換性も確認してください。
biblatex と Biber を使う
ルートに上のデータベースを置き、主ファイルを次のようにします。
\documentclass[a4paper,11pt]{ltjsarticle}
\usepackage[backend=biber,style=authoryear,maxcitenames=2]{biblatex}
\addbibresource{refs.bib}
\usepackage{hyperref}
\begin{document}
Background on typesetting is given in~\parencite{knuth1984}.
\textcite{lamport1994} describes document preparation with LaTeX.
\printbibliography
\end{document}
backend=biber:文献処理方式。style=authoryear:著者・年の表示。maxcitenames=2:引用に出す著者名の数。\addbibresource{refs.bib}:拡張子を含むファイル名。\parenciteは括弧付き、\textciteは文中の著者名、\printbibliographyは一覧です。
エディター設定を LuaLaTeX にしてコンパイルします。必要な LaTeX と Biber の処理は EasyLaTeX が管理します。[?] が残る場合は、今回のログ・キー・パスを確認します。
.bst 指定のテンプレートで BibTeX を使う
次は plainnat の例です。指定の .bst があれば拡張子を除く名前を使い、テンプレートのパッケージ構成を維持します。
\documentclass[a4paper,11pt]{ltjsarticle}
\usepackage{natbib}
\begin{document}
For typesetting background, see~\citep{knuth1984}.
\bibliographystyle{plainnat}
\bibliography{refs}
\end{document}
\bibliography{refs} は従来方式の指定です。biblatex の設定や出力コマンドと混在させません。
表示形式を変える
次は読み込み行を置き換える選択肢です。両方ではなく1つを選びます。
\usepackage[backend=biber,style=numeric]{biblatex}
\usepackage[backend=biber,style=authoryear]{biblatex}
日本語論文も所属先や投稿先の指定を優先し、必ずしも統一のスタイルがあるとは考えないでください。著者・日付・順序・巻・ページ・DOI を実際の出力で確認します。表示はスタイル、表示する情報はデータのフィールドで決まります。
よくある問題
| 症状 | 確認箇所 | 対処 |
|---|---|---|
[?] や未解決キー | 今回のタスクと文献ログ | 完了を待ち、設定とキーを調べる |
Citation 'xxx' undefined | 本文とデータベース | 綴りと大文字・小文字を一致させる |
| 一覧が空 | 引用と出力コマンド | 項目を引用し、本文終了前に出力する |
| ファイル不足 | ファイルツリーとパス | .bib や .bst の場所を確認 |
追加の使い方
少数なら手書きでも構いません。動いているテンプレートを、方式の変更だけのために移す必要はありません。\printbibliography[type=book] で種類別、refsection で別一覧を作れますが、まず最小構成を動かしてから追加します。
漏れの確認には引用の双方向チェックも使えます。