[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Помогите добиться безусловного переключения раскладки клавиатуры в X window.



Oleksandr Gavenko -> debian-russian@lists.debian.org  @ Sat, 28 Apr 2012 00:21:43 +0300:

 OG> Еще меня смущает что для переключения раскладки приходиться создавать
 OG> отдельный процесс... Хотя подобные решения встречал на многих домашних
 OG> страницах и в блог-записях. Это правильно с точки зрения "правильности"?

Неправильно.

 OG> К примеру::

 OG>   $ setxkbmap -option grp:rwin_toggle us,ru

 OG> не требует порождения процеса...

Правильно - это таки почитать документацию и те самые конфиги, в которых
описано то, что setxkbmap видит как grp:rwin_toggle.  Потом создать себе
такой конфиг (на крайняк похачить системный), добавить в него нужные
сочетания клавиш, и радоваться жизни.  Я так себе делал переключение по
Caps/Shift+Caps, пока оно не попало в апстрим.

У меня был файлик примерно следующего содержания:

xkb_keymap "ran_104" {
    xkb_keycodes {
        include "xfree86"
    };
    xkb_types { include "complete" };
    xkb_compatibility { include "complete" };
    xkb_symbols {
        include "pc/pc(pc104)"
        include "pc/us"
        include "pc/ru(winkeys):2"
        include "group-rich(switch)"
        include "group-rich(caps_select)"
        include "compose(rctrl)"
    };
    xkb_geometry { include "pc(pc104)" };
};

(на самом деле там несколько вариантов, но я не буду грузить
подробностями), который грузился командой xkbcomp.  group-rich - это мой
собственный вариант системного group, с добавленными кнопками, и
хранящийся в ~/etc/xkb/symbols.

setxkbmap - это "высокоуровневая" утилита, которая через три слоя
системных конфигов позволяет воспользоваться аналогичной системной
конструкцией.


Reply to: