我有一个 .bib 书目,其中有些条目完全是英文的,有些则完全是希伯来语的。
我想显示参考书目项目,以便希伯来语项目从右到左对齐,英语项目从左到右对齐。参考书目应全部放在一个标题下(“参考书目”或“参考文献”),然后是所有希伯来语项目,然后是所有英语项目。
我尝试了很多方法,但都无法奏效。我使用的是 LyX,所以我更喜欢使用 pdflatex 和 bibtex 的解决方案,但 biber 和 biblatex 可能也可以。
平均能量损失
在此 MWE 中,两个文件(.tex 和 .bib)均采用 CP1255 编码;使用 UTF8 编码也会出现相同的结果,但使用 UTF8,我需要 \DeclareUnicodeCharacter 所有的希伯来语字符,否则它将无法编译...
论坛
@article{EnglishExample,
title={Example},
author={John McAuthor},
year={2016},
journal={American Journal of Examples}
}
@article{HebrewExample,
title={דוגמה},
author={מחבר},
year={2016},
journal={כתב העת הישראלי לדוגמאות}
}
麦格
\documentclass[oneside,hebrew,english]{book}
\usepackage[T1]{fontenc}
\usepackage[cp1255,latin9]{inputenc}
\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}
\makeatletter
\usepackage{apacite}
\makeatother
\usepackage{babel}
\begin{document}
\inputencoding{cp1255}%
\inputencoding{latin9}test \inputencoding{cp1255}\R{בדיקה}
\inputencoding{latin9}\bibliographystyle{apacite}
\nocite{*}
\bibliography{mwe}
\end{document}
在此示例中,文档本身中的“测试”呈现正常:
但是,参考书目如下所示:
我希望它看起来像这样(请原谅不一致的样式 - 我使用 MS Word 制作的...):
答案1
polyglossia
一种使用 XeLaTeX 与的方法biblatex
。
%\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{EnglishExample,
title={Example},
author={John McAuthor},
year={2016},
journal={American Journal of Examples},
language={engllish},
keywords={english}
}
@article{HebrewExample,
title={דוגמה},
author={מחבר},
year={2016},
journal={כתב העת הישראלי לדוגמאות},
language={hebrew},
keywords={hebrew}
}
\end{filecontents}
\documentclass{article}
\usepackage{blindtext}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguage{hebrew}
\usepackage[style=apa]{biblatex}
\addbibresource{\jobname.bib}
\DeclareLanguageMapping{english}{english-apa}
\defbibenvironment{hebbib}{\begin{otherlanguage}{hebrew}
\list
{}
{\setlength{\leftmargin}{\bibhang}%
\setlength{\itemindent}{-\leftmargin}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist\end{otherlanguage}}{\item}
\begin{document}
\blindtext
\begin{otherlanguage}{hebrew}בדיקה
(נהגה לַטֶךְ) היא שפת סימון ועריכת מסמכים. לרוב מסומנת
בלוגו \LaTeX. הרעיון העומד מאחורי שפה זו הוא לחסוך את
הטרחה שבעיצוב מכותב המסמך, ולהטיל מלאכה זו על
\end{otherlanguage}
\nocite{*}
\printbibheading
\printbibliography[heading=subbibliography,keyword=english,title={english refs}]
\printbibliography[heading=subbibliography,keyword=hebrew,title={hebrew
refs},env=hebbib]
\end{document}