例如:
/org/gnome/settings-daemon/plugins/media-keys/screensaver ['<Super>l']
这里,Super+L必然是:
xdg-screensaver lock
或者,
dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
我想找出当我按下与窗口管理器一起使用的键绑定时运行哪个命令。
具体来说,我想知道我的窗口管理器(我使用的是 Zorin OS 16,它使用 Gnome Shell)针对给定的键绑定调用了哪些命令。
例如,当我调用以下键时会发生什么
/org/gnome/desktop/wm/keybindings/maximize
/org/gnome/desktop/wm/keybindings/unmaximize
/org/gnome/desktop/wm/keybindings/toggle-maximized
/org/gnome/desktop/wm/keybindings/minimize
/org/gnome/desktop/wm/keybindings/toggle-fullscreen
/org/gnome/desktop/wm/keybindings/toggle-tiled-left
/org/gnome/desktop/wm/keybindings/toggle-tiled-right
/org/gnome/desktop/wm/keybindings/show-desktop
我对 CLI 或 dbus 都很满意。
更具体地说,既不适合我xdotool
,也不wmctrl
适合我。更多详情请参阅https://github.com/jordansisssel/xdotool/issues/398
所以,我需要在脚本中使用的特定命令。
答案1
命令是gsettings
。您可以 grep 其输出来缩小范围。然后您可以通过Settings
GUI 或dconf editor
.或者gsettings
它本身。
$ gsettings list-recursively | grep -E 'keybindings' | grep 'Alt'
org.gnome.desktop.wm.keybindings activate-window-menu ['<Alt>space']
org.gnome.desktop.wm.keybindings begin-move ['<Alt>F7']
...