VNC and VMWare - maintaining keycodes with Linux vnc4server...

Peter Valdemar Mørch swp5jhu02 "at" sneakemail.com
Wed Dec 8 10:56:01 2004


We're trying to use VMWare under a VNC session over Linux. We've 
discovered that VMWare works way better, when the keycodes sent to 
VMWare are similar to what you get with a vanilla X-server.

We've discovered using xev, that when we use VNC with vnc4server, the 
keycodes generated e.g. by hitting the buttons ("k", "l", "f", "x", and 
"'") (in sequence left-to-right on my danish keyboard) are (45, 46, 47, 
48, 51) with one KeyPress and one KeyRelease for each. Under vnc4server 
(4.X) we get (45, 46, 254, 253, 48) for the similar sequence. For some 
special chars e.g. '|' using the AltGr, even the number of events differs.

We also discovered, that if we set up "Native X display support" as 
described in the FAQ:
http://www.realvnc.com/faq.html#x0
we get keycodes that are much more similar to vanilla X (identical in 
the above example), and VMWare works much better because of it.

Now we are several users that want to have each our own VNC desktops, 
and so we guessed we could start X up with Load "vnc" in each of them. 
However, this works only for one X session, apparently. We don't seem to 
be able to specify the port.

Running VNC on Windows poses none of these problems, but for other 
reasons, we prefer Linux.

Finally, questions:

1) Can I force VNC to use keycode mapping similar to what you get with 
"Normal X" without "Native X display support"? Can I 'configure the 
virtual keyboard language/flavor', somehow?

2) Can I do "Native X display support" for multiple Native X displays, 
eg. :0, :1 and :2 VNC somehow, allowing for similar-to-vanilla-X 
keycodes in all of them? We don't seem to be able to specify the port...

3) Even with "Native X display support" VMWare over VNC works better, 
not perfect. There are still problems with some AltGr keys, notably |, @ 
and \ (pipe, at and backslash in case the mailing list messes this up). 
  But at least >:'+= etc work more or less right. Is there some other 
way to get VMWare to work properly under VNC even with the AltGR keys?

Right now, depending on which vncserver,client combo used for VMWare 
over VNC we can't enter many special chars, e.g.: ">|=:" ( => No pipes, 
   redirections or vi!) - troublesome sysadmin indeed! So any help is 
appreciated.

Peter

FYI: VMWare has their Linux keyboard story here:
http://www.vmware.com/support/ws45/doc/devices_linux_kb_ws.html#1040861

-- 
Peter Valdemar Mxrch
http://www.morch.com