PDA

View Full Version : x11 keyboard layout


Drolyk
14th October 2008, 07:50 PM
Hi All!

I have a problem with switching keyboard layout from 'us' to 'ru'. In system-config-keyboard I choose "Russian". I know that all input devices now handled by hal and not by xorg.conf. Here is relevant part of hal-device output:

4: udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port_logicaldev_input'
info.subsystem = 'input' (string)
input.xkb.model = 'pc105' (string)
info.product = 'AT Translated Set 2 keyboard' (string)
input.keymap.data = { 'e001:fn_esc', 'e009:battery', 'e00a:screenlock', 'e00b:camera', 'e00c:media', 'e00e:dvd', 'e031:help', 'e033:f21', 'e057:wlan', 'e008
:player', 'e058:f22', 'e059:f23' } (string list)
input.xkb.layout = 'us,ru' (string)
info.category = 'input' (string)
info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port_logicaldev_input' (string)
input.xkb.options = 'grp:shifts_toggle,grp_led:scroll' (string)
input.x11_driver = 'evdev' (string)
linux.sysfs_path = '/sys/devices/platform/i8042/serio0/input/input5/event5' (string)
input.device = '/dev/input/event5' (string)
info.callouts.add = { 'hal-setup-keymap', 'fedora-setup-keyboard' } (string list)
info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port' (string)
info.capabilities = { 'input', 'input.keyboard', 'input.keypad', 'input.keys', 'input.keymap', 'button' } (string list)
input.product = 'AT Translated Set 2 keyboard' (string)
input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_KBD_port' (string)
linux.hotplug_type = 2 (0x2) (int)
info.addons.singleton = { 'hald-addon-input' } (string list)
linux.subsystem = 'input' (string)
linux.device_file = '/dev/input/event5' (string)
input.xkb.rules = 'base' (string)

According to it layout switch is - "left_shift + right_shift", but it doesn`t work. Also there is no Russian layout in gnome-keyboard-layout-switcher applet.

Does any one have similar problem with x11 layouts ?

Drolyk
15th October 2008, 08:12 AM
Some more information :)

For custom xkb setting I put following file in /etc/hal/fdi/policy/ :

$ cat /etc/hal/fdi/policy/x11-input.fdi
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.options" type="string">grp:alt_shift_toggle,grp_led:scroll</merge>
</match>
</device>
</deviceinfo>

but it works if I disable system-config-keyboard`s hook:

$ sudo chmod -x /usr/bin/fedora-setup-keyboard

But even if hal reports that all settings are fine, I can`t switch keyboard layout to Russian :(