AppliScript per spostare lo stato attivo sulla finestra attiva o successiva

1

Sto cercando di implementare un'impostazione di stile "scheda di comando" che funzioni solo all'interno di uno spazio specifico. Per la maggior parte delle app, "Ctrl-F4" che è "sposta lo stato attivo sulla finestra attiva o successiva" funziona correttamente, ma per emacs / aquamacs non lo fa (poiché il keypress è assorbito dall'app). (Preferenze di sistema- > Tastiera- > Tasti di scelta rapida- > Tastiera elenca questa opzione). Voglio che questo vada tra le finestre che ho organizzato in uno spazio rilevante, cioè il mio script R, i grafici in X11 e in formato png / pdf.

Posso eseguire un applescript arbitrario con fastscript o altre app su un tasto di pressione. Vedo quindi due opzioni:

  1. Comunica direttamente al gestore della finestra di eseguire lo spostamento dello spostamento, SENZA passare attraverso la pressione di un tasto
  2. Utilizzare la pressione di un tasto, ma controllare aquamacs come finestra attiva. Nel trovare aquamac, ottenere un elenco dei processi nello spazio corrente e passare a quello successivo. (controllare che aquamacs sembri saggio poiché il comportamento predefinito è probabilmente più veloce di questa ricerca)

La ricerca di questi comportamenti è difficile, e la documentazione di applescripts è bizantina per un principiante, quindi non vedo come ottenerli.

    
posta Daniel Lawson 30.09.2015 - 18:29
fonte

1 risposta

1

Vedi se invocare con System Events non ha la priorità su emacs / aquamacs.

tell application "System Events" to key code 48 using {command down}

Se ciò non aiuta, puoi intercettarlo per questo:

tell application "System Events"
    set theName to name of the first process whose frontmost is true
    if theName contains "emacs" then
        set frontmost of item -2 of (every process whose visible is true) to true
    else
        key code 48 using {command down}
    end if
end tell
    
risposta data 01.10.2015 - 09:54
fonte

Leggi altre domande sui tag