一个 \citep 中来自同一作者的两处引文,作者姓名不会输出两次

一个 \citep 中来自同一作者的两处引文,作者姓名不会输出两次

嗨,谢谢你的阅读

小示例文件:

\documentclass[a4paper]{article}
\usepackage{natbib}

\begin{document}


\citep{norman_minimal_2012, norman_basic_2012-1}
\citep{flexner_medical_1910,flexner_medical_1912}

\bibliographystyle{apalike}

\bibliography{../caw}

\end{document}

BibTex 运行给出两个警告:

警告——flexner_medical_1910 中有数字,但没有系列

警告——flexner_medical_1912 中有数字,但没有系列

输出为:

(Norman 等人,2012 年;Norman,2012 年),(Flexner,1910 年,1912 年)

然后附上参考文献,就可以了。

我本以为会看到(Flexner, 1910; Flexner 1912)——但看到了(Flexner, 1910, 1912)

如有任何指点我将非常感激!

flexner 条目的 bib 条目为:

@book{flexner_medical_1910,

    Author = {Flexner, Abraham},
    Number = {4},
    Publisher = {Carnegie Foundation for the Advancement of Teaching},
    Title = {Medical education in the United States and Canada: a report to the Carnegie Foundation for the Advancement of Teaching},
    Year = {1910}}

@book{flexner_medical_1912,

    Author = {Flexner, Abraham},
    Number = {6},
    Publisher = {Carnegie Foundation for the Advancement of Teaching},
    Title = {Medical education in Europe: a report to the Carnegie Foundation for the Advancement of Teaching},
    Year = {1912}}

答案1

正如 Harish 在评论中指出的那样,对作者年份引用标注进行排序和压缩是该natbib包的默认操作——并且在处理作者年份样式引用标注时,这几乎是一个全球标准。

natbib软件包似乎没有提供覆盖此默认设置的选项。如果您必须创建(或坚持创建)两个完全独立的引文标注,您可以按照说明进行操作

(\citealp{flexner_medical_1910}; \citealp{flexner_medical_1912})

即通过提供两个单独的引用命令。(该\citealp指令的工作方式与\citep命令相同,只是它不将结果括在括号中。)

在此处输入图片描述

\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{flexner_medical_1910,
    Author = {Flexner, Abraham},
    Number = {4},
    Publisher = {Carnegie Foundation for the Advancement of Teaching},
    Title = {Medical education in the United States and Canada: a report to the Carnegie Foundation for the Advancement of Teaching},
    Year = {1910}
}
@book{flexner_medical_1912,
    Author = {Flexner, Abraham},
    Number = {6},
    Publisher = {Carnegie Foundation for the Advancement of Teaching},
    Title = {Medical education in Europe: a report to the Carnegie Foundation for the Advancement of Teaching},
    Year = {1912}
}
\end{filecontents*}
\usepackage{natbib}

\bibliographystyle{apalike}
\begin{document}
\citep{flexner_medical_1910,flexner_medical_1912}

(\citealp{flexner_medical_1910}; \citealp{flexner_medical_1912})
\bibliography{\jobname}
\end{document}

相关内容