正規表現リテラル

質問箱/262 - XyzzyWiki 正規表現中のクォートの取り扱い

先に言うとたぶん無理。

# $str =~ /"(.*?)\./s;

この行はコメントになって、後の行が全部文字列色になっちゃうってことはない。それは「"」が出現したのがコメントの中なので、その「"」は文字列の開始とは扱われないから。

じゃあ正規表現リテラルの中も同様にすりゃいいって話なんだけど、xyzzy の syntax-table では(たぶん)正規表現リテラルを認識できない。単純に「この文字からこの文字までは(文字列|コメント)」みたいな方法で syntax を認識させてる限りは

// perl じゃなくてごめんなさい
var n = 8 / 6 * 5 + 2 / 3;

の `/ 6 * 5 + 2 /` と

var re = /[a-zA-Z][a-zA-Z0-9_$]/;

の `/[a-zA-Z][a-zA-Z0-9_$]/` は区別がつかないので、syntax として正規表現リテラルを認識させることができない。

今プレビューしたらちゃんと正規表現だけに色がついてた。つまり xyzzy ははてダに負けた。それはいいんだけど、どうやってんだろ。サーバー側で構文解析してる?