Die Löschtaste funktioniert nicht im VIM-Einfügemodus zum Löschen zuvor eingegebener Inhalte


12

Ich habe vim in meinem iterm2 geöffnet. Erstens habe ich etwas im Einfügemodus eingegeben, wie

Hello

Wenn ich den Einfügemodus zu diesem Zeitpunkt nicht beendet habe, deletefunktioniert die Taste und ich kann das ganze Wort löschen, wenn ich möchte.

Wenn ich den Einfügemodus beende und den Einfügemodus erneut öffne, Hellokann dies nicht von entfernt werdendelete Schlüssel . Der neu eingegebene Inhalt kann jedoch entfernt werden.

Ich habe meine .vimrc umbenannt, Problem besteht noch.

In der Shell-Befehlszeile deletefunktioniert mein Schlüssel gut.

Und ich habe einige Tests auf Remote-Servern durchgeführt iterm, bei denen nicht das gleiche Problem aufgetreten ist.

Was könnte die Ursache für dieses Problem sein? Wie man es repariert?


PS: Da ich ein Macbook benutze, entspricht der deleteSchlüssel dem backspaceim PC.

Antworten:


17

Fügen Sie dies einfach Ihrer .vimrc hinzu:

set backspace=indent,eol,start

Vielen Dank, dass Sie mir Zeit gespart haben :)
Sreedhar GS

3

Dies hat nichts mit der Shell oder der Version von zu tun vim. Es ist eine einfache Konfigurationssache, da die Operation der Rücktaste im Einfügemodus ein gewöhnliches vimkonfigurierbares Verhalten ist. Insbesondere ist es vimdie backspaceEinstellung. Auf einem Rechner haben Sie (höchstwahrscheinlich) diesen Wert auf die leere Zeichenfolge gesetzt, und auf einem anderen haben Sie ihn so eingestellt, dass er den Wert enthält start. Und das ist wahrscheinlich in einer globalen Konfigurationsdatei.

Beachten Sie, dass der Standard , wenn Sie bringen vimin vi-kompatible - Modus ist für die backspaceVariable die leere Zeichenkette zu sein. Das Verhalten, über das Sie sich beschweren, ist tatsächlich das Verhalten des Originals vi. Linux-Betriebssysteme neigen dazu, die globale Konfigurationsdatei mit allen möglichen vimOptionen zu füllen, die "freundlichere" Verhaltensweisen aktivieren, die von denen des Originals abweichen vi. Die BSDs neigen nicht dazu.

Weitere Lektüre

  • Arnold Robbins, Elbert Hannah und Linda Lamb (2008). "Einfache Bearbeitung". Lernen Sie die vi und Vim Editoren . O'Reilly Media, Inc .. ISBN 9781449313258. p. 14.
  • :help backspace. vim Dokumentation.
  • Fehler # 19903 . 1998. Debian BTS.


0

Überprüfen Sie die iTermTastenzuordnungen ( Preferences -> Profiles -> Keys). Ich habe die Standardeinstellung für die natürliche Textbearbeitung verwendet, und durch diese Antwort konnte das Problem behoben werden, indem die mit dem Löschen verbundenen Tastenzuordnungen gelöscht wurden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.