LoginSignup
5
6

More than 5 years have passed since last update.

macOSのLaTeXでjeconスタイルの参考文献を作るまで

Last updated at Posted at 2017-12-27

動作環境

macOS (High Sierra) 上で,upLaTeX + upBibTeX + dvipdfmxによりpdf出力することで動作確認しています.

まえがき

LaTeXの引用文献はBibTeXで管理されることが多いです.日本語論文が含まれる場合,jecon.bstというスタイルシートの使用がデファクトスタンダードであるようです.以下の2ステップでjeconスタイルの引用文献が作成できます.

  1. jecon.bstをダウンロードし,適切なディレクトリに配置する
    • 検索パスに含まれていないディレクトリに置いた場合,当然jecon.bstは認識されない
  2. TeXファイル内で\bibliographystyle{jecon}としてスタイルを設定する
  3. BibTeX使用時の基本的な方法に従ってコンパイルする

たったこれだけなのですが,意外と手間だったりします.自分は以下の2箇所でハマりました

  • TeXの検索パスが分からないので,jecon.bstをどこに置くべきか分からない
  • BibTeX使用時のコンパイルの方法が分からない

とくに前者の問題に困っている人は他にもいる気がします.というのも,

  • TeXの検索パスを探す方法に癖がある
  • ネットに転がっている情報が少し古いかもしれない (同じ手順を踏んでもうまくいかない場合があった)

からです.そこで参考文献作成までの手順をメモしておくことにしました.

1. jecon.bstの置き場所を探す

jecon.bstを置く場所の候補は2種類あります.1つは.texファイルと同じ階層です.それで良けれればこの節は読み飛ばしてもらってかまいません.この方法は手っ取り早い一方,他の階層で文書を作成するときにjecon.bstをコピペする必要があります.

もう1つは,ユーザーごとに用意された設定ファイル置き場 (以下TEXMFHOMEとする) です.ここに適切なディレクトリ構成でファイルを置けばjecon.bstをデフォルトのスタイルと同じように使えるようになります.したがって,EXMFHOMEを確認し,ディレクトリ構成を確認し,TEXMFHOME下に適切なディレクトリを作成する,計3ステップが必要です.

第一に,TEXMFHOMEの場所を確認します.TEXMFHOMEは環境変数$TEXMFHOMEによって指定されています.しかしこの環境変数は$HOMEのような一般の環境変数とは異なります.$TEXMFHOMEはkpathseaなるパッケージで管理される環境変数であるからです.したがって,たとえばecho $TEXMFHOMEしても何も返ってきません.echo $TEXMFHOMEに対応するコマンドは

kpsewhich -var-value TEXMFHOME

です.自分の場合$TEXMFHOME~/Library/texmfです.このディレクトリが実際に存在しない場合は新たに作成します.

第二に,TeXの標準パッケージ置き場 (以下TEXMFDISTとする) のディレクトリ構成を確認します.TEXMFDISTはTEXMFHOMEと同じく,

kpsewhich -var-value TEXMFDIST

によって確認できます.自分の場合$TEXMFDIST/usr/local/texlive/2017/texmf-distです.

第三に,TEXMFHOME内にbstを置くディレクトリを作成します.ディレクトリ構成はTEXMFDISTと一致させます.$TEXMFDIST内のどこにbstファイルが置かれているかを確認することは簡単です.まず,

mdfind jplain.bst

で表示されるリストのうち,$TEXMFDIST内にあるものを確認します.自分の場合/usr/local/texlive/2017/texmf-dist/pbibtex/bst/jplain.bstでした.次に,$TEXMFHOME下に対応するディレクトリを作成します.自分の場合pbibtex/bstディレクトリを作成します.作成したらこのディレクトリにjecon.bstを配置します.結局,自分の場合はjecon.bst~/Library/texmf/pbibtex/bst/jecon.bstとして配置したことになります.

beta_jecon2nonote.bstの場合

心理学系論文の「執筆・投稿の手びき」の投稿規定に対応した引用文献を書きたい場合,奥村先生のホームページからbeta_jecon2nonote.bstもダウンロードします1.こちらは本家jecon.bstと異なり,ファイルをnkfでunix改行形式 (LF) に変換する必要があります.2017年12月現在,たとえば以下の3行によってbstファイルをダウンロードし文字コードを変換できます (要brew install nkf).

wget http://blue.zero.jp/yokumura/tex/jpa_nonote/beta_jecon2nonote.bst
nkf -Lu beta_jecon2nonote.bst > beta_jecon2nonote.bst.new
mv beta_jecon2nonote.bst.new beta_jecon2nonote.bst

ダウンロードしたら,jecon.bstと同じディレクトリに配置します.僕の場合~/Library/texmf/pbibtex/bst/beta_jecon2nonote.bstとしました.

2. タイプセットの設定

BibTeXを使う場合はlatexコマンドとbibtexコマンドをlatex -> bibtex -> latex -> latexと交互にコンパイルし,最後にdvipdfmxでpdf化する必要があります.例えばtexfile.tex (中でbibdata.bibを呼び出している) からpdfを作成する場合,

uplatex texfile.tex
upbibtex texfile
uplatex texfile.tex
uplatex texfile.tex
dvipdfmx texfile

とします.面倒であれば引数にファイル名 (texfile) を取るようなシェルスクリプトを書けばよいと思います.

タイプセットの設定 (Texpadの場合)

macOSでTexpadを使用している場合は上述したビルドを自動化出来ます.
「タイプセット」 → 「グローバルなビルドスクリプトを管理」で開かれるBuildScriptsディレクトリに,以下のスクリプトをuplatex-upbibtex.tpbuildとして保存します.

#!/bin/bash

uplatex "$TEXPAD_ROOTFILE"
upbibtex "$TEXPAD_ROOTFILE_NO_EXT"
uplatex "$TEXPAD_ROOTFILE"
uplatex "$TEXPAD_ROOTFILE"
dvipdfmx "$TEXPAD_ROOTFILE_NO_EXT"

  1. beta_jecon2nonote.bstを使って心理学論文を書く場合,文章中ではAsan and Bsan (1999)とし,()内ではAsan & Bsan, 1999とする必要があります.自分は以下のように\citetを定義しなおし,そちらを使っています. 

    \newcommand{\citeandt}[1]{{\renewcommand{\&}{and}\citet*{#1}}}  % 「&」を「and」に変
    
5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6