2013年4月6日土曜日

遅ればせながらBibTeXはじめました.

ずっとBibTeXを使わずに来たのですが,ちょっと同時進行で数本の論文をかかえてしまったので,思い切ってBibTeXを始めました.

まず,文献リストを作るにあたり,手で入力するのが面倒だったので,何かいい方法がないかと考えていたところ,EndNoteを使うという手を思いつきました.
EndNoteはなんとPDFファイルから自動的に情報を読み取って文献データにしてくれます.
(しかも,30日間無償で評価ができます.)
方法は,importメニューからpdfファイルが保存されているディレクトリを指定するだけです.

サブディレクトリも自動的に検索してくれます.

多分,doi情報かなにかを読み取って,ネットから文献データを探してくる,という方法みたいです.
ですので,ネットに接続していることが必須です.
自動生成されたリストをちょこちょこ修正すれば,簡単にリストが出来上がります.

ところが,EndNoteは標準ではbib形式に出力してくれません.
ですが,XML形式で出力することができます.
そこで,XMLからbibへ変換するツールくらい誰が作っているだろう,と思って検索すると,しっかりありました.
bibutilというツールで,さまざまな形式の間での変換ができます.
しっかり,EndNoteが出力するxmlにも最適化されているようでした.

私はいったんendx2xmlで普通のxmlにしたのち,xml2bibでbibファイルに変換しました.
(end2xmlではうまく変換できませんでした.)

あっという間にbibファイルの完成です.

bibファイルをtexのソースから参照するには,プリアンブルに


\bibliographystyle{hoge}

みたいに書いておいて,(hogeは投稿する雑誌によっていろいろある?)あとは\end{document}の直前くらいに

\bibliography{foo,bar}

という風に,自分でつくったbibファイルを指定すればいいだけです.
ここで,foo.bib,bar.bibがbibファイル名で,fooとbarの間は","で区切り,スペースは入れません.

このまま普通にコンパイルすれば自動的に番号がふられた参照文献リストが出来上がりますが,ここで驚くべき事態に遭遇.

なんと,参照文献の大文字小文字が勝手に変換されて,先頭だけが大文字になってしまっていました.

これを解決する方法は簡単で,bibファイルの中身のタイトルの部分を,

title="{RESONATING VALENCE BONDS: A NEW KIND OF INSULATOR ?}",

のように中括弧でくくるだけでいいみたいです.
これで,自分が入力した通りに大文字小文字を出力してくれます.

ちなみにEndNoteをダウンロードして,文献リストを作り始めたのが金曜日の夕方,土曜日にはしっかりコンパイルができるようになっていました.

もっとはやくやっておけば良かった...