grepdialog についてNo.09090
草餅 さん 06/02/09 21:11
 
こんにちは。

あらかじめ条件を設定して「grepdialog」を実行したいと思いまして、
例えば、とりあえず、
@ iskeydown(0x10)で「(現在の内容)」にする。
A setsearch等で「検索する文字列」を設定する。
を下のようなマクロ

//[SHIFT]の処理
if( iskeydown(0x10) ){
 setgrepfile "(現在の内容)";  // @ (現行ではダイアログに表示はされますが動
きません)
}
else{
 setgrepfile "*"+filetype;
}
$Selection = gettext(seltopx,seltopy,selendx,selendy);
setsearch $Selection, 0x0010+0x0100+0x0200; // A (現行では検索する文字列に
表示されません)
grepdialog;

で出来たら楽かな、と思ってます。

他のアプローチとしては、
・setsearch にフラグ「grepかどうか」を追加し → find2
・grep文に パラメタ「,showdialog」を追加し、ダイアログボックス表示。
も考えてみました。
もし需要があるようでしたら、ネタとして検討してみて下さい。

[ ]
RE:09090 grepdialog についてNo.09093
秀丸担当 さん 06/02/10 09:44
 

>他のアプローチとしては、
>・setsearch にフラグ「grepかどうか」を追加し → find2
>・grep文に パラメタ「,showdialog」を追加し、ダイアログボックス表示。
>も考えてみました。
>もし需要があるようでしたら、ネタとして検討してみて下さい。

以前にもgrepダイアログの内容を明示的に指定してダイアログを出したいという
要望もあり、grepdialog2を設けようかと検討しています。

setgrepfileでは、裏技ですが"\x01"を指定すると(現在の内容)になります。
とりあえず以下のようなマクロではどうでしょうか。

if( iskeydown(0x10) ){
 setgrepfile "\x01";
} else {
 setgrepfile "*"+filetype;
}
GREP;

[ ]
RE:09093 grepdialog についてNo.09095
Iranoan さん 06/02/10 12:32
 
 秀丸担当さん今日は、Iranoan です。
> GREP;
 興味本位ですが、grepdialog との違いは何でしょう?

[ ]
RE:09095 grepdialog についてNo.09096
秀丸担当 さん 06/02/10 13:58
 

>> GREP;
> 興味本位ですが、grepdialog との違いは何でしょう?

GREPはメニューから「grepの実行(G)...」を選んだときと同じですが、
grepdialogは少し違います。
ファイルを開いている場合は、新規作成状態の秀丸エディタを開いて、そこでダ
イアログを出します。

[ ]
RE:09096 grepdialog についてNo.09097
Iranoan さん 06/02/10 17:24
 
 秀丸担当さん今日は、Iranoan です。
> GREPはメニューから「grepの実行(G)...」を選んだときと同じですが、
> grepdialogは少し違います。
> ファイルを開いている場合は、新規作成状態の秀丸エディタを開いて、そこでダ
> イアログを出します。
 ご説明有り難うございました。

 そこで、
GREP;
message str( result );
を試したのですが、message 文が実行されません。これは仕様でしょうか?

[ ]
RE:09093 grepdialog についてNo.09098
草餅 さん 06/02/10 18:17
 

>以前にもgrepダイアログの内容を明示的に指定してダイアログを出したいという
>要望もあり、grepdialog2を設けようかと検討しています。

No.08617
で全く同じ質問をしていました。すいません。m(__)m
もう記憶力はあてにならないようなので、今後は事前に必ず検索します。(^^*汗

以下で「localgrep」と「grep」の分岐が達成できました。
ありがとうございました。

>setgrepfileでは、裏技ですが"\x01"を指定すると(現在の内容)になります。
>とりあえず以下のようなマクロではどうでしょうか。
>
>if( iskeydown(0x10) ){
> setgrepfile "\x01";
>} else {
> setgrepfile "*"+filetype;
>}
>GREP;

[ ]
RE:09097 grepdialog についてNo.09099
秀丸担当 さん 06/02/10 18:42
 

> そこで、
>GREP;
>message str( result );
>を試したのですが、message 文が実行されません。これは仕様でしょうか?

よく考えたらGREP;という文も裏技だったようです。
現時点では仕様というわけではないですが、こういう動作ということになってし
まっています。
次期バージョンでgrepdialog2を追加します。

[ ]
RE:09099 grepdialog についてNo.09100
Iranoan さん 06/02/10 19:18
 
 秀丸担当さん今日は、Iranoan です。
> よく考えたらGREP;という文も裏技だったようです。
 ですよね(^^)。
> 現時点では仕様というわけではないですが、こういう動作ということになってし
> まっています。
 ご説明有り難うございました。

> 次期バージョンでgrepdialog2を追加します。
 現状で指定できないのは、検索するフォルダと文字列ですよね。検索フォル
ダは、カレント・フォルダになるので、実際には文字列だけとなります。それ
なら、searchbuffer が有効になるオプションがあるだけの方がスッキリする
のではないでしょうか?

[ ]
RE:09100 grepdialog についてNo.09101
秀丸担当 さん 06/02/13 10:17
 

>> 次期バージョンでgrepdialog2を追加します。
> 現状で指定できないのは、検索するフォルダと文字列ですよね。検索フォル
>ダは、カレント・フォルダになるので、実際には文字列だけとなります。それ
>なら、searchbuffer が有効になるオプションがあるだけの方がスッキリする
>のではないでしょうか?

それはそれとしてfind2に似た文としてあってもいいかもしれないです。
とりあえずgrepdialog2は、searchdialogに似た文として作ろうと思います。

[ ]
RE:09101 grepdialog についてNo.09102
Iranoan さん 06/02/13 17:55
 
 秀丸担当さん今日は、Iranoan です。
> とりあえずgrepdialog2は、searchdialogに似た文として作ろうと思います。
 そうですか。
 あまり命令が増えるのも...、と思ったのですが。

[ ]