イベントマクロの実装についてNo.41185
misono さん 11/08/08 10:27
 
秀丸メールバージョン5.62を使用しています。
秀丸エディタのバージョン8からでしょうか、
マクロに各種胃弁当用マクロの登録ができるようになりましたが
これを秀丸メール側で使えるようにしたいと思っています。
現状ではおそらくまだ実装されていないと思いますが、
近い将来、実装していただくことは可能でしょうか?

よろしくお願いします。

[ ]
RE:41185 イベントマクロの実装についてNo.41187
秀まるお2 さん 11/08/08 11:04
 
 現在の秀丸メールは秀丸エディタV8.04相当になってるので、内部的にはイベ
ントマクロは簡単に実装出来ると思います。

 ただ、「ファイルを開いた直後」とかは秀丸メールには無いので、対応すると
したら、

 編集後タイマー
 カーソル移動後タイマー
 アクティブ切り替え後

 の3つだけになるのかなぁと思います。

 その3つだけでしたら対応出来ると思いますが、それでいいでしょうか。

[ ]
RE:41187 イベントマクロの実装についてNo.41188
misono さん 11/08/08 11:57
 
必要としているイベントは「カーソル後タイマー」ですので、
私自身は下記三つで大変助かります!

> 編集後タイマー
> カーソル移動後タイマー
> アクティブ切り替え後

楽しみに待っています☆

[ ]
RE:41188 イベントマクロの実装についてNo.41194
秀まるお2 さん 11/08/09 15:11
 
 イベントマクロ対応してまたβ版をアップロードしました。

32bit版:
http://hide.maruo.co.jp/software/bin/hmmail572b2_signed.exe

64bit版:
http://hide.maruo.co.jp/software/bin/hmmail572b2_x64_signed.exe

 「マクロ・マクロ登録...」の「エディタ側 - 自動起動」のページで指定出来
ます。

 秀丸エディタ用のマクロをそのまま登録して使うと、秀丸メールの場合はちょ
っと問題が出る可能性があります。というのは何かというと、秀丸メールでは、
例えば受信系のメールを表示してるのも秀丸エディタ相当の物なんですが、そこ
は普段は閲覧モードで上書き禁止属性がONになった状態になってます。閲覧モー
ドとか、上書き禁止ONであってもうまく動くようにマクロを修正する必要が出て
きます。

 それと、秀丸メール本体上ではマクロは起動して欲しくないとしても、起動し
てしまいます。なので、その場合はマクロの先頭で、例えば

    loaddll "tkinfo.dll";
    if( dllfunc("IsHidemaruMailMain")
     || dllfunc("IsHidemaruMailGrep") ) {
        endmacro;
    }

 とするか、あるいはそもそも上書き禁止がどうかを見る用に、

    if( readonly ) endmacro;

 とか入れるのがいいと思います。

[ ]
RE:41194 イベントマクロの実装についてNo.41223
misono さん 11/08/15 12:58
 
まだテスト中ですが、おおむね満足しています。ありがとうございます。

現状ですが、
カーソル編集後タイマーに適当なマクロを登録して、
メール本体ウインドウのフォルダ・ツリー上で左右カーソルを押すと
登録したマクロが動作してしまいます。

カーソル編集後タイマーはメール本文/エディタ側編集ウインドウで有効な
イベントとしたいと思っています。
(それともマクロ側でそのように制御してあげないといけないですかね?)

それとメール・エディタ側のマクロ登録には、
まだイベントマクロの設定関係が入ってないみたいですが。

秀丸エディタでは「イベント」でメール側は「自動起動」ですが統一していただ
いた方がよいかなとは思います。「自動起動」はメール本体のイベントの名称と
かぶっていたりもしますし。

秀丸エディタではEnableのチェックがあって有効/無効がチェックボックスで簡
単にできましたが、これはメールではなしでしょうか?

以上、よろしくお願いします。

[ ]
RE:41223 イベントマクロの実装についてNo.41233
秀まるお2 さん 11/08/17 09:26
 
> カーソル編集後タイマーに適当なマクロを登録して、
> メール本体ウインドウのフォルダ・ツリー上で左右カーソルを押すと
> 登録したマクロが動作してしまいます。

 内部的にカーソル移動の処理をしてて、それのせいでマクロが起動してしまう
ようです。この場合はマクロ起動しないように修正させていただきます。

> それとメール・エディタ側のマクロ登録には、
> まだイベントマクロの設定関係が入ってないみたいですが。

 ちょっと意味が分からないのですけども、今回追加した機能は「マクロ・
