首先我想知道为什么这些包在一起工作时会发生冲突。如果我不使用biblatex
它,就不会有任何问题,但如果我使用它,那么这些包将不再起作用。
梅威瑟:
\documentclass[journal,twoside]{IEEEtran}
\usepackage[style=ieee,backend=biber]{biblatex}
\usepackage[hyphens]{url}
\usepackage[shortlabels]{enumitem}
\addbibresource{references.bib}
\begin{document}
I have cited this document \cite{Smith:2012qr}
\printbibliography
\end{document}
如果需要的话,还有reference.bib
文件:
@BOOK{Smith:2012qr,
title = {{O}nly a {T}est.}
}
预防错误:
\documentclass[journal,twoside]{IEEEtran}
%\usepackage[style=ieee,backend=biber]{biblatex}
\usepackage[hyphens]{url}
\usepackage[shortlabels]{enumitem}
%\addbibresource{references.bib}
\begin{document}
I have cited this document %\cite{Smith:2012qr}
%\printbibliography
\end{document}
问题:
- 是什么导致了这个问题?
- 这个问题该如何解决?
答案1
问题是biblatex
已经加载url
包,但没有hyphens
选项。因此,如果您之后尝试使用此选项(再次)加载它,LaTeX 会给出相应的错误消息。更改加载这两个包的顺序可以解决问题:
\documentclass[journal,twoside]{IEEEtran}
\usepackage[hyphens]{url}
\usepackage[style=ieee,backend=biber]{biblatex}
\usepackage[shortlabels]{enumitem}
\addbibresource{references.bib}
\begin{document}
I have cited this document \cite{Smith:2012qr}
\printbibliography
\end{document}