I set up a shortcut in System Preferences → Keyboard → Keyboard Shortcuts:
But it doesn't work. What's wrong?
Add it as a global shortcut (under All Applications, not System Preferences), and include an ellipsis in the menu name (either
The only apps this method works for are System Preferences, System Information, and App Store. For others, see:
When you add a keyboard shortcut and list it for a particular application, the key binding only applies when that application is active. Thus, if you made Control-Shift-Z a shortcut for Zoom and applied that to Safari, that would mean that in Safari, and only in Safari, pressing Control-Shift-Z would zoom (i.e. same as clicking the the green button in the upper left hand corner of the window). Binding keyboard shortcuts to particular applications usually makes sense because each application has its own set of menu commands.
In your particular case, creating a key binding to launch System Preferences and binding it to System Preferences is guaranteed to never do what you want, because the only time it would launch System Preferences would be when System Preferences is already the active application.
The fix is to insert
System Preferences... (with three periods, not an ellipse) as a shortcut in the All Applications section.