UTW 2026

Internationalization

Thirty years of line breaking

Robin Leroy

on  Thurs, 14:00in  Creativity Station (Room 109)for  40min

In 1998, Michel Suignard gave a talk at the 12th Internationalization and Unicode Conference titled “Worldwide Typography and How to Apply JIS X 4051-1995 to Unicode”. This synthesis of Japanese and French typographic rules was the inception of the Unicode Line Breaking Algorithm, which is used nearly everywhere that text is displayed to determine where lines can end. This talk by the current maintainer of the line breaking algorithm will present the history of that algorithm, from the ancestor standard JIS X 4051-1995 and the first version in Unicode 3.0 with 29 line breaking classes and 23 rules, to the current state with nearly 50 classes and more than 40 rules, with more being added year after year to improve the handling of the typographic rules of Hebrew (2012), Balinese (2023), French (2023, 2026), Simplified Chinese (2025), etc. Like the bidirectional algorithm, the line breaking algorithm is both complex and performance-critical: text cannot be displayed before these algorithms have run. The talk will therefore review the evolution of implementation strategies over the years, from a simple pair table for JIS X 4051-1995 to a space-aware one in Unicode 3, to the abandonment of pair tables in 2017, and finally to the state tables for finite automata which ICU has used for the past 23 years and which are being prepared for publication by the UTC. This historical approach is of practical interest for today’s implementers, as many of the approaches that have been abandoned in the past are rediscovered, and their shortcomings forgotten, leading to incorrect implementations. The talk will also discuss some questions in theoretical computer science that arise in the maintenance of the state-of-the-art implementation based on finite automata.

 Overview  Program