Utilizzando AppleScript per aprire un'applicazione senza l'app rubare l'attenzione

5

Uso iA Writer quanto basta che mi piacerebbe che si aprisse a schermo intero all'accesso, ma sfortunatamente gli sviluppatori hanno sdegno per le preferenze.

Ho deciso di scrivere un AppleScript che potrei aggiungere all'elenco di avvio, ma non riesco a farlo funzionare correttamente. Mi piacerebbe aprire un file specifico usando iA Writer all'accesso, in modalità schermo intero 10.8, ma senza cambiare lo stato attivo dal mio desktop normale, o meno automaticamente riportandomi al desktop principale dopo il lancio. EDIT: Ecco il mio codice dopo le modifiche suggerite:

set front_application to front window
tell (application "iA Writer") to open (POSIX file "/PATH/TO/FILE.txt")
activate application "iA Writer"
#EDITED# tell application "System Events" to keystroke "f" using {command down, control down}
#ADDED# delay 1
#ADDED# tell application "System Events" to keystroke "1" using control down
end tell
activate front_application

Questo codice apre con successo il file con iA Writer a schermo intero, ma passa al nuovo desktop controllato da iA Writer, attende un momento e torna al mio desktop principale.

Poiché OS X cambia dagli spazi ai desktop, non so nemmeno se sia possibile aprire un'applicazione in Mountain / Lion a schermo intero senza rubare lo stato attivo e forzare uno switch desktop.

Mille grazie a @Lauri Ranta per il tuo aiuto fino ad ora!

Sarebbe molto apprezzato qualsiasi altro aiuto, per quanto riguarda la conservazione di iA Writer dal cambio di desktop quando si diventa a schermo intero. Grazie!

    
posta audiosnow 20.10.2012 - 07:39
fonte

2 risposte

2

(Ho rimosso lo script originale, ma non sono riuscito a trovare nulla di meglio di questo.)

set fw to front window
do shell script "open ~/Notes/todo.txt -Fa iA\ Writer"
delay 0.1
tell application "System Events" to tell process "iA Writer"
    perform action "AXPress" of (button 1 where subrole is "AXFullScreenButton") of window 1
end tell
delay 1.5
activate fw

WriteRoom ha un'opzione per aprire i documenti in finestre a schermo intero personalizzate. Se è selezionato, puoi utilizzare qualcosa come open file.txt -Fjga WriteRoom .

Se qualcun altro ha solo bisogno di aprire un'applicazione sullo sfondo, puoi utilizzare open -jg o launch . launch a volte apre una finestra visibile se un'applicazione non è aperta e open -jg se un'applicazione è aperta ma non ha finestre.

set b to "com.apple.TextEdit"
tell application "System Events"
    if bundle identifier of processes contains b then
        launch application id b
    else
        do shell script "open -jgb " & b
    end if
end tell
    
risposta data 20.10.2012 - 11:26
fonte
0

Se hai ancora questa domanda, usa questo:

do shell script "open -ga 'iA Writer'"

open è un comando Terminale che apre le cose. L'opzione -g apre l'app in background. Il -a specifica un'app da aprire. Se non vengono forniti file, come qui, open aprirà semplicemente l'app senza file. Se si desidera aprire un determinato file, è possibile utilizzare do shell script "open -ga 'iA Writer' myfile.txt"

    
risposta data 20.06.2017 - 04:25
fonte

Leggi altre domande sui tag