Bug 490013 - [EasyFix] ibus - Next Engine hotkey global default Alt-Shift, not CTRL-Shift
Summary: [EasyFix] ibus - Next Engine hotkey global default Alt-Shift, not CTRL-Shift
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: ibus
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Peng Huang
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F11Blocker, F11FinalBlocker 481098
TreeView+ depends on / blocked
 
Reported: 2009-03-12 20:45 UTC by Warren Togami
Modified: 2009-04-21 07:59 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-04-21 07:59:30 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Warren Togami 2009-03-12 20:45:11 UTC
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?

Actions
* Check default hotkeys on Windows Chinese IME.
* Check default hotkeys on Windows Smart Pinyin.
* Check default hotkeys on MacOS X Chinese IME.

Comment 1 Ding-Yi Chen 2009-03-17 04:38:41 UTC
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?

Comment 2 Warren Togami 2009-03-17 13:57:23 UTC
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.

Comment 3 Warren Togami 2009-03-17 16:13:20 UTC
ibus-0.1.1.20090203-1.fc10.x86_64

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.

Comment 4 Ding-Yi Chen 2009-03-18 06:18:05 UTC
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 
  them.

Comment 5 Warren Togami 2009-03-18 06:26:52 UTC
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?

Comment 6 Ding-Yi Chen 2009-03-20 00:25:12 UTC
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.

Comment 7 Warren Togami 2009-03-20 00:57:57 UTC
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.

Comment 8 Ding-Yi Chen 2009-03-23 02:34:00 UTC
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.

Comment 9 Warren Togami 2009-03-23 06:26:42 UTC
phuang informed us that this is already blank by default in ibus, and will remain so to release.  Closing.

Comment 10 Jens Petersen 2009-03-23 06:31:45 UTC
(Maybe a hotmenu would also help with IME switching or less intrusive hotkeys,
but anyway I believe this issue only affects Chinese locale.)

Comment 12 Ding-Yi Chen 2009-03-23 08:00:15 UTC
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. :-)

Comment 13 Warren Togami 2009-03-23 14:46:12 UTC
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.

Comment 14 Ding-Yi Chen 2009-03-23 23:44:14 UTC
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.

Comment 15 Caius Chance 2009-03-24 00:59:56 UTC
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
> default?

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?

s/we/you/ ?


> > 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."

Comment 16 Warren Togami 2009-03-24 01:12:47 UTC
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.

Comment 17 Warren Togami 2009-03-25 16:12:06 UTC
* 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.)

Comment 18 Peng Huang 2009-03-28 03:47:58 UTC
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
          |        \-WuBi
          |        \-Changjie
          |        \-...
          \-ko-Hangul
          \-ja-Anghy

Comment 19 Caius Chance 2009-04-03 03:12:05 UTC
(In reply to comment #18)
> 
> -IMEs - zh - PinYIN
>           |        \-WuBi
>           |        \-Changjie
>           |        \-...
>           \-ko-Hangul
>           \-ja-Anghy  

IMHO CangJie3 should not becomes a non-default within zh. How about having zh-CN and zh-TW?

-IMEs - zh-CN - PinYIN
          |        \-WuBi
          |        \-...
        zh-TW - CangJie3
          |        \-Changjie5
          |        \-Quick3
          |        \-Quick5
          |        \-...
          \-ko-Hangul
          \-ja-Anghy

Comment 20 Warren Togami 2009-04-03 06:17:54 UTC
Good idea Caius, although for F-11 we wont be able to implement both layers of the cycling hotkeys.

Comment 21 Ding-Yi Chen 2009-04-03 06:55:35 UTC
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. 

How about:

-IMEs - zh-CN - PinYIN
          |        \-WuBi
          |        \-...
        zh-TW - Chewing
          |        \-Boshiamy (if it becomes Free)
          |        \-CangJie3
          |        \-Changjie5
          |        \-Array30 (Optional)
          |        \-Rest are optional
          |        \-...
        zh-HK - CangJie3
          |         \- CangJie5
          |         \- Quick3
          |         \- ......
          | 
         ko - Hangul
          |
         ja - Anthy

Caius, how about  zh_HK?

Comment 22 Caius Chance 2009-04-03 07:20:36 UTC
Ding, very cool!

I forgot that was win32's fault to have cangjie and quick in zh_TW instead of zh_HK. :P

Comment 23 Caius Chance 2009-04-05 23:32:57 UTC
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

Comment 24 Peng Huang 2009-04-07 07:52:59 UTC
Added Alt+Shift_L as the default Next engine hotkey in ibus-1_1_0_20090407-2_fc11.

Comment 25 Jens Petersen 2009-04-17 05:23:06 UTC
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?

Comment 26 Peng Huang 2009-04-17 07:23:31 UTC
It has been fixed in ibus-1_1_0_20090413-4_fc11. But the dist-f11 is locked. I can not build it.

Comment 27 Peng Huang 2009-04-17 11:05:38 UTC
Built ibus-1_1_0_20090417-1_fc11 successfully. Please test it.

Comment 28 Jens Petersen 2009-04-21 07:59:30 UTC
Works well now when only IM is active.


Note You need to log in before you can comment on or make changes to this bug.