Skip to content

Now and then I like to switch up my tools a bit. And a dependable window manager is an essential tool for any work on the Mac. For a long time I’ve been using Magnet for this purpose, and before that, back in the day I used to rely on SizeUp. All good tools. But last month I stumbled over Moom which is now my new window manager of choice.

It’s got all the standard functionality that I need. Like using keyboard shortcuts to resize and position windows on either side of the screen. And it handles dragging windows to the corners of the screen for resizing only by mouse. You can even override the macOS default behaviour when clicking the green full screen button to get this functionality there:

But the key feature that sets Moom apart is the ability to save snapshots of your window layouts. Say you’re organizing a couple of apps next to each other and resize them to fit your needs:

If you want to come back to this exact layout you can save it as a snapshot in Moom and give it a name. That will add an item in the Moom menu bar where you can choose it to get back to your saved layout.

That’s incredibly handy. But the thing that takes it even one step further is that you can use AppleScript to programmatically invoke that layout later:

tell application "Moom" to arrange windows according to snapshot "Review"

I’m using Keyboard Maestro for doing a lot of automation work. And involving Moom has made this process much simpler for me.

I used to do all the window management that I needed programmatically directly from Keyboard Maestro’s built in window actions. It works, but it’s tedious when you need to update them at a later time.

With Moom I can invoke my layout, do some minor adjustments and then save it to replace my previous snapshot, it can keep the same name which means I don’t need to update any of my other scripts. They still work.

I will write another post later on how I use Keyboard Maestro to set up custom workspaces. But a cornerstone tool in that setup is now window management with Moom.