如何让传统电子邮件客户端发送在 Gmail 中显示正常的电子邮件?

如何让传统电子邮件客户端发送在 Gmail 中显示正常的电子邮件?

一位体贴的朋友最近告诉我,我发送的电子邮件(带有尼奥穆特;可能是 Mutt、Gnus 或 Pine)在他的设备上看起来很有趣:

iPhone 上 Gmail 应用程序的屏幕截图

显然谷歌并没有在正确格式化标准方面投入太多精力RFC 2822文本电子邮件。

鉴于 Gmail每月活跃用户超过十亿,把问题归咎于他们似乎是徒劳的。

我可以做些什么来让我的电子邮件看起来“正常”吗?我很高兴使用格式=流动其中有有些 非官方Emacs 中的支持;但显然Gmail 不支持

我想到的另一个解决方案是通过某种 Markdown 解析器传递我的纯文本电子邮件,将它们转换为 HTML 并将其作为替代格式附加到外发电子邮件中。我还没有真正考虑过这一点,但看起来它可以很好地工作,因为 Markdown 已经支持

引用的文字

和双引号文本

使用标准>,>>前缀。也许结果看起来比“普通”人使用图形电子邮件客户端发送的电子邮件更好。

人们这样做吗?他们能做到这一点吗(例如在 Mutt/Neomutt 中)?什么是“标准”解决方案?

答案1

查看“plainMail2HTML”,它使用 python 的 docutils 将“markdown”转换为“HTML”。到目前为止,我发现结果令人鼓舞。在 github 存储库中了解更多信息。

再见

答案2

有关 markdown 方法的更多信息

在我的问题中,我错过了之前对同一主题的一些讨论,例如另一个 UL 问题,使用 mutt 发送用 Markdown 编写的电子邮件。这个问题似乎实际上是关于如何在共享计算机上或其他无法修改 Mutt 使用的“sendmail”的情况下执行此操作,但它链接到一个应该适合我的用例的解决方案。

解决方案来自 2009 年,来自 dgl.cx,使用 Markdown 的 mutt 的 HTML 邮件,它绑定撰写屏幕中的击键,以通过假“编辑器”创建专门命名的 HTML 附件。然后,当一个假的 sendmail 看到这个专门命名的 HTML 附件时,它会创建一个多部分/替代结构并将其传递给真正的 sendmail。

上述 UL 讨论中的评论之一链接了一篇“No Substance”博客文章,穆特的秘密酱汁,我发现这也很有帮助。

这两种方法都解决了更原始治疗中出现的一些问题:

  1. 如何创建正确的多部分/替代附件。我们希望发送带有 text/plain 和 text/html 的 multipart/alternative,以便使用 Mutt 的人可以看到原始来源,使用 Gmail 的人可以看到 HTML。 Markdown 是理想的选择,因为源代码也是人类可读的。然而,显然具有多部分/替代结构的外发邮件NeoMutt 仅提供初步支持。 dgl.cx 帖子通过让伪造的 sendmail 创建多部分/替代结构来解决此问题。 No Substance 帖子有一个假的 sendmail,它还进行 Markdown 解析。随着 NeoMutt 对 multipart/alternative 的新支持,也许会出现更好的解决方案,其中不需要假的 sendmail。

  2. 如何允许预览。如果我们要附加 HTML 版本(通过切换到备用 Sendmail 就很容易),那么最好在发送邮件之前看看它的外观。正如 No Substance 帖子中所指出的,这可以通过监视 Mutt 存储草稿消息的文件来完成,该文件的位置是用“postponed”变量配置的。对于 dgl.cx 解决方案,这并不是真正必要的,因为 HTML 版本已经作为附件出现并且可以手动打开。

我还没有尝试过任何一种解决方案,但我倾向于 dgl.cx 中的解决方案,因为它看起来更简单。

相关内容