I’m currently writing my thesis in LaTeX, using the scrreprt class and xetex for better language support. With xetex, I’m supposed to use polyglossia instead of babel. I did not load the babel package manually. However, the xelatex output states that babel is loaded. Why would that be the case?

% mwe.tex

Upon xelatex mwe.tex, the logfile states (snippet):

This is XeTeX, Version 3.14159265-2.6-0.99991 (TeX Live 2014/Arch Linux) (preloaded format=xelatex 2015.7.6)  15 JUL 2015 11:31
entering extended mode
 restricted \write18 enabled.
 %&-line parsing enabled.
LaTeX2e <2014/05/01>
Babel <3.9l> and hyphenation patterns for 79 languages loaded.
Document Class: scrreprt 2015/02/07 v3.16 KOMA-Script document class (report)

The line

Babel <3.9l> and hyphenation patterns for 79 languages loaded.

doesn't actually refer to the LaTeX babel package being loaded as a whole. Rather, it refers to the subset of functionality from babel which provides a mechanism for switching between hyphenation patterns. For pdfTeX and XeTeX this information has to be built into the format so can't be loaded at run time. The babel code therefore includes sufficient generic set up to allow both plain and LaTeX formats to include hyphenation patterns and to provide mechanisms to switch between them. (LuaTeX is slightly different as the patterns are not stored in the format, but the same generic switching mechanism is included.)

These generic mechanisms for choosing hyphenation are used by babel and polyglossia, and as I say for plain TeX as well as LaTeX. (Note: Knuth's TeX does not load this mechanism: by 'plain' I here mean plain-like formats for pdfTeX, XeTeX and LuaTeX engines.)

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.