SANSUI'S BLOG

系统外观
分类标签
RSS
Sansui 2025
All rights reserved
人活着就是为了卡卡西

Windows11 右键菜单自定义 - NileSoft Shell

4 月 19 日, 2025

(发现简中圈居然没有人写这个事,写个草稿发别的地方)

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。

文档: https://nilesoft.org/docs

论坛: https://github.com/moudey/Shell/discussions

更新于 2025-04-19 09:21
Waline