Contributor
Contributor

VNC and keyboard layout

Hello

I am running VMWare on a WINXP desktop in the next room.

I have UltraVNC running on it so I can use it remotely from my laptop.

When I run a VMWare image, the keyboard layout is malfunctioning, but only when use the machine remotely, not locally, and only on VMWare, not on the desktop of that machine.

I also tried another remote software, realvnc, same problem though...

Before I get into further detail, has anyone ever come accross this kind of issue?

Thank you for your support

0 Kudos
12 Replies
Champion
Champion

Can you define "malfunctioning" in a bit more detail? FWIW, you might want to do forum searches for keyboard layout, vnc then vnc and keyboard layout. I recall a few VNC issues that I think were keyboard focussed but I can't remember details and am not certain. There are many comments on keyboard layout problems but they are usually caused by different keyboard languages and, in some cases, laptop keyboards with different layouts from the remote system. I'd suspect the latter is most likely in your scenario.

0 Kudos
Contributor
Contributor

Well I did a forum search but did not come up with an appropriate solution.

I will look again (did a search for "VNC" and "keyboard", will try with other keywords)

Thank you for your kind and quick response.

Here are some more infos on "malfunctioning":

I use a UK keyboard layout on my laptop.

Most letters are working fine, except for the y and z

The problem I have is that I cannot do a colon. Most of the "special" characters like colon, semicolon dont work. I was looking at a few keyboard layouts to figure it out if it could be a specific one, but it isnt. Its rather some kind of mix, and some SHIFT combinations create no characters at all (which supports the laptop keyboard theory imo)

If you need any more infos, I would be glad to provide them.

Meanwhile I will search the forums.

Thank you so far

Mat

0 Kudos
Contributor
Contributor

Was there no solution to this vmware?

I have a similiar problem:

When starting windows in vmware which runs under vncserver vmware complains:

"A language specific mapping from X keysyms to machine scancodes will

be used based on the detected keyboard type of "us104" because

you are not using an XFree86 server running on the local mmachine.

However this program's language-specific mapping mmay not be correct

for your keyboard in all details because X keyboard mappings vary.

You can override specific key mappings in the virtual-machine

configuration.

For more information please see VMWare Workstation documentation

available on our Web site at "http://www.vmware.com/info?id=10"

I use a pc105 keyboard with swedish layout "se"

I use tightvnc to connect to the tight vnsserver, swedish keys work as epected

in the console windows and in other applications (firefox, thunderbird, kde/konsole)

The vmware workstation itself handles swedish layout correctly.

How to I set the keyboard layout in the virtual machine settings, I fail to find where.

The URL in the help message does not exist.

/O

Message was edited by:

Offpist2000

0 Kudos
Expert
Expert

To clarify the basic problem is the computer with VNC Viewer has one keyboard layout and the computer with VNC Server that is also running the VM Ware guest has another keyboard layout. On top of this the OS installed on the VM guest will have its own keyboard layout !

The best I can suggest in the short term is to make sure that all three are running the same keyboard layout. Although if the VNC Server is also used directly rather than always through the VNC Viewer the chosen layout may be confusing.

I appreciate that different input locales make the suggestion above impossible so in that case it's just like using the VM Ware guest directly with a different input locale it becomes a case of remembering which keys are which !

Sorry if that's no real help

0 Kudos
Contributor
Contributor

Did you manage to have the same keyboard layout?

I have the same layout all the way through but vmware complains

and sets the keyboard to the default pc104 with us layout.

It seems to not be able to get the keyboard properties from Xvnc/vncviewer

when vmware is started. There seems to have been some setting in vmware to

force a keyboard setting, at least that is what I interpret from the help message.

A workaround for this would probably to set keyboard properties manually but

I cannot find where to do this.

0 Kudos
Expert
Expert

I think since the keyboards here are lower tech standard 101/ 102 or Microsoft Natural Ps2, unfortunately this maybe dodging the problem that you are experiencing.

It maybe worth trying with the old things and see if it is any better.

0 Kudos
Contributor
Contributor

Hi,

I am evaluating VMware Workstation 6.0.0.45731. I can connect with several VNC-clients (tightVNC, ultraVNC, realVNC) but all special keys like: \, /, ~, ß, öäüÖÄÜ etc. are not properly received. I have also tried all possible VNC encodings (tight, raw, ...).

Every system (VMware host, VMware client, VNC client) is using the same keyboard layout (german (ibm)), but the VMware client system is running an US version of Windows 2003.

VMware console works like a charm.

Any help would be appreciated.

Thanks,

Michael

0 Kudos
Contributor
Contributor

vnc-keyboard mappings can be applied by editing the *.vmx file. By adding the following line:

RemoteDisplay.vnc.keymap = "de"

one can tell VMware's VNC-server to use the Germany keyboard mapping.

see http://www.vmware.com/community/thread.jspa?messageID=628773

Unfortunately, the ALT-GR-key is not send...

Michael

0 Kudos
Contributor
Contributor

You can also retrieve here my personal tries for vnc keyboard

http://www.vmware.com/community/thread.jspa?threadID=84060&tstart=150

0 Kudos
Contributor
Contributor

I've done some research on this topic:

(open file "all users\application data\vmware\vnckeymap\de")

1. if you swap the scan-code assignments of alt-l and alt-r

0xffe9 = 0x0138 # XK_Alt_L was: 0xffe9 = 0x0038

0xffea = 0x0038 # XK_Alt_R was: 0xffea = 0x0138

you get a fully functional alt-r (aka alt-gr) key on your left alt key

2. if you swap the scan-code assignments of "A" and alt-r

0x0041 = 0x0138 # XK_Alt_R was: 0xffea = 0x0138

0xffea = 0x001e # XK_A was: 0x0041 = 0x001e

you get a fully functional alt-r key by pressing shift+a. By pressing alt-r you receive a ^A (aka ctrl + A). If you open the windows explorer, you're able to select all files by pressing your alt-r key.

Conclusion:

I think, the problem might be, that either

(a) a vnc-client always sends the ctrl keycode along with a pressed alt-r key, or

(b) vmware's vnc-server accidentially creates a ctrl-scancode on receipt of a alt-r key

Hope, this information might be of any help.

Michael

0 Kudos
Contributor
Contributor

on inverting the Right-ALT with the right-CTRL on the fr file, i am able to make the FR keyboard on vnc client with a FR virtual machine working with this workaround.

It's mandatory to use the right ctrl instead of alt-gr.

For an EN keyboard for vnc client with a FR virtual machine the problem is linked to the way the shifted or unshifted keys are managed on FR and EN Keyboard

When I press the key n°2 ((1 !) on an En keyboard), it's converted by the vnc client on keysim XK_1

The vmware vnc server convert the keysim XK_1 on

the key N°2 on FR keyboard which is (& 1) the key is here not shifted => I write a & instead of 1

When I press the shift + key n°2 ((1 !) on an En keyboard), it's converted by the vnc client on keysims XK_Shift_L + XK_exclam

The vmware vnc server convert the keysims XK_Shift_L + XK_exclam on the keys

shift + the key N°56 on FR keyboard which is (! §) the key is here shifted => I write a § instead of !

the vnc server console seems not able to add or remove the shift when necessary

This cannot be handled by key swap on the config file ...

0 Kudos
Contributor
Contributor

Is there any other way to make AltGr work?

I need to pass data from my barcodescanner ("|", "@", "#") and so on.

As a result i can not press any other key (like alt-l)

I'm using Ultra-VNC 1.0.2 which does send the AltGR key.

0 Kudos