h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
Ситуация, имею настроенную раскладку клавиатуры us,en, настройки в /etc/X11/xorg.conf.d/09-keymap.conf:Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" Option "XkbModel" "evdev" Option "XkbRules" "base" Option "XkbLayout" "us,ru" Option "XkbVariant" ",winkeys" Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll,compose:ralt,terminate:ctrl_alt_bksp" EndSection Ситуация наблюдается такая: после запуска и перезапуска иксов всё работает отлично. Но, после какого-то времени появляется проблема: переключаюсь на русскую раскладку, а через несколько секунд она сбрасывается на US (при этом не важно, производится ввод или нет). xkbevd говорит примерно так: /// <LWIN> = 133; XkbStateNotify event, serial 13, synthetic no, device 3, time 301104653, keycode 133, eventType KeyPress, group= 1*, base= 0, latched= 0, locked= 1*, mods= 0x00, base= 0x00, latched= 0x00, locked= 0x00 grab mods= 0x00, compat grab mods= 0x00 lookup mods= 0x00, compat lookup mods= 0x00 compatState = 0x00, ptr_buttons= 0x0000 /// WTF??? XkbNewKeyboard event, serial 13, synthetic no, device 3, time 301107098, new device: 3 min_keycode: 8, max_keycode 255 old device: 3 min_keycode: 8, max_keycode 255 /// <LCTL> = 37; XkbStateNotify event, serial 13, synthetic no, device 3, time 301107100, keycode 37, eventType KeyPress, group= 0*, base= 0, latched= 0, locked= 0*, mods= 0x04*, base= 0x04*, latched= 0x00, locked= 0x00 grab mods= 0x04*, compat grab mods= 0x04* lookup mods= 0x04*, compat lookup mods= 0x04* compatState = 0x04*, ptr_buttons= 0x0000 Видим: переключатель LWIN, нажимаем, у маня руccкая раскладка (group=1). Через 2.5 секунды прилетает эвент XkbNewKeyboard, откуда он взялся, когда клавиатура ноутбучная и никуда не отключается. При этом id и номер такой же. Что-то в гугле по этому слову тихо как в танке с закрытой крышкой. После его прихода видим группу слетевшую в 0 (US) и почему-то нажата клавиша LCTRL. Временами прилетает SHIFT (keycode = 50). Меня это озадачивает. При этом никаких сторонних переключалок клавиатуры не используется. из работающих программ, пожалуй только xbindkeys, но он сам слушает клавиатуру, ничего не посылает. Opera, skype, psi+, claws-mail, wicd, liferea, osmo, xine (ингает инет-радио, онгда релаксирую глядя на его анимацию), eclipse/qtcreator Модель ноута EeePC 1000HA. С мыслями прошу сюда, без мыслей - впень :)
systemd должен умереть.
|
h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
Гугл разбанил, материалы: http://www.xfree86.org/current/XKBlib.pdf со страницы 199 (в PDF) или 187 в оглавлении http://www.opensource.apple.com/source/ … /printev.c для любителей почитать код Судя по этому: Xkb provides an XkbNewKeyboardNotify event that reports a change in keyboard причина может крыться в какой-то лядской программе или баге в иксах. *xkb* хоть откатывай.
systemd должен умереть.
|
h4tr3d |
|
Темы:
34
Сообщения:
2656
Участник с: 12 июля 2007
|
Программа-диверсант оказалась - xine. Теперь бы придумать багрепорт да воспроизвести проблему не только уменя. Ну, кто попробует? 0. настройки раскладки через xorg.conf (возможно и через setxkbmap) 1. Запустить плейлист на mp3 (не видео) 2. поставить плагин визуализации звука goom 3. запустить проигрывание 4. открыть терминал, запустить там программу xkbevd 5. переключиться на русскую раскладку: обратить внимание что группа в xkbevd переключилась 6. ждать до 10 сек, должен прилететь эвент XkbNewKeyboard и группа сброситься в 0, после чего раскладка должна свалиться в US
systemd должен умереть.
|