修改 bst 中的 format.date 以在年份周围添加括号

修改 bst 中的 format.date 以在年份周围添加括号

我想在论文参考书目中添加年份括号(例如 Kyle, AS (1985) 等)。不幸的是,期刊 .bst 文件在这一点上不太正确。.bst 文件的链接位于: http://rfssfs.org/files/2012/09/RFS-BibTeX-style-file-010414.pdf

根据相关问题,我无法更改 format.date 函数来实现此目的。以下是 MWE:

\documentclass[11pt, letterpaper,doublespacing]{article} 
\usepackage{setspace} 
\makeatother 
\usepackage{ntheorem} 
    \RequirePackage{amsmath,amsfonts,amssymb,xcolor,graphicx,natbib,booktabs,geometry,chngcntr,comment,array,dcolumn,subfig, lscape, longtable}
\usepackage[title]{appendix}
\usepackage[labelfont=bf,labelsep=newline]{caption}  %Make Table and Figure bold
\theoremstyle{plain}  %COMMENTED 10/6/14

\begin{document}
\cite{Kyle_Econ_1985} is a seminal paper.

\bibliographystyle{rfs}
\bibliography{mwe_bib}

\end{document}

这是 .bib 条目:

@ARTICLE{Kyle_Econ_1985,
  author = {Kyle, Albert S.},
  title = {Continuous Auctions and Insider Trading},
  journal = {Econometrica},
  year = {1985}, 
  volume = {53},
  pages = {1315--1336},
}

答案1

将日期函数替换为:

FUNCTION {format.date}
  { year empty$
      { "" }
      { year "(" swap$ * ")" *}
    if$
  }

在此处输入图片描述

答案2

对 user2478 的提议进行修改,删除作者和年份之间的逗号,并保留括号内的额外标签(如果有多个条目的年份相同,则为 a、b):

FUNCTION {format.date}
  { year empty$
    { "" }
    { year " (" swap$ * extra.label * ")" *}
  if$
  before.all 'output.state :=
  }

相关内容