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

适配Vim正则扩展context.vim以显示SQL查询结果表头

解决context.vim显示dadbod查询结果表头的配置调整

针对context.vim逐行处理的特性,需要调整g:context_join_regex的正则表达式,去掉跨行匹配逻辑,改为分别匹配表头的列名行和分隔线行。同时补充g:context_extend_regex让数据行触发上下文扩展,最终配置如下:

调整后的配置

" 扩展触发正则:加入数据行匹配,让光标在数据行时触发上下文扩展
let g:context_extend_regex = '^\s*\([]{})]\|end\|else\|case\|default\|done\|elif\|fi\|-\{5,}\|\(-\+\s\+\)\+-\+$\|^\s\+\w\+\)'

" 上下文合并正则:匹配空行、列名行、分隔线行,确保表头被纳入上下文
let g:context_join_regex = '^\W*$\|^\(\w\+\s\+\)\+\w\+$\|^\(-\+\s\+\)\+-\+$'

正则说明

  • ^\(\w\+\s\+\)\+\w\+$:匹配由空格分隔的多列名行(如示例中的ColOne ColTwo ...)
  • ^\(-\+\s\+\)\+-\+$:匹配由空格分隔的短横线分隔线行(如示例中的-------------------- ---------- ...)
  • ^\W*$:保留原逻辑,匹配空行并纳入上下文
  • ^\s\+\w\+:新增的扩展触发规则,匹配开头带空格的数据行,触发上下文向上查找表头

验证效果

当光标位于示例数据行(如iiii jjjj ...)时,context.vim会自动将上方的列名行和分隔线行纳入上下文显示,实现预期的表头跟随效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 15:43:20