还是解决不了的 KMail 连接 Gmail IMAP 时的文件夹同步问题

我在 openSUSE Tumbleweed 上使用 KDE Plasma 5 桌面环境。所以很自然地就用 KMail 作为我的邮件客户端了。一直以来有个困扰我的问题就是,使用 IMAP 连接到 Gmail 之后,在「收件箱(Inbox)」中删除的邮件还继续存在「所有邮件(All Mail)」文件夹里。需要手动从「所有邮件(All Mail)」中删除一次。作为一个普通用户,其实我不知道这到底是 KMail 的问题还是 Gmail 的问题。

而 Gmail 支持「标签(Label)」,所以可能有同一封邮件出现在多个标签下面。IMAP 本身是不支持「标签(Label)」的。Gmail 中的「标签(Label)」就被当作「文件夹」来处理了。那么从 KMail 中删除邮件的时候就需要从该邮件出现的各个「文件夹」中都删除一次。这是很烦人的。

从 kubuntuforums 看到一个解决方案是这样设置的,

  • Gmail 的「设置(Settings)」页面,
    • 「转发和 POP/IMAP(Forwarding and POP/IMAP)」-> 「IMAP」标签页中做如下调整:
      *「当我从 IMAP 中标记一条消息为删除时(When I mark a message in IMAP as deleted)」选项「自动清理(Auto-expunge)」设置为「关闭(Off)」;
      *「当一条消息被标记为删除并从最后活动的 IMAP 文件夹中清理掉的时候(When a message is marked as deleted and expunged from the last visible IMAP folder)」选项设置为「立即永久删除该消息(Immediately delete the message forever)」
    • 「标签(Labels)」标签页做如下调整:
      * 「系统标签(System labels)」中取消勾选「所有邮件(All Mail)」为**不**在 IMAP 中显示(NOT selected for Show in IMAP)
      * 「系统标签(System labels)」中勾选「垃圾箱(Trash 或者 Bin)」为在 IMAP 中显示(Show in IMAP)
  • KMail 的 设置窗口(Kontact -> Settings -> Configure KMail),「帐户(Accounts)」页面,「修改(Modify)」对应的 Gmail 帐户,将「高级(Advanced)」标签页中「垃圾邮件文件夹(Trash folder 或者 Wastebin folder)」修改(点击右端的文件夹图标)为 Gmail 系统默认的垃圾邮件文件夹(Gmail/[Gmail]/Trash(或 Bin),根据用户名不同前面的字符串有所不同)。

帖子中的用户回复说这样可以解决问题。但是我感觉似乎并没有「完美」解决这个问题。经过几天的观察,似乎唯一「起作用」的就是隐藏掉「所有邮件(All Mail)」,也就是说不让这个资源来烦扰自己。然而其他标签/文件夹中的未读邮件并不会被标记为「已读」,即使这邮件已经从「收件箱(Inbox)」中被删除了。

另外,如果要想同时查看 Inbox 和 Sent Mail(已发邮件)的话,也就是显示为对话状态,可以在点击 Inbox 后按住 Ctrl 键再点击 Sent Mail。这样能够启用 KMail 的「合并(Merge)」显示功能。如此一来,其实「所有邮件(All Mail)」这个文件夹也并没有多少存在的意义。©

本文发表于水景一页。永久链接:<https://cnzhx.net/blog/kmail-gmail-imap-sync-problem/>。转载请保留此信息及相应链接。

时间过去太久,评论已关闭。
如果您有话要说,请到讨论区留言并给出此文章链接。
谢谢您的理解 :-)