Mail.app:自动显示特定发件人的远程图像

GJ.*_*GJ. 6 applescript apple-mail macos

与 gmail 允许的方式类似,我希望自动加载特定发件人的远程图像。

我遇到的一个选择是使用规则和 Applescript:https ://discussions.apple.com/thread/2405934

但是,这似乎不起作用(至少在当前的 10.7.3 上 - 该解决方案有点过时了)

任何想法如何修复这个applescript,或者另一种方式来实现预期的最终结果?

kop*_*hke 6

您已经被GUI 脚本解决方案的脆弱性所困扰——即。它们对目标应用程序的 UI 元素层次结构的依赖。在 Mail.app 的情况下,Lion 的这种层次结构发生了相当大的变化(这并不奇怪,因为 Lion 的 Mail.app 是早期版本的一个相当大的更新)。“加载图像”按钮的正确 UI 地址现在是

button 1 of UI element 1 of row 1 of table 1 of scroll area 1 of window
Run Code Online (Sandbox Code Playgroud)

由于这是一个相当大的咀嚼,我建议修改原始脚本以对引用进行操作,将核心 GUI 脚本命令更改如下:

set loadButton to a reference to button 1 of UI element 1 of row 1 of table 1 of scroll area 1 of front window
if loadButton exists then click loadButton
Run Code Online (Sandbox Code Playgroud)

但是请注意,这实际上并没有重现 Gmail 的行为——它只会在查看器窗口中打开所有满足规则条件的邮件,并在每次运行规则时显示内联服务器图像。它不影响内嵌消息显示(在消息预览栏中),也不影响您自己在新窗口中打开消息。除非编写您自己的 Mail.app 插件,否则您对此无能为力,因为 Mail.app 提供的唯一事件处理机制可以与 AppleScript 挂钩,就是执行规则。