村田です
>> In the message "Re: egg-its menu patch (Re:
minibufferless frame under XEmacs)"
>> Id: <28vhc7eqh3.fsf(a)kchisa.ga.sony.co.jp>
>> Katsumi Yamaoka wrote:
しかしこれ、patch 2.5 では完璧に弾かれますね。村田さんが作られたパッチ
は一見正常なのですが、こういったかなり広い領域を全とっかえするようなも
のでは起こることなんでしょうか。今度自分でパッチを作るときは、ちゃんと
当たることを確認しようと肝に命じました。(^^;;)
んー,あのパッチでは確かに1行でも異なっていると全部弾かれますからね。私
の環境でももはやどれがオリジナルやら解らない状態です(^^;;ので,たぶん元の
ファイルには既に手を入れていたんでしょう,すいません。
@@ -571,1 +585,1 @@
-(if (eq (car menu:*select-positions*) nil)
+(if (string= (car menu:*select-positions*) "nil")
何じゃこれは。理解不能 (^^;;)。山本光晴さんの版でも + のようになってい
ますが、この部分にはぜったい来ないはずなので削除してしまいませんか?
いや,special-symbol-input などでサブメニューを選択すると
(menu:select-submenu)ここを通ることがあります。私が修正した部分は実際にエ
ラーが起こったところしか直してないはずですので。もっとも,
(car menu:*select-positions*) が nil になる条件がいまだに解りませんが。
ただ,残すとすれば
(eq (car menu:*select-positions*) nil)
は
(not (car menu:*select-positions*))
の方がいいですね。
@@ -583,3 +601,1 @@
-(defun menu:minibuffer-setup ()
- (if (eq minibuffer-history-variable 'menu:*select-positions*)
- (menu:goto-selection)))
+(defalias 'menu:minibuffer-setup 'menu:goto-selection)
ううむ、村田さん (-) に脱帽です。ぼくはこのような条件判断は不要だと思っ
たのですが、やはり必要なんでしょうか?
いらない気がします(^^; 元の意図が不明なのでとりあえず代替策をしたまでで
すから。
上記以外にぼくの版では次のような変更を行なっています。
・character かどうかを `numberp' で検査している部分が多数あったので、
`characterp' を使うようにしました。
・obsolete な関数 `char-octet' の代わりに `split-char' を使うようにし
ました。
なるほど。XEmacs はあまり使っていないのでまだまだ知らない事が多くありま
す。
;; FSF Emacs だってそうだとも言える…(^^;
個人的には egg-read-event は怪しいと思っているのですが(shift+[key] とか,
alt+[key]とかが拾えない?),代わりのコードを書けるほどの知識がないので放っ
てあります。
--
村田 全寛 / MURATA Masahiro