biblatex について
biblatexは、biberバックエンドと組み合わせて使うLaTeXの文献・引用システムです。このガイドでは、学術文書や技術文書の著者向けに、スタイル設定、文献管理、参考文献一覧の作成方法を説明します。
主な機能
- 01引用と参考文献のスタイル設定
- 02複数のエントリータイプとフィールドに対応
- 03引用コマンドとオプションを紹介
- 04条件別または複数の文献一覧を作成
- 05biberのコンパイル手順と一般的なエラーを解説
活用シーン
- 01LaTeX論文の参考文献管理
- 02指定したスタイルで引用を整形
- 03タイプやキーワードごとに文献一覧を分割
- 04文献一覧のコンパイルエラーを調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ igbuend/ grimbard --skill biblatexインストール後、Claude Code で/biblatexを入力して読み込まれたか確認します。
詳細
biblatex + biber — 最新の参考文献管理
CTAN: https://ctan.org/pkg/biblatex
マニュアル: texdoc biblatex
セットアップ
\usepackage[
backend=biber, % modern backend (not bibtex)
style=authoryear, % citation + bibliography style
sorting=nyt, % name-year-title
maxbibnames=99, % show all authors in bibliography
maxcitenames=2, % truncate in citations
]{biblatex}
\addbibresource{references.bib} % .bib file (include extension!)
% At end of document:
\printbibliography
コンパイルのワークフロー
pdflatex main.tex # 1. Generate .bcf file
biber main # 2. Process bibliography (no extension!)
pdflatex main.tex # 3. Resolve references
pdflatex main.tex # 4. Final pass (page numbers, back-refs)
または latexmk を使う場合:latexmk -pdf main.tex(すべて自動的に処理されます)。
.bib ファイルの形式
@article{einstein1905,
author = {Einstein, Albert},
title = {On the Electrodynamics of Moving Bodies},
journal = {Annalen der Physik},
year = {1905},
volume = {322},
number = {10},
pages = {891--921},
doi = {10.1002/andp.19053221004},
}
@book{knuth1984,
author = {Knuth, Donald E.},
title = {The {\TeX}book},
publisher = {Addison-Wesley},
year = {1984},
isbn = {0-201-13447-0},
}
@inproceedings{smith2023,
author = {Smith, John and Doe, Jane},
title = {Deep Learning for Everything},
booktitle = {Proceedings of ICML},
year = {2023},
pages = {100--110},
doi = {10.1234/icml.2023.100},
}
@online{wiki2024,
author = {{Wikipedia contributors}},
title = {LaTeX},
url = {https://en.wikipedia.org/wiki/LaTeX},
urldate = {2024-01-15},
year = {2024},
}
@thesis{jones2020,
author = {Jones, Alice},
title = {Quantum Computing Applications},
type = {phdthesis},
institution = {MIT},
year = {2020},
}
@manual{pgfmanual,
author = {Tantau, Till},
title = {The TikZ and PGF Packages},
year = {2023},
url = {https://ctan.org/pkg/pgf},
}
一般的なエントリータイプ
| タイプ | 用途 |
|---|---|
@article | 学術誌の記事 |
@book | 書籍 |
@inproceedings | 学会論文 |
@incollection | 編著書の章 |
@thesis | 博士論文/修士論文(type フィールドを使用) |
@online | ウェブサイト、ウェブリソース |
@manual | 技術文書 |
@techreport | 技術レポート |
@misc | その他 |
@unpublished | 未出版の原稿 |
@patent | 特許 |
@software | ソフトウェアパッケージ |
一般的なフィールド
| フィールド | 説明 |
|---|---|
author | 著者 — {Last, First and Last, First} |
title | タイトル — 大文字表記を保つには {NASA} を使用 |
year/date | 出版年または完全な日付(2023-06-15) |
journal | 学術誌名 |
booktitle | 学会/論文集のタイトル |
publisher | 出版社 |
volume/number | 巻号 |
pages | ページ範囲(10--20) |
doi | デジタルオブジェクト識別子 |
url | ウェブ URL |
urldate | オンライン資料へのアクセス日 |
isbn/issn | 識別子 |
editor | 編集者 |
edition | 版({2nd}) |
note | 追加の注記 |
abstract | 要旨(デフォルトでは印刷されません) |
keywords | 絞り込み用のキーワード |
langid | 言語(english、german) — ハイフネーション用 |
著者名の形式
author = {Last, First}, % single
author = {Last, First and Last, First}, % multiple
author = {Last, Jr., First}, % suffix
author = {{World Health Organization}}, % corporate (double braces)
author = {da Silva, João}, % name particles
引用コマンド
| コマンド | 出力(著者年方式) | 出力(数値方式) |
|---|---|---|
\cite{key} | Einstein 1905 | [1] |
\parencite{key} | (Einstein 1905) | [1] |
\textcite{key} | Einstein (1905) | Einstein [1] |
\autocite{key} | スタイルに依存 | スタイルに依存 |
\fullcite{key} | 参考文献項目全体を本文中に表示 | — |
\footcite{key} | 脚注での引用 | — |
\citeauthor{key} | Einstein | Einstein |
\citeyear{key} | 1905 | 1905 |
\citetitle{key} | On the Electro... | — |
オプションを指定する場合
\parencite[see][p.~42]{einstein1905}
% Output: (see Einstein 1905, p. 42)
\parencite[p.~42]{einstein1905}
% Output: (Einstein 1905, p. 42)
% Multiple citations
\parencite{einstein1905, knuth1984}
% Output: (Einstein 1905; Knuth 1984)
参考文献スタイル
| スタイル | 引用 | 参考文献 | 用途 |
|---|---|---|---|
authoryear | Einstein (1905) | 著者名順 | 人文科学、社会科学 |
numeric | [1] | 引用順に番号付け | 自然科学、工学 |
alphabetic | [Ein05] | アルファベット順のラベル | 数学、コンピューターサイエンス |
authortitle | Einstein, "On the..." | 著者名とタイトル | 人文科学 |
verbose | 脚注に完全な引用 | 詳細 | 法律、歴史 |
ieee | [1] | IEEE 形式 | 工学(biblatex-ieee が必要) |
apa | (Einstein, 1905) | APA 第7版 | 心理学(biblatex-apa が必要) |
chicago-authordate | (Einstein 1905) | Chicago 形式 | 人文科学(biblatex-chicago が必要) |
nature | ¹ | Nature 形式 | 自然科学(biblatex-nature) |
% For IEEE:
\usepackage[style=ieee, backend=biber]{biblatex}
% For APA:
\usepackage[style=apa, backend=biber]{biblatex}
% Also needs: \DeclareLanguageMapping{english}{english-apa}
並べ替えオプション
| 値 | 並べ替え順 |
|---|---|
nty | 名前、タイトル、年(authoryear のデフォルト) |
nyt | 名前、年、タイトル |
none | 引用順(numeric 用) |
ynt | 年、名前、タイトル |
anyt | アルファベット順のラベル、名前、年、タイトル |
参考文献の出力
% Simple
\printbibliography
% With title
\printbibliography[title={References}]
% As section (not chapter)
\printbibliography[heading=subbibliography]
% Filtered
\printbibliography[type=article, title={Journal Articles}]
\printbibliography[keyword=primary, title={Primary Sources}]
\printbibliography[notkeyword=primary, title={Secondary Sources}]
複数の参考文献リスト
% By type
\printbibliography[type=book, heading=subbibliography, title={Books}]
\printbibliography[type=article, heading=subbibliography, title={Articles}]
% By keyword
% In .bib: keywords = {primary}
\printbibliography[keyword=primary, title={Primary Sources}]
\printbibliography[notkeyword=primary, title={Other Sources}]
% Per chapter (refsection)
\begin{refsection}
\chapter{First Chapter}
Text \cite{something}.
\printbibliography[heading=subbibliography]
\end{refsection}
便利なオプション
\usepackage[
backend=biber,
style=authoryear,
sorting=nyt,
maxbibnames=99, % all authors in bibliography
maxcitenames=2, % "Smith et al." after 2 authors
mincitenames=1, % show at least 1 before "et al."
uniquelist=false, % don't disambiguate with more names
uniquename=false, % don't disambiguate with initials
dashed=false, % repeat author name (vs dash for same author)
doi=true, % print DOIs
isbn=false, % hide ISBNs
url=false, % hide URLs (except @online)
eprint=false, % hide eprint info
date=year, % show only year
]{biblatex}
比較:biblatex と natbib/BibTeX
| 機能 | biblatex + biber | natbib + BibTeX |
|---|---|---|
| Unicode | ✅ 完全対応 | ❌ 制限あり |
| スタイル | 柔軟(LaTeX マクロ) | .bst ファイル(編集が困難) |
| エントリータイプ | より多い(@online、@software) | より少ない |
| フィルタリング | keyword、type フィルター | 手動 |
| 複数の参考文献リスト | 標準搭載 | multibib などが必要 |
| 詳細な引用 | \textcite、\parencite など | \citet、\citep |
| 日付の処理 | 完全な日付、範囲 | 年のみ |
| 名前の処理 | 高度 | 基本的 |
| コンパイル | pdflatex → biber → pdflatex² | pdflatex → bibtex → pdflatex² |
| 学術誌の要件 | BibTeX が必要な場合あり | ✅ 従来型 |
推奨: 新しい文書では biblatex を使用してください。学術誌のテンプレートで必要な場合に限り、natbib を使用してください。
よくある落とし穴
| 問題 | 原因 | 解決方法 |
|---|---|---|
| "I found no \citation commands" | biber が実行されていない | 最初の pdflatex の後に biber を実行してください |
| "I found no \bibstyle command" | bibtex と biblatex の併用 | bibtex ではなく biber を使用してください |
| 引用が [key] と表示される | biber が実行されていない/エラー | biber のログを確認し、再実行してください |
.bib ファイルが見つからない | \addbibresource に拡張子がない | .bib 拡張子を含めてください |
| .bib 内の Unicode でエラーになる | BibTeX バックエンドを使用している | backend=biber を使用してください |
| 著者名の "et al." が正しくない | maxcitenames の値が小さすぎる | maxcitenames を調整してください |
| スタイルが見つからない | パッケージが不足している | biblatex-ieee、biblatex-apa などをインストールしてください |
| Refsection が空になる | 引用が refsection の外にある | 各 refsection は独立しています |
| 名前の並べ替えが正しくない | 粒子(van、de) | \DeclareNameAlias を使用するか、useprefix を確認してください |
| "Runaway argument" | .bib 内のカンマが不足している | .bib の構文を確認してください(フィールド間にカンマが必要です) |
コメント
Markdown 対応