Слетает сочетание для переключения раскладки в иксах

Knoppix

Модераторы: Warderer, Модераторы разделов

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

Имеем два компа с wheezy, один обновлённый со squeeze, на другом - чистая установка. На первом Xfce, на втором wmii. В обоих случаях при установке был выбран (за неимением лучшего) вариант переключения раскладки по левой клавише Win. Потом в иксах настроено переключение по левой win на первую раскладку, по правой win/menu на вторую. В случае c Xfce настраивалось через xfce4-xkb-plugin, в случае wmii - через setxkbmap -option grp:win_menu_switch в ~/.wmii/wmiirc_local. В обоих случаях нужное сочетание периодически слетает и начинает работать переключение по левой win. От чего это зависит - понять не могу, но задолбало довольно сильно.
Вопрос: куда прописываются заданные при установке настройки раскладки, и каким образом они могут самопроизвольно восстанавливаться?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Bizdelnick писал(а):
15.04.2013 23:18
Вопрос: куда прописываются заданные при установке настройки раскладки

Может /etc/default/keyboard ?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

Ага, спасибо, похоже на то.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Rootlexx »

Добавлю, что в ручном редактировании данного файла чаще всего нет необходимости: # dpkg-reconfigure keyboard-configuration. Почитайте также /usr/share/doc/keyboard-configuration/README.Debian.
Спасибо сказали:
Аватара пользователя
moonglow
Сообщения: 90
ОС: CentOS

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение moonglow »

Bizdelnick писал(а):
15.04.2013 23:18
Вопрос: куда прописываются заданные при установке настройки раскладки, и каким образом они могут самопроизвольно восстанавливаться?

grep -lir "_switch" /etc и grep -lir "_toggle" /etc ?
[offtop]
в Fedora - в Xorg.conf
/etc/X11/xorg.conf.d/00-anaconda-keyboard.conf
[offtop]
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

Rootlexx писал(а):
16.04.2013 00:57
Добавлю, что в ручном редактировании данного файла чаще всего нет необходимости: # dpkg-reconfigure keyboard-configuration. Почитайте также /usr/share/doc/keyboard-configuration/README.Debian.

Читал, спасибо. Отредактировал вручную, поскольку предположил, что при dpkg-reconfigure будут предложены ровно те же варианты, что и при установке.

Сейчас меня больше волнует вопрос - почему иногда настройки сбрасываются в умолчальные. Хотелось бы иметь возможность настроить разные сочетания для разных юзеров.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Rootlexx »

Bizdelnick писал(а):
16.04.2013 10:40
Сейчас меня больше волнует вопрос - почему иногда настройки сбрасываются в умолчальные.

X-сервер получает системные параметры раскладки через udev, так что стоит помониторить события последнего.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

Хм... Спасибо, попробую.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

Интересно, опять слетело.

Shell

% grep -i xkboptions /etc/default/keyboard # values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options XKBOPTIONS="grp:win_menu_switch,grp_led:scroll"

Правда я даже не разлогинивался с тех пор, как конфиг поправил.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Те default/keyboard кто-то перезаписал?

Хм.. я в этом не очень разбираюсь, если что, но тем не менее вот несколько предложений:
- Вот здесь wiki-debian/XStrikeForce InputHotplugGuide пишут, что для перезаписи настроек клавиатуры (например, если вы хотите иметь в консоли одни, а в X-ах другие) нужно использовать xorg.conf (раздел HOWTO/keyboard). Попробуйте перезаписать настройки (видимо, на те же самые) в xorg.conf, и посмотреть будут ли они слетать снова и будет ли перезаписываться default/keyboard?
- Как уже предложил Rootlexx попробуйте также посмотреть события udev-а, которые происходят в момент сброса настроек.
- udev, видимо, читает настройки из default/keyboard в правиле /lib/udev/rules.d/64-xorg-xkb.rules. Попробуйте изменить это правило и читать настройки из какого-то другог файла - допустим default/keyboard-2, - и тоже проверьте будут ли настройки клавиатуры сбрасываться, и какой файл будет перезаписан - keyboard или keyboard-2.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

sgfault писал(а):
19.04.2013 14:15
Те default/keyboard кто-то перезаписал?

Нет, всё осталось как я прописал.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Bizdelnick писал(а):
19.04.2013 14:27
sgfault писал(а):
19.04.2013 14:15
Те default/keyboard кто-то перезаписал?

