[Q]テンプレートの文法No.32178
ワッキー さん 07/09/05 02:03
 
OE風の返信テンプレートを作って使用しています。

↓ここから

----- Original Message -----
From: $(RootHeader,From)
To: $(RootHeader,To)
Cc: $(RootHeader,Cc)
Date: $(FormatDate,$(RootHeader,Date),"oYYYY年MM月DD日(W)hh時mm分")
Subject: $(RootHeader,Subject)

$(QuotedSelectedRootText2)

↑ここまで

このとき、Cc:が空でもCc:だけの行が残ってしまうのですが、これを
本物のOEのように、Cc:ヘッダが無い場合はこの行自体表示しないよ
うにできるでしょうか?

--
HidemaruMail 4.80 (WinNT,501)
Windows XP Home Edition SP2

[ ]
RE:32178 [Q]テンプレートの文法No.32182
秀まるお2 さん 07/09/05 09:24
 
 空のCc:ヘッダを削除するような命令は無いんですが…

 $(DeleteHeaderIfEmpty,Cc)

 みたいな命令を追加して、それを指定したら空のCc:ヘッダが削除されるみた
いな、そういうの用意するという案はどうでしょ?

[ ]
RE:32182 [Q]テンプレートの文法No.32195
ワッキー さん 07/09/05 21:49
 
> みたいな命令を追加して、それを指定したら空のCc:ヘッダが削除されるみた
>いな、そういうの用意するという案はどうでしょ?

どちらかといいますと、
引用元のメールにCc:ヘッダが無い場合が問題となります。空のCc:ヘ
ッダがあってもそれはそれでCc:ヘッダがあるとして構いません(あ
くまで原文重視です)。



ちょっとテンプレートを改造しました。

-----------------------ここから
$c

$i

----- Original Message -----
From: $(RootHeader,From)
To: $(RootHeader,To)
$(ExecMacro,"Cc.mac")$-
Date: $(FormatDate,$(RootHeader,Date),"oYYYY年MM月DD日(W)hh
時mm分")
Subject: $(RootHeader,Subject)

$(QuotedSelectedRootText2)

-----------------------ここまで


[Cc.mac]
-----------------------
loaddll "TKInfo.dll";

$ret=dllfuncstr( "RootHeader", "Cc" );

if( $ret!="" ) {
  movetolineno 0, 16;
  insert "Cc: "+$ret;
}
-----------------------


こんな感じでそれらしくはなるのですが、なにせ、movetolineno 0,
16; はダサすぎですし、なぜか元メールによっては改行が入らなくて
次行のDate:と同じ行になってしまったりします。

う〜ん、どなたかお知恵を...

[ ]
RE:32195 [Q]テンプレートの文法No.32196
やすひさ さん 07/09/05 22:23
 
 ワッキーさん、みなさん、こんにちは。

> こんな感じでそれらしくはなるのですが、なにせ、movetolineno 0,
> 16; はダサすぎですし、なぜか元メールによっては改行が入らなくて
> 次行のDate:と同じ行になってしまったりします。

 マクロを作成して差し上げるわけではないので恐縮なのですが、
私の手法として、テンプレートで特定の文字列を入力しておいて、
マクロでその文字列をを置換するということをやっています。
他の方の方がいい考えをお持ちかもしれませんが、参考までに…。
--
やすひさ
Windows XP Pro. SP2 / Internet Explorer 6.0 SP2(6.0.2900.2180)
HidemaruEditor 7.00 / HidemaruMail 4.81beta12 (WinNT,501)

[ ]
RE:32196 [Q]テンプレートの文法No.32199
秀まるお2 さん 07/09/06 09:06
 
 すみません。削除したいのは本文中の「Cc: 」となってる部分だったんですね。
ならやっぱりマクロで置換してもらうのがいいんじゃないかと思います。

    #x = x; #y = y;
    replaceall "^Cc: +\\n", "", regular;
    moveto #x, #y;

 ってマクロを自動実行すればいいかと思います。

[ ]
RE:32199 [Q]テンプレートの文法No.32202
ワッキー さん 07/09/06 20:44
 
> ってマクロを自動実行すればいいかと思います。

これでバッチリでした。
逆に考えればよかったんですね。
お世話様でした。

[ ]