我在排版文档时遇到了希伯来语引文的小问题。我的圣经引文格式为“书章:诗节:希伯来语文本”。当希伯来语文本继续在下一行时,它是左对齐的,而我希望它是右对齐的。
使用\flushright
不是一个选项,因为圣经参考仍然应该左对齐。使用\hfill
不是一个选项,因为我不知道换行符发生在哪里。
请参阅下面的 MWE。结果应该与第一个示例一样,但第二行右对齐,或者,与第二个示例一样,但第一行两端对齐。
当段落只有一行长时,应该左对齐。
\documentclass{article}
\usepackage[margin=4cm]{geometry}
\usepackage{showframe}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\newfontfamily\englishfont[Mapping=tex-text]{Latin Modern Roman}
\newfontfamily\hebrewfont[Scale=MatchLowercase]{Ezra SIL}
\DeclareTextFontCommand{\ez}{\hebrewfont}
\parindent0pt
\begin{document}
Nehemia 4:8b--c: \RL{\ez{אל־תיראו מפניהם את־אדני הגדול והנורא זכרו והלחמו על־אחיכם בניכם ובנתיכם נשיכם ובתיכם}}
\flushright{Nehemia 4:8b--c: \RL{\ez{אל־תיראו מפניהם את־אדני הגדול והנורא זכרו והלחמו על־אחיכם בניכם ובנתיכם נשיכם ובתיכם}}}
\end{document}
(使用 XeLaTeX 编译。需要Ezra SIL 字体)。
答案1
尝试这个:
\documentclass{article}
\usepackage{parskip}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\newfontfamily\hebrewfont[Scale=MatchLowercase,Script=Hebrew]{SBL BibLit}
\pagestyle{empty}
\newenvironment{RTLpar}{%
\par\ignorespaces
\leftskip=0pt plus .5fil%
\rightskip=0pt plus -.5fil%
\parfillskip=0pt plus .5fil%
}{\par}
\newbox\linebox
\newcount\linecount
\def\countparlines{%
\setbox\linebox\lastbox
\ifvoid\linebox
\else
\global\advance\linecount 1%
\unskip\unpenalty
{\countparlines}%
\fi}
\def\rtlpar#1{%
\vskip-\baselineskip % This is a hack, but I don't know the proper solution
\global\linecount=0%
\vbox{#1\par\countparlines}%
\ifnum\linecount>1
\begingroup
\leftskip=0pt plus .5fil%
\rightskip=0pt plus -.5fil%
\parfillskip=0pt plus .5fil%
#1\par
\endgroup
\else
#1\par
\fi}
\begin{document}
\begin{RTLpar}
Nehemiah 4:8b--c: \texthebrew{אל־תיראו מפניהם את־אדני הגדול והנורא זכרו
והלחמו על־אחיכם בניכם ובנתיכם נשיכם ובתיכם}
\end{RTLpar}
\rtlpar{Nehemiah 4:8b--c: \texthebrew{אל־תיראו מפניהם את־אדני הגדול והנורא זכרו
והלחמו על־אחיכם בניכם ובנתיכם נשיכם ובתיכם}}
\rtlpar{Nehemiah 4:8a: \texthebrew{וארא ואקום ואמר אל־החרים ואל־הסגנים ואל
יתר העם}}
\begin{quote}
\begin{hebrew}
אל־תיראו מפניהם את־אדני הגדול והנורא זכרו והלחמו על־אחיכם בניכם ובנתיכם
נשיכם ובתיכם (\textenglish{Nehemiah 4:8b--c})
\end{hebrew}
\end{quote}
\end{document}