如何将 biblatex 与 Wiley 模板一起使用?

如何将 biblatex 与 Wiley 模板一起使用?

我想nejm在我的文档中使用 bib 样式来获得类似这种样式的参考书目。

在此处输入图片描述

但我犯了很多错误!我应该在代码中更改/添加什么?

\documentclass[num-refs]{wiley-article}

% Add additional packages here if required
\usepackage{siunitx}
\usepackage[super]{nth}
\usepackage{amsmath}
\usepackage{rotating}
\usepackage{multirow}
\usepackage{booktabs}
\usepackage{float}

\usepackage[backend=biber,style=nejm]{biblatex}
\addbibresource{sample.bib}

\begin{document}
...
\printbibliography
...
\end{document}

产生以下错误消息

/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty, line 462 
LaTeX Error: Command \bibhang already defined.
Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation. Type  H
<return>  for immediate help.  ...                                    

l.462 \newlength{\bibhang}
Your command was ignored. Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it.


/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty, line 9050
LaTeX Error: Command \citename already defined.

Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation. Type  H
<return>  for immediate help.  ...                                    

l.9050 ...d*{\citename}{\blx@citexpunct{citename}}
Your command was ignored. Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it.


/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.def, line 269
LaTeX Error: Command \bibfont already defined.

Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation. Type  H
<return>  for immediate help.  ...                                    

l.269 ...ommand*{\bibfont}{\normalfont\normalsize}
Your command was ignored. Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it.



/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.def, line 2094
LaTeX Error: Command \Citeauthor already defined.

Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation. Type  H
<return>  for immediate help.  ...                                    

l.2094 ...e\citeauthor*}{\bibsentence\citeauthor}}
Your command was ignored. Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it.


main.tex, line 68
Package biblatex Error: Incompatible package
'natbib'.

See the biblatex package documentation for explanation. Type  H
<return>  for immediate help.  ...                                    

The 'natbib' package and biblatex are incompatible.

答案1

wiley-article.cls似乎是一个难以捉摸的文档类。我在 CTAN 或其他地方找不到官方下载。该类似乎是由 Overleaf 为 Wiley 开发的。经过一番调整,我可以wiley-article.cls, v1.1, 2017/05/26从 Overleaf 下载。(我从列出的期刊模板之一开始了一个新的 v1 项目https://overleaf.com/latex/templates/tagged/wiley-official然后可以下载所有相关文件,包括该.cls文件。)

wiley-article默认情况下会加载文档类natbib。有一个选项可以amsrefs改为加载,但据我所知,没有简单的方法可以同时摆脱它natbibamsrefs事实上,如果你看看最后一条错误消息

Package biblatex Error: Incompatible package 'natbib'.

问题很明显:biblatexnatbib都是参考书目/引文包,它们根本不兼容。例如Biblatex 仍然与 natbib 不兼容吗?正如指出的那样计算机人 在评论中或者biblatex 与 RevTeX 兼容吗?。顺便说一句,在较新版本中,biblatex最有用的错误(Incompatible package 'natbib')将被更早抛出,以便它会在 MWE 中首先出现,这应该会让事情变得更清晰一些。

使用高度定制的发布者类(例如)只有一个好理由wiley-article,即您想要向该发布者提交一篇文章。在这种情况下,强烈建议遵循发布者的所有说明并使用建议的(或编程到类中的)书目系统。在这种情况下,您最好使用类的num-refs选项和。事实上,很少有出版商能够处理与BibTeX 和(参见)natbib所需的不同工作流程。biblatexnatbibBiblatex:向期刊投稿)。

如果您不向 Wiley 期刊投稿,我强烈建议您不要使用他们的文档类。迟早您会想要偏离出版商类所规定的严格格式(事实上,这是您现在面临的问题),然后做出这些改变就会非常棘手。与出版商类相比,获取常用的普通文档类的帮助也容易得多。

理论上,可以“卸载”natbib或阻止其加载,例如是否可以使用已经加载 natbib 的类来加载 biblatex?如何在预制文档类/模板中从 Natbib 切换到 Biblatex?在 elsarticle 中用 biblatex 代替 natbib,如何使用?如何在预制文档类/模板中从 Natbib 切换到 Biblatex?,但我劝你不要尝试这么做。

相关内容