macOS has some useful keyboard shortcuts out of the box, but many apps on the market extend what you can do with the click of a few buttons. Most of them follow a simple formula of triggers and actions, allowing you to chain together commands and automate your workflow.
All the tools on this list do slightly different things, and most of them have way more features than just custom hotkeys. The best part is, they all work well together, so if you can’t get something done with one tool, you can always use another.
BetterTouchTool: Turn Your Trackpad Gestures into Hotkeys
BetterTouchTool lets you map trackpad gestures to system actions, including custom keyboard shortcuts. Its core functionality is simple: select an app to configure (or “Global” for all apps), add a gesture, and then tell it what you want that gesture to do. BetterTouchTool includes hundreds of different gestures, even more if you have Force Touch, and any action you could think of. Want to execute a shell script by clicking with four fingers? BetterTouchTool can do that.
It also has bindings for keyboards, the Magic Mouse and normal mice, the Siri remote, and even the TouchBar, all of which you can configure with custom buttons and sliders attached to Applescript actions.
Beyond gestures and hotkeys, BetterTouchTool has a lot of other features, such as:
- Configuring the Haptic Feedback engine with custom clicks and values
- Complete control over how your trackpad functions
- Windows-style window resizing
- A built-in web server to trigger actions over the internet
- Floating HTML context menus
- It’s own companion remote app
BetterTouchTool is not free, but at $6.50, it’s something worth the price. I personally can’t use my Mac without it.
Alfred: Extend Spotlight Search with Hotkeys
The free version of Alfred is a drop-in replacement for macOS’s native Spotlight search. Alfred adds lots of new functionality, such as searching the web from the prompt, using a calculator without having to fire up the Calculator app, or the using Quick Look inside of Spotlight by pressing Shift.
With the pro version, called “Powerpack,” Alfred gains even more new features, such as hotkeys, workflows, and terminal integration.
Keyboard Maestro: Dead Simple Custom Hotkeys
Keyboard Maestro is a simple app that gets its job done: automating your system with macros and hotkeys. It’s similar to BetterTouchTool but more streamlined, and with simpler triggers and actions. It follows the same scheme of triggers and actions and supports running Applescript and Automator workflows as actions.
Hammerspoon: Control Your System with Lua
Hammerspoon is probably the closest you’ll get to AutoHotKey for macOS. Mostly, it’s just a menubar app that runs Lua scripts and extends system actions to those scripts through its API. While it’s a little more advanced than some of the other apps we include here, Hammerspoon offers a powerful way to communicate with the system at a reasonably low level—it can intercept USB events directly, control local devices, and even automate your mouse and keyboard.
Hammerspoon doesn’t do anything except sit in your menu bar until you write scripts for it. You can check out their getting started guide for more info.
Automator and Shortcuts: The Built-in Solution
If you’re an Automator fan, you’ll appreciate this trick. If you create a new Service, you can launch it with a shortcut in System Preferences > Keyboard > Shortcuts > Services. This lets you do anything you can with Automator at a click of a button, instead of having to open the context menu. The best part is that Automator is free and comes bundled with macOS, so there’s a lot of community support for it, as well as many prebuilt scripts and workflows.
Automator also works seamlessly with almost every other app on this list, all of which can run Automator workflows.
Enjoyable: Use Controllers as a Keyboard
Enjoyable is unlike the other apps on this list. It only has one function: connect your controller to your keyboard. Just plug your controller in, hit the button you want to bind, and then hit the key to which you want to bind that button. It’s handy for games that don’t support controllers, or just any time you’d like to use a controller to move your mouse around. It works on a reasonably low level—supporting individual button and axis IDs—so it works with nearly every controller out there.
I connected it to a 15-year-old GameCube controller, and it handled it just fine. Like Automator, you can use it in combination with other tools on this list to do more advanced things.
Image Credit: Shutterstock