我希望我的参考书目显示姓氏在名字之前,而不是名字在姓氏之前。如何在文章文档类、natbib 引文管理包和plainnat
参考书目样式中执行此操作?我是否必须更改 bibtex 文件中的条目,或者是否有命令可以执行此操作?
到目前为止,我的 bibtex 条目如下所示:
@article{battin2009boundless,
title={The boundless carbon cycle},
author={Battin, Tom J and Luyssaert, Sebastiaan and Kaplan, Louis A and Aufdenkampe, Anthony K and Richter, Andreas and Tranvik, Lars J},
journal={Nature Geoscience},
volume={2},
number={9},
pages={598--600},
year={2009},
publisher={Nature Publishing Group}
}
我怎样才能将其改为‘Battin,TJ...’?
以下(希望)是我的最低限度的工作示例:
\documentclass[12pt]{article}
\usepackage[round]{natbib}
\usepackage[nottoc,numbib]{tocbibind}
\begin{document}
\cite{battin2009boundless}
\bibliographystyle{plainnat}
\bibliography{mybib}
\end{document}
bibtex 文件:
@article{battin2009boundless,
title={The boundless carbon cycle},
author={Battin, Tom J and Luyssaert, Sebastiaan and Kaplan, Louis A and Aufdenkampe, Anthony K and Richter, Andreas and Tranvik, Lars J},
journal={Nature Geoscience},
volume={2},
number={9},
pages={598--600},
year={2009},
publisher={Nature Publishing Group}
}
答案1
您需要更改参考书目样式文件中的一行以实现格式化目标。我建议您按以下步骤操作:
在您的 TeX 发行版中找到该文件
plainnat.bst
。复制此文件,并将副本命名为 。plainnat-reversed.bst
(不要直接编辑 TeX 发行版的原始文件。在文本编辑器中打开文件
plainnat-reversed.bst
。你用来编辑 tex 文件的文本编辑器程序就可以了。在文件中
plainnat-reversed.bst
,找到函数format.names
。(它在我的文件副本中从第 216 行开始。)在此函数中,找到以下行:
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
将此行更改为
{ s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't :=
如果您还想将名字截断为其首字母,请将行更改为
{ s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't :=
将文件保存
plainnat-reversed.bst
在主 tex 文件所在的目录中或 BibTeX 搜索的目录中。如果选择第二个选项,请确保适当更新 TeX 发行版的文件名数据库。在您的主 tex 文件中,将指令更改
\bibliographystyle{plainnat}
为\bibliographystyle{plainnat-reversed}
。再运行 LaTeX、BibTeX 和 LaTeX 两次,以完全传播所有更改。
祝您 BibTeX 愉快!
完整的 MWE:
\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@article{battin2009boundless,
title={The boundless carbon cycle},
author={Battin, Tom J. and Luyssaert, Sebastiaan and Kaplan, Louis A. and Aufdenkampe, Anthony K. and Richter, Andreas and Tranvik, Lars J.},
journal={Nature Geoscience},
volume={2},
number={9},
pages={598--600},
year={2009},
publisher={Nature Publishing Group}
}
\end{filecontents}
\documentclass[12pt]{article}
\usepackage[round]{natbib}
\bibliographystyle{plainnat-reversed}
\begin{document}
\cite{battin2009boundless}
\bibliography{mybib}
\end{document}
答案2
你可以模仿类似的风格biblatex
\documentclass{article}
\usepackage{filecontents} %only for this example
\begin{filecontents}{\jobname.bib}
@article{battin2009boundless,
title={The boundless carbon cycle},
author={Battin, Tom J and Luyssaert, Sebastiaan and Kaplan, Louis A and Aufdenkampe, Anthony K and Richter, Andreas and Tranvik, Lars J},
journal={Nature Geoscience},
volume={2},
number={9},
pages={598--600},
year={2009},
publisher={Nature Publishing Group}
}
\end{filecontents}
\usepackage[%
style=authoryear,
giveninits=true,
natbib=true,
maxbibnames=99,
uniquename=init
]{biblatex}
\DeclareNameAlias{sortname}{family-given}
\renewcommand*{\multinamedelim}{\addcomma\space}
\renewcommand*{\finalnamedelim}{\addcomma\space}
\renewcommand*{\nameyeardelim}{\addcomma\space}
\setlength{\bibitemsep}{\baselineskip}
\renewbibmacro{in:}{}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
(如果页码等的精确格式对您来说很重要,那么可以完全按照您的示例进行操作,只需做一些额外的工作)