|
救いの「きいろいまふらあ」さん
有り難うございます。
>検証等は手元の環境(WinXP+秀丸3.17)で行った結果です。
私は、Windows98 SE XP +秀丸3.17 でもやってみました。
>「検索語が見つかりませんでした。」のダイアログは表示されるのですか?
>
>表示されないのなら、resultが0でないってことになりますね。
>その場合、最後の4行を
>
> grep $search ,"." ,"" ,subdir ,regular ,fuzzy ,icon;
> #myresult = result;
> if(#myresult == -1 ) endmacro;
> if(! #myresult) { message "検索語が見つかりませんでした。";
> goto Label; }
>
>としたらうまくいきますか?
"検索語が見つかりませんでした。" が出ません。
resultを変数#myresult に代入しても、出ません。
変数を##myにしても駄目でした。
if(result == -1 ){message "中断されました"; endmacro;}
## ああ、そうでした == -1 は、中断したときですね。(^o^;)☆\バキッ!
これも、出ませんでした。testgrep.mac でもやって見ました。
3機種ともだめ出ませんでした。秀丸は、Ver3.17 です。
//------testgrep.mac
if(selecting) $ds = gettext(seltopx, y, selendx, y);
if(!imestate) imeswitch;
$search = input("検索語 ・・・・ app検索。正規表現・曖昧検索OK。", $ds);
if(result == 0 ) quit; //キャンセル
if($search == ""){ message "検索語がありません。";}
localgrep $search ,regular ,fuzzy ,icon;
##my = result;
if(##my == -1 ) { message "中断されました。"; endmacro;} // endmacro;
if(! ##my) { message "検索語が見つかりませんでした。"; }
//------------------
>ちなみに手元で
>
> grep "hoge", "." ,"" ,subdir ,regular ,fuzzy ,icon;
> if(result == -1 ){message "中断されました"; endmacro;}
> if (!result)message "検索語が見つかりませんでした。";
>
>というマクロを走らせると、中断したときは「中断されました」というメッセー
>ジが、一つもヒットしなかったときは「検索語が見つかりませんでした。」とい
>うメッセージが表示されました。なので、この書き方自体に問題があるわけでは
>なさそうですね。
テストまでして頂いて、m(_ _)m 感謝!
ますます分からなくなって(+_+)(T_T)
メッセージが出ないのは、なじぇ?
>「検索語が見つかりませんでした。」のダイアログが表示されるのに、次のルー
>チンに飛んで(飛んで?)しまうのなら、マクロの構造がそうなっているのでし
>ょう。
メッセージが出ないから、
どうも、
if(result == -1 ){message "中断されました"; endmacro;}
から、無視されているようです。
localgrep が駄目なんでしょうか。どうすれば調べられますか?
>>2.また、
>> if(result == 0 ) quit;
>あてずっぽですけど、inputがキャンセルされたかをチェックしたいのでは?
>手元ではそのように動いていますけど、なむnomotoさんのところではどうなって
>しまうのですか?
当てずっぽうって、きいろいまふらあさんのは、ズバ!と当たってます。
これは活きておりました(^^;)
>>3.また、自分で書いておいて分からないのですが(^^;)
>
>すごい法力をお持ちで。
すごく褒めていただいてボク嬉しい (^o^;)☆\バキッ!
>このresultはコードから推測するとgrepの結果コードですよね?
>だとすれば、マクロヘルプの「grep,grepdialog,localgrep文」の頁にばっちり
>そのまんまの説明がありますね。
ううむ、これもズバ!っと大当たり。---->我ながら情けない(T_T)
|
|