福居です。
In <28zp1g63vu.fsf(a)kchisa.ga.sony.co.jp>
Katsumi Yamaoka <yamaoka(a)ga.sony.co.jp> wrote:
朝令暮改たまごです。
早速、 この patch を使ってみました。
使ってみて気になったことが 2点ほどあったのでお知らせします。
試した xemacs のバージョンは 21.2b16で、xemacs-mule-sumo.tar.gz に含
まれる egg-its の package に egg-its-1.17-pkg-199907011017.tar.gz を
上書きする形でインストールしました。
また、xemacs の dump はやり直していません。
気になったことの一つ目は、変換しているときに undo が効いてしまうこと
です。
egg-wnn で変換し確定させる前に C-/ を押すと undo が効き、調子に乗って
フェンスがなくなるまで undo してしまうと、eggの変換モードから抜けよう
してもエラーにが発生して抜けられず、 xemacs で何もできなくなってしまい
ます。
;; mouse を使って、select されている window を変えると何とかなったかも
;; 知れません。
二つ目は質問ですが、henkan-quit の動作が以前と変ってます。
これはなぜでしょうか。
私は boiled-egg.el を xemacs で動くようにちょっとだけ書き換えて使って
います。
この boiled-egg の内部で henkan-quit を呼んでいて、henkan-quit の動作
が変ってしまったため、 boiled-egg が正しく動作しなくなってしまいました;-(
(defun rK-cancel-trans()
"cancel KANJI transformation (KANJI -> roman(hankaku) or
hiragana/ktakana)."
(interactive)
(henkan-quit)
(if (not (eq be-trans-mode 'K)) nil
(fence-cancel-input)
(insert be-trans-src)
(setq be-trans-mode 'x)
(setq disable-undo nil)))
boiled-egg.el では、このように henkan-quit を呼び出した後に、
fence-cancel-input を呼ぶような使い方をしています。
henkan-quit が egg:*region-start* と egg:*region-end* を nil に
するようになったので、それを期待していない fence-cancel-input が
エラーになってしまいます。
boiled-egg 側で fence-cancel-input を呼び出さないようにして、
何とか egg-wnn.el の変更なしに解決しようとしてみましたが、
今度は Mule2.3 based emacs-19.34 で動かしたとき、Mule2.3 側の
egg-wnn.el と boiled-egg.el が合わなくなりうまくいきません。
;; たぶん、egg-its を patch を当てる前に戻しても同様に動かなく
;; なってしまうと思います。
--
福居宏和 (Hirokazu FUKUI)
E-mail: fukui(a)atesoft.advantest.co.jp, hfukui(a)sannet.ne.jp