Red Hat Bugzilla – Bug 490013
[EasyFix] ibus - Next Engine hotkey global default Alt-Shift, not CTRL-Shift
Last modified: 2009-04-21 03:59:30 EDT
Next Engine hotkey is currently enabled by default only for Chinese.
Is this really what ordinary users used to Windows or Mac IM in China expect?
Quite possibly the majority of users don't expect this cycling behavior, and would be annoyed by accidentally hitting it often during their normal computer use?
* Check default hotkeys on Windows Chinese IME.
* Check default hotkeys on Windows Smart Pinyin.
* Check default hotkeys on MacOS X Chinese IME.
Some Chinese users do need multiple IME when learning new IM, share computer with other people, and input some other language such as Japanese and Korean.
See http://code.google.com/p/ibus/issues/detail?id=293&can=1&q=table (in Chinese) for example.
And yes, the default cycling hotkey is ctrl-shift.
BTW, what key scheme would you suggest for/as a Japanese user?
It seems that none of the other languages want this by default. It is very annoying. SCIM had this before RHEL5 but we decided to turn it off for exactly the same reason.
I thought we got rid of Next Engine hotkey by default for non-Chinese languages, but en_US and ja_JP yesterday still had them. In related news, Bug #490009 makes it impossible to delete those hotkeys.
I change the summary from anyone->everyone, I think this is what you mean. :-)
1. Have you tried latest ibus-1.1? I can make rpm for you if you cannot find one.
2. How about disable the next engine hotkey when no more than one engine present (no need to switch),
but keep enable that if 2 or more engine installed, as it makes sense to have a hotkey to switch between
Testing Windows and MacOS X, neither of them have Next Engine hotkey defined by default?
Next Engine hotkey is surely a mistake for all non-Chinese languages, and most likely a mistake for even Chinese by default too. This is because having those cycling hotkeys enabled by default is disruptive.
How often does an ordinary Chinese user switch between two or more Chinese IM engines during a single desktop session? MacOS X doesn't even have an activator hotkey, instead expecting the user to click on a particular IM engine that they want to use. Requiring the user to click on their desired IM is surely not onerous given how rarely you do it.
Are we talking about ORDINARY desktop users, not developers/testers?
> 2. How about disable the next engine hotkey when no more than one engine
> present (no need to switch),
> but keep enable that if 2 or more engine installed, as it makes sense to have
> a hotkey to switch between them.
Do ordinary users expect this Next Engine hotkey to work?
Consider following scenario: A Japanese businessman goes to Korea for business, he uses Korean with his Korean counterparts while making reports to his home company. He needs both Japanese and Korean input method to finish his task. Same go with Korean students studying in Japanese University, they need Korean IM to communicate with families and Japanese to finish their courses. I know quite a lot of Chinese who also need Japanese IM for Japanese input. They are not "Ordinary users" by your definition, are they? :-)
Switch IM using mouse menu is not as convenient as hotkey, you can try it yourself when input between English and Japanese.
Windows XP has next engine switching key in both English and Chinese version. SCIM, OXIM and GCin also enable it as default, they do not confuse users, otherwise this hotkey is already been disabled.
This is not about confusing users. This is about annoying the majority of users who rarely or never switch their language.
Both Windows XP and MacOS X do not enable language cycle hotkey by default because they recognize that the need for it is the minority.
A particular deployment who does want language cycling as you say can configure it. Otherwise it is a MISTAKE to enable it by default.
I've posted a question in upstream discussion board ( iBus google issue 317 http://code.google.com/p/ibus/issues/detail?id=317).
Let's get some feedback from upstream.
phuang informed us that this is already blank by default in ibus, and will remain so to release. Closing.
(Maybe a hotmenu would also help with IME switching or less intrusive hotkeys,
but anyway I believe this issue only affects Chinese locale.)
Jens, the "mouse driven" hotmenu is already there.
Just left click on ibus-icon in either language bar or system tray, you can select language you want. But what I am doing here is keeping the hotkey which invokes this menu. :-)
Could you please directly answer the questions posed in Comment #5? Without doing so, I am under the impression that you are upset about losing this by default, despite it being useful mainly to developers and QA, but not ordinary users.
I did answer it in comment #6. To sum up.
1. Is Windows and MacOS X has Ctrl-Shift as default engine switch key?
Yes, at least in Chinese Window from Windows 95. I don't have Mac OS X though.
2. Are ordinary people use the engine switch key? Yes, take my mum and dad for example, they know nothing beyond M$ Office and basic computer operation, they use different input method (my dad uses Easy, while my mum uses Cangjie/Dayi) but share the same computer. Yes, they use Ctrl-Shift to switch.
I hope these information is sufficient.
Please forgive my honesty. I do sincerely would like to discuss what is good for users.
(In reply to comment #5)
> Testing Windows and MacOS X, neither of them have Next Engine hotkey defined by
Just a little bit of correction:
Windows XP and Vista have *Alt-Shift* as Next Engine hotkey, which normally I changed to Ctrl-Shift to align to the *system default* hotkeys of pre-XP CangJie (~10 years of ETen Chinese Input framebuffer, ~7 years of Windows 95/98/SE/ME, ~5 years of XP, ~3 years of SCIM), FYI.
MacOS X doesn't have activate key by default even. Hence, I do feel this really sucks and one of the reasons why I don't use IME built in. :P
> Next Engine hotkey is surely a mistake for all non-Chinese languages, and most
> likely a mistake for even Chinese by default too. This is because having those
> cycling hotkeys enabled by default is disruptive.
Personally, without Next Engine hotkey is surely disruptive and mistake to me. It is already not acceptable to keep clicking the little tray icon to switch between Chinese and English even, we are talking about 2+ input method now.
As you another comment mentioned that users might mistakenly activated the Next Engine hotkey, I wonder how and why an user could do Ctrl-Shift or Alt-Shift that often.
> How often does an ordinary Chinese user switch between two or more Chinese IM
> engines during a single desktop session? MacOS X doesn't even have an
> activator hotkey, instead expecting the user to click on a particular IM engine
> that they want to use. Requiring the user to click on their desired IM is
> surely not onerous given how rarely you do it.
For my case, I uses Cangjie and Anthy, my girlfriend uses Pinyin, my younger brother uses Quick, one of my sharemate from China uses Wubi, another one from India uses something I don't know.
Once again, I do believe without activator key and next engine key by default is a fatal design flaw of MacOX.
> Are we talking about ORDINARY desktop users, not developers/testers?
> > 2. How about disable the next engine hotkey when no more than one engine
> > present (no need to switch),
> > but keep enable that if 2 or more engine installed, as it makes sense to have
> > a hotkey to switch between them.
> Do ordinary users expect this Next Engine hotkey to work?
"Yes I do."
It seems after further discussion that these hotkeys are a good idea by default only if the user logs into a Chinese desktop the first time.
We should do some further investigation of Windows XP's default of Alt-Shift vs Ctrl-Shift before deciding our plan.
* Change default Next Engine hotkey to Alt-Shift or Shift-Alt.
* Alt-Shift should cycle through all languages INCLUDING English.
* (HARDER: CTRL-Shift should exist, but only as cycling hotkey if your currently active IM language has other running engines. Filing this as a separate bug.)
I think it is not necessary to spend so many time on the default hot key. It is difficult to make a default hotkey to suit every person in this world, and it is not possible.
BTW, the hot keys are customizable. If some users don't like it, just use ibus-setup to change or remove them. It is very simple. Maybe we just need write better help document to help users set up their favorite hot keys.
So I suggest follow settings in SCIM on F10 to make our old users happy.
About Warren comment on Comment #17.
I am considering different hot keys for different languages. IMEs will be grouped by languages(Like below tree). And each language will have a default IMEs (on the top of IMEs list of one language) . One language can have its own trigger and cycle switch hot key. Like, Ctrl + Space to enable default Chinese IMEs, Hangul or Kana key to enable default Korean, Japanese IME. For example: Warrent, if you do not enabled any IMEs in Chinese language, all Chinese related hot keys will not work. I think this design will make all happy. But it needs some coding works. I think it is not possible to include it in F11. :(
-IMEs - zh - PinYIN
(In reply to comment #18)
> -IMEs - zh - PinYIN
> | \-WuBi
> | \-Changjie
> | \-...
IMHO CangJie3 should not becomes a non-default within zh. How about having zh-CN and zh-TW?
-IMEs - zh-CN - PinYIN
zh-TW - CangJie3
Good idea Caius, although for F-11 we wont be able to implement both layers of the cycling hotkeys.
Reply to #17
I think the Ctrl-Shift cycle is inherited from SCIM and couple of other IM framework. So how about we make it as an option? (I won't insist it to be on by default. :-P )
Reply to #19
For zh_TW, I think most people use Zhuyin based input methods such as Chewing or pure Zhuyin (without automatic character selection). Boshiamy (嘸蝦米) is taught in vocational schools and favored by professional typists, though it does have license issues.
-IMEs - zh-CN - PinYIN
zh-TW - Chewing
| \-Boshiamy (if it becomes Free)
| \-Array30 (Optional)
| \-Rest are optional
zh-HK - CangJie3
| \- CangJie5
| \- Quick3
| \- ......
ko - Hangul
ja - Anthy
Caius, how about zh_HK?
Ding, very cool!
I forgot that was win32's fault to have cangjie and quick in zh_TW instead of zh_HK. :P
This reasonably correct, but HK users should need time to get used to this, due to bad habits of selecting zh_TW for Chinese input in win32.
FYI, in win32 there is no Chinese input available in Chinese (Hong Kong). Its manufacturer thought Hong Kong people's first language is English. :P
Added Alt+Shift_L as the default Next engine hotkey in ibus-1_1_0_20090407-2_fc11.
I find Alt+Shift triggered very easily inside Emacs say - really annoying...
Can we please either drop Alt+Shift as a hotkey trigger, or make next-engine only available when IM active?
It has been fixed in ibus-1_1_0_20090413-4_fc11. But the dist-f11 is locked. I can not build it.
Built ibus-1_1_0_20090417-1_fc11 successfully. Please test it.
Works well now when only IM is active.