Skip to content

Remap non-modifiable keyboard shortcuts in any app

Ever run into a program that has some pre-defined keyboard shortcuts you don't like? In most cases, they're associated with a menu item, which means you can use macOS' built-in keyboard shortcuts function to fix them. (In System Preferences > Keyboard > Shortcuts > App Shortcuts.)

But what if the shortcut isn't associated with any menu item? Such is the case in Excel 365, which replaced a couple easy-to-type shortcuts (⌃I and ⌃K for inserting and deleting rows and columns) with much harder to type versions: ⇧⌃= and ⌃-. If there's no corresponding entry in the app's menus, it seems impossible to remap the shortcuts—unless the app itself offers that feature, which Excel did in prior versions.

The good news is that it is possible to remap any keyboard shortcut in any app, as long as you're willing to add one more program to the mix: Some sort of macro app. My example uses Keyboard Maestro, but any app that can send a key sequence in response to another key sequence will do the trick.

Once you've found an app you like, all you need to do is create a new macro that's activated with your preferred shortcut. The actual macro itself is just the predefined "bad" shortcut. You type your "good" shortcut, and the macro program types the "bad" shortcut into the app in question. For example, here's my Keyboard Maestro macro for Delete Row in Excel:

When I press ⌃K, Keyboard Maestro sees it, and immediately sends ⌃- to whatever window happens to be frontmost. I created a similar shortcut for Delete Row, and can add more over time if I find other non-changeable shortcuts.

You may be thinking "Wait, doesn't this create a global assignment of ⌃K, breaking it elsewhere?" The answer is no, thanks to Keyboard Maestro's ability to limit where a macro works: I created an Excel macro group that's restricted to only functioning within Excel:

You can choose from many different constraints for a macro group in Keyboard Maestro; my Excel group is set to be available only within Excel, and only when there's a focused window. I don't have direct experience with other macro tools, but whichever tool you use, make sure it allows you to restrict operations on at least a per-application basis, so you're not creating global keyboard shortcuts.

This is a relatively simple tip, but very effective—after years of typing ⌃I and ⌃K, it was hard to wrap my mind around the new Excel 365 shortcuts. Now I've got my old shortcuts back, and my fingers are much happier for it.