目录

Vim surround 插件

正常模式

命令 说明
ds 删除包围
cs 修改包围
ys 添加包围
yS 添加包围并替换包围文本
yss 添加一行包围
ySs 添加包围内容独成一行
ySS 添加包围内容独成一行

可视模式

命令 说明
s 给选中内容添加包围
S 选中内容添加包围并独成一行

插入模式

命令 说明
<CTRL-s> 添加一个包围
<CTRL-s><CTRL-s> 添加包围内容独成一行
<CTRL-g>s 添加一个包围
<CTRL-g>S 添加包围内容独成一行

使用说明

  1. 光标在 “Hello world!” 中时按下 cs"’ 则会替换双引号为单引号: ‘Hello world!’

  2. 继续按下 cs’<p>,则会替换单引号为 “<p>” <p>Hello world!</p>

  3. 按下 cst",则回到初始的双引号: “Hello world!”

  4. 要删除符号,则按下 ds" 删除双引号 Hello world!

  5. 当光标在 hello 上时,按下 ysiw] 则会变为 [Hello] world!

添加包围符号的命令是 ys(ys 可以记为 you surround),命令后同样跟两个参数,第一个是一个 vim“动作”(motion)或者是一个文本对象,其中 motion 即 vim 动作,比如说 w 向后一个单词。文本对象简单的来说主要是来通过一些分隔符来标识一段文本,比如 iw 就是一个文本对象,即光标下的单词。

另外: yss 命令可以用于整行操作,忽略中间的空格,yS 和 ySS 还能让包围内容单独一行并且加上缩进。

在可视模式 v 下,按下 S 后即可添加想要添加的包围符号了。其中、在包围符号为括时,输入左括号 (或者{ ,则会留一个空格,而右括号则不留空格。