我正在使用 Overleaf,与我的 bib 相关的序言是:
\usepackage{natbib}
\bibliographystyle{plainnat}
在文档中,我想以 的形式调用引用(Hoek, 2007)
。我设法做到了,但是输入文本有点长而且很烦人:
(\citeauthor{hoek2007}, \citeyear{hoek2007})
我对命令还不熟悉,我尝试了一下,但 Overleaf 命令的解释让我看不懂。我尝试了以下方法:
\newcommand{\citeay}[1]{(\citeauthor{#1}, \citeyear{#1})}
但的结果\citeay{hoek2007}
只是[1]
。
答案1
但结果
\citeay{hoek2007}
只是[1]
。:-(
您需要使用以下natbib
选项加载包:authoryear
round
\usepackage[authoryear,round,<other options>]{natbib}
在文档中,我想要以 的形式 [创建引用标注]
(Hoek, 2007)
。
无需创建您调用的宏\citeay
。只需使用 natbib 的\citep
宏(我猜是“括号式引用调用”的缩写)。
答案2
我本来想在评论中输入这段内容,但我不知道如何在 StackExchange 上格式化评论。
在编写 MWE 时,我发现了问题的根源:
\documentclass{article}
%\documentclass{revtex4-1}
\usepackage[utf8]{inputenc}
\usepackage[authoryear,round]{natbib}
\bibliographystyle{plainnat}
\begin{document}
Some words and stuff. \citep{hoek2007}.
\bibliography{sample}
\end{document}
使用时\documentclass{article}
\citep{...}
会产生所需的(Hoek, 2007)
。但是当我\documentclass{revtex4-1}
出于某种原因使用时,它会覆盖它(我之所以使用此文档类,是因为我使用了模板)。因此,根据 Overleaf 上的错误消息,至少有一件事发生了冲突:
LaTeX Error: Option clash for package natbib.