我正在使用 Sharelatex 撰写论文,我想将natbib
软件包和authordate3
样式用于参考书目。出于某种原因,在引用有多个作者的参考书目条目时,我在“et al.”和年份之间看到一个空格。
这是一个简单的例子:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{natbib}
\bibliographystyle{authordate3}
\begin{filecontents}{biblio.bib}
@book{jon99,
author = "Tom Jones and
Jack Smith and
John Doe",
title = "Wonderful Book",
year = "1999"
}
\end{filecontents}
\begin{document}
\citep{jon99}
\bibliography{biblio.bib}
\end{document}
在 Sharelatex 中,结果为:
现在,我四处寻找,但唯一可行的解决方案是通过操作文件authordate3.bst
(如建议的那样这里),显然我无法访问它,因为我的机器上没有安装 LaTeX。
我还尝试过将作者和年份之间的标点符号改为\unskip
使用\setcitestyle{aysep={\unskip,}}
,但不幸的是,这没有奏效。只需添加一个负空格(例如使用\setcitestyle{aysep={\kern-ex1,}}
)即可修复多个引用的空格,但将逗号放在单个引用的作者姓名上方。
答案1
这有点像家庭自制的解决方案,但我authordate3.bst
在文本编辑器中打开了文件,并将出现的三个替换{\em et~al.\ }
为{\em et~al.}
。我的authordate3.bst
位于此处/usr/local/texlive/2014/texmf-dist/bibtex/bst/beebe/authordate3.bst
。
完成此操作后,我再次运行了您的代码,一切正常(我可能创建了一些我不知道的可怕问题?)。
下面的示例是使用 Martim 上面提供的代码生成的。