Deciphering Basmala

lordgrenville1 pts0 comments

The Universe of Discourse : Deciphering basmala

The Universe of Discourse

Mark Dominus (陶敏修)

mjd@pobox.com

About me

RSS<br>Atom

12 recent entries

Deciphering basmala<br>My 1992 view of the problems of computer programming in 1992<br>Egyptian fraction multiplication<br>Update: Here I am at the Sagrada Família<br>Egyptian fractions for 2/105<br>Did Ahmes find the best expansions for 2/n?<br>Programmers will document for Claude, but not for each other<br>How are John Waters movies like James Bond movies?<br>Documentation is a message in a bottle<br>Bo Diddley<br>Language models imply world models<br>John Haugeland on the failure of micro-worlds

Archive:

2026:<br>JFMAMJ<br>2025:<br>JFMAMJ<br>JASOND<br>2024:<br>JFMAMJ<br>JASOND<br>2023:<br>JFMAMJ<br>JASOND<br>2022:<br>JFMAMJ<br>JASOND<br>2021:<br>JFMAMJ<br>JASOND<br>2020:<br>JFMAMJ<br>JASOND<br>2019:<br>JFMAMJ<br>JASOND<br>2018:<br>JFMAMJ<br>JASOND<br>2017:<br>JFMAMJ<br>JASOND<br>2016:<br>JFMAMJ<br>JASOND<br>2015:<br>JFMAMJ JASOND<br>2014:<br>JFMAMJ JASOND<br>2013:<br>JFMAMJ JASOND<br>2012:<br>JFMAMJ<br>JASOND<br>2011:<br>JFMAMJ<br>JASOND<br>2010:<br>JFMAMJ<br>JASOND<br>2009:<br>JFMAMJ<br>JASOND<br>2008:<br>JFMAMJ<br>JASOND<br>2007:<br>JFMAMJ<br>JASOND<br>2006:<br>JFMAMJ<br>JASOND<br>2005: OND

Subtopics:

Mathematics250<br>Programming102<br>Language96<br>Miscellaneous75<br>Book50<br>Tech49<br>Etymology36<br>Haskell33<br>Oops30<br>Unix27<br>Cosmic Call25<br>Math SE25<br>Law23<br>Physics21<br>Perl17<br>Biology16<br>Brain15<br>Calendar15<br>Food15

-->

-->

Technorati Profile<br>-->

Comments disabled

Tue, 23 Jun 2026

Deciphering basmala

Making the rounds last week was this magnificent article on the<br>complications of Arabic typesetting,<br>An interactive introduction to the terrific experience of rendering Arabic typography and its technical debt.<br>The author, Saleh, promises:

The reply took and the closure of the ticket took half an hour or<br>so. The reasons behind it took five hundred years to pile up, and<br>they involve a twice-mutilated vizier, a Qurʾān that vanished for<br>four centuries, a Beirut newspaperman with a deadline, and an<br>Egyptian physician who taught himself font engineering for fun (or<br>that what I imagine about him). Walking through these, ended up to<br>be the most enjoyable couple of weeks in that job, and I want to go<br>through it here too.

And then wow, does it deliver. Don't read my article, go read Saleh's<br>instead, or at least read it first.

Still here? Then a disclaimer: I do not know Arabic, not<br>even all the letters, yet. I tried hard to get the details right<br>in this article, but I expect there are misspellings, misstatements of<br>fact, and so on, for which I apologize in advance.

In one of my favorite parts of his article,<br>Saleh discusses how, because Arabic script is always cursive, it is<br>important how the<br>letters are joined to one another. Modern Latin script has only a<br>few ligatures, and omitting them is barely noticeable:

But in Arabic, the ligatures are important. The text looks grossly wrong without<br>the correct ligatures.

Early font engines couldn't render Arabic ligatures properly, and<br>on-screen Arabic text always came out looking ridiculous, with the<br>letters separate like Latin script letters, which is completely wrong<br>for Arabic. Saleh gives this example,<br>which says “hello, world, this is Arabic text”. It should look like<br>this:

مرحبا بالعالم، هذا نص عربي

But early font renderers rendered it like this:

م‌ر‌ح‌ب‌ا‌ ‌ب‌ا‌ل‌ع‌ا‌ل‌م‌،‌ ‌ه‌ذ‌ا‌ ‌ن‌ص‌ ‌ع‌ر‌ب‌ي

The crappy rendering was unfortunate, and only barely tolerable, just<br>barely better than nothing. Even if you don't read Arabic (I don't)<br>you can see the differences. Notice, for example how the elegant and<br>symmetric cluster لعا is mangled to ل‌ع‌ا. Or look at just the first<br>(rightmost) letter. It is the Arabic letter ‘m’, called mīm. It is<br>supposed to connect with the letter next to<br>it, and not to have that hanging tail, which only appears when mīm<br>is written by itself, or at the end of a word.

For the supremely important phrase

بِسْمِ ٱللهِ ٱلرَّحْمَٰنِ ٱلرَّحِيْمِ

the crappy rendering was not tolerable. This phrase is “bismillah al-raḥman<br>al-raḥim”. It means “in the name of God, the gracious, the merciful”,<br>and it appears at the start of each of the 114 surahs (chapters) of<br>the Qur'an (except the ninth for some reason). There is a<br>centuries-long tradition of calligraphic expression of this phrase,<br>in<br>the most perfect possible ways.

“Khalili Collection Islamic Art cal 0154",<br>Ottoman Turkish, 19th century. Public domain, via<br>Wikimedia Commons.

It would be blasphemous to render this phrase, called the “basmala”, this<br>crucial expression of honor for God, as a jumble of letters. Imagine<br>if Exodus 20 had had God introducing the Ten Commandments by saying

The incredible solution to this one problem was the inclusion in<br>Unicode of a special codepoint U+FDFD ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM.<br>As a single codepoint, the basmala could be assigned a single glyph, and the<br>single glyph could be designed correctly, so as not to look like<br>trash.<br>Here it is. Remember, this is a single character:

In Firefox, with my fonts, the glyph renders like this, long and narrow:

but on my Android phone there is a very different glyph. Here it...

jfmamj jasond arabic basmala like letters

Related Articles