Próbuję zmapować:
Super+h -> Left
Super+j -> Down
Super+k -> Up
Super+l -> Right
globalnie pod X. Pomysł jest taki, że nie chcę opuszczać mojego domowego rzędu, aby często używać klawiszy strzałek, więc użyję Super modyfikatora + hjkl, aby emulować klawisze strzałek pod X. Czy jest jakiś sposób, aby to zrobić ?
Jedną z rzeczy, których próbowałem, są xbindkeys + xte przy użyciu tej konfiguracji:
"xte 'keydown Up' 'keyup Up'"
Mod4+k
"xte 'keydown Down' 'keyup Down'"
Mod4+j
"xte 'keydown Left' 'keyup Left'"
Mod4+h
"xte 'keydown Right' 'keyup Right'"
Mod4+l
ale wydaje mi się, że istnieje duże opóźnienie między naciśnięciem klawisza i zauważeniem jakiegokolwiek wyniku, a przez większość czasu nic się nie dzieje.
Czy istnieje bardziej elegancki sposób na zrobienie tego, który faktycznie działa bez opóźnień?
Odpowiedzi:
Capslock + HJKL do klawiszy strzałek
Utwórz ~ / .Xmodmap i umieść to w środku:
Dodaj
Left
,Down
,Up
,Right
jako trzeci element do H, J, K, L w pozycji kluczowych/usr/share/X11/xkb/symbols/us
(pierwszy odcinek):biegać
xmodmap ~/.Xmodmap
Alternatywnie: Capslock jako Control i Control_L + HJKL do klawiszy strzałek
To jest moja obecna konfiguracja. Odmapowałem Control_L jako klawisz kontrolny i używam go jako specjalnego modyfikatora (ISO_Level3_Shift), który odpowiada trzeciemu wpisowi w
/usr/share/X11/xkb/symbols/us
pliku dla mapowań hjkl.Zmodyfikowałem pierwszą zwrotkę / usr / share / X11 / xkb / symbols / us jak wcześniej:
Następnie umieszczam to w moim pliku ~ / .Xmodmap:
keycode 66
jest Capslock ikeycode 37
pozostawia kontrolęDzięki tej konfiguracji mogę używać klawiszy strzałek z Control_L + hjkl, a także pomijać słowa za pomocą Control_L + Caps + hl. Łatwo!
źródło
/var/lib/xkb/*.xkm
aby zmiany odniosły/usr/share/X11/xkb/symbols/us
skutek.xmodmap /home/alex/.Xmodmap
aplikację startową i usunąć wszystkie pliki * .xkm z / var / lib / xkb. Ostrzeżenie: zrujnowałem jedną maszynę wirtualną Ubuntu, wykonując ten ostatni krok, a następnie moja klawiatura w ogóle nie działała, więc bądź ostrożny i przygotuj kopię zapasową :-) Shift + Control + Caps + hjkl, aby zaznaczyć tekst działa dobrze w Firefox i Thunderbird, ale w niektórych aplikacjach tak nie jest (na przykład Chrome)Powyższe zmiany w / usr / share / X11 / xkb / symbols / us NIE działają dla mnie:
Błąd ładowania nowego opisu klawiatury
Ale po przejrzeniu wielu sprzecznych poradników, wymyśliłem rozwiązanie, które mapuje lewy super klawisz (lewy klawisz Windows / Mod4) w połączeniu z hjkl na Lewo, Dół, Góra, Prawo. Jest to ustawienie systemowe.
Dodaj ten blok na końcu pierwszej sekcji (tuż przed
};
) twojego / usr / share / X11 / xkb / symbols / us :Pierwsza linia klucza odwzorowuje AltGr + h na lewą.
Ostatnia linia klucza powoduje, że lewy superklucz zachowuje się jak AltGr.
Proszę bardzo:
Aby zastosować nowe ustawienia, uruchom setxkbmap lub uruchom ponownie system.
Ważne : To oczywiście wyłącza superklucz, więc jeśli faktycznie używasz superklucza do innych celów (np. Przenosząc okno do innego obszaru roboczego), nie powinieneś go ponownie mapować w ten sposób.
Aby użyć Caps Lock zamiast Super, zmień ostatnią linię klucza za pomocą:
Oto pełna pierwsza sekcja mojego pliku konfiguracyjnego:
Mam nadzieję, że to pomoże komuś tam ...
Jeśli ktoś ma lepsze rozwiązanie, daj mi znać.
Edycja: Testowane na Fedorze.
źródło
xev
wyraźnie mówiLeft
i działa w przypadku większości aplikacji. Ale niektóre programy reagują tylko na „prawdziwe” klawisze strzałek, takie jak wysublimowany edytor tekstu i inne.Nie próbowałem tego sam, ale wygląda na to, że xkb może zrobić, co chcesz http://en.wikipedia.org/wiki/X_keyboard_extension .
Mam pakiet w Ubuntu o nazwie x11-xkb-utils, który brzmi obiecująco :)
źródło
Nie potrzebne sudo , pochodzące stąd , zmodyfikowane, aby działało także w połączeniu z Alt.
utwórz
file
w następującą treść:odwołać się
Odwzorowuje AltGrna Capszamiast Super, więc możesz raczej ustawić
(lub cokolwiek
xev
daje ci po uderzeniu Super)Część z cukrem daje backspace i Del jako specjalne przypisanie do i i o, możesz to pominąć lub zobaczyć jako bonus lub motywację do samodzielnego rozszerzenia / dostosowania;)
PS: jeśli eksperymentujesz z tym, zresetuj mapowanie „domyślne”, wywołując
źródło
W końcu wydaje się, że znalazłem rozwiązanie, które działa ze wszystkimi modyfikatorami (Ctrl +, Shift +, Ctrl + Shift +) i Sublime Text 2.
Cała chwała należy do tej konfiguracji klejnotów, którą niedawno znalazłem http://www.spinics.net/lists/xorg/msg35931.html . Opisuje strzałki ijkl, ale można je łatwo modyfikować do nawigacji w hjkl. Musisz zaktualizować pliki układu klawiatury / usr / share / X11 / xkb / symbols / * (osobiście używam / usr / share / X11 / xkb / symbols / literówka, które dołączam do mojego układu klawiatury za pomocą Xkb opcja „misc: literówka”, więc działa na każdym układzie klawiatury). Konfiguracja zakłada, że klawisz modyfikujący wysyła ISO_Level3_Shift (istnieje wiele sposobów na powiązanie Super lub Alt z ISO_Level3_Shift).
Kluczowe definicje powinny wyglądać (użyj NoSymbol, jeśli modyfikujesz ../symbols/typo):
Musisz także edytować / usr / share / X11 / types / basic i zadeklarować typ „MOD5_NAV”:
Jeśli chodzi o Sublime Text 2, rozwiązanie jest trudniejsze i bardziej hackerskie. Jak wspomniano powyżej, Sublime Text 2 odczytuje kody klawiszy bezpośrednio z urządzenia, dlatego ignoruje niektóre funkcje Xkb (a sztuczka xkb ze strzałkami nie ma żadnego efektu). Istnieje prawie opuszczony, ale wciąż działający projekt, Gizmo Daemon http://gizmod.sourceforge.net/ . Po kilku zmaganiach i googlowaniu udało mi się skompilować go na moim Debian Wheezy. Następnie utworzyłem ten skrypt Gizmod i umieściłem go w ~ / .gizmod / modules.d / 010-KeyboardViMode-SublimeText2.py http://pastebin.com/HNQgGEwD
PS W systemie Linux czasami brakuje mi KeyboardRemap4MacBook. Ten wielki spokój oprogramowania OS X może umożliwić taką nawigację (i wiele innych rzeczy) za pomocą kilku pól wyboru.
źródło
Jestem użytkownikiem HHKB na Debian / Ubuntu i to rozwiązanie działa dla mnie.
użyj Left Ctrldo aktywnego klucza.
Dodaj ten kod
// End alphanumeric section
w bloku podstawowym w / usr / share / X11 / xkb / symbols / usTeraz powinieneś być w stanie wykorzystać w lewo, w dół, w górę iw prawo klucz Ctrl+ h, j, k, l.
Nawiasem mówiąc, jeśli używałeś pentadactyla w Firefoksie, możesz dodać ten kod w ~ / .pentadactylrc
źródło
Znalazłem autokey i lepiej do mapowania.
Wierzę, że powiązanie klucza linku - Emuluj klawiaturę na laptopie - Zapytaj Ubuntu może ci pomóc.
źródło
Ten działa dla mnie na Arch. Ponownie mapuje Caps + hjkl na klawisze strzałek oraz Shift + Caps na Caps.
Wprowadź następujące dane
~/.Xmodmap
:Uruchom ponownie lub ustaw za pomocą
xmodmap ~/.Xmodmap
Jeśli pojawi się błąd taki jak:
Prawdopodobnie oznacza to, że musisz wyczyścić coś innego niż
mod5
(cokolwiek jest obecnie ustawioneMode_switch
). Sprawdź swoje obecne mapowania modyfikatora za pomocąxmodmap
.źródło