8

我正在使用 ACM 参考格式。我需要根据它们在论文中出现的顺序对参考进行排序,所以我尝试使用biblatex如下包:

\usepackage[sorting=none]{biblatex}
\bibliographystyle{ACM-Reference-Format}

但后来我收到以下错误:

在此处输入图像描述

有什么我想念的吗?谢谢!

4

1 回答 1

14

默认情况下,acm 类打开,natbib它不兼容biblatex. 幸运的是,有一个选项可以关闭它。然后,您可以biblatex按如下方式使用,包括您的sorting=none选项:

\documentclass[sigconf,natbib=false]{acmart}

\usepackage[style=ACM-Reference-Format,backend=bibtex,sorting=none]{biblatex}
\addbibresource{sample-bibliography.bib}

并放

\printbibliography

在文档中您要打印文档的位置。

这样做sample-sigconf.tex并在参考书目中添加一个\nocite{*}结果,如下所示,以 Lamport 作为第一个参考,而不是作者以 A 开头的文章。

样本输出

这是一个证明这一点的最小文档:

\documentclass[sigconf,natbib=false]{acmart}

\usepackage[style=ACM-Reference-Format,backend=bibtex,sorting=none]{biblatex}
\addbibresource{sample-bibliography.bib}
\begin{document}
\title{Contribution title}
\author{A. N. Author}
\maketitle

\textcite{Kosiur01} and \textcite{Cohen07}

\printbibliography

\end{document}

其中sample-bibliography.bib包含

@Article{Cohen07,
  author        = "Sarah Cohen and Werner Nutt and Yehoshua Sagic",
  title         = "Deciding equivalances among conjunctive aggregate queries",
  journal       = JACM,
  articleno     = "5",
  numpages      = "50",
  volume        = "54",
  number        = "2",
  month         = apr,
  year          = "2007",
  doi           = "10.1145/1219092.1219093",
  url           = "http://doi.acm.org/10.1145/1219092.1219093",
  acmid         = "1219093",
  note          = "",
}

@Book{Kosiur01,
  author =       "David Kosiur",
  title =        "Understanding Policy-Based Networking",
  publisher =    "Wiley",
  year =         "2001",
  address =      "New York, NY",
  edition =      "2nd.",
  editor =       "",
  volume =       "",
  number =       "",
  series =       "",
  month =        "",
  note =         "",
}

之后给予pdflatex, bibtex, pdflatex, pdflatex

样本输出

删除该sorting=none选项会导致参考书目中的顺序相反。

切换到默认后端biber而不是bibtex将使您可以访问biblatex.

于 2018-01-24T09:15:25.867 回答