有没有办法在参考书目数据库的标题字段中使用希伯来语,以便在 biblatex 生成参考书目时可以正确显示?发生的情况是:希伯来语文本显示正确(utf8 编码),但最后一个世界变成了第一个。
给你提供一些背景信息:其余的书目引用都有拉丁字符,因为我用意大利语书写,但文本和参考书目中有一些希伯来语。
\documentclass{article}[9pt]
\begin{filecontents*}{Midrash.bib}
@book{frenkelYvnymBvlmvHrvkhny1981a,
title = {עיונים בעולמו הרוחני של ספור האגדה.},
author = {Frenḳel, Yonah.},
date = {1981},
publisher = {{Hakibuts Hame'uḥad}},
location = {{Tel-Aviv}},
langid = {hebrew}
}
\end{filecontents*}
\usepackage{reledmac}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage{wrapfig}
\setdefaultlanguage{italian}
\setotherlanguage{hebrew}
\setmainfont{Times New Roman}
\usepackage[style=verbose-trad3,doi=false,isbn=false,url=false,eprint=false]{biblatex}
\bibliography{Midrash.bib}
\Xarrangement[A]{paragraph}
\begin{document}
see \cite{frenkelYvnymBvlmvHrvkhny1981a}
\printbibliography
\end{document}
结果如下图所示:
谢谢!
答案1
我的理解是你必须告诉polyglossia
每种语言使用什么字体,以及何时使用每种语言。
蓝色是 FreeSerif 字体设置为\hebrewfont
。
biblatex
等到/biber
读取 .bib 文件的时候, polyglossia
.bib 文件中的命令已经建立,因为polyglossia
之前已经加载过biblatex
。
虚拟 bib ref 只是来自维基百科有关太阳系的文章的一个随机片段。
平均能量损失
% !TeX TS-program = lualatex
\documentclass{article}[9pt]
\begin{filecontents*}[overwrite]{Midrash.bib}
@book{frenkelYvnymBvlmvHrvkhny1981a,
title = {\begin{hebrew}עיונים בעולמו הרוחני של סיפור האגדה\end{hebrew}.},
author = {Frenḳel, Yonah.},
date = {1981},
publisher = {{Hakibuts Hame'uḥad}},
location = {{Tel-Aviv}},
langid = {hebrew}
}
@book{מ,
title={\begin{hebrew}מערכת השמש\end{hebrew}},
author={\begin{hebrew}נפטון\end{hebrew}},
}
\end{filecontents*}
\usepackage{reledmac}
\usepackage{xcolor}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage{wrapfig}
\setdefaultlanguage{italian}
\setotherlanguage{hebrew}
\setmainfont{Times New Roman}
\newfontfamily\hebrewfont{FreeSerif}[Script=Hebrew,Color=blue]
\usepackage[style=verbose-trad3, doi=false,
isbn=false,
url=false,
eprint=false,
backend=biber
]{biblatex}
\addbibresource{Midrash.bib}
\Xarrangement[A]{paragraph}
\begin{document}
\section{אבגד -- without environment}
\section{\begin{hebrew}אבגד \end{hebrew} -- with environment}
\begin{hebrew}אבגד הוז חטיך כלםמ ןנסע ףפץצ קרשת\end{hebrew}
See \cite{frenkelYvnymBvlmvHrvkhny1981a,מ}
\printbibliography
\end{document}
我也使用了biblatex
的命令。\addbibresource
附录
Babel 包
Lualatex 可以使用 Unicode 算法识别脚本,因此通常不需要显式标记。(多次运行不同的脚本会跳出主脚本,例如希伯来语版本书目中的拉丁文本,将要需要标记,以便更整洁地呈现。
为了比较混合语言(忽略运行),使用babel
lualatex 编译的包来利用此功能,以意大利语为主要语言:
平均能量损失
\documentclass{article}[9pt]
\begin{filecontents*}[overwrite]{\jobname.bib}
@book{frenkelYvnymBvlmvHrvkhny1981a,
title = {עיונים בעולמו הרוחני של סיפור האגדה.},
author = {Frenḳel, Yonah.},
date = {1981},
publisher = {{Hakibuts Hame'uḥad}},
location = {{Tel-Aviv}},
langid = {hebrew}
}
@book{מ,
title={מערכת השמש},
author={נפטון},
}
\end{filecontents*}
\usepackage{reledmac}
\usepackage{xcolor}
\usepackage{wrapfig}
\usepackage{fontspec}
\usepackage[italian,bidi=basic]{babel}%<--- main language
\usepackage[autostyle]{csquotes}
\babelfont{rm}{Noto Serif}
\babelfont{sf}{Noto Sans}
\babelfont{tt}{Noto Sans Mono}
\babelprovide[import, onchar=fonts ids]{hebrew}
\babelfont[hebrew]{rm}[Color=blue]{LiberationSerif}
%\makeatletter%workaround to satisfy biblatex parms - not needed
%\newtoggle{blx@lang@captions@english}
%\makeatother
\usepackage[style=verbose-trad3, doi=false,
isbn=false,
url=false,
eprint=false,
backend=biber
]{biblatex}
\addbibresource{\jobname.bib}
\Xarrangement[A]{paragraph}
\begin{document}
\section{אבגד}
אבגד הוז חטיך כלםמ ןנסע ףפץצ קרשת
The cat sat on the mat.
\section{הוז}
אבגד הוז the cat חטיך כלםמ ןנסע ףפץצ קרשת
See \cite{frenkelYvnymBvlmvHrvkhny1981a,מ}
\printbibliography
\end{document}
以希伯来语为主要语言:
平均能量损失
\documentclass{article}[9pt]
\begin{filecontents*}[overwrite]{\jobname.bib}
@book{frenkelYvnymBvlmvHrvkhny1981a,
title = {עיונים בעולמו הרוחני של סיפור האגדה.},
author = {Frenḳel, Yonah.},
date = {1981},
publisher = {{Hakibuts Hame'uḥad}},
location = {{Tel-Aviv}},
langid = {hebrew}
}
@book{מ,
title={מערכת השמש},
author={נפטון},
}
\end{filecontents*}
\usepackage{reledmac}
\usepackage{xcolor}
\usepackage{wrapfig}
\usepackage{fontspec}
\usepackage[bidi=basic]{babel}
\usepackage[autostyle]{csquotes}
\babelfont{rm}{Noto Serif}
\babelfont{sf}{Noto Sans}
\babelfont{tt}{Noto Sans Mono}
\babelprovide[import, main, onchar=fonts ids]{hebrew}%<-- main language
\babelfont[hebrew]{rm}[Color=blue]{LiberationSerif}
\makeatletter%workaround to satisfy biblatex parms
\newtoggle{blx@lang@captions@english}
\makeatother
\usepackage[style=verbose-trad3, doi=false,
isbn=false,
url=false,
eprint=false,
backend=biber
]{biblatex}
\addbibresource{\jobname.bib}
\Xarrangement[A]{paragraph}
\begin{document}
\section{אבגד}
אבגד הוז חטיך כלםמ ןנסע ףפץצ קרשת
The cat sat on the mat.
\section{הוז}
אבגד הוז the cat חטיך כלםמ ןנסע ףפץצ קרשת
See \cite{frenkelYvnymBvlmvHrvkhny1981a,מ}
\printbibliography
\end{document}