LuaLaTeX 中较长文本中的希腊语和希伯来语连字符

LuaLaTeX 中较长文本中的希腊语和希伯来语连字符

为了排版英语 + 古希腊语 + 希伯来语、段落长度,我使用 XeLaTeX + polyglossia。我一直在尝试 LuaLaTeX + babel,以防这是未来的趋势。

在下面的最小示例中,如果我使用一种包含英语/拉丁语和希腊语所有字形的字体,我就能为英语/拉丁语和希腊语文本获得连字。如果我为希腊语定义单独的字体,我无法获得连字。对于希伯来语,我定义了一种新的字体和环境,但得到的文本却参差不齐。如何让希伯来语文本对齐?

最小示例:

% !TEX TS-program = lualatexmk
% !TEX encoding = UTF-8 Unicode

\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{EB Garamond}
\usepackage{lipsum}

%%%%%%%%%%%%%%%%%%% Hebrew for LuaLaTeX (from code for Arabic by Khaled Khosny)
\newfontfamily\hebrewfont[Script=Hebrew]{SBL Hebrew}     
\newcommand{\texthebrew}[1] % Hebrew inside LTR
           {\bgroup\luatextextdir TRT\hebrewfont #1\egroup}
\newenvironment{hebrew}     % Hebrew paragraph
           {\luatextextdir TRT\luatexpardir TRT\hebrewfont}{}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% hyphens and other lang apparatus
\usepackage[polutonikogreek,english]{babel}

\begin{document}
\rightskip=5cm
\selectlanguage{greek}
μῆνιν ἄειδε θεὰ Πηληϊάδεω Ἀχιλῆος
οὐλομένην, ἣ μυρί᾽ Ἀχαιοῖς ἄλγε᾽ ἔθηκε,
πολλὰς δ᾽ ἰφθίμους ψυχὰς Ἄϊδι προΐαψεν
ἡρώων, αὐτοὺς δὲ ἑλώρια τεῦχε κύνεσσιν
οἰωνοῖσί τε πᾶσι, Διὸς δ᾽ ἐτελείετο βουλή,
ἐξ οὗ δὴ τὰ πρῶτα διαστήτην ἐρίσαντε
Ἀτρεΐδης τε ἄναξ ἀνδρῶν καὶ δῖος Ἀχιλλεύς.
τίς τ᾽ ἄρ σφωε θεῶν ἔριδι ξυνέηκε μάχεσθαι;
Λητοῦς καὶ Διὸς υἱός: ὃ γὰρ βασιλῆϊ χολωθεὶς
νοῦσον ἀνὰ στρατὸν ὄρσε κακήν, ὀλέκοντο δὲ λαοί,
οὕνεκα τὸν Χρύσην ἠτίμασεν ἀρητῆρα
Ἀτρεΐδης:

\rightskip=3cm
\selectlanguage{english}
\lipsum[2]

\rightskip=7cm
\begin{hebrew}
1 וַיֵּ֥לֶךְ אִ֖ישׁ מִבֵּ֣ית לֵוִ֑י וַיִּקַּ֖ח אֶת־בַּת־לֵוִֽי׃  2 וַתַּ֥הַר הָאִשָּׁ֖ה וַתֵּ֣לֶד בֵּ֑ן וַתֵּ֤רֶא אֹתוֹ֙ כִּי־ט֣וֹב ה֔וּא וַֽתִּצְפְּנֵ֖הוּ שְׁלֹשָׁ֥ה יְרָחִֽים׃  3 וְלֹא־יָכְלָ֣ה עוֹד֮ הַצְּפִינוֹ֒ וַתִּֽקַּֽח־לוֹ֙ תֵּ֣בַת גֹּ֔מֶא וַתַּחְמְרָ֥ה בַחֵמָ֖ר וּבַזָּ֑פֶת וַתָּ֤שֶׂם בָּהּ֙ אֶת־הַיֶּ֔לֶד וַתָּ֥שֶׂם בַּסּ֖וּף עַל־שְׂפַ֥ת הַיְאֹֽר׃  4 וַתֵּתַצַּ֥ב אֲחֹת֖וֹ מֵרָחֹ֑ק לְדֵעָ֕ה מַה־יֵּעָשֶׂ֖ה לֽוֹ׃  5 וַתֵּ֤רֶד בַּת־פַּרְעֹה֙ לִרְחֹ֣ץ עַל־הַיְאֹ֔ר וְנַעֲרֹתֶ֥יהָ הֹלְכֹ֖ת עַל־יַ֣ד הַיְאֹ֑ר וַתֵּ֤רֶא אֶת־הַתֵּבָה֙ בְּת֣וֹךְ הַסּ֔וּף וַתִּשְׁלַ֥ח אֶת־אֲמָתָ֖הּ וַתִּקָּחֶֽהָ 1  6 וַתִּפְתַּח֙ וַתִּרְאֵ֣הוּ אֶת־הַיֶּ֔לֶד וְהִנֵּה־נַ֖עַר בֹּכֶ֑ה וַתַּחְמֹ֣ל עָלָ֔יו וַתֹּ֕אמֶר מִיַּלְדֵ֥י הָֽעִבְרִ֖ים זֶֽה׃  7 וַתֹּ֣אמֶר אֲחֹתוֹ֮ אֶל־בַּת־פַּרְעֹה֒ הַאֵלֵ֗ךְ וְקָרָ֤אתִי לָךְ֙ אִשָּׁ֣ה מֵינֶ֔קֶת מִ֖ן הָעִבְרִיֹּ֑ת וְתֵינִ֥ק לָ֖ךְ אֶת־הַיָּֽלֶד׃
\end{hebrew}
\end{document}

答案1

使用 TeX Live 2015,文本可以正确对齐并带有连字符。

\documentclass{article}
\usepackage{showframe}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{EB Garamond}
\usepackage{lipsum}

%%%%%%%%%%%%%%%%%%% Hebrew for LuaLaTeX (from code for Arabic by Khaled Khosny)
\newfontfamily\hebrewfont[Script=Hebrew]{New Peninim MT}
\newcommand{\texthebrew}[1] % Hebrew inside LTR
           {\bgroup\textdir TRT\hebrewfont #1\egroup}
\newenvironment{hebrew}     % Hebrew paragraph
           {\textdir TRT\pardir TRT\hebrewfont}{}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% hyphens and other lang apparatus
\usepackage[polutonikogreek,english]{babel}

\begin{document}

\selectlanguage{greek}
μῆνιν ἄειδε θεὰ Πηληϊάδεω Ἀχιλῆος
οὐλομένην, ἣ μυρί᾽ Ἀχαιοῖς ἄλγε᾽ ἔθηκε,
πολλὰς δ᾽ ἰφθίμους ψυχὰς Ἄϊδι προΐαψεν
ἡρώων, αὐτοὺς δὲ ἑλώρια τεῦχε κύνεσσιν
οἰωνοῖσί τε πᾶσι, Διὸς δ᾽ ἐτελείετο βουλή,
ἐξ οὗ δὴ τὰ πρῶτα διαστήτην ἐρίσαντε
Ἀτρεΐδης τε ἄναξ ἀνδρῶν καὶ δῖος Ἀχιλλεύς.
τίς τ᾽ ἄρ σφωε θεῶν ἔριδι ξυνέηκε μάχεσθαι;
Λητοῦς καὶ Διὸς υἱός: ὃ γὰρ βασιλῆϊ χολωθεὶς
νοῦσον ἀνὰ στρατὸν ὄρσε κακήν, ὀλέκοντο δὲ λαοί,
οὕνεκα τὸν Χρύσην ἠτίμασεν ἀρητῆρα
Ἀτρεΐδης:

\selectlanguage{english}
\lipsum[2]

\begin{hebrew}
1 וַיֵּ֥לֶךְ אִ֖ישׁ מִבֵּ֣ית לֵוִ֑י וַיִּקַּ֖ח אֶת־בַּת־לֵוִֽי׃ 2 וַתַּ֥הַר הָאִשָּׁ֖ה וַתֵּ֣לֶד בֵּ֑ן 
וַתֵּ֤רֶא אֹתוֹ֙ כִּי־ט֣וֹב ה֔וּא וַֽתִּצְפְּנֵ֖הוּ שְׁלֹשָׁ֥ה יְרָחִֽים׃ 3 וְלֹא־יָכְלָ֣ה עוֹד֮ 
הַצְּפִינוֹ֒ וַתִּֽקַּֽח־לוֹ֙ תֵּ֣בַת גֹּ֔מֶא וַתַּחְמְרָ֥ה בַחֵמָ֖ר וּבַזָּ֑פֶת וַתָּ֤שֶׂם בָּהּ֙ 
אֶת־הַיֶּ֔לֶד וַתָּ֥שֶׂם בַּסּ֖וּף עַל־שְׂפַ֥ת הַיְאֹֽר׃ 4 וַתֵּתַצַּ֥ב אֲחֹת֖וֹ מֵרָחֹ֑ק לְדֵעָ֕ה 
מַה־יֵּעָשֶׂ֖ה לֽוֹ׃ 5 וַתֵּ֤רֶד בַּת־פַּרְעֹה֙ לִרְחֹ֣ץ עַל־הַיְאֹ֔ר וְנַעֲרֹתֶ֥יהָ הֹלְכֹ֖ת עַל־יַ֣ד 
הַיְאֹ֑ר וַתֵּ֤רֶא אֶת־הַתֵּבָה֙ בְּת֣וֹךְ הַסּ֔וּף וַתִּשְׁלַ֥ח אֶת־אֲמָתָ֖הּ וַתִּקָּחֶֽהָ 1 6 
וַתִּפְתַּח֙ וַתִּרְאֵ֣הוּ אֶת־הַיֶּ֔לֶד וְהִנֵּה־נַ֖עַר בֹּכֶ֑ה וַתַּחְמֹ֣ל עָלָ֔יו וַתֹּ֕אמֶר 
מִיַּלְדֵ֥י הָֽעִבְרִ֖ים זֶֽה׃ 7 וַתֹּ֣אמֶר אֲחֹתוֹ֮ אֶל־בַּת־פַּרְעֹה֒ הַאֵלֵ֗ךְ וְקָרָ֤אתִי לָךְ֙ 
אִשָּׁ֣ה מֵינֶ֔קֶת מִ֖ן הָעִבְרִיֹּ֑ת וְתֵינִ֥ק לָ֖ךְ אֶת־הַיָּֽלֶד׃
\end{hebrew}

\end{document}

在此处输入图片描述

相关内容