Gibt es eine Verknüpfung oder eine solche, um das aktuell aktive Fenster an die Rückseite des Bildschirms zu senden, während es weiterhin geöffnet bleibt (so dass es "unter" allen anderen geöffneten Fenstern landet)?
Gibt es eine Verknüpfung oder eine solche, um das aktuell aktive Fenster an die Rückseite des Bildschirms zu senden, während es weiterhin geöffnet bleibt (so dass es "unter" allen anderen geöffneten Fenstern landet)?
Antworten:
Kurze Antwort: Nein , Apple bietet keine API, mit der Sie einen Anwendungsfensterindex ändern können, außer indem Sie ein Fenster nach vorne bringen (Index 1). Es gibt keine eleganten Lösungen . Aber:
Lange Antwort: Ja , Sie können AppleScript verwenden, um ein Fenster effektiv an die Rückseite eines Stapels von AppleScript-fähigen Fenstern zu verschieben, indem Sie eine Liste von Fenstern sammeln und dann jedes Fenster (mit Ausnahme des vordersten) schnell nach vorne verschieben und das ausgewählte Fenster verlassen hinten.
Hier ist ein Beispiel für ein AppleScript, das das vorderste Finder-Fenster nach hinten sendet.
tell application "Finder"
set winList to every window whose visible is true
if not winList = {} then
repeat with oWin in (items 1 through -2 of reverse of winList)
set index of oWin to 1
end repeat
end if
end tell
Dieses Skript basiert auf einer Lösung von JMichaelTX, die im KeyboardMaestro-Forum diskutiert wurde.
Das Ummischen ist unglaublich schnell, aber im Skript-Editor können Sie die Funktionsweise überprüfen, indem Sie "506" unten belassen und "502-505" so öffnen, dass die Reihenfolge erhalten bleibt:
get every window whose visible = true
--> {Finder window id 506, Finder window id 505, Finder window id 504, Finder window id 503, Finder window id 502}
set index of Finder window id 502 to 1
--> 1
set index of Finder window id 503 to 1
--> 1
set index of Finder window id 504 to 1
--> 1
set index of Finder window id 505 to 1
--> 1
Sie können dieses AppleScript einem Dienst oder einer Tastenkombination zuordnen, indem Sie entweder a) das Skript in eine Aktion zum Ausführen von AppleScript in einem Automator-Dienst einfügen oder b) einen Starter (Alfred, Keyboard Maestro usw.) verwenden. Einzelheiten zur Zuweisung von Applescript-Tastaturen finden Sie unter: Wie ordne ich einem von mir geschriebenen AppleScript eine Tastenkombination zu?
Dies kann die Bedürfnisse der OP befriedigen - es ist aus dem ursprünglichen Beitrag unklar. Diese Lösung kann auch auf mehrere AppleScript-fähige Anwendungen erweitert werden. Ich bin nicht jedoch bekannt , eine Lösung , um es effektiv mit einer Mischung aus skriptfähig und nicht skript Fenstern, aufgrund der Tatsache , funktioniert das in Applescript, System Events
adressierbaren Fenster für nicht-skriptfähigen Programme haben kein set index
Verb / Objekt. Für einige Fenster gibt es eine "AXRaise" -Aktion, wenn Hilfsgeräte / Eingabehilfen aktiviert sind. Dies gilt jedoch nicht für alle Fenster. Es gibt aufwendige Hacks, bei denen Sie durch jede aktive Anwendung gehen und Fenster ein- / ausblenden oder minimieren / wiederherstellen, aber sie sind ein Chaos.
Verwandte Diskussionen:
Ihre Frage ist nicht sehr klar, aber wenn Sie eine Verknüpfung zum Durchlaufen aller Fenster der derzeit aktiven App wünschen, sollten Sie dies mit der Command~Tastenkombination tun können .
Der ~Schlüssel befindet sich normalerweise links vom 1Schlüssel.
Zur Verdeutlichung Command~durchläuft die Tastenkombination alle Fenster der aktuellen App, in der Sie sich befinden. Wenn Sie beispielsweise MS Word verwenden und drei Dokumente geöffnet haben, werden diese drei Dokumente durchlaufen.
Die Command~Tastenkombination wechselt jedoch nicht durch die Registerkarten. Wenn Sie beispielsweise Safari mit drei Fenstern geöffnet haben und in jedem Fenster fünf Registerkarten geöffnet sind, wird mit dieser Verknüpfung durch die drei Fenster und nicht durch die einzelnen Registerkarten gewechselt.
Eine weitere Option, mit der Sie möglicherweise das erreichen, was Sie möchten, ist die CommandMTastenkombination. Dies minimiert jedoch das derzeit aktive Fenster zum Dock, sodass ich vermute, dass Sie dies nicht möchten.
Wenn ich Ihre Frage völlig falsch verstanden habe, klären Sie dies bitte.