Ubuntu-有没有办法将键盘快捷键关联到前面的窗口?


8

我正使用3种程序:-浏览器-终端-代码编辑器

我将所有内容都保留在全屏窗口中。

我需要的是能够使用简单的键盘快捷键来启动其中的任何一个,例如用于浏览器的Ctrl + Alt + B等。

Alt-Tab很烂,因为我必须停下来看看选择器在哪里。

使用3个工作空间比较好,但仍然不理想-我需要考虑自己在哪里以及需要去哪里。例如,我的浏览器在终端的顶部,代码编辑器在终端的右侧。因此,要从浏览器移至终端,请使用Ctrl + Alt + Down,但要从代码编辑器移至终端,我必须执行Ctrl + Alt + Left。相反,我应该只对终端执行Ctrl + Alt + T。

谢谢!


2
如果还有其他人需要回答我自己的问题:是的,只需在“设置”中打开“键盘”应用程序,并设置键盘快捷方式以切换到我的情况下的工作区1、3和4。
Bogdan Balan

1
在Windows 7及更高版本中,这是通过使用Win键和一个数字来完成的。我不知道gnome / kde /是否复制了该功能
Keltari 2013年

1
关于终端程序,请尝试guake。这是一个类似于游戏中的终端,通过可配置的组合键显示或隐藏。
Vorac 2013年

1
您可能想将答案发布为答案而不是评论。
Tog

Answers:


2

我不使用Unity,因此已在Cinnamon上进行了测试,但相同的技巧应在所有桌面环境中均适用。您可以使用xdotool或之类的工具wmactl 来编写与X服务器的交互脚本。

我更喜欢wmctl,但您可以同时安装

sudo apt-get install xdotool wmctl 

首先运行wmctl -i以查看打开的窗口的名称是什么:

$ wmctrl -l
0x02200007 -1 oregano Desktop
0x0380007f  1 oregano Ubuntu - Is there a way to associate keyboard shortcuts to bring a window to front? - Super User - Mozilla Firefox
0x01c000a3  1 oregano emacs@oregano
0x03c00006  1 oregano Terminal

如果向右滚动,您将看到第二个是firefox显示此页面的实例。因此,您现在按名称激活三个窗口中的每个窗口:

$ wmctrl -a terminal 
$ wmctrl -a firefox
$ wmctrl -a emacs

您可以使用桌面环境的GUI或通过更通用的工具(例如)为每个命令分配快捷方式xbindkeys


在我搜索的所有内容中,这是最容易实现的!
Yesh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.