如何从 Sigconf、ACM-Reference-Format 中没有日期的杂项条目中删除 (nd)?

如何从 Sigconf、ACM-Reference-Format 中没有日期的杂项条目中删除 (nd)?

我正在尝试删除(n.d)引文中出现的那个。

以下是我的 MWP。

\documentclass[sigconf]{acmart}
\usepackage{filecontents}
\begin{filecontents}{ref.bib}
@misc{google,
  title={Google},
  howpublished={\url{https://google.com}},
  author={Google}
}
\end{filecontents}
\begin{document}

Something to cite~\cite{google}.

\bibliographystyle{ACM-Reference-Format}
\bibliography{ref.bib}

\end{document}

我尝试包含以下代码,例如来自回答之前\begin{document}。然而,我得到未定义控制序列\DeclareLabeldate和 的错误\field

\DeclareLabeldate[online]{%
  \field{date}
  \field{year}
  \field{eventdate}
  \field{origdate}
  \field{urldate}
}

讨论是否暗示可能需要进行更多调整?

答案1

最简单的解决方案是使用 biblatex。文件ACM-Reference-Format.bbx定义以下宏:

\newbibmacro*{year}{%
  \iffieldundef{year}%
    {\printtext{[n.\ d.]}}%
    {\printfield{year}}%
}

幸运的是,我们可以使用renewbibmacro以下方式重新定义该宏:

\renewbibmacro*{year}{%
  \iffieldundef{year}%
    {}% We omitted the default value "[n. d.]" of ACM here!
    {\printfield{year}}%
}

结果,出现了以下 biblatex 记录:

@online{speedtest1,
  title = {{SQLite}, speedtest1},
  url   = {https://sqlite.org/cpu.html}
}

不包含日期的渲染:

biblatex 引用在省略日期时没有默认值

相关内容