我一直使用常规 \cite 命令来引用。但现在我使用了“natbib”包,而不是 \citep 和 \citet,但这总是在它创建的 natbib.sty 文件中出现错误。我还收到错误“命令 \bibhang 已定义”。
有人对此有经验吗?
\documentclass[a4paper,12pt]{report}
\usepackage{graphicx}
\usepackage[backend=biber]{biblatex}
\usepackage{algorithm}
\usepackage{caption}
\usepackage[comma,authoryear]{natbib}
\bibliographystyle{ieeetr}
\addbibresource{bib/literature.bib}
\begin{document}[a4paper,12pt]
\chapter*{Declaration}
\chapter*{Abstract}
\chapter*{List of abbrevations and symbols}
\tableofcontents
\chapter{Introduction}
as mentioned in \citet{england2002}
\section{Insurance industry}
\section{IBNR Claims and Claims Reserving}
\section{Link with GLM}
\section{Robustification and Problems}
\section{Applications}
\chapter{Body}
\chapter{Conclusion}
\printbibliography
\end{document}
使用此.bib 文件:
@article{england2002,
title={Stochastic claims reserving in general insurance},
author={England, Peter D and Verrall, Richard J},
journal={British Actuarial Journal},
volume={8},
number={03},
pages={443--518},
year={2002},
publisher={Cambridge Univ Press}
}
答案1
您的示例代码存在几个问题。
你应该立即开始移除这两个参数都来自
document
环境。指令应为\begin{document}
而不是
\begin{document}[a4paper,12pt]
。document
环境确实不是document
接受参数。向环境提供参数(可选或其他)不会带来任何好处。不要同时加载
biblatex
包和natbib
包。选择其中一个,但并非两者兼而有之。假设你想继续
natbib
(尽管@Johannes_B 有学识渊博的意见……),你需要观察ieeetr
参考书目风格是不是与作者年份样式的引文标注兼容。因此,您应该使用natbib
选项numbers
和加载包comma
,不是authoryear
和comma
。不要忘记删除指令\addbibresource{bib/literature.bib}
并替换\printbibliography
为\bibliography{bib/literature}
-- 注意:没有文件扩展名。顺便说一句,使用数字样式的引用标注时,\citet
会给出警告信息;请改用\cite
。如果您确实需要或想要作者年份样式的引文标注以及 IEEE 样式的参考文献条目,我建议您切换到
IEEEtranN
参考书目样式。如果您选择这种方式,请务必numbers
在加载时省略该选项natbib
。您的(稍微精简的)工作示例的输出如下。
\RequirePackage{filecontents}
\begin{filecontents}{lit.bib}
@article{england2002,
title = {Stochastic claims reserving in general insurance},
author = {England, Peter D and Verrall, Richard J},
journal = {British Actuarial Journal},
volume = {8},
number = {03},
pages = {443--518},
year = {2002},
publisher= {Cambridge University Press}
}
\end{filecontents}
\documentclass[a4paper,12pt]{article} % just for this example
\usepackage[comma]{natbib}
\bibliographystyle{IEEEtranN}
\begin{document}
as mentioned in \citet{england2002}, \dots
\bibliography{lit}
\end{document}