Rendering kaomoji in Arch Linux

tl;dr: install ttf-indic-otf plus a good CJK font and hope for the best. (╯°益°)╯彡┻━┻

Recently I was reading a Wanikani forum post and noticed Chrome couldn’t render its title properly.

kaomoji-not-working

Well, Wanikani is a site about japanese, so the usual suspect is a missing glyph in some japanese font. I thought about it for a second and remembered about kaomoji (顔文字), “face-character”, japanese emoticons; this should be one of them because of the parenthesis. So I needed some set of fonts to display those and I couldn’t find anything useful on Google.

My initial reaction was that I lacked some Chinese or Korean glyph, so I started installing several CJK (Chinese-Japanese-Korean) fonts and reopening Chrome. Not much progress. I eventually installed FreeFont, a font supposed to contain a good amount of unicode characters. Guess what?

kaomoji-2016-06-27

A bit of success, but the characters inside the parenthesis still weren’t rendered at all. I spent an hour trying various combinations of fonts as listed in the ArchWiki until I gave up on Linux and decided to see the title on my iPhone. Of course the thing rendered correctly there.

I googled that character (ಠ) and discovered about the Kannada alphabet used in India, and more generally that kaomoji uses alphabets that I didn’t even know existed. Of course, fixing it is quite simple: just install indic fonts. The result:

kaomoji-working

Specifically, for future reference, I installed these packages:

sudo pacman -Sy ttf-arphic-uming ttf-freefont ttf-indic-otf

I updated the ArchWiki fonts article with a section about kaomoji, this is it.

I also reviewed the selection on kaomoji.ru/en to look for more rendering problems. I didn’t find an obviously wrong instance, but it is hard to be sure. Hope I never have problems with this thing again. ┬─┬ノ( º _ ºノ)