biblatex のオプションの解説

[link:blx_man]:http://ftp.jaist.ac.jp/pub/CTAN/macros/latex/contrib/biblatex/doc/biblatex.pdf

この文書は biblatex のオプションを解説するものです。

+ biblatex のオプションはたくさんあります。ここで取り上げているのは、**私が個人的に重要だと思ったものだけで、全体のうちのほんの一部**にすぎません。
  + また、読み込むスタイルによる独自のオプションもありますが、ここでは標準的な biblatex が提供しているオプションのみを取り上げています。
+ 他のオプションや各オプションの詳細な説明は [biblatexのマニュアル][link:blx_man] を見てください。

---

# オプション設定の記述方法

オプションは

```latex
<key>=<value>
```

という形式で指定します。boolean key（true か falseのどちらかの値をとるもの）の場合は `=<value>` を省略すると `=true` が入ります。

例えば、以下の `[ ]` 内のような形になります。

```latex
\usepackage[bibstyle=authoryear,citestyle=authoryear,giveninits]{biblatex}
```
    
この例では `giveninits` は `=true` を省略しています。


# オプションの種類と設定方法

オプションには大きく分けて次の2つのタイプがあります。

+ Load-time option
+ Preamble option

**「Load-time option」** は `\usepackage[...]{biblatex}` で biblatex を読み込む際に `[ ]` 内で指定する必要があるオプションのことです。

**「Preamble option」** は以下のどの方法でも設定できます。

+ Load-time option と同様に、`\usepackage` の引数として指定する
+ プリアンプルで設定する（この場合、`\ExecuteBibliographyOptions`で指定します）
+ 設定ファイル（biblatex.cfg）内で設定する

私としては、

+ Load-time option のみ `\usepackage` の引数として設定し、
+ 残りは `\ExecuteBibliographyOptions` でプリアンプルで設定する

という方法が、コードが見やすくくなり、いいのではないかと思います。`\ExecuteBibliographyOptions` を使えば、文献タイプ（aritcle、book 等）別の設定もできますし。

［注］複雑なカスタマイズをしたり、カスタマイズを使い回したいときには、設定ファイルを使うのがいいと思います。

`\ExecuteBibliographyOptions` で指定するときには、プリアンプルに

```latex
\ExecuteBibliographyOptions{date=year,maxnames=8,minnames=3,uniquelist=false}
```

のように指定します。

**［注］** オプションには entry type option というものもあり、それは別の方法で設定できるのですが、こでは省略します（[biblatexのマニュアル][link:blx_man] の Entry options の部分を読んでください）。


# オプションの説明

それではオプションを説明したいと思います。

## Load-time options

まず、load-time option です。

### ▢ backend=bibtex, bibtex8, biber 

+ 既定値（default 値）: biber

+ このオプションで backend として利用するプログラムを指定します。
+ **biber を使えない特別な理由がないのなら、既定値の biber のままでよい**と思います。


### ▢ style=`<file>`

- 既定値: numeric
- これはスタイルを指定するオプションです。**「引用スタイル（citation style）」**、**「参考文献スタイル（bibliography style）」** のどちらにも `<file>` というスタイルが指定されます。
  - この指定によって `<file>`.bbx と `<file>`.cbx というファイルが読み込まれることになります。
