Ich habe eine Tastenkombination Ctrl+ Alt+ C, für gnome-calculator
. Dies funktioniert einwandfrei, aber wenn gerade eine andere Anwendung ausgeführt wird, wird der Rechner hinter der anderen Anwendung geöffnet.
Wie aktiviere ich den Taschenrechner beim Start mit dieser Verknüpfung?
unity
keyboard
shortcut-keys
window-manager
Ramana Reddy
quelle
quelle
Antworten:
Wenn Sie das folgende Skript ausführen, wird das
gnome-calculator
Programm (oder eine andere Anwendung, siehe "Hinweise") gestartet. Warten Sie, bis das entsprechende Fenster angezeigt wird, und starten Sie es.Das Drehbuch
Wie benutzt man
Das Skript muss
wmctrl
die Fensterliste lesen und das Fenster öffnen:raise_window.py
Teste es mit dem Befehl:
Wenn alles funktioniert, fügen Sie den Befehl einer Tastenkombination hinzu: Wählen Sie: Systemeinstellungen> "Tastatur"> "Tastenkombinationen"> "Benutzerdefinierte Tastenkombinationen". Klicken Sie auf das "+" und fügen Sie den Befehl hinzu:
Anmerkungen
Um eine Endlosschleife zu verhindern (z. B. wenn die Anwendung aus irgendeinem Grund nicht ausgeführt wird), wartet das Skript zehn Sekunden und wird dann trotzdem beendet. Wenn Sie die Zeit verlängern möchten, ändern Sie den Wert in der Zeile:
(
20
=20
*0.5
Sekunden)Wie bereits erwähnt, können Sie das Skript verwenden, um das Verhalten einer Anwendung, die nicht von selbst ausgelöst wird, zu "korrigieren", indem Sie die Zeile ändern:
eine andere Anwendung ausführen (
app = "<application>"
) oder:Alternativ können Sie das Skript für verschiedene Anwendungen verwenden:
Ersetzen Sie die Zeile:
durch:
und füge im Kopfteil des Skripts (direkt unter dem shebang) hinzu:
Führen Sie dann das Skript mit dem folgenden Befehl aus:
Erläuterung
Um ein Fenster zu öffnen, können Sie den folgenden Befehl verwenden:
oder
(vorausgesetzt es
wmctrl
ist installiert)Da der Fenstername möglicherweise nicht eindeutig ist, ist die ID zu verwenden , bevorzugt. Der Trick besteht dann darin, zu warten, bis die PID der Anwendung angezeigt wird, und dies mit dem folgenden Befehl zu testen:
Wenn der Befehl eine Ausgabe hat, bedeutet dies, dass die Anwendung eine PID hat und ausgeführt wird. Als Nächstes müssen Sie mit dem folgenden Befehl überprüfen, ob die Anwendung (bereits) ein Fenster hat:
die eine Liste von Fenstern, deren Fenster-ID und die entsprechende (Anwendungs-) PID ausgibt.
Wenn es eine Übereinstimmung zwischen der gefundenen PID und den Fenstern in der Liste gibt, müssen wir unser Fenster erhöhen. Wir können die Fenster-ID aus der Fensterzeile in der Liste analysieren, die wir anschließend verwenden, um das Fenster mit dem folgenden Befehl zu öffnen:
quelle