View on GitHub

Babel

The multilingual framework for localizing LaTeX, LuaLaTeX, XeLaTeX

What’s new in babel 3.61

2021-06-28

Danda

Only LuaLaTex.

In Indic scripts danda and doble danda must be kept with the preceding text even if a space is inserted. The ‘transform’ danda.nobreak prevents this break.

This transform is available for Assamese, Bengali, Gujarati, Hindi, Kannada, Malayalam, Marathi, Oriya, Tamil, Telugu.

Improvements in Arabic justification

Only LuaLaTex.

Kashida is disabled in horizontal boxes with internal infinite stretching and fixed width.

With this addition, Arabic justification is usable in many cases, as the example for Arabic in the repository shows (tex, pdf). Remember, however, the interface may change slightly in the future.

There are still many messages of underfull boxes generated by the internal calculations. There are other things to be sorted out, like the ‘long’ kaf with elongated forms (with swash variants), and font based declarations.

Multiple \babelprovide’s

\babelprovide was not quite well behaved when applied several times for the same language. It was originally meant for a single call and the subsequent ones worked in many cases but not all. This version improves the situation so that almost any change done by means of ini keys (for example, typography/frenchspacing) should work. There are many keys performing very diverse tasks, so very likely some of them doesn’t still work exactly as expected, but it will fine tuned in the following versions, and guide Using \babelprovide to modify or extend locales will be extended accordingly.

Fixes

There is a partial fix for the \write issue with \selectlanguage. See \selectlanguage pushes section to new page.

Although the fix is not perfect and it can even lead to some problems, these must be less frequent than the two bugs described in the linked issue. I’m investigating how to improve the way babel communicates with the aux file, including also this issue, which is far from trivial.

Another fixed bug is #129 (\shorthandoff*{^} causes error for \section command).