Subject: CJK input support in Mir

From: Ma Xiaojun <[email-masked]>
Date: Mon, 18 Mar 2013 15:01:06 +0800

Hi, all.

CJK stands for Chinese, Japanese, Korean, the languages require
complex input method [1] to input.
CJK input is crucial to CJK native speakers and some other people, for
obvious reasons.
Some other languages, which I have little idea, have similar situation as CJK.

>From a user point of view, you may check how CJK input is supported in
following environments.
Android
iOS
GNOME 3.6 (use official test image or Fedora 18)
Mac OS X
Ubuntu with Unity
Windows 7
Windows 8

Ubuntu with Unity's support is not very good at this point, because:
* Input engine installation is based on language support installation,
while other environments generally install all available input engines
out of the box. In particular, English installation of Ubuntu would
install a Pinyin input engine and nothing more.
* Input engine context menu won't be shown, unless language panel is
explicitly enabled. Other environments except GNOME 3.6 should have
working context menu or equivalent by default.
* Other minor bugs

>From a developer point of view, Ubuntu with Unity is still using IBus
1.4.2 input framework on Raring to support CJK input, while IBus
upstream already released 1.5.x but that series is controversial. (So
some Ubuntu developer decided to stay with 1.4.2)

The only reasonable alternative to IBus is Fcitx, which work quite
nicely on Raring (it got a patch for indicator support). Fcitx is also
the default input framework on UbuntuKylin and Linux Deepin.

Input framework like IBus or Fcitx is strongly related to display
server and/or GUI toolkits, I hope Mir people consider this problem as
soon as possible.

(Disclosure: I'm an IBus contributor but I'm not 100% happy with IBus
project. I find Fcitx working better in many cases.)

1. https://en.wikipedia.org/wiki/Input_method