|
findf.exeを使う方法は、その方がTrinitronさんにとって都合がいいと思った
からそう書いただけで、秀丸でそれ相当のことが出来ないという訳ではありませ
ん。
以下はサンプルマクロです。
$dir = input( "検索したいフォルダは?", directory );
if( $dir == "" ) endmacro;
grep ".", "*.html", $dir, regular, filelist, fullpath;
#grep = hidemaruhandle(0);
gofiletop;
while(1) {
tagjump;
if( result ) {
call ExtractTitle;
#file = hidemaruhandle(0);
setactivehidemaru #grep;
closehidemaru #file;
}
golineend2;
down;
if( !result ) break;
golinetop2;
}
endmacro;
ExtractTitle:
##origin = hidemaruhandle(0);
$$filename = filename;
##output = findhidemaru("title.txt");
if( ##output == -1 ) {
newfile;
changename "title.txt";
##output = hidemaruhandle(0);
setactivehidemaru ##origin;
}
gofiletop;
while(1) {
searchdown2 "<title>";
if( !result ) break;
escape;
right 7;
while( code == ' ' || code == '\n' ) right;
##x = x; ##y = y;
searchdown "</title>";
if( !result ) {
gofileend;
}
$$s = gettext( ##x, ##y, x, y );
setactivehidemaru ##output;
gofileend;
insert $$filename + " ";
insertfix $$s;
while(1) {
replacedown "[\\n ]", "", regular;
if( !result ) break;
}
gofileend;
insert "\n";
setactivehidemaru ##origin;
}
return;
|
|