插件不支持原生项目级启用,仅少数如gitgutter、editorconfig等通过项目配置控制行为;多数插件全局生效,需查文档确认是否支持project相关设置。

插件是否支持项目级启用?看 PackageControl.sublime-settings 不管用
Sublime Text 本身不提供“仅对当前项目启用某插件”的原生开关。所有通过 Package Control 安装的插件默认全局生效,PackageControl.sublime-settings 里禁用的是全局状态,不是项目级——改了它,所有项目都失效。
真正起作用的是插件自身的实现逻辑:只有少数插件(如 EditorConfig、GitGutter)主动读取 .sublime-project 里的配置并据此控制行为;大多数插件(比如 AutoFileName、SublimeLinter)压根不检查项目设置,一启动就干活。
- 别在
Preferences → Package Settings里找“项目专属开关”,基本找不到 - 打开
.sublime-project文件,加"settings": {"some_plugin_enabled": false}没用——除非插件文档明确说支持这个 key - 想确认某个插件支不支持,查它的 GitHub README,搜
project或settings,别猜
sublime-project 能关掉哪些插件?看它有没有 enable_on_project 这类钩子
部分插件暴露了项目级控制入口,但命名五花八门,且必须手动写进 .sublime-project 的 settings 块里。这不是 Sublime 的机制,是插件作者自己加的。
例如:
{
"folders": [{ "path": "." }],
"settings": {
"git_gutter_enabled": false,
"editorconfig_enabled": true,
"sublimelinter_executable_map": { "python": "/path/to/venv/bin/python" }
}
}
-
GitGutter用git_gutter_enabled控制是否渲染 gutter 图标 -
EditorConfig用editorconfig_enabled开关整个功能 -
SublimeLinter不支持直接禁用,但可通过lint_mode设为"on_save"减少实时干扰 - 改完
.sublime-project必须关闭再重开项目,热重载不生效
性能卡顿真因:不是插件“开着”,而是它在监听文件变更或跑后台任务
插件常驻内存不等于吃 CPU;真正拖慢的是那些持续监听文件系统、定时扫描、自动补全或语法检查的行为。比如 SublimeLinter 默认 lint_mode: "background",每敲一个字都触发一次 lint;AutoFileName 在插入路径时会遍历整个项目目录树。
- 先用
Ctrl+Shift+P→Profile Plugins(需安装Profile插件)看哪个插件耗时高 - 禁用
lint_mode: "background"改成"on_save",比全局禁用SublimeLinter更精准 -
AutoFileName可设"auto_filename_exclude_patterns": ["node_modules/**", "dist/**"]避免扫大目录 - 某些插件(如
SideBarEnhancements)只在右键菜单出现,不常驻,性能影响极小,不用动
实在要隔离环境?用便携版 + 独立 Packages 目录最可靠
Sublime 没有沙箱,但你可以骗过它:为不同项目准备独立的便携安装,每个自带一套 Packages 和 Installed Packages。这不是优雅方案,但 100% 有效,且避免了插件冲突和误配置。
- 下载
Sublime Text Portable或手动复制一份 Sublime 目录,重命名为Sublime-ProjectA - 启动时加参数
--data "Data-ProjectA",它就会用独立的Data-ProjectA目录存插件和设置 - 在该实例里只装
ProjectA需要的插件,其他一律不碰 - 注意:不能同时开两个带
--data的实例操作同一项目文件,可能引发索引错乱
项目越多,越容易漏掉某个插件其实根本没读项目配置——它只是安静地在后台跑着,等你某天发现光标卡顿才回头翻文档。











