2017年10月11日水曜日

IEEEtran.bstで原稿のReferencesにURLを入れない(@IEEEtranBSTCTLを使う)

IEEEtran.bstを使うとデフォルトでは参考文献にURLが入る.これを入らないようにする方法はいくつかあるが,IEEEtran.bstそのものは@IEEEtranBSTCTLを使うことで制御する事を想定しているのでそのやり方を書く.BSTファイルを直接いじる必要は無い.

IEEEtran.bstを使うとエントリータイプに応じて様々なフィールドが参考文献に出力される.

@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLuse_article_number = "yes",
CTLuse_paper = "yes",
CTLuse_url = "yes",
CTLuse_forced_etal = "no",
CTLmax_names_forced_etal = "10",
CTLnames_show_etal = "1",
CTLuse_alt_spacing = "yes",
CTLalt_stretch_factor = "4",
CTLdash_repeated_names = "yes",
CTLname_format_string = "{f.˜}{vv˜}{ll}{, jj}",
CTLname_latex_cmd = "",
CTLname_url_prefix = "[Online]. Available:"
}

ここで,
CTLuse_url = "no",
を自分の.texファイルで指定する事でURLの出力を禁止できる.

改めて設定方法を掲示すると,
(1) .bibファイルへの設定記述
.bibファイルに,前述の@IEEEtranBSTCTLのうち
制御したい(上書きしたい)パラメータを記述する.

@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
CTLuse_url = "no",
}

(2) .texでの制御情報反映
定義した制御情報を有効にするコマンドをTEXファイルの本文に追加する
(\begin{document}の直後がいいらしい).

\bstctlcite{IEEEexample:BSTcontrol}

(3) コンパイル

参考:
IEEEtran.bstで著者名が線になるのを防ぐ
How to Use the IEEEtran BIBTEX Style: IEEEtran.bstのマニュアル(PDF).丁寧に説明されています.