状态栏“Ln xx”仅显示光标所在行号,非总行数;真实总行数需用Tools: Word Count命令获取,或确保光标位于末行末尾(注意换行符影响),启用show_line_numbers可使状态栏直接显示总行数。

状态栏显示的“Ln xx”不是总行数,只是当前光标所在行号
很多人误把右下角 Ln 42, Col 15 当作全文总行数,其实它只反映光标位置。哪怕文件有 1000 行,你停在第 5 行,它就永远显示 Ln 5。这个数字从 1 开始计数,且不随滚动自动更新为最大行号。
要确认真实总行数,必须让光标到达最后一行末尾:按 Ctrl+End(Windows/Linux)或 Cmd+End(macOS),此时状态栏显示的 Ln xxx 才是总行数(前提是文件末尾有换行符;否则可能少算一行)。
- 空文件显示
Ln 1, Col 1,不算 0 行 - 最后一行末尾无换行符 → 总行数 = 最大行号
- 最后一行末尾有换行符 → 可能多出一个“空行”,也会计入总行数
- 状态栏本身必须开启:
View → Show Status Bar,否则连Ln/Col都不显示
用 Tools: Word Count 获取准确总行数(含空行和注释)
这是 Sublime 原生最稳的总行数统计方式,比手动滚到底部更可靠,尤其对末尾带大量空行或换行符混乱的文件。
操作路径:Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS)→ 输入 Tools: Word Count → 回车。弹窗中 Lines: 89 就是真实总行数。
- 该命令统计的是物理行数,包括空行、纯注释行、折叠区域内的所有行
- 不支持参数过滤(比如不能加
--no-blank),也无法区分//和/* */注释 - 大文件(>50MB)会明显卡顿,因为 Sublime 是全量加载后扫描,非流式处理
- 没选中文本时统计全文;选中部分文本则只统计选区
show_line_numbers 是状态栏专用开关,和左侧行号无关
想让状态栏右下角直接显示类似 1245 lines 的总行数统计,必须启用 show_line_numbers——这不是 UI 主题或插件功能,而是 Sublime 内置配置项。
打开 Preferences → Settings – User,在右侧 JSON 中添加:
"show_line_numbers": true
保存即生效,无需重启。注意:
-
show_line_numbers和line_numbers完全独立:line_numbers控制左侧 gutter 是否显示数字列,show_line_numbers只影响状态栏右下角是否追加总行数文本 - 某些主题会压缩状态栏高度,导致
1245 lines被截断,可加"status_bar_height": 24微调 - 该配置对未保存的缓冲区(untitled)也生效,但空缓冲区可能显示
1 lines
真正“精确”的字数和代码行数,得靠插件或外部工具
view.size() 返回的是 Unicode 码位数(字符数),不是写作意义上的“字数”;Tools: Word Count 的 Words 字段按空格/标点切分,对 Python3.9 或 user_name 这类词识别保守。
如果需要贴近写作或工程场景的统计:
- 字数统计:装
WordCount插件(Package Control: Install Package→ 搜WordCount),右键菜单即见,它把连续中英文数字视为一“词” - 有效代码行(LOC):原生不支持。推荐
LineCounter插件,或终端用tokei .(需安装)、wc -l *.py(Linux/macOS) - 混合中英文文本里快速数汉字?不用插件:
Ctrl+F→ 勾选Regular Expression→ 输入[\u4e00-\u9fff],状态栏会显示匹配数
别指望一键解决所有统计需求——“行数”本身就没标准定义,空行算不算、注释算不算、折叠代码怎么计,不同工具逻辑天然不同。关键看你要对齐哪个目标:编辑器感知、协作规范,还是交付报告。

















