CodeLens 是 vscode 中轻量级内联提示功能,显示引用数、测试状态、git 变更、运行 / 调试入口等信息;默认启用,需语言扩展支持,可细粒度配置,提升编码效率。

CodeLens 是 VSCode 中一个轻量但非常实用的代码内联提示功能,它会在函数、类、方法等代码元素上方(或下方)显示小型的、可交互的文本标签,比如“引用 3 次”、“测试已通过”、“运行”、“调试”、“Git 更改”等。它不打断编码流,却能快速提供上下文信息和常用操作入口。
CodeLens 能显示哪些信息?
默认情况下,VSCode 自带的 typescript/javaScript 支持会显示引用数量(如“引用 5 次”),而安装对应扩展后可解锁更多能力:
- 引用统计 :显示当前函数 / 变量被调用或定义的位置数(依赖语言服务支持)
- 测试状态 :配合 Jest、Mocha、.NET Test Explorer 等扩展,显示“全部通过”“1 失败”并附带“运行”“调试”按钮
- Git 变更提示 :显示最近一次修改该函数的提交哈希、作者、日期(需启用 GitLens 或内置 Git 扩展)
- 运行与调试快捷入口 :对 main 函数、test 方法等,直接点击“运行”即可启动而不必切到终端
如何开启和配置 CodeLens?
CodeLens 默认是开启的,但部分语言可能需要手动启用或安装扩展:
- 检查设置:Ctrl+,(windows/linux)或 Cmd+,(macos)→ 搜索“codelens”→ 确保“Editor › Code Lens: Enabled”已勾选
- TypeScript/js 项目通常开箱即用;python 需安装 Python 扩展 并启用
"python.testing.pytestEnabled"等相关配置才能看到测试 CodeLens - 想隐藏某类提示(如只留引用,不要 Git 信息),可在设置中关闭对应扩展的 CodeLens 选项,例如 GitLens 提供
"gitlens.codeLens.enabled"细粒度控制
怎么用 CodeLens 提高效率?
别只把它当“看数字”的装饰——它是免打断的操作枢纽:
- 点击“引用 X 次”,立刻跳转到所有引用位置(类似
Shift+F12),适合快速理解调用链 - 在测试函数上点“运行”,比写命令、切终端、等构建快得多;点“调试”直接进断点调试流程
- 看到“上次修改:2 小时前 @张三”,不用切到 Git 面板就能判断这段逻辑近期是否被动过
- 长按 CodeLens 文本(如“运行”)会出现小 Tooltip,提示快捷键(如
Ctrl+Click运行),适合键盘党
常见问题提醒
CodeLens 不是万能的,要注意几点:
- 语言服务未就绪时(如刚打开大项目、TS 正在编译),引用数可能显示“……”或不准,稍等几秒再看
- 某些自定义语言(如 YAML、Shell)默认无 CodeLens,需查找对应扩展(如“Shellman”、“YAML Support”)并确认其支持该功能
- 如果完全看不到任何 CodeLens,先禁用所有扩展,再逐个启用排查冲突(尤其是旧版或非官方扩展)
基本上就这些。CodeLens 的价值不在炫技,而在把高频操作“沉”进代码行间——省一次右键、少一次切换、快半秒响应,积少成多就是流畅体验。