Impossible d'utiliser polyglossia / babel avec biblatex dans LuaTeX: etoolbox Toggle undefined

Sep 10 2020

Ceci est un exemple de test.texdocument. Babel et polyglossia ont échoué et produisent la même erreur:

\documentclass{book}

%\usepackage[vietnamese]{babel}
\usepackage{polyglossia}
\setdefaultlanguage{vietnamese}

\usepackage{biblatex}


\title{Sth}

\begin{document}

\maketitle

\end{document}

Ceci est le journal complet. Et ma configuration pour VS Code:

"latex-workshop.latex.recipes": [
    {
        "name": "lualatex->biber",
        "tools": [
            "lualatex",
            // "biber",
        ]
    }
],
"latex-workshop.latex.tools": [
    {
        "name": "lualatex",
        "command": "lualatex",
        "args": [
            "--shell-escape",
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "-pdf",
            "%DOC%"
        ]
    },
    {
        "name": "biber",
        "command": "biber",
        "args": [
            "%DOCFILE%"
        ]
    }
],

J'ai installé tous les packages liés au vietnamien que j'ai trouvés en utilisant tlmgr search, notamment babel-vietnamese et vntex, en vain.

Quand j'utilise la langue anglaise, cela fonctionne. Lorsque je colle le document exact dans Overleaf, cela fonctionne également. C'est donc quelque chose de ma part. Comment puis-je réparer cela?

Réponses

3 moewe Sep 10 2020 at 13:02

C'est un bogue dans les biblatexv3.15 et v3.15a lié àhttps://github.com/plk/biblatex/issues/945.

Il sera corrigé dans la biblatexv3.15b, qui, espérons-le, sera prête dans un avenir pas trop lointain.

Pour l'instant, vous pouvez définir manuellement les bascules non définies qui pourraient être utilisées (dans votre cas, pour le repli emglishet pour vietnamese).

\documentclass{book}

%\usepackage[vietnamese]{babel}
\usepackage{polyglossia}
\setdefaultlanguage{vietnamese}

\usepackage{biblatex}

\providetoggle{blx@lang@captions@english}
\providetoggle{blx@lang@captions@vietnamese}

\title{Sth}

\begin{document}

\maketitle

\end{document}