Converter referências em links url-doi

Converter referências em links url-doi

Estou tentando atualizar meu currículo, mas o script que normalmente usava não está mais funcionando.

Meu currículo é baseado no modelo awesome-CV e usa o incrível cls. Porém, uma coisa que eu queria diferente da classe padrão era ter as referências como hiperlinks para os artigos, e para isso estava usando algo como este MWE:

\documentclass[11pt, a4paper]{awesome-cv}
\definecolor{darkblue}{rgb}{0.0,0.0,0.3}
\hypersetup{colorlinks,linkcolor=darkblue,urlcolor=darkblue}
\geometry{left=1.4cm, top=.8cm, right=1.4cm, bottom=1.8cm, footskip=.5cm}
\fontdir[fonts/]

\newbibmacro{string+doiurl}[1]{%
  \iffieldundef{doi}
    {\iffieldundef{url}
       {#1}
       {\href{\thefield{url}}{#1}}}
    {\href{https://doi.org/\thefield{doi}}{#1}}}

\makeatletter
\def\blx@driver#1{%
  \ifcsdef{blx@bbx@#1}
    {\usebibmacro{string+doiurl}{\csuse{blx@bbx@#1}}}
    {\ifcsdef{blx@bbx@*}
       {\blx@warning{%
          No driver for entry type '#1'.\MessageBreak
          Using fallback driver}%
        \usebibmacro{string+doiurl}{\csuse{blx@bbx@*}}}
       {\blx@error
          {No driver found}
          {I can't find a driver for the entry type
           '\abx@field@entrytype'\MessageBreak
           and there is no fallback driver either}}}}
\makeatother

\begin{filecontents}{references.bib}
@article{test,
title = {Book's title},
author = {Author, Some},
location = {The City},
publisher = {Publisher},
date = {2005},
}
\end{filecontents}

\addbibresource{references.bib}

%-------------------------------------------------------------------------------
\begin{document}

\begin{refsection}
    \nocite{test}
    \printbibliography[title={Journal Articles},
    heading=subbibliography]
\end{refsection}


%-------------------------------------------------------------------------------
\end{document}

No entanto, o problema é que isso não funciona mais e, em vez disso, recebo o erro:

(pdf backend): \pdfextension endlink cannot be used in vertical mode

Espero que haja uma maneira muito mais inteligente/padrão de fazer o que quero, já que a macro que estou usando é algo que encontrei on-line e não entendo realmente como funcionava (e agora parece não estar mais funcionando).

informação relacionada