I came to believe the babel package, (along with the "hebrew" option)
is one of the most complicated one.
my current problem is that it conflicts with the amsthm package.
it is a known problem (I found 3-4 posts over then net) but found no solution.
here is an example: try
While if you remove the bable package, or change language,\documentclass[11pt,a4paper,twoside]{report}
\usepackage{amsmath,amssymb}
\usepackage{amsthm}
\usepackage[hebrew,english]{babel}
\newtheorem{lem}{Lemma}
\begin{document}
\begin{lem}
Hebrew (and maybe other Left-to-Right languages) simply collide with amsthm !
\end{lem}
\begin{proof}
\[ 1+1 = 2 \]
\end{proof}
\end{document}
it suddenly works:
(The above verified also with online latex compilers).\documentclass[11pt,a4paper,twoside]{report}
\usepackage{amsmath,amssymb}
\usepackage{amsthm}
\usepackage[greek,english]{babel}
\newtheorem{lem}{Lemma}
\begin{document}
\begin{lem}
Many languages works...
\end{lem}
\begin{proof}
\[ 1+1 = 2 \]
\end{proof}
\end{document}
till now I just avoid using the amsthm package, and define thm/lem/proofs/etc myself. Yet this has its own problems (for instance, I don't know how to define the \qedhere command myself, etc.). Does anyone have an idea?