BibDeskで文献管理

# BibDeskとは？
BibDeskとはBiBTeXを使ったmacOS用のオープンソース[引用管理ソフトウェア](https://ja.wikipedia.org/wiki/%E5%BC%95%E7%94%A8%E7%AE%A1%E7%90%86%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)です。情報は全て.bibファイルに追加されるため、$\LaTeX$で`\bibliography`コマンドを使ったときの出力元となる文献DBを効率的に作成・管理できます。
こういうことがしたかった▽
[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/ukQtpwHRl8I/0.jpg)](http://www.youtube.com/watch?v=ukQtpwHRl8I)

# インストール・使い方
* [ここ](https://bibdesk.sourceforge.io/)からBibDeskをダウンロード
* $\TeX$ディストリビューションの１つであるMacTeXをダウンロードすれば付いてくるそうです。ディストリビューションについて、詳しくは[ここ](https://texwiki.texjp.org/?TeX%E5%85%A5%E6%89%8B%E6%B3%95)をご覧ください。

* BibDeskの使い方は詳しくは公式ホームページの ["Help Book"](https://bibdesk.sourceforge.io/manual/) を見るのが最短です。

# 環境
* macOS BigSur v11.1
* BibDesk v1.7.9
* TeX 3.14159265 (TeX Live 2020)


# BibDeskの環境設定
上のインストールが終わったら、使い勝手を良くするために環境設定します。環境設定画面はこんな感じ。MacApp標準の`Cmd+,`で開きます。環境設定についての説明は前述の "Help Book" の ["Preference Guide"](https://bibdesk.sourceforge.io/manual/BibDeskHelp_62.html#SEC121) を見るのが最短だと思うのですが、備忘録も兼ねて私の主要な変更点を載せておきます。
![img_ss 2020-12-06 19.41.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/1ba4b862-de98-bf2d-b447-27a393518dab.png)

## General
![img_ss 2020-12-06 19.52.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/7c896283-010b-47f2-a4c2-903697747b66.png)

**Application Launch** ではBibDesk起動時に何を開くかを設定できます。私のメインのクラウドストレージサービスはiCloudなため、以下のような構造を作ることにしました。文献情報は全て`library.bib`ファイルに格納し、文献ファイルを`0001_papers`ディレクトリ下に追加させてゆく単純な仕組みです。

```
~/
  └─ Documents/
     └─ 0001_papers/
        ├─ bib/
        │  └─ library.bib
        ├─ paper00001.pdf
        ├─ paper00002.pdf
        ├─ :
        └─ paper99999.pdf
```

## TeX Preview
![img_ss 2021-01-13 13.03.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/fc0c4d92-65fd-fc60-28f5-4fecad142f2e.png)

TeXプレビューの設定を行います。TeXプレビュー機能を使用するには、事前にパソコンにTeXをインストールしておく必要があります。TeXプログラムの在処はインストール方法により異なりますが、TeX Live 2020またはMacTex-2020をインストールした場合、基本的に`/usr/local/texlive/2020`に保存されます[^1]。


## Fields
![img_ss 2020-12-06 20.32.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/c656859b-0fb1-2449-57ae-b47f9ecffc0f.png)

**Custom BibTeX Fields** は、新しい文献を追加する際にデフォルトとなるフィールドをカスタマイズできます。フィールドの型は以下の通り。

| 型 | 説明 |
|:-----------|:------------|
|Textual   |普通のテキストフィールド|
|Local File|ローカルファイルにリンクするフィールド（非推奨）|
|Remote URL|リモートURLにリンクするフィールド（非推奨）|
|Boolean   |引用された論文を呼んだかどうか知らせるReadフィールドのようなブール値のスイッチ|
|Three-value|Yes, No, Mixedのように3つの値を持つスイッチ|
|Rating    |0-5の間の評価値|
|Citation  |citeキーを使って他の文献へのリンクを保持するフィールド|
|Person    |Authorフィールドのように人を含むフィールド


日本語版BibTexであるpBibTeXは、日本語表記の著者名を`author`フィールド、ローマ字による読みを`yomi`フィールドとして読み取ります。一方、BibDeskのデフォルトでは`yomi`は含まれません。ということで、`yomi`フィールドを追加。さらに、`doi`[^2]フィールドもデフォルトにしたほうが良いということなので[^3]、is Defaultにチェックマーク。

## Cite Key
![img_ss 2020-12-07 14.06.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/06d9118b-177e-53dc-e34c-d371bf002df1.png)

**Cite Key Autogeneration** にチェックを入れると、文献追加時に`Cite Key`フィールドが空欄でも自動的にCite Keyを生成してくれます。自動生成されるCite Keyのフォーマットは下の **Cite Key Format** で変更できます。

**Cite Key Format** の初期値は`%a1:%Y%u2`となっています（多分）。これは Autogeneration Format Syntax（以下、Syntax） と呼ばれ、自分でカスタマイズすることができます。例の如く[ここ](https://bibdesk.sourceforge.io/manual/BibDeskHelp_92.html)で説明されています。Syntaxを変更すると、Previewで即座に生成例が表示されます。
しかし、挙動を見る限り、この自動生成機能は日本語には非対応なようです。日本語を入力すると中国語読みに対応したローマ字に変換して生成されてしまいます（例えば「村尾」だと "Cunwei" と変換される）。何か解決策がありそうな気もしますが、CiNiiやNDLからbibファイルを入れるとCite Keyが初めから設定されてるので、とりあえず放置…。

## AutoFile
![img_ss 2020-12-07 18.30.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/54988/4286ed9a-1246-56e5-9ae9-595a645ed141.png)

**Auto File Options** では、文献ファイルがデータベースに紐づけられたとき、自動的に移動させたいディレクトリを指定することができます。ファイルを追加した都度、移動させる場合は、File papers automatically ボタンをオンにします。このとき、Cite Keyのときと同様にファイル名を任意の名称に変換することもできます。フォーマットは下の **Local File Format** で、Syntaxを使って指定できます。
Cite Keyのときは日本語が勝手に中国語読みに対応したローマ字に変換されましたが、ここではちゃんと日本語に変換されました。
ちなみに、現在の私の設定は`%p[;][;etal]2(%Y%u1)%t20%e`としています。これは、著者(編集者)数が３人未満の時は"McCracken;Maxwell(2004a)BibDesk, a great app.pdf" = 「著者名1;著者名2(年a)タイトル20文字.拡張子」となり（aはユニーク文字）、３人以上の時は、 "McCracken;Maxwell;etal(2004a)BibDesk, a great app.pdf" = 「著者名1;著者名2;etal(年a)タイトル20文字.拡張子」となるSyntaxです。ファイル名としてはいかがなものかと思いますが、Spotlight検索をかけた時の視認性を重視しました。

# TeXファイルで引用できるようにする
TeXがbibファイルを読み込めるように、`texmf-local/bibtex/bib/`にシンボリックリンクを作成します。ターミナルを開いて、以下のコマンドを実行（USER_NAMEはホームディレクトリ名に変えてください）。

```
sudo ln -s /Users/USER_NAME/Documents/0001_papers/bib/library.bib /usr/local/texlive/texmf-local/bibtex/bib

```
ls-Rファイルを書き換えます。

```
sudo mktexlsr
```

# iOSから文献リストを見る
ReferencesというAppを見つけました。閲覧専用で新規エントリはできませんが、有用なAppです。
[「References」をAppStoreで](https://apps.apple.com/jp/app/references/id1481843213)

# その他の備忘録
* 日本人の`Author`フィールドには`姓,名`または`名 姓`と入力する（伝統的には`名,姓`または`姓 名`だったが、CiNiiやNDLのデータは前者の形式で配布されており、前者の形式に対応したbstファイルが配布されることが多くなっているため）

# 最後に
記事についての誤りのご指摘やアドバイス等あればお待ちしております。

[^1]: [TeX Live/Mac - TeX Wiki](https://texwiki.texjp.org/?TeX%20Live%2FMac#k03895bf)

[^2]: [DOI(Digital Object Identifier; デジタルオブジェクト識別子)](https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E8%AD%98%E5%88%A5%E5%AD%90)のこと。
[^3]: [日本語の論文もBibDeskで整理 – Smartnova](https://kwakita.blog/2009/10/24/bibdesk-for-japanese-papers/)