Відповіді:
Щоб зробити це вручну, ви хочете створити файл у своєму домашньому каталозі під назвою .Xmodmap. Це можна зробити за допомогою команди з терміналу
~$ gedit ~/.Xmodmap
Це створить файл і відкриє його в gedit. Додайте у файл такі рядки:
clear control
clear mod1
keycode 37 = Alt_L Meta_L
keycode 64 = Control_L
add control = Control_L Control_R
add mod1 = Alt_L Meta_L
Збережіть файл та закрийте gedit. Наступного разу, коли ви ввійдете в систему, нові клавіші будуть активними. Щоб налаштування набрали негайного ефекту, запустіть таку команду:
~$ xmodmap ~/.Xmodmap
Є ймовірність, що ключові коди вище на вашому комп’ютері відрізняються. Якщо вищезгадане не працює, спробуйте запустити програму xev з командного рядка. Xev генерує нове маленьке вікно в куті екрана. Якщо ви почнете натискати клавіші на клавіатурі, ви отримаєте всю інформацію про відображення клавіш для цієї клавіші.
~$ xev
Наприклад, якщо я натискаю "q", коли xev працює, я отримую такий висновок:
KeyRelease event, serial 33, synthetic NO, window 0x4c00001,
root 0xb6, subw 0x0, time 9127480, (21,-17), root:(22,36),
state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,
XLookupString gives 1 bytes: (71) "q"
XFilterEvent returns: False
keycode 24 - це інформація, яку ми шукаємо. Натисніть ліву клавішу Ctrl та ліву клавішу Alt під час запуску xev, щоб отримати власні відповідні клавіші, щоб підтвердити, що вони такі, як ті, які використовувались вище.
Сподіваюся, що це допомагає.
xmodmap ~/.Xmodmap
кожен раз, коли я перезавантажуюсь. Як я можу це автоматизувати?
Якщо ви не хочете боліти xmodmap
, ви можете також зробити це через налаштування гнома.
sudo apt-get install gnome-tweak-tool
, відкрийте його, перейдіть до вводу тексту та змініть параметр положення клавіші Ctrl на " Зміна лівими на Alt та Ctrl" :
Ви, ймовірно, також могли це робити через gsettings
, але я не впевнений у точній назві вводу конфігурації.
Просто створіть ~ / .Xmodmap за допомогою простого текстового редактора та перезапустіть Xserver.
!
! based on: http://www.emacswiki.org/emacs/SwapControlAltAndCapsLock#toc8
!
!----------------------------------------------------------
! Swap Control and Alt keys, both sides
!----------------------------------------------------------
! First clear all modifiers & control
clear control
clear mod1
clear mod4
! Swap Control_L and Alt_L
keycode 64 = Control_L
keycode 37 = Alt_L Meta_L
! Menu becomes Alt_R Meta_R (AltGr)
keycode 135 = Alt_R Meta_R
! Define Control_R and Alt_R similar to Control_L and Alt_L
keycode 108 = Control_L
keycode 105 = Alt_L Meta_L
! We need to set keycodes first, as some programs (emacs!) read
! the key names and seem to ignore what's below.
add mod1 = Alt_L Alt_R Meta_L Meta_R
add mod4 = Super_L Super_R
add control = Control_L Control_R
!------------------------------------------
! Caps_Lock becomes an additional BackSpace
!------------------------------------------
remove lock = Caps_Lock
keysym Caps_Lock = BackSpace
xmodmap ~/.Xmodmap
щоб змусити його завантажити. Я не впевнений, чи потрібно це робити при кожному перезавантаженні.
Якщо ви хочете утримувати клавішу Ctrl у звичайному положенні під час використання термінальних додатків та ваших програм GUI, тоді ви можете подивитися на Kinto.
https://github.com/rbreaves/kinto
Ось суть того, що він робить по суті, це насправді досить просто, але я створив інсталятор Kinto, який використовує systemd, і працює на системах на основі x11, які створять службу / сценарій з xprop, який слухає ваше активне ім’я програми.
https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb
Я хотів би підтримати Wayland та x11 єдиним рішенням, але xprop не призначений для цього світу.
Ось доказ концепції, хоча для KDE Plasma 5 Wayland. https://github.com/rbreaves/applet-window-title/commit/ff17e694579a52a9848d6bea87b2d11f22033718