Masz wiele opcji. Jedną z opcji, a IMO najrozsądniejszym i najłatwiejszym jest po prostu przestać wyłączać klawisze strzałek. Rozumiem, dlaczego wielu hardkorowych vimerów mówi takie rzeczy
Nigdy nie powinieneś nigdy więcej używać klawiszy strzałek! Za każdym razem, gdy używasz klawiszy strzałek, tracisz 3 minuty, szczeniak umiera i ktoś przechodzi na Emacsa!
(Oczywiście żartuję) Są jednak klawisze strzałek. Są niezwykle przydatne do nawigacji:
W trybie wstawiania
W wierszu poleceń
Zasadniczo, gdy ludzie mówią ci, abyś nie używał klawiszy strzałek, dzieje się tak dlatego, że chcą, abyś ponownie nauczył się nawigacji w bardziej vim-sposób. Jeśli czujesz się swobodnie hjkl
i najczęściej używasz klawiszy strzałek w trybie wstawiania, nie ma powodu, aby zmuszać się do ich nieużywania.
Opcja # 2 polega na zmianie mapowania, ctrl-hjkl
aby działała jak klawisze kursora. Jest to miłe, ponieważ możesz pozostać na homerow i dobrze pasuje do pamięci mięśni, której nauczyłeś się już hjkl
w trybie normalnym. W rzeczywistości to właśnie robię . Główną wadą tego podejścia jest to, że ustawienie w terminalu vim może być uciążliwe, ponieważ <C-j>
powoduje powstanie NUL
bajtu. Poradzę sobie z tym za pomocą Gvima. Nie wiem, czy istnieje łatwa poprawka dla konsoli vim, czy nie.
Opcja # 3 służy <C-o>
do wykonywania małych ruchów w trybie normalnym. Na przykład, jeśli piszesz
Hello world!
cursor^
i zdajesz sobie sprawę, że zapomniałeś przecinka, zamiast robić leftleftleftleftleftleft, możesz po prostu wykonać <C-o>b<C-o>h
lub <C-o>2Fo
inną kombinację ruchów w trybie normalnym, którą lubisz.
Oczywiście, inną opcją, którą bardzo lubię, jest po prostu użycie Esc, wykonaj kilka małych ruchów, zanim wrócisz do normalnego trybu. Wspomniałeś, że wolisz tego nie robić, ale czasami jest to naprawdę najbardziej efektywny sposób.
Prawdopodobnie istnieją też inne podejścia, ale te, które lubię, działały dla mnie.