bst ファイルの問題

bst ファイルの問題

ここではnar.bstを使用しています(http://schneider.ncifcrf.gov/ftp/nar.bst)。ただし、参考文献を次の方法に含めると:-

\bibliographystyle{nar}
\bibliography{main}

ただし、結果の bbl ファイルには閉じていない中括弧がいくつかあるようです。たとえば、\bf 中括弧が閉じていない次の bibitem が表示されます。

\bibitem{chang2013temporal}
Chang, K.~N., Zhong, S., Weirauch, M.~T., Hon, G., Pelizzola, M., Li, H.,
Huang, S.-s.~C., Schmitz, R.~J., Urich, M.~A., Kuo, D., et al. (2013)
{\em Elife} {\bf 2.

これはbibtexから生成される

@article{chang2013temporal,
  title={Temporal transcriptional response to ethylene gas drives growth                hormone cross-regulation in Arabidopsis},
  author={Chang, Katherine Noelani and Zhong, Shan and Weirauch, Matthew T and Hon, Gary and Pelizzola, Mattia and Li, Hai and Huang, Shao-shan Carol and Schmitz, Robert J and Urich, Mark A and Kuo, Dwight and others},
  journal={Elife},
  volume={2},
  year={2013},
  publisher={eLife Sciences Publications Limited}
}

考える(しかし全く確信はない)関数

format.vol.num.pages

原因はこれですが、修正方法がわかりません。

ご協力いただければ幸いです:)

PS:- \bf が存在する場合にのみ発生すると思われる開き括弧を修正すると、問題は解決します。

編集 (編集 3 - NAR cls を削除 - 私にとっては何も変わりません): 以下は最小限の例です。pdflatex を使用してコンパイルしてから bibtex を実行すると、bbl ファイルに間違った形式の bibitem (上記参照) が生成されます。

\documentclass{article}

\begin{document}

\title{Sample}

\author{Sample}

\maketitle

Example~\cite{chang2013temporal}

\bibliographystyle{nar}
\bibliography{main}

\end{document}

main.bib ファイルに @article があり、MWE に main.tex という名前を付けています。次に、pdflatex main.tex を 2 回実行し、その後 bibtex main を実行して、フォーマットが間違っている main.bbl を取得します。

答え1

解決

CTAN では、最新バージョンがnar.bst更新されました (以前は古いバージョンがありました)。最新の TL 2015 および MikTeX には、このバージョンが含まれているはずです。古いバージョンの TL を実行している場合は、CTAN のバージョンを使用してください。

元の回答

TLに付属するバージョンnar.bst(2015年現在)は古いです。最新バージョンはここ、これは元の質問のリンクです。このバージョンでは問題が修正されているため、 を変更する.bst.必要はありません。これにより、他の人がエラーを再現できなかった理由が説明されます。ファイルの作成者に電子メールを送信し、.bstCTAN に更新バージョンを掲載するよう依頼しました。

したがって、学ぶべき教訓は、最新のコピーを使用していることと、システムが実際にそれらを見つけていることを確認することです。

TeX がファイルのどのコピーを見つけているかを確認する方法はいろいろありますが、最も簡単な方法はkpsewhichコマンド ラインから使用することです。次のコマンドを実行します。

kpsewhich nar.bst

使用されているファイルを正確に表示します。標準の TL システムでは、次の結果が返されます: (年を法として)

/usr/local/texlive/2015/texmf-dist/bibtex/bst/beebe/nar.bst

特に TeX Live は.bstファイルの場所に関して非常に厳しいため、最新のコピーをダウンロードして見つけたい場合は、次の場所に置く必要があります。

<path-to-local-texmf>/texmf/bibtex/bst/

場所は<path-to-local-texmf>システムによって異なります。場所がわからない場合は、次のコマンドを発行してパスを見つけることができます。

kpsewhich -var-value=TEXMFHOME

関連情報