[mew-dist 22219] Re: URL tag search
Hideyuki SHIRAI ( 白井秀行 )
shirai at example.com
2002年 11月 8日 (金) 13:27:41 JST
From: SUGITA Toshinori <sugita at example.com> さん曰く
Subject: [mew-dist 22218] URL tag search
Message-ID: <20021108.124604.424252205.sugita at example.com>
Date: Fri, 08 Nov 2002 12:46:04 +0900 (JST)
杉田> elispはよくわかってないので、適当にそこらじゅうからコードを拾い集めて
杉田> 書いたので、変な部分があれば、それも直して頂けるとありがたいです。(^^;
message buffer 上でしか有効ではないですが、ぼくが使っているのは
こんなのです。お好みで改造してみてください。ただし、
mew-use-highlight-url => t じゃないとほとんど真っ当には動かない
と思います。
## (if (looking-at mew-regex-url) ってなんでやっているのか思い出
## すのに時間がかかってしまった。そっか、header 部分での対応だ。
(define-key mew-message-mode-map "\C-i" 'mew-message-next-url)
(define-key mew-message-mode-map "\M-\C-i" 'mew-message-prev-url)
(defun mew-message-next-url ()
(interactive)
(let ((pos (point)))
(if (eq (get-text-property (point) 'face) 'mew-face-body-url)
(goto-char (next-property-change (point)))
(if (looking-at mew-regex-url)
(forward-word 1)))
(if (re-search-forward mew-regex-url nil t)
(goto-char (match-beginning 0))
(goto-char pos))))
(defun mew-message-prev-url ()
(interactive)
(let ((pos (point)))
(if (eq (get-text-property (point) 'face) 'mew-face-body-url)
(goto-char (previous-property-change (point)))
(forward-word -1))
(if (re-search-backward mew-regex-url nil t)
(goto-char (match-beginning 0))
(goto-char pos))))
杉田> 以下のようなelisp functionを.mewに書いて、tabキーを押すとtext/plainのときも
杉田> w3mと似たような動作になるようにしようと思ったのですが、本末転倒で、
杉田> w3mでtext/htmlのパートをデコードしたときに通常の<a>タグのところに
杉田> 飛んでくれなくなりました。(^^;
(setq mew-use-w3m-minor-mode t)
(add-hook 'mew-message-hook 'mew-w3m-minor-mode-setter)
をしてあるなら、message buffer の minor-mode-map で、C-i, M-C-i
が w3m-next-anchor, w3m-previous-anchor に割り当てられているので、
そういうことは無いと思うのですが。。。
--
白井秀行 (mailto:shirai at example.com)
Mew-dist メーリングリストの案内