FastScripts 3.0 Sneak Peek

Thanks for the additional feedback and speed sanity check. The “Stop Script” UI is very preliminary. I expect to amend those menu items to show progress information, and probably support a UI to cancel the script in a custom view. Not sure yet, but just wanted to get something functional in ASAP.

I don’t know if I anticipate that many people wanting to have a keyboard shortcut to kill the last script they ran, but your suggestion makes me think it would be a great idea to support accessing and canceling running scripts via FastScript’s own scripting dictionary. With this, you could easily add a script to provide just that functionality.

I do have some thoughts about showing activity in the icon somehow while scripts are running. I’ll probably get to that before the final release.

If you’re looking for work :wink:, I think it would be useful for FastScripts to be able to call a script’s open handler. So if it detected that a script has an open handler, it would send an event to the Finder to get the current selection, and then pass that in an open event to the script.

I’d envisage one of two things:

  • Scripts with an open handler would appear with some signifying icon in the menu; or
  • Some key combination would switch between showing/calling scripts with open handlers versus run handlers.

I know it’s easy enough to have scripts get the selection from the Finder themselves, but I think the real value here would be making it obvious in the UI what’s required for a particular script.

I finally saw the RegEx error again, but can only report that it is intermittent. Removing the use frameworks statements did not seem to help. This time, it only occurred in FastScripts 3 beta, not FastScripts 2, but I can’t report that as a definite case due to the intermittent nature.

The smaller tests versions of the script using regex all worked this time. My larger real-world script sometimes gave the RegEx error for two consecutive runs, but then on the third run, when I had changed nothing, it worked. That’s literally running the script back-to-back-to-back from FastScripts 3.

So intermittent is definitely the word, and I don’t see much hope of replicating this reliably to help anyone find a workaround.

How large a script would that be?

It’s less than 400 lines.

@redsweater, let me describe a interesting workflow.

The multitouch trackpad have 4 zoons,
ex. upper left and right and lower left and right.

I have test with right hand 1 finger to 3 finger (1-3 touch events).

Key = q

Shortcuts possibility:

1 touch upper left + q
2 touch upper left + q
3 touch upper left + q

1 touch upper right + q
2 touch upper right + q
3 touch upper right + q

1 touch lower left + q
2 touch lower left + q
3 touch lower left + q

1 touch lower right + q
2 touch lower right + q
3 touch lower right + q

2 touch upper right + 1 touch lower right + q
2 touch upper left + 1 touch lower left + q
3 touch upper right + 1 touch lower right + q
3 touch upper left + 1 touch lower left + q

1 touch upper right + 1 touch lower left + q
1 touch upper right + 1 touch lower right + q
1 touch upper left + 1 touch lower left + q
1 touch upper left + 1 touch lower right + q

In this example we have made 20 different keyboard shortcuts from the same key q
The trackpad becomes the modifiers key for the key q. (keyboard key q)
Today we use combinations of modifiers keys to extend the key q with shortcuts.
And its not always the best practice to execute. In this example we only use key q
but most keyboards have 100 keys. In other words 20 multiply with 100 is 2000
different shortcuts combinations. :slight_smile:

Happy Valentine

Thanks for clarifying Fredrik, that does sound really cool! Probably not going to happen for 3.0 but I can keep it in mind for later.

@redsweater, fingers crossed… :slight_smile:

In mean time here is example of a user how have take it to next level
and use midi to do it. It will give you some ideas what is possible.

And with ideas from Sensel we could have custom layouts for touch device that could communicate with a mac.

Trackpad or any touch device is truly powerful and useful.

Hi @ionah - thanks again for this feedback. I wanted to let you know that in the latest FastScripts 3.0 beta (3.0b38), I’ve addressed this issue. You should be able to invoke scripts that were freshly added since the last time the FS menu icon was clicked, and conversely, you will no longer be able to invoke a script that was since removed. FastScripts now dynamically updates the scripts at the portion of the script hierarchy where you are trying to invoke. Let me know if you spot any other issues!

