Sublime侧边栏右键菜单需通过编辑Packages/User/Context.sublime-menu文件删除整行条目来精简,系统级“用Sublime打开”项须删除注册表对应分支并重启explorer.exe。

取消 Sublime 侧边栏右键菜单某项
Sublime 的侧边栏(Sidebar)右键菜单由 Context.sublime-menu 控制,它不支持“删除单个条目”,只能靠覆盖整个菜单来实现精简。你看到的菜单是 User 目录下该文件的完整输出——没有“隐藏开关”,只有“写什么就显示什么”。
- 打开
Preferences > Browse Packages…,进入User文件夹 - 新建或编辑
Context.sublime-menu(必须是 JSON 格式,且必须放在Packages/User/下才生效) - 把默认菜单里不需要的项整行删掉,比如去掉
"caption": "Reveal in Side Bar"这类条目 - 保存后立即生效,无需重启 Sublime
注意:别直接改默认包里的同名文件(如 Default/Context.sublime-menu),那会被升级覆盖;也别在其他路径建这个文件,Sublime 只认 User 目录下的版本。
彻底禁用系统级“用 Sublime 打开”右键项
Windows 资源管理器里出现的“用 Sublime 打开”属于系统注册表控制,和 Sublime 自身无关。要取消它,必须删注册表对应分支,否则菜单会一直残留。
- 以管理员身份运行
regedit - 定位到
HKEY_CLASSES_ROOT\*\shell\Sublime Text(文件右键)或HKEY_CLASSES_ROOT\DirectoryBackground\shell\Sublime Text(文件夹空白处右键) - 右键删除整个
Sublime Text项(不是里面的子项) - 重启
explorer.exe(任务管理器 → 找到进程 → 重启),否则菜单可能还显示
常见错误:只删了 command 子项,但没删父项 Sublime Text,结果菜单文字还在,点击报错或无响应。
为什么删了注册表还不消失?检查这三处
右键菜单没消失,大概率不是没删对,而是被系统或软件拦截、重定向了。
- 是否用管理员权限运行的
regedit?非管理员下写入会被重定向到HKEY_CURRENT_USER\Software\Classes,而资源管理器根本不读这里 - 杀毒软件(如火绒、360)是否拦截了注册表修改?临时关闭再试
- 公司/学校域策略是否禁用了上下文菜单自定义?这种情况下注册表修改完全无效,且无提示
验证方法:在 regedit 中手动导航到 HKEY_CLASSES_ROOT\*\shell,确认 Sublime Text 项已不存在——如果还在,说明删错了位置或权限不够。
想保留部分功能但隐藏其他项?别用“注释”
有人尝试在 Context.sublime-menu 里把某行改成 // { "caption": "...", ... } 来“临时禁用”,这是无效的。JSON 不支持行内注释,Sublime 会直接解析失败,导致整个右键菜单变空或回退到默认菜单。
- 正确做法:删掉整条对象,而不是加
//或/* */ - 需要反复开关某项?建议用 Git 管理
User/Context.sublime-menu,或者备份多个版本文件(如context-full.sublime-menu和context-min.sublime-menu) - 语法专属菜单(如
Python.sublime-menu)也遵循同样规则:删掉整个对象,不是注释
最易忽略的一点:Sublime 启动时只加载一次 Context.sublime-menu,但修改后保存即热更新——所以改完不生效,基本可以确定是路径错、格式错,或根本没保存成功。

















