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

如何修改Vim中[[和]]的代码块跳转规则?

修改Vim的[[和]]命令,支持带制表符缩进的大括号跳转

默认情况下,Vim的[[和]]仅会定位到行首无缩进的{和}。要让它们同时兼容行首带若干制表符的大括号,直接自定义映射即可:

配置方案

在你的~/.vimrc(Neovim用户则是~/.config/nvim/init.vim)中添加以下代码:

" 重定义[[,匹配行首0个或多个制表符后的{
nnoremap [[ :execute 'normal! ?^\t*\{'<CR>
" 重定义]],匹配行首0个或多个制表符后的}
nnoremap ]] :execute 'normal! /^\t*\}'<CR>

如果需要避免匹配注释中的大括号(比如代码注释里的{),可以用更精准的正则:

nnoremap [[ :execute 'normal! ?^\t*\%(function\|{\)\@<=\{'<CR>
nnoremap ]] :execute 'normal! /^\t*\%(}\)\@<=\}'<CR>

关键说明

  • ^\t* 表示匹配行首开始的0个或多个制表符,如果你用空格缩进,替换成^\s*即可
  • 自定义映射会覆盖默认命令,同时完全兼容原有的首列大括号跳转逻辑
  • 保存配置后重启Vim,或者执行:source ~/.vimrc即可生效

内容的提问来源于stack exchange,提问作者Russell G

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 11:52:04