Hi @redsweater

That’s great!

Unfortunately, I will not be able to send you feedback on it, as I’m stuck on High Sierra: I can’t find the time to make the update.

I hope I will be back in a couple of weeks with a brand new Catalina installed.

Cool, thanks for letting me know. It will be waiting for you when you eventually get a chance to update.

Daniel @redsweater, I had to quit the FastScripts beta, and on relaunch it now says the pre-release copy has expired. I still have my FastScripts 2 license, but wanted to let you know. FYI, the dialog about expiration references MarsEdit, not FastScripts.

Ah, sorry about that! The latest version is 3.0b41 which shouldn’t expire until May 9. You can download a fresh copy here:

Thanks for noticing the mistake referencing MarsEdit instead of FastScripts! I’ll get that fixed.

Hey folks - I am getting closer to finishing up 3.0 but have a few more loose ends to tie up. Today I’ve just posted another beta update, 3.0b42. You can “Check for Updates” if you’re already running a 3.0 beta, or download a fresh copy here:

The main change in this update is a new behavior to automatically focus on the first search result and to invoke it if you press return. This means you can now activate FastScripts, type a search term, and press return to invoke whatever the first match is. Kind of handy for things you know you will invoke often.

Folks who are enjoying the beta may have run up against an expiring beta. I let the last beta expire and didn’t get the newer version out until the very day of the expiration. If you are already running a FastScripts 3 beta you should be able to get the latest by selecting Check for Update within the app’s preferences. Otherwise you can download an updated beta here:

I hope to get 3.0 finalized in the next month or two!


Hi Daniel,

Does FastScripts 3 sync between Macs i.e. will it sync the keyboard shortcuts I create for FS on each Mac? If so, how will it handle the situation where I frustratingly have a different username on each Mac so the file paths to scripts will be the same if it begins with a ~/ but different if written out in full from /Users/?

Unfortunately FastScripts doesn’t do any syncing of scripts or shortcuts on its own, but if you do export/imporpt the preferences from one Mac to another, the keyboard shortcuts should resolve for the respective scripts as long as they are in the same relative location of each script folder. FastScripts doesn’t hard code the full path using the user name, but stores the scripts as relative paths from the script folder they are in.

Okay, good to know about the relative paths, thanks.

Can I request syncing for FastScripts 4.0? :wink: I have a work Mac and a – um, I guess – play Mac and I love stuff that syncs between them. I’ve got the paid version of FastScripts 2 and I also use Keyboard Maestro for executing scripts. Generally I prefer FastScripts for executing scripts as it’s way simpler and easier and more targeted to just that task, but I do have a bunch of scripts and keyboard shortcuts set up in KM from before I knew about FS. THE OCD ocdopus in my brain tells me to move all those scripts from KM to FS for consistency and purity etc, but the practical side of my brain tells me not to waste time tinkering with things that already work. But one other reason KM works well for executing scripts is that they sync across multiple Macs by saving your preferences file in Dropbox. It’s nice when (as I had to do recently) I need to update the script and shortcut on one Mac it automatically syncs on the other.

And another feature request for FastScripts 3 (maybe version 3.1 if you like) – could you please add a GUI for adding/changing the scripts folders that FS looks at? I prefer to keep my scripts in Dropbox so again they sync etc. I know there’s the way to change it using defaults write and I’ll also look at using symlinks but I think a GUI to manage the scripts folder would be great. In fact now I think of it perhaps you’ve already done this so I should probably go download the beta. :grin:

If you want to build your own syncing system, and not deal with the preference file, take a look at the FastScripts dictionary:

script item
keyboard shortcut get/set key combination The key combination assigned as the shortcut for this script, if any.

Can you not set your FastScripts library to be stored in Dropbox ?

Actually, I’d go with you initial gut that was cajoling you to centralise your scripts to a single location that can be sourced by whatever program needs it. I did this before, and intend to again when I set up properly. I seem to remember Fast Scripts was fine with my custom folder path.