麒麟系统右键菜单调整需通过peony文件管理器扩展机制实现:包括物理按键映射(如右键变左键)、启用内置功能项(如“在终端中打开”)、添加自定义菜单(如“在此打开终端”)及编译qt插件实现桌面空白处全局菜单。

在麒麟系统中调整右键菜单选项不是修改右键“样式”或“颜色”,而是增删功能项、启用禁用内置条目、或改变其触发逻辑——比如让右键点击桌面空白处直接选中图标,而非弹出菜单;或为文件夹添加“在此打开终端”选项。这些操作必须深入Peony文件管理器的扩展机制,否则所有图形界面设置都无效。
让右键点击桌面空白处直接选中图标
此操作将物理右键按键映射为左键事件,绕过Peony默认的上下文菜单调用流程,适用于习惯Windows资源管理器式操作的用户。
按 Ctrl + Alt + T 打开终端。
执行 xinput list,查找含 “mouse” 或 “Mouse” 的设备行,记下其ID(例如 ID=9)。
运行 xinput get-button-map 9,确认当前映射为 1 2 3 4 5 6 7(左键/中键/右键/滚轮上下等)。
执行 xinput set-button-map 9 1 2 1 4 5 6 7,将按钮3(原右键)强制映射为按钮1(左键)。【执行后原右键将永久失去调出菜单能力,必须手动恢复】
立即在桌面空白处点击右侧物理按键:若图标被选中,说明生效;再点左侧物理按键,应仍能呼出右键菜单。
启用系统已内置但默认禁用的右键菜单项
如“在终端中打开”“计算文件哈希”等功能早已编译进系统,仅需开启开关即可使用,无需写代码、不需编译,改完即用。
方法一:编辑用户级配置(推荐,无权限风险)
执行 mkdir -p ~/.local/share/peony-extensions 创建目录。
运行 cp /usr/share/peony-extensions/menu-definition.json ~/.local/share/peony-extensions/ 复制模板。
用文本编辑器打开该文件,搜索 "name": "open-in-terminal",将其所在对象内的 "enabled": false 改为 "enabled": true。
保存后执行 killall peony,Peony自动重启并加载新配置。
方法二:直接启用全局刷新菜单
在终端中运行:gsettings set org.ukui.peony.preferences show-refresh-menu true。
注销当前用户并重新登录,桌面右键即可看到“刷新”选项。
为文件夹右键添加“在此打开终端”
该方式仅对当前用户生效,不改动系统文件,部署快、回退易,适合日常高频操作。
第一步:创建标准动作目录mkdir -p ~/.local/share/peony-extensions/menus
第二步:新建.desktop文件nano ~/.local/share/peony-extensions/menus/open-terminal-here.desktop
第三步:填入以下内容并保存
[Desktop Entry]
Type=Application
Name=在此打开终端
Icon=utilities-terminal
Exec=gnome-terminal --working-directory=%F
MimeType=inode/directory;
X-Peony-Menu-Provider=true
第四步:赋予执行权限chmod +x ~/.local/share/peony-extensions/menus/open-terminal-here.desktop
第五步:注销并重新登录
进入任意文件夹右键,菜单底部即出现“在此打开终端”选项。
编译安装Qt插件实现桌面空白处全局菜单
这是唯一能让新菜单项出现在桌面空白处(而不仅限于文件夹内)的方法,支持图标、子菜单和多文件上下文判断。
① 创建工作目录并解压示例插件:mkdir -p ~/peony-plugin && cd ~/peony-plugin,然后放入 peony-qt-menu-plugin-example.tar.gz 并执行 tar -zxvf peony-qt-menu-plugin-example.tar.gz。
② 安装依赖:sudo apt install libpeony-dev libpoppler-qt5-dev libudisks2-dev libnotify-dev。【缺少 libpeony-dev 将导致 qmake 无法识别头文件,编译必然失败】
③ 生成构建文件并编译:qmake && make,成功后输出 libpeony-qt-menu-plugin-example.so。
④ 安装插件:sudo make install;若未生效,手动复制:sudo cp libpeony-qt-menu-plugin-example.so /usr/lib/x86_64-linux-gnu/peony-extensions/。
⑤ 【必须注销当前用户或重启系统,仅 killall peony 无法加载新插件】











