署名の日時を何らかのトリガーを与えた時No.49715
5HPONGO さん 16/04/20 22:55
 
 まいど,5HPONGOと申します。

 秀丸メール Version 6.52 32bit edition を使っています。

 署名には日時を埋め込む機能があって,便利に活用させていただいていますが,
埋め込まれた日時は編集ウィンドウを開いた時刻になっています。メールを書く
のに時間がかかった場合,署名の日時と送信日時にかなりの差が出てしまいます。

 そこで,署名をリフレッシュする(現在の署名と全く同じものを,日時だけ変
えて自動的に現在の署名に置き換える)機能があれば便利だと思うのですが,現
在は
 [設定]→[署名の切り替え]→[カーソル位置に挿入]
で新しい署名を生成させて,古い署名を手作業で消しております。

 マクロで実現できるのならマクロを作成したいのですが,いかんせん秀丸マク
ロに関しては全くの初心者なので苦しんでおります。ヒントなど与えていただけ
れば幸いに存じます。

 ほな,ご機嫌よろしゅう。

----
5HPONGO
[平成28(西暦2016)(皇紀2676)(佛歴2559)年 4月20日(水曜日) 午後10時42分]

[ ]
RE:49715 署名の日時を何らかのトリガーをNo.49718
秀まるお2 さん 16/04/21 10:50
 
 一番簡単な解決策として、署名の中には日時は入れないでおく、というのは
ダメでしょうか。

 たぶん、普通の人は、署名の中の名前とかは見ますけど、日時は無いと思いま
す。

 日時は、メールのDate:ヘッダで分かるというか、Date:ヘッダの日時がメール
クライアントの特定位置にいつも出てくるので、普通の人はそっちを見ると思い
ます。

>  マクロで実現できるのならマクロを作成したいのですが

 マクロでやるとしたら、

    loaddll "tkinfo.dll";
    $sign = dllfuncstr("CurrentSignName");
    message $sign;
    if( $sign != "" && strstr( $sign, "\\" ) < 0 ) {
        #n = dllfunc("SwitchSign", "");
        #n = dllfunc("SwitchSign", $sign);
    }

 ってマクロを作って、それを「マクロ・マクロ登録...」の「自動起動」
ページの「あとで送信/今すぐ送信時」に登録しておく作戦があります。

[ ]
RE:49718 署名の日時を何らかのトリガーをNo.49719
5HPONGO さん 16/04/21 22:47
 
秀まるお2 さん

 まいど,お世話になっております。

>  一番簡単な解決策として、署名の中には日時は入れないでおく、というのは
> ダメでしょうか。

 せっかく秒まで出せるようになっているのに,勿体ないですやん(^^;。

>  たぶん、普通の人は、署名の中の名前とかは見ますけど、日時は無いと思いま
> す。
>
>  日時は、メールのDate:ヘッダで分かるというか、Date:ヘッダの日時がメール
> クライアントの特定位置にいつも出てくるので、普通の人はそっちを見ると思い
> ます。

 まあ仰るとおりですが……。

 で,お示しいただいたマクロをそっくりそのまま使わせていただいて,

RefreshSign.mac
---- ここから ------------------------------------------------------
loaddll "tkinfo.dll";
$sign = dllfuncstr("CurrentSignName");
if ($sign != "" && strstr($sign, "\\") < 0) {
    #n = dllfunc("SwitchSign", "");
    #n = dllfunc("SwitchSign", $sign);
}
---- ここまで ------------------------------------------------------

とし,自動起動とせず呼びたいときにだけ呼べるようにしました。

 ところが,このままでは上書きした署名がどんどんずれていってしまい具合が
悪いので,
        [設定]→[全般的な設定]→[上級者向け]→[メール作成]
の {テンプレートと署名の間に改行を入れない} にチェックを入れ,なおかつテ
ンプレートと署名の最後に要らない改行コードが入らないようにしたところ,う
まくいくようになりました。

テンプレート
---- ここから ------------------------------------------------------
$(AddHeader,X-Memo,"")$-
$(UnDoubleQuote,$(SetNameOnly,$(RootHeader,From))) はん・さん・っさ
ん・っつぁん

 まいど,お世話になっております。

$(QuotedRootBody)

 $c

 ほな,ご機嫌よろしゅう。

$i
---- ここまで ------------------------------------------------------
※ただし $i の後ろに改行コード無し。

署名
---- ここから ------------------------------------------------------
----
$(UnDoubleQuote,$(SetNameOnly,$(CurrentHeader,From)))
[$(CurrentDate,"平成YY(西暦YYYY)")$-
$(FormatDate,$(ShiftDate,$(CurrentDate),"+241060"),"(皇紀YYYY)")$-
$(FormatDate,$(ShiftDate,$(CurrentDate),"+198327"),"(佛歴YYYY)")年$-
$(CurrentDate," M月 D日(W曜日) hh時mm分ss秒")]$z
---- ここまで ------------------------------------------------------
※ただし $z の後ろに改行コード有り。皇紀と佛歴のエレガントな計算法もご意
見募集中です。

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

 ほな,ご機嫌よろしゅう。

----
5HPONGO
[平成28(西暦2016)(皇紀2676)(佛歴2559)年 4月21日(木曜日) 21時51分17秒]

[ ]