|
秀まるおさん、秀丸担当さん、皆さん今日は、ひろです。
スレッドとしては、http://www.maruo.co.jp/hidesoft/8/ ですが、秀丸の
使用に関することなので、こちらで伺います。
http://www.maruo.co.jp/hidesoft/8/x13026_.html#13026 にて
> ちなみにこのバージョンから、大文字/小文字を区別しない正規表現の検索が
> 出来ます。
>
> マクロから実行する時は、
>
> searchdown "..", regular, nocasesense;
>
> のように、"nocasesense"という新しいキーワードを付けないとダメです。
> regularやfuzzyを付けない場合は、従来通り、"casesense"を付けるか付けない
> かという仕様です。
と有ります。このキーワード nocasesense は
searchdown "[A-Z]+", regular;
等としたときに上位互換性を持たせるためかと思います。
これは至極妥当なのですが、
setsearch $s, #n;
とした時はどうなるのでしょう? 今までなら正規表現は必ず大文字/小文字を
区別するので、正規表現を用いる場合は、
setsearch $s, 16;
としていたでしょう。しかし大文字/小文字を区別した正規表現が可能になる
と、こちらはキーワードではなくフラグなので、同じことをするには、
setsearch $s, 18;
とする必要がでてきます。(鶴亀のエディタ・ウィンドウで確認) よって、
setsearch に関しては互換性が保たれないことになります。
このことから
(1) (置換を含め) setsearch だけ以外の検索系は互換性が保たれる
→中途半端
(2) 新規利用者は、casesense, nocasesense の 2 つのキーワードがある意味
/使い分けが分かりづらい
という結果になります。更に検索系の文は既にキーワード word で、「単語の
検索で"abc"を検索する時、"abc123"にはヒットさせない」の設定が追加され
た時点で、完全な上位互換性が失われています。
こうなると今回の「大文字/小文字の区別をしない正規表現」だけ
nocasesense を追加して、互換性を考慮してもあまり意味がないと思うのです
が如何でしょうか? 個人的には互換性を失いますが、秀丸 Ver.3.19 の
searchdown "[A-Z]+", regular;
を Ver.3.20 で同じことをするには、
searchdown "[A-Z]+", regular, casesense;
とする必要があるとした方がスッキリすると思います。
|
|