关闭 index_files 是最直接有效的内存控制手段,需在用户设置中添加{"index_files":false}并完全退出重启;再用folder_exclude_patterns排除高危目录;最后清理cache和index目录及lsp插件冗余索引。

关闭 index_files 是最直接有效的内存控制手段
Sublime 内存飙升八成以上源于全项目文件索引——它默认扫描每个文件内容生成符号表,一旦项目含 node_modules、dist、logs 等目录,内存会持续涨到 1GB+ 且不释放。
在 Preferences → Settings 右侧用户设置中添加:{ "index_files": false }
注意:
• 这不是禁用搜索:Ctrl+P(按文件名跳转)、Ctrl+Shift+F(全局文本搜索)仍可用
• 但 Go to Definition、Find All References 会失效——如果你不依赖 LSP 或 GoSublime 的语义跳转,这个代价极小
• 必须完全退出 Sublime(包括托盘进程),再重启;仅重载设置无效,旧索引上下文已驻留内存
用 folder_exclude_patterns 彻底隔离高危目录
即使关了 index_files,只要 node_modules 等目录还在项目里,Sublime 仍可能在后台加载文件元信息、触发插件扫描、或被 Find in Files 拖入搜索范围,间接吃内存。
在 Project → Edit Project 中配置(优先级高于用户设置,且对团队协作更可控):{ "folders": [ { "path": ".", "folder_exclude_patterns": ["node_modules", "__pycache__", ".git", "dist", "build", "logs"], "file_exclude_patterns": ["*.log", "*.tmp", "*.zip", "*.min.js"] } ] }
folder_exclude_patterns 影响最大:排除后,这些目录连图标都不会显示在侧边栏,彻底隔离file_exclude_patterns 主要防止误搜,对内存影响较小,但能避免 Find in Files 卡死
清理 Cache 和 Index 目录才能真正释放顽固内存
长期使用后,缓存和索引数据库会残留损坏条目或冗余快照,导致每次启动都多载几百 MB 无用数据。尤其 LSP 类插件的缓存,重装同名插件时会复用旧索引,卡顿照旧。
必须先完全退出 Sublime(Windows 查任务管理器确认 sublime_text.exe 消失;macOS 用活动监视器确认 Sublime Text 和 plugin_host 都已退出),再删除以下全部路径:
• macOS:~/Library/Application Support/Sublime Text/Cache、~/Library/Caches/Sublime Text/、~/Library/Application Support/Sublime Text/Local/Index
• Linux:~/.config/sublime-text/Cache、~/.cache/sublime-text/、~/.config/sublime-text/Local/Index
别只删 Cache——Index 目录才是全文搜索和跳转数据库的驻留地,不删它,索引压力仍在
LSP 类插件会绕过 index_files: false 自行索引
像 LSP-pyright、LSP-go、SublimeLinter 这类插件,默认仍会为打开的文件启动语言服务器并加载 AST,不受 index_files 设置约束。
需单独处理:
• 在 Packages/User/LSP.sublime-settings 中设 "diagnostics_enable": false 关闭自动诊断
• 或在项目配置中加 "settings": { "lsp_disabled_servers": ["pyright"] }
• 检查 Packages/User/ 下是否残留旧插件配置(如 LSP.sublime-settings),这些不会随插件卸载自动删除,要手动删
插件本身不“坏”,但它的索引行为和 Sublime 原生索引是两套系统,容易叠加——这才是很多人关了 index_files 还卡的根本原因











