Ich habe gerade angefangen, Vim als IDE zu verwenden. Ich habe es jetzt eine Weile als Testeditor verwendet, sodass ich nicht sehr oft in den Befehlsmodus wechseln musste. Da ich jedoch in Java programmiere, muss ich in den Befehlsmodus wechseln, um die Datei zu erstellen, zu kompilieren / auszuführen ... usw.
Das Problem ist: Ich brauche einen guten Weg, um zwischen den beiden Modi zu wechseln.
Ich habe online gesucht und es heißt, dass der <Esc>
Schlüssel das tun soll, aber das funktioniert bei mir nicht (vielleicht nicht bei gVim? Ich weiß nicht warum.)
Ich muss CTRLOjedes Mal drücken , um in den Befehlsmodus zu wechseln. Die Escape-Taste funktioniert in diesem Modus. Sie bringt mich zurück in den Einfügemodus. Aber gibt es eine bessere oder einfachere Möglichkeit, zwischen Befehlsmodus und Einfügemodus zu wechseln?
ihello<ESC>:w hello.txt<ENTER>
ctrl-[
funktioniert als Ersatz für Esc auf vielen Tastaturen.Antworten:
Ihr Vim wird anscheinend im einfachen Modus gestartet . Siehe
:help easy
.Dies geschieht, wenn Vim mit dem
-y
Argument oder als aufgerufen wird oder wennevim
Sie:set insertmode
irgendwo in Ihrer.vimrc
Konfiguration eine haben. Suchen Sie die Quelle und deaktivieren Sie sie. vorübergehend kann dies auch über Ctrl+ erfolgen O:set noim
Enter.quelle
Durch Drücken ESCvon wird der Einfügemodus in den normalen Modus beendet, in dem Sie drücken können, :um einen Befehl einzugeben. Drücken Sie ierneut, um zum Einfügemodus zurückzukehren, und Sie können loslegen.
Ich bin kein Vim-Guru, daher kann jemand anderes erfahrener sein und Ihnen andere Optionen geben.
quelle
Dies wurde in anderen Fragen erwähnt , ctrl + [entspricht jedoch ESCallen Tastaturen.
quelle
Verwenden von
jj
In meinem Fall die Einstellung .vimrc (oder in gVim ist es in
_vimrc
) unten.quelle
Ich komme von Emacs und habe festgestellt, dass ich
ctrl +
Schlüssel mag, um Dinge zu erledigen, und in vim habe ich festgestellt, dass beide[ctrl + C]
und[alt + backspace]
vom Einfügemodus in den Normalmodus wechseln. Sie könnten versuchen, herauszufinden, ob eines davon für Sie funktioniert.quelle
Für mich war das Problem, dass ich mich im Aufnahmemodus befand . Um den Aufnahmemodus zu verlassen, drücken Sie q. Dann Escarbeitete wie erwartet für mich.
quelle
Sie können Alt + H, J, K, L verwenden, um den Cursor im Einfügemodus zu bewegen.
quelle
Es gibt auch eine weitere Lösung für diese Art von Problem, die meiner Meinung nach eher selten ist, und die möglicherweise auftritt, wenn Sie vim unter OS X Sierra verwenden. Eigentlich ist es ein Problem mit der Esc-Taste - nicht mit vim. Zum Beispiel konnte ich mit Esc kein Vollbildvideo auf Youtube beenden, aber ich habe ein paar Monate damit gelebt, bis ich das gleiche Problem mit vim hatte.
Ich habe diese Lösung gefunden. Wenn Sie faul genug sind, einem externen Link zu folgen, hat es geholfen, Siri auszuschalten und den Prozess im Aktivitätsmonitor zu beenden.
quelle