kinput2 - X11用漢字入力サーバ
kinput2 [-options...]
Kinput2 は日本語テキストを入力するためのXウインドウアプリケーションです。かな漢字変換を必要とする他のアプリケーションへのフロントエンドとして働きます。
起動すると、初期化(マシンによっては30秒ほどかかることもあります)を行った後、kinput2は他のクライアントからの日本語入力要求を黙って待ちます(つまりウインドウは開きません)。kinput2が要求を受け取るとウインドウを開き、変換プロセスを開始します。入力が確定すると、クライアントに変換されたテキストを送り返します。
Kinput2はその前身である、X11R4で配布されたkinputに対して、大幅な改善が加えられたものです。
この特徴によりカーソル位置において変換を行えるようになり、カーソル位置と変換ウインドウ間の不要な視線の移動が避けられます。Kinput2はルートウインドウ型の入力と固定位置型の入力もサポートしています。
フロントエンドとクライアント間の複数の変換プロトコルをサポートしています。サポートされているプロトコルは次の通りです。
Kinput2はWnn,Canna,Sj3の三種類の変換エンジンを使うことができます。コンパイル時、または実行時にこの中から一つを選ぶことができます。
Kinput2はkinputの完全上位互換なので、フロントエンドとしてkinputを使うアプリケーションは、kinput2も使うことができます。しかしその場合、アプリケーションは自由位置入力の利点を利用できません。
kinput2 は標準のXツールキットコマンドラインオプションを全て受け付けます。次に示すオプションも受け付けます。
次に示すのはkinput2のウィジェット階層です
Kinput2 kinput2
ConversionManager convmanager
KinputProtocol kinputprotocol
XimpProtocol ximpprotocol
IMProtocol improtocol
SeparateConversion converter
CcWnn inputObj
Canna inputObj
Sj3 inputObj
JpWcharDisplay displayObj
Form form
ICLabel mode
JpWcharDisplay display
Canvas text
TransientShell selectionShell
CandidatePanel selection
JpWcharDisplay display
TransientShell auxShell
AuxPanel aux
JpWcharDisplay display
OffTheSpotConversion converter
CcWnn inputObj
Canna inputObj
Sj3 inputObj
JpWcharDisplay displayObj
AdoptedShell modeShell
ICLabel mode
JpWcharDisplay display
CanvasShell text
TransientShell selectionShell
CandidatePanel selection
JpWcharDisplay display
TransientShell auxShell
AuxPanel aux
JpWcharDisplay display
OverTheSpotConversion converter
CcWnn inputObj
Canna inputObj
Sj3 inputObj
JpWcharDisplay displayObj
TransientShell selectionShell
CandidatePanel selection
JpWcharDisplay display
TransientShell auxShell
AuxPanel aux
JpWcharDisplay display
AdoptedShell modeShell
ICLabel mode
JpWcharDisplay display
TransientShell modeShell
ICLabel mode
JpWcharDisplay display
CanvasShell text
ここに書ききれないほど多くのリソースがありますが、その多くは知る必要がありません。そこで、変更する必要があると思われるリソースのみに関して簡単な説明を示します。
modifier-namesは"Shift","Lock","Meta","Alt","Mod[1-5]"の組合わせです。"~"をそれぞれのmodifier-namesの前に置くこともでき、これはその修飾キーが押されていないという事を表します。例えば、変換開始キーが"漢字"キーで、シフトキーが押されていてコントロールキーが押されていない状態(他の修飾キーはどちらでもよい)だとすると、次のように指定します。
Shift ~Ctrl<Key>Kanji改行をはさんで複数のキーを指定することもできます。デフォルトは次の通りです。
Shift<Key>space \n\X Input Methodプロトコルを使うときには、使用したい入力サーバの種類を(クライアントに対して)指定しなければなりません。これは"inputMethod"リソースか"XMODIFIERS"環境変数を設定することで実現できます。"inputMethod"リソースを見ないクライアントも "XMODIFIERS"変数を無視するクライアントもありますので、両方を設定しておくのが賢明です。
kinput2を使うためには、次の行をリソースファイル(.Xresourcesや.Xdefaults)に付け加える必要があります。
*inputMethod: kinput2
そして"XMODIFIERS"変数を"@im=kinput2"に設定してください。
setenv XMODIFIERS "@im=kinput2" (cshの場合)
XMODIFIERS="@im=kinput2"; export XMODIFIERS (shの場合)