如何 select 整行作为 Vim 中的动议?
How to select a whole line for as a motion in Vim?
我最近开始使用 "surround" 插件。我意识到我不知道如何包围当前行。我的意思是,ysap<p>
包围一个段落,ysaw<p>
包围一个单词。显然 dw
删除了一个单词,而 das
删除了一个句子。 dd
删除一行,但是,第二个 d
恐怕不是一个选择。所以 ys??<p>
一行?
重复s
(yss
),例如cc
、dd
、yy
.
您要找的是 _
机芯。
Ryan的回答也对,
dd
是 d_
的一个更容易输入的版本,很多命令都有这个优化。
事实证明,surround.vim
也有(谢谢你 Ryan!)并且作弊了一点。
正如您在 :h _
中看到的那样,它实际上并不引用当前行,而是引用 [count] -1
行中的第一个 non-blank 字符。这是 dd
等使用的行为。但这并不是我们真正想要的用例,ys_
实际上会给你这个:
"
line
"
而不是这个:
"line"
所以 surround.vim
插件 "cheats" 有点,通过实现 yss
命令,它不像 dd
、cc
或 [=24] =] 但适用于它的用例。
所以回答标题中的问题:_
是一般的解决方案。
如果您只是在寻找 surround.vim
使用 Ryan 的回答
我最近开始使用 "surround" 插件。我意识到我不知道如何包围当前行。我的意思是,ysap<p>
包围一个段落,ysaw<p>
包围一个单词。显然 dw
删除了一个单词,而 das
删除了一个句子。 dd
删除一行,但是,第二个 d
恐怕不是一个选择。所以 ys??<p>
一行?
重复s
(yss
),例如cc
、dd
、yy
.
您要找的是 _
机芯。
Ryan的回答也对,
dd
是 d_
的一个更容易输入的版本,很多命令都有这个优化。
事实证明,surround.vim
也有(谢谢你 Ryan!)并且作弊了一点。
正如您在 :h _
中看到的那样,它实际上并不引用当前行,而是引用 [count] -1
行中的第一个 non-blank 字符。这是 dd
等使用的行为。但这并不是我们真正想要的用例,ys_
实际上会给你这个:
"
line
"
而不是这个:
"line"
所以 surround.vim
插件 "cheats" 有点,通过实现 yss
命令,它不像 dd
、cc
或 [=24] =] 但适用于它的用例。
所以回答标题中的问题:_
是一般的解决方案。
如果您只是在寻找 surround.vim
使用 Ryan 的回答