[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: タブのシャフリング



(日本語のスレッドにつなげます。)

>>>>> In [emacs-w3m : No.09294] Hideyuki SHIRAI (白井秀行)さん wrote:

> ごめんなさい、もうすぐ宴会なので英語書いている時間が無いので。。。

;; もしかしてお花見? ;-)

> タブの上でクルクルしたり、コントロール押しながらクルクルしたとこ
> ろ、二つほど error にぶつかりました。

> (1) mouse-pixel-position() が変な値を返すことがある。

>  (#<frame *scratch* [e22] : <2007-3-28 () 17:55:34 MAIL(1)> [1]  0x465c00> nil)
>  で (x . y) が nil になっていました。mouse-pixel-position() のリ
>  ターン値をチェックしておくと大丈夫そうです。

>  ただし、これは Solaris8 + Windows X-Server(ASTEC-X) の環境のみ
>  で、Meadow3 では起きませんでした。

これって *w3m* バッファーじゃない場所を指していますねえ。edebug
を使うとこれが起きるので、いつものようにデバッグできないんですが。
うーむ、(x . y) が nil だということは、これ

(eq (car (mouse-pixel-position)) (selected-frame))

は、たぶん t を返すだろうからだめですね。こんなのを試してみてい
ただけますか?

--- w3m-ems.el~	2007-03-28 08:22:23 +0000
+++ w3m-ems.el	2007-03-28 10:23:32 +0000
@@ -801,7 +801,7 @@
 	  posn tab start end disp next)
       (when (and (consp e) (symbolp (car e))
 		 (string-match "\\`mouse-" (symbol-name (car e))))
-	(setq posn (mouse-pixel-position))
+	(while (not (cadr (setq posn (mouse-pixel-position)))))
 	;; Update the header line.
 	(setq w3m-tab-timer nil)
 	(sit-for 0)

> (2) 速くクルクルすると、event が変わる。

>   mouse-4, mouse5, wheel-up, wheel-down じゃなくて、
>   double-mouse-4 や triple-wheel-up を返すようです。

>   これは Solaris8 + ASTEC-X も Meadow3 も同様でした。

うーむ、再現できない。
w3m-tab-map と w3m-tab-separator-map で、そいつらを undefined に
しておけばいいでしょうか?
-- 
山岡