我想使用biblatex
而不是natbib
类。根据elsarticle
有一个选项(使用)nonatibib
elsarticle.cls文档。
3p
当我想将它与和5p
选项(它们允许使用双列样式)一起使用时出现了问题。
我已经看到了一个解决方案这答案,但是
- 已经完成了,没有
nonatbib
选择, - 并且不建议在出版物中使用它。
不过,我想用它来出版。
这是我的工作示例:
\documentclass[nonatbib,5p,twocolumn]{elsarticle}
\makeatletter
\let\c@author\relax
\makeatother
\begin{document}
hello world!
\end{document}
序言中的三行是根据这个答案但我仍然收到这个错误
未定义控制序列。\global\bibsep
您不能使用带有“字符 =”的前缀。\global\bibsep=
缺少 \begin{document}。\global\bibsep=
答案1
警告!除非爱思唯尔编辑或期刊工作人员明确告知您,我强烈推荐反对用于
biblatex
向 Elsevier 提交论文(与elsearticle
或任何其他类)。elsarticle
加载natbib
并包含匹配的 BibTeX 样式是有原因的。的工作流程biblatex
与经典 BibTeX 书目的工作流程完全不同。一般来说,很少有出版商接受biblatex
。另请参阅Biblatex:向期刊投稿。只需使用
natbib
参考书目中推荐的样式之一即可。您不太可能需要任何biblatex
高级功能来满足期刊要求。而且添加在该期刊的出版物中不常见的花哨内容可能不是一个好主意(期刊喜欢一致性)。
买者自负
有三个例子
\global\bibsep=0pt
在elsarticle.cls
。
\bibsep
不幸的是,当未定义时,这些行会因您描述的错误而失败。通常\bibsep
由 定义natbib
,但由于 MWE 不加载该包(由于nonatbib
),因此长度最终未定义。
如果该类支持不加载natbib
它,nonatbib
则可能应该进行保护分配以\bibsep
确保它仅在实际定义时使用该宏。
这应该作为一个错误报告给elsarticle
维护人员。
与此同时,以下 MWE 再次编译成功
\newlength{\bibsep}
\documentclass[nonatbib,5p,twocolumn]{elsarticle}
\makeatletter
\let\c@author\relax
\makeatother
\begin{document}
hello world!
\end{document}
因为\newlength{\bibsep}
确保长度是定义的。