正規表現でisearch

 取り合えずいいのを見つけたので、其れを貰ってC-sしたときにM-r( *1 )したら正規表現がtoggleするようにした。とても便利。

(defvar *isearch-use-regexp* nil)
(setq *isearch-scanner-hook*
      #'(lambda (p)
          (setq ed::*isearch-regexp* *isearch-use-regexp*)
          p))

(defun toggle-regex-isearch ()
  (interactive)
  (setq *isearch-use-regexp*
        (not *isearch-use-regexp*))
  (message "isearch ~[nomal~;regexp~]"
           (if *isearch-use-regexp* 1 0)))
(define-key ed::*isearch-map* '#\C-t 'toggle-regex-isearch)

Search - xyzzy Note2
http://hie.s64.xrea.com/xyzzy/note2/wiki.cgi?page=Search#p5

このやり方が気に入ったので、他のに使っているトグルするのでも真似しようかと思った。M-rに割り当てるとなんだかおかしくなるisearchに色を付けている拡張とかにやら被るのかもしれない。C-aにしようとしたら、C-aを打つと何やら表示が"now regex in isearch" "now NON regex in isearch"・・え?之ってはじめからtoggleする機能がついていたりしていたのかな。ひょっとして。とか思ってnow regex in isearchでGrepしたけど出てこない。まさかxyzzyの中にあるとか?

■追記
 やっぱりどうもよくわからない。xyzzyの基本機能は何が付いてるか分からない。危険すぎる。C-cも何やら文字が出る。regex in isearchでGrepをしたらisearch-decoの機能のようだった。orz

isearch-decoにもC-aで正規表現でisearchするようになっているようなので、色も付けたい人とかはついでに入れてもいいかもしれない。(入れておいて気づいていなかった自分が言うのもなんだけど)

*1:M-rはREだからRかなと、というかその例のC-t(多分toggleのt?)にはmigemoがtoggleする設定にしているのでrの方が空いていたというのもあるけど左手で押しやすいし。