不断变化的文档的 BibTeX 条目

不断变化的文档的 BibTeX 条目

我想引用每年都会发布新版本的程序文档。

@INPROCEEDINGS{FoobarReference,
  author = {Smart Guy},
  title = {The Foo/Bar Reference Manual},
  booktitle = {},
  year = {1999},
  publisher = {}
}

更改年份就够了吗,或者这是对一位博学学者的期望吗?本文档仅以 pdf 形式存在,并未出版和印刷。

答案1

year您可以在文档中设置的字段中使用宏。

\begin{filecontents*}{\jobname.bib}
@manual{FoobarReference,
  author = {Smart Guy},
  title = {The Foo/Bar Reference Manual},
  year = {\foobaryear},
}
\end{filecontents*}

\documentclass{article}

\newcommand{\foobaryear}{2015}

\begin{document}

The manual is \cite{FoobarReference}.

\bibliographystyle{plain}
\bibliography{\jobname}

\end{document}

因此您不需要修改文件.bib。请注意,类型@inproceedings不适合这种引用:选择@manual@book

请注意,filecontents*环境只是为了保持示例的自包含,您将使用带有单独.bib文件的标准方法。

在此处输入图片描述

如果你正在使用natbib,则需要进行一些破解:

\begin{filecontents*}{\jobname.bib}
@manual{FoobarReference,
  author = {Smart Guy},
  title = {The Foo/Bar Reference Manual},
  year = {\foobaryear},
}
\end{filecontents*}

\documentclass{article}
\usepackage[authoryear]{natbib}

\newcommand{\foobaryear}{2015}

\let\oribibitem\bibitem
\def\bibitem[#1(#2)]{%
  \begingroup\edef\x{\endgroup
    \noexpand\oribibitem[\unexpanded{#1}(#2)]%
  }\x
}


\begin{document}
The manual is \cite{FoobarReference}.

\bibliographystyle{plainnat}
\bibliography{\jobname}

\end{document}

相关内容