我正在使用语音合成器为视障人士编写一个简单的用户界面。我在网上到处寻找可以编写脚本来满足这些目的的电子邮件客户端,但无济于事。
我相信有多个 CLI 电子邮件客户端(例如 MUTT)只允许使用命令行参数发送电子邮件。但我还没有找到可以下载电子邮件、对其进行解码然后将其转储到文本文件的客户端。
到目前为止,最佳候选者似乎是 mailx,但它似乎需要相当多的照顾才能满足我的需要。
有没有适合脚本的电子邮件客户端的建议?
我是否忽略了有关 MUTT 的一些基本知识?
是否有任何库/程序可以帮助我解码来自 maildir 的今天的电子邮件中使用的 MIME 编码?
我是否应该咬紧牙关并为 mailx 编写一个脚本?
提前致谢。
答案1
如果您确实需要编写脚本,当今大多数高级脚本语言(例如 Python、Ruby)都具有出色的邮件处理库。将某些内容组合在一起并向您提供消息的各个部分非常容易。
如果您正在进行文本转语音,我不确定您需要 MIME 解码做什么——MIME 通常仅用于附加二进制附件。如果您将消息存储在 maildir 格式的消息存储中,那么您已经拥有每个文件一条消息,因此如果您只想 (a) 读取消息头和 (b) 第一个文本部分,那么您实际上不需要做那么多工作。
如果您决定采用这种方式,邮件实用程序套件MH
可能会提供脚本支持。nmh
我相信该软件包在 CentOS 和 Ubuntu 上可用。更多信息这里。
答案2
我相信 emacs 既有免眼操作功能,也有电子邮件功能,而且两者配合得很好,所以你可以探索一下。它是可编写脚本的,只要你愿意学习 elisp。
支持嵌套数据结构的每种主流脚本语言都应该有库来解析邮箱或使用 IMAP 以及处理 MIME 电子邮件。 Shell 不算,如果你尝试的话,那么你就已经过了 Shell 脚本可维护的领域。相反,尝试 Python/Perl/Ruby。
Python 有一个email
包,将很多功能集中到一起:
http://docs.python.org/library/email
并imaplib
满足mailbox
您的存储需求。