Mailing List Archive

Support open source code!


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

tlug: X internationalized input (XIM and kinput2)



--------------------------------------------------------
tlug note from "Stephen J. Turnbull" <turnbull@example.com>
--------------------------------------------------------
Well, I've been poking around in internationalization of input again,
and I've got kinput2 working with XIM (the X Input Method protocol)
for a sample program from O'Reilly.  kinput2 has suicided once, so
it's not robust yet, but this would be very cool if it works for say
Emacs.

XEmacs 20 is supposed to support XIM, but having seen how flakey the
programs are in this area (if kterm doesn't work right, the standard
is still unstable), I'm not going to switch from Canna-ized GNU Emacs
until I hear from somebody who's using XEmacs with XIM....

If anyone's interested, the modified (two bugs fixed, one due to
working around a bug in the X11R5 Xlib, and the other an invalid
parameter in a configuration request) version of i18n_input.c (along
with the rest of the examples from the O'Reilly internationalization
section, the Imakefile, and a Makefile generated under XFree86 3.1.2
plus MooTiff---it may not work for you), plus source for Canna 3.5b2,
kinput2 2.0, and kterm 6.2.0, are in

       ftp://turnbull.sk.tsukuba.ac.jp/pub/linux/examples/I18N/

I recommend rebuilding kinput2 with "make CDEBUGFLAGS=' -g -DDEBUG'"
and running it with the "-debuglevel 5" option (the -debug and -trace
options give too little and too much detail respectively) to see how
the protocol proceeds.  If you are going to test it against kterm for
XIM, use the flags "+ximp +kinput -xim" to disable the other
protocols.  kterm works fine with the kinput2 protocol.  If you
already have Canna or Wnn installed, you don't need to build Canna.

Do read the docs; there are lots of fine points having to do with the
XMODIFIERS environment variable ("XMODIFIERS='@example.com=kinput2'" should
work) and the localization variables (kterm uses EUC internally and so
doesn't listen to the LANG variable, you need to use the eucJPlocale
resource (bizarre naming, if you ask me; you can do it from the
command line with "-xrm *eucJPlocale: ja_JP.EUC").  There may be other
stuff I've forgotten.

I don't yet know why kterm 6.2.0 can't use the XIM protocol to
communicate with kinput2, but kinput2 reports a CLOSE request, then
complains of bad protocol (if kterm _is_ closing the IM, then trying
to use it, this is what would happen).

Steve

-- 
                            Stephen J. Turnbull
Institute of Policy and Planning Sciences                    Yaseppochi-Gumi
University of Tsukuba                      http://turnbull.sk.tsukuba.ac.jp/
Tel: +81 (298) 53-5091;  Fax: 55-3849              turnbull@example.com
-----------------------------------------------------------------
a word from the sponsor will appear below
-----------------------------------------------------------------
The TLUG mailing list is proudly sponsored by TWICS - Japan's First
Public-Access Internet System.  Now offering 20,000 yen/year flat
rate Internet access with no time charges.  Full line of corporate
Internet and intranet products are available.   info@example.com
Tel: 03-3351-5977   Fax: 03-3353-6096


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links