如何排版 RTL 文档,使其具有两列齐平和两列脚注

如何排版 RTL 文档,使其具有两列齐平和两列脚注

我正在处理一组希伯来语文档。我的一般工作流程是输入重新结构化文本,运行它rst2xetex,然后用 XeLaTeX 排版。我不知道该怎么做,创建一个带有段落脚注或两列脚注的双列文档。最接近的方法是使用类twocolumn选项,但我真的不喜欢将列处理成两个单独的页面。我希望列在底部对齐,就像multicol包中那样,脚注从第一列流到第二列。

如果可以做到这一点memoir那就太好了,但到目前为止,我运气不佳,因为它似乎不能很好地与 配合使用hyperref,而 rst2xetex 严重依赖 。我尝试“禁用” hyperref按照 docutils 说明操作,因为我不需要它,但是我仍然在 xetex 输出中收到错误。

以下是基本模板,删除了一些注释:

\documentclass[a4paper,12pt]{article}
% generated by Docutils <http://docutils.sourceforge.net/>
% rubber: set program xelatex
\usepackage[no-sscript]{xltxtra} % loads fixltx2e, metalogo, xunicode, fontspec
\defaultfontfeatures{Scale=MatchLowercase}
\usepackage{ifthen}

\setmainfont[AutoFakeBold=2]{SBL Hebrew}

%%% Fallback definitions for Docutils-specific commands
% numeric or symbol footnotes with hyperlinks
\providecommand*{\DUfootnotemark}[3]{%
  \raisebox{1em}{\hypertarget{#1}{}}%
  \hyperlink{#2}{\textsuperscript{#3}}%
}
\providecommand{\DUfootnotetext}[4]{%
  \begingroup%
  \renewcommand{\thefootnote}{%
    \protect\raisebox{1em}{\protect\hypertarget{#1}{}}%
    \protect\hyperlink{#2}{#3}}%
  \footnotetext{#4}%
  \endgroup%
}

% hyperlinks:
\ifthenelse{\isundefined{\hypersetup}}{
  \usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref}
  \urlstyle{same} % normal text font (alternatives: tt, rm, sf)
}{}

\usepackage[rldocument,extrafootnotefeatures]{bidi}
\RTLcolumnfootnotes
\twocolumnfootnotes

%%% Body
\begin{document}

\section*{\phantomsection%
  איך עושים את זה%
  \addcontentsline{toc}{section}{איך עושים את זה}%
  \label{id1}%
}

טיפול מיתולוגיה מדע או, מה אודות המלחמה עוד. נבחרים איטליה טכנולוגיה זכר
בה, או רבה\DUfootnotemark{id2}{id5}{1} שנורו יידיש למחיקה
<-- etc. -->
%
\DUfootnotetext{id5}{id2}{1}{%
ציון א
}
\end{document}
% vim: set ft=tex: %

如果我multicol在环境中添加并包装文档的主要部分multicols,脚注最终只会出现在左列下方的两列中,除非我删除额外的脚注功能。然后我在顶部有两列,但在底部只有一列脚注!

答案1

11.149我已经在软件包版本中修复了这个问题bidi,并刚刚将此版本上传到 CTAN。新的 TDS 应该在几个小时内可供下载。然后可以从以下位置下载 TDS这里

此外,将来如果您遇到与bidi软件包相关的任何问题,除了在此网站上发布您的问题之外,还可以给我发送电子邮件(我的电子邮件地址可以在bidi软件包的文档中找到),以便我了解该问题并进行修复。

答案2

这不是您问题的答案(抱歉,我找不到更好的地方发布此内容),但解释了为什么脚注最终出现在左栏而不是右栏。以下是最简单的示例:

\documentclass{article}
\TeXXeTstate=1
\begin{document}
\everypar\expandafter{\the\everypar \setbox0\lastbox \ifvoid0\else\beginR\usebox0\fi}
\hsize=\linewidth
\advance\hsize-\columnsep
\divide\hsize 2
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
\end{document}

尽管段落是按 RTL 排版的,但文本最终还是出现在左侧块而不是右侧块中,这就是extrafootnotefeatures我的bidi包的 multicol 选项中发生的情况。因此,要解决您提到的问题,这个最小工作示例应该出现在右侧块而不是左侧块中。我不确定通过修改 LaTeX 的输出例程是否可以实现这一点!

相关内容