
Tenho um problema com o biblatex, não querendo usar o idioma sérvio e compilando errado.
%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}
arquivo ref.bib
@BOOK{Vol02,
AUTHOR="Volter",
TITLE="Kandid",
TRANSLATOR="Milan Predić",
PUBLISHER="Alfa",
LOCATION="Beograd",
YEAR="2002",
HYPHENATION="serbian"
}
Como posso mudarpor tradutorpara dizer anterior. em vez de?
Responder1
Conforme discutido nos comentários, você está usando biblatex
a v3.14. A localização sérvia serbian.lbx
só serbianc.lbx
foi adicionada na biblatex
v3.15, lançada há algumas semanas. Verhttps://github.com/plk/biblatex/pull/940. Então você está essencialmente usando uma biblatex
versão sem qualquer suporte sérvio.
A melhor solução seriaatualize sua distribuição TeX para obter biblatex
3.15 (e Biber 2.15 etc.).
Se você instalou sua distribuição TeX através do gerenciador de pacotes da sua distribuição Linux, pode não haver como obter uma atualização para um sistema TeX recente.
Nesse caso você tem três opções.
Instale um TeX Live 'vanilla' atual do TUG.org (veja, por exemplo,Como instalar o TeXLive “vanilla” no Debian ou Ubuntu?). Você terá controle total sobre esse sistema e poderá atualizar pacotes via
tlmgr
(Como atualizo minha distribuição TeX?). Mas observe que o TeX Live é lançado em versões anuais. Você terá que atualizar todos os anos se quiser se manter atualizado.Tente atualizar apenas
biblatex
o Biber manualmente. Existem algumas instruções (parabiblatex
versões mais antigas/Biber) emComo atualizar o 'biblatex' corretamente?. Mas isso geralmente não é recomendado: pode levar a incompatibilidades de versão e instalações manuais do Biber são uma grande fonte de dor de cabeça nobiblatex
mundo.Obtenha apenas
serbian.lbx
a partir dabiblatex
v3.15 e coloque-o na pasta de documentos. Você pode baixá-lo emhttp://mirrors.ctan.org/macros/latex/contrib/biblatex/latex/lbx/serbian.lbx. Você pode receber vários erros estranhos ao tentar executar seu documento com esses.lbx
arquivos. Se você tiver sorte, poderá resolvê-los facilmente. (Se você receber erros sobre uma string indefinida<string>
, adicione\NewBibliographyString{<string>}
ao seu preâmbulo, por exemplo\NewBibliographyString{langserbian}
).
Apenas a opção 1 é a que eu recomendaria. As outras opções são bastante arriscadas (opção 2) ou necessitarão de intervenção manual (opção 3).
Acho que consegui fazer a opção 3 funcionar, mas pode haver alguns problemas que não vejo devido a algumas interferências no meu sistema.
Não relacionado aos seus biblatex
problemas, polyglossia
tem uma pequena inconsistência com relação à sua babelname
interface para sérvio, que atualmente confunde biblatex
um pouco:https://github.com/reutenauer/polyglossia/issues/442.