![为 KDE Dolphin 服务菜单分配键盘快捷键](https://linux22.com/image/895980/%E4%B8%BA%20KDE%20Dolphin%20%E6%9C%8D%E5%8A%A1%E8%8F%9C%E5%8D%95%E5%88%86%E9%85%8D%E9%94%AE%E7%9B%98%E5%BF%AB%E6%8D%B7%E9%94%AE.png)
有什么方法可以为我添加到 Dolphin 的自定义服务菜单分配键盘快捷键吗?键盘分配的选项菜单似乎没有显示任何服务菜单操作,我也没有找到.desktop
允许我设置热键的输入键。
我知道 GNOME 的 Nautilus 使用隐藏的 acces 文件允许用户设置自定义键绑定。Dolphin 是否有类似的选项?
答案1
据我所知
无法使用键盘快捷键启动 KDE 服务菜单(上下文菜单)。这是基于:
Dolphin 使用 KDE Framework 5 KIO FileItemActions:https://api.kde.org/frameworks/kio/html/classKFileItemActions.html:
详细说明
此类创建并处理弹出菜单中一个 URL(或多个 URL)的操作。
这包括:
- “打开”动作,而且
- 内置服务,如挂载/卸载旧式设备桌面文件
- .desktop 文件的用户定义操作,在文件本身中定义(参见桌面条目标准)
- servicemenus 操作,在 .desktop 文件中定义,并根据 url 的 mimetype 进行选择
海豚源文件:
- 海豚上下文菜单.cpp->https://cgit.kde.org/dolphin.git/tree/src/dolphincontextmenu.cpp
- 海豚上下文菜单.h->https://cgit.kde.org/dolphin.git/tree/src/dolphincontextmenu.h
引用:
/**
* @brief Represents the context menu which appears when doing a right
* click on an item or the viewport of the file manager.
*
使用海豚按钮快捷键的解决方法
KDE 论坛有一个主题‘播放 Dolphin 的所有媒体按钮’:https://forum.kde.org/viewtopic.php?f=223&t=140139。它展示了如何修补 Dolphin 源以向 Dolphin 工具栏添加额外的按钮。Dolphin 按钮可以有键盘快捷键。
祝福/补丁
您可以在https://bugs.kde.org。
补丁和审核请求可以添加到 KDE 的 Phabricator 实例中:https://phabricator.kde.org/。
答案2
我不知道你使用什么发行版,但这是针对 Kubuntu 的(当然也适用于其他发行版):
你可以使用以下命令模拟右键单击工具并将其映射到您的自定义快捷方式(对我来说是 Shift-F10)。
方法如下。首先,安装 xdotool 实用程序:
sudo apt install xdotool
然后在中添加新的快捷方式自定义快捷方式。 放扳机到你喜欢的任何快捷方式(例如 Shift-F10)。设置行动到:
xdotool 键 135
(135 是“菜单键”的键码)
适用于 Dolphin 17.12。
答案3
使用一个名为 Autokey-gtk 的软件 --- > 它非常好!
您可以轻松编写类似这样的脚本,以执行您想要的操作。如果您使用窗口过滤器选项,则可以选择脚本的执行位置。
在 KDE 中。例如,我在这里编写了一个脚本,用于在 Dolphin 或 Desktop 中创建一个新的文本文件。
winClass = window.get_active_class()
if "dolphin.dolphin" in winClass:
keyboard.send_key("<menu>")
keyboard.send_key("c")
keyboard.send_key("t")
elif "plasmashell.plasmashell" in winClass:
time.sleep(0.2)
keyboard.send_key("<menu>")
time.sleep(0.2)
keyboard.send_key("n")
time.sleep(0.2)
keyboard.send_key("t")