|
heikkiさん,
>秀丸から「ファイルを開く」→目的の「ファイル選択」→「テキスト変換」(
>xdoctxtの実行)→「秀丸に取り込み」 取り込みは、「新規作成」か「開いて
>るカーソル位置に読込」の選択ができるならありがたいです。
とりあえず次のようなマクロを作ってみました。
最初の3行は自分の環境に合わせて設定してください。
//------- BinaryToText.mac---------------------------------------------//
$doc2txt = "c:\\Tools\\Xdoc2txt\\xdoc2txt.exe";// xdoc2txt.exeのパス
$dengaku = hidemarudir + "\\DengakuDLL.dll";// 田楽DLLのパス
$folder = "c:\\Documents"; //対象フォルダ初期値
loaddll( $dengaku );
if ( !result ) {
message "田楽DLL をロードできませんでした。";
endmacro;
}
#n = dllfunc("NEWDIALOG","ファイルの選択", 50);
#n = dllfunc("NEWCONTROL","edit","file", "");
#n = dllfunc("SETCTRLWIDTH","", 44);
#n = dllfunc("NEWCONTROL","reffilebutton", "fileref","");
#n = dllfunc("SETCTRLNOTIFY", "", "10");
#n = dllfunc("SETCTRLITEM", "", "ファイルを選んで下さい");
#n = dllfunc("SETCTRLITEM", "", $folder);
#n = dllfunc("NEWCONTROL", "okcancel", "", "");
#n = dllfunc("SHOWDIALOG", hidemaruhandle(0),1);
while (1) {
$$note = "";
while (strlen($$note) == 0) $$note = dllfuncstr("WAITCTRLNOTIFY", 10);
if ($$note == "0" || $$note == "1" ) {
break;
} else if ($$note == "10") {
$file = dllfuncstr("GETCTRLSTRING", "fileref");
#n = dllfunc("SETCTRLSTRING","file", $file);
#n = dllfunc("CHANGECTRLITEM", "fileref", $file, "2");
}
}
#n = dllfunc("ENDDIALOG");
if ($$note == "0" ) {
freedll;
endmacro;
}
freedll;
mousemenu "&1 カーソル位置に挿入", "&2 新しいファイルを作成";
#r = result;
if( #r == 0 ) endmacro;
else if( #r == 2 ) newfile;
beginsel;
run "\"" + $doc2txt + "\" \"" + $file + "\" > con";
if( #r == 2 ) {
while(1){
$ext = rightstr($file, #i);
if(leftstr($ext, 1) == ".") break;
#i = #i + 1;
}
changename leftstr( $file, strlen($file) - strlen($ext)) + ".txt";
}
endmacro;
//-----------------------------------------------------------------------//
では, (^^)/~
山紫水明(ユーザー)
SANSHISUIMEI
|
|