我正在尝试将我的文档从 bibtex 转换为 biblatex 以使用那里的一些新功能。
我收到此错误:
!LaTeX 错误:命令 \bibhang 已经定义。
我认为这是由于 biblatex 和我的其他软件包之一之间的冲突引起的,但我无法找到它。
这是我正在使用的软件包的一个示例:
\documentclass[journal=jacsat,manuscript=article]{achemso}
\setkeys{acs}{usetitle=true}
\usepackage[T1]{fontenc}
\usepackage{dcolumn}
\usepackage{subfigure}
\usepackage{amsmath}
\usepackage{xr}
\usepackage{placeins}
\usepackage{setspace}
\usepackage[table,xcdraw]{xcolor}
\usepackage[backend=biber,style=chem-acs,maxbibnames=100]{biblatex}
\addbibresource{refs.bib}
\externaldocument{supporting-info}
\title{Title of my paper}
\author{Name}
\affiliation{University}
\date{\today}
\begin{document}
text text text
\printbibliography
\end{document}
我尝试从 achemso.sty 文件中删除引用 natbib 的行,但问题并未得到解决。
来自 achemso.sty:
%%\AtBeginDocument{
%% \def\nmv@natbib@detect{%
%% \ifNAT@super
%% \expandafter\acs@nmv@activate
%% \else
%% \expandafter\acs@autonote
%% \fi
%% }
%%}
\ifacs@super
%%\RequirePackage[sort&compress,numbers,super]{natbib}
\else
%%\RequirePackage[sort&compress,numbers,round]{natbib}
\def\citenumfont{\textit}
\fi
编辑:我应该注意到该程序确实生成了 PDF,但它给了我一个错误,我正试图删除它。
答案1
您正在使用achemso
document 类。该类加载natbib
,这与 不兼容biblatex
。
如果您要提交给不应使用的 ACS biblatex
,则应使用.bst
捆绑的样式achemso
(https://ctan.org/tex-archive/macros/latex/contrib/achemso)。
如果您不打算提交,只想将其用于个人文档,则需要一种方法来停止achemso.cls
加载natbib
。这应该可以通过以下方法实现在 elsarticle 中用 biblatex 代替 natbib,如何使用?。您不应直接修改achemso.cls
。但如果您不打算提交给 ACS,您也可以简单地使用另一个文档类。