LaTeX 中从右到左的文本 - 反转的数字和括号

LaTeX 中从右到左的文本 - 反转的数字和括号

最后我终于可以用 LaTeX 来学习希伯来语了。

除了两个问题(数字和括号)之外,一切都运行良好。数字的书写方式是相反的(一百写成 001),括号也是相反的),就像这样(。这个问题有解决办法吗?

梅威瑟:

\documentclass[english,hebrew]{article}
\usepackage[utf8x]{inputenc}
\usepackage{babel}
\begin{document}
המספר (מאה) בספרות הוא 100
\end{document}

答案1

您可以使用 Artyom Beilis 的双向纺织它对 (La)TeX 文件进行预处理,以反转括号并将数字括在适当的宏中。

文档在第 1 节中列出了您准确提到的问题……这就是编写该实用程序的动机。

使用问题的 MWE:

\documentclass[english,hebrew]{article}
\usepackage[utf8x]{inputenc}
\usepackage{babel}
\usepackage{biditex}
%BIDION
\begin{document}
המספר (מאה) בספרות הוא 100
\end{document}
%BIDIOFF 

并且运行

cat mwe.tex | biditex.exe -o mwe_out.tex

你得到:

\documentclass[english,hebrew]{article}
\usepackage[utf8x]{inputenc}
\usepackage{babel}
\usepackage{biditex}
\begin{document}
המספר )מאה( בספרות הוא \Lnum{100}
\end{document}

使用 LaTeX 进行输出时,其结果将符合您的预期:

输出

当然,您可能想将所有这些都脚本化。

顺便说一句,BiDiTeX 似乎需要 UTF-8 输入。

答案2

我同意 daniel.jackson、Polyglossia 和 XeTeX 是可行的方法。这是我的工作示例,尽管它并不简单:

\documentclass[12pt]{article}

%polyglossia packages - polyglossia must be first
\usepackage{polyglossia}
\usepackage{bidi}

%XeTeX packages
\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage{xunicode}

%settings for packages
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\setmainfont{Linux Libertine O}

\begin{document}

Here is a whole phrase or section in left-to-right direction:

\setRL
 הנשיא האמריקאי ברק אובמה נאם הערב (שישי) בוועידת הקהילות היהודיות שנערכה בוושינגטון.
\unsetRL

Or, for when a few words will do:

\RL{\ldots נאם הערב (שישי) בוועידת\ldots}

And it works fine with numbers as well:

\RL{\ldots נאם 100 + 30 = 130 הערב (שישי) בוועידת\ldots}

Even nested environments work just fine:

\RL{\ldots נאם \LR{with English in the middle} הערב (שישי) בוועידת\ldots}

\end{document}

在此处输入图片描述

相关内容