Фокусировка текущего окна и сведение к минимуму всего остального

0

Есть ли способ сфокусировать текущее окно и свернуть все остальные через командную строку? Например, если активным окном является Chrome, то, если я выполню эту команду, оно свернет все окна, кроме Chrome. Я использую Ubuntu на случай, если это актуально.

Джордж
источник
2
Связанный ниже А был первым результатом, когда я гуглил. Пожалуйста, попробуйте поискать, прежде чем добавлять Q на сайт. Простой поиск ответил бы на ваш вопрос. Я искал «свернуть все окна Linux, кроме основного».
СЛМ

Ответы:

2

Внедрение этого метода, описанного в различных сообщениях в блоге и в Ask Ubuntu, также доступно для U & L. Это дословно из ответа АС.


Этого можно добиться с помощью скрипта Python. Сценарий требует python-wnckи python-gtkдолжен быть установлен для работы, хотя я думаю, что они установлены по умолчанию в любом случае.

Скопируйте и вставьте это в текстовый редактор и сохраните в разумном месте (например, как minimise.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()

Затем вы можете настроить сочетание клавиш, открыв сочетания клавиш.

   Сочетания клавиш в тире

Нажмите « Добавить», чтобы создать новый ярлык.

   Окно сочетаний клавиш

Используйте команду bash -c 'python ~/minimise.py'(предполагается, что вы сохранили ее как minimise.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()
ОДС
источник