在 Mutt 中浏览邮件正文时看到的邮件发送日期是发件人所在时区的时间,例如: Tue, 31 Oct 2006 20:24:16 -0600 (CST)
为了让所有由 fetchmail 或是 getmail 或是 mpop 通过 POP3
收取下来的邮件,能按照收件人所在的时区显示为:
Wednesday, 2006-11-01 10:24:16 +08:00 (GMT)
可以借由 procmail 使用 formail 向邮件正文中追加一条邮件头部标识。可以向
procmail 配置文件 ~/.procmailrc 添加以下内容:
----------------
:0
* ^Date: \/.*
{
local_date = `TZ='GMT-8'; date '+%A, %F %T %:z (%Z)' -d $MATCH`
:0 fhw
| $FORMAIL -A "LDate: ${local_date}"
}
----------------
然后再修改 Mutt 的配置文件 ~/.muttrc (或 ~/.mutt/muttrc) ,用 LDate 替代 Date
。例如:
----------------
ignore *
unignore From:
unignore To:
unignore Subject:
unignore CC:
unignore BCC:
unignore Reply-To:
unignore LDate:
unignore Organization:
unignore X-Label:
hdr_order From: To: CC: BCC: LDate: Reply-To: Organization: X-Label: Subject:
----------------
这样修改以后,再次用 Mutt 浏览邮件正文时便可以看到以 GMT-8 (Asia/ShangHai)
时区显示的发件日期了。
注: 不要用 formail 的 -I 参数直接替换掉 Date 字段,因为这将导致 Mutt
不能正确识别邮件的发件日期,引起排序/显示等其他方面的问题。
--
Vern
2007-11-30
signature.asc
Description: Digital signature

