如何在Vim中选择整行作为动作?

huo*_*ter 2 vim surround

我最近开始使用"环绕"插件.我意识到我不知道如何包围当前的线路.我的意思是,ysap<p>围绕一个段落并ysaw<p>围绕一个单词.显然dw删除一个单词并das删除一个句子.dd删除一行,然而,第二个d不是我害怕的选择.因此,ys??<p>对于一条线吗?

Ry-*_*Ry- 8

重复s(yss)一样cc,dd,yy.


Dok*_*ldo 6

您正在寻找的是_运动。

瑞安(Ryan)的答案也是正确的, dd它的技巧更简单,d_许多命令都进行了优化。

事实证明,surround.vim也有(谢谢Ryan!)并作弊了一点。

如您所见,:h _它实际上并不指向当前行,而是[count] -1向下指向该行的第一个非空白字符。这是dd等的行为。但实际上不是我们想要的用例,而是ys_可以为您提供:

"
line
"
Run Code Online (Sandbox Code Playgroud)

代替这个:

"line"
Run Code Online (Sandbox Code Playgroud)

所以surround.vim插件“作弊”了一下,通过实施yss其不喜欢的工作命令ddcc或者yy而是适用于它具有用例。

因此,按照标题回答这个问题:_是通用解决方案。

如果您只是寻找surround.vim使用瑞安的答案