秀丸メールとのマクロの共用についてNo.06442
#funayuki1 さん 10/09/22 16:54
 
#funayuki1です。

秀丸メールのメール内容の表示画面では、秀丸エディタのマクロが
動作しますが、execmacro文の行で文法エラーとなってしまいます。
(秀丸メール側では正常に動作しているマクロです。)

秀丸メールでの使用は想定していないマクロですが、
ファンクションキーに割り当てており、秀丸メールの画面上で
誤って該当のファンクションキーを押してしまったところ
今回の現象となっています。

マクロの中で秀丸メールからの呼び出しか判定する方法は無いでしょうか?
また、秀丸メールからの呼び出された場合にexecmacro文が動作できな
い事はやむをえないとしても、文法エラーになるのは回避できないでしょうか。

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

[ ]
RE:06442 秀丸メールとのマクロの共用につNo.06443
秀まるお2 さん 10/09/22 17:37
 
 秀丸メール上か秀丸エディタ上かを判定するには、とりあえず

   loaddll "tkinfo.dll";
   if( ! result ) {
       message "秀丸エディタ上";
   } else {
       message "秀丸メール上";
   }

 みたいなマクロで出来ます。

 それと、秀丸メール上で実行して文法エラーになるのは、たぶんですが、秀丸
エディタ V8.00以上用の命令を使ってるせいだと思います。秀丸メールは秀丸エ
ディタV7.11相当なので、V8.00以上用の命令を使うとエラーになってしまいます。

 例えば「a.mac」というマクロがあったとして、それを秀丸メール上で実行し
たらエラーになって困るということで、単純に、秀丸メール上では何も動作しな
いようにする例としては…

 「a.mac」とは別に「a-filter.mac」とか作るとして、そこで、

   loaddll "tkinfo.dll";
   if( ! result ) {
       execmacro "a.mac";
   } else {
       endmacro;
   }

 とかして、それをa.macの代わりにマクロ登録して使うとかって作戦はありか
なぁと思います。

 ということでどうでしょ?

[ ]
RE:06443 秀丸メールとのマクロの共用につNo.06447
秀まるお2 さん 10/09/23 18:21
 
 秀丸メールの中で使ってる秀丸エディタ相当部分ですが、そろそろいい加減に
秀丸エディタのV8相当と同期しようかなぁと思います。

 秀丸メールV5.50正式版&HTMLメール編集アドインの正式版を出したら、そろ
そろやろうと思います。

[ ]
RE:06447 秀丸メールとのマクロの共用につNo.06453
#funayuki1 さん 10/09/24 11:13
 
#funayuki1です。

ご回答ありがとうございました。

>  それと、秀丸メール上で実行して文法エラーになるのは、たぶんですが、秀丸
> エディタ V8.00以上用の命令を使ってるせいだと思います。秀丸メールは秀丸エ
> ディタV7.11相当なので、V8.00以上用の命令を使うとエラーになってしまいます。


確かに、execmacro文でV8.00からさポートされた機能を使用しています。


>  「a.mac」とは別に「a-filter.mac」とか作るとして、そこで、
>
>    loaddll "tkinfo.dll";
>    if( ! result ) {
>        execmacro "a.mac";
>    } else {
>        endmacro;
>    }
>
>  とかして、それをa.macの代わりにマクロ登録して使うとかって作戦はありか
> なぁと思います。

教えていただいた方法で対処できました。

ありがとうございました。

[ ]