Warum sollten Sie die Tasten hjklin derselben Zeile anstelle der Tasten in einem Dreieck verwenden, wasdum sich in Videospielen fortzubewegen?
Warum nicht etwas gleichwertiges mit der rechten Hand, wie ijkloder pl;'?
Warum sollten Sie die Tasten hjklin derselben Zeile anstelle der Tasten in einem Dreieck verwenden, wasdum sich in Videospielen fortzubewegen?
Warum nicht etwas gleichwertiges mit der rechten Hand, wie ijkloder pl;'?
vim
ist davon befreit, mit dem technologischen Fortschritt Schritt zu halten: 3h
, sondern auf denj
(deshalb haben Sie einen "Nippel" auf demj
Schlüssel). Der Grund dafür ist, dass Sieb
viel mehr verwenden werden alsh
und dass;
es in vielen Programmiersprachen:
praktisch ist, auf etwas zuzugreifen (und mit der Zeit haben Sie etwas, das in Vim immer praktischer wird).Antworten:
Von http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys/ :
quelle
hjkl
eine logischere Form als gewähltijkl
?"Die Antwort von Nobe4 ist großartig und erklärt, warum wir
hjkl
sehr gut verwenden. Es ist jedoch wirklich interessant, die vollständige Tastatur zu sehen, und viele seltsame Dinge an vim sind sinnvoller, wenn Sie die vollständige Tastatur sehen können, auf der sie entwickelt wurde. Warum verlässt sich vi zum Beispiel so stark auf denesc
Schlüssel, wenn er sich an einem so seltsamen und unbequemen Ort befindet? Deshalb:Wie Sie sehen können,
esc
befindet sich auf den meisten Tastaturen ein Tabulator.ctrl
ist eine weitere Taste, die etwas umständlich zu erreichen ist, sich aber an einer sehr bequemen Stelle auf dieser Tastatur befindet (wo normalerweise die Feststelltaste ist).quelle
vi
eine<Leader>
Zuordnung? Ich dachte, das wäre eine spätere Erfindung ...:help <leader>
hat keinen Signaturtext{not in Vi}
und es steht, dass vi hatte:map
(obwohl nicht:noremap
), also bin ich mir ziemlich sicher, dass vi den Anführer hatte. Selbst wenn dies nicht der Fall wäre, könnte ich mir vorstellen, dass die Geschichte der vi-Tastatur das Design von vim zumindest ein wenig beeinflusst.<leader>
Funktion in vi.:map
überhaupt)Warum diese Pfeile auf diese Tasten gedruckt wurden ... liegt daran, dass sie mit der Steuertaste für die lokale Cursorbewegung verwendet werden können. Strg-H und Strg-J (Rücktaste und Zeilenvorschub) liegen auf der Hand und sind auch heute noch ein einfaches Mnemon. Strg-K ist ein "vertikaler Tabulator", wurde jedoch manchmal für den umgekehrten Zeilenvorschub bei Terminals vor ANSI verwendet. Die Verwendung von Strg-L für einen zerstörungsfreien Vorwärtscursor wurde wahrscheinlich aufgrund der Position der Tastatur gewählt.
Möglicherweise haben Sie auch auf dem Bild der Tastatur in der anderen Antwort bemerkt, dass "HOME" auf der Taste
^
/ steht~
. Natürlich bewegt Strg- ^ den Cursor nach Hause (wird je nach Modus nach links oben oder links unten gesendet).Diese Steuerungszuordnungen wurden auch für Wyse-Terminals, das Kermit-Protokoll, verwendet und in einigen Versionen von PC ANSI.SYS unterstützt.
Quellen:
kcuf1=^L
undkcuu1=^K
quelle