E-mail文化拾趣

首部

Carbon Copy (Cc:)

Carbon copying指的是用复写纸复写,电子邮件世界里借用了这个术语表示把副本抄送给非主要收件人。

Blind Carbon Copy (Bcc:)

RFC5322提及邮件客户端有三种处理Bcc:的方式:

  • To、Cc、Bcc收件人均收到同样的邮件,该邮件中Bcc:首部被移除
  • To、Cc收件人收到Bcc:首部被移除的邮件。Bcc收件人收到带有Bcc:首部的邮件, 实现可以决定Bcc收件人是否能见到其他Bcc收件人。
  • To、Cc收件人会看到空的Bcc:首部。

供参考,下面是RFC5322的3.6.3节对Bcc:的描述原文:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
The "Bcc:" field (where the "Bcc" means "Blind Carbon Copy") contains
addresses of recipients of the message whose addresses are not to be
revealed to other recipients of the message. There are three ways in
which the "Bcc:" field is used. In the first case, when a message
containing a "Bcc:" field is prepared to be sent, the "Bcc:" line is
removed even though all of the recipients (including those specified
in the "Bcc:" field) are sent a copy of the message. In the second
case, recipients specified in the "To:" and "Cc:" lines each are sent
a copy of the message with the "Bcc:" line removed as above, but the
recipients on the "Bcc:" line get a separate copy of the message
containing a "Bcc:" line. (When there are multiple recipient
addresses in the "Bcc:" field, some implementations actually send a
separate copy of the message to each recipient with a "Bcc:"
containing only the address of that particular recipient.) Finally,
since a "Bcc:" field may contain no addresses, a "Bcc:" field can be
sent without any addresses indicating to the recipients that blind
copies were sent to someone. Which method to use with "Bcc:" fields
is implementation dependent, but refer to the "Security
Considerations" section of this document for a discussion of each.

在Gmail里发封没有To:、Cc:,只有Bcc:的邮件,收件人就会看到To: undisclosed-recipients: ;

Signature Block

附在邮件正文后面作为签名信息,通常会包含发件人的职位、联系方式等。 为了和正文分隔开,一般使用两个连字符跟着一个空格和一个换行符(sig dashes),用C语言的字面字符串表示方式就是" -\n"。 邮件客户端可以认出双连字符记号用与正文不同的样式标记出来或者隐藏。

Top Posting vs Bottom Posting

Posting这个词是用来描述新闻组的,

在回复邮件时,表示回复文本时在原文下面写回复(bottom posting)还是在原文上面先回复(top posting)。 传统的方式是采用bottom posting, 先发生的事(引文)出现在前面、后发生的(回复)出现在后面在时间顺序上较为自然, 而top posting则会对理清事件的先后顺序造成阻碍:

1
2
> Where are you?
At home.

他们抨击top posting的理由就是后者颠倒了引文和回复的时间顺序:

1
2
At home.
> Where are you?

对阅读邮件特别是很长的线索时造成障碍。在很多邮件列表,网络礼仪就是使用bottom posting,

另外还有interleaved posting,把原文分为多段,在每一段后写下自己的回复。 这种风格可以被用作point-by-point rebuttal,逐条驳斥对方的观点。

现在top posting占到了上风,我觉得很大一部分原因是网页版邮件客户端的兴起和非黑客邮件使用者数目的激增。 邮件客户端缺乏标注引文和切换引文显示功能时,采取top posting的方式能减少鼠标滚动,更容易看到回复的内容。

比如说Mutt默认就设置了快捷键跳到下一个不包含引文的行:

1
2
3
4
<skip-quoted> (default: S)

This function will go to the next line of non-quoted text which comes after
a line of quoted text in the internal pager.

以及用于切换引文是否显示的:

1
2
3
4
5
6
7
<toggle-quoted> (default: T)

The pager uses the $quote_regexp variable to detect quoted text when
displaying the body of the message. This function toggles the display of
the quoted material in the message. It is particularly useful when being
interested in just the response and there is a large amount of quoted text
in the way.

Reply-To

这个邮件首部为用户回复邮件时提供建议,设定新邮件的To:首部。

Thread

References

In-Reply-To

format=flowed

Mail-Followup-To

回复邮件时如果选择了follow up(或者说reply to all)的方式,那么收件人会被填为Mail-Followup-To设定的地址。 避免发件人如果订阅了该邮件列表的话收到两封相同的邮件。

Mutt在你设置subscribe该邮件列表时会自动设置Mail-Followup-To首部。

X-Mailer

一些不友好的客户端:

QQMail

不使用References:首部。

Mutt

query_command

1
2
set query_command="echo; grep %s ~/.mutt/aliases | cut -d' ' -f3-"
bind editor <tab> complete-query

其他

参考配置

http://www.spinnaker.de/mutt/muttrc

Sender Policy Framework