![如何将 biblatex-gost 与 XeLaTeX 一起使用?](https://linux22.com/image/268783/%E5%A6%82%E4%BD%95%E5%B0%86%20biblatex-gost%20%E4%B8%8E%20XeLaTeX%20%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%EF%BC%9F.png)
我正在尝试使用biblatex-gost
XeLaTeX 包——但是它给出了错误:
\documentclass{article}
\usepackage{fontspec} % enagles loading of OpenType fonts
\usepackage{polyglossia} % support for languages
% fonts:
\defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text} % without this XeLaTeX won't turn "--" into dashes
\setmainfont{DejaVu Sans}
\setsansfont{DejaVu Sans}
\setmonofont{DejaVu Sans Mono}
% Russian/English document:
\usepackage{xecyr}
\newfontfamily\cyrillicfont{DejaVu Sans}
\setmainlanguage{russian}
\setotherlanguage[variant=american]{english}
% bibliography:
\usepackage[
backend=biber,
style=gost-authoryear,
]{biblatex}
\addbibresource{BooksOnMetals.bib}
\begin{document}
\texttt{footcite}: \footcite{__1979}
\texttt{textcite}: \textcite{__2009}
% bibliography:
\printbibliography[heading=bibintoc]
\end{document}
给出:
(/home/boris/.local/lib/texmf/tex/latex/biblatex-gost/biblatex-gost.def)
! Undefined control sequence.
<argument> ...stmedialanguage {\bbl@main@language
}\newcommand *{\select@med...
l.324 \newcommand*{\select@medialanguage}{}}
gost-authoryear
如果我用authoryear
.Bib 文件替换,相同的代码可以正常工作:
@book{__1979,
title = {Физика твердого тела (комплект из 2 книг)},
abstract = {Настоящая книга - подробный курс физики твердого тела, составленный авторами, в течение многих лет читающими курс лекций по этому предмету в Корнеллском университете (США). Книга написана с большим педагогическим мастерством, тщательно продуманы выбор и расположение материала, иллюстрации, задачи. Она представляет собой ценное пособие для читателей с различным кругом интересов и разной степенью подготовки; при этом путеводной нитью могут служить приводимые авторами рекомендации о последовательности чтения глав.
Книга адресована студентам, аспирантам, изучающим и ведущим физику твердого тела.},
publisher = {Мир},
author = {Ашкрофт, Н. and Мермин, Н.},
translator = {Михайлов, Александр},
year = {1979}
},
@book{__2009,
edition = {2},
title = {Основы теории металлов},
isbn = {978-5-9221-1097-6},
abstract = {Изложена современная теория нормальных и сверхпроводящих металлов без использования сложных математических методов. Помимо описания классических свойств, серьезное внимание уделено актуальным проблемам: квантовым интерференционным эффектам, локализации электронов случайным потенциалом, нелинейным явлениям, взаимному влиянию сверхпроводимости и магнетизма и др. Необходимо знакомство с квантовой механикой и статистикой.
Для студентов и аспирантов физических специальностей вузов, а также научно-технических работников в области физики твердого тела.},
publisher = {ФИЗМАТЛИТ},
author = {Абрикосов, А. А.},
year = {2009}
}
我读了biblatex-gost
文档。它没有提到 XeLaTeX。我读了作者提供的代码——它使用了babel
和latex
。文档实际上无法在我的机器上编译。但无论如何它没有使用 XeLaTeX。
使用要求biblatex-gost
是:
- 比伯 1.5
- biblatex 2.5
当前版本biblatex-gost
是 0.8。我拥有了所有内容。
编辑:
事实证明biblatex 不支持多语。但普通authoryear
版本可以。可能也可以使用打过补丁的版本gost-authoryear
。
答案1
尝试
[...]
\usepackage{polyglossia} % support for languages
\makeatletter
\def\bbl@main@language{russian}
\makeatother
[...}