- 参考文献スタイルと引用スタイルに別のものを利用したいときには下の bibstyle、citestyle というオプションを利用します。
- **スタイルは自分の望む形式のものを選択すればよい**です。
- スタイルはたくさん提供されています。標準的なスタイルについては、[biblatex の標準スタイルの解説 \- Qiita](https://qiita.com/shiro_takeda/items/81f2c50c28eccbec08be)で説明をしていますので、そちらを見てください。


### ▢ bibstyle=`<file>`

- 既定値: numeric
- これは参考文献スタイルのみを指定するオプションです。
- `<file>`.bbx が読み込まれることになります。

### ▢ citestyle=`<file>`

- 既定値: numeric
- これは引用スタイルのみを指定するオプションです。
- `<file>`.cbx が読み込まれることになります。


##  Preamble Options

以下は preamble options です。

### ▢ sorting=nty, nyt, nyvt, anyt, anyvt, ynt, ydnt, none, debug

- 既定値: nty

このオプションは参考文献部分における文献の表示順を指定するためのものです。

例えば、nyt の場合、まず「name（著者名など）」でソート、name が同じなら次に title でソート、title も同じなら year でソートする形になります（どれも降順になります）。

- nty: name, title, year の順番。
- nyt: name, year, title の順番
- nyvt: name, year, volume, title の順番。
- ayt: alphabetic label, name, year, title の順番。
- anyvt: alphabetic label, name, year, volume, title の順番。
- ynt:  year, name, title の順番。
- ydnt: year (descending), name, title の順番。
- none: これは引用順に並べる指定です。
- debug: これはデバッグ用です。

自分で独自に作成した並べ替えオプションを利用することもできます。詳しくは [biblatexのマニュアル][link:blx_man] の sorting オプションの部分を見てください。

元々の既定値は nty ですが、これは利用するスタイルによって変わります。例えば、**authoryear スタイルでは nyt が既定値**になります。

### ▢ sortcites=true, false

-  既定値: false
-  一つの引用命令によって複数の文献を引用した場合（例えば、`\cite{key1,key2,key3}` のようにした場合）に、引用の順番を自動で並べ替えるか否かを決めるオプション。
    -  false なら指定した順にそのまま並ぶが、true なら自動で並べ替えてくれます。

例：引用部分において、false であると

> Krugman 1991a; Krugman 1991b; Krugman 1977; Krugman 1979

となるものが、true にすると

> Krugman 1977; Krugman 1979; Krugman 1991a; Krugman 1991b

のような順番に並べ替えてくれます（ここでは引用スタイルに authoryear を用いています）。

- **特に理由がなければ、true に設定するといい**と思います。

### ▢ maxnames=`<integer>`

-   既定値: 3

- このオプションは次の minnames オプションと組み合せて利用されます。
- 名前リスト（author, editor など）の要素の数が maxnames の値 `<integer>` を越えているとき、表示する名前リストの要素の数を minnames オプションで設定されている数に制限します。

### ▢ minnames=`<integer>`

-   既定値: 1

- maxnames オプションのところで説明した形で利用されます。
- 既定値では maxnames=3、minnames=1 となっています。これは著者数が 3 名よりも多い場合には、表示する著者数を 1 名とし、残りは et al. で省略するということです。

例えば、元々、

> **Takeda, Shiro, Toshi H. Arimura, Hanae Tamechika, Carolyn Fischer, and Alan K. Fox** (2014). "Output-based allocation of emissions permits for mitigating the leakage and competitiveness issues for the Japanese economy". In: _Environmental Economics and Policy Studies_, 16.1, pp. 89–110. issn: 1867-383X. doi: [10.1007/s10018-013-0072-8](https://dx.doi.org/10.1007/s10018-013-0072-8).

と参考文献部分で表示される文献の場合、

> **Takeda, Shiro et al.** (2014). "Output-based allocation of emissions permits for mitigating the leakage and competitiveness issues for the Japanese economy". In: _Environmental Economics and Policy Studies_, 16.1, pp. 89–110. issn: 1867-383X. doi: [10.1007/s10018-013-0072-8](https://dx.doi.org/10.1007/s10018-013-0072-8).

という表示になり、引用部分も **「Takeda et al. (2014)」** のように表示されるということです。

- 引用部分の著者数、参考文献部分の著者数を個々に指定することもできます（その場合はmaxcitenames、maxbibnamaes などのオプションを使います）。
- maxnames と minnames の値ですが、既定値（3 と 1）のように小さい値にすれば省略されるケースが増え、スペースの節約になります。
- 自然科学の論文ですと著者数が多いことが普通で、著者名を省略してしまうことは当たり前なのかもしれませんが、私は文系人間で、著者名を省略してしまうことにはかなり抵抗があります。ですので、**私個人としては maxnames = 8、minnames = 3 くらいがいいかなと感じています（単なる個人の好みです）**。
    - ただし、author-year スタイルの引用スタイルを利用しているときには、引用部分は規定値のような値に設定するのがいいと思います。引用部分で名前が7，8人表示されてもさすがに困るので．．．
- **［注］** この maxnames、minnames の指定は uniquelist の設定によって上書きされます。詳しいことは uniquelist の設定の部分を読んで欲しいのですが、**maxnames、minnames の指定を優先させたければ、uniquelist に false を指定しておけばよいです。**

### ▢ hyperref=true, false, auto, manual

+ 既定値: auto

引用部分などをクリック可能なリンクにするかどうかを指定します（引用部分をクリックすると、その文献の参考文献部分にジャンプできるようにするということ）。

リンクを作成するには、hyperref パッケージが読み込まれている必要があります。

+ auto: hyperref が読み込まれているか自動で判別します。
+ false: hyperref が読み込まれていてもリンクを作成しません。
+ true: hyperref が読み込まれているならリンクを付けますが、読み込まれていなければ付けません。hyperref が読み込まれていないときには warning を表示するところが auto との違いです。
+ manual: \BiblatexmanualHyperrefOn か \BiblatexmanualHyperrefOff で手動で hyperref を使うかどうかを指定します。

特に理由がなければ、**`\usepackage{hyperref}` としておき、このオプションは既定値の auto のままにしておくのがいい**と思います。


### ▢ backref=true, false

+ 既定値: false

+ 参考文献に **「バックレファレンス（back reference）」** を表示するか否かを指定します。
+ バックレファレンスとは引用しているページ（とそのページへのリンク）を参考文献部分に表示するものです。
  + 例えば、参考文献部分で以下のように「 **(cit. on pp. 1, 5)** 」と表示されているもののことです。この例の場合、この文献は 1 ページ目、5 ページ目で引用されていることを示しています。
  + リンクも付くので、クリックすれば引用場所にジャンプできます。
  + これがあれば参考文献部分から引用部分に簡単にジャンプできるようになります。

> Takeda, Shiro, Toshi H. Arimura, Hanae Tamechika, Carolyn Fischer, and Alan K. Fox (2014) “Output-based allocation of emissions permits for mitigating the leakage and competitiveness issues for the Japanese economy,” _Environmental Economics and Policy Studies_, 16.1, pp. 89–110. issn: 1867-383X. doi: [10.1007/s10018-013-0072-8](https://dx.doi.org/10.1007/s10018-013-0072-8).**(cit. on pp. 1, 5)**.


+ 参考文献部分の分量が多くなりますが、**バックレファレンスが表示されていたほうが読み手には便利だと思いますので、true に変更することを勧めます**。

+ また、backrefstyle オプションでバックレファレンスの形式も指定できます。

### ▢ abbreviate=true, false

+ 既定値: true

+ 引用部分、参考文献部分で、長い表現（false）か短縮形（true）のどちらを利用するかを指定するオプションです。
+ 例えば、以下のどちらを使うかという選択のことです。
  + "editors" の場合: "editors" という長い表現を用いるか、"eds." という短縮形を用いるか
  + "volume" の場合: "volume" という長い表現を用いるか、"vol." という短縮形を用いるか
+ **特別な理由がなければ、短縮形（既定値の true）のままでいい**と思います。
  
### ▢ date=year, short, long, terse, comp, ymd, iso 

+ 既定値: comp

このオプションは、date で表示する内容を指定するものです。

+ year: 年のみを表示。例: 2010, 2010–2012
+ short: 短縮形。例: 01/01/2010、21/01/2010–30/01/2010
+ long: 長い形式。1st January 2010, 21st January 2010–30th January 2010
+ terse: 短縮形 + 範囲は簡潔。例: 21–30/01/2010、01/21–01/30/2010
+ comp: 長い形式 + 範囲は簡潔。例: 21st–30th January 2010、January 21–30, 2010
+ iso: SO8601 Extended Format。例: 2010-01-01、2010-01-21/2010-01-30
+ ymd: Year-Month-Day 形式。例: 2010-1-1、2010-1-21/2010-1-30

既定値は comp であるので、例えば、authoryear 形式では

> Takeda, S. **(Sept. 2007).** “The Double Dividend from Carbon Regulations in Japan”...

のように、年と一緒に月も表示されてしまいます。**月の情報まで必要なことはほとんどありませんし、実際、年だけ表示するのが普通だと思うので、これは`date=year`に変更すること勧めます**。

### ▢ arxiv=abs, ps, pdf, format

+ 既定値: abs

arXiv の論文を掲載するとき、 arXiv のどこへリンクを張るかを設定するオプション。

+ abs: これはアブストラクトのページへリンクをはる。
+ ps: これは PostScript 版へのリンク。
+ pdf: これは PDF 版へのリンク。
+ format: これはformat selector page へのリンク

利用例: 以下のような arXiv の論文を引用すると

```latex
    @misc{bhatt2020globally,
      title        = {Globally +-regular varieties and the minimal model program for
                      threefolds in mixed characteristic},
      author       = {Bhargav Bhatt and Linquan Ma and Zsolt Patakfalvi and Karl
                      Schwede and Kevin Tucker and Joe Waldron and Jakub Witaszek},
      year         = {2020},
      eprint       = {2012.15801},
      archivePrefix= {arXiv},
      primaryClass = {math.AG}
    }
```
    
以下のように、arXiv へのリンクが挿入される。そのリンク先の設定のこと。

> [12] Bhargav Bhattetal. _Globally+-regular varieties and the minimal model program for threefolds in mixed characteristic._ 2020. arXiv: [2012.15801 [math.AG]](https://arxiv.org/abs/2012.15801) (cited on page 1).

### ▢ isbn=true, false

+ 既定値: true

true なら ISBN フィールド（ISSN、ISRNも）が表示されます。ISBN 情報がいらないなら、false に変更しましょう。

### ▢ url=true, false

+ 既定値: true

true なら URL フィールドとアクセス日（access フィールド）が表示されます。

**［注］** `@online` タイプのエントリーの場合は、常に URL フィールドは表示されます。

### ▢ doi=true, false

+ 既定値: true

true なら DOI フィールドが表示されます。DOIはあった方がよいので、これは規定値のままでよいと思います。

### ▢ eprint=true, false

+ 既定値: true

true なら eprint 情報が表示されます。

eprint は arXiv、jostor、PubMed などに掲載された論文のための特別なフィールドです。詳しくは [biblatexのマニュアル][link:blx_man] の「Electronic Publishing Information」の節を読んでください。

### ▢ dashed=true, false 

+ 既定値: true
+ これは authotitle/authoyear 形式のスタイルでのみ有効なオプションです。

true にした場合、参考文献部分において同じ著者（編集者）が連続する場合に「ダッシュ」で省略します。以下が例です。

> Krugman, Paul R. (1991a) Geography and Trade, Cambridge, MA: MIT Press.
> － (1991b) “Is Bilateralism Bad?,” in Helpman, Elhanan and Assaf Razin eds. International Trade and Trade Policy, Cambridge, MA: MIT Press, 9–23.

2個目の文献も著者が同じなので、省略されています。

省略のための記号は `\bibnamedash` コマンドで設定されています。既定の設定では線の長さがかなり短いです。私はもう少し長い線が好みなので

```latex
\renewcommand{\bibnamedash}{%
  \hskip.2em \leavevmode\rule[.5ex]{2.5em}{.3pt}\hskip0.4em}
```

のように変更して、線を長くしています。


### ▢ giveninits=true, false

+ 既定値: false

+ true の場合、given name（姓名のうち名の部分）をイニシャルだけ表示します。
+ 例: 「Donald E. Knuth」ではなく、「D. E. Knuth」となるということ。

### ▢ terseinits=true, false

+ 既定値: false

+ true の場合、名前をイニシャルだけにする際に、カンマなどをつけない簡略化した表示にします。
+ 例: 「D. E. Knuth」ではなく、「DE Knuth」となるということ。 

## おわり

ここでは主に私自身が使いそうなオプションだけを紹介しています。他にもいろいろありますので、興味のある人は [biblatexのマニュアル][link:blx_man] を見てください。