如何在Vim中删除从光标到跨行闭合大括号的内容?
Vim 从代码中间删除到跨行作用域末尾的方法
以下是几种高效的实现方式:
利用括号匹配直接删除:
把光标定位到删除起始位置,直接输入d%。这个命令会自动匹配当前作用域的闭合},删除从光标位置到该闭合括号的所有内容(包含闭合括号本身)。若想保留闭合括号,可先用v%选中目标内容,再按D删除到行尾后调整。可视模式精准选中删除:
- 按下
v进入字符可视模式; - 输入
%,Vim 会自动选中从光标位置到匹配闭合}的全部内容; - 按下
d完成删除。
- 按下
嵌套作用域的定位删除:
若代码存在多层嵌套{},可先用[}跳转到上一个未匹配的外层},确认位置后,先标记起始位置(输入ma),再跳转到}处输入d'a,即可删除标记点到闭合括号间的内容。
内容的提问来源于stack exchange,提问作者Benjamin
相关产品推荐
相关产品推荐

