如何在 eledmac 中以段落样式制作 RTL 脚注?

如何在 eledmac 中以段落样式制作 RTL 脚注?

在一个上一个问题,Salim Bou 提供了一个在 eledmac 中获取 RTL 脚注规则的解决方案。在此基础上,我现在想请求将关键设备系列排版为一个段落。当不使用 RTL 时,这很容易通过 \footparagraph{A}(用于脚注系列 A)实现。但是,当在 RTL 上下文中执行此操作时,会出现以下问题:

在此处输入图片描述

即,文本确实是段落形成的,但是 (a) 整个脚注是 LTR,并且 (b) 词干是 LTR。

以下是 MWE:

\TeXXeTstate=1

\documentclass[11pt,a4paper]{memoir}

\usepackage{fontspec}
\usepackage{verbatim}
\usepackage{polyglossia}
\usepackage[series={A,B}]{eledmac}
\setmainlanguage{english}
\setotherlanguage{arabic}
\usepackage{bidi}

%%% FONTS %%%

\newfontfamily{\arabicfont}[Script=Arabic,Scale=1.2,WordSpace=1.66]{Amiri-Regular}
\newfontfamily{\englishfont}[Scale=1]{Baskerville 10 Pro}

\newenvironment{arabik}{%
    \begin{Spacing}{2}\setRTL\arabicfont}{\unsetRTL\end{Spacing}}{}

%%% ELEDMAC %%%

\fnpos{critical-familiar}
\footparagraph{A}

\makeatletter
\let\footnoteruleA=\right@footnoterule
\let\Afootnoterule=\right@footnoterule
\makeatother
\rightfootnoterule

\newcommand{\aie}[1]{\RLE{\arabicfont{#1}}} % Arabic-in-English

\newcommand{\VAR}[2]{\edtext{#1}{\Afootnote{\aie{#2}}}}
\lemmaseparator[A]{[}

\newcommand{\NOTE}[1]{\footnoteB{#1}}

\newenvironment{eledarab}[1]{\beginnumbering \pstart \begin{arabik}}{\end{arabik} \pend \endnumbering}

%%% DOCUMENT %%%

\begin{document}

\begin{eledarab}
 بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت . المتوحد بالعظمة والجبروت . يحي ويميت وهو حي لا يموت . وصلى الله وسلم على سيدنا محمد سيد السابقين والآخرين ورضي الله عن الصحابة والتابعين . وتابعيهم بإحسان إلى يوم الدين . وبعد فهذه الورقات سميتها . بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت .المتوحد بالعظمة والجبروت .
\NOTE{This is a note in English.}
  يحي ويميت وهو حي لا يموت . وصلى الله وسلم على سيدنا محمد سيد السابقين والآخرين ورضي الله عن الصحابة والتابعين . وتابعيهم بإحسان إلى يوم الدين .
\VAR{هذه تعليقة}{هذه تعليقة طويلة}
   وبعد فهذه الورقات سميتها . بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت . المتوحد بالعظمة والجبروت .
\VAR{هذه تعليقة ثانية}{هذه تعليقة ثانية طويلة}
  يحي ويميت وهو حي لا يموت .
\end{eledarab}

\end{document}

请注意,主要语言已设置为英语;因此,我的自定义命令 \aie 使得文本可以在环境为 LTR 时运行 RTL。(这是有意为之,因为它复制了生产环境。)

我想象解决方案在于使用来自 bidi 的一些命令重新定义脚注系列或词条,但我无法弄清楚。我将不胜感激您的帮助。

答案1

如果您的文档的主要语言设置为阿拉伯语,您可以通过对\footnoteruleB和 进行一些自定义来获得您想要的效果\footnoteB

\documentclass[11pt,a4paper]{memoir}

\usepackage{polyglossia}
\usepackage[series={A,B}]{eledmac}
\setmainlanguage[numerals=maghrib]{arabic}
\setotherlanguage{english}

%%% FONTS %%%

\newfontfamily{\arabicfont}[Script=Arabic,Scale=1.2,WordSpace=1.66]{Amiri-Regular}
\newfontfamily{\englishfont}{Baskerville 10 Pro}

\newenvironment{arabik}{%
    \begin{Spacing}{2}\setRTL\arabicfont}{\unsetRTL\end{Spacing}}{}

%%% ELEDMAC %%%

\fnpos{critical-familiar}
\footparagraph{A}

\makeatletter
\let\footnoteruleA=\right@footnoterule
\let\Afootnoterule=\right@footnoterule
\let\footnoteruleB=\left@footnoterule
\makeatother

\renewcommand{\footnoteB}[1]{\LTRfootnote{#1}}

\newcommand{\aie}[1]{\RLE{\arabicfont{#1}}} % Arabic-in-English

\newcommand{\VAR}[2]{\edtext{#1}{\Afootnote{\aie{#2}}}}
\lemmaseparator[A]{]}

\newcommand{\NOTE}[1]{\footnoteB{\englishfont{#1}}}

\newenvironment{eledarab}[1]{\beginnumbering \pstart \begin{arabik}}{\end{arabik} \pend \endnumbering}

%%% DOCUMENT %%%

\begin{document}

\begin{eledarab}

 بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت . المتوحد بالعظمة والجبروت . يحي ويميت وهو حي لا يموت . وصلى الله وسلم على سيدنا محمد سيد السابقين والآخرين ورضي الله عن الصحابة والتابعين . وتابعيهم بإحسان إلى يوم الدين . وبعد فهذه الورقات سميتها . بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت .المتوحد بالعظمة والجبروت .
\NOTE{This is a note in English.}
  يحي ويميت وهو حي لا يموت . وصلى الله وسلم على سيدنا محمد سيد السابقين والآخرين ورضي الله عن الصحابة والتابعين . وتابعيهم بإحسان إلى يوم الدين .
\VAR{هذه تعليقة}{هذه تعليقة طويلة}
   وبعد فهذه الورقات سميتها . بسم الله الرحمن الرحيم وصلى الله على سيدنا محمد وآله وصحبه وسلم الحمد لله المتفرد بالملك والملكوت . المتوحد بالعظمة والجبروت .
\VAR{هذه تعليقة ثانية}{هذه تعليقة ثانية طويلة}
  يحي ويميت وهو حي لا يموت .
\end{eledarab}

\end{document}

请注意 fontspecbidi都已加载,polyglossia因此您可以避免在代码中引用它们。
在此处输入图片描述

相关内容