Trying to use ntheorem's \theoremindent seems to indent the left side rather than the right side when used with polyglossia and right-to-left languages:



\setdefaultlanguage[calendar=hebrew, numerals=arabic]{hebrew}
\newfontfamily\hebrewfont{David CLM}

א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א א
ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב ב

enter image description here

Is this fixable?

Also it seems the numbering and separators are displayed wrong.

  • Note that the positioning of the colon (:) is also wrong: To the right, rather than the left, of the number. I guess ntheorem is very RTL-oriented in general... – einpoklum Dec 12 '11 at 8:42
  • Have split-off the separator question to here. – einpoklum Dec 12 '11 at 10:57

The offending lines in ntheorem-hyper.sty (or ntheorem.sty, depending on your distribution) seem to be:

\advance\@totalleftmargin \theorem@indent
\parshape \@ne \@totalleftmargin \linewidth

So, unsurprisingly, ntheorem assumes margins are on the left. Here's a suggested micro-patch, partially due to @egreg:


This should be adaptable into a patch for ntheorem-hyper.sty itself.

  • I could not post this as a comment so I had to post it as an answer. A modified version of Eyal/Egreg's patch is added to version 11.152 of bidi package which should be on CTAN soon. – Simurgh12 Apr 16 '12 at 6:01
  • user13617 Have a look at the faq to know why you cannot comment yet. That's not a reason to use features with a different purpose instead. – Stefan Kottwitz Apr 16 '12 at 7:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.