A couple of weeks ago I was looking for a solution to a problem I had with a repetitive task that I wanted to speed up or automate. At the time I figured tha Keyboard Maestro from Stairways Software would be worth a trial, and as luck would have it, the app was part of an offer from MacTrast (ends 27/8/14) so I picked it up.

Now as it happens, I wasn’t able to get the app to do what I wanted it in a reasonable timeframe (I’m sure that I ultimately could get it to do what I wanted but it wouldn’t be an efficient use of my time). But while researching how to do things I came up across a really useful thing that I’ve now got Keyboard Maestro doing for me.

Whether visiting clients or in my own office I usually have different apps or documents open, or I’ll have my machine configured slightly differently, based on where I am. For example, when I’m on one particular site I’ll have a Windows 7 virtual machine open so I can work on the clients Sage system.

The way I use Keyboard Maestro to do that is quite simple. The software allows me to set up triggers to carry out actions (and the list of actions possible is amazingly diverse). Triggers can be things like keyboard shortcuts (Cmd-Shift-Option-Z for example), a tyoed string of characters, a particular device being connected to your computer, or in the case of my Sage using client, a particular wireless network being joined. So Keyboard Maestro sits in the background, and as soon as it sees that I’ve joined the client’s wireless network, it starts up my VMWare program and loads the appropriate virtual machine (as well as launching a script that connects all the appropriate network drives to my Mac and opening various other documents specific to my work at this client).

As an aside, one of the other things I do when swapping from one network to another is get Keyboard Maestro to change my Network Location. I’ve set up multiple locations (rather than just using Automatic) because I’ve found recently that changing DNS servers based on what network you are connected to can make a noticeable difference to web performance. For client sites I visit regularly, I will run a program called Namebench from Google that scans all the DNS services available to you from that location, and recommends the best three for you to use. I then create a Network Location for use at that client, with Namebench’s recommendations as the DNS servers to improve DNS resolution performance at that site. So far I’ve not found a single site where Google’s DNS servers (, etc) are faster than the other available ones.

Keyboard Maestro macro to start Lightroom when Duo is connected

For photographers using the ToughTech Duo device I recommend, you may have found that if you start Lightroom before connecting the unit, LR5 will default to your internal drive. So I’ve now set up a new trigger; when I connect my Duo to my machine, Lightroom starts automatically. And I’ve created a second one that automatically ejects the drive when Lightroom quits (after the LR backup completes).

I haven’t got round to creating the appropriate macros yet, but I can imagine creating different ones that might be triggered based on time (open/close all my work apps), an app being launched (quit everything else if I start watching a movie or playing a game to avoid being distracted) or a specific USB drive being connected (perhaps to copy the contents of a client folder on my machine to it for safekeeping).

Now I realise that these are all tiny little steps into the world of automation, but for anybody that finds themselves repeating setup or configurations tasks based on where they are or what they are connected to, Keyboard Maestro seems at this stage to be a real timesaver. Give it a try and let me know what cool tasks you can automate in your setup!

Have a great bank holiday weekend; I’ll be back early next week with the next part in my holiday posts.