You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何剪切/复制Vim中"inner"或"block"文本对象的一半内容

Vim无需数括号精简函数参数的实用技巧

我完全懂你想找高效操作的心情!就像你举的这个场景:

fcn(arg1, arg2, fcn2(x, y), arg4) 光标停在第三个参数的起始位置,想直接把它精简成fcn(arg1, arg2),不用手动数括号层数

虽然原生Vim没法把文本对象的全部功能和光标起始位置完美结合,但有两个现成的原生命令可以轻松搞定:

  • 用d])命令:这个命令会直接删除从当前光标位置到**外层未闭合的)**之前的所有内容,一步就能把后面多余的参数都删掉,刚好得到你想要的fcn(arg1, arg2)。
  • 重复执行dt):如果d])的效果不符合你的预期,也可以多次按dt)——这个命令的作用是删除到下一个)的位置,重复两次就能依次删掉嵌套的fcn2(x, y)和最后的arg4,同样能达到精简的目的。

这两个方案都是原生Vim支持的,不用额外安装插件,完美解决手动数括号的麻烦。

内容的提问来源于stack exchange,提问作者Kristoffer Sjöö

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:19:17