I am using LaTeX for typesetting some novels and am in a dilemma about which engine to use.

  • pdfLaTeX has full microtype support, but I am not free to choose the font I want
  • For XeLaTeX, the situation is exactly the opposite of the one above
  • LuaLaTeX has full microtype and fontspec support, yet some people report some instability.

Based on this list, LuaLaTeX would seem like the most obvious choice. But I am concerned about this instability. Just how "unstable" is LuaLaTeX? What should my concerns be? Note that what I am going to typeset is simple novels; no fancy figures or advanced layout that could mess up.

  • 2
    Something that significantly lowers the quality of the output. Actually, I'm mostly trying to get an impression about which kind of instability we are talking about. For people are good at telling that it is unstable, yet less good at telling what this instability concretely involves. – Gaussler Jan 16 '15 at 18:50
  • 7
    LuaTeX is not really unstable, but version .7x mean that there could still be some major changes. To put it in a real small and simple nutshell: It is just not done yet. – Johannes_B Jan 16 '15 at 18:50
  • 7
    The engine luatex is not "unstable". I have been using luatex since 2007-2008, and haven't encountered any limitation of the engine in the last 4 or 5 years. However, I mostly use ConTeXt which is guiding lot of the development of luatex, and therefore, the macro package tends to be in sync with luatex. The same is not the case with LaTeX where (AFAIU) some of the "instability" is due to packages not being up to date with the engine. – Aditya Jan 16 '15 at 18:52
  • 5
    And before people start labeling this a duplicate of tex.stackexchange.com/questions/3094/…, plese note that that question is from 2010. I seriously hope that something has happened since then. – Gaussler Jan 16 '15 at 18:59
  • 7
    Altough @Mico says “nobody in their right mind will assert that LuaTeX is ‘truly stable.’” I think the answer to What should my concerns be? is: none. – Manuel Jan 16 '15 at 19:28

Here's an excerpt from the introductory chapter of the LuaTeX reference guide (version 0.79.2):

Features may come and go. The current version of LuaTeX is not meant for production and users cannot depend on stability, nor on functionality staying the same. Nothing is considered stable just yet. This manual therefore simply reflects the current state of the executable. Absolutely nothing on the following pages is set in stone. When the need arises, anything can (and will) be changed. If you are not willing to deal with this situation, you should wait for the stable version. ... Full stabilization will not happen soon, the TODO list is still large.

In short, nobody in their right mind will assert that LuaTeX is "truly stable." That said, if your use case is mostly "plain vanilla" text typesetting (with little or no math) and if you use Opentype fonts, I'd say you can be reasonably sure by that no major instabilities will arise that may make working with Lua(La)TeX needlessly tedious. It's different for package writers. I gather, though, that your ambition isn't to create packages that exploit LuaTeX's many powers. Hence, you needn't worry about possibly having to modify features of your package to hide any "changes under the hood" from users.

By the way, some of the more significant changes that have occurred over the past three years are not related to the LuaTeX engine itself but to the fontspec and luaotfload packages. The good news, from my point of view, is that font loading and handling has become both much faster and more dependable over this period. For instance, the first time you run Lua(La)TeX on your system, a large font cache file is created; this used to take a rather distressingly long time just a couple of years ago, whereas now the task is typically accomplished quite expeditiously -- unless, I suppose, you happen to have several thousand fonts installed on your computer.

To be sure, not all changes have been for the best, at least not from my point of view. (I should mention that I use MacTeX on a system that runs MacOSX 10.10 "Yosemite".) In particular, starting with LuaTeX 0.78, support for Apple Advanced Technology (AAT) font features was dropped. While I can understand the rationale the Lords (no Ladies for now, unless I'm mistaken) of LuaTeX gave for this change, the upshot was that if your system runs MacOSX, some of the previously available font-related functionality -- e.g., kerning and ligaturing -- with some (though fortunately not most) system fonts vanished, poof!, without replacement when MacTeX2014 was rolled out.

  • How is the current support of polyglossia in LuaLaTeX? – Gaussler Jan 16 '15 at 20:20
  • 4
    @Gaussler - In my experience, LuaLaTeX and polyglossia now work together very well. However, I've only every used it with English and German language documents, so I can't vouch for how they coexist for other languages. It's encouraging that the current version of the polglossia user guide states, right in its title, that it's "A Babel Replacement for XeLaTeX and LuaLaTeX". Hopefully Arthur Reutenauer, the current maintainer of polyglossia and a regular contributor to this site, will weigh in with more information. – Mico Jan 16 '15 at 21:12
  • 2
    Nice explanation :-) – karlkoeller Jan 17 '15 at 8:17
  • @Mico, so the 1.00 version to come in 2018 (see en.wikipedia.org/wiki/LuaTeX#Versions) will be the first stable release? – Gaussler Feb 15 '15 at 13:46
  • @Mico Polyglossia's LuaLaTeX support has essentially not changed since I first added it 3 years ago. The core part of the code is rather simple and I've had rather few bug reports, hence I think the code can be considered mature. That said, support for some languages is incomplete, or lacking altogether, depending on how well fontspec handles the underlying script. It's hard to be more precise in 600 characters, we could take that to the chat, or, better yet, it could be made into a question. – Arthur Reutenauer Jun 2 '15 at 20:52

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.