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 提高效率?
别只把它当“看数字”的装饰——它是免打断的操作枢纽:
采用HttpClient向服务器端action请求数据,当然调用服务器端方法获取数据并不止这一种。WebService也可以为我们提供所需数据,那么什么是webService呢?,它是一种基于SAOP协议的远程调用标准,通过webservice可以将不同操作系统平台,不同语言,不同技术整合到一起。 实现Android与服务器端数据交互,我们在PC机器java客户端中,需要一些库,比如XFire,Axis2,CXF等等来支持访问WebService,但是这些库并不适合我们资源有限的android手机客户端,
0 - 点击“引用 X 次”,立刻跳转到所有引用位置(类似
Shift+F12),适合快速理解调用链 - 在测试函数上点“运行”,比写命令、切终端、等构建快得多;点“调试”直接进断点调试流程
- 看到“上次修改:2 小时前 @张三”,不用切到 Git 面板就能判断这段逻辑近期是否被动过
- 长按 CodeLens 文本(如“运行”)会出现小 Tooltip,提示快捷键(如
Ctrl+Click运行),适合键盘党
常见问题提醒
CodeLens 不是万能的,要注意几点:
- 语言服务未就绪时(如刚打开大项目、TS 正在编译),引用数可能显示“…”或不准,稍等几秒再看
- 某些自定义语言(如 YAML、Shell)默认无 CodeLens,需查找对应扩展(如 “Shellman”、“YAML Support”)并确认其支持该功能
- 如果完全看不到任何 CodeLens,先禁用所有扩展,再逐个启用排查冲突(尤其是旧版或非官方扩展)
基本上就这些。CodeLens 的价值不在炫技,而在把高频操作“沉”进代码行间——省一次右键、少一次切换、快半秒响应,积少成多就是流畅体验。