52

Could someone summarize features which are (1) common and (2) different for the babel and polyglossia packages? I know that babel 3.8 (current version) fails to run for some languages (eg, Russian) under LuaLaTeX and XeLaTeX (at least it was so 2 years ago). What will be the future of the polyglossia package if babel 3.9 (which is now babel-alpha) will manage to work with XeLaTeX? Will be any sense to use polyglossia as a replacement of babel in that case?

UPDATE: I am sorry for mixing several questions in one post. Main question was about differences between polyglossia and babel. For example, polyglossia has options specific to some languages.

2

2 Answers 2

37

The relationship between babel and polyglossia with respect to XeTeX is complicated. The general rule of thumb is that if the babel .ldf file uses non-Latin scripts, then you should use polyglossia and generally can't use babel but if it assumes Latin scripts, you may still be able to use babel. With respect to your specific question, about Russian, it's obviously possible to write babel .ldf files that work with both engines, but for most of the non Latin scripts, this will not have been done and polyglossia will still be required.

The issues with Cyrillic are arguably less complicated than those using RTL scripts such as Hebrew and Arabic (as alluded to in @egreg's comment). Other scripts such as for Hindi also pose special problems for which pdfLaTeX is unlikely to be a choice. So polyglossia will remain required for those scripts which independently depend on XeLaTeX.

In 2013, Javier Bezos released a new version babel which (among other things) provides better support for UTF-8 engines such as XeLaTeX and LuaLaTeX. This means that the differences between babel and polyglossia for most Latin script based languages will be minimal, but for RTL languages and non-Latin script languages generally, polyglossia support may be a better choice. The current version of babel (3.9 at time of writing) provides "minimal support for XeTeX and LuaTeX".

6
  • 1
    Moreover, bidi integrates with polyglossia
    – egreg
    Dec 29, 2012 at 15:29
  • Indeed. such Russian.ldf has been already written. See ctan.org/pkg/russian. Dec 29, 2012 at 16:36
  • 3
    Can you use both? Suppose that you wanted to write a document in Welsh about Hebrew, for example. Welsh requires babel but Hebrew requires polyglossia. Or is this kind of combination just not supported?
    – cfr
    Jan 2, 2014 at 21:06
  • Polyglossia now has more correct support for Welsh (and more extensive) than Babel. So you can write about Hebrew in Welsh. (At least, I assume you can since you're a linguist.) It is apparently excruciatingly difficult to get mistakes in Babel's language files corrected, whereas it is apparently quite straightforward in Polyglossia ;).
    – cfr
    Aug 31, 2015 at 3:04
  • 1
    New versions for welsh, spanish and vietnamese for babel are on the way, and they will be available very likely in a few weeks. In the near future (I'm working very actively) I presume babel 3.10 will be out (I hope before Christmas, but one never knows). Aug 31, 2015 at 15:08
4

As far as I know, polyglossia is intended to be a replacement of babel for XeLaTeX.

2
  • 4
    But why I would need polyglossia if babel will work with xelatex? In particular, the new russian LDF (ctan.org/pkg/russian) makes it possible to use babel with either of the existing latex engines, including xelatex. Dec 29, 2012 at 15:07
  • 2
    @Igor Kotelnikov: who knows what will happen? the current work aims to process the (large) backlog of babel error reports. whether this work will leave us with a babel that works with unicode input (and things like bidi) remains to be seen. so your question is (as yet) not answerable, i fear. Dec 29, 2012 at 21:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .