Ich habe es in vielen Artikeln lesen ( zB ) , dass es die Pfeiltasten im normalen Modus verwenden , um eine schlechte Praxis ist. Könnte jemand erklären, warum es eine falsche Praxis ist, wenn überhaupt?
key-bindings
cursor-movement
Ankit Jain
quelle
quelle
hjkl
in Dvorak. Es ist definitiv weniger sinnvoll als bei QWERTY, aber ich weiß nicht, dass ich es als "schwierig zu bedienen" bezeichnen würde. Sie sind nur Schlüssel, und es ist nicht so, als wäre es schwierig, sie oder irgendetwas zu erreichen, wenn man sich erst einmal daran gewöhnt hat.hjkl
die beste Option zum Verschieben eines Dokuments sein sollte. Die Wahrheit ist, dass einige Tastaturen zuhjkl
der Zeit, als vi erstellt wurde, die Pfeiltasten aktiviert hatten. Daher verwendete vi im normalen Modus dieselben Tasten, um das Tastaturlayout anzupassen. Hier ist ein Artikel mit einem Foto der Tastatur: catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keyshjkl
. Die guten. Aber sie werden zumindest teilweise zum Dogma aufgeblasen, weil sich die Menschen besser fühlen müssen als die anderen.hjkl
es nicht die besten sind, die jemals in Dvorak sind. Aber als Dvorak-Benutzer finde ich sie ein bisschen praktisch, da sie miteinander gepaart sind: wiejk
auf einer Seite des Boards; undhl
auf der anderen Seite.Antworten:
Eigentlich ist das keine schlechte Praxis.
Viele Leute ( einschließlich Vims Dokument, wie die Antwort von @B Layer zeigt ) argumentieren, dass Sie keine Pfeiltasten verwenden sollten, da sich Ihre Hände von der Startzeile (der zweiten Zeile Ihrer Tastatur, in der Sie sich befinden hjkl) wegbewegen und dies Sie weniger effizient macht .
Dies ist (zumindest IMO) ein schlechtes Ergebnis von vim "Puristen" -Kreisruck: Neue Benutzer befolgen dies blind, einige deaktivieren sogar die Pfeiltasten und beschweren sich dann, dass sie nicht so effizient sind wie zuvor.
Die einzige wirkliche Regel für die Verwendung von vim ist die effiziente Verwendung: Wenn Sie sich mit Leftund wohler fühlen Rightals mit hund l , verwenden Sie die Pfeiltasten. Vim hat sogar eine
set mouse=a
Option, wenn Sie eine Maus verwenden möchten!Sobald Sie gewöhnen VIM und besser mit den verschiedenen zur Verfügung stehenden Bewegungen zu erhalten ( f, t, ,, ;, w, b, e, ge, und im Grunde alles in
:h quickref
) Sie können erkennen , dass Sie nicht mit den Tasten Pfeil so viel. Und wenn Sie sie immer noch verwenden, ist dies kein Problem. Verwenden Sie das, womit Sie am effizientesten sind.Beachten Sie, dass das Argument, die Startreihe nicht zu verlassen, um mehr Effizienz zu erzielen, meiner Meinung nach nicht so gut ist: Wenn Sie sich Warum verwendet vim hjkl anschauen, werden Sie feststellen, dass diese Schlüssel ausgewählt wurden, weil es keinen Pfeil gab Schlüssel, als Vi geschrieben wurde. Man könnte argumentieren, dass, wenn die Tastaturen zu diesem Zeitpunkt anders wären, niemand in Betracht ziehen würde, die Pfeiltasten nicht zu verwenden.
quelle
hjkl
nur um etwas Schmerz von meinem Handgelenk zu lindern.Ich weiß nicht mehr, ob das wirklich relevant ist, aber ich bin ein Oldtimer, also hier ein bisschen Geschichte.
Früher hatten VT100-Terminals Pfeiltasten, aber durch Drücken einer Taste wurde eine Escape-Sequenz wie
<ESC>[A
für Auf,<ESC>[B
Ab usw.übertragen. Da es sich um ein serielles Terminal handelt, das mit 9600 Baud kommuniziert, war es dem Benutzer möglich, die Tasten zu schnell zu drücken um die gesamte Sequenz zu übertragen, die dazu führen würde, dass ein Tastendruck die Sequenz des vorherigen Tastendrucks unterbricht und vi verwirrt.
Dies würde dazu führen, dass vi unerklärlicherweise in den Einfügemodus wechselt und [B [B [B [B [B [B] in Ihre Datei einfügt, wenn Sie den Abwärtspfeil gedrückt halten. Ich sage aus unerklärlichen Gründen, weil es nichts an dieser Sequenz gibt, das in den Einfügemodus wechseln sollte, und die Tatsache, dass jede Sequenz mit einem ESC-Zeichen beginnt, sollte den Einfügemodus verlassen haben. Aber immer noch würde es Müll einfügen. Nicht immer - nur wenn Sie es eilig hatten.
Man wurde schnell müde und beschloss, sich nur an die
hjkl
Schlüssel zu halten.quelle
Obwohl ich mit @statox einverstanden bin, dass niemand zurechtgewiesen, gemieden, exkommuniziert oder geteert werden sollte, wenn er die Pfeiltasten verwendet. Verwenden Sie Ihre Software, wie Sie es für richtig halten Eine Art Laissez-Faire-Einstellung, wenn ich einem aufgeschlossenen neuen Benutzer eine Anleitung geben würde. Ich würde Ihnen dringend empfehlen, zunächst die Best Practices zu befolgen. Sie sind aus einem bestimmten Grund "Best Practices". Sie wurden von vielen Leuten, die vor Ihnen und mir gekommen sind, mit gutem Erfolg eingesetzt.
Verdammt, sogar Vims eigene Hilfe treibt Sie in diese Richtung , wenn auch nicht ohne Übertreibung (" stark verlangsamen") ...
Es gibt auch die Tatsache, dass alle Entscheidungen, die Sie zu Beginn treffen, zu Gewohnheiten werden können, die schwer zu brechen sind, wenn Sie in Zukunft Änderungen vornehmen möchten. So ceteris paribus , warum nicht eine empfohlene Gewohnheit jetzt übernehmen , anstatt die Chance zu nehmen , dass Pfeiltasten ist ineffizient oder Karpal-Tötung?
Alles in allem sollten Sie ehrliche Anstrengungen unternehmen, um Dinge ohne Pfeiltasten zu tun. Nach einer angemessenen Zeitspanne, wenn Sie einfach nicht ohne Auf / Ab / Links / Rechts leben können, tun Sie es nicht.
... würde ich einem neuen Benutzer sagen, der sich für meine Meinung interessiert. Nehmen Sie es nicht persönlich, wenn Sie nicht einverstanden sind (ich spreche mit Ihnen, Downvoter).
quelle
don't think it's necessary to rank best practices
Nun, es scheint mir, dass wir uns auf die Dinge konzentrieren sollten, die uns den besten Wert im Leben geben, da die Ressourcen begrenzt sind und das Leben kurz ist. Ich weiß zufällig, dass die Tasten ein Herz sind, weil eine falsche Kindheit Schurke, Larne, Angband usw. auf einem Laptop ohne Nummernblock spielt, aber manche Leute haben ihre Kindheit besser verbracht und müssen trotzdem die Pfeiltasten "verlernen". Ich denke, dass Lernbewegungen, Reichweiten usw. viel nützlicher sind, um Zeit zu verbringen.Andere Antworten sagten, dass der Effizienzverlust durch das Bewegen der Hände aus der Startreihe keine so große Sache ist, und ich stimme dem größtenteils zu. Was jedoch eine große Sache ist, ist, wenn Sie vim lernen und immer die Pfeiltasten verwenden, um zu vermeiden, dass Sie wieder in den normalen Modus wechseln.
Mit anderen Worten, die Verwendung einer Single, ←bei der Sie eine Single verwendet hätten, hist kein großer Produktivitätsverlust, aber die Verwendung einer Single, bei der Sie hätte verwendet ←←←←←←←←←←werden können, EscI ist ein großer Verlust.
Das ist der Grund, warum Sie beim Lernen von vim aufgefordert werden, die Pfeiltasten zu meiden, weil Sie so gezwungen sind, den normalen Modus zu lernen, anstatt den Einfügemodus nie zu verlassen. Im normalen Modus werden alle Effizienzgewinne erzielt.
quelle
hjkl
." (Beibehaltung der vorsätzlichen Übertreibung.)←
könnten Sie verwendet haben1
0
←
oder, noch einfacher,Home
. Letzteres funktioniert sogar in Windows Notepad.Es gibt zwei Hauptgründe, warum Leute sagen, dass Sie die Pfeiltasten nicht benutzen sollten. Einige behaupten, dass hjkl bevorzugt wird, weil es Ihre Hände in der Startreihe hält, was nicht falsch ist , aber auch keine Rolle spielt. Andere, einschließlich mir, würden sagen, Sie sollten die Pfeiltasten nicht verwenden, wenn Sie mehr als ein paar Zeichen bewegen, aber Sie sollten auch nicht hjkl verwenden.
Wichtig ist nicht, welche Schlüssel Sie verwenden, sondern wie viele . Wenn Sie an den Anfang des Wortes springen möchten, drücken Sie nicht
hhh
. Sie treffenb
. Das Ende des Wortes iste
nichtllll
. Anfang der Zeile:0
, Ende der Leitung:$
. Und noch etwas,/search
für den Text, der existiert, wohin Sie wollen. (oder welche der erweiterten Bewegungsbefehle Sie bevorzugen).Aber jedes Mal, wenn Sie mehr als zweimal hintereinander denselben Schlüssel eingeben, gibt es eine bessere Möglichkeit, dies zu tun.
quelle
Eine genauere Aussage könnte lauten: "Die Verwendung der Pfeiltasten ist eine schlechte Übung, wenn versucht wird, Vim besser zu lernen " . Neulinge sind es gewohnt, sich mit den Pfeiltasten zu bewegen, und lernen
hjkl
nicht, um zu sehen, ob dies vorzuziehen ist.Persönlich habe ich, nachdem ich mich mit vim vertraut gemacht hatte, die Pfeiltasten für eine Weile deaktiviert , um den
hjkl
Dreh raus zu bekommen, und sie später wieder aktiviert, um meine zu vereinfachen.vimrc
. Die konventionelle Weisheit gilt in meinem Fall; Als ich wusste, wie man beidehjkl
und die Pfeiltasten benutzt, benutzte ich fast ausschließlich die ersteren.quelle
Die übliche Antwort lautet Effizienz. Wahrscheinlich wurden Sie im Laufe der Jahre im Umgang mit dem Tippen von Berührungen geschult, bei dem Sie die Hände auf asdf und jkl; Ein Großteil der Tastenbelegungen in Vi basiert auf dieser Tatsache, einschließlich der hjkl-Bewegungsbefehle.
Ich persönlich benutze eigentlich beide. Ich verwende hjkl, wenn ich große Textabschnitte aktiv bearbeite, und die Pfeiltasten, wenn ich durch Protokolldateien scrolle (und |, g und /, wenn ich Spot-Bearbeitungen in einer Datei vornehme). Das ist genau das, was für mich gut funktioniert, und in einem Fall wie diesem ist es das, worauf es wirklich ankommt.
quelle
Vor langer Zeit hatten viele Terminals keine oder nicht alle vier Pfeiltasten. Softwaresysteme, die eine Navigation benötigten, lieferten normalerweise eine Art Navigationsansatz, ohne auf Pfeiltasten angewiesen zu sein, und Vi-hjkl ist ein kanonisches Beispiel. (Ein weiteres klassisches Beispiel ist WordStars ^ E- ^ S- ^ X- ^ D.) Als das Dienstprogramm der Tastaturnavigation immer offensichtlicher wurde, kamen immer mehr neue Terminals mit Pfeiltasten auf den Markt, und Softwaresysteme ordneten diese häufig den alten Methoden von zu Navigation. Dies führte jedoch zu einer Art Tragbarkeitsbedenken: Wenn Kinder, die an Schulen ausgebildet wurden, sich auf eine so ausgefallene neue Funktion wie Pfeiltasten verlassen sollten, waren sie möglicherweise nicht in der Lage, produktiv zu sein, wenn - einmal üblich - Tastaturen ohne Pfeiltasten.
Deshalb warnten die Lehrer von Kursen in Grundlagen der Informatik die Schüler vorsichtig, den kleinsten gemeinsamen Nenner zu verwenden, um ihre Beschäftigungsfähigkeit zu maximieren. Und diese Praxis hat alle Gründe, die sie einmal gehabt haben könnte, lange überlebt.
In modernen Implementierungen von vi liegt der Hauptgrund für den Vorzug von hjkl darin, dass es etwas schneller ist, Tasten zu verwenden, die sich bereits unter Ihrer Hand befinden, als Ihre Hand dorthin zu bewegen, wo sich Ihre Pfeiltasten befinden. Der Nachteil beim Vermeiden des Kontextwechsels ist natürlich, dass Sie möglicherweise einen Kontextwechsel von vi durchführen müssen. Wenn Menschen heutzutage nur noch selten Wert auf Tippgeschwindigkeit legen, ist es eine Frage der persönlichen Präferenz, ob Sie die eine oder die andere Handlung ausführen, und die Verwendung von Pfeiltasten ist von Natur aus nichts Schlechtes mehr, wenn überhaupt.
quelle