4

I am trying to make IEEEtranbib work with bibentry and hyperref, but I am stuck.

MWE

\documentclass[conference]{IEEEtran/IEEEtran}

\usepackage{bibentry}
\makeatletter\let\saved@bibitem\@bibitem\makeatother
\usepackage{hyperref}
\makeatletter\let\@bibitem\saved@bibitem\makeatother
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@IEEEtranBSTCTL{IEEEexample:BSTcontrol,
  CTLuse_forced_etal       = "yes",
  CTLmax_names_forced_etal = "4",
  CTLnames_show_etal       = "2",
  CTLdash_repeated_names   = "no"
}
@article{myentry,
    author  = "George D. Greenwade",
    title   = "The {C}omprehensive {T}ex {A}rchive {N}etwork ({CTAN})",
    year    = "1993",
    journal = "TUGBoat",
    volume  = "14",
    number  = "3",
    url     = "https://dwqdhqwjkdhqkjdhqd.dwqdq/djkqwb",
    pages   = "342--351"
}
\end{filecontents}
\newcommand{\fullcite}[1]{\begin{NoHyper}\bibentry{#1}\end{NoHyper}}

\begin{document}

\bstctlcite{IEEEexample:BSTcontrol}

\nobibliography*

A citation: \cite{myentry}

Inline entry: \begin{NoHyper}\bibentry{myentry}\end{NoHyper}

\bibliographystyle{IEEEtranbib/IEEEtran}
\bibliography{IEEEtranbib/IEEEabrv,\jobname}{}

\end{document}

Error when compiling:

Runaway argument?
\BIBentryALTinterwordspacing G.~D. Greenwade, ``The {C}omprehensive {\ETC.
! Paragraph ended before \BR@c@bibitem was complete.
<to be read again> 
                   \par 
l.30 

I have tried tons of combinations of extra renewcommand or makeatletter, such as:

\makeatletter
\renewcommand\bibentry[1]{\nocite{#1}{\frenchspacing
     \@nameuse{BR@r@#1\@extra@b@citeb}}}
\makeatother

Could someone provide a simple example on how to make IEEEtranbib work with bibentry and hyperref when bib entries have url fields?

  • 1
    What exactly are you trying to achieve by setting up a macro called \fullcite that invokes \bibentry? What's wrong about "ordinary" \cite-type commands? – Mico Mar 15 '17 at 17:58
  • 1
    @Mico I want a full citation in the text, which is what bibentry does, and the NoHyper environment is to avoid hyperref linking to the bibentry instead of the reference (found on another question here). I am open to any suggestion! – Holt Mar 15 '17 at 18:05
  • I suspect it's due to the fact that the URL is too long and it cannot hyphenate it. Moreover, it seems that bibentry does not care whether the URL is enclosed in \href, \hyperlink, \url, \hyperref. – Sussch May 26 '19 at 16:55
  • Found a discussion about the issue at sourceforge.net/p/bibdesk/mailman/message/9168466 – Sussch May 26 '19 at 17:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.