[ 新規に投稿する ]

エディタをv8.00互換にしてほしい、その他No.03102
緒方聡 さん 10/06/15 18:35 [ コメントを投稿する ]
  お世話になっています。

最近秀丸 v8.00 から追加された新機能を使用して
マクロを組みました。

それらマクロはキーにアサインして使用しているため、
無意識に使用している状態です。

ここまではよかったのですが、秀丸メールでそれら
マクロが動いてしまうと(キーを押すと)

----
式がおかしいです。
または、このバージョンではこの式は使えません。

キーワード/関数/式: argcount
----

というダイアログが出てしまいます。


v8.00 で追加された機能を使用しているキーは
今のところ Enter と Ctrl-V です。

秀丸エディタとメールエディタでキーアサインを
切り替える設定がないため、今は秀丸で編集して
秀丸エディタに貼り付ける、というおかしな運用を
しています。

もしかしてと思い秀丸メール v5.39b6 を
インストールしてみましたが、まだエディタは
v8.00 になってないようです。


秀丸マクロはもはやインタプリタではないので
(正しい認識ですか?)、対応していない式を
使用しないように制御する、という回避の方法は
ないのかな、と思っています。

v8.00 の新しい機能を使用しなければいい、
というのはひとつの解なのですが、新しい
execmacro、argcount、getarg、getresultex は
マクロのモジュール化が図れるため、もう既に
手放せません。


ということで、秀丸メールのエディタが早く
v8.00 互換になってもらうとうれしいな、という話でした。


========

ついでになりますが(こっちが本命?)、秀丸メール v5.38 が
Windows 7 x64 上で HTML メール Viewer v2.03 を
うまく認識しません。

どちらもインストールには成功し、秀丸メールの
全般的な設定 -> メール表示 -> HTML メール Viewer を使う
にチェックを入れると、

----
HTMLメールViewer がインストールされていません。
----

というダイアログが表示されます。
[ ]
RE:03102 エディタをv8.00互換にしてほしい、その他No.03106
秀まるお さん 10/06/16 08:42 [ コメントを投稿する ]
   秀丸V8.00での「argcount」等が、そこの処理を通ってないにも関わらずエ
ラーになるのはなぜかというと…。秀丸エディタではマクロをメモリ上に読み込
む時に、中間コードに変換してまして、その時に、未知の命令や関数は変換でき
ずエラーになってしまいます。

> 秀丸エディタとメールエディタでキーアサインを
> 切り替える設定がないため、今は秀丸で編集して
> 秀丸エディタに貼り付ける、というおかしな運用を
> しています。

 秀丸メールの方で、「マクロ1(エディタ側)」〜「マクロ20(エディタ
側)」というのにキー割り当てすれば、それは秀丸エディタのキー割り当てより
も優先されるので、それでなんとかなるんじゃないかと思います。


> ということで、秀丸メールのエディタが早く
> v8.00 互換になってもらうとうれしいな、という話でした。

 すみませんがまったく作業は始まってないです。

> ついでになりますが(こっちが本命?)、秀丸メール v5.38 が
> Windows 7 x64 上で HTML メール Viewer v2.03 を
> うまく認識しません。

 一応、僕の所のAtomプロセッサマシン+Windows7 Home 64bitでテストした限
りは大丈夫でした。

 秀丸メールのプログラム用フォルダ(C:\Program files\HidemaruMail)に
TkHtmlView.dllというファイルがあれば、それでうまく認識されるはずなんです
けど、どうでしょ?

 もしかして持ち出し用の秀丸メールを起動しててうまくいかないとかでしたら、
持ち出し用の秀丸メールのプログラム用フォルダにTkHtmlView.dllをコピーすれ
ば、うまく認識すると思います。
[ ]
RE:03106 エディタをv8.00互換にしてほしい、その他No.03116
緒方聡 さん 10/06/17 11:56 [ コメントを投稿する ]
  >> ついでになりますが(こっちが本命?)、秀丸メール v5.38 が
