Zotero と BibTeX の連携

Firefox の拡張機能 Zotero を使用すれば、Web 上の文献情報を手軽に収集・管理できる。Zotero で文献管理 で書いたように、Zotero で収集した文献情報は BibTeX 形式でエクスポートでき、さらにそれを Emacs が受け取ることもできる。今回は Spinu Vitalie さんの zotexo.el を使用して、Zotero で収集した文献データベースを Emacs が BibTeX ファイルとして受け取り、それらの文献を LaTeX 文書中に引用する方法を紹介したい。これが便利極まりないのである。

なお、Emacs 23.3.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.6) と Iceweasel 7.0.1 (=Firefox) で動作を確認しながら書いているが、特に Firefox のバージョンによってはその拡張機能 MozRepl が動作しない場合があるかもしれないので注意が必要である。

導入は簡単。zotexo.el を Emacs のパスに配置する。また、Firefox の拡張 MozRepl をインストールしてスタートしておく。latex-mode で zotexo-minor-mode を有効にするため以下の設定を書いておく。

(require 'zotexo)
(add-hook 'LaTeX-mode-hook 'zotexo-minor-mode)
key-map
C-c z c zotexo-set-collection
C-c z s zotexo-set-collection
C-c z m zotexo-mark-for-auto-update
C-c z r zotexo-reset
C-c z t zotexo-toggle-auto-update
C-c z u zotexo-update-database

Zotero の使い方を簡単に紹介しておくと、以下のように Amazon 等で目的の書籍のページを開くとアドレスバーに本のマークのアイコンが表示される。これをクリックすると Zotero のデータベースに書籍情報が保存される1

https://skalldan.files.wordpress.com/2011/11/wpid-amazon_zotero1.png

「マイ・ライブラリー」の「TeX」というコレクションに書籍情報が加わった。

https://skalldan.files.wordpress.com/2011/11/wpid-zotero_nakano1.png

https://skalldan.files.wordpress.com/2011/11/wpid-zotero_nakano_21.png

Emacs から tex ファイルを新規に作成して、ファイル中に例えば、

bibliography{texbook}

と書いておく。C-c z c (zotexo-set-collection) を実行すると、以下のように Zotero のコレクションの選択肢がミニバッファに表示される。

https://skalldan.files.wordpress.com/2011/11/wpid-collection_zotero1.png

ここで「TeX」を選択すると、Zotero のコレクション「TeX」がカレントディレクトリに texbook.bib としてエクスポートされる (ファイル中に bibliography{texbook} のように BibTeX ファイル名がなければ “[current-file-name]_zotexo_.bib” でエクスポートされる)。

エクスポートされた texbook.bib の内容は以下のようになっている (すべて Amazon の書誌情報)。

@book{_[5]_2010,
    edition = {改訂第5},
    title = {[改訂第5版] {LaTeX2e} 美文書作成入門},
    isbn = {4774143197},
    publisher = {技術評論社},
    author = {晴彦, 奥村},
    month = jul,
    year = {2010}
},

@book{_late_1990,
    title = {{文書処理システムLATE}},
    isbn = {4756107842},
    publisher = {アスキー},
    author = {ランポート, レスリー},
    month = oct,
    year = {1990}
},

@book{_tex_1992,
    edition = {改訂新版},
    title = {{TEX(テック)ブック―コンピュータによる組版システム}},
    isbn = {4756101208},
    publisher = {アスキー},
    author = {クヌース, {ドナルド・E.}},
    month = jul,
    year = {1992}
},

@book{_latex2_2009,
    edition = {第3},
    title = {Latex2ε 階梯 第3版 上},
    isbn = {{489471731X}},
    publisher = {ピアソン桐原},
    author = {眞作, 藤田},
    month = oct,
    year = {2009}
},

@book{_latex2_2009-1,
    edition = {第3},
    title = {Latex2ε 階梯 第3版 下},
    isbn = {4894717328},
    publisher = {ピアソン桐原},
    author = {眞作, 藤田},
    month = oct,
    year = {2009}
},

@book{_latex2e_1996,
    title = {{日本語LATEX2eブック}},
    isbn = {4756116671},
    publisher = {アスキー},
    author = {賢, 中野},
    month = oct,
    year = {1996}
},

cite キーなどは若干訂正した方がよいだろうが、ほとんどはそのまま使用できる。

@book{okumura_2010,          % <-- 変更
    edition = {改訂第5},
    title = {[改訂第5版] {LaTeX2e} 美文書作成入門},
    isbn = {4774143197},
    publisher = {技術評論社},
    author = {晴彦, 奥村},
    month = jul,
    year = {2010}
},

% ... (以下略) ...

あとは RefTeX を利用してエクスポートされた文献を適宜引用する (カレントディレクトリにある BibTeX ファイルはデフォルトで検索される)。以下は C-c [ (reftex-citation) を実行した様子。

https://skalldan.files.wordpress.com/2011/11/wpid-zotero_emacs_31.png

# ファーストネームになってます... 本当は日本人著者の場合、author の項も編集した方が見栄えはいいのでしょうが、ここではなるべく素早く Zotero 文献データベースから TeX 文書を作成する、ということで、エクスポートされた BibTeX ファイルに最低限の変更のみ加えています。

こうして以下のような Zotero の文献情報を引用した TeX 文書が手軽に作成される。

https://skalldan.files.wordpress.com/2011/11/wpid-zotero_bibtex_source1.png

出力結果は以下の通り2

https://skalldan.files.wordpress.com/2011/11/wpid-zotero_pdf2.png

# 一応上で使用したテストファイルを置いておきます (texbook.tar.gz)。

なお、Google Chrome や Safari のプラグインも含んだ Zotero のスタンドアローン版 Zotero 3.0 Beta も公開されている (cf. Zotero Standalone Alpha with Chrome and Safari support)。

【追記 2011/11/26】

Iceweasel 8.0 と MozRepl 1.1b3 でも動作を確認した。

Footnotes:

1 詳しくは quick_start_guide (日本語訳) を参照。Zotero が対応しているサイトに関しては Compatible Sites に一覧がある。CiNii をはじめ Web上で提供されている BibTeX 出力サービス にあるリンク先など、日本語文献を収集できるサイトは多数ある。

2 例では BibTeX スタイルファイルに jecon.bst を使用している。

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s