vs code counter需通过扩展面板安装,右键目录统计行数;默认包含node_modules等,须配置"usegitignore":true及exclude数组;code行排除注释和空行,comment行仅计纯注释行。

VS Code Counter 怎么装和快速用起来
VS Code 本身不带代码行数统计功能,得靠插件——VS Code Counter 是目前最轻量、结果最清晰的选择,尤其适合只想知道“自己写了多少有效代码”的人。
- 按
Ctrl+Shift+X(Windows/Linux)或Cmd+Shift+X(macOS)打开扩展面板,搜VS Code Counter,点安装 - 装完不用重启,右键项目根文件夹 → 选
Count lines in directory,几秒后自动生成一个.VSCodeCounter文件夹 - 编辑器会自动打开其中的
summary.md,里面分三块:Summary(总耗时/路径)、Languages(每种语言的code/comment/blank行数)、Path(子目录明细)
为什么默认统计结果常比你预期多?关键在 exclude 配置
刚装好直接右键统计,常看到 node_modules 或 dist 被算进去了——这不是插件 bug,是它默认不读 .gitignore,也不排除常见构建产物。
- 必须手动配置
settings.json:加这行"VSCodeCounter.useGitignore": true,它才真正跳过.gitignore里的路径 - 但
.gitignore未必覆盖全,比如**/*.md或**/yarn.lock常被漏掉,得补到"VSCodeCounter.exclude"数组里 - 注意写法:
"**/node_modules/**"是对的,"node_modules"或"./node_modules"无效——通配符必须完整匹配路径模式
code / comment / blank 行怎么算的?别把注释当代码
它的统计逻辑很实在:逐行扫描,按正则判断。不是靠 AST 解析,所以快,但也意味着边界情况要心里有数。
-
code行 = 不以空白开头 + 不以//、/*、#等常见注释符号开头的行(支持 JS/TS/Python/Java 等主流语言注释语法) -
comment行 = 单独一行的注释,或/* ... */块注释的起始/结束行;但//后面跟代码的那行(如let x = 1; // init)算作code行,不算comment -
blank行 = 全空或只含空白字符(\s*),不含任何可见字符或注释符号
想看单个文件或函数级复杂度?换 CodeMetrics 更合适
VS Code Counter 只管“有多少行”,不管“好不好懂”。如果你在做重构或准备软著,需要知道哪个函数太长、哪段逻辑绕——它就帮不上忙了。
- 装
CodeMetrics插件,状态栏实时显示当前文件的logical lines(逻辑行)、cyclomatic complexity(圈复杂度) - 右键函数名 →
CodeMetrics: Show metrics for current function,立刻看到该函数的参数个数、嵌套深度、分支数 - 注意:它对 TypeScript 支持好,但对 Vue 的
<script setup></script>或 Svelte 的<script></script>块可能识别不准,得看实际高亮是否覆盖到函数体
实际项目里,VS Code Counter 的 code 行数常比你心理预期少一截——因为那些被你当成“代码”的配置文件、SQL 脚本、JSON Schema,只要没在 exclude 里明确定义,就会混进来拉高总数。别信第一眼数字,先检查配置。










