長南です。たいへんな長文になってしまいました。
# まず忘れないうちに、お願いしておきます。
# できるだけ、スレッドをつないでおいてください。
NANA さんのメールより [debian-users:44179]
何と何を入れて、どういうことをなさったのですか。そのへんをも
う少し
詳しくお書きになってください。
インストールしたのは以下のものです。
libuim0
libuim0-nox
uim-canna
uim-common
uim-gtk2.0
uim-utils
uim-xim
そして、~/.xsession に以下のような uim の設定をし
ました。
XMODIFIERS=@im=uim-anthy ; export XMODIFIERS
GTK_IM_MODULE=uim-xim ; export GTK_IM_MODULE
exec uim-anthy &
exec uim-helper-toolbar-gtk-systray &
かな漢字変換システムに canna ではなく anthy を、イ
ンプットメソッドに
kinput2 ではなく uim を使おうとなさったのですか。
私は anthy を使ったことがないので、その使用法に深入りす
ることは
できません。でも、上の .xsession の記述の場合、
exec という文字を
消さないと、.xsession の実行がそこから先に進まないと思い
ます。
exec については、シェルの内部コマンドですから、man bash
で調べてください。
一応ここでは canna + kinput2 の組み合わせで使うことにし
て、話を
進めます。私はそれしか知りませんから(uim をちょっと使っ
たことが
ありますけれど)。
kinput2 ... を実行したユーザは誰なのですか。root、一般
ユーザ?
root ユーザーで実行していました。
kinput2 は一般ユーザでも実行できますが、root ユーザで日
本語入力を
なさりたいということなのでしょうか。それならば、すでに日本語変
換が
できる一般ユーザから su で root になるのが、一番簡
単だと思います。
思い切って root で set-language-env -R を実行する
手もありますけれど
(man set-language-env 参照)、set-language-env が推
奨していない
方法ですし……(どんば不都合があるんだろう)。もし実
行するのなら、
その前に /root にあるドット・ファイルをバックアップして
おいた方が
よいかもしれません。
いろいろなサイトを閲覧して、少し混乱しているので、認識を確認
させてください。
デスクトップ環境を使うには、
【 ディスプレイマネージャー 】 と
【 startx 】、2つの方法が
あり、
・ディスプレイマネージャー(xdm gdm kdm)は、
~/.xsession なけ
れば、/etc/X11/Xsession
※gdm は ~/.gnomerc なければ、/etc/X11/Xsession
・startx は、~/.xinitrc なければ、/etc/X11/xinit/
xinitrc
をそれぞれ読み込んで起動
startx で X を起動する場合については、おっしゃるとおりで
す。
でも、ディスプレイマネージャ経由で X を使用する場合の方
は、
ちょっと違います。
このへんはディストリビューションによってかなり様々です。
ですから、Web で調べて、かえって混乱なさったのも、もっと
もな
ことだと思います。バージョンによっても違うかもしれませんし。
debian sarge の gdm の場合は、/etc/gdm/gdm.conf に
「BaseXsession=
/etc/gdm/Xsession」と書いてあります。つまり、まず /etc/gdm/
Xsession
を実行しているわけです。そこで /etc/gdm/Xsession から進
行を
たどってみると、/etc/gdm/Xsession が /etc/X11/
Xsession.d にある
スクリプトを読み込み、そのスクリプトの中で
$HOME/.xsession を
(存在する場合は)実行しているのです。
$HOME/.gnomerc が存在する場合も、
やはり /etc/X11/Xsession.d 中のスクリプトで読み込まれて
います。
実際には gdm から Xsession に与えられる引数があっ
て、話はもっと
複雑なのですけれど。
# gdm で Default System Session 以外を意図的に選ぶと、
$HOME/.xsession
# が実行されないようです。X 起動時に(と言うか、グ
ラフィック・ログイン
# 時に)、kinput2 が動いていないとしたら、これが原
因かもしれません。
xdm の場合は、/etc/X11/xdm/Xsession --> /etc/X11/Xsession -->
/etc/X11/Xsession.d/* --> $HOME/.xsession という流れになります。
kdm については知りません。
ついでに言うと、/etc/X11/xinit/xinitrc も /etc/X11/
Xsession を
読みに行っています。ですから、$HOME/.xsession が存在すれ
ば、
この場合も実行されます。
わかりにくい説明になってしまいましたし、私が何か誤解しているかも
しれません。ご自分で /etc/gdm/Xsession から追ってみてく
ださい。
さらに日本語環境にするには、
一般ユーザーで set-langurege-env を実行し、
使用したいインプットメソッドと変換エンジンを決め、
~/.xsession(~/.gnomerc) または
~/.xinitrc の始めに、
LANG=ja_JP.eucJP
export LANG
XMODIFIERS=@im=kinput2; export XMODIFIERS
exec kinput2 -canna &
を記述し、インプットメソッドと変換エンジンを指定する
というような理解でよろしいのでしょうか?
ちょっと揚げ足取りめいていますが、kinput2 を使うなら、上
の記述は
set-language-env がやってくれるわけですね。それから、
kinput2 を
exec してはいけません。
canna + uim というのを試してみたことがあります。その場合は
$HOME/.xsession をこんなふうに書き換えました。
XMODIFIERS=@im=uim; export XMODIFIERS
uim-xim &
それから、$HOME/.Xresources を次のように変更。
!#define XIM kinput2 # 行頭に ! を付けて、コメ
ントアウトし、
#define XIM uim # この行を付け加えた。
$HOME/.bashrc に次の行があるのですが、これは放っておいても問題
ない
ようです。
# XIM サーバーの名前を定義する
# (XIM は、language-env だけで使うシェル変数です)
XIM=kinput2
もし、canna 以外の変換エンジンも入れているのなら、
$HOME/.uim を
作って、こう書き込む必要があるらしい。試したことはないのですが。
(define default-im-name 'canna)
以上です。
あちこちに説明しきれなかったり、私自身がよくわかっていなかった
りする
ところがあります。なにしろ、debian の X 起動スクリ
プトを読んだのは、
今回が初めてなんですから。
--
長南洋一