使用 biblatex---列出年份,多次引用同一作者同一年份

使用 biblatex---列出年份,多次引用同一作者同一年份

我一直在寻找解决方案,但到目前为止还没有成功。我对同一作者同一年的引用显示为:(King 2000a,b, 2001a,b)。但是我希望它显示为:(King 2000a, 2000b; 2001a, 2001b)。以下是我的 MWE

enter code here\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage[american]{babel}
\usepackage{filecontents}
\usepackage[backend   = biber,
            style     = authoryear-comp, 
            sortcites = true,
            bibstyle  = apa,
            sorting   = ynt]{biblatex}  
\DeclareLanguageMapping{american}{american-apa}

\begin{filecontents}{general.bib}
@article{king200nonstationary,
title   = {Nonstationary Hypotheses},
author  = {King, P. M.},
journal = {Journal of {A}merican {S}tatistics},
volume  = {98},
number  = {428},
pages   = {1437--1487},
year    = {2000}
}
@article{king2000semiparametric,
title   = {Semiparametric Time Series},
author  = {King, P. M.},
journal = {The {W}orld {A}nnals of {S}tatistics},
pages   = {539--559},
year    = {2000},
volume  = {52},
number  = {1}
}
@article{king2001regression,
title   = {Regression and Dependence},
author  = {King, P. M.},
journal = {The {W}orld {A}nnals of {S}tatistics},
pages   = {1072--1099},
year    = {2001},
volume  = {53},
number  = {3}
}
@article{king2001gaussian,
title   = {Gaussian Semiparametric Estimation of Long Range Dependence},
author  = {King, P. M.},
journal = {The {W}orld {A}nnals of {S}tatistics},
pages   = {1661--1691},
volume  = {54},
number  = {2},
year    = {2001} 
}
\end{filecontents}

\addbibresource{general.bib}

\begin{document}
These ideas are summarised in:\parencite{king2001regression,king2000semiparametric,king200nonstationary,king2001gaussian}.

However, our results are closer to those described in \textcite{king2001regression}. 
\begin{refcontext}[sorting=nyt]                     
\printbibliography                           
\end{refcontext}
\end{document}

我正在使用 Windows 7、Texmaker 4.5、Biblatex 3.0 和 Miktex 2.9。非常感谢! 我得到的结果

答案1

最简单的解决方案是biblatex“忘记”最后一年,这样如果该年份与最后一年重合,就不会省略该年份。

\makeatletter
\AtEveryCitekey{\global\undef\cbx@lastyear}
\makeatother

成功了。


对于真正的 APA 样式,只需biblatex加载

\usepackage[backend   = biber,
            style     = apa,
            sorting   = ynt]{biblatex} 

在这种情况下您也会获得所需的输出。

相关内容