Keyboard shortcuts for various commands are exceptionally useful for speeding up your workflow, and many applications have some set of custom keyboard shortcuts (beyond those reserved for system functions), that can be used for common functions. Though these are convenient, many times applications will have frequently used functions that do not have an associated keyboard shortcut.
MacFixIt reader "Richard" recently wrote in asking about the options for setting custom keyboard shortcuts:
Program menus list keystroke combinations (presumably the most popular) for some functions; for the others you must position the cursor on it and click. Using Pages (4.0.3) in iWork '09, I constantly use Instant Alpha, which has no assigned keystroke, in the Format menu. Positioning the cursor again and again is becoming irritating. Is there a way to assign a keystroke to Instant Alpha? Widening this query, is there a way to assign a keystroke to menu functions for any program?
Apple has a built-in keyboard shortcut assignment feature where you can customize some system shortcuts, and also assign unused shortcuts to application functions. The tool is rather easy to set up, and should allow you to use any of a variety of keyboard combinations for practically any OS X application.
First, open the Keyboard system preferences, and go to the "Keyboard Shortcuts" tab. In here you will see a list of system functions such as Expose and Spaces, Screen Shots, and Spotlight. If you select any of these you will see the currently assigned shortcut, and can disable it by toggling the check box next to the function's entry. You can also change the shortcut to something else by double-clicking the shortcut command, and then pressing the shortcut keys that you want for the command.
The listed shortcuts are system-wide, and should function in all applications regardless of which one is in focus; however, for applications such as Pages, you will need to assign a special "Application Shortcut" that will only be functional when the specific application is in focus. In looking at Richard's need for a shortcut to invoke the "Instant Alpha" command, here's how it will be done.
Click the plus symbol under the shortcut list to add a new shortcut, and select Pages from the "Application" list. Initially the list may only be populated with applications that are directly in the /Applications folder, so Pages may not be listed because it is in the /Applications/iWork/ folder by default. Therefore, choose "Other" at the bottom of the list and select Pages that way (it will now appear in the list for future shortcuts).
With Pages selected, type in the exact name of the function you want, as it appears in the application's menus. In this case we will enter "Instant Alpha" without any punctuation, quotes, or other characters. Though the field for this name is called "Menu Title," it is really the command name that goes here.
Next add the keyboard shortcut by clicking the "Keyboard Shortcut" field once so it is selected, and then pressing the keys for the desired shortcut. I have found that the easiest way to assign a shortcut so you remember it is to use the Control-Option-Command keys in the shortcut. These keys are right next to each other on the left-hand side of the keyboard so you can hold all three easily, and it's rare that applications use all three together so it will be less likely to conflict with other shortcuts. Hold these keys and press another character to complete the command, and it should appear in the field.
With the command now set, click the "Add" button to close the window and save the shortcut, and go to the application. If everything worked properly, you should now see the shortcut next to the command in its menu.