|
h-tom です。
マクロで、置換ダイアログを出し、「確認あり」、「次の秀丸も続けて置換」を
チェックした場合の動作について。
1)適当にファイルを2つ開き、テストマクロを実行する。
2)置換のダイアログが表示されるので、検索文字と、置換文字を適当に入力し、
「確認有り」「次の秀丸も〜」をチェックして、"OK"を押す。
3)置換対象のファイルが切り替わると、デバック用のメッセージが表示される。
("chk1"〜"chk3")
対象のファイルが切り替わった時点で、マクロが次のステップへ動いてしまいます。
(「次の秀丸も続けて置換」をチェックしているので、全部のファイルを置換
してから、メッセージ表示するのを期待。)
「確認なし」の場合は大丈夫そうです。
前のメールのネタ向けの話題で、"同じタブグループ内"と"最小化を除外"は、
マクロで出来るかなと思ったのですが、「次の秀丸も〜」があるので、
ダイアログを出すとダメか?と思って実際やってみたら、ちょっと変でした。
ダイアログの「次の秀丸も〜」を無効化できると、マクロで積極的に制御する
場合にいいかもしれません。(あまり需要はなさそうですが。)
>検索する対象としてのネタは、全ての秀丸エディタを対象とするの以外に、
>・同じタブグループ内
>・折りたたみを除外
>・最小化を除外
>などが考えられますが、searchoptionを退避して復元するマクロのことを考える
>と、際限なく増やしていくのも考え物です。
//テストマクロ
$BAK_SEARCHBUFFER = searchbuffer;
#BAK_SEARCHOPTION = searchoption;
#BAK_HILIGHTING = foundhilighting;
$BAK_REPLACEBUFFER = replacebuffer;
if(#BAK_HILIGHTING) hilightfound 0;
replace;
if(hidemarucount > 1){
#cnt = hidemarucount - 1;
#i = 0;
while(#i < #cnt){
nexthidemaru;
gofiletop;
finddown2;
#i = #i + 1;
message "chk3";
}
message "chk2";
}
message "chk1";
setsearch $BAK_SEARCHBUFFER, #BAK_SEARCHOPTION;
setreplace $BAK_REPLACEBUFFER;
if(#BAK_HILIGHTING) hilightfound 1;
endmacro;
|
|