|
これは完全に複写したいということなんでしょうか。
うーん、マクロを実行したとしても複写対象となるウィンドウを選ぶなりなんなりの
動作が必要となるので、
-----------------------------------------------
CTRL+A + CTRL+C ⇒ 複写先のタブ選択 ⇒ CTRL+A + CTRL+V
-----------------------------------------------
の作業より手軽で早くなるのか? と言われれば、
「ならないんでないの?」「むしろ操作がどくどくになり戸惑って遅い」
という感想を抱くところですが...
-------------------------------------------------------------
@転写する文字列はたいして大きくないことがわかっている場合。
----------------------- aaaa.mac ----------------------------
// ターゲットとなるファイル名
$target_filename = "b.txt";
$totaltext = gettotaltext();
// 現在のウインドウハンドル
#current_window_handle = hidemaruhandle(0);
// ターゲットとなるファイルのウィンドウがあれば
setactivehidemaru findhidemaru( $target_filename );
if (result) {
// 全部選んで
selectall;
// 貼り付け
insert $totaltext;
}
setactivehidemaru #current_window_handle;
-------------------------------------------------------------
@転写する文字列は非常に長大な文字列であるケースがある場合。
----------------------- bbbb.mac ----------------------------
// ターゲットとなるファイル名
$target_filename = "b.txt";
js {
var totalText = hidemaru.getTotalText() || "";
var tmpFolder = getenv("TEMP") || getenv("TMP");
if (tmpFolder) {
var tmpfileName = tmpFolder + "\\" + "hm_copy_tmp_macro.txt";
if (tmpFolder) {
try {
hidemaru.saveTextFile(tmpfileName, totalText, "utf16");
} catch(e) {
// エラーはここに適当に記述
}
}
}
}
// 現在のウインドウハンドル
#current_window_handle = hidemaruhandle(0);
// ターゲットとなるファイルのウィンドウがあれば
setactivehidemaru findhidemaru( $target_filename );
if (result) {
// プロセスが異なるので改めて定義が必要
js {
var tmpFolder = getenv("TEMP") || getenv("TMP");
if (tmpFolder) {
var tmpfileName = tmpFolder + "\\" + "hm_copy_tmp_macro.txt";
try {
var text = hidemaru.loadTextFile(tmpFolder + "\\" + "hm_copy_tm
p_macro.txt", "utf16");
begingroupundo();
selectall();
insert(text); // jsmodeのinsertは秀丸ネイティブ処理なのでhidem
aruGlobal独特の「マクロeval時」独特の「一時変数サイズ制限」を受けない。
endgroupundo();
hidemaru.saveTextFile(tmpfileName, "", "utf16"); // createob
jectやhidemaru.runProcessとか使ってファイル削除するのおうぎょうなので、とり
あえずBOMだけの内容でファイル上書きして最小サイズに
} catch(e) {
}
}
}
}
setactivehidemaru #current_window_handle;
みたいになるんじゃないでしょうか。
いずれにしても、「貼り付け対象のウィンドウ選択が手動(この場合、b.txtのファイ
ル名&ウィンドウの部分」なのであれば、
作業として普段のCTRL+C/CTRL+A/CTRL+V などに比べて早くならないでしょう。
ただし、貼り付け先のウィンドウ選択(ファイル名なりなんなり法則なり)が自動なり
決め打ちなのであれば、効果はあるかとは思います。
|
|