我正在尝试创建如下引用:
这些书(查尔斯,1985 年;史密斯,1989 年)都很棒。
通过使用包natbib
和
\begin{thebibliography}{99}
\bibitem[(Charles, 1985)]{Charles85}
\bibitem[(Smith, 1989)]{Smith89}
\end{thebibliography}{}
但该命令\citep{Charles85,Smith89}
似乎不起作用。
答案1
natbib
需要可选参数中的作者和年份信息\bibitem
采用特殊格式,以便可以解析。natbib.sty
在注释中解释可能的格式
% If author-year citations are selected, \bibitem must have one of the
% following forms:
% \bibitem[Jones et al.(1990)]{key}...
% \bibitem[Jones et al.(1990)Jones, Baker, and Williams]{key}...
% \bibitem[Jones et al., 1990]{key}...
% \bibitem[\protect\citeauthoryear{Jones, Baker, and Williams}{Jones
% et al.}{1990}]{key}...
% \bibitem[\protect\citeauthoryear{Jones et al.}{1990}]{key}...
% \bibitem[\protect\astroncite{Jones et al.}{1990}]{key}...
% \bibitem[\protect\citename{Jones et al., }1990]{key}...
% \harvarditem[Jones et al.]{Jones, Baker, and Williams}{1990}{key}...
问题中使用的格式
\bibitem[(Charles, 1985)]{Charles85}
不属于受支持的格式。让信息易于理解的最简单方法natbib
可能是删除括号,使其变为
\bibitem[Charles, 1985]{Charles85}
natbib
或者,您可以使用标准.bst
文件使用的格式
\bibitem[Charles(1985)]{Charles85}
总共
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{natbib}
\begin{document}
\citep{Charles85,Smith89}
\begin{thebibliography}{99}
\bibitem[Charles, 1985]{Charles85} Anne Charles: \emph{Title}. 1985
\bibitem[Smith, 1989]{Smith89} Jane Smith: \emph{Another Title}. 1989
\end{thebibliography}
\end{document}
.bib
话虽如此,使用文件和 BibTeX (或biblatex
和 Biber)通常更舒服:bibtex 与 biber 以及 biblatex 与 natbib 的比较) 而不是手册thebibliography
。条目可以更轻松地重复使用和重新设计,并且 BibTeX (或 Biber) 负责排序。