現在、自宅PCの coLinux 環境では Debian sid が動いており、inetd で Xvnc を
vncserver stream tcp nowait nobody /usr/bin/Xvnc Xvnc -inetd -query localhost -once -geometry 976x732 -depth 16
の設定(もちろんinetd.confには上記2行を1行で書く)で起動しているのだが、今まで日本語入力環境を用意しておらず、まともに使える状況ではなかった。そこで、日本語入力環境を構築することに。
私の指は基本的にSKK以外の日本語入力を受け付けてくれないので、もちろんSKK系のものを設定するのだが、今までX環境でuim-skkを使ったことがなかったので、一度試してみよう、ということもあり、uim-skkを使えるようにした。以下は個人的な備忘録だが、同じような環境の方にはお役に立てるかもしれないので、晒すことに。
Debianなので、apt-get一発。
sudo apt-get install uim-xim uim-gtk2.0
他にもパッケージ指定が必要だったかもしれない。dpkg -l uim\* の結果は
要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)維持 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール |/ エラー=(空欄)無/(H)維持/(R)要再インストール/X=両方(状態,エラーの大文字=異常) ||/ 名前 バージョン 説明 +++-================-================-================================================ ii uim 0.4.2.1-1 Simple, secure, and flexible input method collec ii uim-common 0.4.2.1-1 Common files for uim ii uim-gtk2.0 0.4.2.1-1 GTK+2.x immodule for uim ii uim-helper-serve 0.4.2.1-1 IPC server between uim-applet-gnome and uim-xim ii uim-xim 0.4.2.1-1 A bridge between uim and XIM
となっている。
以下の内容の ~/.xfce4/xinitrc を作成し、chmod +x ~/.xfce4/xinitrc しておく。
#!/bin/sh TERMCMD=/usr/bin/mlterm export TERMCMD XMODIFIERS=@im=uim-skk export XMODIFIERS GTK_IM_MODULE=uim-skk export GTK_IM_MODULE /usr/bin/uim-helper-toolbar-gtk-systray & /usr/bin/uim-xim & . /etc/xfce4/xinitrc.xfce4-session
2行目および3行目はデフォルト端末を mlterm にするための設定なので、今回の設定とは直接関係ない。
環境変数XMODIFIERS、GTK_IM_MODULEの設定を行い、uim-helper-toolbar-gtk-systray および uim-xim を起動する。入力そのものだけならuim-ximだけで十分なのだが、uim-helper-toolber-gtk-systrayを動かしておくと、xfce4タスクバーに状態が表示できるようになる。
あとは通常のxfce4起動を行うため、xinitrc.xfce4-sessionを動かすようにしておいた。
mlterm, kazehakase, sylpheed-gtk2, Emacs で問題なく日本語入力できた。 ただし、デフォルト設定だと、Emacs の場合、C-j や2ストローク以上のキーバインドが uim-skk に奪われるので、あまりうれしくない。C-j に関しては、~/.uim に
(define-key skk-on-key? '("zenkaku-hankaku" "<Shift> ")) (define-key skk-off-key? '("zenkaku-hankaku" "<Shift> "))
と書いておけば解決できるが、2ストローク問題は解決できないので、素直に xim をオフにしてSKKを使うほうが素直だと思われる。個人的には、すべてuim-skkでやってしまえばユーザ辞書の共有ができてうれしいのだが…
*Messages* の更新情報取得には、antenna.lirs もしくは index.rdfをご利用ください。 豪傑アンテナ の LIRSからも取得可能です。