情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

BibTeX:citeで複数引用する際に「White space in argument」エラーが出る原因と対策

BibTeX (2) LaTeX (24) 論文 (6)

BibTeXを実行したときに、「White space in argument」エラーが出てBibTeXが失敗する原因と対策を紹介します。エラー本文は長めなのですが、引用した「White space in argument」に注目できれば原因は分かりやすいのですが、ミスだと気が付きにくい上に、仕組みを意識しないと対策で手こずりそうなので、ちゃんと紹介します。

エラー本文

エラー本文(全体)は次の通りです。

This is BibTeX, Version 0.99d (TeX Live 2013/W32TeX)
The top-level auxiliary file: paper.aux
White space in argument---line 3 of file paper.aux
: \citation{Paper1, : Paper2} I'm skipping whatever remains of this command The style file: society.bst Database file #1: References.bib Warning--empty booktitle in Paper2 (There was 1 error message)

これが表示されて、BibTeXの実行が停止してしまいます。

原因:複数引用する際の「cite」の使い方の問題

原因は、citeの使い方です。特に、複数引用する際の間違いです。

例えば、次のようにするとエラーになります。

\cite{Paper1, Paper2}

次が、正しい書き方です。

\cite{Paper1,Paper2}

良く見比べると分かるのですが、カンマの前後にスペースがあってはいけません。これがエラーの原因だったのです。

対策:ただ書き直してOKではない

実は、これを書き直してもう一度BibTeXを実行しても、同じエラーが出続けます。

どうしてかというと、BibTeXが処理しているファイルは.auxファイルであって、.texファイルを編集してもその修正が.auxファイルに反映されないからです。

つまり、修正したら、BibTeXを実行する前に、もう一度LaTeXを実行してください。LaTeXを実行することで、.auxファイルが生成されるのです。

これに気が付かないと、何度も何度もエラーが解消されずに、「あれ?どうして直らないんだろう?」と思ってはまってしまいかねません。要注意です。

コメント(0)

新しいコメントを投稿




  • カテゴリ ナビ
  • 著者紹介

    ブログが趣味で、スマホアプリの利用中に発生するトラブルや不具合の対策手順や障害情報、 設定の変更方法などについて、解説記事をよく書いています。

    自分が困ったことをブログに書けば、次に困る人の参考になって、みんながみんな同じ苦労をせずに済む、というのが原点です。

    最近の関心は、スマホやパソコンが苦手な人の行動や思考、そしてそんな人を手助けする方法です。

    Amazonのアソシエイトとして、did2は適格販売により収入を得ています。

    RSS | Facebook | Twitter | About