>> Windows 7 x64 上で HTML メール Viewer v2.03 を
>> うまく認識しません。
>
> 一応、僕の所のAtomプロセッサマシン+Windows7 Home 64bitでテストした限
>りは大丈夫でした。

私も今確認したら、問題ありませんでした。

もしかすると、以下のような再現手順なのかも知れません。

1. 秀丸メールをインストール
2. HTML メール Viewer を通常権限でインストール
3. 秀丸メールで設定⇒エラー
4. HTML メール Viewer を管理者権限でインストール
5. インストール後にヘルプが表示された(のでインストール成功)
6. 再度秀丸メールで設定⇒エラー
7. 報告
8. OS 再起動
9. 再度秀丸メールで設定⇒成功

という感じです。


キー割り当てはこれから試してみます。
[ ]
RE:03116 エディタをv8.00互換にしてほしい、その他No.03117
緒方聡 さん 10/06/17 12:22 [ コメントを投稿する ]
  >キー割り当てはこれから試してみます。

試してみましたが、結果は同じでした。

1. 以下のマクロを用意する
[SmartEnter.mac]
if (argcount == 0) {
    insertreturn;
}

[NormalEnter.mac]
insertreturn;

2. SmartEnter.mac を秀丸エディタ側で「マクロ 20」に割り当てる
3. 秀丸エディタ側のキー割り当てで Enter にマクロ 20 を割り当てる
4. NormalEnter.mac を秀丸メール側で「マクロ 20」に割り当てる
5. 秀丸メール側のキー割り当てで Enter にマクロ 20 を割り当てる
6. 秀丸メールのエディタで Enter を入力
7. SmartEnter.mac が動いてしまう


環境は秀丸エディタ v8.01b7、秀丸メール v5.38 です。
[ ]
RE:03117 エディタをv8.00互換にしてほしい、その他No.03119
秀まるお さん 10/06/17 13:47 [ コメントを投稿する ]
   秀丸メールでは、Enterキーにキー割り当てしても、それは編集可能(文字入
力可能)な状態では効かないです。

 秀丸メールでもEnterにキー割り当てしたのがちゃんと編集可能状態でも有効
になるように対応させていただきます。
[ ]
RE:03116 エディタをv8.00互換にしてほしい、その他No.03120
秀まるお さん 10/06/17 14:06 [ コメントを投稿する ]
  > 2. HTML メール Viewer を通常権限でインストール

 こちらのWindows7 64bitマシンでテストしてみたんですけど、HTMLメール
Viewerの64bit版のインストール用プログラムを起動すると、「ユーザーアカウ
ント制御」のウィンドウが出てきて、自動的に管理者権限に昇格します。

 通常権限でインストールすることは不可能かと思うですが、どうして出来てし
まったのでしょうか。

 ちょっとそこが分からないです。

 通常権限でインストールすることがもし可能だとしたら、その場合はプログラ
ム用フォルダには書き込みアクセスは拒否されるので、インストールが失敗して
も必然の結果ということは言えると思います。
[ ]
RE:03120 エディタをv8.00互換にしてほしい、その他No.03123
緒方聡 さん 10/06/17 17:02 [ コメントを投稿する ]
  原因っぽいのがもうひとつありました。

WinXP 32bit から環境を移行させるために設定の
保存と復元を行ったのですが、XP 環境では DLL が
インストールされていて、設定でチェックも入っている状態です。
Win7 ではまだ DLL はインストールされてなくて、
その状態で設定画面を開くと「インストールされてない」
というメッセージが表示されます。

この状態で秀丸メールを再起動せず、DLL のインストールと
設定を試みたのかも知れません。
[ ]
RE:03119 エディタをv8.00互換にしてほしい、その他No.03124
緒方聡 さん 10/06/17 17:04 [ コメントを投稿する ]
  ありがとうございます。

今確認しましたが、同様の処理をしている Ctrl-V は
秀丸メール側のものが優先されることを確認しました。
[ ]
RE:03119 エディタをv8.00互換にしてほしい、その他No.03125
緒方聡 さん 10/06/17 18:34 [ コメントを投稿する ]
  v5.39b8 で秀丸メールのマクロが Enter に割り当てられていることが
