<div dir="ltr"><div>Вдумчивое чтение скриптов инициализации X позволило обнаружить, что обработка Xkbmap производится в файле<br>/etc/X11/xinit/fixkeyboard. В результате получилось воспроизвести ситуацию в обычной командной строке.<br><br>Теперь ясно, что после<br><br>$ setxkbmap "us,ru" -option "" -option "grp:caps_toggle"<br><br>или<br><br>$ setxkbmap "us,ru" -option "" -option "grp:ctrl_shift_toggle"<br><br>комбинация для переключения раскладки изменяется, как ожидается. Но вот после<br><br>$ setxkbmap "us,ru" -option "" -option "grp:ctrls_toggle"<br><br>такого изменения не происходит. Однако, как и прежде, после<br><br>$ setxkbmap "us,ru" -option "" -option "grp:ctrls_toggle" -print | xkbcomp - $DISPLAY<br><br>комбинация переключения меняется, как ожидалось.<br><br>Скорее всего, это как-то связано с определением комбинации ctrls_toggle в файле<br>/usr/share/X11/xkb/symbols/group, но я пока не настолько хорошо вник в xkb (и тонкие отношения между<br>setxkbmap и xkbcomp), чтобы понять, в чем проблема. По крайней мере, попытка определить ctrls_toggle по<br>образцу lctrl_lshift_toggle у меня успеха не имела.<br><br>Можно, наверное, еще вбить костыль с вызовом xkbcomp в сам файл /etc/X11/xinit/fixkeyboard. Но я пока<br>этого не пробовал. Да и правильно ли это с точки зрения всей системы? Я все еще не совсем понимаю, это баг или фича.<br></div><div><div><br>И да, можно ли использовать для переключения раскладок обычные (то есть, не "мертвые") клавиши? Например,<br>Ctrl-\? Почти наверняка это никому ненужно, интерес чисто академический.<br><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2014-12-28 20:01 GMT+03:00 Michael Shigorin <span dir="ltr"><<a href="mailto:mike@altlinux.org" target="_blank">mike@altlinux.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Sun, Dec 28, 2014 at 10:22:39AM +0400, Eugine Kosenko wrote:<br>
> > > У меня, наверно, какой-то неправильный Сизиф?<br>
> > Этот файлик умеет делать alterator-sysconfig<br>
> Альтератор для меня --- тоже темный лес :-(, Вот, нашел даже alterator-xkb,<br>
> вроде как бы как раз для настройки xkb. Но я даже не знаю, откуда начать.<br>
<br>
</span>Можно поставить alterator-standalone и нужные модули,<br>
запустить от рута acc и посмотреть.<br>
<span class=""><br>
> Вообще, как я вижу, хорошей документации по альтератору в стиле HOWTO по<br>
> конкретным вопросам (типа как у меня), похоже, вообще нет.<br>
<br>
</span>Давай исправлять, если хочешь. Свежий взгляд ещё без привычки --<br>
самый ценный в плане документирования.<br>
<br>
> <a href="http://www.altlinux.org/X" target="_blank">http://www.altlinux.org/X</a><br>
<br>
Не знал про эту страничку (посмотрел -- lav@ писал). :)<br>
<span class=""><br>
> Эксперименты с этими файлами показали, что ситуация такая же. Очевидно, что<br>
> настройки Xkbmap перекрывают настройки xorg.conf, и в этом смысле решение<br>
> работает. Но поведение остается тем же --- caps_toggle и ctrl_shift_toggle<br>
> срабатывают, а ctrls_toggle --- нет. И точно так же, легкий перезапуск X не<br>
> изменяет конфигурацию даже при изменении общесистемной, а не<br>
> пользовательской настройки. Вешать баг?<br>
<br>
</span>А если руками запустить setxkbmap -option (для сброса)<br>
и затем setxkbmap -option grp:... для проверки?<br>
<br>
Потому как все эти буковки именно этой утилите и передаются<br>
(в уже упоминавшемся /etc/X11/xinit/fixkeyboard).<br>
<div class="HOEnZb"><div class="h5"><br>
--<br>
---- WBR, Michael Shigorin / <a href="http://altlinux.org" target="_blank">http://altlinux.org</a><br>
------ <a href="http://opennet.ru" target="_blank">http://opennet.ru</a> / <a href="http://anna-news.info" target="_blank">http://anna-news.info</a><br>
_______________________________________________<br>
Sisyphus mailing list<br>
<a href="mailto:Sisyphus@lists.altlinux.org">Sisyphus@lists.altlinux.org</a><br>
<a href="https://lists.altlinux.org/mailman/listinfo/sisyphus" target="_blank">https://lists.altlinux.org/mailman/listinfo/sisyphus</a></div></div></blockquote></div><br></div>