使用键盘快捷键在 gnome 中聚焦或打开窗口

使用键盘快捷键在 gnome 中聚焦或打开窗口

如此处所述 (askubuntu.com/questions/234206/shortcut-to-switch-to-app/328842),它wmctrl允许您访问您的窗口。因此您可以通过键盘切换。但我喜欢有一个快捷方式来打开并聚焦(如果它尚未打开)。

有这样的工具吗?

答案1

还有另一种解决方案。

确保已安装 wmctrl:sudo apt install wmctrl

使用以下命令创建快捷方式:bash -c "wmctrl -a chrome ; [ "$?" == "1" ] && google-chrome"

解释:首先我们尝试关注 chrome ( wmctrl -vxa chrome),接下来我们验证“$?” == “0” 是否成功,或者“$?” == “1” 是否不成功,如果不成功,则启动 google chrome ( [ "$?" == "1" ] && google-chrome")。

你也可以创建快捷方式bash -c "wmctrl -a chrome || google-chrome"

||意思是如果第一个命令失败,则执行第二个命令。

答案2

我直接将以下内容作为键盘快捷键:

#                Focus Chrome if it's running,           start it otherwise.
sh -c "if test $(wmctrl -vxa chrome 2>&1 | wc -l) -eq 1; then google-chrome; fi"

答案3

尝试这些说明(已测试):

  • 首先得到消息类型应用程序名称xprop | grep WM_CLASS
  • 然后创建快捷方式bash -c "wmctrl -xa <WM_CLASS> || <WM_CLASS>"
  • 例如:bash -c "wmctrl -xa google-chrome || google-chrome

答案4

差不多明白了。

使用以下行创建/usr/local/bin/go( ):sudo vim /usr/local/bin/go

#!/bin/bash

if wmctrl -l | grep -i --quiet "${1}"; then
    wmctrl -a ${1}
else
    ${1}
fi

使其可执行:sudo chmod ugo+x /usr/local/bin/go

并增加一些系统的快捷方式:

名称:Firefox 命令:go firefox 通过 Super+F

但 Firefox 没有显示。通过控制台,它表现正常。

相关内容