確認できました。

ありがとうございました。
[ ]
RE:03125 エディタをv8.00互換にしてほしい、その他No.03179
秀まるお さん 10/07/20 09:40 [ コメントを投稿する ]
   この仕様変更ですが、V5.50β2からさらに仕様変更します。

 実は、Enterキーに対してのキー割り当てがエディタ・ウィンドウ上で効くよ
うになってしまったがために、Enterキーを押しても改行せずに、別のコマンド
が起動されてしまって困るというような話が何件か届くようになってしまいまし
た。

 一応、問い合わせいただいたユーザー様にはEnterキー以外を割り当ててくれ
という風にはお願いしましたが、次のV5.50β2にて、標準ではV5.38と同じ仕様
に戻すことにします。

 「設定・キー割り当て...」の所に
 「文字入力可能なエディタ・ウィンドウ上でも有効とする」

 というオプションを追加します。これをONにすれば、Enterに対してのキー割
り当てがエディタ・ウィンドウ上でも有効になる、という仕様とさせていただき
ます。
[ ]
RE:03179 エディタをv8.00互換にしてほしい、その他No.03342
緒方聡 さん 10/11/25 12:52 [ コメントを投稿する ]
  > 「設定・キー割り当て...」の所に
> 「文字入力可能なエディタ・ウィンドウ上でも有効とする」
>
> というオプションを追加します。これをONにすれば、Enterに対してのキー割
>り当てがエディタ・ウィンドウ上でも有効になる、という仕様とさせていただき
>ます。

お世話になっています。

設定の仕方がよくわからないので教えてください。

秀丸メール本体の
「マクロ」⇒「マクロ登録」
でエディタ側の20に、NormalEnter.macを登録しました。

これを秀丸メール本体の
「設定」⇒「キー割り当て」
でエディタ上で編集中に有効なコマンドを選択して
Enterキーに対する割り当てを行うのだと思いますが、
行いたいことはコマンドに対してマクロを割り当てるのではなく
エディタ上のEnterキーに対して割り当てることなので
何かが違うような気がしています。
[ ]
RE:03342 エディタをv8.00互換にしてほしい、その他No.03343
秀まるお さん 10/11/25 13:26 [ コメントを投稿する ]
   すみません。レベルダウンしてて目的のキー割り当てが出来なくなってしまっ
てました。

 秀丸メールの「設定・キー割り当て...」の所ですが、最近仕様変更して、
「分類」というのを付けました。これで例えば「エディタ・ウィンドウ上で有効
なコマンド」を選択したら、エディタ・ウィンドウ用のマクロ1〜マクロ20が一
覧に出てこないといけないはずが、出てきてませんでした。

 結果、エディタ上のマクロについてキー割り当てが出来なくなってしまってま
した。

 ということで大変すみませんが、今日中に修正して、また次のβ版をアップ
ロードさせていただきます。
[ ]
RE:03342 エディタをv8.00互換にしてほしい、その他No.03344
秀まるお さん 10/11/25 13:34 [ コメントを投稿する ]
   そういえば、ずっと昔の話なんですが、定期受信でマクロを自動起動する設定
の時に、秀丸メールのエディタ上でマクロ実行しようとして、それが待機状態に
なってしまって不便だって話がありました。

 それで、マクロは複数同時に起動することは出来ないということで、定期受信
後に起動するのをDLLの形にしてもらったと思います。

 ですが、今さら言うのも悪いんですが、マクロを複数同時に実行させる方法が
分かってしまいました。具体的には、現状存在してる「hidemac3.dll」ってファ
イルを別の名前でコピーして、それを使ってマクロを実行させることで、アドレ
ス空間的に独立した所でマクロを実行させることが出来ることが分かってしまい
ました。

 その方式は、実は秀丸メールを複数起動するって処理の中で既に使っています。

 例えばですが、秀丸エディタのキー割り当てで割り当てたマクロを実行する時
