Erstens habe ich im Einfügemodus etwas eingegeben, wie z
Hello
Wenn ich in diesem Stadium den Einfügemodus nicht verlassen habe, deletefunktioniert dies und kann das gesamte Wort löschen, wenn ich möchte.
Wenn ich den Einfügemodus beende und den Einfügemodus erneut öffne, Hello
kann dies nicht von entfernt werden delete. Der neu eingegebene Inhalt kann jedoch entfernt werden.
Ich habe meine .vimrc umbenannt, das Problem besteht immer noch.
Und ich habe einige Tests auf einem Remote-Server über iterm durchgeführt und bin nicht auf dasselbe Problem gestoßen.
Was könnte die Ursache für dieses Problem sein? Wie man es repariert?
Ctrl-W
. Versuchen Sie das. Wenn das nichts bringt, stimmt etwas nicht mit Ihrem Vim. Ich benutze iTerm 2 und hatte noch nie solche Probleme.dw
oderdw
+ verwendenshift
, um Wörter zu löschen. Aberbackspace
undctrl
+w
beide funktionieren nicht in der zweiten Situation, die ich oben erwähnt habe.Antworten:
Dies ist eine Funktion von vim, obwohl IIRC standardmäßig nicht aktiviert ist.
backspace
eine Einstellung in vim ist, und Sie drei verschiedene Parameter einstellen:indent
,eol
undstart
Wenn Sie laufen
:help backspace
, wird es Ihnen sagen:Derjenige, der nicht für Sie eingestellt ist, ist
start
.Wenn Sie
set backspace=indent,eol,start
Ihrer .vimrc hinzufügen , können Sie im Einfügemodus eine Rücktaste über alles setzen.quelle
Ich hatte auch dies, die Standardwerte für die natürliche Textverarbeitung waren für mich falsch.
Gehen Sie zu
Preferences > Profiles > Keys
und laden Sie die StandardvoreinstellungNatural Text Editing
und löschen Sie alle Einträge, die sich mitdelete
unddelete
Verhalten befassen . Danach funktioniert es wie erwartet.quelle