我正在尝试创建一个安装Mac Mail帐户默认签名的python脚本。到目前为止,我的脚本通过操纵ubiquitous_AllSignatures.plist
并创建相应的ubiquitous_<SignatureId>.mailsignature
来成功安装签名。这两个文件都在~/Library/Mobile Documents/com~apple~mail/Data/V3/MailData/Signatures/
。问题是Mail未将安装的签名识别为默认签名,并且为了使用签名,您必须在撰写电子邮件时在签名下拉列表中手动选择它。
我长时间搜索文件系统很难找到一个相关的plist,它决定了给定帐户的'默认'签名行为。我已经找到了Signature ID,除了上面提到的地方之外我唯一可以看到它的地方是~/Library/Application Support/CloudDocs/session/db/
中的sqlite文件。我不认为这是我的默认签名安装的可行性的好兆头。
我知道这是一个非常专业/怪异/ hacky问题,但我正在寻找一些深入了解控制Mac Mail中帐户默认签名的基本机制,或者至少证实我怀疑它是不可能的未经Mail同意,请执行此操作。任何反馈都非常感谢。
答案 0 :(得分:1)
好的我意识到这是非常模糊的,但是因为我通过对晦涩问题的自我回答得到了极大的帮助,所以我将会尝试帮助将来可能面临这个问题的任何人。
&#39;默认&#39;签名确实设置在plist中。这个plist是~/Library/Containers/com.apple.mail/Data/Library/Preferences/com.apple.mail.plist
。厌倦了,这是一个二进制plist,它与xml plist不同且可读性低得多。但是不要害怕,你可以使用plutil
实用程序来回转换b / w binary和xml。您可以使用biplist在python中访问此实用程序,万岁!现在,只需通过为帐户ID(密钥)添加签名ID(字符串)来操纵plist中的SignaturesSelected
字典。你将设置你的默认签名!