無法在 LuaTeX 中將 polyglossia/babel 與 biblatex 一起使用:etoolbox Toggle undefined

無法在 LuaTeX 中將 polyglossia/babel 與 biblatex 一起使用: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

這是 v3.15 和 v3.15a 中的一個錯誤,biblatexhttps://github.com/plk/biblatex/issues/945

2020年12月31日起在v3.16修復biblatex

如果您仍然遇到此問題,請更新您的系統。


舊答案,以防您遇到biblatex無法更新的舊版本

現在,您可以手動定義可能使用的未定義切換(在您的情況下為 for 後備emglish和 for 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}

相關內容