【发布时间】:2011-10-21 03:25:55
【问题描述】:
我想要一种方法来触发 Thunderbird,从外部脚本,在特定文件夹中显示特定消息。
如果是 Firefox,比方说,我会使用 firefox -new-tab @987654321@,而已经运行的 Firefox(或者如果没有,则为新的)会很好地获取并显示 URL。但是我发现没有办法用 Thunderbird 做类似的事情,无论是在 Thunderbird 网站上还是通过现有的扩展,甚至在我疯狂地谷歌搜索之后,我也尝试了不止一次!
与普通 URL 相比,一个问题是需要一些符号来选择消息。由于没有更好的解决方案,我编写了一个知道folder:<em>SOME-FOLDER:ORDINAL</em> 的脚本,其行为类似于xdg-open 的扩展。我的工具根据需要在 SOME-FOLDER 部分中插入一个适当的前缀和几个 .sbd 以将其转换为绝对的 Thunderbird 文件引用,并且 ORDINAL 在那个文件夹。然后我的工具抓取消息,启发式地将其转换为 HTML 文件,然后将 Web 浏览器定向到生成的文件(如果 :ORDINAL 没有给出,它会改为处理整个文件夹,产生一个HTML 索引和许多链接消息)。
我当前的工具有助于在其他文档中保存消息引用并在以后有效地检索它们,但我处理的是 Thunderbird 消息的副本,而不是原始消息。所以如果我想删除它,在另一个 Thunderbird 文件夹中重新归档,并做其他类似的操作,我仍然需要去 Thunderbird,在我可以处理它之前再次交互地找到我想要的消息的方式,并且 this,效率不高。我的梦想是摆脱我所有的 HTML 转换和浏览器诡计,但仍然保留伪 URL 范式和伪 xdg-open 界面,直接强制 Thunderbird 进入正确文件夹,并正确显示所需的消息。
在我以前使用的电子邮件阅读器(Emacs RMAIL,然后是 Gnus,以及后来的 Mutt)中,可以管理此类事情,并且我在脚本中大量使用了此类功能。我对 Thunderbird 作为可编写脚本的邮件阅读器的明显弱点感到惊讶、惊讶,甚至有点沮丧。我错过了什么明显的东西吗?有什么途径或建议吗?
弗朗索瓦
附:当然,我同意使用 ORDINAL 不是很聪明。如果文件夹添加或删除了一些消息,则可能意味着不同的消息。这是一个较小的坏处。更好但可能更重的符号可能会使用 Message-ID 值,但是,还需要一个索引来查找包含每条消息的 Thunderbird 文件夹。
【问题讨论】:
标签: scripting external directory thunderbird