Vim中如何选中花括号内部的可视块且不包含花括号本身
Vim 选中花括号包裹内容(不含外层花括号)的操作方法
你平时用v%选中花括号包裹内容时,默认会把前后两个花括号本身算进选中范围,要实现不包含外层花括号的选择效果,直接用下面的方法就行:
- 最快捷的方式:把光标放在成对花括号的内部任意位置,直接输入
vi{(也可以写vi},效果完全一致),就能一次性选中两个花括号之间的所有内容,选中范围完全不包含外层的左右花括号。 - 如果你已经执行了
v%选中了带花括号的整块内容,也可以手动调整选区边界:- 按一次
o,把选区的活动端点切换到最开头的左花括号位置,按l将选区起始位置向右移动1位,排除左花括号 - 再按一次
o,把选区活动端点切换到末尾的右花括号位置,按h将选区结束位置向左移动1位,排除右花括号
调整完的选区就是不含外层花括号的内部内容。
- 按一次
小提示:这个操作是基于Vim的文本对象规则实现的,命令里的
i是inner(内部)的缩写,同类逻辑对小括号()、中括号[]、甚至XML/HTML标签都通用,比如vi(选小括号内部内容、vit选标签内部内容,都不会把外层包裹符算进选区。
内容的提问来源于stack exchange,提问作者Dogunbound hounds
相关产品推荐
相关产品推荐

