Я могу сопоставить мою цифровую клавиатуру, например, с ~./Xmodmap
так:
keycode 87 = XF86Launch1
keycode 88 = XF86Launch2
keycode 89 = XF86Launch3
keycode 83 = XF86Launch4
keycode 84 = XF86Launch5
keycode 85 = XF86Launch6
keycode 79 = XF86Launch7
keycode 80 = XF86Launch8
keycode 81 = XF86Launch9
keycode 90 = XF86LaunchA
keycode 91 = XF86LaunchB
Конечно, это означает, что моя цифровая клавиатура больше не вводит цифры и не предоставляет навигационные функции (Home, PgUp и т.д.). До сих пор я жил с этим, но сейчас я использую приложение (Blender), которое сопоставило многие функции с цифровой клавиатурой. Я могу обойтись альтернативным файлом ~/Xmodmap.numpad
с таким содержимым:
keycode 79 = KP_Home KP_7 KP_Home KP_7
keycode 80 = KP_Up KP_8 KP_Up KP_8
keycode 81 = KP_Prior KP_9 KP_Prior KP_9
keycode 82 = KP_Subtract XF86Prev_VMode KP_Subtract XF86Prev_VMode
keycode 83 = KP_Left KP_4 KP_Left KP_4
keycode 84 = KP_Begin KP_5 KP_Begin KP_5
keycode 85 = KP_Right KP_6 KP_Right KP_6
keycode 86 = KP_Add XF86Next_VMode KP_Add XF86Next_VMode
keycode 87 = KP_End KP_1 KP_End KP_1
keycode 88 = KP_Down KP_2 KP_Down KP_2
keycode 89 = KP_Next KP_3 KP_Next KP_3
keycode 90 = KP_Insert KP_0 KP_Insert KP_0
keycode 91 = KP_Delete KP_Decimal KP_Delete KP_Decimal
но переключение между ними является проблемой. Могу ли я просто использовать xmodmap, чтобы моя цифровая клавиатура действовала как первый файл, но при этом удерживал Shift?
Когда я использую xev для проверки кодов клавиш, Shift-numpad не дает коды клавиш, отличные от обычной цифровой клавиатуры, он просто отправляет код клавиши для клавиши Shift отдельно от клавиши цифровой клавиатуры.