与2012的这个问题类似,我正在寻找一种方法来自动设置组合键,该组合键应该触发命令的执行,就像在 gui 中设置它一样。(示例用法)
我在 Ubuntu 18.04 上,链接答案的 gsettings 架构似乎不存在:
$ gsettings list-schemas | grep keyboard
org.gnome.settings-daemon.plugins.keyboard
org.gnome.settings-daemon.plugins.a11y-keyboard
org.gnome.shell.keyboard
org.gnome.settings-daemon.peripherals.keyboard
org.gnome.libgnomekbd.keyboard
com.canonical.indicator.keyboard
org.gnome.desktop.peripherals.keyboard
org.gnome.desktop.a11y.keyboard
我如何使用 bash 来设置它,就像我进入 GNOME GUISettings > Devices > Keyboard
并手动设置它一样?
评论后
我查看了以下链接:
我的笔记本电脑已经使用 GUI 进行了设置,我运行了一些查询以了解我应该瞄准什么输出。
在我的测试设备上(不同于以前的笔记本电脑),查询
org.gnome.settings-daemon.plugins.media-keys custom-keybindings
返回一个空字符串数组 (@as []
)。在我的测试设备上,我尝试设置绑定:
在
/usr/share/glib-2.0/schemas/org.gnome.settings-daemon.plugins.media-keys.custom-keybindings.gschema.xml
测试设备上是为org.gnome.settings-daemon.plugins.media-keys.custom-keybinding
(没有尾随 s)定义的模式。在那里我可以看到 , 和 的类型name
都binding
用于command
字符串s
。所以我删除了结尾的 sid
但不是path
现在设置并再次查询它们有效。然后,我将自定义命令路径添加到以前的空列表中。(我认为这会覆盖整个列表,所以要小心!)
r
我通过进入按下时出现的弹出窗口继续重新加载 gnome AltF2。我将一个窗口移动到第二个工作区并尝试它是否有效。它没有 - 没有任何反应。
我将命令更改为
echo test > ~/testing.txt
并再次尝试,但仍然 - 没有任何反应。该文件未创建。这里的问题与我使用 GUI 的链接示例用法相同:
为此,我编写了一个脚本。如果尝试覆盖现有的默认快捷方式,它将失败而不会打印错误。
这里是一个示例如何创建键盘快捷键以通过
<Super> + p
按键暂停系统: