Невозможно использовать polyglossia/babel с biblatex в LuaTeX: etoolbox Toggle undefined

Невозможно использовать polyglossia/babel с biblatex в LuaTeX: etoolbox Toggle undefined

Это пример test.texдокумента. И babel, и polyglossia не справились и выдают одну и ту же ошибку:

\documentclass{book}

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

\usepackage{biblatex}


\title{Sth}

\begin{document}

\maketitle

\end{document}

Этотполный лог. И моя конфигурация для 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%"
        ]
    }
],

Я установил все пакеты, связанные с вьетнамским языком, которые нашел с помощью tlmgr search, в частности babel-vietnamese и vntex, но безрезультатно.

Когда я использую английский язык, это работает. Когда я вставляю точный документ на Overleaf, это тоже работает. Так что это что-то с моей стороны. Как я могу это исправить?

решение1

Это была ошибка в biblatexv3.15 и v3.15a, связанная сhttps://github.com/plk/biblatex/issues/945.

Это было исправлено в biblatexверсии 3.16 от 31.12.2020.

Если проблема не устранена, обновите систему.


Старый ответ на случай, если вы застряли со старой версией, biblatexкоторую невозможно обновить

На данный момент вы можете вручную определить неопределенные переключатели, которые могут быть использованы (в вашем случае для резервного варианта emglishи для 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}

Связанный контент