クイックポップアップ検索例(秀丸マクロ)

秀丸上でキャレットのある位置の単語のクイックポップアップ検索を行います。

PDICが起動されていない場合は自動的に起動されます。
熟語も検索されます。

※秀丸Ver.5.07/7.08で動作確認

    ddeinitiate "PDICU", "Dictionary";
    if ( !result ){
        openreg "CURRENTUSER","SOFTWARE\\ReliefOffice\\PDIC2\\Common";
       $pdic = getregstr( "Path" );
        if ( strlen($pdic) == 0 ){
            message "PDICU.exeが見つかりません";
            endmacro;
        }
        closereg;

        // PDICの実行
        run $pdic + "\\PDICU.exe";
        //★ 辞書グループを指定したい場合は代わりに次のようにする
        // run $pdic + "\\PDICU.exe -d GroupName";

        if ( !result ){
            message "PDICU.exeが起動できません";
            endmacro;
        }
        ddeinitiate "PDICU", "Dictionary";
        if ( !result ){
            message "DDEリンク失敗です!";
            endmacro;
        }
    }

//    ddepoke "SetAnsi", "";    // 文字列の文字コードをANSI(ShiftJIS)にする PDIC Ver.5.1.x以降は不要

    ddepoke "Open", "";
    if ( !result ){
        ddeterminate;
        message "Open失敗です";
        endmacro;
    }
    #sx = x;
    #sy = y;
    left;
    if ( ((code>='A') && (code<='Z'))
        || ((code>='a') && (code<='z'))
        || (code=='\'') )
    {
        right;
        wordleft;
    } else {
        right;
    }
    $text = gettext( x,y,linelen,y+1 );

    moveto #sx, #sy;
    ddepoke "PopupSearch", $text;
    ddepoke "Close", "";

    ddeterminate;