以下是一个示例文档:
\documentclass[a4paper]{extreport}
\usepackage[style=gost-numeric,defernumbers]{biblatex}
\addbibresource{t.bib}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage[cm-default]{fontspec}
\setmainfont{Times New Roman}
\begin{document}
Some text with unicode here\cite{t}. Немного текста в юникоде.
\printbibliography
\end{document}
我t.bib
有:
@online{t,
title = {Утечка памяти},
media = {eresource},
language = {russian},
url = {https://ru.wikipedia.org/wiki/Утечка\_памяти}
}
我假设所有内容都采用 unicode,但 URL 不支持它,看起来很糟糕。有没有办法在 URL 中使用 unicode?
答案1
@UlrikeFischer 是正确的 - biber 只有一个字段可以使用,因此选择编码格式以实现最大兼容性。您可以轻松使用源映射复制到另一个逐字字段(如verba
),并将其用作可打印版本,同时保留url
超链接。这需要进行微小的样式更改,但应该相对容易(确保hyperref
已加载):
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=url]
\step[fieldset=verba, origfieldval]
}
}
}
\DeclareFieldFormat{url}{\mkbibacro{URL}\addcolon\space\href{#1}{\thefield{verba}}}