我想在一篇文章中添加主要来源的参考书目,并根据梵文字母表对其条目进行字母排序,使用 IAST 和 utf-8,a、ā、i、ī、u、ū 等,我该如何告诉 biblatex / biber 这样做?我想我必须自己定义那个字母表,怎么做?
最小工作示例:
\documentclass{article}
\usepackage{fontspec}
\usepackage{filecontents}
\usepackage[style=authoryear-ibid,backend=biber,sorting=anyt]{biblatex}
\begin{filecontents*}{mwe.bib}
@misc {Hevajratantra,
title = {Hevajratantra},
note = {something},
}
@book {Mṛgendratantra,
title = {Mṛgendratantra},
note = {something else},
}
\end{filecontents*}
\addbibresource{mwe.bib}
\begin{document}
\nocite{*}
\printbibliography{}
\end{document}
正如预期的那样,参考书目首先按照拉丁字母顺序列出了《Hevajratantra》,然后是《Mṛgendratantra》。然而,在梵语字母表中,M 位于 H 之前,梵语字母表与拉丁字母表完全不同。我可以手动处理这个问题,例如,在每个参考书目条目中添加一个 sortkey 字段,但我认为对于大多数较大的语言,人们可以通过 polyglossia 告诉 biblatex / biber 如何根据相应的语言进行排序。我想知道对于音译梵语,如何自动完成这一操作?
经过进一步的搜索,我似乎需要为 Unicode 排序算法构建一个表,并遵循该表的数据格式,https://github.com/plk/biber/blob/master/data/latinkeys.txt,然后我需要将其提供给 biber。看起来不太复杂,我会尝试找到一个临时解决方案。
答案1
从 3.4 版本开始biblatex
支持不同排序的音译
\DeclareSortTranslit{
\translit[settitles]{iast}{devanagari}
}
看https://github.com/plk/biblatex/issues/385。
这应该会给你正确的梵文排序顺序
\documentclass{article}
\usepackage{fontspec}
\usepackage{filecontents}
\usepackage[style=authoryear-ibid,backend=biber,sorting=anyt]{biblatex}
\begin{filecontents*}{\jobname.bib}
@misc {Hevajratantra,
title = {Hevajratantra},
note = {something},
}
@book {Mṛgendratantra,
title = {Mṛgendratantra},
note = {something else},
}
\end{filecontents*}
\DeclareSortTranslit{
\translit[settitles]{iast}{devanagari}
}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
给出