に限って、別アドレス空間でマクロを実行させる、みたいなオプションを用意す
ることは可能なんじゃないかと思います。

 もしそういうご希望が今もあるようでしたらトライしてみますけど、どうしま
しょ?


 それと、実は僕の手元では既に秀丸エディタのV8.02とソースコード同期した
秀丸メールのバージョンもありまして、今年中にはこのバージョンもβ版として
アップロード出来ると思います。
[ ]
RE:03344 エディタをv8.00互換にしてほしい、その他No.03345
緒方聡 さん 10/11/25 15:48 [ コメントを投稿する ]
  > 例えばですが、秀丸エディタのキー割り当てで割り当てたマクロを実行する時
>に限って、別アドレス空間でマクロを実行させる、みたいなオプションを用意す
>ることは可能なんじゃないかと思います。
>
> もしそういうご希望が今もあるようでしたらトライしてみますけど、どうしま
>しょ?

大変ありがたいです。
これは汎用的な方法になっているとありがたいです。

例えば秀丸エディタを二つ実行していて、ひとつは
message 文でマクロの結果を表示しつつ、
もうひとつはそのダイアログを見ながら
作業を行いたい、というとき、その作業中は
マクロが使えなくなってしまいます。

マクロのアドレス空間が同じである必要があるのは
何らかの情報共有が必要だから、なんだと思いますが
例えばこの関数・この文を使用するときは
名前空間が異なるとこういう制限が生じる、などという
仕様がわかっていれば、なおよいかな、と思います。

たぶん、マクロを起動する前にアドレス空間を
分ける必要があるかどうかを決めなければならないと
思うので、マクロ登録画面にチェックボックスがあって
そこで別アドレス空間で動作させるマクロが汎用的に
決められるとよいのかな、と思いました。

難しい、ということであれば、ご提案いただいた
方法でもずいぶん使い勝手がよくなります。



> それと、実は僕の手元では既に秀丸エディタのV8.02とソースコード同期した
>秀丸メールのバージョンもありまして、今年中にはこのバージョンもβ版として
>アップロード出来ると思います。

こちらも大変ありがたいです。

[ ]
RE:03345 エディタをv8.00互換にしてほしい、その他No.03346
秀まるお さん 10/11/25 19:31 [ コメントを投稿する ]
  > マクロのアドレス空間が同じである必要があるのは
> 何らかの情報共有が必要だから、なんだと思いますが
> 例えばこの関数・この文を使用するときは
> 名前空間が異なるとこういう制限が生じる、などという
> 仕様がわかっていれば、なおよいかな、と思います。

 アドレス空間的に独立させてマクロ実行する場合、そのマクロの中では他のウ
ィンドウと連携する系の命令/関数は一切使えないって制限になると思います。
例えばsetactivehidemaru文は使えなくて、tkinfo.dllの関数呼び出しも一切使
えないという風になります。

 Enterキーをマクロで置き換える程度であれば、そういう制限があっても困ら
ないかなぁと思います。

> たぶん、マクロを起動する前にアドレス空間を
> 分ける必要があるかどうかを決めなければならないと
> 思うので、マクロ登録画面にチェックボックスがあって
> そこで別アドレス空間で動作させるマクロが汎用的に
> 決められるとよいのかな、と思いました。

 秀丸メールのマクロ登録画面ではそういう指定オプションを付けるのは出来る
と思うんですが秀丸エディタ側のマクロについてはちょっと難しいので…。

 やるとしたら、何か適当な方式を考えないといけなさそうではあります。

 ちょっとテストも含めて時間がかかりそうなので、秀丸エディタV8.02と同期
したバージョンをアップロードするタイミングでいっしょにやろうかなぁと思い
ます。
[ ]
RE:03346 エディタをv8.00互換にしてほしい、その他No.03358
秀まるお さん 10/12/07 13:19 [ コメントを投稿する ]
   先ほどV5.52β17をアップロードしたんですが、それにて新しいオプションを
追加しました。「全般的な設定・フォルダ・詳細」の所に

 「アカウントを展開した後のバックグラウンドの処理をゆっくり実行する」

 を追加しました。これをONにしていただくと、V5.52β16でのデバッグレベル
