bibtex

石川一郎^{∗}

1992 年 11 月 6 日

1 bibtex とは

LaTEX の \cite コマンドで引用された文献の一覧表は、 \bibitem コマンドを用いて作ることができます。が、この方法だと、文書ごとにいちいち必要な情報 (著者、発表年、題名、掲載誌名など) を書かなければなりません。 bibtex を用いると、このような情報をあらかじめ文献データベースに蓄えておき、複数の文書で繰り返し利用することが可能になります。また、引用文献の一覧表を一つのコマンドで自動的に作ることができます。一覧表の形式は、 bst ファイルというのでカスタマイズすることができます。例えば sample.bib という文献データベースを使って

See \cite{nowlin:85} and \cite{dsolev:81}.
\bibliography{sample}

というコマンドで、

See (Nowlin et al., 1985) and (de Szoeke and Levine, 1981).

References

de Szoeke, R. A. and Levine, M. D., 1981: The advective flux of heat by mean geostrophic motions in the Southern Ocean., Deep-Sea Res., 28A, 685–721.

Nowlin, W. D., Jr., Worley, S. J. and Whitworth, T., 1985: Methods for making point estimates of eddy heat flux as applied to the Antarctic Circumpolar Current., J. Geophys. Res., 90, 3305–3324.

というふうに、文献一覧表を作ることができます。

∗東京大学気候システム研究センター bibtexm.tex  92/11/06

\underline{2 bibtex のインストール 2}

2 bibtex のインストール

日本語対応の bibtex である jbibtex のソースは、 tanse2:/public/tex/ascii/jbibtex0.30.tar.Z にあります。インストールは jtex のインストール時に作られるコマンドを使っているらしく、 jtex と一緒にインストールしないと面倒のようです。以下に気候センターの塚本氏のインストール記録を引用しておきます。

● jbibtex のインストール (for h2oco2)

1. readme.1st.unix ファイルに書いてある変更必要箇所等については， jtex ディレクトリの site.h, Makefile 等での path や変数の設定は， jlatex, jtex を作った時のままで良いのでこれらのファイルはいじっていない．また， bibtex.c の漢字コード系を決める #define もデフォルトで EUC になっているので変更の必要なし．さらに， bibtex.web ファイルも存在するのでこれも問題なし．唯一変更したのは BibTeX/Makefile 中の BSTDIR が jtex/Makefile の TEXINPUT と同じにしたこと．

2. make する．

3. readme.1st.unix に従って

      # make test

とやる．メッセージの最後の diff の結果が問題なければ，途中はどうでも良い．

4. 出来上がった実行ファイルと bst ディレクトリにある bst ファイルを所定の場所にコピー．

      # make install

5. doc ディレクトリ中のオンラインマニュアル jbibtex.1 は手でコピーしなければならない．また， doc-ASCII ディレクトリ中の tex source は， a4j style にも関わらず，先頭でテキストの記述範囲を強制的に B4 か何かに修正しているので

      \voffset=...
      \hofset=...
      \textwidth=...
      \testhight=...

\underline{3 bibtex の使い方 3}

をコメントアウトしないと A4 に収まらない．

さらにこれらを readme.1st.unix の記述にしたがってコンパイルするには bib ディレクトリ中のサンプル bib ファイルを， jtex/iste.h の BIBINPUTS で設定したディレクトリにコピーしておかなければならない．

3 bibtex の使い方

この節では、 bibtex の使い方を例をあげて簡単に説明します。詳しくは LaTEX ブックなどを参照して下さい。

3.1 文献データベース

あらかじめ文献データベースを作っておかなくてはなりません。一つの文献に対して例えば以下のような情報を登録しておく必要があります。

@article{nowlin:85,
         author  = "Nowlin, Jr., W. D.  and S. J. Worley and T. Whitworth",
         year    = "1985",
         title   = "Methods for making point estimates of eddy heat flux as
                    applied to the Antarctic Circumpolar Current.",
         journal = "J. Geophys. Res.",
         volume  = "90",
         pages   = "3305--3324"}

@article というのは、その文献が雑誌などの記事であることを示します。一冊の本の場合

は @book とします。 nowlin:85 はラベルです。本文中で引用したい時は、 \cite{nowlin:85}

とする訳です。２行目以下は、著者名、発表年、題名、掲載誌名、巻数、ページを表します。これらの文献データは拡張子が .bib であるファイルに格納します。

3.2 bibtex のスタイルファイル

文献一覧表をどのような形式で出すかは、拡張子が .bst であるファイルで設定します。標準装備されているのは、 plain.bst などで、これは引用が番号でなされ、文献一覧表も引用順に番号付で作られます (LaTEX ブックで使われている奴です。 ) 冒頭の例では、電力中央研究所の松井正一氏が、気象集誌用につくって下さった、 jmsj.bst をちょっとだけ改変した utgeoph.bst を使っています。

3.3 bibtex を用いた文書の書き方

bibtex のスタイルファイルの指定は \begin{document} よりあとで\bibliographystyle{utgeoph}

などとします。この場合のスタイルファイルは utgeoph.bst です。

\underline{4 bibtex のカスタマイズ 4}

文献の引用は \cite{label} というコマンドを用います。ラベルはデータベースに登録されているものでなければなりません。文献一覧表の作成は、 \bibliography{sample} などとします。この場合文献データベース sample.bib を用いて、一覧表を作成します。

3.4 bibtex を用いた文書のコンパイル

sample.tex という latex の文書を作成したとしましょう。コンパイルは、

   % jlatex sample
   % jbibtex sample
   % jlatex sample
   % jlatex sample

とします。ずいぶん冗長のようですが、仕方ないみたいです。

4 bibtex のカスタマイズ

bibtex の作る文献一覧表の形式を変えたい時には、 *.bst ファイルを作らなくてはいけません。ここではその書き方は説明しませんが、前にあげた、 jmsj.bst の他にも、パブリックドメインでいろいろな *.bst ファイルが出回っているようです。また、引用の形式を変えたい時には、 *.sty ファイルで \cite コマンドを定義し直さなくてはいけません。冒頭の例では、 jmsj.bst に附属していた jmsj.sty を用いています。