
我有一個問題,biblatex 不想使用塞爾維亞語並且編譯錯誤。
%Compile with XeLaTeX
\documentclass[12pt,serbian]{article}
%\usepackage[utf8]{inputenc}
\usepackage[T1,LGR,]{fontenc}
\usepackage{lmodern}
\usepackage{textalpha}
\usepackage{fontspec}
\setmainfont{FreeSerif}
\setsansfont{FreeSans}
\setmonofont{FreeMono}
\usepackage{polyglossia}
\setdefaultlanguage[script=latin]{serbian}
\setotherlanguages{english,russian,greek}
\usepackage{blindtext}
\usepackage[bibencoding=auto,backend=biber,autolang=other,style=authoryear]{biblatex}
\usepackage{csquotes}
\bibliography{ref}
\DefineBibliographyStrings{serbian}{
bytranslator = {prev.}
}
\title{Dnevnik čitanja}
\author{Perović Nikola}
\date{}
\begin{document}
\maketitle
\newpage
\section*{Voltaire (Volter)}
\subsection*{Kandid}
„Sve je neizbežno vezano jedno s drugim i najbolje udešeno.“\smartcite[str.13]{Vol02}
„Sve je u svetu najbolje što može biti.“\smartcite[str.14]{Vol02}
„I nesreće pojedinca čine opšte dobro; otuda, što je više pojedinih nesreća utoliko je sve bolje.“\smartcite{Vol02}
„Ako je sve najbolje što može biti onda nema pravog greha ni prave kazne.“\smartcite[str.13]{Vol02}
\newpage
\printbibliography
\end{document}
參考文獻文件
@BOOK{Vol02,
AUTHOR="Volter",
TITLE="Kandid",
TRANSLATOR="Milan Predić",
PUBLISHER="Alfa",
LOCATION="Beograd",
YEAR="2002",
HYPHENATION="serbian"
}
我該如何改變譯者說前一個反而?
答案1
正如評論中所討論的,您正在使用biblatex
v3.14。塞爾維亞語本地化serbian.lbx
僅在幾週前發布的 v3.15serbianc.lbx
中添加。biblatex
看https://github.com/plk/biblatex/pull/940。所以你本質上使用的是一個biblatex
沒有任何塞爾維亞語支持的版本。
最好的解決方法是更新您的 TeX 發行版,以便您獲得biblatex
3.15(以及 Biber 2.15 等)。
如果您透過 Linux 發行版的套件管理器安裝 TeX 發行版,則可能無法取得最新 TeX 系統的更新。
在這種情況下,您有三個選擇。
從 TUG.org 安裝目前的「vanilla」TeX Live(參見例如如何在 Debian 或 Ubuntu 上安裝“普通”TeXLive?)。您將完全控制該系統,並且可以通過
tlmgr
(如何更新我的 TeX 發行版?)。但請注意,TeX Live 是按年發布的版本。如果您想保持最新狀態,則必須每年進行更新。嘗試僅
biblatex
手動更新 Biber。有一些說明(適用於舊的biblatex
/Biber 版本)如何正確升級“biblatex”?。但這通常是絕對不建議的:它可能導致版本不相容,而 Biber 的手動安裝是世界上令人頭痛的主要根源biblatex
。僅從v3.15
serbian.lbx
開始biblatex
並將其放入您的文件資料夾中。您可以從以下位置下載:http://mirrors.ctan.org/macros/latex/contrib/biblatex/latex/lbx/serbian.lbx。當您嘗試使用這些文件執行文件時,您可能會遇到許多奇怪的錯誤.lbx
。如果幸運的話,您可以輕鬆解決它們。 (如果您收到有關未定義字串的錯誤<string>
,請新增\NewBibliographyString{<string>}
到您的序言中,例如\NewBibliographyString{langserbian}
)。
我只推薦選項 1。其他選項風險很大(選項 2)或必然需要手動介入(選項 3)。
我想我設法讓選項 3 正常工作,但由於我的系統受到一些幹擾,可能存在一些我沒有看到的問題。
biblatex
與您的問題無關,塞爾維亞語polyglossia
的介面有一點不一致babelname
,目前biblatex
有點令人困惑:https://github.com/reutenauer/polyglossia/issues/442。