Sometimes modifier keys on the keyboard may not work properly. If this is the case, you may find that either specific keys will not work, or certain combinations of keys will not work.
In most cases when this happens it's account-specific based on settings, but may be global as well if the keyboard hardware is not being recognized properly. To test this, try creating a new test user account in the "Accounts" system preferences, and log into that. While you can do this with fast-user switching enabled, it would be preferable to log out of your current account first to prevent any chance of active processes from interfering with the new account's settings.
There are a number of possibilities why the system will not recognize input, including if you are using various system services that reserve commands and keys, if there are any corruption in plist files that contain keyboard settings, or quite commonly if the foremost application has been developed to override system keyboard settings.
OS X provides a variety of services that can make use of various key combinations to better implement their features. For instance, if the system's system's speech recognition feature is enabled, you can activate it by pressing and holding the escape key; however, this default key can be changed to another key combination that could be used in other areas (ie, command-C), which may override its use elsewhere when the service is active. Be sure to check the settings for speech recognition, Universal Access, and Expose/Spaces to ensure no shortcuts conflict with others.
In addition to the speech settings, you can set a number of other system features such as expose, front row, and screen shots, to use different commands than the default ones. This can be done in the "Keyboard" system preferences under the "Keyboard Shortcuts" tab. Many other keyboard shortcuts, including those for speech recognition and Expose/Spaces may also be reflected in the "Keyboard Shortcuts" settings.
If there is corruption in the following plist files, the system may not properly recognize key commands. Try moving them to the trash and then logging out and back in to see if that clears the problem.
Specific key combinations may not be enabled depending on which are reserved by the foremost application. While a number of key combinations are standard for the system (ie, the copy command), a developer can implement the use of any command to override these system defaults.
There are more basic reasons why keys or shortcuts will not work, which I outlined in a. Several options you can try if your keyboard does not seem to be working as expected are:
- Change the USB port
- Startup in Safe Mode
- Reset the PRAM
- Clear caches with OnyX (or another maintenance utility)
- Fix permissions
- Reinstall third-party drivers for non-apple keyboards