繁体   English   中英

OS X Mail - 在撰写模式下打开 *.eml 文件

[英]OS X Mail - Open *.eml-files in compose mode

如何在 Mac OS X Mail 的撰写模式下打开 *.eml 文件? 对于 Outlook,“X-Unsent: 1”似乎可以解决问题,但不适用于 Mac OS X Mail 仍以只读方式打开。

这是一个非常古老的问题,但显然已经收到了相当多的意见。 我的好奇心被勾起来了,我想我应该去看看。 经过一番折腾,我发现您可以添加以下标头以使消息可编辑:

X-Uniform-Type-Identifier: com.apple.mail-draft

将其添加到符合 RFC-2822 标准的邮件中,为其提供.eml.emlx扩展名,当您双击它时,它将在 Mail.app 中作为可编辑邮件打开。

玩得开心。

在 macOS Catalina 10.15.7 中,从 Python 脚本运行以下命令可以打开一条新消息,然后切换到撰写模式,但如果osascript命令也运行,则在打开消息和将其置于撰写模式之间存在竞争条件迅速地。 sleep命令可以防止竞争,但您可能需要调整睡眠时间的长度来弥补这一点。 (我还在 Python 中使用time.sleep(1)而不是 shell 命令。)

/usr/bin/open -a Mail path/to/tmp/message.eml
/bin/sleep 1
/usr/bin/osascript -e 'tell application "System Events" to tell application process "Mail"' -e 'keystroke "d" using {command down, shift down}' -e 'end tell'

请注意,您必须授予对终端的访问权限才能控制其他应用程序,否则osascript命令将失败并出现错误。 为此,打开系统偏好设置,单击安全和隐私项,单击左侧菜单中的辅助功能,单击锁定图标解锁菜单,然后选中“允许应用程序”中的终端项(如果未列出,则添加它)来控制你的电脑。” 列表。

另请注意,Cmd-Shift-D 键盘快捷键发送的消息已处于撰写模式,因此如果有人在脚本运行时使用 Mail,并且他们在前台有一个单独的撰写窗口,则脚本可以发送该消息而不是将新消息置于撰写模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM