Workspaces with Keyboard Maestro
Keyboard Maestro is a tremendously useful utility for macOs with a myriad of different use cases. In this post I will describe one of them. There are many times I need to open a set of applications. At work we have a daily meeting every morning, so I need to open the website with the issue tracker, and open Slack with the team channel where we do the online meeting. Other times I want to open a specific programming project with the corresponding issue tracker and documentation.
For a while I used an app called Workspaces for this, until it dawned on me that I could probably use Keyboard Maestro for something similar. I have nothing against the Workspaces app, but there is no need to use two applications when one will suffice.
So I sat down and thought about how this could be done in Keyboard Maestro, and a few minutes later I had a working solution. It is very simple, and it might be useful for other people as well, so here goes.
The workflow is really simple. I define a trigger hot key, in this case SHIFT+CMD+W. When I press it, a series of actions will be performed. First the workflow opens a browser window the issue tracker for the given project, then a shell script executes a command that opens my IDE with the project.
This simple set of instructions saves me a little bit of time every time I use it. I don’t have to find an icon to click, or open the IDE and then navigate to the project to open it. Everything happens at the click of a hot key.
Now, I have defined several of these workspace macros, and they all have the same hot key. So what happens when I press the hot key now? Keyboard Maestro opens a little pallette showing the names of all the matching macros, and by pressing a key, allows me to choose which one to open.
So as I work on different projects, I can add and remove workspace macros, and still only have to remember a single hotkey.
This is just one of the ways with which Keyboard Maestro can help simplify day-to-day work on the Mac. I will add more posts with other neat use cases.