必须先用package control: remove package卸载插件,再手动删除packages/user下配置文件、keymap中绑定及cache中对应插件缓存文件夹,否则命令残留、右键菜单仍在、cpu持续飙高。

卸载必须走 Package Control: Remove Package,禁用优先用命令面板的 Disable Package;直接删文件夹、只改配置不关进程、不清缓存——这三类操作都会让插件“死而复生”或留下命令残留。
为什么插件卸载后命令还在、右键菜单还显示?
Package Control 卸载只删插件本体(Packages/PluginName 和 Installed Packages/PluginName.sublime-package),但不会动这三处:
-
Packages/User/PluginName.sublime-settings文件里可能含 key bindings 或自定义 command 注册,Sublime 启动时仍会加载命令名 -
Default (Windows).sublime-keymap里若手动绑过"command": "plugin_name_command",命令面板就能搜到但执行报command not found - Cache 目录下语言服务器(如
pyright、texlab)的索引和 socket 文件没清,重启后 LSP 进程照常拉起,CPU 持续飙高
解决办法:卸载后立刻进 Packages/User/ 删掉同名 .sublime-settings,打开 keymap 文件删对应块,再清 Cache 目录中含插件关键词的整个文件夹。
禁用插件该用 disabled_packages 还是 ignored_packages?
看插件来源:
- 第三方插件(Emmet、GitGutter、LSP-pyright)→ 必须写进
Package Control.sublime-settings的"disabled_packages"字段,保存后需重启才生效 - 内置插件(
Vintage、Spell Check、WordCount)→ 只能写进主设置Preferences → Settings的"ignored_packages",大小写敏感,保存即生效(部分需新建标签页) - 混用会失效:比如把
Vintage塞进disabled_packages,它根本不会被跳过加载
别拼错字段名:disable_packages(少一个 d)或 ignored_package(少 s)都是静默失败,配置白写。
手动删插件文件夹前,必须关死所有 Sublime 进程
Windows 下 sublime_text.exe 和 subl.exe 常后台驻留;macOS 活动监视器里可能有多个 Sublime Text 进程;Linux 不用 pkill -f "sublime_text" 就清不干净。没关完就删,会出现:
- 删到一半提示“文件正在使用”
- 重启后插件“复活”,因为被缓存或同步状态自动恢复
-
Saved Application State目录(macOS 是~/Library/Saved Application State/com.sublimetext.4/)会偷偷还原插件启用状态
删之前务必全平台强退:Windows 任务管理器结束全部相关进程;macOS 活动监视器点 ✕ 强制退出;Linux 终端跑 pkill -f "subl"。
重装前不登出同步账号,旧插件会自动复活
只要执行过 subl --sync-login,Sublime Text 4 的云端同步就会记住你装过哪些插件。哪怕你删光 Packages/、Cache/、Local/,首次启动时 Package Control 会从服务器拉取旧列表并自动重装。
彻底清理流程最后一步必须加:
- 菜单栏
Sublime Text → Preferences → Sync Settings → Logout,或终端运行subl --sync-logout - 检查
Packages/User/Package Control.sublime-settings是否已清空"installed_packages"数组
真正轻盈的编辑器,不是插件少,而是每一步卸载和禁用都踩准了 Sublime 的加载机制——它不认你删了什么,只认它启动时在哪儿找不到什么。











