Ideas For i18n
From Mandriva Community Wiki
(Redirected from Development/Ideas/i18n)
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.

