TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

(This is a split-off from another RTL ntheorem issue.)

When you have a theorem in RTL language text (e.g. Hebrew), using XeTeX+polyglossia(+bidi)+ntheorem, the theorem separator comes out before, rather than after, the theorem number:

\newfontfamily\hebrewfont{David} % You may need David CLM

משפט מחוזי מאוד.

enter image description here

Same thing happens for a full-stop separator. Using MikTeX 2.9. Result of \listfiles:

 *File List*
 article.cls    2007/10/19 v1.4h Standard LaTeX document class
  size10.clo    2007/10/19 v1.4h Standard LaTeX file (size option)
ntheorem.sty    2011/02/16 1.31
  ifthen.sty    2001/05/26 v1.1c Standard LaTeX ifthen package (DPC)
polyglossia.sty    2010/07/27 v1.2.0a Babel replacement for XeLaTeX
etoolbox.sty    2011/01/03 v2.1 e-TeX tools for LaTeX
    etex.sty    1998/03/26 v2.0 eTeX basic definition package (PEB)
makecmds.sty    2009/09/03 v1.0a extra command making commands
fontspec.sty    2011/02/26 v2.1f Advanced font selection for XeLaTeX/LuaLaTeX
   expl3.sty    2011/06/19 v2478 L3 Experimental code bundle wrapper
 l3names.sty    2011/06/19 v2478 L3 Experimental namespace for primitives
l3bootstrap.sty    2011/06/19 v2478 L3 Experimental bootstrap code
    calc.sty    2007/08/22 v4.3 Infix arithmetic (KKT,FJ)
l3basics.sty    2011/07/04 v2493 L3 Experimental basic definitions
 l3expan.sty    2011/06/20 v2480 L3 Experimental argument expansion
    l3tl.sty    2011/07/09 v2498 L3 Experimental token lists
   l3seq.sty    2011/06/19 v2478 L3 Experimental sequences and stacks
   l3int.sty    2011/06/19 v2478 L3 Experimental integers
 l3quark.sty    2011/06/19 v2478 L3 Experimental quarks
   l3prg.sty    2011/07/06 v2495 L3 Experimental control structures
 l3clist.sty    2011/07/09 v2498 L3 Experimental comma separated lists
 l3token.sty    2011/07/02 v2491 L3 Experimental token manipulation
  l3prop.sty    2011/06/19 v2478 L3 Experimental property lists
   l3msg.sty    2011/06/19 v2478 L3 Experimental messages
    l3io.sty    2011/06/19 v2478 L3 Experimental input-output operations
  l3file.sty    2011/06/19 v2478 L3 Experimental file operations
  l3skip.sty    2011/06/19 v2478 L3 Experimental dimensions and skips
   l3box.sty    2011/06/19 v2478 L3 Experimental boxes
l3keyval.sty    2011/06/19 v2478 L3 Experimental key-value parsing
  l3keys.sty    2011/06/19 v2478 L3 Experimental key-value interfaces
    l3fp.sty    2011/06/19 v2478 L3 Experimental floating-point operations
l3luatex.sty    2011/06/19 v2478 L3 Experimental LuaTeX-specific functions
  l3toks.sty    2011/06/19 v2478 L3 Experimental token registers
  xparse.sty    2011/07/02 v2492 L3 Experimental document command parser
 xkeyval.sty    2008/08/13 v2.6a package option processing (HA)
 xkeyval.tex    2008/08/13 v2.6a key=value parser (HA)
fontspec-patches.sty    2011/02/26 v2.1f Advanced font selection for XeLaTeX/Lu
fixltx2e.sty    2006/09/13 v1.1m fixes to LaTeX
  eu1enc.def    2010/05/27 v0.1h Experimental Unicode font encodings
  eu1lmr.fd    2009/10/30 v1.6 Font defs for Latin Modern
xunicode.sty    2010/11/06 v0.96 provides access to latin accents and many othe
r characters in Unicode lower plane
gloss-hebrew.ldf    polyglossia: module for hebrew
    bidi.sty    2011/03/21 v1.1.6 <commit 145> Bidirectional typesetting in pla
in TeX and LaTeX
   iftex.sty    2010/07/25 v0.2 Provides if(tex) conditional for PDFTeX, XeTeX,
 and LuaTeX
loadingorder-bidi.def    2010/07/25 v0.5 making sure that bidi is the last pack
age loaded
xetex-bidi.def    2010/08/01 v0.8 bidi adaptations for XeTeX engine
footnote-xetex-bidi.def    2010/07/25 v0.5 bidi footnote macros for XeTeX engin
article-xetex-bidi.def    2010/07/25 v0.4 bidi adaptations for standard article
 class for XeTeX engine
hebrewcal.sty    2008/07/01 v2.4 Hebrew calendar for polyglossia (adapted from 
hebcal.sty in Babel)
babel-hebrewalph.def    2010/03/02 Babel definitions for Hebrew numerals
 Adapted from hebrew.ldf (2005/03/30 v2.3h)
share|improve this question
Doesn't happen to me; your theorem appears to be in upshape, while the default is italics. Have you got other customizations? – egreg Dec 12 '11 at 11:11
Using just this code with MikTeX 2.9 – einpoklum Dec 12 '11 at 11:36
I get the colon to the left of the number. May you add the result of \listfiles? – egreg Dec 12 '11 at 11:48
You have many outdated files; polyglossia, bidi and fontspec should be updated. – egreg Dec 12 '11 at 12:08
I have the latest of all the above (texlive-2011) and I'm seeing the same thing as Eyal. – daniel.jackson Dec 12 '11 at 13:04

It's quite curious, but it seems font dependent. With the "New Peninim MT" font I get the colon in the right place, with "David CLM" not.

However, the following seems to work:


An update to the most recent versions of polyglossia, bidi and fontspec is recommendable nonetheless.

share|improve this answer
Confirmed the \textup workaround with David on MikTeX 2.9. A weird bug indeed. – einpoklum Dec 12 '11 at 14:58

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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