[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:1864] meadow set-match-data
- X-ml-count: 1864
- Subject: [MD:1864] meadow set-match-data
- From: ABE Yasushi (阿部 靖司) <yasushi@xxxxxxxxx>
- Date: Wed, 01 Nov 2000 15:57:34 +0900
- User-agent: Wanderlust/2.3.92 (Roam) EMIKO/1.14.0 (Zoomastigophora) Chao/1.14.0 (Momoyama) APEL/10.2 Emacs/20.7 (i686-pc-linux-gnu) MULE/4.1 (AOI)
阿部です。
At Wed, 1 Nov 2000 11:01:26 +0900 (JST),
Kenichi Handa wrote:
> > ちなみにset-match-dataって直接使わないほうがいいんですか?
>
> 一応 documentation には以下のように書いてありますからねぇ。
ああ、やっぱりそうなんですよね。
なぜこんなことしたかというと、ruby-mode.elでfont-lockのマッチに使って
る関数があるんですが、こんな感じになっていたのです。
(defun ruby-font-lock-docs (limit)
(if (re-search-forward "^=begin\\(\\s \\|$\\)" limit t)
(let (beg)
(beginning-of-line)
(setq beg (point))
(forward-line 1)
(if (re-search-forward "^=end\\(\\s \\|$\\)" limit t)
(progn
(set-match-data (list beg (point)))
t)))))
これをmatcherとしてfont-lock-keywordsに設定してありました。
で、font-lock-keywordsのドキュメントを見るとmatch-dataを返す関数に
するようだったので、似たような関数で適当^^;にやってると、落ちてしまったわ
けです。
ちなみにこういう場合、どうやってmatch-dataを作るのがいいんでしょうか?
looking-at 等でマッチさせてmatch-dataを設定するというのがまっとうのよ
うな気もしますが、それでいいのかどうか自信がないもので^^;
----
あべやすし