Monday, March 16th, 2009 Warren Togami and Maureen Duffy conducted a user interface analysis with a native Japanese user. Windows IME, ibus-anthy and ibus-anthy were compared. The test subject is named Kumiko, who formerly worked in a Japanese financial institution and is familiar with ATOK on Windows XP. Our goal was to analyze the use expectations of an "ordinary user" without technical background. Warren Togami subsequently did some exploration of the IM software in the latest version of MacOS X. Many bugs were filed from this analysis. Further action items are proposed below but require discussion before we can file bugs.
http://en.wikipedia.org/wiki/Language_input_keys Describes Input keys on Japanese and Korean keyboards
https://bugzilla.redhat.com/showdependencytree.cgi?id=ibus&hide_resolved... http://tinyurl.com/fedora-ibus-bugs ibus bug trackers
Japanese Specific Bugs ====================== https://bugzilla.redhat.com/show_bug.cgi?id=491042 ibus-anthy global activators by default: 半角/全角 or ALT-` or ALT-半角/ 全角 or 無変換 + 半角/全角 https://bugzilla.redhat.com/show_bug.cgi?id=488666 ibus-anthy candidate selection should be vertical https://bugzilla.redhat.com/show_bug.cgi?id=491040 ibus-anthy candidate selection lacks Pg-Up, Pg-Down and scrollbar https://bugzilla.redhat.com/show_bug.cgi?id=490748 ibus-anthy katakana button doesn't do anything https://bugzilla.redhat.com/show_bug.cgi?id=490747 ibus-anthy 無変換 Non-conversion button fails to undo conversion in pre-edit buffer https://bugzilla.redhat.com/show_bug.cgi?id=490750 ibus-anthy 変換 Conversion candidate button doesn't do anything https://bugzilla.redhat.com/show_bug.cgi?id=491041 ibus-anthy Register Words interface missing
Korean Specific Bugs ==================== https://bugzilla.redhat.com/show_bug.cgi?id=487269 ibus-hangul is missing Hanja Conversion https://bugzilla.redhat.com/show_bug.cgi?id=486056 ibus-hangul missing options for 2bul, 3bul and other Korean layouts
General ibus Bugs ================= https://bugzilla.redhat.com/show_bug.cgi?id=490381 change "Next/Previous engine" labels to "Next/Previous input method" https://bugzilla.redhat.com/show_bug.cgi?id=477918 ibus failures with pidgin? https://bugzilla.redhat.com/show_bug.cgi?id=490013 ibus - Next Engine hotkey really good idea for anyone? https://bugzilla.redhat.com/show_bug.cgi?id=490009 ibus - Deleting Next Engine shortcuts doesn't work https://bugzilla.redhat.com/show_bug.cgi?id=491043 ibus Enable IM engine for particular language automatically
Other Bugs that need discussion =============================== TODO: Implement standard template for help files for ibus, and localize it (MacOS X has a great example of this done right) TODO: CTRL-Space is annoying to Japanese and Korean IM, Propose Inherited Hotkey Activator Plan TODO: ibus-anthy Determine which options are important that need configuration options TODO: ibus-hangul Determine which options are important that need configuration options TODO: ibus-anthy Implement pre-conversion auto-learning predictive candidate input (think cell phone, read below) TODO: Investigate dead key fallbacks work properly? TODO: ibus hotkey activators sometimes fail completely in gnome-terminal or tomboy, while they work in other apps
Miscellaneous Notes =================== • Kumiko did not knowingly change any settings, used default IM shipped on her computer: ATOK. • Windows IME was very similar to ATOK to the point she didn't realize it was different at first. * SCIM's interface was almost identical to Windows IME with button behavior, with the exception of activator hotkeys being equally broken from the perspective of ordinary user expectations.
Activator Hotkeys ================= • Windows IME does not seem to have "Global" activator hotkeys. Hotkeys change depending on which IM is active at a the moment in the language bar. For example, if Japanese is the current active IM, then ALT-` works as an activator but not CTRL-Space. Conversely, if Pinyin is the current IME, CTRL-Space works. There might be merit in changing our hotkey behavior to be like this instead of our global hotkeys that try to please everyone, but end up annoying everyone. Discussion? (Note below that MacOS X has no activator hotkeys.) • ALT-` is bound to "bring up the text-mode menu" in emacs, but otherwise not likely to conflict with anything. • 半角/全角 button is exactly the same keycode as ` on US keyboard layout. 半角/全角 however is a different keycode from ` on a Japanese keyboard. • 無変換 + 半角/全角 should also be an activator. The user held down 無 変換 and pressed 半角/全角, and was surprised that it did not activate like it does on Windows. It is unclear if 無変換 is meant to be a modifier like ALT, but in any case 半角/全角 should have worked in this case while it did nothing with ibus. • Simple Proposal: 半角/全角 or ALT-` activators by default because doesn't seem to conflict with anything important. Meanwhile it is a lot less likely to be activated by accident like CTRL-Space. • Advanced Proposal: Hotkey Inheritance Model, to have particular global hotkey defaults automatically only if you have those engines enabled
Candidate Selection Interface ============================= • MacOS X Kotoeri ∘ Vertical with slider, hides less likely candidates as "More..." until you arrow down and they unhide ∘ Multi-word conversion doesn't seem to support word selection with left/right arrows like Windows IME or SCIM. e.g. ねこをかっています then SPACE, try to choose between "have" and "buy", how? Kotoeri Preferences -> Windows-like operation seems to enable the left/right button to select which word to convert • MacOS X Hangul 2bul ∘ Type character then Option-Return to pop-up Hanja candidate menu, vertical with scrollbar like Kotoeri. To the right of each Hanja character it displays in the standard Hanja dictionary format "Meaning <Pronunciation>" • MacOS X Simplified Chinese ITABC (seems to be Pinyin) ∘ Type character like "wo". SPACE shows you "Standard" candidates from GB2312. Shift-SPACE shows you GB18030 candidates. ∘ Default is to display candidates horizontally, picking with right/left arrow and ENTER, or number shotcut for quick picking. In preferences you can switch it to vertical mode. In horizontal mode, up/down goes to the next page of 9 candidates. • ATOK Windows ∘ Kumiko said ATOK on her home Windows XP system also does auto-learning/predictive input. Example: Type ま before SPACE conversion and it displays words that you used beginning in ま. Very convenient especially for typing unusual names repeatedly. She really liked this feature of ATOK. This is similar to cell phone IM. ∘ Reportedly Microsoft IME lacks this predictive pre-conversion input. ∘ ATOK however lacks the helpful dictionary entries in the candidate selection while displaying homophones. ∘ Proposal: Auto-learning pre-conversion predictive candidate selection might be feasible to implement. We already have the anthy dictionary and statistical algorithm which auto-learns. We seem to have the building blocks to do this. IDEA! There is still time to propose this as a Google Summer of Code project. A student could work on this as a feature of anthy independently of everything else we need to fix.
MacOS X 10.5.6 (some interesting things we could learn from) ============================================================ • Each language Input Method has simple and succinct help pages describing basic operation, localized into all languages. The help pages are in a similar standardized format for each Input Method. • Seems to have NO hotkeys for non-Native keyboards. Not even an option to enable hotkeys. Eliminates possibility of hotkey conflicts that annoy users. Mac users on US keyboards seem to rely on clicking on the language menu in the systray to switch between English and Japanese input. Individual IM like Kotoeri have non-default options to map the caps-lock key to switch between Hiragana and Romaji mode without switching away from Kotoeri. (Note: Some Japanese users on Windows I have witnessed do not know that 半角/全角 is an activator hotkey, and they similarly always click the language bar to enable Japanese IM.) • Korean Types ∘ 2-Set Korean ∘ 3-Set Korean ∘ 390 Sebulshik ∘ GongjiCheong Romaja ∘ HNC Romaja • Japanese Types ∘ Hotkey in menu • Reverse conversion ^UP R (not sure what this means?) • Retrieve fixed Yomi ^UP Y (undo conversion back to yomigana?) ∘ Hiragana ∘ Katakana ∘ Full-width Romaji (not default) ∘ Half-width Romaji (not default) ∘ Romaji ∘ Ainu (not default) • Traditional Chinese Types ∘ Zhuyin ∘ Pinyin ∘ Cangjie ∘ Jianyi ∘ Dayi(Pro) ∘ Hanin (not default) • Simplified Chinese Types ∘ ITABC (Pinyin) ∘ Wubi Xing ∘ Wubi Hua
Warren Togami wtogami@redhat.com
i18n@lists.stg.fedoraproject.org