2017-01-05 3 views
4

diese Textzeile in vim gegeben, wobei die Cursor an der Einfügemarke befindet, und der Benutzer ist im Befehlsmodus:Wie lösche ich das vorherige Zeichen in vim?

sales_tax: row["sales tax"] , 
____________________________^ 

Was ist der schnellste Weg, um den Raum zwischen den ] und den , zu löschen?

+0

sind Sie im Einfügemodus oder Befehlsmodus? –

+0

Befehlsmodus. Eine Antwort, die darauf abzielt, dies in beiden Modi zu tun, wäre ein Bonus. Aktualisierte Frage, um den Befehlsmodus anzugeben. – jerzy

+1

Wenn Sie sich im Einfügemodus befinden, können Sie einfach die Rücktaste drücken, aber ein nützlicher Trick ist ctrl-o, wo Sie einen Befehlsbefehl ausführen und dann sofort in den Einfügemodus zurückkehren können. Siehe http://vim.wikia.com/wiki/Use_Ctrl-O_instead_of_Esc_in_insert_mode_mappings. @ Axnyffs Antwort ist jedoch die beste. –

Antwort

14

Sie einfach X verwenden soll (was Verschiebung + x)

3

Einfache hx (dh nach links bewegen + del char) im Befehlsmodus ist auch eine Option.

+0

Es ist immer noch eine richtige Antwort, warum Sie es ablehnen? –

+0

@ Meninx- メ ネ ン ッ ク ス meine Frage angegeben, "Was ist der schnellste Weg." – jerzy

+0

@jerzy 'Benutze deine Downvotes, wenn du auf (...) eine klare und vielleicht gefährliche Antwort triffst. Ist diese Antwort nicht korrekt? es könnte für einige Anfänger nützlich sein. –

-1

Hier gibt es bereits zwei gute Antworten. Angenommen, Sie möchten mit der Rücktaste das vorherige Zeichen im normalen Modus löschen. Sie können in Ihrer ~/.vimrc Datei mit dieser Linie, dieses Verhalten ändern:

nnoremap <silent> <backspace> X 

Diese vim sagen den X Befehl zu erteilen (wie in Axnyff's answer angegeben), wenn Sie Rück getroffen im normalen Modus. Ich denke, ich mag das; Es lebt jetzt in meinem ~/.vimrc.

+0

Persönlich finde ich Rücktaste, um wirklich gut mit meiner ' '/' 'Funktionalität übereinzustimmen. 'nnoremap ' –

+0

Wenn 'backspace' nun' X' ist, was ist 'backspace'? Ich persönlich vermeide Remaps, die mit dem Standardverhalten in Konflikt geraten, so dass ich mich nicht an nicht standardmäßige Funktionen gewöhne, wenn ich auf einen Computer spreche, auf dem mein vimrc nicht installiert ist. – jerzy

+0

Standardmäßig ist die Rücktaste im normalen Modus nicht interessant. Es ist standardmäßig auf "h" (Cursor nach links bewegen) eingestellt (siehe ': help '), genauso wie die Leertaste standardmäßig auf 'l' (Cursor nach rechts bewegen) gesetzt ist. Sie können sehen, dass der andere Kommentator es neu zugeordnet hat, um mit seinen Puffern zu spielen. –

Verwandte Themen