右键菜单不显示“open with sublime text”是因为注册表路径错误:必须修改hkey_classes_root*shell(文件右键)和hkey_classes_rootdirectoryackgroundshell(文件夹空白右键),而非hkey_current_user;需管理员权限、正确使用%1/%v参数、路径双反斜杠转义、-n参数确保新窗口聚焦。

右键菜单不显示“Open with Sublime Text”?大概率注册表路径写错了
Windows 资源管理器的右键菜单根本**不读 HKEY_CURRENT_USER**,你改了那里等于白改。真正起作用的是 HKEY_CLASSES_ROOT*shell(文件右键)和 HKEY_CLASSES_ROOTDirectoryBackgroundshell(文件夹空白处右键)——这两个位置必须用管理员权限打开注册表编辑器才能写入。
- 别在
HKEY_CURRENT_USERSoftwareClasses下折腾,它对资源管理器右键无效 - 新建项名建议用
SublimeText这类无空格、纯英文名,含中文或空格可能导致解析失败 -
MUIVerb值才是菜单上显示的文字,比如设为用Sublime Text打开;而默认值(Default)是空的,别填错地方 - 图标不显示?检查
Icon值是否带了,0后缀,例如"C:\Program Files\Sublime Text\sublime_text.exe,0"
文件右键 vs 文件夹空白右键:%1 和 %V 不能混用
这是最常踩的坑:%1 表示选中的文件路径,只在你点了某个 .txt/.py 文件后才有效;%V 表示当前 Shell 命名空间路径,专用于你在文件夹里点空白处时获取该目录路径。两者语义完全不同,强行通用会直接失效。
- 文件右键命令必须用
"C:\Program Files\Sublime Text\sublime_text.exe" -n "%1" - 文件夹空白右键命令必须用
"C:\Program Files\Sublime Text\sublime_text.exe" -n "%V" - 漏掉引号、多打空格、反斜杠只写一个(如
C:Program Files写成C:Program Files),注册表就静默忽略整条项,菜单不出现且无提示 - 不加
-n参数会导致新窗口不聚焦,甚至被塞进后台标签页——这不是 Bug,是 Sublime 默认复用窗口的行为
Sublime 编辑器内右键(侧边栏/文本区)归 Context.sublime-menu 管
你在 Sublime 自己界面里点右键,比如侧边栏点一个文件、或者代码里选中一段文字,这个菜单跟 Windows 注册表完全无关,只认 Packages/User/Context.sublime-menu 这个文件——放错位置(比如丢进 Packages/Default/ 或插件目录)就彻底失效。
- 必须通过
Preferences > Browse Packages…进入,再进User文件夹创建/编辑Context.sublime-menu - 文件编码必须是 UTF-8,后缀必须是
.sublime-menu(不是 .txt) - 想让某项只在侧边栏出现?加
"context": [{"key": "node_type", "operator": "equal", "operand": "file"}];只在文本区出现?用"operand": "text" -
$file_path是变量,不是字符串——写成"args": {"path": "$file_path"}才对;写成"$file_path"就传了个字面量过去,结果为空
想一键搞定?用 .reg 文件比手动敲注册表更稳
手敲注册表容易漏转义、错层级、权限不足。直接写个 sublime_context_menu.reg 文件双击导入,能自动处理路径转义和提权逻辑,成功率高得多。
- 复制下面内容,保存为
sublime_context_menu.reg(注意后缀): Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT*shellSublimeText] @="用Sublime Text打开" "Icon"="C:\Program Files\Sublime Text\sublime_text.exe,0" [HKEY_CLASSES_ROOT*shellSublimeTextcommand] @=""C:\Program Files\Sublime Text\sublime_text.exe" -n "%1"" [HKEY_CLASSES_ROOTDirectoryBackgroundshellSublimeText] @="用Sublime Text打开" "Icon"="C:\Program Files\Sublime Text\sublime_text.exe,0" [HKEY_CLASSES_ROOTDirectoryBackgroundshellSublimeTextcommand] @=""C:\Program Files\Sublime Text\sublime_text.exe" -n "%V""
- 记得把路径替换成你电脑上的真实安装路径,所有单反斜杠都要改成双反斜杠
\ - 双击运行前确保以管理员身份运行,否则写入会被系统拦截
真正麻烦的从来不是操作步骤,而是注册表路径、参数符号、路径转义这三处细节同时出错——它们都不报错,只是菜单消失。确认一次,比反复重试十次都省时间。











