我对 还很陌生biblatex
。我正在排版一本包含英文和俄文论文的合集,并在书的末尾制作一个参考书目。
为了使书目看起来漂亮,条目应该单独“本地化”。也就是说,我希望一本英文书能以
Smith and Smith (eds.)
但俄罗斯人却
Иванов и Иванов (ред.) [not "eds."!]
我有一个非常模糊的想法,即可以通过某个宏中的条件来实现,该条件会检查language
每个给定条目的字段并相应地选择内容。但我不知道该怎么做 --- 只是浏览一下,biblatex.def
结果却找不到别的地方,只能到这里。我正为此使用lualatex
,以防万一。
感谢您的任何想法!
答案1
这绝对不是一个完整的答案,但您可以尝试babel=other
在加载biblatex
和提供俄语条目时添加选项,例如hyphenation = russian
。是否有办法自动执行后一个操作仍是一个悬而未决的问题。
答案2
langid
除了设置之外,您还可以为字段指定autolang
合理的值。
不幸的是,对语言的映射有点挑剔,不能与开箱即用的 XeLaTeX(一个支持 utf8 的引擎)一起使用。
\begin{filecontents}{\jobname.bib}
@online{someotherentry,
url={texwelt.de},
urldate={2015-05-11},
author={a guy},
translator={a guy},
editor={a guy},
langid={ngerman}
}
@online{onlineentry,
url={some},
urldate={2015-05-11},
langid={russian},
}
@book{bookentry,
editor={smith and Wesson},
langid={russian}
}
\end{filecontents}
\documentclass[ngerman,russian,english]{article}
\usepackage[autolang=other,maxcitenames=1]{biblatex}
\usepackage{babel}
\usepackage{lmodern}
\addbibresource{\jobname.bib}
\usepackage{citeall}
%\DefineBibliographyStrings{russian}{urlseen={Priviet},
%andothers={and some other guys}}
\usepackage[utf8]{inputenc}
\begin{document}
\citeall[\fullcite]
\end{document}