当应用程序未打开时,Applescript 使用 Evernote 的 "find notes"动词给出错误

标签 applescript evernote

我正在编写一个 applescript,它使用名为“查找笔记”的命令(在 Evernote 字典中的 Evernote 套件中)与 Mac 版 Evernote 进行交互。这是我的脚本:

tell application "Evernote"
set myNotes to find notes ("intitle:Title")
end tell

如果我在 Evernote 已打开时运行脚本,效果很好,但如果在运行脚本时 Evernote 尚未打开,则会出现错误:“预期行尾,但 找到标识符。”第二行中的“notes”一词突出显示。

无论我是从 AppleScript 编辑器运行它还是作为 shell osascript 运行它,它的行为都是一样的。

它似乎将“find”解析为一个完整的动词,而不是动词“findnotes”的一部分。但如果 Evernote 打开,那么它会识别完整的动词并正常工作。

有什么方法可以让它作为一个脚本(未编译)在安装了 Evernote 但可能运行也可能不运行的环境中运行?

最佳答案

我相信这是因为当您没有给出具体名称时,它会匹配(正常运行的)EvernoteHelper 应用程序。

我认为,只要您在编译时运行 Evernote 本身,正确的引用就会最终出现在脚本中,因此编译后的脚本在运行时应该启动 Evernote 而不是 EvernoteHelper .

您可能会发现使用包标识符“com.evernote.Evernote”而不是应用程序的硬编码路径也有效:

tell application id "com.evernote.Evernote"

(注意“id”部分。)

关于当应用程序未打开时,Applescript 使用 Evernote 的 "find notes"动词给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18646847/

相关文章:

javascript - 单击 HTML 链接时如何执行 Apple 脚本?

macos - 从条形码扫描仪捕获输入,写入浏览器窗口

javascript - 如何设置iframe中元素的值?

api - Unity3D 中的印象笔记 API

android - 如何列出来自 EvernoteNoteStoreClient.findNotes() 的笔记?当 notefilter 为空时,我可以列出所有笔记本

AppleScript 获取提醒中的事件列表?

javascript - 如何使用 javascript 和 applescript 替换网页上的文本

macos - ImageCaptureService.app 是什么?

applescript - 如何使用 AppleScript 从 Evernote 导出笔记?

applescript - 如何确保 OS X 10.10 (Yosemite) 中的 Applescript 对话框焦点?