update_check 设为 false 是唯一能真正拦住主弹窗的开关,它直接阻止 sublime 启动时向 update.sublimetext.com 发起 http 请求;还需同步设置 show_update_in_status_bar 为 false,并在 package control 用户设置中禁用 auto_upgrade 和 enable_upgrade_check,最后隐藏菜单项并检查各插件更新配置。

update_check 设为 false 是唯一能真正拦住主弹窗的开关,它直接阻止 Sublime 启动时向 update.sublimetext.com 发起 HTTP 请求——没这个请求,后续所有弹窗、状态栏文字、菜单响应就都失去触发条件。但只改这一项,其他三路提示仍会冒出来。
怎么在 User Settings 里正确加 update_check 和 show_update_in_status_bar
必须编辑 Preferences → Settings 右侧的「User Settings」面板(左侧 Default 是只读的,改了无效);update_check 是起点,show_update_in_status_bar 是配套补漏——Sublime Text 4+ 把网络逻辑和 UI 渲染拆开了,不加后者,右下角“Update available”小字会一直挂着。
- 在 JSON 大括号
{}内添加:"update_check": false和"show_update_in_status_bar": false - 如果前面已有配置(比如
"hot_exit": true),新行末尾必须加英文逗号分隔 - 保存后建议完全退出 Sublime(macOS 用 Dock 右键「退出」,Windows/Linux 在任务管理器确认无残留进程),否则内存缓存还在
- 路径可手动确认:
%APPDATA%\Sublime Text\Packages\User\Preferences.sublime-settings(Windows)或~/Library/Application Support/Sublime Text/Packages/User/Preferences.sublime-settings(macOS)
为什么 Package Control 还在弹 Upgrading packages...
Package Control 是独立插件,完全不读取主程序的 update_check 设置。它默认每小时检查更新,失败时可能 fallback 触发 Failed to load package list,甚至反向激活主程序弹窗。
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)打开命令面板 - 输入并选择:
Package Control: Settings – User - 在打开的配置中添加两行:
"auto_upgrade": false和"enable_upgrade_check": false - 这两项缺一不可:单关
auto_upgrade,某些失败场景会 fallback 到检查逻辑
菜单项和插件级更新怎么清干净
即使所有开关都关了,Help 菜单里的 Check for Updates… 入口仍存在;点一下虽不报错,但可能意外激活 SideBarEnhancements 等插件自带的更新逻辑。
- 打开 Preferences → Key Bindings(用户键位文件),添加这段 JSON:
[ {"caption":"Check for Updates…","command":"hide_menu_item","args": {"name":"Check for Updates…"}} ] - 这是纯视觉隐藏,不影响其他功能,也无副作用
- 逐个检查插件设置:Preferences → Package Settings → [插件名] → Settings,搜索
update、check、auto,常见可关项包括:"check_for_updates"、"enable_auto_update"、"notify_on_update"
最麻烦的不是配置本身,而是落点错误或进程没杀干净——90% 的“明明改了还弹窗”都卡在这两步;插件级更新最容易被忽略,尤其 SideBarEnhancements、AutoFileName 这类老插件,它们的更新开关藏得深,且不依赖 Package Control。











