Applescript Editor不会运行程序 - 语法错误?

时间:2015-07-28 13:50:24

标签: applescript

这是我的剧本:

on idle

   tell application "Finder" to open the startup disk

return 100

end idle

当我点击编译时,它似乎编译。当我跑步时,没有任何反应。我做了几个变种,然后我就可以运行了。

1 个答案:

答案 0 :(得分:3)

它不会从AppleScript编辑器运行,因为AppleScript编辑器不会空闲,可以这么说。

如果您需要从AppleScript编辑器运行它来进行测试,一种解决方案是将脚本的内容放入单独的处理程序中,然后从idlerun调用该处理程序处理程序;

on openStartup()
    tell application "Finder" to open the startup disk
end doMeat

on idle
    openStartup()
    return 100
end idle

on run
    openStartup()
end run

如果您不需要从AppleScript编辑器运行它,则只需将其另存为应用程序。应用程序获取空闲消息,因此它将在那里工作。

如果您需要在AppleScript编辑器中测试脚本的多次迭代,可以通过在run处理程序中调用处理程序两次来伪造空闲,并在它们之间延迟:

on run
    openStartup()
    delay 100
    openStartup()
end run

当然,您也可以使用循环重复多次。

当您将其保存为应用程序时,请记住注释掉测试run处理程序。

对于简单的脚本,我经常在我测试时将idle替换为run,然后在保存时将run放回idle