next_inactive up previous
: cannaによる日本語入力 : 5 tamago4/emacs のカスタマイズ(上級編)


6 Appendix

6.1 tgifでの日本語入力

日本語 tgif は、日本語入力に kinput プロトコルと XIM プロトコルをサポー トしている(その他に、中国語入力などにも対応)。どちらのプロトコルを用いる かの指定は、X リソースに記述するか、tgif のコマンドラインオプションで行 なう。

一般に、X上のアプリケーションの挙動を制御するための機構には、次のような ものがある。

  1. 環境変数
    XMODIFIERS, LANG など
  2. Xリソースファイル
    システム全体のリソースの設定は、/usr/X11R6/lib/X11/app-defaults/ や /usr/X11R6/lib/X11/ja_JP.eucJP/app-defaults/ にある。後者は、環境変数 LANG が ja_JP.eucJP に設定されている場合のみに参照される。個人の 設定ファイルは、~/.Xresources か ~ /.Xdefaults ファイルである。~/.Xresources と ~ /.Xdefaults の違いは、http://www.jp.freebsd.org/QandA/HTML/1032.html を参照。
  3. アプリケーション独自の設定ファイル
    emacs の ~/.emacs や ~/.emacs.el ファイ ルのようなもの。最近のアプリケーションは、この設定ファイルをアプリケー ションから直接操作できる(``options''のようなメニューで変更した内容が、 設定ファイルに保存される)ものが増えている。
  4. アプリケーション起動時のコマンドラインオプション

これら相互で異なった設定をした場合、一般には、下の方の設定が優先されるこ とが多い。tgif での日本語入力を制御する方法を、表にまとめると次のように なる。

  kinput プロトコル XIM プロトコル
X リソース Tgif.DoubleByteInputMethod: Tgif.DoubleByteInputMethod:
  kinput2 xim
オプション -dbim kinput2 -dbim xim
変換起動キー Ctrl + Space Shift + Space
変換終了キー Shift + Space Shift + Space

tgif を立ち上げて、テキスト入力モードで日本語フォントを選んだ状態で、 Shift + Space で日本語入力にならない場合は、Ctrl + Space を試してみる。 Ctrl + Space で日本語入力になる場合は、XIMプロトコルではなく、KINPUT プ ロトコルで、通信している。そのまま使い続けても良いが、他のアプリケーショ ンと同様に、変換起動キーを Shift + Space にしたい場合は、tgif -dbim xim で立ち上げる。"Cannot open the X Input Method" と言われる場合は、環境変 数XMODIFIERS が設定されていないか、kinput2 が立ち上がっていないので、チェッ クする。

毎回、tgif -dbim xim として立ち上げるのは面倒なので、~ /.cshrc ファイルで、

     alias tgif	tgif -dbim xim
と書いておけばよい。

同様な設定を、Xリソースで行うためには、次のようにする。個人の Xリソース の設定ファイルは、~/.Xdefaults か ~ /.Xresources である。.Xdefaults と .Xresources の違いは、 こちらを参照。 どちらかのファイルに、

    Tgif*DoubleByteInputMethod: xim
と書けば、次回の login から反映されるはずである。 ちなみに、現在の Xリソースの設定は、
    % xrdb -query

で見ることが出来る。

6.2 canna に付属する utulity プログラム

詳しい使用法や コマンドラインオプション は、

		% man XXXXX (英語)
		% jman XXXXX (日本語)
のマニュアルページを参照。

  1. 変換サーバーのチェック

    cannacheck
    「かんな」の関連情報の表示
    cannastat
    かな漢字変換サーバの情報の表示
    cshost
    かな漢字変換システムのサーバ・アクセス制御

  2. cannaserverと通信して、辞書を管理するツール

    catdic
    辞書の内容を表示する
    cpdic
    ユーザ辞書コピーツール
    chmoddic
    辞書のアクセス権を変更する
    addwords
    一括単語登録
    delwords
    一括単語削除
    lsdic
    辞書の一覧の表示

  3. ローカル辞書のメンテナンスツール
    dicar
    バイナリ辞書のアーカイブ
    dpbindic
    バイナリ形式の辞書ファイルの単語情報を出力
    mkbindic
    テキスト形式の辞書からバイナリ形式辞書と頻度ファイルを作成
    mkdic
    辞書の作成/アップロードを行う
    mvdic
    ユーザ辞書名前変更ツール
    rmdic
    ユーザ辞書の削除ツール
    splitword
    辞書ファイルを1行1候補にする

  4. Wnn の辞書との互換ツール

    ctow
    Wnnのテキスト形式の辞書への変換
    wtoc
    Wnnのテキスト形式の辞書からの変換

  5. ローマ字仮名変換テーブルの操作
    dpromdic
    バイナリ形式のローマ字かな変換テーブルのテキスト形式への変換
    mkromdic
    ローマ字かな変換テーブルを作成する

6.3 emacs lispのバイトコンパイル

例えば、~/.emacs や ~/.emacs.el に、
	(load "egg-remix")
という行があったとき、emacs は、load-path の directory で、egg-remix.elc 、egg-remix.el というファイルを順番に探し、あれば読み込み、なければエラー を返す。この、egg-remix.elc は、emacs lisp のソースファイル (egg-remix.el) を コンパイル(emacs 用語では、バイトコンパイルと呼ぶ) し て出来たファイルである。バイトコンパイルすると、読み込みが高速になるので、 emacs の起動が速くなる。しかし、ソースファイルである .el を変更しても、 .elc が存在すれば、そちらが読み込まれるので、一度、.elc を作成したら、 .el を変更する度に、バイトコンパイルする必要がでてくる。したがって、頻繁 に変更するファイル (~.emacs.el など)については、バイトコ ンパイルせずに、ほとんど変更しないファイルについては、バイトコンパイルし ておいた方がよい。

バイトコンパイルの方法は、emacs を立ち上げた後、

    ESC-x byte-compile-file
でおこなうか、または、コマンドラインで、
     % emacs -batch -f batch-byte-compile *.el
でおこなう。

6.4 参考URL一覧


next_inactive up previous
: cannaによる日本語入力 : 5 tamago4/emacs のカスタマイズ(上級編)