我的大学有自己的引文标注规则,因此我必须更改引文的显示方式。我目前使用的natbib
引文如下:
(AUTHOR YEAR, PAGES)
对于多个这样的作者
(AUTHOR1 et al., YEAR, PAGES) or (AUTHOR1, AUTHOR2 & AUTHOR3, YEAR, PAGES)
然而,它们应该看起来像
(AUTHOR YEAR: PAGES)
和
(AUTHOR1/AUTHOR2/AUTHOR3 YEAR: PAGES)
笔者引述如下:
\citep[pages]{key}
\citep*[pages]{key}
编辑:我使用agsm
参考书目样式,因为我应该根据哈佛文献来引用,但有提到的例外情况。
进一步澄清一下:如果有的话,我应该写“et al.”超过三涉及的作者;如果少于四位,我应该用斜线将他们的姓氏分开,例如
(AUTHOR1/AUTHOR2/AUTHOR3 YEAR: PAGES)
我进一步挖掘了 natbib 文档,发现
\setcitestyle{notesep={: },round,aysep={},yysep={;}}
使用“\citep*”命令时,它将替换逗号,但仍然不会替换斜线
编辑2:为了避免进一步混淆,这里有一个它应该如何显示的示例:
必须首先想象一个存在的意义(Schell/Hill/Esser 2011:132)。
答案1
我猜你当前加载的natbib
包带有选项authoryear
和round
。你需要运行
\setcitestyle{aysep={}, notesep={:\space}}
以便 (a) 删除逗号作为作者和年份组之间的分隔符,以及 (b) 让分号作为年份和注释组之间的分隔符。
作者姓氏之间的分隔符由您采用的参考书目样式决定,但目前您还没有告诉我们有关它的任何信息。
\documentclass{article} % or some other suitable document class
%% create a test bib file "on the fly":
\begin{filecontents}[overwrite]{mybib.bib}
@misc{aa:3001, author = "Anna Atkins",
title = "Thoughts", year = 3001}
\end{filecontents}
\usepackage[authoryear,round]{natbib}
\setcitestyle{aysep={}, notesep={:\space}} % <-- new
\bibliographystyle{plainnat} % or some other suitable bibligraphy style
\begin{document}
\noindent
\citep[pp.\ 3--5]{aa:3001}
\bibliography{mybib}
\end{document}