Windows11 右键菜单自定义 - NileSoft Shell
(发现简中圈居然没有人写这个事,写个草稿发别的地方)
Windows11 右键菜单问题被诟病已有,网上很多还原为 win10 菜单的教程……但 win10 有 win10 的问题,有用的没用的都往里放,常用的不常用的混在一起。有没有一种方法可以兼顾好看,同时有合理的菜单层级呢?
有的 —— Nilesoft Shell。可以自定义的 Win11 右键菜单。已经用了两年多了很好用(以至于差点忘了有这个软件)。
下载并安装
下载在官网: https://nilesoft.org/
安装完后,新菜单应该已经生效了,并且会开机自启。这时候可以点点看,如果感觉效果满意就不用再看下去了。
当然颜狗是不满意的,大部分一级菜单我用不上,我只想保留我常用的,不用的塞到更多选项。如图
挪动菜单层级
如果你是默认安装,C:\Program Files\Nilesoft Shell
应该能看见以下的文件结构
Nilesoft Shell/
├── shell.exe
├── shell.nss
├── imports/
│ ├── modify.nss
│ └── ...
└── ...
以 .nss
结尾的是配置文件,可以用记事本打开。以下是几个案例:
1. 收纳不常用菜单至 “更多选项”
例如,收纳所有名称里带有 “QQ” 和 “百度” 的菜单项,在 modify.nss
添加如下:
modify(mode=mode.multiple find="QQ|百度|网盘" menu=title.more_options)
find 中包含的字符串会被匹配,“|”是或。表示匹配“QQ”或“百度”或“网盘”的任意项都会被挪走。
这是主要的挪菜单的方式,我实际上挪了一大堆。
modify(mode=mode.multiple
find="收藏夹|打印|共享|PowerRename|Microsoft Defender|Change Attributes|File Locksmith|upic|火绒|百度|QQ|Acrobat|Adobe|OneDrive|在沙盒中运行|PicList|旧版 Windows Media Player"
menu=title.more_options)
2. “创建快捷方式”挪到顶层
有人可能看不惯 创建快捷方式 放在了 更多选项 里。要恢复把 modify.nss
中一行注释掉就好。
modify(mode=mode.multiple
where=this.id(
id.send_to,
id.share,
// id.create_shortcut, 这行注释掉
id.set_as_desktop_background,
id.rotate_left,
...
3. 顶层添加新菜单项 “使用 vscode 打开”
在 shell.nss
中,新起一行添加
item(title='Open with VS Code' image=[\uE272, #22A7F2] cmd='code' args='"@sel.path" && exit' sep='top')
添加的这行可以不在最后,添加的位置决定它在菜单中的位置。我添加在了中间,最后的几个 "import" 之间。
要是问为什么我不用 vscode 自带的右键菜单……我的 vscode 装得太早了,那时还没有右键菜单关联,现在也懒得再装了就将就用吧……
4. 顶层菜单添加新目录
你要是在图片上右键,会发现系统自带有“使用 Windows 画图编辑”“使用照片编辑”“向左旋转”“向右旋转”……我的天,哪个天才设计的,你不知道自家照片 App 打开后能编辑也能旋转吗?(我知道这肯定是两波人开发的但还是想吐槽)
秉持着只挪不删的原则,在“更多选项”前加了个“编辑”目录。以下加在了 shell.nss
menu(mode="multiple" title="编辑" image=image.glyph("\uE0A1"))
{
}
然后在 modify.nss
里加了
modify(mode=mode.multiple
find="*编辑|旋转|PDF"
menu="编辑")
这样等于说,编辑和旋转相关都被归到了新的“编辑”目录下。加上 PDF 相关操作挪进去。我没有装 WPS,装了 WPS 也可以把 WPS 挪一个目录。
生效
管理员权限运行安装目录下的 shell.exe
,点 Register 生效
其他
按 shift 后右键菜单,会有一个“Developer” 目录。没错 shift 显示隐藏菜单也可以实现,配置的属性有 vis=key.shift()
,但不是实时变化的所以没有mac 上的好用。除此之外还有喜闻乐见的能配置主题、颜色、图标等……我不管了。
参考
官网的文档很详细,但是非常面向程序员。不过大部分的需求被人在论坛上问过了,也有人在 issue 里问。不会就去论坛翻一下。看不懂英文开翻译,看不懂文档丢给 AI。