2017-12-18 4 views
1

Ich habe vor kurzem begonnen, das "Surround" -Plugin zu verwenden. Ich erkannte, dass ich nicht weiß, wie man die aktuelle Linie umgibt. Ich meine, ysap<p> umgibt einen Absatz und ysaw<p> umgibt ein Wort. Anscheinend dw löscht ein Wort und das löscht einen Satz. dd löscht eine Zeile, aber die zweite d ist keine Auswahl, fürchte ich. Also ys??<p> für eine Linie?Wie wähle ich eine ganze Zeile für eine Bewegung in Vim?

+0

Hinweis: Diese Frage zu 'surround.vim' Plugin zu sein scheint. – Amadan

Antwort

3

Was Sie suchen, ist die _ Bewegung.

Ryan Antwort ist auch richtig, dd ist eine leichter zu kippen Version von d_ und eine Menge von Befehlen haben diese Optimierung. Wie sich herausstellt, surround.vim hat es auch (danke Ryan!)

Wie Sie mit :h _ sehen können, verweist es tatsächlich nicht die aktuelle Zeile, sondern das erste Leerzeichen auf der [count] -1 Zeile nach unten. Dies ist das Verhalten dd usw. verwendet. Aber ist nicht wirklich das, was wir in Ihrem usecase wollen, werden ys_ tatsächlich geben Sie das:

" 
line 
" 

Statt dessen:

"line" 

Also das surround.vim Plugin „betrügt“ ein wenig, durch eine Umsetzung yss Befehl, der nicht funktioniert wie dd, cc oder yy aber funktioniert für den Usecase es hat.

So, um die Frage zu beantworten, wie im Titel: _ ist die allgemeine Lösung.

Wenn Sie schauen nur für surround.vim Antwort der Einsatz Ryan

5

Wiederholen Sie s (yss), wie cc, dd, yy.

Verwandte Themen