I refuse to use Cmd+Tab to juggle 12 open Mac apps
Sometimes the shortcut cmd+tab is not so useful to navigate the many apps I have open while I work on my Mac. Here’s what I do instead.
The first change was simple: reassign Cmd+Space to show only applications. Go to
System Settings → Keyboard → Keyboard Shortcuts → Spotlight, and set “Show Apps” to Cmd+Space.
I moved the full Spotlight search to shift+cmd+space.
Now instead of tabbing through a carousel of app icons, I just start typing the name of the app I want. The results are faster and cleaner than default Spotlight. This alone was a meaningful upgrade.
But if you’re comfortable with a bit of Lua and don’t mind a small setup investment, pairing Hammerspoon with Karabiner-Elements takes it further.
I rarely use capslock, so I repurposed it entirely. Karabiner turns it into a Hyper Key (⌃⌥⇧⌘) with the rule caps_lock_to_hyper_or_esc_if_alone. I also remapped cmd+tab so that ‘h’ and ‘l’ keys navigate the app switcher instead of the arrow keys with rule vim_like_switch_apps, keeping my hands on the home row.
Hammerspoon (with AppLauncher) handles the rest, and the script is straightforward.
$HOME/.hammerspoon/Spoonscmd+tab rule (optional) vim_like_switch_apps$HOME/.hammerspoon/init.lua.
You can use the below script as a launching point for your own config.hs.loadSpoon("AppLauncher")local hyper = { "control", "option", "cmd", "shift" }spoon.AppLauncher.modifiers = hyperspoon.AppLauncher:bindHotkeys( { v = "Vivaldi", z = "Zed", p = "Proton Mail", t = "Trello", o = "Obsidian", c = "Calendar", n = "Notion", i = "IntelliJ IDEA" })Karabiner converts caplock to "control", "option", "cmd", "shift" for Hammerspoon.
If you need to use capslock as its original purpose you can use cmd+capslock to toggle it on or off.
I built app-launch shortcuts such as capslock+z for Zed, capslock+i for IntelliJ IDEA in the Hammerspoon Lua config.
These two modifications have made it much easier for me to navigate to other apps. At this point my fingers have memorized the movements, and I don’t have to think about it.