
Estou recebendo um erro ao usar pacotes hyperref
e bibentry
juntos. O erro é:
./Test.bbl:1: LaTeX Error: Command \BR@bibitem already defined.
Or name \end... illegal, see p.192 of the manual.
Apontando para l.1 \begin{thebibliography}{2}
, que é, obviamente, a primeira linha do Text.bbl
arquivo.
Test
é o nome do meu arquivo MWE:
\documentclass{article}
\usepackage[pagebackref=true,linktocpage]{hyperref}
\usepackage[square]{natbib}
\usepackage{bibentry}
\nobibliography*
\begin{document}
\section{Introduction}
Look ma, inline bibtex entries:
\begin{itemize}
\item \begin{NoHyper}\bibentry{McCune:2015}\end{NoHyper}
\item \begin{NoHyper}\bibentry{Deshpande:2018aa}\end{NoHyper}
\end{itemize}
\section{And now for something completely different}
Lorem ipsum yada yada,
also see \citep{McCune:2015},
yada yada, and \citep{Deshpande:2018aa} too.
\bibliographystyle{abbrvnat}
\bibliography{testref}
\end{document}
O testref.bib
arquivo é o seguinte:
@STRING{COMPSUR = {ACM Comput. Surv.}}
@book{Deshpande:2018aa,
Author = {Deshpande, Amol and Gupta, Amarnath},
Date-Added = {2017-04-12 14:27:29 +0000},
Date-Modified = {2017-04-12 14:28:23 +0000},
Note = {Forthcoming},
Publisher = {ACM Books},
Title = {Principles of Graph Data Management and Analytics},
Year = {2018}}
@article{McCune:2015,
Author = {McCune, Robert Ryan and Weninger, Tim and Madey, Greg},
Journal = COMPSUR,
Number = {2},
Numpages = {39},
Pages = {25:1--25:39},
Title = {Thinking Like a Vertex: A Survey of Vertex-Centric Frameworks for Large-Scale Distributed Graph Processing},
Url = {http://doi.acm.org/10.1145/2818185},
Volume = {48},
Year = {2015}}
Alguma sugestão do que posso estar fazendo de errado? Se eu excluir o pacote hyperref, as coisas funcionarão. Eu li artigos aqui, mas as soluções sugeridas não ajudam - uma delas foi embrulhar o \bibentry
que NoHyper
tenho no MWE (na verdade, o MWE é retirado de um deles).
Responder1
Carregue hyperref
depois dos outros pacotes, vejaQuais pacotes devem ser carregados após o hyperref em vez de antes?para exceções.
\begin{filecontents}{testref.bib}
@STRING{COMPSUR = {ACM Comput. Surv.}}
@book{Deshpande:2018aa,
Author = {Deshpande, Amol and Gupta, Amarnath},
Date-Added = {2017-04-12 14:27:29 +0000},
Date-Modified = {2017-04-12 14:28:23 +0000},
Note = {Forthcoming},
Publisher = {ACM Books},
Title = {Principles of Graph Data Management and Analytics},
Year = {2018}}
@article{McCune:2015,
Author = {McCune, Robert Ryan and Weninger, Tim and Madey, Greg},
Journal = COMPSUR,
Number = {2},
Numpages = {39},
Pages = {25:1--25:39},
Title = {Thinking Like a Vertex: A Survey of Vertex-Centric Frameworks for Large-Scale Distributed Graph Processing},
Url = {http://doi.acm.org/10.1145/2818185},
Volume = {48},
Year = {2015}}
\end{filecontents}
\documentclass{article}
\usepackage[square]{natbib}
\usepackage{bibentry}
\nobibliography*
\usepackage[pagebackref=true,linktocpage]{hyperref}
\begin{document}
\section{Introduction}
Look ma, inline bibtex entries:
%
\begin{itemize}
\item \begin{NoHyper}\bibentry{McCune:2015}\end{NoHyper}
\item \begin{NoHyper}\bibentry{Deshpande:2018aa}\end{NoHyper}
\end{itemize}
\section{And now for something completely different}
Lorem ipsum yada yada,
also see \citep{McCune:2015},
yada yada, and \citep{Deshpande:2018aa} too.
\bibliographystyle{abbrvnat}
\bibliography{testref}
\end{document}
Responder2
Carregar o hyperref após os outros pacotes pode não ser suficiente. OhiperrefO manual sugere a seguinte solução alternativa (altere o "banco de dados" com seu próprio arquivo bib):
\makeatletter
\let\saved@bibitem\@bibitem
\makeatother
\usepackage{bibentry}
\usepackage{hyperref}
\begin{document}
\begingroup
\makeatletter
\let\@bibitem\saved@bibitem
\nobibliography{database}
\endgroup