Jak zamienić lewy klawisz Ctrl z lewym klawiszem Alt na klawiaturze?

Odpowiedzi:

47

Aby to zrobić ręcznie, chcesz utworzyć plik o nazwie .Xmodmap w swoim katalogu domowym. Możesz to zrobić za pomocą polecenia z terminala

~$ gedit ~/.Xmodmap

To utworzy plik i otworzy go w gedit. Dodaj następujące wiersze do pliku:

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

Zapisz plik i zamknij gedit. Przy następnym logowaniu nowe klawisze będą aktywne. Aby ustawienia odniosły natychmiastowy skutek, uruchom następujące polecenie:

~$ xmodmap ~/.Xmodmap

Istnieje prawdopodobieństwo, że powyższe kody klawiszy są różne na twoim komputerze. Jeśli powyższe nie działa, spróbuj uruchomić program xev z wiersza poleceń. Xev wygeneruje nowe małe okno w rogu ekranu. Jeśli zaczniesz naciskać klawisze na klawiaturze, otrzymasz wszystkie informacje dotyczące mapowania klawiszy dla tego naciśnięcia klawisza.

~$ xev

Na przykład, jeśli nacisnę „q”, gdy xev jest uruchomiony, otrzymam następujące dane wyjściowe:

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

kod 24 to informacja, której szukamy. Naciśnij lewy Ctrl i lewy Alt podczas uruchamiania xev, aby uzyskać własne odpowiednie kody klawiszy, aby potwierdzić, że są one takie same jak te używane powyżej.

Mam nadzieję, że to pomaga.

Kozowicz
źródło
Plik nie istnieje w Ubuntu 16.04.
MERose
1
To działało z 16.04, ale już nie 17.10.
Niklas
2
Muszę uruchamiać ponownie przy xmodmap ~/.Xmodmapkażdym ponownym uruchomieniu. Jak mogę to zautomatyzować?
Mwirabua Tim
askubuntu.com/a/749662/894748 @MwirabuaTim sprawdź to
VnC
16

Jeśli nie chcesz wpaść w ból xmodmap, możesz to również zrobić za pomocą ustawień gnome.

sudo apt-get install gnome-tweak-tool, otwórz go, przejdź do Pisanie i zmień opcję Ctrl key key na Zamień w lewo Alt i Ctrl :

wprowadź opis zdjęcia tutaj

Prawdopodobnie możesz to zrobić za pośrednictwem gsettings, ale nie jestem pewien dokładnej nazwy wpisu konfiguracji.

hwjp
źródło
Próbuję użyć narzędzia dostosowującego w Ubuntu gnome 15.10 i ignoruje on „zamień lewy klawisz wygranej z lewym klawiszem Control”. Jakieś pomysły? Próbuję zamienić L-SUPER, ale zakładam, że to ten sam klucz.
Dori
ściskasz słomkę, ale może musisz zrestartować się lub wylogować i zalogować ponownie do menedżera okien?
hwjp
Próbowałem tego i nic innego ...
Dori
4
Wygląda na to, że „Pisanie” zostało usunięte w Ubuntu 17.10. Jest teraz w „Klawiaturze i myszy” -> „Dodatkowe opcje układu”
Wurstsalat
Jest teraz pod „Dodatkowymi
opcjami
10

Wystarczy utworzyć ~ / .Xmodmap za pomocą prostego edytora tekstu i ponownie uruchomić 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
Richard Gomes
źródło
To działało jak mistrz w Crouton Ubuntu Unity na Chromebooku. Musiałem biec, xmodmap ~/.Xmodmapżeby go załadować. Nie jestem pewien, czy muszę to robić przy każdym ponownym uruchomieniu.
swt83
@ swt83: możesz być zainteresowany tym: github.com/frgomes/carpalx, który pokazuje, jak zmienić definicję całej klawiatury, jeśli chcesz.
Richard Gomes,
0

Jeśli chcesz utrzymać klawisz Ctrl w normalnej pozycji podczas korzystania z aplikacji terminalowych w porównaniu z aplikacjami GUI, możesz spojrzeć na Kinto.

https://github.com/rbreaves/kinto

Oto sedno tego, co robi zasadniczo, jest to stosunkowo proste, ale stworzyłem instalator, Kinto, który używa systemd i działa na systemach opartych na x11, które utworzą usługę / skrypt z xprop, który nasłuchuje twojej aktywnej nazwy aplikacji.

https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

Chciałbym wspierać Wayland i x11 za pomocą jednego rozwiązania, ale xprop nie był przeznaczony dla tego świata.

Oto dowód koncepcji KDE Plasma 5 Wayland. https://github.com/rbreaves/applet-window-title/commit/ff17e694579a52a9848d6bea87b2d11f22033718

R Ben R.
źródło