can't use Chinese Input

Bug #731977 reported by pengzhan.wu on 2011-03-09
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Synapse
Low
Alberto Aldegheri

Bug Description

I am a Chinese, I am not good at English ,so at first forgive my poor English.
My system is :
uname -a show following :
Linux crazier 2.6.35-27-generic #48-Ubuntu SMP Tue Feb 22 20:25:29 UTC 2011 i686 GNU/Linux

My problem is I use the fcitx(the popular chinese input ,that use the ctrl + space wake up ) ,so I change the default hot key of synapse to Win + s . but when I use synapse ,I put ctrl + space ,I can't wake up the fictx , I just can iput english .

I have to say the synapse is a cool software. I love it . Thanks !

Alberto Aldegheri (albyrock87) wrote :

Hi,
at the moment Fcitx is not supported, but IBUS is supported:
http://en.wikipedia.org/wiki/Intelligent_Input_Bus
http://code.google.com/p/ibus/

I'll try to fix this, but I have to set it to low priority.

Changed in synapse-project:
importance: Undecided → Low
status: New → Triaged
milestone: none → backlog
assignee: nobody → Alberto (albyrock87)
Simon (simonjwiles) wrote :

Doesn't work for me with iBus, SCIM or fcitx. The problem is the same in every case -- because I can't see my compose string as I'm typing, I'm composing characters blindly. I can cope with this when typing a complex script such as devanāgarī, for example, because I'm familiar enough with the order of keystrokes I need to do it blind. It's awkward, but there are only a few ligatures which are particularly difficult this way.

With Chinese/Japanese, however, it's impossible, as after entering the sequence of keystrokes I must choose the correct character from a candidates list, but the list is not shown. If I select randomly, I can get a character into Synapse, but I can't edit it, and I can't choose a different one, as the 'down' keystroke is over-ridden.

I wonder if a neat solution would be to provide a skin/theme where the input widget is not hidden, so that I can compose in a regular text input element as normal? I think that might solve the problem completely for me.

Note that I have no problem calling the IME using the keyboard shortcuts on iBus, SCIM, CIM or fcitx, once I've ensured that the respective shortcuts do not clash.

Jinkyu Yi (jincreator) wrote :

I'm Korean but I also know how to input Japanese and Chinese a little bit.

When writing English letter, pressing one key is input one letter.
But writing Chinese/Japanese/Korean, several keys make input one letter.

In Chinese, type pronounce of letter in Enlgish, then the list of letter is shown.
Then choose letter by using number key.
But ibus show only 5 letters in list.
So, ibus show next list when user press up/down arrow key.
ex)ni->你, 拟, 尼, ...-(press 1)>你

In Japanese, only two letters are pronounced same.
So, Japanese letters are grouped into Hiragana and Gatakana.
So, if user type pronounce of letter in Enlgish, the Hiragana letter is shown direct(no list).
F7 key change the letter from Hiragana to Gatakana.
After all, press enter key makes letters inputted.
ex)ni->に-(press enter)>に
ni->に-(press F7)>ニ-(press enter)>ニ

In Korean, several Korean letters make one letter that can read.
ex)ㄴ->ㄴ
ㄴ+ㅏ->나
ㄴ+ㅏ+ㄱ->낙

Then, how about mistake writing letters?
In this time, backspace make one key event before, not delete one whole letter.
ex)n->na->n->ni-(1)>你 : (Chinese)
n->な-(bacespace)>n->に-(enter)>に : (Japanese)
ㄴ->나-(bacespace)>ㄴ->니 : (Korean)

The problem is some key events like as backspace, arrow, enter are go direct to Synapse even the letter is not combine finished in ibus.
CJK users can't edit it while making letter because they can't use backspace key to delete letter.
Chinese users can input only few letters because they can't use arrow key to show next list.
Japanese users can't input every Japanese letters(!) because they can't use enter key to input letter finally.

And I think it's importance needs higher because if you don't solve it perfectly, another language users will report bug after this program become popular.

P.S Do I seperate it to new bug report?

Alberto Aldegheri (albyrock87) wrote :

Ok, now I understand, thank you jincreator.
I don't know Japanese and Chinese, so I've never understood what the problem is.

But I need another help: can you tell me step to step, how to configure ibus to input in chinese and japanese?
Thank you

I set importance to low, because I can't solve the problem at the moment (because I didn't know exactly how to input in those languages), so it was useless to spend time on this.

But now I think that probably I can fix this, just help me to configure ibus :)

I already know how to install ibus, the problem is the configuration :)

Jinkyu Yi (jincreator) wrote :

First of all, I'm using Korean language pack, so some menu's name I translate to English will be different from your system.

The ordinary method is using gnome-language-selector.
Go to "System"->"Management"->"Language"(or you can use Synapse and type "Lan" :).
Press "Install/remove language" button.
Select language(not check box at right! it will install every language package you selected) and check "input method" box(and also "additional fonts" if your system can't display CJK letters) at bottom.
It's good method to install Korean and Japan input method
But there are 3 Chinese menu, and maybe Simon or pengzhan.wo can help about it, but I don't know about it.

So I recommend you to install package yourself.
Install ibus-anthy, ibus-hangul, ibus-pinyin package.
ibus package will install automatically by dependency.
Anthy is Japanese input system, Hangul is Korean input system, Pinyin is (one of)Chinese input system.

Now, input methods are installed, but you need to set it manually to use these methods.

First, you need to setting the keyboard shortcut.
But if you don't use shortcut key and click ibus icon in indicator and change manually, then go to next paragraph.
Click ibus icon in indicator panel and press "preference".
In "General" tab, there are some shortcut keys.
In "Active or Deactive", there are lots of keys but not in your keyboard layout.
In CJK keyboard, they use special keys(hangul, zenkaku, ...) to change input method from English o their own language.
But these keys are not in your keyboard, and one of shortcut key is Ctrl+space, which are same to default Synapse shortcut.
You need to add it or change shortcut key in Synapse.
Also there is another shortcut key named "Next input method".
It is not useful when using only one language(actually 2 because +English), but if you want to test all 3 language and don't want to change input method manually using mouse, you need to know the key.
Default shortcut key is OK if there's no program using Alt+Shift_L.

Second, you need to register the input method to ibus.
Go to "input method" tab and press "select input method".
When drowndown list appear, go to country and select input method(anthy, hangul, pinyin) and press add button.
Do it to every input method(anthy, hangul, pinyin).

Finish!

Alberto Aldegheri (albyrock87) wrote :

Thank you! Good news: i think that i found how to fix this!

Changed in synapse-project:
status: Triaged → In Progress
milestone: backlog → 0.2.8
Alberto Aldegheri (albyrock87) wrote :

I fixed this in a private branch that will be merged asap (I'm doing some other stuffs).

Anyway I had to do 3 more things:
- install "ibus-gtk" package that was not installed by default
- launch ibus with: ibus-daemon -drx --xim
- add to .bashrc: export GTK_IM_MODULE=ibus

=)

Alberto Aldegheri (albyrock87) wrote :

Ok, it should work now :)
Fix committed.

Changed in synapse-project:
status: In Progress → Fix Committed
Michal Hruby (mhr3) on 2011-09-24
Changed in synapse-project:
status: Fix Committed → Fix Released
Barbara Buri (ruina21) wrote :

Thank you, works like a treat. Well done!

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related questions