kinput2でX上で日本語入力


Last Update: 2005/01/04
12251 th Visitor

X Windowでの日本語入力

コンソールで日本語入力する時は、konを立ち上げておいてからcanuumやonewを使って日本語入力したと思います。
この方法はX Window上でktermなどの日本語対応ターミナルが日本語をサポートしているので、当然canuumやonewを使うことができます。

しかし、ターミナル以外の直接日本語入力をサポートしていないアプリケーションではcanuum等では日本語入力はできません。
そこで、X Windowsではプロトコルを用いて仮名漢字サーバーと通信し日本語入力できるようになっています。
日本語入力するためのプロトコルはkinputプロトコルやkinput2プロトコル、そしてximプロトコルなどがあり、それらをサポートしていれば、どのソフトでも日本語入力できるようになっています。

そして、それらのプロトコルを用いてX上で日本語を入力するためのアプリケーションとして、kinput2があります。
これは、Xサーバー上でCannaなどの仮名漢字サーバーと通信し、様々なXアプリケーション上に日本語入力を提供するソフトです。
なので、kinput2自身はあくまでインターフェースであり、実際に変換するのは漢字サーバーの役目となります。

コンソール上で動作した、canuumのX版みたいなものと考えてください。

まぁなんというか、平たく言えばkinput2を使えばXのアプリで日本語入力できるようになるわけなんです。はい。

kinput2のインストール

kinput2はportsからインストールします。
portsには、kinput2-cannaやkinput2-FreeWnnの様に仮名漢字サーバーの種類によって色々別れています。
このコンテンツではCannaのみを使用していますので、kinput2-cannaをインストールします。

なお、他に使う予定のあるサーバー(Wnn7など)があれば、それらをサポートするkinput2を入れておいた方が後から楽かもしれません。

> cd /usr/ports/japanese/kinput2-canna
> su
# make configure
# make
# make install
# make clean

これでインストールは終了です。

Xアプリで日本語入力できるようにする

とりあえず、kinput2をXを立ち上げたときに起動するように.xinitrcに追加します。
kinput2は基本的なアプリなので、最初の方に起動するように設定してください。

> su
> vi ~/.xinitrc

# start some nice programs
kinput2 -canna -xim &

な感じで、cannaを使うのと、ximプロトコルを使うオプションをついでに付けてやります。

次に.Xresourcesに以下を書き加えます。

> vi ~/.Xresources


*inputMethod:                                kinput2
Kinput2*conversionEngine:              canna
Kinput2*cannahost:                        localhost
Kinput2*useOverrideShellForMode:  true

inputMethod(入力ソフト)の所でkinput2を指定しているんですがソフト名を指定せず、アプリケーション全体に作用するようにします。
こうする事によって、ほとんどのXアプリでkinput2を使って日本語入力できるようになります。
ただ、Linux AcrobatReaderなどではエラーが出るので注意が必要だったりします。

conversionEngineのところで、仮名漢字サーバーを、cannahostのところでcannaサーバーの場所(この場合自分自身なのでlocalhost)、ついでにおまけでuseOverrideShellForModeも有効にしておきます。

次に.cshrcにXがkinput2を使うように設定を書いてやります。

> vi ~/.cshrc

setenv XMODIFIERS @im=kinput2

これで、XのInputMethodにkinput2が指定されました。

これでkinput2自身の設定は終わりです。

ktermで日本語入力できるようにする

最後にktermでkinput2で日本語入力できるようにします。
ktermで日本語入力するには、やはり.Xresourcesに設定を書き加えてやります。

KTerm*inputMethod:      kinput2
KTerm*openIm:             true
KTerm*vt100*translations: #override Shift<Key>space: begin-conversion(JAPANESE_CONVERSION)

まず入力ソフト(inputMethod)にkinput2を指定してやります。
次にInputMethodをktermで使う設定にします(openIm)
さらに、Shift+Spaceで日本語入力できるように設定します。

Xを起動して、kterm上でShift+Spaceキーを押してみてください。
カーソルの上か下に「あ」と書いてある白い枠が出たら成功です。
そこでローマ字を打つと日本語入力できるようになっているはずです。
日本語入力を終えるには、再度Shift+Spaceしてください。

これでktermの設定は終わりです。


Xの日本語環境


もどるにゅ

トップにもどるにゅ