

                       <<Kanakan-Cursor Ver.1.3>>

                                 by 横田 裕思 (yokota@netlab.is.tsukuba.ac.jp)


1. Kanakan-Cursor とは

 Kanakan-Cursor とは、Masatake YAMATO(scs30154@bkc.ritsumei.ac.jp)氏,
Kazutaka SHIGENO(shigeno@vacation.kyushu-id.ac.jp)氏, Kazutaka SHIGENO
(shigeno@vacation.kyushu-id.ac.jp)氏 によって作られた、仮名漢字変換の
現在の入力モードをカーソルの色によって判断できるようにするプログラムです。
これにより、下部のモードラインを見る事無く素早く文字が打てるようになります。

 しかし、 Wnn と Canna 等、複数の仮名漢字変換サーバーを使用していたりすると、
それらの間で競合を起こし、うまくカーソル色が変更されなかったりします。
その上、Kanakan-Cursor 自体が古いプログラムらしく、各地の ftp サイトから
expire されてしまっているようです。

 そこで、これらの問題を解決するべく、独自に kanakan-cursor-v02a に対して手を
加えてみました。 Color-Mate と同時に使用する事を考えて手を加えましたが、
もちろん単独でも使用できます。
 また、sj3, leim, Windows IME 用のファイルが含まれていなかったので新しく
書き起こしてみました。

 skk-cursor, egg-cursor, canna-cursor, sj3-cursor  は漢字入力をする時の
ツールですので、当然ですがそれらに対応した Mule が必要となります。
 leim-cursor は Emacs/XEmacs 20.x 用のツールですので、 Emacs/XEmacs 20.x
