Im normalen Modus kann ich Ctrl
+ E
drücken, wodurch der Rest des aktuellen Wortes gelöscht wird und in den Einfügemodus gewechselt wird.
Ich möchte das gesamte Wort löschen, unabhängig von der Cursorposition (natürlich innerhalb des Wortes).
Sie können "inneres Wort ändern" verwenden, indem Sie "ciw" eingeben, um ein Wort zu löschen, auf dem sich Ihr Cursor befindet.
Die Befehle "inner" und "a" sind in Vim großartig. Versuchen Sie auch "ci {" in einem {} Block oder "ca {", wenn Sie auch die {} Zeichen entfernen möchten. Um diese Befehle ins Englische zu übersetzen, um sie besser zu speichern, versuchen Sie: "change inner {block" und "change a {block".
Dokumentation unter http://vimdoc.sourceforge.net/htmldoc/motion.html#text-objects
ciw
undcaw
sind nicht genau gleich:ciw
löscht nur das Wort,caw
löscht auch den nachgestellten Leerzeichen.Antwort auf Ihre Folgefrage:
viwp
quelle
yiw
um das aktuelle Wort zu kopieren, setzen Sie den Cursor auf das zu ersetzende Wort und verwenden Sie esciw<C-r>0
. Danach können Sie den Cursor auf das nächste Wort setzen und.
den Ersatz wiederholen.:%s/a/b/g
.a
kann exakter Text oder ein regulärer Ausdruck sein undb
ersetzt alle Übereinstimmungena
durch. Sie können Regexes im vim-/
Modus testen . Ersetzen Sie%
durch eine Zeilennummer oder einen Bereich, wenn Sie nicht in allen Zeilen ersetzen möchten.Zur zweiten Frage:
bPldw
Dadurch gelangen Sie in der Reihenfolge zum Anfang des aktuellen Wortes, fügen das Standardregister vor dem Cursor ein, gehen zum nächsten Zeichen (das Sie über das Ende des gerade eingefügten Textes hinausführt) und löschen den Rest von das Wort.
quelle
bPlde
.viwp
Für die erste Frage
bcw
auch arbeiten. Es bedeutet "b
ack to the begin of word,c
hangew
ord". Aber ich denke, esciw
ist einprägsamer, was "c
hangei
nnerw
ord" bedeutet, nur einen Schritt.Für die zweite Frage zum Thema "Ersetzen durch Paste" lautet meine Lösung
"_diwP
. Esd
eletei
nnerw
ord zu einem Register Sie kümmern sich nicht undp
Aste den Inhalt des Standardregisters. Ein Vorteil ist, dass Sie das Standardregister viele Male einfügen können, da es nicht verschmutzt wäre. Es ist ein kleiner Komplex, also ordne ich ihn alsnnoremap ,r "_diwP
.quelle
Oder Sie können die Tastenfolge verwenden
bdwi
, um das aktuelle Wort zu löschen und in den INSERT-Modus zu wechseln.quelle
bcw
zum Anfang des aktuellen Wortes gehen und dann das Wort ändern, wodurch Sie den Einfügemodus verlassen.dwi
. Seien Sie nur vorsichtig, dass die Polizei es nicht bemerkt, da DWI in den meisten Staaten illegal ist.