たぶん村田さんでないとわからないことが 2 点あります。
お忙しいところ誠に恐縮ですが、お答えをお願いできますでしょうか?
>>>> In <yosuhfneabma.fsf(a)jpl.org>
>>>> Katsumi Yamaoka <yamaoka(a)jpl.org> wrote:
福居さん> boiled-egg.el では、このように henkan-quit を呼び出した後に、
福居さん> fence-cancel-input を呼ぶような使い方をしています。
福居さん> henkan-quit が egg:*region-start* と egg:*region-end* を
福居さん> nil にするようになったので、それを期待していない
福居さん> fence-cancel-input がエラーになってしまいます。
1. henkan-quit() が呼ばれたときに egg:*in-fence-mode* が nil になって
いるのはどういう場合なんでしょうか?
福居さんがお使いの boiled-egg ではまさにそういう状態でエラーが起き
ているようなのですが、egg.el と egg-wnn.el を普通に使っている場合に
は、そうなる要因が見当たりません。
2. henkan-quit() で egg:*in-fence-mode* が nil だった場合に
egg:*region-start* と egg:*region-end* を nil にする必要はあるので
しょうか?
2. の答えが「必要無い」ならば、egg-wnn.el と egg-sj3.el の該当個所を削
除しましょう。逆に「必要だ」というお答えならば、福居さんに以下のような
対処をしていただきたいと存じます。
(defun rK-cancel-trans()
"cancel KANJI transformation (KANJI -> roman(hankaku) or
hiragana/ktakana)."
(interactive)
(let ((start (copy-marker egg:*region-start*))
(end (copy-marker egg:*region-end*)))
(henkan-quit)
(setq egg:*region-start* start
egg:*region-end* end))
(if (not (eq be-trans-mode 'K)) nil
(fence-cancel-input)
(insert be-trans-src)
(setq be-trans-mode 'x)
(setq disable-undo nil)))
それから、現在 Emacs 20.3.11 でたまご3などを使うためのパッチが以下の
場所にありますが、
ftp.ki.nu:/pub/20.3.11+c+w+s-not-documented/20.3.11+c+w+s-19990701.gz
これを boiled-egg と併用するならば、やはりどちらかで対策する必要があり
ます。このまま行けば Emacs 20.4 でも、です。
--
Katsumi Yamaoka <yamaoka(a)jpl.org>