[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    Bug#38112: Japanese input with kinput2 does not display
From:       Mike Fabian <mfabian () suse ! de>
Date:       2002-02-21 10:39:22
[Download RAW message or body]

Michael Häckel <haeckel@kde.org> writes:

> On Wednesday 20 February 2002 23:37:23, Waldo Bastian wrote:
>>
>> Then follow the instructions on
>>
>>     http://www.suse.de/~mfabian/suse-cjk/kinput2-canna-simple-exampl.html
>
> Thanks, it seems to work now.
>
> However while it doesn't work in Konsole, in KMail it works for me exactely as 
> in gvim.

Yes, in KMail and gvim Japanese input basically works, even with
OnTheSpot style, but there are quite a few usability problems.
KDE2/Qt2 used OverTheSpot input style for XIM, which worked perfectly.
If implemented well, OnTheSpot is even better than OverTheSpot, but
the current implementation in Qt3 of OnTheSpot is not yet as good as
the OverTheSpot implementation in Qt2. I tried to explain what the
problems of the current implementation are in a recent mail, which I
paste here.

mfabian> It looks like the Korean patches for OnTheSpot input have been
mfabian> incorporated into Qt3. When it works, OnTheSpot input is much
mfabian> nicer than OverTheSpot input *if* it works correctly.
mfabian> 
mfabian> Unfortunately the current implementation seems to work fine
mfabian> only for Korean and has a lot of problems for Japanese.
mfabian> 
mfabian> - There is no indicator whether XIM is on or off any more.
mfabian> 
mfabian>   Previously, a small window showing a hiragana あ popped
mfabian>   up when activating Japanese XIM with Shift-Space. Now there
mfabian>   is no indication whatsoever that XIM is active, which is
mfabian>   very confusing. 
mfabian> 
mfabian>   For Korean, this doesn't matter much, because typing any letter
mfabian>   when Korean XIM is active will immediately display a jamo
mfabian>   (Korean syllable), i.e. as soon as you type one letter
mfabian>   you will see whether Korean XIM is active or not.
mfabian> 
mfabian>   For Japanese however, the first entered letter will always
mfabian>   be displayed as ASCII, only when it is a valid Japanese
mfabian>   syllable together with the next letter a Japanese hiragana
mfabian>   character is displayed. Therefore, if you enter a sequence
mfabian>   of characters which cannot be converted to hiragana,
mfabian>   you will see only ASCII.
mfabian> 
mfabian>   For example, when I entered 'rxvt' + 'Return' in the 'Run command'
mfabian>   window today, I was surprised 'rxvt' didn't start. Nothing happened.
mfabian>   Then I realized that Japanese XIM was on, 'rxvt' cannot
mfabian>   be converted to hiragana and is thus displayed 'as is'.
mfabian>   Because Japanese XIM is on, 'Return' doesn't do anything in
mfabian>   this context and the 'Run' button is gray.
mfabian> 
mfabian> - The indicator window of kinput2 is also used to show different
mfabian>   modes of kinput2. When this indicator is missing, one
mfabian>   can not easily see what mode one is currently using. 
mfabian> 
mfabian> - narrowing, widening and moving the conversion region is invisible.
mfabian> 
mfabian>   I tried to explain what this means and what it is used for
mfabian>   on this page:
mfabian> 
mfabian>   http://www.suse.de/~mfabian/suse-cjk/kinput2-canna-ai.html
mfabian> 
mfabian> These things worked correctly with the OverTheSpot XIM implementation
mfabian> in Qt2.
mfabian> 
mfabian> This is not a general problem with OnTheSpot input, Mozilla
mfabian> also supports OnTheSpot input:
mfabian> 
mfabian>   http://www.mozilla.org/projects/intl/input-method-spec.html
mfabian> 
mfabian> but in case of Mozilla it works perfectly. The indicator window
mfabian> is shown in case of Japanese (nothing in case of Korean)
mfabian> and the narrowing, widening and moving of the conversion region
mfabian> is visibly marked. 
mfabian> 
mfabian> Currently Mozilla is the only application on Linux which
mfabian> gets OnTheSpot input perfectly right.
mfabian> 
mfabian> gvim (the graphical version of Vim) also supports OnTheSpot input but
mfabian> has the same problems as Qt3.
mfabian> 
mfabian> At least there is a workaround for gvim:
mfabian> 
mfabian>     /usr/X11R6/bin/gvim --xim-preedit position
mfabian> 
mfabian> with the option '--xim-preedit position', OverTheSpot input is used
mfabian> again. As long as OnTheSpot input doesn't work perfectly,
mfabian> OverTheSpot input is preferable for Japanese.
mfabian> 
mfabian> Is there a similar workaround for Qt3/KDE3?
mfabian> 
mfabian> Any chance that this can be fixed until the release of KDE3?

This is a Qt3 problem of course and not directly a KDE3 problem.

> Just instead of this "Candidate Selection" window I get a different one of 
> which I don't understand the purpose. Closing it crashes kinput2 and typing a 
> number closes it doing nothing.

The text shown in your screen shot of the window titled 'Auxiliary
Control' is an error message, stating:

    "かな漢字変換サーバと通信できません"

    "cannot communicate with Canna server".

Is Canna installed and running? On SuSE Linux you need:

    ~$ rpm -i canna.rpm cannadic.rpm
    ~$ rccanna start

After that,

    ~$ /sbin/pidof cannaserver

should show that the cannaserver is running, and after connecting with
kinput2 to canna (e.g. after trying to do Japanese input in KMail),
'cannastat' should list kinput2 as one of it's clients:

    ~$ cannastat
    Connected to unix
    Canna Server (Ver. 3.5)
    Total connecting clients 2
    USER_NAME   ID  NO U_CX          C_TIME   U_TIME I_TIME HOST_NAME  CLIENT
    mfabian      0   0    4  Wed 20  1:44am        1  11:02 gregory.su kinput2
    mfabian     12   0    3  Wed 20  4:14pm        2      3 gregory(UN mule
    ~$

(the second client listed here is XEmacs).

-- 
Mike Fabian   <mfabian@suse.de>   http://www.suse.de/~mfabian
睡 不足はいい仕事の敵 。
_______________________________________________
kmail Developers mailing list
kmail@mail.kde.org
http://mail.kde.org/mailman/listinfo/kmail
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic