已打开的大文件卡死时,5秒内恢复需三步:按Ctrl+Shift+P输入Set Syntax: Plain Text停语法解析,再输Toggle Word Wrap关自动换行,右键状态栏语法名选Open all with current extension as… → Plain Text;若命令面板无响应,则用subl --safe-mode强制启动。

已打开的大文件卡死,5秒内怎么救回来
别等加载完,也别重启——Sublime 正在后台拼命解析语法、计算换行、渲染行号,直接打断它就行:
- 按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS),输入Set Syntax: Plain Text回车——立刻停掉所有语法高亮和符号树构建 - 再输
Toggle Word Wrap关闭自动换行,避免超长日志行反复计算断点 - 右键点击右下角状态栏显示的语法名(比如
JSON或Log),选Open all with current extension as… → Plain Text,防止下次同后缀文件重蹈覆辙
如果命令面板已无响应,就终端执行 subl --safe-mode /path/to/file.log 强制跳过插件和用户设置,实测 1.2GB 日志 8 秒内可滚动。
Preferences → Settings – User 必加的硬性降级项
这不是“可选优化”,而是只读查看场景下的最低配置。打开用户设置,在 JSON 里补上这几项:
-
"index_files": false——关后台全文索引,否则 CPU 默默拉满建倒排表 -
"line_numbers": false和"gutter": false——行号区重绘是卡顿常见源头,尤其光标悬停触发折叠按钮时 -
"highlight_line": false——当前行高亮对大文件纯属渲染负担 -
"draw_white_space": "none"——跳过空格/制表符可视化,避免大量字符串切片开销 -
"detect_indentation": false——对无缩进日志毫无意义,却要从头扫到尾猜缩进
注意:"large_file_size_limit": 100(单位 MB)只影响后续新打开的文件,且必须配合上面几项才真正生效;单独设它,index_files 还是 true,照样卡。
哪些插件会在你关掉高亮后偷偷拖垮 Sublime
哪怕你手动切了 Plain Text,某些插件仍不认这个“只读”信号,一加载就启动子进程扫全文:
-
SublimeLinter和BracketHighlighter是头号嫌疑——它们默认不识别「大文件」概念,照常跑正则或调用外部命令 -
GitGutter在大日志里会反复查 git status,报timeout waiting for git status - 临时验证方法:用
subl --safe-mode打开,若流畅,问题 100% 出在插件;再逐个Disable Package排查 - 若必须留
BracketHighlighter,加配置:"bracket_highlighter.ignore_syntaxes": ["Plain text"]
为什么右下角显示 JSON 就注定要卡
Sublime 自动猜语法不是为了好看,而是立刻触发整套解析流程:JSON 会启动 JSON validator、symbol index、fold level 计算——哪怕你根本不需要这些。
真正的解决动作不是“等它猜完再改”,而是在加载瞬间就阻断:
- 拖文件进 Sublime 前,先用终端确认后缀:
file -i your_file.log,避免被误判为application/json - 打开后第一件事不是看内容,而是右键状态栏语法名 →
Open all with current extension as… → Plain Text - 更彻底的做法:在
Packages/User/Plain Text.sublime-settings里写入"line_numbers": false等降级项,让所有Plain Text实例自动生效
真正容易被忽略的是:这些配置只对“新打开”的文件起效,已卡住的实例必须靠命令面板干预或 --safe-mode 重启——指望改完设置再等它自己恢复,基本没用。


















