A long time customer came in the other day and requested that a new keyboard be installed into his MacBook. On this model MacBook, the keyboard is integrated into the top case, which also includes the trackpad, wrist rest area, and power button. We assumed he wanted the part replaced due to small cracks on the right wrist rest area, and we got the machine back to him by the next morning.
He returned a few minutes later saying that his problem hadn’t been solved: he still could not type a capital S. My first instinct would be to replace the keyboard, but not after eliminating software as the root cause. Turns out in this case a corrupt preference file was to blame for this extremely odd behavior.
The first step was to create a test user account on the computer to see if the issue would be present there. The keyboard worked perfectly under the new user, so I knew then to search for the cause in the other user’s home folder instead of the global preferences found at the root of the hard drive. I’ve seen odd keyboard behavior resolved by removing the .GlobalPreferences.plist file from ~/Library/Preferences. Note that this is a hidden file—any file beginning with a period will not be visible in the Finder. Once removed, I logged out of the user and logged back in, but the problem persisted.
As I scrolled about the screen, I noticed that VoiceOver, which I had not been paying attention to in the past, was active with many other Universal Access features. I set out to delete all the preference files related to Universal Access, logged out and back in, and was delighted that some preference file related to Universal Access was to blame.