Нет, всё осталось как я прописал.

Значит 'grp:win_menu_switch' - это и есть переключение левым win на первую, а правым - на вторую? Аа.. Ну, ладно, я действительно не знаю как настраивается переключение раскладок в xkb, но это не так и важно на самом деле. Это лишь значит, что мое предложение исправить /lib/udev/rules.d/64-xorg-xkb.rules можно заменить на другое: попробовать заново активировать раскладку по совету из keyboard(5) : udevadm trigger --subsystem-match=input --action=change , - после этого раскладка восстановится?
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Не знаю, вы читали эти баги или нет:
debian/#638898/xfce4-xkb-plugin: Second keyboard layout removed after a while, have to keep resetting it
launchpad/#944468/keyboard layouts plugin forgets all settings at random times

Там предложено несколько вариантов исправления, только не очень понятно работают ли они.

Upd.
Вот еще xfce4-xkb-plugin rework.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

sgfault писал(а):
19.04.2013 15:07
Не знаю, вы читали эти баги или нет:
debian/#638898/xfce4-xkb-plugin: Second keyboard layout removed after a while, have to keep resetting it
launchpad/#944468/keyboard layouts plugin forgets all settings at random times

Ещё не читал, спасибо. Похоже, что баг тот же, но ошибку ИМХО ищут совсем не в том месте: как я уже писал, на одной из машин никакого xfce4-xkb-plugin'а нет в помине, а баг проявляется.

sgfault писал(а):
19.04.2013 15:07
Вот еще xfce4-xkb-plugin rework.

А тут более интересная инфа, хотя и применительно к частному случаю того же плагина:
The root cause of losing the layout config is X resetting keyboard
configuration to system defaults (normally in /etc/defaults/keyboard)
whenever a new keyboard is detected.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Bizdelnick писал(а):
19.04.2013 15:34
Похоже, что баг тот же, но ошибку ИМХО ищут совсем не в том месте: как я уже писал, на одной из машин никакого xfce4-xkb-plugin'а нет в помине, а баг проявляется.

Ну, насколько я понимаю, установка настроек через setxkbmap, и правда, должна слетать также, как и настройки плагина, при определении новой клавиатуры. Но вот default/keyboard, видимо, не должен. Но, в любом случае, если X сервер после события udev, измененяющего настройки клавиатуры, применяет соответствующие секции InputClass из своего конфига снова, то настройки, указанные там (в xorg.conf), не должны сбрасываться. И потом, еще менее вероятное предположение, что событие, сбрасывающее настройки у вас, каким-то образом не соответствует условиям из /lib/udev/rules.d/64-xorg-xkb.rules:

Код: Выделить всё

ACTION!="add|change", GOTO="xorg_xkb_end"
SUBSYSTEM!="input", GOTO="xorg_xkb_end"
KERNEL!="event*", GOTO="xorg_xkb_end"

и udev не загружает настройки из default/keyboard.

ЗЫ. Ну, одним словом, видимо, надо сперва поймать суслика.. это событие.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение Bizdelnick »

sgfault писал(а):
19.04.2013 15:54
настройки, указанные там (в xorg.conf), не должны сбрасываться

Shell

% fgrep -Ri xkb /etc/X11/ Двоичный файл /etc/X11/X совпадает


Нечему сбрасываться-то...
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Слетает сочетание для переключения раскладки в иксах

Сообщение sgfault »

Bizdelnick писал(а):
19.04.2013 16:11
sgfault писал(а):
19.04.2013 15:54
настройки, указанные там (в xorg.conf), не должны сбрасываться

Shell

% fgrep -Ri xkb /etc/X11/ Двоичный файл /etc/X11/X совпадает


Нечему сбрасываться-то...

Ээ.. честно говоря, не понял, что вы имели в виду. В том предложении, от которого вы оставили маленький кусок, я имел в виду, что если предположить, что настройки сбрасываются каким-то событием udev-а (те это событие почему-то не содержит конфигурацию из default/keyboard), то если вы напишете их в InputClass в xorg,conf, а не в default/keyboard, то X сервер перезапишет настройки полученные от udev-а тем, что есть в xorg.conf.
По крайней мере при команде из keybaord(5):

Код: Выделить всё

udevadm trigger --subsystem-match=input --action=change

это происходит. Ну, поэтому я и предлагал вам так сделать, и посмотреть будет ли слетать снова.
Спасибо сказали: