gnome 下面有什么什么办法为程序绑定全局快捷键?

249 天前
 jeesk

我只想打开一个 chrome , 如果 chrome 已经存在,那么直接激活当前的 chrome 即可? 有这方面的拓展吗?

1307 次点击
所在节点    Linux
11 条回复
L4Linux
249 天前
为什么不改.desktop 文件?
mephisto
249 天前
你可以看看我写的一个隐藏和呼出终端的文章,但是不是 Gnome 下的,Gnome 很多东西是锁死的,有利有弊
passive
249 天前
没用过 wayland 。如果是 X ,在 Chrome.desktop 里填 StartupWMClass 。
june4
249 天前
设置中心>键盘>Custom Shortcuts ,里面可以为任意程序指定快捷键,写上 chrome 的命令行地址就行
vcn8yjOogEL
249 天前
Chrome 放到 Dash 上, 然后按 Super+数字键
kuanat
249 天前
`Run or raise`
https://github.com/CZ-NIC/run-or-raise
https://extensions.gnome.org/extension/1336/run-or-raise/

PS
不依赖扩展的方式就是楼上说的 Super+数字,上面的插件里也提到了。

再 PS
tiling wm 环境里这个功能非常好实现,可以借鉴一下思路。绑定快捷键就用 Gnome 自带的 Keyboard shortcuts ,执行一个 bash -c "command" 命令。这个命令脚本用来判定运行程序和判定焦点,然后通过某个接口去操作窗口管理器。X11 的话,wmctrl 就可以。Wayland 需要通过 D-Bus 调用。
huangmingyou
248 天前
gnome 用 xdotool 写脚本,用快捷键绑定脚本。 kde 可以直接用 kwin 规则实现,fvwm 也可以直接实现。不用 xdotool
jeesk
247 天前
@huangmingyou
@kuanat

我直接用上了 run-or-raise, 在 x11 上我用的 wmctrl 来实现的。
jeesk
247 天前
@huangmingyou kde 貌似在 wayland 上面渲染有些问题, 弃用了。
mutex369
247 天前
以 Ubuntu20 为例:Settings -> Keyboard -> View and Customize Shortcuts -> Custom Shortcuts -> Add Custom Shortcut
在 Command 一行加入如下代码:
```
/bin/bash -c 'if ps -A | grep 那个程序可能的名字; then wmctrl -a 那个程序可能显示的窗体名字; else 运行那个程序的命令 ; fi;'
```
----------
但我现在也遇到了一个问题,wmctlr -l 显示的窗体里没有 firefox ,虽然它已经打开了。有人能教导一下吗?
mutex369
243 天前
@mutex369 找到原因了,https://www.reddit.com/r/Ubuntu/comments/nu8bij/issue_with_wmctrl_and_firefox_after_upgrading_to/。
新版 firefox 默认使用 wayland 启动了,而 wmctrl 只能操纵 X11 的窗口。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1025574

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX