ICU Line Breaker, Because There are People Waiting

Good evening from Stung Treng, Cambodia!

I want to share with you my heart… And my dilemma. (And some humor.)

I’ve been working closely with Lao language materials for some time, and in particular digital publishing (web, mobile, etc). Lao is complicated, especially compared with Latin script languages. Like English, Lao is best displayed with words kept together so far as possible (not cut in half between lines, for example). Unlike English, Lao doesn’t use spaces between words. Spaces act more like a comma or period.

imaginemewritinglikethis becausethisiskindawhatlaolookslikeifitwereinenglish yes,justlikethis.

So… The easy ‘fix’ is to use invisible spaces - spaces between words which can not be seen. They are the magical zero-width spaces - and they serve a very important purpose. They allow you a way to manually control where the text is broken between lines. A way of saying, “break me!” And, being ‘zero-width,’ they do not go against the established way of composing Lao text - using spaces to denote a pause. Thus, they are invisible…

But, the invisible spaces pose challenges. They can not be seen. So when you type them, it becomes incredibly hard to edit them. Because you can’t see them. They are invisible. :astonished:

On an Android or iOS device, they become even more interesting. Because they are invisible spaces, you can not find them on standard keyboards. Not only are they invisible, but they simply don’t exist! :rabbit: :tophat: So, when you type a post or email, using your favorite web browser (and you know which one that is), there simply is no way to type the invisible spaces! (Though, you can still, quite painfully, edit them…)

Now, you may be thinking, “this is quite complicated. How might someone fix this problem?”

Oh, but there is special solution - a solution both powerful and free. A solution where there is a digital land: free of users trying to find invisible spaces on their mobile phones… free from words cut in half and websites are horribly broken due to side-scrolling… free from worry, care, grief, and fear… Yes, my friend, such places exist!

The solution is called the International Components for Unicode BreakIterator. It works well, my friends, very, very well… LibreOffice uses it, other browsers use it, operating systems use it, Android/iOS uses it, many powerful programs use it… It automatically finds Lao (Thai, Khmer, Burmese) words, and tells the layout engine that there are places with no spaces where lines may be broken. And, it has been available on other browsers for years (like ones named after shiny metal). It indeed is a magical land!

However, there is one browser - a very nice browser. A special browser, which you can only find in a special place… A place near at hand! It sadly does not have this magical solution turned on. No, sadly, even though ICU has been included in it, the line-breaker still remains dormant. Asleep. In a code repository, yet never used… It cries in its sleep. A fox cuddles with it closely, yet it like a children’s toy with no battery, sits motionless in its arms… There is a sad face across it. It, along with the 145 million people who might use it, have a sad face. :frowning:

Would you, my friends, be willing to set it free? To insert the batteries? :battery: To turn on this magical thing?

You can my friend. You can.

All you need to do is turn on the line breaker for Lao (Thai, Burmese, and Khmer). And magical things will happen!

Might I ask what it would take for such a thing to happen? 145 million people are waiting. They’d love to use a certain browser, but they can’t… :frowning:

1 Like