Я попытался прочитать и понять это: https://www.charvolant.org/doug/xkb/html/node5.html
В качестве теста, поскольку мой макет «польский», программист "в файле / usr / share / X11 / xkb / symbols / pl, который я играл с переназначением символа« q »на« x », и он работал нормально.
Но я хочу, для переназначения LWIN (Left Super) на Left Control.
Итак, я пробовал это: я начал редактировать / usr / share / X11 / xkb / symbols / pc файл, считая, что это «корень» всех других файлов. Прокомментировал эту строку:
//key { [ Super_L ] };
и добавил этот:
key { [ Control_L ] };
и перезагрузил ПК без успеха. То есть LWIN + C, не копирует выделенный текст в текстовые редакторы в буфер обмена, вместо этого он просто создает букву «c». В терминале вместо остановки текущей программы он также просто создает букву «c».
Вот мой файл конфигурации: https://www.charvolant.org/doug/xkb/html/ node5.html
Когда я пытаюсь выполнить команду xev, а затем нажмите левую клавишу управления, я вижу следующее:
KeyPress event, serial 40, synthetic NO, window 0x5a00001,
root 0x7e, subw 0x0, time 1053321, (374,-259), root:(374,545),
state 0x0, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 40, synthetic NO, window 0x5a00001,
root 0x7e, subw 0x0, time 1053425, (374,-259), root:(374,545),
state 0x0, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes:
XFilterEvent returns: False
BTW. Попросите ubuntu предложить мне две ссылки на похожие вопросы, но они старые и предлагают использовать xmodmap и afaik, это уже не правильный ответ на Ubuntu> = 16.04 (Xenial), и это именно версия, которую я имею.
BTW2. Мне бы очень хотелось избежать использования приложений, таких как Xbindkeys, учитывая, что есть встроенное решение, которое, я думаю, я почти понимаю, и уже потратил некоторое время на попытку понять это.
Чтобы временно изменить его, вы можете запустить эту команду:
setxkbmap -option altwin:ctrl_win
Чтобы постоянно ее изменять, откройте файл /etc/default/keyboard для редактирования, измените строку
XKBOPTIONS=""
[d2 ] на XKBOPTIONS="altwin:ctrl_win"
и перезагрузка.
Чтобы временно изменить его, вы можете запустить эту команду:
setxkbmap -option altwin:ctrl_win
Чтобы постоянно ее изменять, откройте файл /etc/default/keyboard для редактирования, измените строку
XKBOPTIONS=""
на
XKBOPTIONS="altwin:ctrl_win"
и перезагрузка.
Чтобы временно изменить его, вы можете запустить эту команду:
setxkbmap -option altwin:ctrl_win
Чтобы постоянно ее изменять, откройте файл /etc/default/keyboard для редактирования, измените строку
XKBOPTIONS=""
на
XKBOPTIONS="altwin:ctrl_win"
и перезагрузка.