sidebarenhancements插件必须安装,但仅安装无法直接支持模板新建文件;需通过package control安装、显式添加项目目录、正确配置packages/context.sublime-menu路径及精准context条件,并自定义new_file_with_template.py命令方可实现带模板的右键新建功能。

SideBarEnhancements 插件必须装,但装完不等于能用
原生 Sublime Text 侧边栏右键根本没有 New File 选项,这不是设置问题,是功能缺失。SideBarEnhancements 是目前唯一稳定支持新建文件、复制路径、终端打开等操作的插件,但只装它还不够——它默认调用 side_bar_new_file 命令,创建的是纯空白文件,不读模板、不插内容、不支持变量。
- 必须用 Package Control 安装:按
Ctrl+Shift+P→ 输入Package Control: Install Package→ 等仓库加载完成 → 输入SideBarEnhancements回车 - 安装后右键没反应?检查是否通过
Project → Add Folder to Project…显式添加了项目目录(拖进窗口或File → Open Folder不生效) - 确认
Preferences → Settings – User里没有"ignored_packages": ["SideBarEnhancements"]这一行,有就删掉 - 右键目标必须是侧边栏里的文件夹节点(哪怕只是根目录),点单个文件或空白处无效
Packages/Context.sublime-menu 路径必须对,否则菜单静默消失
侧边栏右键菜单只读 Packages/Context.sublime-menu,不是 Packages/User/Context.sublime-menu,也不是插件目录下的任何同名文件。放错路径,菜单项不会报错、不会提示,直接不显示。
- Windows 正确路径:
%APPDATA%\Sublime Text\Packages\Context.sublime-menu - macOS 正确路径:
~/Library/Application Support/Sublime Text/Packages/Context.sublime-menu - Linux 正确路径:
~/.config/sublime-text/Packages/Context.sublime-menu - 文件名必须全小写?错,必须是
Context.sublime-menu(C 大写,无空格,无 .txt 后缀) - 编码必须为 UTF-8 无 BOM;带 BOM 会导致整个文件加载失败,中文乱码或菜单项消失
context 条件必须写准,否则菜单不出现或乱弹
不加 context,菜单项会出现在编辑区、标签页甚至空白处;加了但写错,就等于没加。侧边栏节点没有 selector 属性,只能靠硬字段判断。
- 限定只在侧边栏显示:
{"key": "node_type", "operand": "sidebar"} - 只对选中文件夹生效(避免点单个文件时也出现):
{"key": "is_folder", "operator": "equal", "operand": true} - 确保用户确实点了某个节点(排除空白处点击):
{"key": "selection_empty", "operator": "equal", "operand": false} - 多个条件并列即“且”关系,全部满足才显示;顺序无关,但少一个就失效
想新建带模板的文件?得自己写 new_file_with_template.py
改 Settings – User 里的 "template" 字段完全无效——插件源码里压根没解析这一项。真正能生效的自定义命令,必须放在 Packages/User/new_file_with_template.py,且继承 sublime_plugin.WindowCommand。
- 不能直接改插件目录下的 Python 文件:升级后覆盖,且易破坏依赖
- 视图刚创建时未必 ready,直接
v.insert()容易插错位置或失败,需加延迟或等待就绪信号 -
command字段值必须和命令面板里显示的 ID 完全一致(大小写、下划线都不能错) - 变量如
$file_path必须直接写在args里,不加引号:"args": {"path": "$file_path"};写成"$file_path"就传了字面字符串
node_type 和 is_folder 的布尔值写法里——这些地方错一个,整个菜单就静默失效,连控制台都不报错。











