Qiang Zhao
2015-07-10 13:29:21 UTC
M17N team members:
hi!
I'm handling with ibus debug works on SLED(S)now, and I'm new to SUSE M17N strategy,
but I have this question as subject.
Current situation:
Our IM server start like this:
1) System boot, Then xinit launch /etc/X11/xim to start an IM server.
2) Get /etc/sysconfig/language IM server selection. This changes the default for all users.
3) If user define "INPUT_METHOD" in ~/.profile, then select IM server by it, and ignore step2's setting for current user;
4) Regardless the result step2 and step3, xim will start IM server by current user's language.
This xim script is written in 10 years ago, something have changed in these days.
For step3,
It's better to move customer definition to a special file, like ~/.inputmethod or ~/.config/.inputmethod.
Because it's hard for a program to change, especially when customer have written complex code flow in ~/.profile .
Reference to: Bug 899259 - SLES12-RC3 ibus-setup pop up not working in Chinese, Korean, and Russian
Mr Takashi Iwai point out this very clearly.
For step4:
I think it's unnecessary in future.
Resons:
1, IM Server & IM Engine are different.
A certain kind of IM server, like ibus, fcitx, scim, can supporting many kind of IM Engines.
With these engine, people input in different language in the same server.
Select IM Server by LANG is meaningless.
2, Default IM server is supposed to put in "/etc/sysconfig/language". it is defined during system installation.
User custom IM server is supposed written in "~/.inputmethod" or "~/.config/.inputmethod."
No need to be judged every time system start.
4, We will have only 1 IM server installed in future.
Reference to: Fate 319095: deprecate fcitx chinese input method in favor of ibus.
If customer installed another IM server after installation, then they can active one in custom file.
5, In early times, We have a dead key bug
Bug 702064 - Dead keys don't work - https://bugzilla.novell.com/show_bug.cgi?id=702064
It's already have fixed patch and don't have reproduced yet, and I have test ibus with many language,
So it won't influence.
In that way, we don't need to select an IM server for customer by LANG env.
For IM engines:
1, Users are supposed to select their IM Engine in "All Settings"->"Region & Language".
Then System record his selection, active this selection at next time he login gnome.
2, Then how to define user input method for the first time login?
I think the answer is "gnome-initial-setup".
And there are also some other desktop and service settings need to be collect before customer first login,
these settings are hard to guess, Some distribution already have use it, and it's the GNOME suggest method.
3, What I want to say is, gnome-initial-setup, Region_Language, ~/.inputmethod, and /etc/sysconfig/language
can serve any people with any input scenario they want.
Qiang Zhao
hi!
I'm handling with ibus debug works on SLED(S)now, and I'm new to SUSE M17N strategy,
but I have this question as subject.
Current situation:
Our IM server start like this:
1) System boot, Then xinit launch /etc/X11/xim to start an IM server.
2) Get /etc/sysconfig/language IM server selection. This changes the default for all users.
3) If user define "INPUT_METHOD" in ~/.profile, then select IM server by it, and ignore step2's setting for current user;
4) Regardless the result step2 and step3, xim will start IM server by current user's language.
This xim script is written in 10 years ago, something have changed in these days.
For step3,
It's better to move customer definition to a special file, like ~/.inputmethod or ~/.config/.inputmethod.
Because it's hard for a program to change, especially when customer have written complex code flow in ~/.profile .
Reference to: Bug 899259 - SLES12-RC3 ibus-setup pop up not working in Chinese, Korean, and Russian
Mr Takashi Iwai point out this very clearly.
For step4:
I think it's unnecessary in future.
Resons:
1, IM Server & IM Engine are different.
A certain kind of IM server, like ibus, fcitx, scim, can supporting many kind of IM Engines.
With these engine, people input in different language in the same server.
Select IM Server by LANG is meaningless.
2, Default IM server is supposed to put in "/etc/sysconfig/language". it is defined during system installation.
User custom IM server is supposed written in "~/.inputmethod" or "~/.config/.inputmethod."
No need to be judged every time system start.
4, We will have only 1 IM server installed in future.
Reference to: Fate 319095: deprecate fcitx chinese input method in favor of ibus.
If customer installed another IM server after installation, then they can active one in custom file.
5, In early times, We have a dead key bug
Bug 702064 - Dead keys don't work - https://bugzilla.novell.com/show_bug.cgi?id=702064
It's already have fixed patch and don't have reproduced yet, and I have test ibus with many language,
So it won't influence.
In that way, we don't need to select an IM server for customer by LANG env.
For IM engines:
1, Users are supposed to select their IM Engine in "All Settings"->"Region & Language".
Then System record his selection, active this selection at next time he login gnome.
2, Then how to define user input method for the first time login?
I think the answer is "gnome-initial-setup".
And there are also some other desktop and service settings need to be collect before customer first login,
these settings are hard to guess, Some distribution already have use it, and it's the GNOME suggest method.
3, What I want to say is, gnome-initial-setup, Region_Language, ~/.inputmethod, and /etc/sysconfig/language
can serve any people with any input scenario they want.
Qiang Zhao