[sisyphus] Обработка .Xkbmap

Alexei V. Mezin alexei-mezin на rambler.ru
Вт Янв 28 21:31:19 MSK 2014


Все, я уже совсем ничего не понимаю... :(

Исходно: в acc удаляем все раскладки, в КДЕ отключаем загрузку 
раскладок. После этого, на мой взгляд, клавиатура настраивается только в 
одном месте (ну и еще ~.Xkbmap, но там только включение точки на 
цифровой клавиатуре):

[root на bigbear ~]# cat /etc/X11/xorg.conf.d/95-input-keyboard.conf
Section "InputClass"
         Identifier      "keyboard"
#       MatchIsKeyboard "true"
         MatchTag        "x11_keyboard"
         Driver  "evdev"
         Option  "XkbLayout"     "us,ru"
         Option  "XkbOptions"    "grp:ctrl_shift_toggle,grp:switch"
EndSection

Уже одно это должно бы работать. Однако нет: КДМ, вход в КДЕ, индикатора 
раскладки нет, да и раскладок тоже нет.

[root на bigbear ~]# setxkbmap -query
rules:      evdev
model:      pc101
layout:     us

В логах Х-сервера что-то странное:

[  1684.743] (**) Option "config_info" 
"udev:/sys/devices/pci0000:00/0000:00:0b.1/usb1/1-5/1-5.1/1-5.1:1.0/input/input13/event2"
[  1684.744] (II) XINPUT: Adding extended input device "HID 04f3:0103" 
(type: KEYBOARD, id 11)
[  1684.744] (**) Option "xkb_rules" "evdev"
[  1684.744] (**) Option "xkb_model" "pc104"
[  1684.744] (**) Option "xkb_layout" "us,ru"
[  1684.744] (**) Option "xkb_options" "grp:ctrl_shift_toggle,grp:switch"
[  1684.769] (II) config/udev: Adding input device HID 04f3:0103 
(/dev/input/event3)
[  1684.769] (**) HID 04f3:0103: Applying InputClass "evdev keyboard 
catchall"
[  1684.769] (II) Using input driver 'evdev' for 'HID 04f3:0103'
[  1684.769] (**) HID 04f3:0103: always reports core events
[  1684.769] (**) evdev: HID 04f3:0103: Device: "/dev/input/event3"
[  1684.769] (--) evdev: HID 04f3:0103: Vendor 0x4f3 Product 0x103
[  1684.769] (--) evdev: HID 04f3:0103: Found 1 mouse buttons
[  1684.769] (--) evdev: HID 04f3:0103: Found scroll wheel(s)
[  1684.769] (--) evdev: HID 04f3:0103: Found relative axes
[  1684.769] (II) evdev: HID 04f3:0103: Forcing relative x/y axes to exist.
[  1684.769] (--) evdev: HID 04f3:0103: Found absolute axes
[  1684.769] (II) evdev: HID 04f3:0103: Forcing absolute x/y axes to exist.
[  1684.769] (--) evdev: HID 04f3:0103: Found keys
[  1684.769] (II) evdev: HID 04f3:0103: Configuring as mouse
[  1684.769] (II) evdev: HID 04f3:0103: Configuring as keyboard
[  1684.769] (II) evdev: HID 04f3:0103: Adding scrollwheel support
[  1684.769] (**) evdev: HID 04f3:0103: YAxisMapping: buttons 4 and 5
[  1684.769] (**) evdev: HID 04f3:0103: EmulateWheelButton: 4, 
EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[  1684.769] (**) Option "config_info" 
"udev:/sys/devices/pci0000:00/0000:00:0b.1/usb1/1-5/1-5.1/1-5.1:1.1/input/input14/event3"
[  1684.769] (II) XINPUT: Adding extended input device "HID 04f3:0103" 
(type: KEYBOARD, id 12)
[  1684.769] (**) Option "xkb_rules" "evdev"
[  1684.769] (**) Option "xkb_model" "pc104"
[  1684.769] (**) Option "xkb_layout" "us"
[  1684.790] (II) evdev: HID 04f3:0103: initialized for relative axes.
[  1684.790] (WW) evdev: HID 04f3:0103: ignoring absolute axes.
[  1684.790] (**) HID 04f3:0103: (accel) keeping acceleration scheme 1
[  1684.790] (**) HID 04f3:0103: (accel) acceleration profile 0
[  1684.790] (**) HID 04f3:0103: (accel) acceleration factor: 2.000
[  1684.790] (**) HID 04f3:0103: (accel) acceleration threshold: 4


HID 04f3:0103 -- это клавиатура. Обычная Genius SlimStar, от совсем уж 
стандартной отличается только кнопками Громче/Тише/Без звука. Сначала 
она добавляется один раз и к ней применяются раскладки, потом она же 
добавляется еще раз, уже только с us. Правда, pc104, а не pc101 как 
показывает потом setxkbmap.

Кстати, перед этим так же два раза добавляется мышка, настройки 
клавиатуры us,ru применяются к веб-камере, и прочие чудесные вещи.


Ну ладно, что-то я делаю не так? Запускаю acc, добавляю две раскладки, 
переключение по ctrl-shift, перезапускаю сессию. Появляется

[root на bigbear ~]# cat /etc/X11/xinit/Xkbmap
-option grp:ctrl_shift_toggle -variant , -layout us,ru -model pc105

КДЕ после входа рисует индикатор раслкдаки, русский на месте.
[root на bigbear ~]# setxkbmap -query
rules:      evdev
model:      pc105
layout:     us,ru
variant:    ,
options:    grp:ctrl_shift_toggle


Однако точки на цифровой клавиатуре все равно нет, и появляется она 
только после запуска fixkeyboard. Хотя запуск должен был бы быть 
автоматический и безусловный.




Подробная информация о списке рассылки Sisyphus