マクロ登録...」の「エディタ側・自動起動」の設定だけで、エディタ・
ウィンドウも秀丸メール本体ウィンドウのメール内容枠も共通の設定になってま
す。エディタ・ウィンドウと秀丸メール本体ウィンドウ中のメール内容枠で別々
に自動起動マクロが登録出来るようにはしませんでした。

 stythさんの質問についてのお返事にもある通り、マクロの中で

   if( dllfunc("IsHidemaruMailMain") ) {

 みたいな判定をすることで、エディタ・ウィンドウ上のみ有効なマクロにする
ことは出来ると思います。

> 秀丸エディタでは「イベント」でメール側は「自動起動」ですが統一していただ
> いた方がよいかなとは思います。「自動起動」はメール本体のイベントの名称と
> かぶっていたりもしますし。

 これもちょっと意味が分からないのですけども、秀丸エディタでも今回の
マクロ関係は「自動起動」という名称になっているはずで、「イベント」という
用語は使ってないはずだと思います。

 マクロのキーワードに「event」というのはありますけとも、基本的には日本
語カタカナの「イベント」という言葉がダイアログボックス上やヘルプには出て
きてないと思います。

> 秀丸エディタではEnableのチェックがあって有効/無効がチェックボックスで簡
> 単にできましたが、これはメールではなしでしょうか?

 これも秀丸メール側では元々無かったので無しにしてしまいました。

 技術的には追加可能ではありますが、「マクロ・マクロ登録・自動起動」の所
では以前からチェックマーク無しで特にユーザー様から不満も無かったので、今
さらチェックを追加するのもどうかなぁという気がします。バージョンアップ時
の設定の互換性をキープする仕組みも考えないといけないし、それも難しいかも
しれないです。

[ ]
RE:41233 イベントマクロの実装についてNo.41241
misono さん 11/08/17 17:18
 
>> それとメール・エディタ側のマクロ登録には、
>> まだイベントマクロの設定関係が入ってないみたいですが。
>
> ちょっと意味が分からないのですけども、今回追加した機能は「マクロ・
>マクロ登録...」の「エディタ側・自動起動」の設定だけで、エディタ・
>ウィンドウも秀丸メール本体ウィンドウのメール内容枠も共通の設定になってま
>す。エディタ・ウィンドウと秀丸メール本体ウィンドウ中のメール内容枠で別々
>に自動起動マクロが登録出来るようにはしませんでした。

たぶん私が勘違いしてそうです。書いた内容は秀丸メールの例えば返信ウインド
ウで [マクロ] → [マクロ登録] には自動起動の項目が見つからないということ
です。もちろん秀丸メール本体ウインドウで [マクロ] → [マクロ登録] にはあ
ります。例えば返信ウインドウのようなエディタ側でないのはそういうものなの
かというお尋ねでした。

>> 秀丸エディタでは「イベント」でメール側は「自動起動」ですが統一していただ
>> いた方がよいかなとは思います。「自動起動」はメール本体のイベントの名称と
>> かぶっていたりもしますし。
>
> これもちょっと意味が分からないのですけども、秀丸エディタでも今回の
>マクロ関係は「自動起動」という名称になっているはずで、「イベント」という
>用語は使ってないはずだと思います。

すいません。maruoを使ってました。

> 技術的には追加可能ではありますが、「マクロ・マクロ登録・自動起動」の所
>では以前からチェックマーク無しで特にユーザー様から不満も無かったので、今
>さらチェックを追加するのもどうかなぁという気がします。バージョンアップ時
>の設定の互換性をキープする仕組みも考えないといけないし、それも難しいかも
>しれないです。

了解しました。

[ ]
RE:41241 イベントマクロの実装についてNo.41243
秀まるお2 さん 11/08/17 17:38
 
> たぶん私が勘違いしてそうです。書いた内容は秀丸メールの例えば返信ウインド
> ウで [マクロ] → [マクロ登録] には自動起動の項目が見つからないということ
> です。

 状況が理解出来ました。

 実は僕の所では、秀丸メール本体側での「マクロ・マクロ登録...」の
「エディタ側」での「秀丸メール側で指定する」がONになってます。そのために、
エディタ・ウィンドウ上で「マクロ・マクロ登録...」を実行すると、秀丸
メール本体側で設定するようにメッセージが出ます。

 なので特に問題ないと思っていましたが、設定が「秀丸エディタの
マクロメニューをそのまま出す」になっていると、ちょっとわかりにくいことに
なってました。

 この辺なんとか分かりやすいように修正させていただきます。

[ ]