January 5, 2011

imsettings 1.0.0 released

3 years ago, this project has been branched from im-chooser, GUI frontend to select the input method for desktop use. there has been some dozens of bugs -- even in this release probably but anyway ;) -- being fixed in releases.
Today I'm pleased to announce this release finally, with the support of the majority toolkits/desktops in the opensource world.

Let me introduce this project a bit for those who don't yet know what imsettings is and how it behaves to determine the input method for you.

What the input method one want to use would be one of the personal preferences. that shouldn't be limited by the distributions, even though they should select the better one for their default input method. so this is a framework to provide facilities to give you some informations for input methods, switching among them for your preference without restarting your desktop and applications.

So how imsettings notifies the input method preference to applications? the core technology imsettings relying on is XSETTINGS. as some configuration management daemons on desktops also uses this, imsettings is also sending the input method information through XSETTINGS (indirectly!) to applications. this would mean it doesn't work properly if your desktop doesn't have any XSETTINGS manager such as gnome-settings-daemon.  and only one manager instance are permitted in a desktop session. therefore imsettings doesn't behave a manager instance not to interfere its working for other desktop configurations.  Fortunately any configurations for desktops are stored in their own configuration system. and they have any way of updating it through APIs. this uses it and notifying the input method preference to applications. for example GConf for GNOME, xfconf for XFCE and so on. also any operations are done through D-Bus. this allows you to switch the input method anytime. you wouldn't mind how to bring up your input method. imsettings do for you according to the configuration file provided describing below.

Next, how to let imesttings know what input methods are available on your system? this step would be easy. you just need to put a file containing some shell-environment-variable like configurations on the certain place. you can see here for the available parameters or even good to read README file too.

Any further informations, source code etc are available at http://code.google.com/p/imsettings/.

No comments: