//Namazu on 秀丸 (namazu.mac ver 1.0) //検索マクロ ( nmzsrc.mac ver 0.1)とNamazu 用タグジャンプ ( nmztag.mac ver 0.2)の著作権は //http://icrouton.as.wakwak.ne.jp/pub/kks/hidemac.html(HIDEMARU MACRO FOR NAMAZU)にあります。 //ほかはhttp://village.infoweb.ne.jp/~fwnk1502/です。 //元のマクロがCopyleft(http://www.sra.co.jp/public/doc/gnu/Bull17j/Bull17j_6.html)なので //このマクロもそれに従い、改造・再配布可能です。 //※必要な設定 //インデックス作成のバッチファイルを作ってパスの通っているところに置いてください。 //秀丸のインストール先でも可。 //詳しい説明はhttp://village.infoweb.ne.jp/~fwnk1502/data/howto2.htmにあります。 //Namazuのインデックスフォルダの指定。 $idx = "c:\\namazu\\var\\namazu\\index"; //--------設定終了--------------------------------------------- mousemenu "検索","ジャンプ","インデックス作成","終了"; if( result == 0 ) endmacro; else if( result == 1 ){ call SearchSub ; } else if( result == 2 ){ call JumpSub ; } else if( result == 3 ){ call IndexSub ; }else{ endmacro; } endmacro; SearchSub: $ynamazu = input("検索キーワードを入力してください",$lnamazu); $namazu = "namazu -R -a \"" + $ynamazu + "\" " + $idx; if(result == 0){ endmacro; }else{ setsearch $ynamazu,0; } run ($namazu); return; JumpSub: START: copyline; beginclipboardread; $a = getclipboard; if (strstr($a,":/") > 0) goto TAGJ; if (strstr($a,":\\") > 0) goto TAGJ; if (strstr($a,"):") > 0) goto TAGJ; $b = leftstr($a,1); if ($b == "/") goto THISTAG; down; if (result) goto START; question "ファイルのトップに移動して再ジャンプしますか?"; if(result == 1){ gofiletop; goto JumpSub; } endmacro; THISTAG: golinetop; delete; right; delete; insert ":"; TAGJ: tagjump; if( !result ) { message "要約内に\"\\\"があったり、ファイル名にアンカー\"\#\"があるとタグジャンプできません。"; endmacro; } return; IndexSub: //ここにNamazuのインデックス作成バッチファイルの名前を書いてください。 run "mknamazu.bat"; if( !result ) { message "バッチファイルの設定に誤りがあります。"; endmacro; } return;