为什么以下内容没有按照哈佛风格设置引用?

为什么以下内容没有按照哈佛风格设置引用?

我正在尝试获取哈佛引用风格,但它仍然使用编号。

\documentclass{elsarticle}

\usepackage{natbib}


\bibliographystyle{dcu}

\begin{document}

\cite{xx}

\bibliography{a}


\end{document}

另外,我如何确保围兜的顺序符合姓氏的顺序?

答案1

elsarticle已加载natbib,除非选项另有说明nonatbib。此外,默认情况下会使用选项elsarticle加载– 除非文档类选项另有说明。natbibnumberauthoryear

所以

\documentclass[authoyryear]{elsarticle}

\bibliographystyle{dcu}

\begin{document}
\cite{incollection-full}

\bibliography{xampl}
\end{document}

会告诉elsarticle准备作者年份引文。然而,当我运行该 MWE 时,我收到两个错误消息

! Undefined control sequence.
l.1 \harvardpreambledefs
                        {%
? 
! Undefined control sequence.
l.4 \harvardpreambletext
                        {%
? 

这是因为dcu书目风格是harvard和 应该与 一起使用\usepackage{harvard}。但是该harvard包不能与 一起加载natbib,所以我们需要

\documentclass[nonatbib]{elsarticle}

\usepackage{harvard}
\bibliographystyle{dcu}

\begin{document}
\cite{incollection-full}

\bibliography{xampl}
\end{document}

有趣的是har2nat而不是harvard在这里是不够的。


但是如果你正在使用elsarticle你应该使用他们的书目样式,而不是其他随机样式,因此

\documentclass[authoryear]{elsarticle}

\bibliographystyle{elsarticle-harv}

\begin{document}
\cite{incollection-full}

\bibliography{xampl}
\end{document}

将是一个很多更好的主意。

相关内容