(经典论文)参考书目中的多位作者:删除“and”之前的逗号

(经典论文)参考书目中的多位作者:删除“and”之前的逗号

使用 Classicthesis(版本 4.2)时,我发现参考书目默认在“and”前打印逗号,结果如下所示。

[22] Andrew McAfee、Erik Brynjolfsson、Thomas H Davenport、DJ Patil 和 Dominic Barton。“大数据。”《管理革命》。《哈佛巴士评论》90.10(2012 年),第 61-67 页。

使用 classicthesis 模板作为 MWE(numeric-comp用于包biblatex),如何解决这个问题?

这个问题,解释了如何在类似情况下删除“et. al”后的逗号,但没有帮助。

然而,阅读这个问题,我得出的结论是 classicthesis 使用了一种名为 Natbib 的东西,我需要找到一个 .bst 文件并进行相应的编辑。但是,我无法在我的目录中找到这样的文件……?

答案1

由于您使用的是biblatex,因此有两种方法可以摆脱牛津逗号。

使用不同的本地化

您可以使用删除牛津逗号的本地化。american(因此也是语言english环境 - 从技术上讲是反过来的,但没关系)有\def\finalandcomma{\addcomma},所以如果列表中有三个或更多项目,它们会在“and”之前打印逗号。语言环境britishaustralian删除牛津逗号。

因此,您可以请求british英语,babel而不仅仅是english但请记住,这也会产生其他影响。因此,这只是当您应该(或至少可以)已经使用不同的本地化时的一个选择。

\documentclass[british]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=authoryear, maxbibnames=999]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{aksin,companion,baez/article}
\printbibliography
\end{document}

重新定义\finalandcomma\finalandsemicolon

如果你想继续使用相同的本地化,并删除牛津逗号,请使用

\DefineBibliographyExtras{english}{%
  \let\finalandcomma=\empty
  \let\finalandsemicolon=\empty
}

其中\finalandcomma是牛津逗号,\finalandsemicolon是代替逗号的分号的等价物。 有必要将其放入 中\DefineBibliographyExtras,因为我们已经看到\finalandcomma\finalandsemicolon是特定于语言的命令。

\documentclass[english]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear,maxbibnames=999]{biblatex}
\addbibresource{biblatex-examples.bib}

\DefineBibliographyExtras{english}{%
  \let\finalandcomma=\empty
  \let\finalandsemicolon=\empty
}

\begin{document}
\cite{aksin,companion,baez/article}
\printbibliography
\end{document}

相关内容