Hidemarnet ExplorerがらみのclosehidemarNo.06043
マボカル さん 09/02/05 19:57
 
こんにちは。久しぶりにご質問伺いに来ました。
秀丸エディタとHidemarnet Explorerを使ったマクロ文ですが、
以下のように秀丸エディタでURLリストのサイトを作成して、
以下のマクロ文によってリスト上のサイトをHidemarnet Explorerで
開き、その内容をコピーして、URLリストに戻った後、貼り付ける
といった作業を考えています。

【URLリスト.txt】

<a href="http://www.aaa.co.jp">
<a href="http://www.bbb.co.jp">
<a href="http://www.ccc.co.jp">
<a href="http://www.ddd.co.jp">
<a href="http://www.eee.co.jp">
<a href="http://www.fff.co.jp">

【マクロ.mac】

#LIST = hidemaruhandle(0);
searchdown2 "<a href=\"";
right;
openbyhidemaru;
#URL = hidemaruhandle(0);
setactivehidemaru #URL;
selectall;
copy;
setactivehidemaru #LIST;
golineend2;
right;
paste;
closehidemaruforced #URL;

マクロの最後の文にclosehidemaruforcedによって
強制的にHidemarnet Explorerで開いた窓を閉じようと
していますが、マクロが思ったような動きをせず、
Hidemarnet Explorerで開いた画面が開かれたままです。

目的のファイルを開いて貼り付けるところまでは
求める動きをしていますが、最後のclosehidemaruforcedの
部分だけが解決できずに困っています。

思ったような動作にするにはどこをどう直せば
良いのでしょうか。ご教授頂ければ幸いです。
よろしくお願いいたします。

[ ]
RE:06043 HidemarnetExplorerがらみのclosNo.06044
h-tom さん 09/02/05 21:26
 

h-tom です。

>こんにちは。久しぶりにご質問伺いに来ました。
>秀丸エディタとHidemarnet Explorerを使ったマクロ文ですが、
<省 略>
>目的のファイルを開いて貼り付けるところまでは
>求める動きをしていますが、最後のclosehidemaruforcedの
>部分だけが解決できずに困っています。

マクロの最後に、
  message str(#URL) + "\n" + str(#LIST);
を追加すると、同じ値が表示されるので、これが原因でしょう。

ということで、
  setactivehidemaru #URL;
も、意味がないですね。

openbyhidemaruで開いた秀丸が、アクティブになるので、なんとか動いて
いるような、感じかな?
URLを正確に取得して、openfileを使った方がいいのでは?

[ ]
RE:06044 HidemarnetExplorerがらみのclosNo.06045
マボカル さん 09/02/06 09:17
 
h-tomさん

お付き合い有難うございます。

>openbyhidemaruで開いた秀丸が、アクティブになるので、なんとか動いて
>いるような、感じかな?
>URLを正確に取得して、openfileを使った方がいいのでは?

ご指摘のようにopenfile文を使ってマクロ文を書き換えて
みました。それにあわせて「URLリスト.txt」も単にURLのみの
表記にしました。

【URLリスト.txt】

http://www.aaa.co.jp
http://www.bbb.co.jp
http://www.ccc.co.jp
http://www.ddd.co.jp
http://www.eee.co.jp
http://www.fff.co.jp

【マクロ.mac】

#LIST = hidemaruhandle(0);
searchdown2 "^http.*?$" , regular;
copy;
beginclipboardread;
$PAGE = getclipboard;
openfile $PAGE;
#URL = hidemaruhandle(0);
selectall;
copy;
setactivehidemaru #LIST;
golineend2;
right;
paste;
closehidemaruforced #URL;

これでとりあえず目的の結果が出ました。
大変助かりました。どうもありがとうございました。

[ ]