Xfce4でKDEアプリケーションに日本語入力できない

407 views
Skip to first unread message

Yoichiro Takehora

unread,
Jan 2, 2009, 5:45:45 AM1/2/09
to slackwa...@googlegroups.com
みなさん、あけましておめでとうございます。
竹洞@管理人です。


今年もどうぞ宜しくお願いいたします。

Xfce4の環境で、SCIMを使って、KDEアプリケーションに日本語を入力できませ
ん。

KDEをデスクトップ環境にすれば、全く問題なく入力できるのですが…

環境は、Slackware12.2です。
SCIMは、/etc/profile.d/scim.shとscim.cshを755にして利用できるようにして
います。

もし、解決方法をご存知の方がいらっしゃったら、お返事を頂けると幸いです。
どうぞ宜しくお願いします。


--
Yoichiro Takehora <yoic...@takehora.jp>

NANAUMI Yukimasa

unread,
Jan 2, 2009, 7:38:10 AM1/2/09
to slackwa...@googlegroups.com
From: Yoichiro Takehora <yoic...@takehora.jp>
Subject: [slackware-tech:41] Xfce4でKDEアプリケーションに日本語入力できない
Date: Fri, 2 Jan 2009 19:45:45 +0900
Message-ID: <20090102194545.4...@takehora.jp>

あけましておめでとうございます。
七海と申します。

今年もよろしくお願い致します。

最近のSlackwareからすると邪道かもしれませんが‥‥

~/.xsessionに以下の内容を追記します。
/etc/profile.d/scim/sh の内容に
ja_JP.utf8 と startxfce4 を追加した内容です。

====== ~/.xsession ==============================================
LC_ALL=ja_JP.utf8
export LC_ALL

if [ -x /usr/bin/scim ]; then
# Enable legacy X applications to use scim:
export XMODIFIERS="@im=SCIM"
# Enable Qt/KDE applications to use scim:
export QT_IM_MODULE="scim"
# Make scim start automatically if the "magic key" Ctrl-Space is pressed:
export XIM_PROGRAM="/usr/bin/scim -d"
fi

if [ -x /usr/bin/scim-bridge ]; then
# Let GTK applications like Firefox/Thunderbird use scim-bridge as
# default immodule:
export GTK_IM_MODULE="scim-bridge"
fi

if [ -x /usr/bin/scim ]; then
/usr/bin/scim -d &
fi

exec startxfce4
=================================================================

それから、
RunLevel=4 の kdm なら、
$ chmod 755 ~/.xsession
をした後に、「session type」を「custom」にしてログインします。

RunLevel=3 なら
$ ln -s .xsession .xinitrc
で、~/.xinitrc にしたあと、
startx か xinit でXを起動します。

これでログインすると
メニューも日本語になりますし、
KEdit(KDE), firefox(GTK), uxterm(X)で日本語入力出来ました。

私の設定ファイルは、Slackware 3.X からの使いまわしなので、
相当古いです。

最近のものだと、
/etc/profile.d/lang.sh の
LC_ALLかLANGにja_JP(.utf8)を設定して、
どこかの起動スクリプトで、
scim -d を起動してやればいいと思うのですが
よくわかりませんでした。

----
NANAUMI Yukimasa
E-Mail n.yuk...@gmail.com

yoichiro>
yoichiro> みなさん、あけましておめでとうございます。
yoichiro> 竹洞@管理人です。
yoichiro>
yoichiro>
yoichiro> 今年もどうぞ宜しくお願いいたします。
yoichiro>
yoichiro> Xfce4の環境で、SCIMを使って、KDEアプリケーションに日本語を入力できませ
yoichiro> ん。
yoichiro>
yoichiro> KDEをデスクトップ環境にすれば、全く問題なく入力できるのですが…
yoichiro>
yoichiro> 環境は、Slackware12.2です。
yoichiro> SCIMは、/etc/profile.d/scim.shとscim.cshを755にして利用できるようにして
yoichiro> います。
yoichiro>
yoichiro> もし、解決方法をご存知の方がいらっしゃったら、お返事を頂けると幸いです。
yoichiro> どうぞ宜しくお願いします。
yoichiro>
yoichiro>
yoichiro> --
yoichiro> Yoichiro Takehora <yoic...@takehora.jp>

Yoichiro Takehora

unread,
Jan 2, 2009, 8:49:03 AM1/2/09
to slackwa...@googlegroups.com
竹洞です。


七海さん、メールをどうもありがとうございます。
七海さんのメールを参考にして、xfce用の.xinitrcの82行目から始まる
xfce4-sessionの起動の手前に

if [ -x /usr/bin/scim ]; then
/usr/bin/scim -d &
fi

と記載したところ、xfce4の起動と共に、scimとanthyのアイコンがタスクトレイ
の中に入り、KDEアプリケーションにも日本語入力できるようになりました。

ただ、起動時に「klauncherと通信できません」と、今までタスクトレイに常駐
していた AmarokなどのKDEアプリケーションがエラーを吐くようになりました。

