你有什么提示和技巧来调试AppleScript?有调试器吗?如果不是,插入“打印”以显示变量值的最佳方法是什么?有没有办法“漂亮地打印”更复杂的数据结构?如何调试AppleScript?
回答
- 脚本调试器
- XCode
从脚本编辑器运行时,获取对象的属性(请参阅下文)以了解其失败原因。您也可以使用类词来查看属性是什么类。应用程序字典是一个很好的起点。
一种技术,往往会帮助我的,(我仍然有时这样做)是告诉一些返回它们的属性,就像这样:
tell application "TextEdit" get properties end tell
日志报表和Console.app,调试的运行时事件。 (进一步在下面)。您可以通过设置属性来打开和关闭调试功能。
下面是一个用于跟踪运行时错误,小应用程序,邮件规则以及您有什么的技术。当它失败,错误号和消息记录到TestDrive.log,并且可以在Console.app的左边空白处找到...
tell application "TextEdit" try set a to text 0 of its name on error e number n my logit("OOPs: " & e & " " & n, "TestDrive") end try end tell to logit(log_string, log_file) do shell script ¬ "echo `date '+%Y-%m-%d %T: '`\"" & log_string & ¬ "\" >> $HOME/Library/Logs/" & log_file & ".log" end logit
$ 199!哎哟!对于偶尔写短文本的人(比如我)来说,这太昂贵了(然后在下个星期几周内就忘记了AppleScript的所有内容)。 – 2009-09-23 21:17:13
FWIW现在是99美元。 – 2016-11-01 07:54:51
如果你正在构建的AppleScript的任何金额,ScriptDebugger是我可以推荐的最佳工具。话虽如此......
Xcode是一个免费的选项,可以用来开发AppleScripts,并可以通过调试程序一步代码。此功能主要包含在内,因此您可以使用AppleScript Studio构建Cocoa应用程序,但您可以将其用于任何AppleScript开发。
如果您正在寻找更简单的东西,您可以查看Smile,这不是一个真正的调试器,但提供了对调试有用的功能,这些功能在标准脚本编辑器中不可用。
看起来Xcode 4删除了脚本调试器 - http://stackoverflow.com/a/5535604/255961 – studgeek 2012-12-03 23:44:09
对于非常简单的 “printf风格” 调试的需要,尽量
display dialog "my variable: " & myVar
如果显示对话框是太小了,你可以用文本编辑显示大回报:
tell application "TextEdit"
activate
make new document
set text of document 1 to myResults
end tell
- 1. 的Xcode调试的AppleScript
- 2. 你如何通过Applescript进/出/通过Xcode调试器?
- 3. 如何从AIR调用AppleScript进程?
- 4. 尝试使用AppleScript
- 5. 在Applescript中,如何调试GUI脚本的菜单和菜单项?
- 6. 如何调试
- 7. AppleScript:出错(尝试)行号
- 8. 如何调试Jest测试?
- 9. 如何通过调试进行调试?
- 10. 如何调试SOAP调用?
- 11. 如何调试Rscript调用
- 12. 如何调试ANR
- 13. 如何调试TreeNodeCollection
- 14. 如何调试RedirectToAction
- 15. 如何调试popover?
- 16. Android调试,如何?
- 17. 如何调试tokend
- 18. 如何调试Aquamacs
- 19. 如何调试proguard
- 20. 如何调试Magento?
- 21. 如何调试JavaFX
- 22. 如何调试Task.Factory
- 23. 调试VHDL:如何?
- 24. 如何调试Heroku?
- 25. ResourceNotFoundException如何调试?
- 26. 如何调试cqlsh?
- 27. 如何调试karmatests?
- 28. 如何调试elisp?
- 29. 如何调试javascript?
- 30. 如何调试Websockets?
get属性失败** Mail **(AppleEvent处理程序失败,数字-10000'),所以它似乎不是通用的,是否有更通用的变体来检索应用程序的脚本功能? – dualed 2014-10-27 10:35:39