水族馆

从技术角度谈邮件礼仪

阅读时间 2 分钟


Email 邮件礼仪已经是老生常谈的话题。人们常谈标题、称谓、正文、落款,却往往忽视技术上的细节。例如发件收件人地址的姓名、文章段落 HTML 格式、全角字符和半角字符的间隙、iCalendar 日历附件、vCard 名片等等。处理好技术细节能让人感到邮件由专业人士发出,而不是由某个实习生编写()

从使用邮件客户端开始

访问邮箱的方式无非两种

  1. 用浏览器打开邮箱网页

  2. 使用邮件客户端直接连接邮箱服务器

邮件客户端有很多,例如 Thunderbird、微软 Windows10 自带的「邮件」应用、安卓或者苹果手机上自带的邮件应用,都属于邮件客户端。此处使用的例子是 Thunderbird,因为 Thunderbird 是一个开源软件。这意味着不收费、没有广告、没有恶意代码。同时它也是老牌软件,功能丰富、质量上呈。

但是,2022 年了,浏览器打开网页就能做的事情,为什么我们还需要使用邮件客户端呢?

第一步,设置您的大名

在邮件客户端中设置「发件人姓名」,对方接受的时候就能显示出您的大名,而不是一个冰冷冷的、令人困惑的邮件地址。

bad mail exmaple

一个错误的例子(发件人使用 QQ 邮箱,但没有设置姓名)

设置多个身份

在 Thunderbird 的账户设置里,有一项「Identities」可以设置多个身份。比如一个学校邮箱有两个身份:学生和兼职助理。那么就可以在这里设置不同的发件人姓名和签名文本。

收件人姓名

通常人们在「收件人」一栏中填入这样的内容

master@aquarium39.moe

但很少有人知道,这样的格式也是可以识别的。

收件人名称 <邮箱地址>

从编程角度说,这是因为 message['to'] 和 SMTP 服务器参数 send_to 代表不一样的含义。message['to'] 是写在邮件中供人类阅读的「发件人」和「收件人」, SMTP 服务器使用 sendt_to 参数决定邮件投递到哪里,send_to 参数只能是有效的邮箱地址。

这也是为什么「密送 BCC」 邮箱不会出现在「收件人」中,但收件人却能收到邮件。因为密送对象不在 message['to'] 而在 send_to 中。

举个例子:

馆长 sama <master@aquarium39.moe>

这么做的好处是

邮件正文

全角和半角字符间的空格

一般来说半角字符和全角字符之间要有一个空格。这是因为半角字符(英文)使用空格来分割单词,同理需要一个空格分割中文和英文。

事实上许多优化过的应用(比如 Microsoft Word)会自动在全角和半角之间自动加上一个空格的间隙,使得行文更加美观。虽然有些程序帮我们做了加空格这件事,但我们仍需要意识到这个问题。

举个最常见的例子:超链接。一个正常的超链接例子应该是像 https://aquarium39.moe/ 。但是如果全角半角之间缺了空格,很可能会变成这样 https://aquarium39.moe/。因为没有空格,软件把 URL 后的内容识别为链接的一部分了。

纯文本邮件和 HTML 邮件

纯文本 (Plain Text) 和 HTML (超文本标记语言) 的区别是

如果一封邮件使用了等宽字体、没有图片、没有加粗下划线、80 个字符自动换行,那么它很可能是一封纯文本邮件。

我个人会选择 HTML 格式的邮件,但如果对方发来的邮件是纯文本格式,我会选择同样用纯文本格式回复。

缩进用 Tab

有人就是喜欢用空格,但是由于字体原因他的空格很窄,为了将首行缩进两个汉字的宽度,他按了十几个空格。结果在收件人的设备上,空格较宽,第一行缩进直接原地起飞,缩到不知道哪里去了。

结论:除非能保证字体在收件方有效,否则缩进用 Tab。

设置段距

垂直距离通常有两种:行距和段距。

我个人偏好是,段距是行距的 1.5 倍,这样段与段之前区别较明显,正文格式更加美观。这也是 Thunderbird 的默认设置。

警惕 HTML 邮件格式兼容性问题

邮件签名文本

所谓「签名文本 Signature text」是在邮件末尾添加的个人信息,类似

--
- Author: Aquarium39 master
- Email: master@aquarium39.moe
- Website: https://aquarium39.moe

在 Thunderbird 的「账户设置」中添加签名文本后,签名文本会自动放在邮件末尾,并使用小号和等宽字体格式。

我们知道,在回复邮件的时候,被回复的邮件的内容会被「引用(Quote)」到当前邮件中,类似

Hello,

Blablabla...

Thanks

On 2022-02-15 13:39:00 "馆长 sama <master@aquarium39.moe>" wrote:
> xxxxxx
> xxxxxx

其中 > xxxxxx 这部分就是引用内容。那么签名文本是放在引用内容之前,还是之后呢?

其实这没有统一做法,Thunderbird 的推荐做法是放在应用内容之后,也就是

Hello,

Blablabla...

Thanks

On 2022-02-15 13:39:00 "馆长 sama <master@aquarium39.moe>" wrote:
> xxxxxx
> xxxxxx

--
- Author: Aquarium39 master
- Email: master@aquarium39.moe
- Website: https://aquarium39.moe

如果使用 Thunderbird 回复上面的邮件,那么它能够识别出签名文本,引用将不会包括签名文本。使得引用少些重复内容。

附件

电子邮件标准定义了一些附件类型,这些附件可以被符合标准的应用程序读取。

iCalendar 日历附件

「日历交换数据文件」是以 .ics 结尾的日历信息文件(由 RFC 5545 定义)。该标准让用户能够将日历事项作为附件放入邮件中,并且使用日历程序导入自己的日历中。

设想一下,你收到一封会议邀请邮件,邮件中带了一个 .ics 附件。轻轻点一下,日程就能添加到了自己的日历中。

目前 Thunderbird Gmail 和苹果都是支持 iCalendar 的,其他邮箱套件没有尝试过所以不清楚…

vCard 名片

包含一个联系人信息的文件。同 iCalendar 附件类似,可以将其导入或导出到通讯录。

加密和签名

邮件可以使用 GPG 密钥套件来进行加密或者签名。

这里讨论的签名并不是前文所说的「签名文本」。这里的签名是指使用非对称加密技术,在电子邮件中添加一个签名附件,以从数学上证明这封邮件出自你手。

由于 GPG 涉及到的相关知识较多并且使用情况较少,因此不作介绍。