|
おそらくGoogle検索のマクロを改変したものだと思いますが、これはGoogle専用
にShift-JISで渡しているもので、他のサイトでは動作しないと思います。
「日本語」という文字を「%E6%97%A5%E6%9C%AC%E8%AA%9E」とするのは、いわゆ
るURLエンコードで、UTF-8でエンコードするということになると思います。
ちょうどマクロ作者様用の会議室でも似た話がありましたが、UTF-8でURLエン
コードするとしたら、Hidemarnet Explorer with FTPS をインストールしている
と簡単です。
秀丸エディタ自身でもできないことはないですが、少々面倒になります。
hmnetast.hmnetexというオブジェクトを作成して、URLEncodeというメソッドを
呼びます。
Google検索のマクロを元に改変した例では、以下のような感じになります。
if( selecting ) {
$s = gettext(seltopx,seltopy,selendx,selendy);
} else {
selectword;
$s = gettext(seltopx,seltopy,selendx,selendy);
$s = input( "辞書検索", $s );
}
if( $s == "" ) {
endmacro;
}
#obj = createobject("hmnetast.hmnetex");
if(#obj == 0){
message "Hidemarnet Explorer がありません";
endmacro;
}
$s = getpropstr(#obj, "URLEncode", $s,3); //3=UTF-8
releaseobject #obj;
#i = 0;
while( #i < strlen( $s ) ) {
if(midstr($s,#i,1)=="%"){
$s = midstr($s,0,#i)+"%"+midstr($s,#i,strlen( $s )-#i);
#i = #i + 1;
}
#i = #i + 1;
}
$param = "http://eow.alc.co.jp/search?q=" + $s;
//または $param = "http://eowpf.alc.co.jp/search?q=" + $s;
run getenv("Comspec") + " /c start " + $param + " >nul";
endmacro;
|
|