Ideas For i18n
From Mandriva Community Wiki
Ideas For i18n
Internationlization Thoughts of Mandriva 2008
This page summarize the massive ideas on I18n support of Next release of Mandriva Linux.
Contents |
What we concen here is: locale, keyboard layout/IMEs, various configurations for different programs, localdrake, predefined packages selection on installation (aka previous rpmsrate), etc. Other topics such as glyph rendering shouldn't follow.
[edit] Current Situation
- locales are seperated as locales-LL packages.
- The i18n subsystem is locales-LL packages dependent.
- Localedrake deals with /etc/sysconfig/i18n, mounting policy, kblayout/IMEs.
- DrakX deals with package selection (via rpmsrate).
[edit] Problems
- Where the users reside should have no relation with locales nor languages.
- Keyboard layout and timezone should not have relation with locales. They belong to hardware, or computer itself.
- No CLI interface of localedrake. (half wrong, eg: localedrake --apply --kde_lang=fr --kde_country=fr)
- There is no smart way to install corresponding language pack (ff/tb, ooo, etc) besides DrakX.
[edit] Aims
[edit] Framework
[edit] IMEs
- A core script (CLI version of localedrake) that manages all the IMEs. Users could use localedrake to activate certain IME. In fact, localedrake is just a frontend of update-alternatives.
- All the IMEs should provide their environment settings themseleves. For example, /etc/sysconfig/i18n/xinput.d/scim.
- All the IME packages should be splitted to something like scim-core, scim-xim, scim-immodule-gtk2, scim-immodule-qt3, scim-immoudle-qt4.
- scim-core uses %trigger to keep changes on package installations, in order to modify /etc/sysconfig/i18n/xinput.d/scim accordingly. Or, more generically, use file detection when setting environment.
[edit] Implementation
- For FHS, /etc/sysconfig/xinput.d/ (name to be discussed) will be introduced, to store configuration files for different IMEs. i.e., the alternatives. It will look like something like:
- /etc/sysconfig/xinput.d/scim
- /etc/sysconfig/xinput.d/fcitx
- /etc/sysconfig/xinput.d/uim
- New alternatives /etc/sysconfig/xinput (name to be discussed) will be introduced, it is maintained via update-alternatives command.
- /etc/sysconfig/i18n needed to be modifed so that it involks /etc/sysconfig/xinput. It will become:
- LC_ALL=zh_CN
- LC_CTYPE=zh_CN
- ...
- /etc/sysconfig/xinput
- As for different environment variables, it will be handled via provided alternatives.

