I am using XeLaTeX + polyglossia for Hebrew typesetting, and this works wonderfully. However, recently I needed to incorporate English words inside Hebrew paragraphs. This compiles wrong, as it attaches every non-letter character (such as commas, parenthesis, etc...) to the English LTR, well it should stay RTL.
It's easier to give an example than to explain it literally, so here's an example:
\documentclass{standalone}
\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}
אלף (Aleph), גימל (Gimmel).
\end{document}
This produces
where it should produce
Anything I am doing wrong?
Update
I have tried using the english
environment around the English text, but that has produced extra spaces, and anyway very cumbersome...
The code:
\begin{document}
אלף
\begin{english}(Aleph)\end{english},
גימל
\begin{english}(Gimmel)\end{english}.
\end{document}
Produces: