От OpenSUSE wiki:
(Как долго, поскольку Mode_switch/ISO_Level3_Shift присвоен коду клавиши Высокого звука Gr - при присвоении Mode_switch и ISO_Level3_Shift к различным ключам можно присвоить до шести символов одному ключу!).
Скажите мне универсальные шаги для получения 6 символов к одному कey (k измененный к क)?
Поместите строки как следующее в Вашем ~/.Xmodmap
:
keycode 0x2D = k K U03BA U039A U0915 U05DB U0137 U0136
Код клавиши может быть получен путем выполнения xev
и нажатие клавиши. При запуске с известного состояния, например, американской раскладки клавиатуры, можно использовать keysym, уже присвоенный ключу, как в
keycode k = k K U03BA U039A U0915 U05DB U0137 U0136
8 столбцов справа от =
знак последовательно соответствует пустому ключу, Сдвигу, AltGr, AltGr+Shift, и повторяет эти четыре с ISO_Level3_Shift также.
Слова справа от =
знак является keysyms. Можно найти допустимые имена keysym в /usr/include/X11/keysymdef.h
(или везде, где Ваше распределение помещает keysymdef.h
); ищите строки формы #define XK_foo 0xabcd /* ... */
: foo
имя keysym. Можно также использовать U1234 где 1234
количество unicode символа в шестнадцатеричном (для “экзотических” символов как क
, это часто - единственная опция).
Заключительное предупреждение: существует два способа настроить клавиатуру под X. Xmodmap является простым путем. Xkb иначе; это более мощно, намного более сложно, и менее хорошо зарегистрированное. Иногда настройки xkb могут препятствовать тому, чтобы работали xmodmap настройки: xkb конфигурация может влиять на то, каким модификаторам xmodmap столбцы соответствуют.