No compose characters possible with asian language setting
Hello! I'm currently using SuSE 9.0 pro for both german and japanese input. This works fine so far, by setting the variables LC_CTYPE to ja_JP.UTF-8 and LANG to de_DE.UTF-8, but nevertheless I experienced a problem: With the LC_CTYPE set to japanese and an input method running (currently kinput2), I cannot type european language compose characters any more - at least the ones I used to produce with two sequent keystrokes ( ´ and e for é for example). The rest of my (german) keyboard layout works all fine, and with LC_CTYPE set to german, é's, à's, ô's, etc pose no problem, but then, of course, I cannot input japanese... This problem seems also to be existent for other language settings that use an input method, I tried it out with a friend who uses chinese input (also on SuSE 9.0 pro). We (my friend and I) are currently writing an article about asian language input with StarOffice/OOo, so we would really appreciate any help or hint concerning this problem. Thanks. Marcel Boeing
akimbo337@gmx.de さんは書きました:
I'm currently using SuSE 9.0 pro for both german and japanese input. This works fine so far, by setting the variables LC_CTYPE to ja_JP.UTF-8 and LANG to de_DE.UTF-8, but nevertheless I experienced a problem:
With the LC_CTYPE set to japanese and an input method running (currently kinput2), I cannot type european language compose characters any more - at least the ones I used to produce with two sequent keystrokes ( ´ and e for é for example).
[...]
This problem seems also to be existent for other language settings that use an input method, I tried it out with a friend who uses chinese input (also on SuSE 9.0 pro).
The Compose mechanism is also sort of an input method, like XIM. Unfortunately, one can only use one such input method at a time, i.e. LC_CTYPE=ja_JP.UTF-8 XMODIFIERS=@im=kinput2 program uses kinput2 whereas LC_CTYPE=ja_JP.UTF-8 XMODIFIERS=@im=none program uses Compose (you can also write XMODIFIERS=@im=local, that is the same). Have a look at the strace to see which Compose table is used, for example: mfabian@magellan:~$ LC_CTYPE=ja_JP.UTF-8 XMODIFIERS=@im=none strace -f -eopen xterm 2
&1 | grep Compose open("/home/mfabian/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/X11R6/lib/X11/locale/en_US.UTF-8/Compose", O_RDONLY) = 5 mfabian@magellan:~$
As you can see in the strace, you can create a personal compose table in ~/.Xcompose, which is then preferred.
We (my friend and I) are currently writing an article about asian language input with StarOffice/OOo, so we would really appreciate any help or hint concerning this problem.
Very few applications can switch between XIM like input methods on the fly. Actually the only one I know is mlterm. With mlterm you can do the switch between @im=kinput2 and @im=local without restarting mlterm. In OpenOffice you cannot do this. There are XIM servers which can switch between several input methods, for example on SuSE Linux there are SCIM and uim which can switch on the fly between different input methods. It looks rather easy to add a input method similar to Compose to SCIM and/or uim. I'll try to do that if I have a bit of free time. That would solve your problem. Another solution is to use IIIMF instead of XIM. IIIMF is the designated successor of XIM and allows to switch input methods on the fly. This is one of the design features of IIIMF. Because of lack of time I have not yet created IIIMF packages for SuSE Linux though. But I plan to do that soon. -- Mike FABIAN <mfabian@suse.de> http://www.suse.de/~mfabian 睡眠不足はいい仕事の敵だ。
Mike FABIAN ✍:
Very few applications can switch between XIM like input methods on the fly. Actually the only one I know is mlterm. With mlterm you can do the switch between @im=kinput2 and @im=local without restarting mlterm.
In OpenOffice you cannot do this.
There are XIM servers which can switch between several input methods, for example on SuSE Linux there are SCIM and uim which can switch on the fly between different input methods.
It looks rather easy to add a input method similar to Compose to SCIM and/or uim. I'll try to do that if I have a bit of free time. That would solve your problem.
Another solution is to use IIIMF instead of XIM. IIIMF is the designated successor of XIM and allows to switch input methods on the fly. This is one of the design features of IIIMF. Because of lack of time I have not yet created IIIMF packages for SuSE Linux though. But I plan to do that soon. I, too, am a skim/scim user and miss being able to use the Compose key. It's been several years since and the scim developer does not understand or does not care.
Would you contribute a patch where Compose works under @im=scim exactly like under @im=local?
Lars Dɪᴇᴄᴋᴏᴡ wrote:
I, too, am a skim/scim user and miss being able to use the Compose key. It's been several years since and the scim developer does not understand or does not care.
Dunno; but with uim the Compose key works with the default "direct input". In my page on "international text" I mention this as a distinct advantage of uim: "being invisible when not active". E.g. now I have the anthy input method selected in 直接入力 mode; I can use alt-intl accents like é, ö, as well as Composed characters like ß and ¿ using right-Windows as Compose. With scim, it does not work as smoothly. Regards, Jan <http://www.jw-stumpel.nl/stestu.html> -- To unsubscribe, e-mail: opensuse-m17n+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-m17n+help@opensuse.org
Jan Willem Stumpel ✍:
with uim the Compose key works I installed and tried uim from the M17N repo yesterday and confirm that indeed, it does.
Unfortunately uim's pinyin input method is pitiful compared to scim's - it does not take any words or phrases typed ahead into account. A character is generated as soon as it is completed. Abbreviated input (e.g. b'q'l → 冰淇淋) is not supported. There does not seem to be any configuration or documentation for this input method. I can't work with uim. As goal attainable in much shorter time, I would rather see scim fixed with respect to the Compose feature.
Lars Dɪᴇᴄᴋᴏᴡ <lars.dieckow@googlemail.com> さんは書きました:
Jan Willem Stumpel ✍:
with uim the Compose key works I installed and tried uim from the M17N repo yesterday and confirm that indeed, it does.
Unfortunately uim's pinyin input method is pitiful compared to scim's - it does not take any words or phrases typed ahead into account. A character is generated as soon as it is completed. Abbreviated input (e.g. b'q'l → 冰淇淋) is not supported. There does not seem to be any configuration or documentation for this input method.
I can't work with uim. As goal attainable in much shorter time, I would rather see scim fixed with respect to the Compose feature.
Compose *does* work with scim for quite a while now. Only the compose table is hardcoded in the scim sources. The compose table which was used for the hardcoding was something around the time of SLES10. Since then the X11 Compose table has changed slightly so there are a few minor differences in key-sequences between the Compose support in X11 and SCIM now. But not many, in most cases you won't notice any difference. I have a perl script to parse the X11 Compose table at build time of scim form the X11 Compose table of the system where scim is built and convert it into the file format scim uses for hardcoding the compose table. But I never found the time to add that to the SuSE scim package. One could also ready the compose table at runtime, but that would cost a little bit of performance. -- Mike FABIAN <mike.fabian@gmx.de> 睡眠不足はいい仕事の敵だ。 -- To unsubscribe, e-mail: opensuse-m17n+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-m17n+help@opensuse.org
Mike FABIAN ✍:
Compose *does* work with scim for quite a while now. I certainly don't see it; the intertubes have complaints from other users to back up my position. I am very interested in why it works for you.
$ rpm -qa|ack 's[ck]im'|sort scim-1.4.7-181.1.x86_64 scim-anthy-1.2.7-6.1.x86_64 scim-pinyin-0.5.91.20060705-273.2.x86_64 scim-pinyin-skim-0.5.91.20060705-273.2.x86_64 scim-qtimm-0.9.4-278.2.x86_64 scim-tomoe-0.6.0-4.1.x86_64 skim-1.4.5-269.2.x86_64 $ env|sort|ack IM GTK_IM_MODULE=scim QT_IM_MODULE=scim QT_IM_SWITCHER=imsw-multi XMODIFIERS=@im=SCIM The Compose key does not work in any application unless I unset those variables first. Then, of course, scim does not work. But I want to be able to use both in the same application; uim allows for this.
One could also ready the compose table at runtime, but that would cost a little bit of performance. That's definitely the way to go. The original Compose feature reads the customisations in my ~/.XCompose file, and so should any emulation thereof.
participants (5)
-
akimbo337@gmx.de
-
Jan Willem Stumpel
-
Lars Dɪᴇᴄᴋᴏᴡ
-
Mike FABIAN
-
Mike FABIAN