メッセージ

2004年07月31日の記事

2004/07/31(土)「『秀丸』を100倍生かす強力マクロの使い方」

 「『秀丸』を100倍生かす強力マクロの使い方」の表紙楽天ブックスから届いた。マクロを使う意味や文法解説、便利なマクロがいくつか解説してある。初心者向けの解説書なので、あまり目新しい部分はないが、リファレンス的に使えるので、手元に一冊あっても良いと思う。254ページで1,380円。この内容でこの価格なら安い。

 秀丸マクロの特徴で「マクロの規模は中型辞典並み」との指摘はもっとも。命令や関数が少ないからだ。秀丸マクロはこれが少ないから、覚えやすいというメリットがある半面、したいことをするのに回りくどい表現をしなくてはいけない場合もある。個人的にはもう少し命令が多いといいと思う。

 秀丸ホームページのマクロライブラリで登録マクロの参照数が表示できるのは知らなかった。拙作の秀丸でFTPするマクロ(ftp.mac)は479人、ハイパー日記システム支援マクロ(hnf.mac)は157人が参照している(これアクセス数で、ダウンロード数ではないんですよね)。しかし、ライブラリに登録してあるのはどちらも、古いバージョンなのでご注意くださいませ。この2つの新しいバージョンはハイパー日記システムでpnamazuを使おうに置いてあります。ライブラリは登録したものを修正する作業が若干面倒だったし、大したマクロでもないのにバージョンアップの際、サイトー企画の人を煩わせるのは悪いので、登録するのはやめました。

edithelper.rb

 tDiaryの更新画面でタグ挿入を簡単にするプラグイン。挿入できるのはem,strong,del,p,pre,br,ul,ol,liとimg、リンク。僕がよく使うタグはpreとblockquoteなので、ちょっと改造してblockquoteも挿入できるようにしたいところ。  リンクと画像挿入に関しては、普段は秀丸マクロを使っている。リンク挿入マクロは以前、斉藤秀夫さん作のUrlRef.mac(IEで開いているページのURLを挿入するマクロ)に少し手を加えたものでこんな感じ。
//link.mac
ddeinitiate "iexplore", "WWW_GetWindowInfo";
   if(!result){ddeinitiate "firefox", "WWW_GetWindowInfo";
     if(!result){ddeinitiate "sleipnir", "WWW_GetWindowInfo";
        if(!result){ddeinitiate "mozilla", "WWW_GetWindowInfo";
           if(!result){message "ブラウザが起動していません。";
           endmacro;}
        }
    }
 }
    $url = dderequest( "0xFFFFFFFF" );
    $url2 = $url;
    ddeterminate;
        if( leftstr($url, 1) == "\"" ) {
        $url = midstr($url, 1, 1024);
        #x = strstr($url, "\"");
        if( #x >= 0 ) {
            $url = leftstr($url, #x);
        }
    }
    $url2 = midstr($url2, #x, 1024);
    $url2 = midstr($url2, 4, 1024);
    #y = strstr($url2, ",");
    #y = #y-1;
    $url2 = leftstr($url2, #y);
    insert "<a href=\"";
    insert $url;
    insert "\">";
    insert $url2;
    insert "</a>";
    endmacro;
 ただし、うまくページタイトルが取れるのはSleipnirだけ。IEではタイトルが入らず、MozillaとFirefoxでは日本語が文字化けする。