Skip to content

bibliography

matsub.rk edited this page Feb 8, 2016 · 4 revisions

参考文献

TeXで参考文献を扱う方法は二種類あります。 thebibliography環境を使って、参考文献を指定していく方法、 もう一つはBibTeXデータベースを使用する方法です。

まずthebibliography環境を使った参考文献の記述を紹介します。

\documentclass[a4j]{jsarticle}
\usepackage{url}
\bibliographystyle{plain}

\begin{document}
PMOBではstudy-texリポジトリ\cite{PMOBTeX}でTeXの知識をまとめています。

\begin{thebibliography}{99}
  \bibitem{PMOBTeX} "PMOB / study-tex": \\
    https://github.com/PMOB/study-tex (2016/1/23)
\end{thebibliography}
\end{document}

bibenv

このように、thebibliography環境内でbibitemとして参考文献を定義し、 \citeコマンドで参照します。 thebibliography環境は、定義する参考文献の数を引数としてとります。 この数字以上に定義された参考文献は無視されます。 つまり参考文献を全て表示するならとりあえずデカい数字を書いておけばいいので 99とか書く(あまりよくない)習慣があります。

次に、BibTeXデータベースを使用した方法を紹介します。

practice.tex

\documentclass[a4j]{jsarticle}
\usepackage{url}
\bibliographystyle{plain}
\begin{document}
PMOBではstudy-texリポジトリ\cite{PMOBTeX}でTeXの知識をまとめています。

\bibliography{biblio}
\end{document}

biblio.bib

@misc{PMOBTeX,
    author = {{PMOB}},
    title = {{PMOB} / study-tex},
    month = {Jan},
    year = {2016},
    howpublished = {\url{https://github.com/PMOB/study-tex}}
}

.bibファイルに参考文献を定義し、 .tex内でスタイルと読み出すBibTeXファイルを指定します。 定義する際は項目の種別をEntryType@{...}のように指定し、その内容は他のデータ記述言語よろしく要素=内容の形になります。 項目の種別は以下のようなものがあります。

type 引用先
article 学術記事など
book 書籍
booklet 小冊子
misc 特に指定はありません

種別によって持てる要素の種類は異なります。 例えばbookにはpublisherとtitleとyearが必須要素としてあり、 articleはtitleとyearのほか、authorとjournalが必須要素としてあります。

文頭の文字以外は自動的に小文字に変更されますが、 {}で囲まれた範囲は大文字小文字が記述した通りとなります。

BibTeXを使う際は.bibファイルをコンパイルする必要がありますが、 これは.auxへの操作となります。 .auxで参照が期待される項目に関してデータベースが作られるというイメージです。 とりあえず.texをビルドしてから以下のコマンドを実行してください。

bibtex practice.aux

これで作成される.blgはBibTeXのビルドログで、.bblファイルがデータベース本体ですが、 この実態は自動生成されたthebibliographyです。

.auxが成形されたのでもう一度.texをビルドしましょう。

bibtex

この二つの大きな違いは、 BibTeXを使った場合は参考文献の項目が統一されて自動的に生成されるのに対して、 thebibliography環境を使った場合はそれぞれの参考文献の記述に融通が効く という点です。 参考文献の書式は統一されていた方が見やすいですから、基本的にBibTeXがいいように思います。 BibTeXを\inputされたファイル内にも適用するには、 .texをコンパイルして、 作成された.auxについて.bibをコンパイルして.bblを作成し、 .auxが更新された時点で.texを再コンパイルして参考文献を組み立て、 もう一度.texをコンパイルして参照をする必要があります。

next >>

Clone this wiki locally