Vim-Benutzer, wo ruhen Sie Ihre rechte Hand? [geschlossen]

116

Halten Sie Ihre Finger auf jkl;oder hjklim normalen Modus?

Die Standard-Touch-Eingabe lehrt uns, dass die Ausgangsposition für die rechte Hand den Zeigefinger auf der jTaste hat, sodass Ihre Finger eingeschaltet sind jkl;.

Aber Standard-Vim-Motion-Tasten sind hjkl.

Nach mehr als 10 Jahren kehre ich wieder zu vim zurück (omg, ich bin alt geworden, als ich nicht aufgepasst habe) und finde mich zu hjkl... hingezogen, aber das macht es schwieriger, Buchstaben, Klammern usw. oben rechts einzugeben Ich möchte mich darin schulen, jetzt die effizienteste / pragmatischste Methode anzuwenden, anstatt später neu trainieren zu müssen.

Langjährige Hardcore-Vim-Benutzer, was ist die beste Vorgehensweise?


Hinweis:

  1. Größere Überlappung mit Wie navigieren Touch-Schreibkräfte in vi?
  2. Ich denke, dies besteht den "subjektiven" Test, weil es darum geht, bewusst eine unbewusste Best Practice zu pflegen und nicht nur um die Vorlieben der Menschen
Sukotto
quelle
26
Wie ist das keine echte Frage ? Er fragt, wo Sie Ihre Finger behalten sollen. Das ist perfekt zu verantworten.
Alternative
Die "Best Practice" ist in diesem Fall subjektiv. Menschen sind anders und legen ihre Hände dort ab, wo es für sie angenehm ist.
Randy Morris
1
Ich fange an und habe das gleiche Problem. Jklç (pt-Tastatur) eignet sich besser für das Tippen auf einer Computertastatur. Es fühlt sich natürlich an. Ich möchte nicht, dass ich die richtige Art des Schreibens verlerne, die ich so viel gelernt und geübt habe.
ancm
1
@RandyMorris Sicherlich sind die Leute anders und sie sollten das tun, was für sie am besten funktioniert. Dies bedeutet jedoch nicht, dass bestimmte Praktiken in den meisten Situationen besser sind. Ich kaufe mir also nicht das Argument, dass dies nicht beantwortet werden kann, weil es subjektiv ist, und wenn dies tatsächlich der Fall ist, sollte dies die Antwort mit Informationen sein, um zu demonstrieren, warum es keine eindeutige Best Practice gibt.
Jonvw

Antworten:

118

Ich denke, das jkl;ist eigentlich die geeignetere Verwendung für vi. Zum einen hund lwirklich nicht so wichtig. w,, eund bsind für die horizontale Navigation wesentlich nützlicher. Als Bonus ;ist es leicht zu bekommen, wenn die Sprache es erfordert. Ein schwächerer Finger ktut weh, und Sie brauchen Ihren stärksten Finger nicht auf dem h, wenn er auf dem sein sollte, der jwahrscheinlich der am häufigsten verwendete der vier ist.

Alternative
quelle
Oh Mist. Ich bin seit ein paar Jahren ein vim-Benutzer und habe immer hjkl für die Pfeile verwendet. Obwohl ich verstehe, dass Ihr vorgeschlagener Weg effizienter ist, bezweifle ich, dass ich jemals genug Mut haben werde, dorthin zu wechseln.
Mikhail Kalashnikov
2
Oh Gott, was ist das für ein Kaninchenbau, den ich angefangen habe ...
Jason Kelley
16

Intro

Keine der beiden vorherigen Lösungen war zu 100% zufriedenstellend. Ich schlage einen dritten Weg vor, der das Beste aus beiden Welten kombiniert

Meine Empfehlung: "runter-hoch-links-rechts"

Halten Sie hoch / runter, wo sie sind, und machen Sie dann den 3. und 4. Finger nach links und rechts

Um ein Überschreiben der Basis-Vim-Funktionen zu vermeiden: Werfen Sie alles, was früher aktiviert war . auf die jetzt leere h- Taste

Als niedlichen Bonus steht die Taste " l " jetzt für " left ";)

noremap lh
noremap; l
noremap h;



Die vorherigen "Zweitplatzierten", die beide das Layout "von links nach unten nach oben nach rechts" verwenden :


Wahl 1: "hjkl"

Empfehlung von @ alternative . Tastenkombinationen bleiben Standard ( hjkl ), rechte Hand bleibt in der Startzeile ( jkl; )

  • Profis:
    • j (unten) und k (oben) bleiben an Ihren primären 2 Fingern, wo sie es verdienen
  • Nachteile:
    • Sie müssen nach h greifen (links) . Auch wenn dies nicht so verwendet wird wie w, e, b , ist es immer noch ein blutiger Pfeilknopf und es wäre schön, ihn in der Startreihe zu haben
    • Grundsätzlich gilt: Alle 4 Finger ruhen natürlich nicht auf Pfeiltasten. Das verwirrt meine Hand


Wahl 2: "jkl;"

Schieben Sie diese 4 Bindungen über 1, damit sie in der Startreihe sitzen:

Noremap; l
noremap lk
noremap kj
noremap jh

  • Profis:
    • Keine Fingerverwirrung; Alle Pfeile sind natürlich unter den Fingern
  • Nachteile:
    • Wie @alternative sagte, ist das Auf / Ab am 2. und 3. Finger sehr "nicht optimal".
    • Ebenso ist der stärkste Finger links eine Verschwendung
Bukov
quelle
1
Vielen Dank. Was Ihre Empfehlung betrifft, ist das einzige, was bisher nicht funktioniert, das Wechseln zwischen Splits mit Ctrl + W + <direction>.
Rafał Cieślak
11

Ich halte meine Hände in der ersten Reihe, wie es bei normalen Schreibkräften der Fall ist. Selten benutze ich die h-Taste für Bewegungen, da das Verschieben eines Feldes nach links normalerweise keine effiziente Bewegungsmethode ist (und nicht wirklich zum Wesen von Vim passt).

Jason Down
quelle
6

Ich verstehe, dass dies hjklaus historischen Gründen verwendet wird (dh aus diesem Grund verwendet vim die hjkl-Tasten als Pfeiltasten ) und es basiert nicht auf ergonomischen Gründen .

Ich persönlich bevorzuge es, den vom i3-Fenstermanager empfohlenen Ansatz zu befolgen, der in den häufig gestellten Fragen zu Warum verwendet die Standardkonfiguration jkl verwendet wird? statt hjkl? ist eine ergonomische Wahl.

i3 wird verwendet, jkl;weil diese Tasten beim Tippen die "Startzeile" unter Ihrer rechten Hand bilden.

Prüfen Sie dies auf vim Remapping die hjkl zujkl;

Mloskot
quelle
4

Obwohl ich Vims Philosophie verstehe, alle Bewegungen in der Startreihe verfügbar zu haben, fand ich sie hjklkontraintuitiv. Eine viel vernünftigere Karte, von der ich dachte, dass sie ein verschwenderisches Setup wäreijkl

    nnoremap j h
    nnoremap k j
    nnoremap i k

Ich fand das sehr einfach zu navigieren.

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

Zum Alt-eEin- und Ausschalten des Einfüge- / Normalmodus verwende ich persönlich, da ich fast immer Gvim verwende und mir keine Sorgen machen muss, dass einige Terminals Probleme mit Alt haben.

    nnoremap <A-e> i
    inoremap <A-e> <esc>l
ärgerlich
quelle
2
Das klingt verdächtig nach Emacs!
rlms