Biblatex:作者姓名(年份 1;年份 2)

Biblatex:作者姓名(年份 1;年份 2)

对于同一个作者,我想要像Doe (1990; 1997)而不是 这样的参考文献Doe (1990) and Doe (1997),并且我想要(Doe 1990; 1997)而不是(Doe 1990; Doe 1997)

换句话说,我的问题非常接近这个问题 但我正在使用biblatex,不是natbib

有没有简单直接的方法可以做到这一点?如果我忽略了某些内容,请原谅。

以下是 MWE:

\documentclass{standalone}
\usepackage[applemac]{inputenc}
\usepackage[backend=biber,style=authoryear,giveninits]{biblatex}
\bibliography{Literature}
\begin{document}

I get ``\textcite{Doe1996,Doe1990}" but I want ``Doe (1990; 1997)". I get ``\autocite{Doe1996,Doe1990}" but I want ``(Doe 1990; 1997)"
\end{document}

答案1

将样式从 切换style=authoryearstyle=authoryear-comp应该会产生非常接近所需输出的结果。

摘自biblatex文档:“authoryearstyle 的紧凑变体,如果传递给单个引用命令的后续引用共享同一作者,则仅打印一次作者”。

另请参阅:Biblatex -使用 citet 合并论文对于类似的问题。


默认情况下,后续年份之间的分隔符是逗号,而您的示例显示的是分号。如果您想相应地更改输出,您可以\compcitedelim根据需要重新定义:

\renewcommand*{\compcitedelim}{\addsemicolon\space}

如果一个人使用两个不同版本的名字发表文章,压缩可能无法按预期工作,因为作者被视为两个姓氏相同的不同作者。要关闭此行为而不必更改(同质化)bib 文件中的名字,您可以使用包选项uniquename = false

也可以看看:biblatex,authoryear 样式:文内引用显示某些参考书目条目的名字首字母相关问题。

相关内容