Enabling Tamil fonts in Emacs (Spacemacs and Doom)

After seeing one of my friend Shrini using ORG mode in Emacs, I have been tempted to try it. I have heard of ORG mode before, but not get any inspiration to use it. Shrini, gave me a short intro to ORG mode, while we were pair programming for an opensource project. So, I decided to give it a try.

I always get night mare, while thinking of emacs. My previous experience with emacs was not good. So, I decided to try it with Spacemacs. Everytime I try a new IDE or Editor, my usual habit is to check the Tamil language support in it. The Tamil unicode font rendering with emacs is broken. But it can be easily fixed, by specifying the font in the dotfile of spacemacs.

(set-fontset-font "fontset-default" 'tamil "Noto Sans Tamil")

After closing and opening the emacs, tamil fonts seems to rendered properly.

Next I tried to type in Tamil using Ibus. I can’t get it working. After some research, I found that the python-ibus and ibus-el libraries needs to be installed. I scratched my head as the usual apt get thing failed. I had to manually download the files and install. (Download Links are provided at the end of the post). Then I need to add the lines in the Spacemacs dotfile.

(require 'ibus)
(add-hook 'after-init-hook 'ibus-mode-on)

After restarting the Ibus Daemon, it seems to be working ok. I am not getting a predictive behaviour with tamil input over spacemacs. Also I feel it is little heavier.

Meet Doom – EMacs

After little searching the internet, I found there is a another emacs distribution called Doom. I just backed up the ~/.emacs.d folder and start playing around with Doom. Doom Emacs has a very light learning curve, for some one familiar with Vim. For tamil font rendering, the unicode package needs to be enabled in the init.el. After making the changes I have to run the sync command for doom ~/.emacs.d/bin/doom sync. Tamil font then seems to be rendered fine in Doom.

As I had already installed the python-ibus ans ibus-el libraries, the tamil input seems to be working fine in Doom. I am using elementary os, it feels so good after setting up the tamil input.

PyGTK2 – http://archive.ubuntu.com/ubuntu/pool/universe/p/pygtk/python-gtk2_2.24.0-5.1ubuntu2_amd64.deb
Python IBus – http://archive.ubuntu.com/ubuntu/pool/main/i/ibus/python-ibus_1.5.5-1ubuntu3_all.deb
ibus-el – http://archive.ubuntu.com/ubuntu/pool/universe/i/ibus-el/ibus-el_0.3.2-2_all.deb