SCIM was were appealing - it is an input method supporting many languages including Tamil. I decided to install and give it a try. To make things easy Ubuntu already ships with scim - installing was a breeze. I setup scim to input in English when C-1 is pressed and in Tamil when C-2 is pressed and use C-Space to toggle. For Tamil I selected the Phonetic method - this maps a key compination to a letter in tamil:
So pressing:
t ==> ட்
ta ==> ட
tha ==> த
This phonetic mapping made entering Tamil characters easy for users like me without knowledge of Tamil keyboard layouts.
கல்தோன்றி மண் தோன்றாக் காலத்து முன் தோன்றிய மூத்தக் குடி தமிழ்க் குடி
To make SCIM the default input type. I created a symbolic link ~/.xinput.d/default pointing to /etc/X11/xinit/xinput.d/scim.
Now, I decided to translated some of the basic things that my father will be using to Tamil. Google pointed me to a nice and simple tutorial on native language support. Now to add the missing parts all I need to do is replace the file /usr/share/locale-langpack/ta/LC_MESSAGES/gnome-panel-2.0.mo with a new one. This file cannot be edited directly, this one is an optimised file generated after compiling the original 'po' files. The po files are generated from the source. This time google pointed me to Rosetta - A web based system developed by Canonical to translate open source software. This is a very nice interface making things easy for people contributing towards translation. Quickly found the link to gnome-panel and downloaded the po file. Added the missing translations and compiled it to mo file using msgfmt.
The end result is a pleasing desktop in தமிழ்:
