Monday, September 26, 2022

FastScripts 3.2

Red Sweater:

By default, FastScripts searches for scripts in the same standard “Scripts” folders that Apple’s Script Menu searches. […] I’ve expanded FastScripts to support an arbitrary number of user-determined locations, whose script contents will all be available to the app.


FastScripts supports the ability to invoke any script … from within another script. […] The ability to run scripts has gotten a lot more powerful in FastScripts 3.2, with the addition of robust support for specifying parameters to invoked scripts.


Instead of a result, the “run” command in FastScripts returns a script task object. You can use this reference to “force stop” a running script, but perhaps more importantly, you can now use it to await the script’s result. When your script requests the “result” of a script item, FastScripts will suspend the execution of your script until the result is available.


In FastScripts 3.2 special care is taken to differentiate search results so that identically named items are further identified by the folder that contains them.

I love the new custom Script Collections feature. I like to keep my scripts in a Git repository, which is stored outside of the standard Scripts folder, and so I would create symlinks to the per-application folders in the repo from there. I’d have to recreate these when adding scripts for a new app or when cloning the repo to a new Mac. Also, although FastScripts would follow the symlinks to my folders, they would confuse its file system monitoring, so it wouldn’t notice changes to the contents of the actual folders. Now I can dispense with the symlinks and just add the AppleScripts folder of my repo as a script collection in FastScripts. (I also needed to move all the per-application folders into an Applications folder to prevent all the scripts from being universally available.) My FastScripts menu looks and works the same as before, but now I can store the files where I want and everything updates automatically.


Comments RSS · Twitter

Leave a Comment