This question is closely related to this one.
I am trying to enter Latin characters with accents into a Hebrew paragraph, using XeLaTeX + polyglossia. It turns out that if I don't use the english
environment, the accented characters disappear (perhaps since they do not exist in the related Hebrew font), but if I am using the english
environment, then extra spaces are being added to my non-Hebrew text, and in any of the cases, the order of the words is reversed.
Here's the code:
\documentclass{article}
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\usepackage{fontspec}
\newfontfamily\hebrewfont[Script=Hebrew]{David CLM}
\newfontfamily\hebrewfonttt[Script=Hebrew]{Miriam Mono CLM}
\newfontfamily\hebrewfontsf[Script=Hebrew]{Simple CLM}
\usepackage{bidi}
\begin{document}
שמו היה Paul Erdős.
שמו היה \begin{english}Paul Erdős\end{english}.
\begin{english}
His name was Paul Erdős.
\end{english}
\end{document}
And here's what is produced:
שמו היה {\rmfamilylatin Paul Erdős}.
.Erdős Paul שמו היה
. It this what you want? (But I don't have your fonts, so I use Arial Unicode MS, perhaps it matters).setmainfont
instead ofnewfontfamily
in the preamble (and it seems like I need it, since otherwise--
is compiled as--
instead of as en-dash in Hebrew; that's a separate issue), then thermfamilylatin
does not fix the missing character.