聚焦当前窗口并最小化所有其他窗口

聚焦当前窗口并最小化所有其他窗口

有没有办法通过命令行聚焦当前窗口并最小化所有其他窗口?例如,如果活动窗口是 Chrome,那么如果我执行此命令,它将最小化除 Chrome 之外的所有窗口。我正在使用 Ubuntu,以防相关。

答案1

将各种博客文章和 Ask Ubuntu to U&L 中描述的方法也引入其中。这是 AU 逐字回答的。


可以使用 python 脚本来实现这一点。该脚本需要安装python-wnckpython-gtk才能工作,尽管我认为无论如何这些都是默认安装的。

将其复制并粘贴到文本编辑器中,然后保存在合适的位置(例如,最小化.py在您的主文件夹中):

#!/usr/bin/env python
import wnck
import gtk

screen = wnck.screen_get_default()

while gtk.events_pending():
    gtk.main_iteration()

windows = screen.get_windows()
active = screen.get_active_window()

for w in windows:
    if not w == active:
        w.minimize()

然后,您可以通过打开键盘快捷键来设置键盘快捷键。

   Dash 中的键盘快捷键

点击添加创建一个新的快捷方式。

   键盘快捷键窗口

使用命令bash -c 'python ~/minimise.py'(假设您将其保存为最小化.py在您的主文件夹中)。

   创建快捷方式

然后,您可以将您喜欢的键盘组合分配给此操作。

该脚本将最小化所有非活动窗口。我认为这对您的用例来说不是很有用,因为您会希望打开所有 Gimp 窗口。您可以使用稍微不同的脚本来最小化不是来自当前应用程序的所有窗口:

#!/usr/bin/env python
import wnck
import gtk

screen = wnck.screen_get_default()

while gtk.events_pending():
    gtk.main_iteration()

windows = screen.get_windows()
active_app = screen.get_active_window().get_application()

for w in windows:
    if not w.get_application() == active_app:
        w.minimize()

相关内容