[ 新規に投稿する ]

Subjectの日付をinselect2の置換で書き換えたいNo.13579
styth さん 25/06/18 09:03 [ コメントを投稿する ]
  例えば、次の様なヘッダが情報アイテムにあったとします。

Subject:  '25/6/18(水)の件1

この行をコピーして、本文に貼り付けます。
Subject:  '25/6/18(水)の件2
とします。

//マクロA
replaceall  @"/([1-9])/", @"/0\1/", regular, inselect;  //月が1桁なら前に0を付ける
message str(result);
endmacro;

//マクロB
replaceall  @"/([1-9])/", @"/0\1/", regular, inselect2;
message str(result);
endmacro;

(ア)本文で実行
件2を行選択して、上記マクロAとBを実行します。24/06/18に置換されます。(resultは共に1です)

(イ)ヘッダ部で実行
件1を行選択して、上記マクロAを実行します。置換されます。(resultは1です)
(ウ)ヘッダ部で実行
件1を行選択して、上記マクロBを実行します。置換されません。(resultは0です)

(ウ)の場合でも置換できるようにして頂けないでしょうか?
よろしくお願いいたします。

一応、ア〜ウを手動でもやってみました。
結果は、同じでした。
(ウ)正規表現にして、選択した範囲に「文字単位」を指定した場合、"/([1-9])/ - 見つかりませんでした"とのメッセージが出ました。
[ ]
RE:13579 Subjectの日付をinselect2の置換で書き換えたいNo.13581
秀まるお2 さん 25/06/18 10:25 [ コメントを投稿する ]
  お手数かけてすみません。再現テストして現象確認できて、さらにソースコードのトレースなどして原因が特定できました。

「全置換」の場合、一度カーソルをファイルの先頭に移動してそこから下方向にスキャンしていくんですが、秀丸メールの場合だとその位置がメール本文に先頭になっていて(ヘッダの中は全置換しない)、それのせいでヘッダの中が置換されてませんでした。「選択した範囲」が「行単位」の場合はうまく動いていたようですが、文字単位の方がダメでした。

次のVersion 7.40β4にて修正させていただきます。

[ ]
RE:13581 TSVモードになりませんNo.13612
styth さん 25/06/27 10:07 [ コメントを投稿する ]
  >次のVersion 7.40β4にて修正させていただきます。
 確認が遅れてすみません。7.40β5ですが確認致しました。ありがとうございます。

 ところで、
config "xTabMode:0x0001";
 を実行してTSVモードになりません。

 いつからか分からないので、改版履歴を参照して、V7.15β3を再インストール後、上記を実行するとTSVモードになります。
 ご確認の程よろしくお願いいたします。

>2022/09/06 V7.15β3 
>機能追加/仕様変更
>エディタ・ウィンドウ上でマクロで「config "xTabMode:0x0001";」を実行してTSVモードにもなるようにしてみた。(動作確認はちょっとしかしてない)
[ ]
RE:13612 TSVモードになりませんNo.13613
秀まるお2 さん 25/06/27 18:00 [ コメントを投稿する ]
  毎度バグでお手数かけてすみません。テストしてみたら、config文でTSVモードを切り替えても中途半端な動作になってしまってるようで、さらにソースコードをトレースしたら、秀丸メールでもTSVモードを使えるようにする用の修正が、最近のバージョンで無くなってしまってて元に戻ってるようでした。

たぶん秀丸エディタのソースコードを秀丸メールに反映する時に手違いがあったんだと思います。手元にある旧バージョンのソースコード(V7.37以降)でダメなので、もっとだいぶ前からそうなってしまってたと思います。

具体的に狂ったタイミングを特定して、他にも同様のミスが無いか調べて修正させていただきます。
[ ]
RE:13613 TSVモードになりませんNo.13614
秀まるお2 さん 25/06/27 18:32 [ コメントを投稿する ]
  秀丸メールのVersion 7.20の時に秀丸エディタの最新ソースコード(Version 9.21)と同期してて、そのタイミングで秀丸メール側の修正を秀丸エディタ側に反映するのに漏れがあったようでした。
[ ]

[ 新規に投稿する ]