Użytkownicy Vima, gdzie kładziesz prawą rękę? [Zamknięte]

116

Długoletni vim użytkowników, czy trzymać palce na jkl;lub hjklw trybie normalnym?

Standardowe pisanie bezwzrokowe uczy nas pozycji wyjściowej dla prawej ręki, gdy palec wskazujący znajduje się na jklawiszu, więc palce są włączone jkl;.

Ale standardowe klawisze ruchu Vima są hjkl.

Wracam do vima po ponad 10 latach (omg, zestarzałem się, kiedy nie zwracałem uwagi) i zaczynam przyciągać hjkl... ale to utrudnia wpisywanie górnych prawych liter, nawiasów klamrowych itp. Chciałbym nauczyć się używać najbardziej efektywnej / pragmatycznej metody teraz, zamiast trenować później.

Długoletni, hardkorowi użytkownicy vimów, jaka jest najlepsza praktyka?


Uwaga:

  1. Większe nakładanie się na Jak poruszają się maszynistki dotykowe w vi?
  2. Myślę, że zdaje to „subiektywny” test, ponieważ chodzi o celowe kultywowanie nieświadomej najlepszej praktyki, a nie tylko o preferencje ludzi
Sukotto
źródło
26
Dlaczego to nie jest prawdziwe pytanie ? Pyta, gdzie trzymać palce. To doskonale odpowiadające.
alternatywa
W tym przypadku „najlepsza praktyka” jest subiektywna. Ludzie są różni i kładą ręce tam, gdzie jest to dla nich wygodne.
Randy Morris,
1
Zaczynam i mam ten sam problem, jklç (klawiatura pt) jest lepsza do najlepszych ćwiczeń podczas pisania na klawiaturze komputera. To naturalne. Nie chcę, aby vim zmuszał mnie do oduczania się właściwego sposobu pisania, który spędziłem tyle czasu na nauce i ćwiczeniach.
ancm
1
@RandyMorris Z pewnością ludzie są inni i powinni robić wszystko, co dla nich najlepsze, jednak nie oznacza to, że niektóre praktyki są lepsze w większości sytuacji, przychodzą na myśl klawisze domowe do ogólnego pisania bezwzrokowego. Więc nie kupuję argumentu, że nie można na to odpowiedzieć, ponieważ jest subiektywny, a jeśli tak jest, to powinna być odpowiedzią zawierającą informacje, które wykażą, dlaczego nie ma jasnej najlepszej praktyki.
jonvw

Odpowiedzi:

118

Myślę, że jkl;jest to bardziej odpowiednie użycie vi. Po pierwsze, hi lnaprawdę nie ma to większego znaczenia. w, ei bsą znacznie bardziej przydatne w nawigacji poziomej. Jako bonus, ;jest łatwy do zdobycia, jeśli wymaga tego język. Posiadanie słabszego palca kboli i nie potrzebujesz najsilniejszego palca na tym h, jktóry jest prawdopodobnie najczęściej używany z czterech.

alternatywny
źródło
O kurcze. Jestem użytkownikiem Vima od kilku lat i zawsze używałem hjkl do strzałek. Chociaż rozumiem, że zaproponowany przez Ciebie sposób jest bardziej skuteczny, wątpię, czy kiedykolwiek będę miał dość odwagi, aby się na nią przełączyć.
Michaił Kałasznikow
2
O Boże, co to za królicza nora, którą zacząłem ...
Jason Kelley
16

Intro

Żadne z poprzednich 2 rozwiązań nie było w 100% satysfakcjonujące. Proponuję trzeci sposób, łączący to, co najlepsze z obu światów

Moja rekomendacja: „dół-góra-lewo-prawo”

Trzymaj górę / dół tam, gdzie są, a następnie przesuń trzeci i czwarty palec w lewo i w prawo

Następnie, aby uniknąć nadpisywania podstawowych funkcji Vima: Rzuć wszystko, co było włączone ; do pustego teraz przycisku h

Jako fajny bonus, klawisz „ l ” oznacza teraz „ lewo ”;)

noremap lh
noremap; l
noremap h;



Poprzedni „zdobywcy drugiego miejsca”, którzy używają układu „lewo-dół-góra-prawo” :


Wybór 1: „hjkl”

@ rekomendacja alternatywy . Keybinds pozostają domyślne ( hjkl ), prawa ręka pozostaje w głównym rzędzie ( jkl; )

  • plusy:
    • j (w dół) i k (w górę) pozostają na twoich podstawowych dwóch palcach tam, gdzie na to zasługują
  • Cons:
    • Musisz sięgnąć po h (po lewej) . Nawet jeśli to nie jest tak używane jak w, e, b , nadal jest to zakrwawiony przycisk ze strzałką i fajnie byłoby mieć w głównym rzędzie
    • Zasadniczo: wszystkie 4 palce nie spoczywają naturalnie na przyciskach strzałek. To dezorientuje moją rękę


Wybór 2: „jkl;”

Przesuń te 4 wiązania na 1, aby usiadły w pierwszym rzędzie:

noremap; l
noremap lk
noremap kj
noremap jh

  • plusy:
    • Bez zamieszania palców; wszystkie strzały są naturalnie pod palcami
  • Cons:
    • Jak powiedział @alternative, znajdowanie się w górę / w dół na drugim i trzecim palcu jest bardzo „nieoptymalne”
    • Podobnie, najsilniejszy palec po lewej to strata
Bukov
źródło
1
Dzięki. Jeśli chodzi o twoją rekomendację, jedyną rzeczą, która do tej pory nie działa, jest przełączanie się między podziałami za pomocą Ctrl + W + <direction>.
Rafał Cieślak
11

Trzymam ręce na pierwszym rzędzie, w normalny sposób, jak maszynista. Rzadko używam klawisza h do poruszania się, ponieważ przesuwanie o jedno miejsce w lewo zwykle nie jest wydajnym sposobem poruszania się (i nie pasuje do istoty Vima).

Jason Down
źródło
6

Rozumiem, że hjkljest to używane ze względów historycznych (tj. Oto dlaczego vim używa klawiszy hjkl jako klawiszy strzałek ) i nie jest oparte na żadnym uzasadnieniu ergonomicznym.

Osobiście wolę postępować zgodnie z podejściem zalecanym przez menedżera okien i3, które jak wyjaśniono w FAQ na temat Dlaczego domyślna konfiguracja używa jkl; zamiast hjkl? to ergonomiczny wybór.

i3 używa, jkl;ponieważ te klawisze tworzą „główny wiersz” pod prawą ręką podczas pisania bezwzrokowego.

Sprawdź to na vimie zmieniającym hjkl najkl;

mloskot
źródło
4

Chociaż rozumiem filozofię Vima, aby cały ruch był dostępny w rzędzie głównym, okazało hjklsię , że jest to sprzeczne z intuicją. O wiele bardziej rozsądna mapa, z którą myślałem, że będzie to konfiguracja podobna do osyijkl

    nnoremap j h
    nnoremap k j
    nnoremap i k

Okazało się, że jest to bardzo łatwe w nawigacji bardzo naturalnie.

j:left
i:up
k:down
l:right

Do przełączania w / z trybu insert / normal, osobiście używam, Alt-eponieważ prawie zawsze używam Gvim i nie muszę się martwić, że niektóre terminale mają problemy z Alt.

    nnoremap <A-e> i
    inoremap <A-e> <esc>l
vexe
źródło
2
To brzmi podejrzanie jak emacs!
rlms