3

Из OpenSUSE вики:

(Пока Mode_switch/ISO_Level3_Shift назначен на код клавиши Alt Gr - если вы назначаете Mode_switch и ISO_Level3_Shift для разных клавиш, вы можете назначить до шести символов одной клавише!).

Скажите, пожалуйста, общие шаги для получения 6 символов на один глаз (k изменено на क)?

1 ответ1

3

Поместите строки как в вашем ~/.Xmodmap:

keycode 0x2D = k K U03BA U039A U0915 U05DB U0137 U0136

Код ключа можно получить, запустив xev и нажав клавишу. Если вы начинаете с известного состояния, например раскладки клавиатуры в США, вы можете использовать клавиатуру, уже назначенную клавише, как в

keycode k = k K U03BA U039A U0915 U05DB U0137 U0136

8 столбцов справа от знака = последовательно соответствуют голой клавише, Shift, AltGr, AltGr+Shift, и также повторяют эти четыре с ISO_Level3_Shift .

Слова справа от знака = являются ключевыми символами. Вы можете найти действительные имена keysym в /usr/include/X11/keysymdef.h (или везде, где ваш дистрибутив помещает keysymdef.h); ищите строки вида #define XK_foo 0xabcd /* ... */: foo - это имя keysym. Вы также можете использовать U1234, где 1234 - это номер символа Unicode в шестнадцатеричном формате (для «экзотических» символов, таких как , это часто единственный вариант).

Последнее предупреждение: есть два способа настройки клавиатуры под X. Xmodmap - это простой способ. Xkb это другой способ; это более мощный, намного более сложный и менее хорошо документированный. Иногда настройки xkb могут препятствовать работе настроек xmodmap: конфигурация xkb может влиять на то, каким модификаторам соответствуют столбцы xmodmap.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .