立刻恢复滚动:先设plain text停语法解析,关word_wrap防断行计算,右键状态栏选plain text防重蹈覆辙;若命令面板无响应,用subl --safe-mode秒开;用户设置必改large_file_size_limit:100、index_files:false、viewport_size:5000、detect_indentation:false、line_numbers:false。

已打开的百万行日志卡死了,怎么立刻恢复滚动
别等加载完成,当前窗口就能救回来:按 Ctrl+Shift+P 输入 Set Syntax: Plain Text 回车——语法解析器当场停摆;再输 View: Toggle Word Wrap 关自动换行,避免超长行反复计算断点;右下角状态栏语言名(比如显示 Log 或 JSON)右键 → Open all with current extension as… → Plain Text,防止下次同后缀重蹈覆辙。如果命令面板已无响应,直接终端执行 subl --safe-mode huge.log,实测 1.2GB 日志 8 秒内可滚动。
用户设置里必须改的几项关键配置
"large_file_size_limit": 100 是核心开关,单位 MB,设为 100 后,超过该大小的文件从第一字节起就跳过语法分析、折叠、符号索引;"index_files": false 必须关,否则 SublimeLinter 和 GitGutter 会在后台默默扫全文建索引;"viewport_size": 5000 配合 "word_wrap": false 使用,单次最多渲染 5000 字符(默认 100000),内存占用直降 95%;"detect_indentation": false 和 "line_numbers": false 也得加,日志没缩进、千万行下每行生成 DOM 节点是重绘瓶颈。
为什么关了高亮还卡?插件在后台偷偷干活
即使你手动切了 Plain Text,某些插件仍会触发整文件扫描:SublimeLinter 默认对所有文件跑 lint;GitGutter 逐行比对 Git 状态,百万行里每行都触发 diff;BracketHighlighter 光标悬停就尝试匹配括号,长行正则回溯直接卡死。临时验证是否是插件导致:终端运行 subl --safe-mode huge.log,如果秒开,问题就出在插件。真要长期用,得在用户设置里加 "index_files": false,并禁用或卸载这几类插件。
别靠滚动条找错误,用索引跳转代替
鼠标滚 200 万行,本质是反复 seek + buffer 重分配,延迟明显;goto_line 走的是预建的行偏移索引,快一个数量级:按 Ctrl+P 输入 :123456(冒号开头),回车直跳第 123456 行;拆左右视图:Ctrl+Shift+2,左边固定看时间戳格式,右边 Ctrl+G 定位具体行;查关键词别用 find_in_files 扫全量——它会把每行加载进内存,先用终端 grep -n "ERROR" app.log | head -20 提取行号,再贴进 Sublime 跳转。











