OS X keyboard shortcut precedence

I'm new to Apple, and while the experience has largely been positive, I have been stymied trying to configure keyboard shortcuts to my specifications. For example, I used a rather round-about process (via the "Automator") to assign a shortcut to open a new terminal. But even now this this shortcut only seems to function if the focus is on a program which has not overwritten that particular key-combination with its own definition.

I'm looking for information on something like a hierarchy of protocols for how my Mac decides to use which key-combination definition in which context, or a philosophy on the best way to assign my preferred shortcuts. Can I make a keyboard shortcut so high in priority that no application can take precedence?


I think the OS X Human Interface Guidelines are the place you're looking for. They state that there are Apple-reserved shortcuts (e.g. cmd ⌘+space) and also “expected behaviours” (e.g. cmd ⌘+c) one should respect.

While they don't explicitly state the priority, it suggests itself that the System always should have priority before the frontmost (active) and then background applications.

From my experience, you’re on the safe side with multiple modifier keys (i.e. cmd ⌘+ctrl+shift+…).

As an aside: regarding your specific example (assigning a shortcut to open a new terminal) there's also excellent apps for that, TotalTerminal (Terminal.app extension) and iTerm 2 (Terminal.app replacement) come to mind


The shortcuts set in the Keyboard preference pane's Shortcuts tab take precedence over any application shortcuts; in fact, if you dislike an application's preset shortcut or want a shortcut for a menu item that an application hasn't provided one for, you can use the "App Shortcuts" section to override it—though take care to copy the name from the application exactly, including, for example, three dots at the end when the menu option does as in "Save As...".

For instance, it always annoyed me when, trying to close a window with ⌘W, I slipped and hit ⌘Q, quitting my browser without a chance to save anything. So I added a new shortcut in Keyboard Shortcuts for "Quit Google Chrome" as ⌃⌥⇧⌘Q (ctrl-opt-shift-cmd-q). Now ⌘Q did nothing unless I held down those other modifier keys as well.