Próbuję ponownie mapować klawiaturę, aby emacs był użyteczny. Moja ergonomiczna klawiatura umieszcza pojedynczy klawisz Control na izolowanej 4-klawiszowej wyspie z lewej strony.
System operacyjny to ściśnięcie Debiana.
Oto linie, do których próbuję się zapisać xmodmap
, umieszczam je w pliku ~ / .Xmodmap:
jasne sterowanie wyczyść Mod1 ! Klawisze Alt są oznaczone „Opcją” na mojej klawiaturze, ! użycie xev pokazuje je, aby wysłać odpowiednio klucze Alt_L i Alt_R keysym Alt_L = Control_L keysym Alt_R = Control_R ! Klucze Super_L i Super_R to klucze Windows keysym Super_L = Alt_L keysym Super_R = Alt_R dodaj Control = Control_L Control_R dodaj Mod1 = Alt_L Alt_R
Moim celem jest, aby moje Altklawisze Option (aka ) zachowywały się jak klawisze Control i aby moje klucze Windows (aka Super) zachowywały się podobnie Alt.
Oto kody klawiszy i klucze generowane przez xev dla tych kluczy. Uwaga: moja klawiatura (ergonomiczna klawiatura Goldtouch) ma tylko jeden klawisz kontrolny.
kod klucza 37 (keyym 0xffe3, Control_L) kod klucza 64 (keyym 0xffe9, Alt_L) kod klucza 133 (keyym 0xffeb, Super_L) kod klucza 134 (keyym 0xffec, Super_R) kod klucza 108 (keyym 0xffea, Alt_R)
Oto, co wyświetla xev podczas działania xmodmap .Xmodmap
Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 204, liczba 1 Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 64, liczba 1 Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 108, liczba 1 Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 206, liczba 1 Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 133, liczba 1 Zdarzenie MappingNotify, numer seryjny 34, syntetyczny NO, okno 0x0, żądanie MappingKeyboard, first_keycode 134, liczba 1
A oto błąd zwrócony przez xmodmap
:
X Błąd nieudanego żądania: BadValue (parametr liczby całkowitej poza zakresem do działania) Główny kod operacji nieudanego żądania: 118 (X_SetModifierMapping) Wartość w nieudanym żądaniu: 0x17 Numer seryjny nieudanego żądania: 17 Aktualny numer seryjny w strumieniu wyjściowym: 17
jakieś sugestie, jak to rozwiązać?
xev
uruchomić się w terminalu, a następniexmodmap
w innym terminalu. Powinieneś zobaczyć kilkaMappingNotify
zwrotek zxev
, dodaj je do swojego pytania. Ponadto wxev
oknie naciśnij różne zaangażowane klawisze i powiedz nam, z jakim kodem klucza i kluczem odpowiadają (część „keycode 37 (keysym 0xffe3, Control_L)” na wyjściu xev).