OK, so I've already read the KB article on "[Keyboard Mapping Explained (Linux Hosts Only|http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&externalId=363&sliceId=1&docTypeID=DT_KB_1_1&dialogID=58774212&stateId=0%200%2058770931] )", but in only partially helps. Plus it doesn't list VMWare Workstation 6 under "Product Versions", so I'm not sure if it even applies to v.6.
I'll try to quickly explain my situation and see if anyone has any sugguestions/fixes. My host is Gentoo Linux 64-Bit. I have VMWare 6.0.3 build-80004 installed. Everything seems to work just fine on it. I have installed several VM's on it both Windows and Linux. Everything except the keyboard, I should add, or at least part of the keyboard. More precisely, everything to the right of the enter key. So, basically, the arrow keys, ins, home, pg up/down, del, end, prt scrn, scroll lock, pause/break, and they keypad. Now I should add that the numbers on the keypad work, and the arrow buttons on the keypad work if num lock is off. This would be a huge deal, except I use the arrow keys A LOT! In fact my up arrow key is mapped to print screen, so everytime I hit it, I get the darned print screen window popping up in KDE. Ugh!
Once I found the above mentioned KB article, I thougt my problems were over. However their sugguestion is to remap the keys in error. Ok, so that means I will have to remap.... ummm.... 30 KEYS!? Ok, so maybe I will just do the arrow keys since those are the ones I use the most. Since there is no link to VMWare Workstation 6 in the KB, I use the 5.5 instructions. It says to edit ~/.vmware/config. Except I have no ~/.vmware/config file. Ok, so I just create one, put in the
'xkeymap.usekeycodeMapIfXFree86 = true' command (no quotes) they sugguest. Boot into my Linux SuSE VM, still no go. Doesn't appear to have done anything. The sugguest using this instead if the above doesn't work: '
xkeymap.usekeycodeMap = true'. Shutdown VM, edit .config, reboot VM, still no go.
Ok, so I guess I will have to follow the " The Longer Story" guide... ugh! Well, anyway, without getting into all the gory details of that, it kinda works, but now my arrow keys are remapped to something completely different. I am starting to pull my hair out on this. If anyone can help me, please do.
I think I have fixed my own problem. After going back and re-reading the KB article, it states that if I "Never use key code mapping", to set "xkeymap.nokeycodeMap = true" in my ~/.vmware/config file. Once I booted into SuSE, voila! my arrow keys are working again!!! I have yet to extensively test this, but if I encounter anyother problems, I will report back.
I found KB 1007439 which addresses this very thing since I was searching for this problem on Workstation 6.5:
Unfortunately for me while this seems to fix the extended keys, it
completely messes up my alphabetic keys! I already have my keyboard
remapped in the host OS with the dvorak layout. So when I press the A,
S, D, F, G, H, J, K, and L keys, I expect to see "aoeuidhtns". But in
the vm guest it turns out as "ar.gcedybo"!
I need another solution.
Thanks for the post as I'm having the same issue. I'll look into it when I get home. Having said that, I'm also having an issue with the mouse in my guests. When the mouse cursor moves over any text-editable field, whether in a web browser or in MS-Word (for example), the cursor turns into a black box. I have my primary system connected to a KVM and I thought this might be the issue but I connected my monitor/keyboard/mouse directly to my system and it didn't help. I run a few WinXP guests and the mouse behaves the same. I'm running VMware Workstation 6.5.1 for Linux Build 126130 64-bit. I saw there's an update (VMware Workstation 6.5.2 for Linux Build 156735) but nothing in the release notes addresses this issue. I'm curious if you folks have seen this issue as well.
Thanks a million.
I found my own solution. In case anyone else is interested, create or edit ~/.vmware/config or /etc/vmware/config and add the following lines:
xkeymap.language = "us101"
xkeymap.keycode.104 = 0x11c # KP_Enter
xkeymap.keycode.105 = 0x11d # Control_R
xkeymap.keycode.106 = 0x135 # KP_Divide
xkeymap.keycode.107 = 0x137 # Print
xkeymap.keycode.108 = 0x138 # Alt_R
xkeymap.keycode.110 = 0x147 # Home
xkeymap.keycode.111 = 0x148 # Up
xkeymap.keycode.112 = 0x149 # Page Up
xkeymap.keycode.113 = 0x14b # Left
xkeymap.keycode.114 = 0x14d # Right
xkeymap.keycode.115 = 0x14f # End
xkeymap.keycode.116 = 0x150 # Down
xkeymap.keycode.117 = 0x151 # Page Down
xkeymap.keycode.118 = 0x152 # Insert
xkeymap.keycode.119 = 0x153 # Delete
xkeymap.keycode.127 = 0x100 # Pause
xkeymap.keycode.133 = 0x15b # Super_L
xkeymap.keycode.134 = 0x15c # Super_R
xkeymap.keycode.135 = 0x15d # Menu
For those of you who have keyboards other than us101, change xkeymap.language and run `xmodmap -pk' to get your X key codes (the decimal number on the left). If you are having trouble with keys besides the ones listed above, you will need the v-scan codes from http://www.vmware.com/support/ws55/doc/ws_devices_keymap_vscan.html (the hexadecimal number on the right).