Bug 32661 - Не устанавливается переключатель раскладок по ctrls_toggle (/etc/X11/xinit/fixkeyboard)
Summary: Не устанавливается переключатель раскладок по ctrls_toggle (/etc/X11/xinit/fi...
Status: NEW
Alias: None
Product: Branch p6
Classification: Distributions
Component: xkeyboard-config (show other bugs)
Version: не указана
Hardware: all Linux
: P3 normal
Assignee: Andrey Cherepanov
QA Contact: QA p6
URL: http://lists.altlinux.org/pipermail/s...
Keywords:
Depends on: 32638 32671
Blocks:
  Show dependency tree
 
Reported: 2016-10-25 00:30 MSK by Ivan Zakharyaschev
Modified: 2016-10-26 12:36 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Zakharyaschev 2016-10-25 00:30:36 MSK
p6 тоже этим страдает. В t6 уже скопировал последнюю исправленную версию.


Таким образом, в t6 уже исправлено, в p6 пока нет. (Отчасти я думаю: вдруг
какие-то проблемы кто-то обнаружит с новой версией, хотя это очень
маловероятно, и можно будет вскоре скопировать.)

+++ This bug was initially created as a clone of Bug #32638 +++

Да, описанная проблема и решение у меня тоже воспроизвелись с setxkbmap-1.3.0-alt1.

+++ This bug was initially created as a clone of Bug #30618 +++

Изначально тема была поднята здесь:

http://lists.altlinux.org/pipermail/sisyphus/2014-December/363265.html

Основная проблема в том, что в Xkbmap можно установить переключатель раскладок, например, по caps_toggle или ctrl_shift_toggle, но не получается сделать то же самое по ctrls_toggle.

Возможно, что это скорее проблема пакета xkeyboard-config, к которому относится файл /usr/share/X11/xkb/symbols/group, содержащий соответствующее определение ctrls_toggle, и нужно исправить именно определение этой комбинации.

Однако, в `man setxkbcomp` (раздел "USING WITH xkbcomp") приведен шаблон использования setxkbmap в паре с xkbcomp, после запуска которого переключатель ctrls_toggle устанавливается. Причину этого я пока не понял, так как в том же документе сказано, что такой образец нужен, только если X-сервер и клиент запускаются на разных машинах с разными конфигурациями.

Не знаю, правильное ли это решение, но я просто изменил вызов setxkbmap в файле /etc/X11/xinit/fixkeyboard, и у меня все заработало. Мои изменеия даю в прилагаемом патче.

Кроме того, я добавил еще одну альтернативу, когда файл Xkbmap отсутствует и как в системном, так и в домашнем каталоге пользователя. В этом случае настройки клавиатуры определяются конфигурацией xorg.conf (в частности, в файле /etc/X11/xorg.conf.d/95-input-keyboard.conf), и работа fixkeyboard сводится только к загрузке текущих значений setxkbmap в xkbcomp.

Думаю, пока (и если) не разберемся с определением ctrls_toggle в xkeyboard-config, стоит пока использовать предложенные мной изменения.
Comment 1 Ivan Zakharyaschev 2016-10-26 12:20:14 MSK
Выяснилась такая неприятность: при копировании из Sisyphus в пакете оказывается man-страница, сжатая xz. А в p6/t6 man-1.6f-alt11 не умеет ещё читать .xz.

Это никак не контролируется зависимостями в RPM. Проще было бы во избежние проблем, наверное, добавить такую фичу в man в t6/p6.

Это было добавлено в исходниках man-1.6g (импорт tarball-а в пакет, так что взять ровно этот коммит чуть сложно).