[Uim] Re: [SCIM] Re: Design philosophy and strength of uim

James Su suzhe at tsinghua.org.cn
Sat Jun 26 06:20:51 EEST 2004

  First, though there is no simple API (like uim) for client usage, 
SCIM's IMEngines can be loaded into client's process directly by using 
libscim. We are planning a C binding of SCIM's IMEngine interface, just 
like uim.
  The socket protocol of SCIM is also implemented as an IMEngine module, 
if a client want to connect to the SCIM socket daemon, it can just load 
the socket IMEngine module and use it just like other normal IMEngines, 
without re-implement the socket interface.

  The position of the preedit string window is hardcoded into source 
code. Most Chinese users like the current style. If you think putting it 
right after the cursor is better, I can change it as you wish.

  And You must use a locale with UTF-8 encoding in order to use all 
input methods in one client. Because typing characters outside a 
specific charset makes no sense.

James Su


Ken Deeter wrote:

>>The first picture demonstrates a single process scim xim server. All
>>IMengines and a x11 FrontEnd object are running within one process,
>>which acts as a xim server. The GUI Panel runs as a separated process.
>>The second picture demonstrates a C/S like usage. All real IMEngines
>>and a socket FrontEnd object are running within one process, which
>>acts as a socket server daemon. A socket IMEngine and a x11 FrontEnd
>>object are running within another process, which acts as a xim server
>>and get input method services from the first process. A gtk2
>>application with scim's gtkimmodule is another client of the first
>>process. There is only one GUI Panel process which provides gui
>>services for all scim process (including the gtk2 apps with scim's
>Hi, I just joined the list and I have been doing some writing for the
>qt-immodule project.
>I think one of the points of the UIM design is that the IM-engines can
>run in the same process as the application itself. This is different
>from SCIM's model where a separate scim process is always started, even
>if you use the XIM front end.
>I haven't looked at the scim code yet, but does scim have a client api
>or client library that applications can link to, so that each 'client'
>(whether it be a bridge to XIM or an immodule for qt or gtk) does not
>need to re-implement the socket interface from scratch?
>I have been playing with scim and scim-uim and I have to say I am very
>impressed. I have a few questions however.
>I'm using the X11 front end in KDE, and whenever I input, the pre-edit
>buffer appears slightly below where the cursor is. Is this on purpose?
>as kinput2 and skkinput (popular Japanese XIM based front ends) always
>put the over-the-spot display right where the cursor is so that the
>pre-edit looks kind of like it is part of the line.
>Also, whether I use it from a gtk2 app via a gtk2 immodule, or a x11
>front end, I can only seem to choose between Japanese input methods. Is
>this because my locale is set to ja_JP.eucJP? I have scim-tables and
>scim-chinese (on gentoo) installed as well, and the scim start up
>message looks like it finds them. They show up in the config screen from
>the gtk-panel as well. Although I do not write in Chinese well, I would
>like to practice, but I can't seem to select it yet ;-)
>Thanks, and keep up the good work.
>uim mailing list
>uim at freedesktop.org

More information about the uim mailing list