I have been experiencing some weird keyboard issues lately.
After switching back and forth between my Virtual machine (Win7) and my host machine (Ubuntu 11.10 - gnome shell), characters that require the SHIFT key to work, simply don't - the problem is on the host, not the VM. One example would be the @ sign.

Sometimes it takes hours before it happens, other times just a few minutes.

I am using Vmware workstation 8 for Linux.

Any ideas?