Re: Хочу что бы в X Window в русской раскладке Ctrl+<KEY> отдавало как Ctrl+ASCII...
On 2012-06-29, Sergej Kochnev wrote:
> On Fri, 29 Jun 2012 15:09:51 +0300
> Oleksandr Gavenko <gavenkoa@gmail.com> wrote:
>
>>Дополнительное уточнение - использую оконный менеджер FVWM, раскладки
>>переключаются командой:
>>
>> setxkbmap -layout ru
>
> Не надо так переключать.
>
Экспременты дали плоды. С
setxkbmap -layout ru
xev по Ctrl+<ALPHA> давал русскую букву в событии.
В случае:
setxkbmap -layout ru,us
и когда переключиться в:
setxkbmap -layout us,ru -option grp:rwin_switch
xev показывал ASCII код.
Я невежественно полагаю что setxkbmap -layout "компилирует" раскладку в X. Эта
операция тяжеловесна по сравнению с использованием переключателя из
-option grp:XXX
в этом случая я невежественно предполагаю что внутри X всего лишь изменяется
некий указатель.
Т.е. ипользование setxkbmap для переключения расклаток - нецелевое
использование утилиты.
Есть ли утилиты, которые выполняют работу "grp:"??
Я пробую xdotool. Из /usr/include/X11/keysymdef.h:
#define XK_Mode_switch 0xff7e /* Character set switch */
Далее определяем раскладки:
$ setxkbmap -layout us,ru -option ''
и:
$ xdotool key Mode_switch # набираю на англ
$ авава # после команды на русском
$ xdotool key Mode_switch # жму вверх и RET
$ авава # после команды на русском
$ xdotool key Mode_switch
$ fdfdf # после команды на англ.
Почему на us вернулось только со второго раза??
Я обезсилен в борьбе с черным ящиком.
Порекомендуйте почитать по этой теме учебник (устройства ввода в Linux и X
Window).
--
Best regards!
Reply to: