Попытка переназначить мою левую клавишу SUPER (также называемую клавишей WINDOWS) в левую или правую клавишу CONTROL с помощью команды xkg.
Я пытался прочитать и понять это: 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 <LWIN> { [ Super_L ] };
и добавил это:
key <LWIN> { [ Control_L ] };
и перезагрузил компьютер, но безуспешно. Т.е. LWIN + C, не копирует выделенный текст в текстовых редакторах в буфер обмена, вместо этого он просто создает букву "c". В терминале вместо остановки текущей программы он также выдает букву "с".
Вот мой конфигурационный файл: https://gist.github.com/anonymous/49514ddf6f03ba87babaab51e2d5eff4
Когда я пытаюсь выполнить команду 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
КСТАТИ. Спросите, Ubuntu предлагает мне две ссылки на похожие вопросы, но они старые, и предлагают использовать xmodmap, и afaik, это больше не правильный ответ на Ubuntu >= 16.04 (Xenial), и это именно та версия, которая у меня есть.
BTW2. Я действительно хотел бы избегать использования приложений, таких как Xbindkeys, учитывая, что есть встроенное решение, которое, я думаю, я почти понимаю, и уже потратило некоторое время на попытки понять его.
1 ответ
Чтобы временно изменить его, вы можете запустить эту команду:
setxkbmap -option altwin:ctrl_win
Чтобы изменить его постоянно, откройте /etc/default/keyboard
файл для редактирования, измени строку
XKBOPTIONS=""
в
XKBOPTIONS="altwin:ctrl_win"
и перезагрузите компьютер.