を1にしたのと同じ動作となります。

 また、ここのオプションをOFFにした場合であっても、1秒に1回は必ずメッ
セージループに戻るようにしました。

 とりあえすV5.52の正式版もそろそろ出したい所なので、この辺で一度確定さ
せていただこうかなぁと思います。
[ ]
RE:03358 エディタをv8.00互換にしてほしい、その他No.03360
秀まるお さん 10/12/07 15:35 [ コメントを投稿する ]
   すみません。コメント先間違えました。
[ ]
RE:03360 エディタをv8.00互換にしてほしい、その他No.03361
秀まるお さん 10/12/10 11:43 [ コメントを投稿する ]
   秀丸エディタV8.02とソースコード同期したバージョンの秀丸メールをβ版と
してアップロードしました。

 V5.60β1となってます。
[ ]
RE:03361 エディタをv8.00互換にしてほしい、その他No.03363
Iranoan さん 10/12/11 15:06 [ コメントを投稿する ]
   秀まるおさん今日は、Iranoan です。
> 秀丸エディタV8.02とソースコード同期したバージョンの秀丸メールをβ版と
> してアップロードしました。
 「クリップボードの履歴」が使えないようです。
 "クリップボード履歴を使うには、動作環境の「クリップボード履歴を取る」
と「秀丸エディタの常駐」が必要です。" となります。この状態でも常駐秀丸
からは、呼び出せるので、設定に問題があるわけではありません。
[ ]
RE:03363 エディタをv8.00互換にしてほしい、その他No.03366
秀まるお さん 10/12/12 16:49 [ コメントを投稿する ]
   毎度バグ情報ありがとうございます。

 今またV5.52のバグ修正をしてV5.53をアップロードしないといけなくなったの
で、それが終わったらまた修正させていただきます。
[ ]
RE:03366 エディタをv8.00互換にしてほしい、その他No.03367
Iranoan さん 10/12/12 16:57 [ コメントを投稿する ]
   秀まるおさん今日は、Iranoan です。
>  今またV5.52のバグ修正をしてV5.53をアップロードしないといけなくなったの
> で、それが終わったらまた修正させていただきます。
 よろしくお願いします。
[ ]
RE:03361 エディタをv8.00互換にしてほしい、その他No.03374
tetu-dc5 さん 10/12/14 15:10 [ コメントを投稿する ]
  こんにちは。tuboと申します。

V5.60β1についてですが、setsearchがうまく動かないようなのですが、
仕様でしょうか?

setsearch "test", 0x2800 | (searchoption & 0x0740);
endmacro;

こんなコードで試したのですが、秀丸エディタではこれで検索文字列をセット出来るのですが、メールの方は別のところに検索文字列がある感じ?
で、そのまえに検索した文字列から更新されていないようです。

よろしくお願いします。
[ ]
RE:03374 エディタをv8.00互換にしてほしい、その他No.03375
tetu-dc5 さん 10/12/14 15:13 [ コメントを投稿する ]
  すいません。ちょっと補足です。

メール編集画面での文字列検索の検索文字列をセットしたいと思っております。

以上、よろしくお願いします。
[ ]
RE:03375 エディタをv8.00互換にしてほしい、その他No.03376
秀まるお さん 10/12/14 17:51 [ コメントを投稿する ]
   調べてみたら、以前からのバグでうまくいかないようでした。

 マクロの中身を

    #opt = searchoption;
    setsearch "test", 0x2800 | (#opt & 0x0740);
    endmacro;

 にすると一応動作するようですけども。

 次のV5.60β2にて修正させていただきます。
[ ]
RE:03376 エディタをv8.00互換にしてほしい、その他No.03382
tetu-dc5 さん 10/12/14 19:43 [ コメントを投稿する ]
  こんにちは。

たしかに、searchoptionを分割すれば、うまく動作しました。
さしあたってこれで、全然困らないです。
ありがとうございました。
[ ]

[ 新規に投稿する ]