关掉index_files是最直接有效的优化,因其默认全项目索引(含node_modules等)导致内存飙升、CPU满载、启动变慢;需配合项目级folder_exclude_patterns、禁用高负载渲染项及清理缓存才能根治。

关掉 index_files 是最直接有效的手段,90% 以上的 CPU 飙高都源于它默认开启后对 node_modules 等目录的全量扫描。
为什么 index_files 是头号元凶
Sublime Text 启动后会递归扫描整个项目文件夹,构建符号跳转(Ctrl+R)、模糊文件搜索(Ctrl+P)所需的索引数据库。一旦项目里有 node_modules(几万文件)、.git、dist 或日志目录,它就在后台持续 stat()+read()+解析,CPU 拉满、内存涨到 1GB+ 且不释放。
这不是“慢”,是你在敲字时,编辑器正同步干着比编译还重的活。
验证方式:完全退出 Sublime,按住 Ctrl(Windows/Linux)或 Cmd(macOS)再双击启动 —— 若此时输入丝滑,说明问题出在索引或插件。
全局关闭 index_files 的实操与代价
打开 Preferences → Settings,在右侧用户设置中添加:
{"index_files": false}
必须完全退出 Sublime 再重启,仅重载设置无效 —— 旧索引上下文已固化在进程里。
-
Ctrl+P只能搜已打开的文件名,不再匹配路径或内容 -
F12(Go to Definition)、Find All References全部失效 -
Ctrl+Shift+F(全局文本搜索)仍可用,但不依赖索引,速度略慢 - 适合写脚本、查日志、做配置等轻量场景
用 folder_exclude_patterns 精准排除高危目录
保留索引功能,但不让 Sublime “看见”那些真正拖垮性能的目录。这是开发者首选方案,尤其当你仍需 Ctrl+R 在源码中跳转时。
操作路径:Project → Edit Project,在 JSON 中补全:
{
"folders": [
{
"path": ".",
"folder_exclude_patterns": ["node_modules", "__pycache__", ".git", "dist", "build", "logs"],
"file_exclude_patterns": ["*.log", "*.tmp", "*.zip", "*.tar.gz"]
}
]
}
-
folder_exclude_patterns影响最大:排除后,这些目录连图标都不会显示在侧边栏,彻底隔离 - 该配置只对当前项目生效;若用
subl .打开,确保当前目录下有.sublime-project文件 - 它对 LSP 插件也生效,比如
pylsp不再扫描node_modules里的 Python 文件 - 注意:
folder_exclude_patterns只作用于项目根目录下的子目录;如果src/lib/node_modules这类深层路径也要排除,得靠 LSP 插件自身的initializationOptions单独配置
别漏掉 plugin_host 进程的 CPU 问题
plugin_host 是 Sublime 运行 Python 插件的独立进程。一旦它持续占满一个 CPU 核,基本可以断定是某个插件失控了——比如 LSP 服务器反复崩溃重启、SublimeLinter 在大文件上实时跑校验、或者 GitGutter 持续轮询状态。
- 命令行运行
subl -safe-mode,如果 CPU 正常,说明问题出在插件 - 打开控制台(
Ctrl+`),重点看有没有重复报错、starting...循环日志,或高频Python traceback - 高频嫌疑插件:
LSP-pyright/LSP-eslint、SublimeLinter、AutoFileName、GitGutter、Terminus
真正容易被忽略的是:即使你配好了 folder_exclude_patterns,如果 LSP 插件没同步配置排除规则,它仍可能在后台扫描被 Sublime 隐藏的目录 —— 这种“双重索引”会让 CPU 无声无息地维持在 30%~50%。


















