kinput2 は、jserver や cannaserver と通信して、 kinput2 protocol や XIM protocol での日本語の入力を提供します。
kinput2 protocol は、kterm や tgif で利用できます。 XIMは、Xクライアントの標準の入力方式で、国際化したクライアントで 使用できます。
ソースを入手して展開します。以下の場所などにあります。
ソースを展開します。
% mkdir kinput2 % cd kinput2 % tar zxvf $(SRCDIR)/kinput2-v2-fix3.tar.gz
kinput2-v2-fix3 には通信中の Xtoolkit Widget が Destroy 時に 停止するというバグがあります。 これに対する解消のパッチが存在するので、それをあてておきます。 このバグは次のリリースでは修正される予定だそうです。
% patch -p0 < $(SRCDIR)/kinput-patch-fix3-bugfix.patch
kinput2-v2-fix3 に対する機能拡張として、kinput2-wnn-egg-key という ものが存在します。これは、kinput2 のキーバインドを Mule の egg に近くするというものです。
これを使用する場合は、次のようにしてパッチをあてます。% gzip -dc $(SRCDIR)/kinput2-wnn-egg-key-1.06.patch.gz | patch -p1附属のドキュメントを良く読んで使用して下さい。
ここでの説明は、それぞれ Wnn, Canna のインストールが完了している 場合で示しています。 Wnn / Canna の両方を使用することもできますし、 片方だけの利用も可能です。 (あと sj3 が利用できますが、この文書ではあつかいません。あしからず ^^;)
Wnn/Canna どちらの場合も、sj3 を使わないので、
#define UseSj3 /* define if you are going to use Sj3 */
/* #define UseSj3 /* define if you are going to use Sj3 */
/* #define UseWnn */ /* define if you are going to use Wnn */ : /* * If you have installed Wnn.. * * First check the directory where Wnn header files has been installed. * If "config.h" is not there, you must specify the include directory * in the Wnn source tree. */ XCOMM use installed header files (if config.h is there) XCOMM WNNINCDIR = /usr/X11R6/include/wnn XCOMM or header files in the source tree XCOMM WNNINCDIR = $(CONTRIBSRC)/programs/Xsi/Wnn/include XCOMM use installed library XCOMM WNNLIB = -lwnn /* * Or, use library in the source tree.. */ XCOMM use library in the source tree WNNSRC = $(CONTRIBSRC)/programs/Xsi/Wnn WNNINCDIR = $(WNNSRC)/include WNNLIB = $(WNNSRC)/jlib/libwnn.a
#define UseWnn /* define if you are going to use Wnn */ : /* * If you have installed Wnn.. * * First check the directory where Wnn header files has been installed. * If "config.h" is not there, you must specify the include directory * in the Wnn source tree. */ XCOMM use installed header files (if config.h is there) WNNINCDIR = /usr/local/include/wnn XCOMM or header files in the source tree XCOMM WNNINCDIR = $(CONTRIBSRC)/programs/Xsi/Wnn/include XCOMM use installed library WNNLIB = -L/usr/local/include -lwnn /* * Or, use library in the source tree.. */ XCOMM use library in the source tree XCOMM WNNSRC = $(CONTRIBSRC)/programs/Xsi/Wnn XCOMM WNNINCDIR = $(WNNSRC)/include XCOMM WNNLIB = $(WNNSRC)/jlib/libwnn.a
#define UseCanna /* define if you are going to use Canna */ : /* * If you have already installed Canna header files and libraries.. */ XCOMM use installed headers/libraries XCOMM CANNAINSTDIR = /usr/local/canna XCOMM CANNASRC = $(CANNAINSTDIR)/include XCOMM CANNALIB = -lcanna16 /* * If you have compiled Canna that came with X11R6 (contrib/programs/Canna), * but not installed yet.. */ XCOMM use headers/libraries in the source tree CANNASRC = $(CONTRIBSRC)/programs/Canna32 CANNALIB = -L$(CANNASRC)/lib/canna16 -lcanna16
#define UseCanna /* define if you are going to use Canna */ /* * If you have already installed Canna header files and libraries.. */ XCOMM use installed headers/libraries CANNAINSTDIR = /usr/local/canna CANNASRC = $(CANNAINSTDIR)/include CANNALIB = -L/usr/local/lib -lcanna16 /* Canna のライブラリのある場所を指定 */ /* * If you have compiled Canna that came with X11R6 (contrib/programs/Canna), * but not installed yet.. */ XCOMM use headers/libraries in the source tree XCOMM CANNASRC = $(CONTRIBSRC)/programs/Canna32 XCOMM CANNALIB = -L$(CANNASRC)/lib/canna16 -lcanna16
編集が完了したらコンパイルしてインストールします。
% xmkmf % make Makefiles % make depend % make % su # make install ( # make install.man マニュアルを入れる場合 )
kinput2 は使用する前に常駐させておく必要があります。
% kinput2 & 通常 % kinput2 -wnn & wnn/canna 両方対応にしたときに、wnn のほうで起動 % kinput2 -canna & wnn/canna 両方対応にしたときに、canna のほうで起動
kinput2 を Kterm から Kinput2 Protocol で利用するには、 kterm側で以下のようなリソース設定が必要です。 この設定では、Shift-space で kinput2 が起動します。
KTerm*VT100*translations: #override Shift<Key>space:\ begin-conversion(_JAPANESE_CONVERSION) KTerm*allowSendEvents: true
Tgif では次のリソースを設定します。
Tgif*IMProtocol: kinput文字入力中に Shift-space で kinput2 が起動します。
kinput2 を XIM で使用する場合は、以下の設定が必要です。
setenv XMODIFIERS "@im=kinput2"と .cshrc か .login などにいれておきます。
.Xdefaults や .Xresource または各クライアントのリソースファイルなどで
*inputMethod: kinput2を設定しておきます。
デフォルトでは、ja_JP, ja_JP.SJIS, ja_JP.EUC, japan, japanese に反応して起動します。 (リソース *IMProtocol.locales で設定されています )
setenv LANG ja_JP.EUCなどを .cshrc や .login で設定しておきます。
kinput2 の XIM での起動キーはデフォルトでは Shift<Key>space か Ctrl<Key>Kanji です。変更したい場合は、 リソースの Kinput2*ConversionStartKeys: を変更します。 詳細はマニュアルを参照して下さい。
kinput2 のキー操作などの設定を変更するには、ccdef ファイルを変更します。 これについては、ソースコードのなかの、 doc/ccdef に解説があるので それを参照して下さい。