が必要です。また、 leim-cursor は漢字入力だけでなく leim に対応した入力ソフト
全体に有効です。
 win32-cursor は "Mule for Win32" 専用のツールです。


 このパッケージには、以下のファイルが含まれています。

 README.kanakan-cursor     : このファイル
 Makefile.in               : コンパイル/インストール用 Makefile の原型
 Makefile.std              : コンパイル/インストール用 Makefile の例
 skk-cursor.el             : skk version 8 用のファイル
 skk-cursor2.el            : skk version 9.6 以降用のファイル
 egg-cursor.el             : Wnn 用のファイル
 canna-cursor.el           : Canna 用のファイル
 sj3-cursor.el             : sj3 用のファイル
 leim-cursor.el            : leim 用のファイル(Emacs/XEmacs 20.x 専用)
 win32-cursor.el           : Windows IME 用のファイル(Mule for Win32 専用)
 kanakan-cursor-compile.el : コンパイル用設定ファイル
 org-doc/*                 : 元のファイルに付属していたドキュメント
 ../Q_and_A.color-mate     : Q&A 集


2. インストール法

 通常は Color-Mate と一緒にインストールされますが、単独でインストールしたい
場合は

<1> "cd ..; configure.sh" を実行して、出来た Makefile を編集する。
<2> "make all", "make install" としてファイルを所定の場所にコピーする。
<3> ../color-mate.emacs.add にある内容を参考に ~/.emacs を編集する。

とします。さらに skk veision 8 を使用している場合は ../color-mate.emacs.add
の記述を参考に ~/.emacs からコメントアウトされた部分を有効にして下さい。


 手でインストールする場合は以下のようにします。

<1> Makefile.std を Makefile の名前でコピーし、適当に編集する。
<2> 出来た Makefile を使って *.el をバイトコンパイルする。
<3> 出来たファイルを適当なところにコピーする。
<4-1> UNIX の場合は ~/.emacs に以下の行を追加。

(if (and (>= (string-to-int emacs-version) 19)
	 window-system )
    (progn

      ;; color-mate:theme からカーソル色の設定を抜きだすようにする。
      (require 'assoc)

      ;; skk (mule/xemacs)
      ;; skk version 9.6 のカーソル着色機能を使用する。
      ;; 事前に skk の設定をしておく事。
      ;; skk-cursor2 は色の再定義をしているだけなので skk を使用していなくても
      ;; 他に悪影響を与える事はない。
      (if (and (fboundp 'skk-mode)
	      (not (string-match "XEmacs" emacs-version)))
	  (require 'skk-cursor2))

      ;; これは skk version 8 用
;      (if (fboundp 'skk-mode)
;	  (progn
;	    ;; 色を Color-Mate の設定と合わせる
;	    (setq skk-cursor-color-for-default     color-mate-cursor-color)
;	    (global-unset-key "\C-x\C-j")
;	    (global-unset-key "\C-xj")
;	    (global-set-key   "\C-x\C-j" 'skk-mode-with-color-cursor)
;	    (global-set-key   "\C-xj" 'skk-auto-fill-mode-with-color-cursor)
;	    (autoload 'skk-mode-with-color-cursor "skk-cursor" nil t)
;	    (autoload 'skk-auto-fill-mode-with-color-cursor "skk-cursor" nil t)
;	    ))

      ;; leim
      ;; leim とは Emacs/XEmacs20 用の多言語入力ライブラリです。
      ;; leim-cursor は日本語だけでなく、他の言語の入力時にも有効となります。
      ;; ただし、 leim は Emacs19 の skk と機能が衝突するため、 Emacs20 に
      ;; おいて leim と skk は同時使用が出来ません。
      (if (>= (string-to-int emacs-version) 20)
	  (progn
	    (require 'leim-cursor)))

      ;; Wnn
      (if (and (boundp 'WNN)
	       (not (color-mate:is-xemacs)))
	  (progn
	    (require 'egg-cursor)))

      ;; canna
      ;; Canna 版 mule では canna.el が既ににロードされているので
      ;; (featurep 'canna) では (canna) を実行したか分からない。
      ;; そこでこれで正しいかどうかは分からないが、 canna-empty-info
      ;; という変数が一度 Canna を起動すると t になる事を利用して
      ;; ユーザーが Canna を使っているか(既に起動しているか)を判定する。
      ;;
      (if (and (boundp 'CANNA) canna-empty-info
	       (not (color-mate:is-xemacs)))
	  (progn
	    (require 'canna-cursor)))

      ;; SJ3
      (if (and (boundp 'SJ3)
	       (not (color-mate:is-xemacs)))
	  (progn
	    (require 'sj3-cursor)))
      ))

<4-2> "Mule for Win32" の場合は 以下の行を追加

(if (and (>= (string-to-int emacs-version) 19)
         (eq window-system 'win32))
    (require 'win32-cursor))

<5> mule/emacs を再起動する


3. カスタマイズ

 Kanakan-Cursor は以下の値をカスタマイズできます。

<skk-cursor>
skk-cursor-color-for-default        : skk を起動していない時のカーソル色
skk-cursor-color-for-zenkaku-eiji   : 全角英字モード "全英" のカーソル色
skk-cursor-color-for-katakana       : カタカナモード "カナ" のカーソル色
skk-cursor-color-for-kana           : 平仮名・漢字モード "かな" のカーソル色
skk-cursor-color-for-eiji           : 半角英字モード "SKK:" のカーソル色

<skk-cursor2>
 skk-cursor2 のカスタマイズは skk-cursor2.el を直接編集して下さい。
 理由は、 skk-cursor2.el を見れば分かります。
skk-use-color-cursor                : カーソルの着色をするなら t にする。
skk-default-cursor-color            : skk を起動していない時のカーソル色
skk-ascii-cursor-color              : 半角英字モード "SKK:" のカーソル色
skk-kana-cursor-color               : 平仮名・漢字モード "かな" のカーソル色
skk-katakana-cursor-color           : カタカナモード "カナ" のカーソル色
skk-zenkaku-cursor-color            : 全角英字モード "全英" のカーソル色

<egg-cursor>
egg-mode-on-cursor-color            : 漢字入力時のカーソル色
egg-mode-off-cursor-color           : ASCII入力時のカーソル色

<canna-cursor>
canna-mode-on-cursor-color          : 漢字入力時のカーソル色
canna-mode-off-cursor-color         : ASCII入力時のカーソル色

<sj3-cursor>
sj3-mode-on-cursor-color            : 漢字入力時のカーソル色
sj3-mode-off-cursor-color           : ASCII入力時のカーソル色

<leim-cursor>
 leim は Emacs 20.x 用なので、使用する時は Emacs 20.x を用意して下さい。
leim-mode-on-cursor-color           : 漢字入力時のカーソル色
leim-mode-off-cursor-color          : ASCII入力時のカーソル色

<win32-cursor>
 win32-cursor は "Mule for Win32" 専用です。
win32-ime-mode-on-cursor-color      : 漢字入力時のカーソル色
win32-ime-mode-off-cursor-color     : ASCII入力時のカーソル色

 色名については /usr/X11/lib/X11/rgb.txt にある色名や "#RRGGBB" (R, G, B は
それぞれ16進数字) 等で指定できます。


4. ヒストリ

Ver.1.0
 o kanakan-cursor-v02a.tar.gz を元に Color-Mate 用にカスタマイズした。
Ver.1.1
 o leim-cursor 追加
 o skk-cursor2 追加
 o canna-cursor が xemacs をサポート
Ver.1.2
 o win32-cursor 追加
Ver.1.2.1
 o 英語の説明書をつける。
Ver.1.2.2
 o ドキュメントの修正
 o Makefile の修正
Ver.1.2.3
 o ドキュメントの修正
Ver.1.3
 o xemacs 上でカーソル色の取得に失敗するバグを修正。


5. 著作権等

 元のファイルが GNU GENERAL PUBLIC LICENSE に従っているので Kanakan-Cursor
もそれに従います。

 現在、このパッケージは私のホームページにてメンテナンスをしています。
将来的には移動する予定ですが、時々覗いていただくと最新情報が手に入るかも
しれません。
   URL http://www.students.chiba-u.ac.jp/~y5t0964/index.html
       http://www.students.chiba-u.ac.jp/~y5t0964/izumi/color_mate.html

 使用した感想、語要望、バグ報告などをメールで送っていただければ幸いです。


 最後に、このパッケージを使用して下さった方、更にバク等の報告をしていただいた
全ての人に感謝します。


   1998/10/07 横田 裕思 (yokota@netlab.is.tsukuba.ac.jp)
