与 acmart 合作的 BibTeX 论文集

与 acmart 合作的 BibTeX 论文集

我正在使用 acmart 类,参考书目中的会议记录项目看起来很奇怪,例如,

[1] IEEE 1997. Proc. 12th Symposium on Logic in Computer Science. IEEE.

我尝试了几种变化,但都没有成功。

我想要的是类似这样的东西:

[X] IEEE. Proc. 12th Symposium on Logic in Computer Science, 1997.

(对于 X,我不太关心,但我猜应该按照 IEEE 作为作者进行排序)。

以下是一份 MEWB:

\documentclass{acmart}
\bibliographystyle{ACM-Reference-Format}
\citestyle{acmnumeric}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@proceedings{DBLP:conf/lics/1997,
  author = {},
  key = {LICS 1997},
  organization = {IEEE},
  year      = {1997},
  title     = {Proc.\ 12th Symposium on Logic in Computer Science},
}
\end{filecontents}

\begin{document}

\cite{DBLP:conf/lics/1997}

\bibliography{\jobname}

\end{document}

请问有什么提示吗?

答案1

首先:如果你想在 ACM 上发表一篇文章,你不应该对风格做任何改变,而应该按原样使用,或者你至少应该在做这样的改变之前询问编辑/出版商!通常编辑/出版商不会接受这样的改变并会撤消它们。

使用natbib(默认情况下使用acmart),您需要更改ACM-Reference-Format.bst。为此:

  • 在您的文档文件夹中复制ACM-Reference-Format.bst并命名,例如Non-ACM-Reference-Format.bst
  • 在文本编辑器中打开Non-ACM-Reference-Format.bst并搜索FUNCTION { proceedings }
  • 用以下方式替换整个函数

    FUNCTION { proceedings }
    {
      output.bibitem
      editor empty.or.unknown
        { organization output
          organization format.key output }  % gnp - changed from author format.key
        { format.editors output.nonnull }
      if$
      % author format.key output             % gnp - removed (should be either
      %                                        editor or organization
      % output.year.check                    % added (newapa); Schweinebacke: removed
      new.block
      format.btitle format.city "title" output.check        % jtb: added city
      new.sentence
      format.bvolume output
      format.number.series output
      new.sentence
      editor empty.or.unknown % schweinebacke: added
      { } % schweinebacke: added
      { % schweinebacke: added
        organization output
      }% schweinebacke: added
      if$ % schweinebacke: added
    
      % jtb: normal order: publisher, address
      publisher empty.or.unknown
         { }
         { "\bibinfo{publisher}{" publisher * "}" * output }
      if$
      address empty.or.unknown
         { }
         { "\bibinfo{address}{" address * "}" * output }
      if$
      fin.block
      output.issue.doi.coden.isxn.lccn.url.eprint.note
      new.block                        % schweinebacke: added
      output.year.check                % schweinebacke: added
      fin.entry
    }
    
  • 改变

    \bibliographystyle{ACM-Reference-Format}
    

    在您的文档中

    \bibliographystyle{Non-ACM-Reference-Format}
    
  • 再次运行bibtex并且pdflatex

结果是

在此处输入图片描述

注意:在我们这个时代,建议经常使用biblatex,因为您可以使用 更改参考书目而biblatex无需进行bst黑客攻击。要使用biblatexacmart您必须传递选项natbib=false。在这种情况下,您可以从标准数字样式开始,然后逐步更改条目的格式。

答案2

我想补充@Schweinebacke 的回答。

更改书目格式相对容易。但是,当您使用 ACM 等“官方”样式时,最好不要这样做。原因是,像 ACM 这样的出版商创建了自己的“内部样式”,并坚持要求遵循。这就是他们的样式被提供给作者的原因。更改这一点会破坏“官方”样式的目的。您可能更喜欢自己的格式,但如果您不想与出版商产生问题,请使用他们的格式。

一个有自尊心的出版商是不会允许同一本期刊或一本书中的两篇论文使用不同的格式的。

恐怕改变格式的正确方法是请求 ACM 改变他们的规范。这样我就可以轻松适应了。这不是一个技术问题,而是一个设计问题。

相关内容