次のような引用を作成しようとしています:
この本(Charles、1985年、Smith、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) によって処理されます。