Hi,
First my rant and then the solution to the problem...
I am thinking that im-switch is too complex for the simple task of
starting IM such as SCIM, uim, kinput2 and it obscures IM setting. If
it is simple hook script, this could be much simpler.
The complication comes from the very twisted use of update-alternative
mechanism which is made to be locale sensitive. After talking to
Goto-san today, I feel like to replace im-switch package with something
like im-common package in which uim, kinput2, SCIM just share X
initialization hook or even SCIM to include hook in somewhere like
/usr/share/gnome/autostart.
On Sat, Sep 15, 2007 at 01:37:08AM -0500, Ming Hua wrote:
> On Sat, Sep 15, 2007 at 02:52:42PM +0900, Osamu Aoki wrote:
> >
> > I thought this defunct process was caused by appending & to the command
> > which itself was able to daemonize itself. As I checked it was there
> > anyway. (& was always added with normal use of im-switch)
>
> I am not sure what you mean by "it was there anyway". I just tested
> myself, by changing the line #64 of /etc/X11/Xsession.d/80im-switch from
> ... && eval "$XIM_PROGRAM $XIM_ARGS &" || ...
> to
> ... && eval "$XIM_PROGRAM $XIM_ARGS" || ...
> i.e., remove the trailing "&" when calling "scim -d". With this change
> I don't have a "[scim] <defunct>" zombie process anymore. In other
> words, this change in 80im-switch fixes bug #431294.
>
> Osamu, can you confirm this? If so, I think the easiest way is to make
> im-switch configurable to not append the "&" to the IME invocation
> command.
Yes. I confirmed too.
The thing is many older IME interfaces such as kinput2 requires to have
& after the command. So removing & from im-switch breaks them.
For the moment, I suggest to fix bug #431294 by making
/etc/X11/xinit/xinput.d/scim to be
--------------------------------------------------------------------
#
# Use "X input Method" for all applications
#
# Per Ming's Documentation in SCIM, XIM Input Method is activated
# not only for old X-applications but also for GTK and QT appplication.
#
# If a user wish to use, GTK Input Method, (s)he can right-click input
# area and select "Input Methods" and change from "X input Method" to
# "SCIM Input Method".
#
XIM=SCIM
# If there is no scim-launcher run under $USER, SCIM is started.
if [ -z "$(/bin/pidof scim-launcher|xargs -n1 ps --no-headers -o user,pid --pid
2>/dev/null|sed -n "s/^${USER} *\([1-9][0-9]*\)$/\1/p")" ] ; then
/usr/bin/scim -d
fi
XIM_PROGRAM=""
XIM=ARGS=""
GTK_IM_MODULE=xim
QT_IM_MODULE=xim
DEPENDS="scim,scim-anthy|scim-canna|scim-chewing|scim-pinyin|scim-hangle|scim-prime|scim-skk|scim-tables-additional|scim-m17n|scim-uim|scim-tables-ja|scim-tables-ko|scim-tables-zh"
--------------------------------------------------------------------
For the moment, I suggest to fix bug #431294 by making
/etc/X11/xinit/xinput.d/scim-immodule to be
--------------------------------------------------------------------
#
# This configuration file for SCIM is deprecated.
#
# Use "X input Method" for standard X applications
# Use "SCIM immodule" for GTK applications
#
# Using this configuration may improve some usability for GTK applications
# such as the location of word selection window.
#
# You still need these XIM settings for non-GTK programs.
XIM=SCIM
# If there is no scim-launcher run under $USER, SCIM is started.
if [ -z "$(/bin/pidof scim-launcher|xargs -n1 ps --no-headers -o user,pid --pid
2>/dev/null|sed -n "s/^${USER} *\([1-9][0-9]*\)$/\1/p")" ] ; then
/usr/bin/scim -d
fi
XIM_PROGRAM=""
XIM=ARGS=""
GTK_IM_MODULE=scim
# Qt immodule is not ready
#QT_IM_MODULE=scim
DEPENDS="scim,scim-gtk2-immodule,scim-anthy|scim-canna|scim-chewing|scim-pinyin|scim-hangle|scim-prime|scim-skk|scim-tables-additional|scim-m17n|scim-uim|scim-tables-ja|scim-tables-ko|scim-tables-zh"
--------------------------------------------------------------------
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]