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
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ɪᴇᴄᴋᴏᴡ
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 ✍:
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