这是一个后续问题书目中的年份(带括号),我也从那里获得了这个 MWE。
\documentclass[pdftex,a4paper,12pt,german]{book}
\usepackage[german,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[authoryear]{natbib}
\begin{document}
\bibliographystyle{myplainnat}
\cite{lastname.2019a}
\cite{lastname.2019b}
\bibliography{Literatur}
\end{document}
@book{lastname.2019a,
author = {Firstname Lastname},
year = {2019},
title = {Title 1},
address = {Berlin},
publisher = {Springer}
}
@book{lastname.2019b,
author = {Firstname Lastname},
year = {2019},
title = {Title 2},
address = {Berlin},
publisher = {Springer}
}
我按照答案中提供的代码编辑了我的 .bst 文件,如下所示:
FUNCTION {format.date}
{ year duplicate$ empty$
{ "empty year in " cite$ * warning$
pop$ "" }
'skip$
if$
month empty$
'skip$
{ month
" " * swap$ *
}
if$
duplicate$ empty$ 'skip$ %% added
{ "(" swap$ * ")" *} %% added
if$
extra.label *
}
但是,我的参考书目现在是这样的:
姓氏,名字。(2019)a,标题 1。Springer,柏林。
姓氏,名字。(2019)b,标题 2。Springer,柏林。
但我希望它看起来像这样:
姓氏,名字。(2019a),标题 1。Springer,柏林。
姓氏,名字。(2019b),标题 2。Springer,柏林。
我知道我必须以某种方式编辑文件extra.label
中的行.bst
,但我无法让它工作。
答案1
extra.label *
只需将该行移动到新添加的行之前就足够了。
FUNCTION {format.date}
{ year duplicate$ empty$
{ "empty year in " cite$ * warning$
pop$ "" }
'skip$
if$
month empty$
'skip$
{ month
" " * swap$ *
}
if$
extra.label *
duplicate$ empty$
'skip$
{ "(" swap$ * ")" * }
if$
}
完整文件可从以下网址下载:https://gist.github.com/moewew/0b5992f6973bbc6af7d3c2cd5f0e297c(包括与的精确差异plainnat.bst
)。结果为
当在问题的 MWE 中使用时。