我正在使用 LYX。
当我在 lyx 中编写一个结合了希伯来语 (RTL) 和英语 (LTR) 的文件时,有时我会在左边写以英语单词开头的行,而只有以英语单词开头的行。问题是我希望所有文件都是 RTL。当我使用 section/subsection/regular 时,就会出现这种情况...
我怎样才能把所有的行都放到正确的位置,而不管我使用哪种语言?
我的问题是没有把所有的部分都放在右边。如果我只用英文写,然后使用段落设置把它放在右边,那就没问题了。问题是当我想用英文单词开始这个部分,然后用希伯来语写,所有的部分都会右对齐。
我希望此图像中的文字描述位于右侧“תיאור”单词上方......(而不是反转单词..)
谢谢。
编辑-这是图像的全部文件。
%% LyX 2.1.3 created this file. For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\RequirePackage{fix-cm}
\documentclass[english,hebrew]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9,cp1255]{inputenc}
\usepackage{geometry}
\geometry{verbose,tmargin=1cm,bmargin=2cm,lmargin=1cm,rmargin=1cm}
\usepackage{fixltx2e}
\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
\usepackage{theorem}
\theorembodyfont{\upshape}
\newtheorem{theorem}{\R{îùôè}}[section]
\AtBeginDocument{\make@lr\thetheorem}
% The following chunk fixes export with XeTeX.
% It is needed because polyglossia is used by default
% and \make@lr is only defined by babel.
\@ifundefined{make@lr}
{\def\make@lr#1{\begingroup
\toks@=\expandafter{#1}%
\edef\x{\endgroup
\def\noexpand#1{\noexpand\@number{\the\toks@}}}%
\x}}{\relax}
\@ifundefined{date}{}{\date{}}
\makeatother
\usepackage{babel}
\begin{document}
\begin{description}
\item [{רואית}] הלימ הלימ
\selectlanguage{english}%
\item [{\inputencoding{latin9}description}] \inputencoding{cp1255}\R{הלימ
הלימ הלימ}\selectlanguage{hebrew}%
\end{description}
\end{document}
如果我删除 \selectlanguage{english}%,该项目将转到正确的位置,但英文文本就像镜像一样。
答案1
使用较新的 TeX 引擎之一来排版希伯来语等语言要容易得多,因为您可以访问fontspec
、、polyglossia
...bidi
等等。
这是我认为您想要的输出:
这是我的代码,必须用 XeLaTeX 进行编译:
\documentclass{article}% egreg's preamble from https://tex.stackexchange.com/a/139006/
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setotherlanguage{english}
\setmainfont{Pfennig}
\newfontfamily{\hebrewfont}{Pfennig}
\begin{document}
\begin{description}
\item [\textenglish{description-}] {מילה מילה מילה}
\item [{תיאור }] מילה מילה מילה
\end{description}
\end{document}
这是基于egreg 的回答。
根据其文档,LyX 可以配置为使用 XeTeX 作为引擎。指示可以在 LyX wiki 上找到。
答案2
Lyx 2.2 支持 rtl 和 ltr,无需任何附加代码,只需: - 从文档设置中选择希伯来语。 - 选择您的字体。现在您可以写希伯来语或英语。
问候