Задать вопрос
@programmer0101

Как по нормальному переназначить клавиши?

Создал файл Xmodmap в директории пользователя.
Написал keycode 24 = KP_Multiply
запускаю xmodmap Xmodmap
сообщений об ошибках нет, программа приняла команды исправно, а могла бы и показывать если файл составить неправильно.
Должно на q при раскладке русской и английской писать звёздочку, а оно пишет q.

Проблема в том, что назначать кей коды на кейсимы это дибилизм, нужно кейсимы на кейсими.
Чтобы на английском, q было звёздочкой, а на русском плюсом.
  • Вопрос задан
  • 181 просмотр
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Это не через Xmodmap делается, это надо хачить файл раскладки в /usr/share/X11/xkb/symbols.

Вот как например я меняю действия при нажатии "серого" Enter на действие Enter нормального (привычка фигли)
--- keypad.old  2017-03-26 22:34:14.000000000 +0700
+++ keypad      2017-11-13 15:43:17.528523496 +0700
@@ -14,7 +14,7 @@
     key  <KP1> {       [  KP_End,      KP_1    ]       };
     key  <KP2> {       [  KP_Down,     KP_2    ]       };
     key  <KP3> {       [  KP_Next,     KP_3    ]       };
-    key <KPEN> {       [       KP_Enter        ]       };
+    key <KPEN> {       [       Return          ]       };
     key <KPEQ> {       [       KP_Equal        ]       };
 
     key  <KP0> {       [  KP_Insert,   KP_0    ]       };

В файле раскладки через запятую перечисляются коды, которые генерируются в разных группах.

man xkbcomp
man setxkbmap
Ответ написан
Комментировать
@polar_yogi
текущий маппинг можно посмотреть:
xmodmap -pke
Для keycode 24 у меня показывает:
keycode 24 = q Q Cyrillic_shorti Cyrillic_SHORTI
соответвтсенно
xmodmap -e "keycode  24 = KP_Multiply KP_Multiply plus plus"

дает * в англ.раскладке и + в русской.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы