first, a short intro to the problem. i'm setting up a czech computer. it has a usb keyboard and a usb barcode scanner. the thing is, in czech keyboard layout pressing the 1234567890 keys (those below F1, F2, F3..., not the ones from numeric keypad) you get czech characters. you need to press shift+1,shift+2, etc to get actual numbers in that layout (or turn on numlock and use numeric keypad). since any workaround configured on the scanner didn't seem to help, i tried to set up devices by hal as follows : --------------------------------------------------------------------- /etc/hal/fdi/policy/10-keymap.fdi <?xml version=„1.0” encoding=„ISO-8859-1”?> <!— * SGML * —> <deviceinfo version=„0.2”> <!-- barcode scanner, polish layout --> <device> <match key=„info.capabilities” contains=„input.keymap”> <append key=„info.callouts.add” type=„strlist”>hal-setup-keymap</append> </match> <match key=„input.product” contains=„Symbol”> <merge key=„input.xkb.rules” type=„string”>base</merge> <merge key=„input.xkb.model” type=„string”>keyboard</merge> <match key=”/org/freedesktop/Hal/devices/computer:system.kernel.name” string=„Linux”> <merge key=„input.xkb.model” type=„string”>evdev</merge> <merge key=„input.xkb.layout” type=„string”>pl</merge> <merge key=„input.xkb.variant” type=„string” /> </match> </match> </device> <!-- keyboard, czech layout--> <device> <match key=„info.capabilities” contains=„input.keymap”> <append key=„info.callouts.add” type=„strlist”>hal-setup-keymap</append> </match> <match key=„input.product” contains=„keyboard”> <merge key=„input.xkb.rules” type=„string”>base</merge> <!— If we’re using Linux, we use evdev by default (falling back to keyboard otherwise). —> <merge key=„input.xkb.model” type=„string”>keyboard</merge> <match key=”/org/freedesktop/Hal/devices/computer:system.kernel.name” string=„Linux”> <merge key=„input.xkb.model” type=„string”>evdev</merge> </match> <merge key=„input.xkb.layout” type=„string”>cz</merge> <merge key=„input.xkb.variant” type=„string” /> </match> </device> </deviceinfo> ---------------------------------------------------------------- xorg.conf fragment : (......) Section "ServerFlags" Option "AutoAddDevices" "True" EndSection (.......) ---------------------------------------------------------------- i've set up in xfce keyboard preferences to use system settings. and it shows that it uses a evdev configured keyboard. ========================================================================== the problem : when i start X with bare xterm - it works as expected. barcode scanner works in polish layout and returns digits instead of czech characters. keyboard works in czech layout. when i run windowmaker - it also works as expected. in xfce - both devices use the same layout (usually the czech one). X logs show that evdev is picking up both devices and assigning keyboard layouts to them correctly. therefore, i think something wrong is going on with xfce keyboard layout management, even if set to "system settings" extra info : ------------------------------------------------------------------- # lshal | grep input | grep product input.product = 'Macintosh mouse button emulation' (string) input.product = 'Power Button (CM)' (string) input.product = 'Power Button (FF)' (string) input.product = 'PC Speaker' (string) input.product = 'AT Translated Set 2 keyboard' (string) input.product = '?Symbol Technologies, Inc, 2002 Symbol Bar Code Scanner' (string) input.product = 'Logitech USB-PS/2 Optical Mouse' (string) -------------------------------------------------------------------
xfce4-settings-helper will not change anything if "Use system defaults" is set in the Layout tab of the keyboard settings. However it needs to initialize the libxklavier library and that might have some effect on your setup, but this is not a bug in xfce. Can you build xfce4-settings without libxklavier support (pass --disable-libxklavier to the ./configure script)?
this will have to wait until i have a hold of two keyboards (or a barcode scanner) again. i've already shipped the pc with barcode scanner to the customer. i'll try tinkering with usb keyboard + ps/2 keyboard combination this week.
I'm getting a similar issue. My script to load the .Xmodmap keymap is not recognized when I place it as a startup application under "Session and Autostart". I am using Debian 6.0.2 with xfce4.6.2. The wiki also describes this as an issue: http://wiki.xfce.org/faq
sorry; wrong bug to post about.
Any news on this?
Closing the bugreport as the problem cannot be reproduced. If you still encounter this bug, please feel free to reopen it and post ways to reproduce the issue.