Fokussieren des aktuellen Fensters und Minimieren aller anderen

Fokussieren des aktuellen Fensters und Minimieren aller anderen

Gibt es eine Möglichkeit, das aktuelle Fenster zu fokussieren und alle anderen über die Befehlszeile zu minimieren? Wenn das aktive Fenster beispielsweise Chrome ist, werden beim Ausführen dieses Befehls alle Fenster außer Chrome minimiert. Ich verwende Ubuntu, falls das relevant ist.

Antwort1

Diese in verschiedenen Blogbeiträgen und auf Ask Ubuntu beschriebene Methode wird auch bei U&L vorgestellt. Dies ist wörtlich die Antwort von AU.


Dies ist mit einem Python-Skript möglich. Damit das Skript funktioniert, müssen python-wnckund python-gtkinstalliert sein, obwohl ich glaube, dass diese sowieso standardmäßig installiert sind.

Kopieren Sie dies, fügen Sie es in einen Texteditor ein und speichern Sie es an einem sinnvollen Ort (z. B. alsminimieren.pyin Ihrem Home-Ordner):

#!/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()

Sie können die Tastenkombination dann einrichten, indem Sie „Tastenkombinationen“ öffnen.

   Tastaturkürzel in Dash

Klicke aufHinzufügen, um eine neue Verknüpfung zu erstellen.

   Fenster „Tastaturkürzel“

Verwenden Sie den Befehl bash -c 'python ~/minimise.py'(vorausgesetzt, Sie haben ihn gespeichert alsminimieren.pyin Ihrem Home-Ordner).

   Verknüpfung erstellen

Sie können dieser Aktion dann Ihre bevorzugte Tastenkombination zuweisen.

Das Skript minimiert alle nicht aktiven Fenster. Ich glaube nicht, dass das für Ihren Anwendungsfall sehr nützlich ist, da Sie alle Gimp-Fenster geöffnet haben möchten. Sie können stattdessen ein leicht anderes Skript verwenden, um alle Fenster zu minimieren, die nicht zur aktuellen Anwendung gehören:

#!/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()

verwandte Informationen