biblatex 错误:使用西班牙语和 activeacute 修补“babel”包失败

biblatex 错误:使用西班牙语和 activeacute 修补“babel”包失败

我尝试向我的项目添加如下参考书目:

\documentclass[a4paper,10pt]{article}

\usepackage[activeacute,spanish]{babel}
\usepackage[latin1]{inputenc}


\usepackage[style=alphabetic, sorting=ynt, backend=bibtex]{biblatex}
\addbibresource{bibliografia.bib}


\begin{document}

    Esto es una referencia a \cite{knuth}

    \printbibliography

\end{document}

这是参考书目:

@article{knuth,
    author = "Lawrence C. Paulson",
    title = "{Computational Logic: Its Origins and Applications}. ({English})",
    year = "2018",
    DOI = "https://arxiv.org/pdf/1712.04375.pdf",
    keywords = "vefication"
}

但它给出了以下错误:

软件包 biblatex 错误:修补“babel”软件包失败。\begin{document}

我该如何解决这个问题?

答案1

这本质上是同一个问题修补 babel 包时出现的问题,只是这次有西班牙语,特别是它的activeacute选项。

没有 ,一切照常进行activeacute,所以如果你不需要这个选项,那么你就有解决方案了

\documentclass[a4paper,10pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[spanish]{babel}

\usepackage[style=alphabetic, sorting=ynt, backend=bibtex]{biblatex}
\addbibresource{biblatex-examples.bib}


\begin{document}
  Esto es una referencia a \cite{sigfridsson}

  \printbibliography
\end{document}

如果您需要该选项,解决方法是乌尔丽克·菲舍尔回答修补 babel 包时出现的问题在这里也适用

\documentclass[a4paper,10pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[activeacute,spanish]{babel}

\usepackage{etoolbox}
\makeatletter
\newcommand\my@hyphen{-}
\newcommand\my@apostroph{'}
\patchcmd\select@language{-}{\my@hyphen }{}{\fail}
\patchcmd\select@language{'}{\my@apostroph }{}{\fail}
\makeatother

\usepackage[style=alphabetic, sorting=ynt, backend=bibtex]{biblatex}
\addbibresource{biblatex-examples.bib}


\begin{document}
  Esto es una referencia a \cite{sigfridsson}

  \printbibliography
\end{document}

的未来版本biblatex将使用更好的接口来进行必要的修补,并且不需要这些解决方法。请参阅https://github.com/plk/biblatex/issues/970


无论如何,您可能希望考虑以 UTF-8 编码保存文件并替换\usepackage[latin1]{inputenc}\usepackage[utf8]{inputenc}或者什么都不做,如果您的 LaTeX 版本不超过两年)。使用 UTF-8 输入,您不太可能需要activeacute

相关内容