我使用的是biblatex 1.4b
和 Biber 0.9。但是,我认为问题出在我的设置上,而不是这些程序的版本上。
我试图引用一位作者,并给出他们的名字,然后是两篇论文的日期,使用风格authoryear-ibid
和
natbib
兼容性。这是我的biblatex
序言:
\usepackage[style=authoryear-ibid,natbib=true,backend=biber]{biblatex}
我想要的是以下命令:
The works by \citet{Blau81, Blau88} ...
生成:
The works by Blau (1981; 1988) ...
但是,我得到的是:
The works by Blau (1981); Blau (1988)...
我知道biblatex
他们是同一位作者,因为在参考书目中他们属于同一个名字(即在名字的第一个实例之后,只有一个破折号而不是名字)
我在这里做错了什么?我也尝试使用命令\cite
和\cites
,但都没有产生我想要的结果。
(与 comp.text.tex 交叉发布)
答案1
您需要的是authoryear-icomp
引用样式,而不是authoryear-ibid
。手册中写道biblatex
:“[authoryear-comp
是] 样式的紧凑变体authoryear
,如果传递给单个引用命令的后续引用具有相同的作者,则仅打印一次作者。”(第 61 页)样式authoryear-icomp
结合了-comp
和-ibid
。
答案2
除了切换authoryear-icomp
样式之外,您可能还想将“压缩”多个引用的分隔符更改为分号(而不是默认的逗号)加上单词间空格:
\renewcommand*{\compcitedelim}{\addsemicolon\space}
\DeclareFieldFormat{postnote}{#1}
编辑:如果你隐藏引文后记的页面前缀(使用, ),上述调整尤其有用,\DeclareFieldFormat{multipostnote}{#1}
例如
Sengupta 和 Tipple 2007、2009
代替
Sengupta 和 Tipple 2007,第 2009 页
这样就可以清楚地看出“2009”是引用的页面*,而不是同一作者的其他作品
Sengupta 和 Tipple 2007;2009
*
以下是从 2009 页开始的实际文章摘要的链接。