Script Debugger 6 and ASObjC Explorer 4

For application scripting, Script Debugger has long been the AppleScript editor of choice. Its debugging tools and library explorer have made it an indispensable tool for serious scripters. But version 5 of Script Debugger was released before AppleScriptObjC was available directly in AppleScript.

The absence of a script editor that could deal with AppleScriptObjC code is what lead to the development of what has become ASObjC Explorer. Writing AppleScriptObjC code in an editor that cannot display Cocoa objects can be ridiculously difficult, and ASObjC Explorer emerged to fill that gap.

But the process of using one editor for application scripting and another for AppleScriptObjC scripting is a distraction and complication. It’s all AppleScript, and I have long believed it should all be do-able in one place.

For this reason I am delighted to have been involved in the development of Script Debugger 6. Its AppleScriptObjC code completion will be familiar to users of ASObjC Explorer, but goes further. And Script Debugger 6’s ability to step through scripts and explore Cocoa results, to the point of being able to explore the contents of collection classes, will, I think, delight.

That does not yet mean the end of the road for ASObjC Explorer. Script Debugger 6 requires OS X 10.10 or later, and 10.11 or later is recommended for AppleScriptObjC. ASObjC Explorer still supports back to OS X 10.9. ASObjC Explorer includes a built-in scripting dictionary editor, and its support for autosaving also makes it a good fit for external editing in Xcode. And Script Debugger’s support for code that must be run on the main thread, as well as some asynchronous coding, is still limited.

For most scripters, though, Script Debugger 6 makes using AppleScriptObjC in everyday code a much more pleasant and productive exercise. It’s a great step forward, and I hope other scripters are as delighted as I am.

You can read more about Script Debugger 6 HERE.

ASObjC Explorer 4

ASObjC Explorer 4 is a script editor built to take full advantage of AppleScript’s ability to call Cocoa methods. With AppleScriptObjC-based libraries available in Mavericks and later, and direct access to AppleScriptObjC code in Yosemite and later, ASObjC Explorer 4 can help you write and debug your code more quickly, more effortlessly, and more efficiently. It also makes a great external editor for those developing in Xcode.

ASObjC Explorer lets you write your code, write separate testing code, step through your code, log what happened, and even add scripting terminology — all in one document window. When you have finished, you can use your document as a script or library, or export to your favorite format, including Mavericks-compatible applets with embedded script libraries.

Here are some of the features that make ASObjC Explorer a great AppleScriptObjC editor:

* ASObjC Explorer has powerful code-completion. You choose which frameworks are used for completion. Context is sensed where possible, so that completion lists are focused on what's relevant. Entries and a status bar provide extra information about terms, including argument and return types. Where there are clashes with reserved words, terms are automatically wrapped in pipes. If a term need to be preceded by current application's, it gets inserted for you. Where there are arguments, placeholders are inserted, and you can tab to move from placeholder to placeholder. You can choose to have method calls line-wrap at arguments, and put them in parentheses. And you can choose to have automatic completion after entering a configurable number of characters, or trigger it manually with the esc or F5 key.

* Improved formatting. AppleScript uses the same formatting for variable names, handler calls, and method calls. In AppleScriptObjC this means you tend to get nearly all your code in the same format — the "sea of green" effect. ASObjC Explorer can use its own syntax coloring to highlight method and handler calls, increasing code readability dramatically.

* AppleScript editors traditionally provide an event log, but within AppleScriptObjC there are no Apple events. ASObjC Explorer provides a statement log, showing the result of the statements your script executes, transforming the writing and debugging of scripts from blind trial and error to a much more transparent experience. And when your code does involve Apple events, they can be logged too, interleaved with the rest of the log. Optional Pretty Print logging will display collection classes indented, with items on separate lines. Toggle back-and-forth at will.

* You can add breakpoints, and step through your scripts. You can turn logging on and off so you can focus on just the parts that matter to you. You have a choice of timestamp styles, and you can even change the background color.

* Cocoa objects are logged — no more streams of «class ocid» id «data optr00000000206E420000600000». Cocoa objects are resolved and logged in a user-selectable color, preceded by the name of the class.

* Script libraries and applets can define their own scripting terminology, just like scripting additions and applications. But traditionally this has been a laborious and error-prone task, involving hand editing of XML. ASObjC Explorer makes it easy, with a table interface where you can add and edit the various elements. A button press will preview your work in your preferred editor, and smarts validate your entries. You can even enter extra HTML documentation. And it's all in the same window, making it simple to test.

* ASObjC Explorer takes care of the Info.plist settings of your exported libraries, but lets you make changes easily.

* You can add easily add extra resources to your exported bundles and applets by drag-and-drop from the Finder. This includes bundling third-party frameworks.

* ASObjC Explorer is packed with time and labor saving features. As well as a Shortcuts menu, there is a Scripts menu for your scripts — ASObjC Explorer is highly scriptable — and a User menu you can customise. The Swaps feature lets you define automatic text swaps, providing automatic replacement as you type. The interface is also highly configurable.

* You can configure your favored window configuration, and you can have a separate configuration for .applescript files when you use ASObjC Explorer as an external editor for Xcode. ASObjC Explorer opens and saves .applescript files directly, and automatically deals with the problem of some versions of Xcode not recognizing action handlers because of the change to interleaved syntax. You can even override the Run command for when using it as an external editor to Xcode.

You can read about all the changes HERE.

30-Day Trial Period

* Try it and see. Download it and make up your own mind.

* Buy it. If you like it, ORDER IT HERE.

* If you also need to support previous versions of the OS, you can download ASObjC Explorer 4's predecessor application, AppleScriptObjC Explorer 2F, HERE. AppleScriptObjC Explorer 2F runs under OS X 10.6, 10.7 and 10.8, and is now available free of charge.