Wie kann man in OS X mit Tastenkombinationen zu einem bestimmten Fenster wechseln (im Gegensatz zur Programmumschaltung)?


4

An einem normalen Tag habe ich mehrere verschiedene Fenster aller meiner Anwendungen geöffnet. Der Einfachheit halber möchte ich ein einfaches Beispiel nennen:

  1. Chrome Eine linke Seite des Bildschirms (Dokumentation)
  2. Chrome B, rechte Seite des Bildschirms (Anzeigeergebnis)
  3. Terminal A linke Seite des Bildschirms (der Webserver, nützlich beim Anzeigen von Ergebnissen)
  4. Terminal B auf der rechten Seite des Bildschirms (Codefenster, ich brauche die Dokumentation Chrom, wenn Sie dies verwenden).

Gibt es eine Tastenkombination, mit der Sie Chrome A in den Vordergrund verschieben können, ohne Chrome B ebenfalls in den Vordergrund zu verschieben?

  • Mit Apple-Tab wechselt es die Anwendung und verschiebt beide in den Vordergrund.
  • Mit Apple-`wird das Fenster zwischen den Anwendungen umgeschaltet, sodass dies ebenfalls nicht funktioniert.

Gibt es eine Tastenkombination, um dies zu tun?

Gewünschtes Verhalten: Chrome A mit Terminal B und Chrome B mit Terminal A anzeigen

Beachte, dass ich nach Tastaturkürzeln suche, KEINE Mausklicks :)

Antworten:


4

Sie können Witch verwenden , um nur bestimmte Fenster auszuwählen und zu öffnen.

Dies würde normalerweise das zweite Fenster in der Erstellungsreihenfolge fokussieren:

set text item delimiters to linefeed
tell application "Google Chrome"
    reopen
    do shell script "sort -n <<< " & quoted form of (id of windows as text) & " | sed -n 2p"
    tell window id (result as integer) to set index to 1
end tell
tell application "System Events" to tell process "Google Chrome"
    perform action "AXRaise" of window 1
end tell
do shell script "open -a google\\ chrome"

set frontmost to trueund activatewürde auch andere Fenster öffnen. set index to 1Das Fenster wird nicht angehoben, es wird jedoch als Fenster 1 für Systemereignisse angezeigt, die dies können AXRaise. In dieser Antwort finden Sie verschiedene Möglichkeiten zum Zuweisen von Verknüpfungen zu Skripten.

Dies würde ein Fenster anhand der URLs der Registerkarten auswählen:

tell application "Google Chrome"
    repeat with w in windows
        tell w
            repeat with t in tabs
                if URL of t contains "google" then
                    set index to 1
                    exit repeat
                end if
            end repeat
        end tell
    end repeat
end tell

Super, vielen Dank für die tolle Resonanz!
— Wolph

Ab 10.9 Mavericks ist perform action "AXRaise" of window 1eine ausdrückliche Erlaubnis erforderlich, um ausgeführt zu werden. Diese Meldung wird angezeigt: "Ihre App möchte diesen Computer mithilfe von Eingabehilfen steuern."
— Fregante
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.