どうも、まだ記載する位置が悪いみたいです。
ちょっと、色々と試してみます。

どうもありがとうございました。

--
Yoichiro Takehora <take...@firstandfast.net>

JW

unread,
Jan 2, 2009, 9:23:28 AM1/2/09
to Slackware-Tech
あけましておめでとうございます。

/etc/profile.d/scim.sh の最後のほうに以下のような記述があります。

--------- 切り取り線 ここから ----------------
# GTK+ environments such as XFce should support SCIM automatically,
BUT
# if the first app you run is a Qt one, you'll run into problems.
This
# can be avoided by going into Menu -> Settings -> Autostarted
Applications
# and adding SCIM: /usr/bin/scim -d

# KDE will not start SCIM automatically, so you will need a script
such as
# this one in your $HOME/.kde/Autostart:

#!/bin/bash
#if [ -x /usr/bin/scim ]; then
# /usr/bin/scim -d &
#fi

# Obviously, uncomment all but the first line. :-)
--------- 切り取り線 ここまで ----------------

この記述に従って、以下のような内容のスクリプトを適当な名前( scim-start.sh とか)で
$HOME/.kde/Autostart ディレクトリに実行属性つけて保存すればいいと思います。

#!/bin/bash

NANAUMI Yukimasa

unread,
Jan 2, 2009, 9:28:51 AM1/2/09
to slackwa...@googlegroups.com

From: Yoichiro Takehora <take...@firstandfast.net>
Subject: [slackware-tech:43] Re: Xfce4でKDEアプリケーションに日本語入力できない
Date: Fri, 2 Jan 2009 22:49:03 +0900
Message-ID: <20090102224903.f...@firstandfast.net>

七海です。

takehora> 七海さんのメールを参考にして、xfce用の.xinitrcの82行目から始まる
takehora> xfce4-sessionの起動の手前に
takehora>
takehora> if [ -x /usr/bin/scim ]; then
takehora> /usr/bin/scim -d &
takehora> fi
takehora>
takehora> と記載したところ、xfce4の起動と共に、scimとanthyのアイコンがタスクトレイ
takehora> の中に入り、KDEアプリケーションにも日本語入力できるようになりました。

やっぱり簡単にできる方法があったのですね。

/etc/X11/xinit/xinitrc.xfce を眺めてみたら
"$XDG_CONFIG_HOME/autostart"
"$HOME/Desktop/Autostart"
の配下にあるファイルを自動起動してくれるようなので、
scim.sh とか作ればいいのかもしれませんね。


takehora> ただ、起動時に「klauncherと通信できません」と、今までタスクトレイに常駐
takehora> していた AmarokなどのKDEアプリケーションがエラーを吐くようになりました。

私はfluxboxを使っているのですが、
KDEアプリケーションを使うときによく出てきました、そのエラー。
エラーの原因は ~/.xsession-errors に書かれているかもしれません。

最初の頃は、エラーが出たら「kdeinit」を再起動していたのですが、
$HOME/.DCOPserver_* のファイルをログイン時に消してやれば
エラーが発生しないようになりました。
scim -d をした後あたりにでも
====================================================
if [ -f $HOME/.DCOPserver_`hostname`__0 ]; then
rm -f $HOME/.DCOPserver_`hostname`__0
fi
====================================================
とかいれてみてはどうでしょうか??
うちではhostnameはべた書きですが。

日本語環境っていざ作ろうとすると難しいですね。

Yoichiro Takehora

unread,
Jan 2, 2009, 9:40:13 PM1/2/09
to slackwa...@googlegroups.com
竹洞です。

JWさん、あけましておめでとうございます。


> この記述に従って、以下のような内容のスクリプトを適当な名前
> ( scim-start.sh とか)で $HOME/.kde/Autostart ディレクトリに実行属
> 性つけて保存すればいいと思います。
>
> #!/bin/bash
> if [ -x /usr/bin/scim ]; then
> /usr/bin/scim -d &
> fi

説明不足で申し訳ないです。
実は、そのシェルスクリプトは既に./kde/Autostartに入れてあるんですが、
Xfce環境だと有効じゃないみたいなのです。


--
Yoichiro Takehora <yoic...@takehora.jp>

JW

unread,
Jan 2, 2009, 10:46:14 PM1/2/09
to Slackware-Tech
竹洞さん、こんにちは。

> 実は、そのシェルスクリプトは既に./kde/Autostartに入れてあるんですが、
> Xfce環境だと有効じゃないみたいなのです。

失礼しました。こっち(下)を参考にすべきでした。

# GTK+ environments such as XFce should support SCIM automatically,
BUT
# if the first app you run is a Qt one, you'll run into problems.
This
# can be avoided by going into Menu -> Settings -> Autostarted
Applications
# and adding SCIM: /usr/bin/scim -d

うちの環境では、上記説明にしたがって XFce起動後、
メニュー → 設定 → 自動開始アプリケーション で SCIM を追加(コマンド; /usr/bin/scim -d )
することで解決しました。
Reply all
Reply to author
Forward
0 new messages