如何解决 Mutt html 预览阻塞问题?

如何解决 Mutt html 预览阻塞问题?

一段时间以来,我发现当我尝试在浏览器中查看 HTML 文件时(来自 Mutt,v要查看所有附件,请选择text/html附件并enter),我的浏览器会打开一个新选项卡,file:///tmp/mutt.html但始终显示

文件未找到

Firefox 在 /tmp/mutt.html 处找不到该文件。

检查文件名是否存在大小写或其他键入错误。检查文件是否被移动、重命名或删除。

我不太确定如何解决这个问题。它工作得很好,直到没有。然后,为了让我保持警惕,每隔 10 或 12 次它就会随机显示 HTML 邮件。

比如说,刚才,我...

  • 尝试查看 HTML 电子邮件,
  • 决定我要最终解决这个问题,
  • 开始写这个问题的前2/3,
  • 打开第二个终端选项卡来查看/var/log/是否有明显的日志文件可供查看
  • tail -f /var/log/syslog
  • 运行 tail follow 后,返回尝试再次查看 HTML 电子邮件,只是为了查看是否有任何内容写入 syslog(尽管我认为不会),并且 a) 没有任何内容写入 syslog,b) 完全相同的电子邮件实际上在浏览器选项卡中打开得很好。

那么...我应该在哪里寻找一些迹象来说明为什么 mutt html 消息有时在浏览器中打开得很好,有时却/tmp/mutt.html找不到?

答案1

我也遇到了一些麻烦。 text/html 的 mailcap 条目是值得关注的地方。对于铬来说,它确实是needsterminal旗帜。对于火狐浏览器来说copiousoutput 旗帜成功了。

#text/html; chromium %s; needsterminal
text/html; firefox %s;copiousoutput 

如果您还没有自定义 mailcap,您可以创建一个文件(~/.mailcap例如)并将 firefox 行添加到其中。不要忘记指定路径.muttrc

set mailcap_path  = ~/.mailcap

答案2

也许这是 Firefox 命令行返回 mutt 和 mutt 在 Firefox 进程实际读取文件之前删除临时文件之间的竞争条件。

尝试在您的 mailcap 条目中添加该needsterminal标志。

或者更好的是,不要直接调用 Firefox,而是调用一个简单的 shell 脚本,该脚本用另一个名称复制 html 文件,然后在该新文件上调用 Firefox,然后将命令返回给 mutt(这将删除原始文件)。

有些人sleep在调用firefox后添加一个命令。看这里或者这里例如(搜索sleep)。

相关内容