Come far sì che il MacBook dia un avviso periodico quando Chrome è in primo piano?

-1

Quindi ho un problema con le distrazioni su un macbook. Sono al lavoro (in emacs) e poi ho bisogno di cercare qualcosa. Vado al mio browser web (Chrome) trovo le informazioni di cui ho bisogno e mezz'ora dopo mi rendo conto che sto leggendo le azioni che Mueller sta intraprendendo per [sovvertire la volontà della gente / salvare la democrazia americana]. Torno subito al lavoro.

Quindi sarebbe utile se quando Chrome è in primo piano qualche avviso si apre dopo 5 minuti. Forse un suono, forse una finestra di dialogo. Ma qualcosa che mi riporta al momento e mi rendo conto che sto perdendo tempo.

Ho impostato cose che bloccano il mio accesso a determinati siti Web o simili, ma non posso bloccare tutte queste pagine web senza bloccare l'accesso alle informazioni che ho bisogno di ottenere. Quindi questa non è la soluzione.

C'è un modo per ottenere una sorta di avviso da far apparire ogni 5 minuti quando Chrome è in primo piano?

    
posta Joel 20.01.2018 - 06:13
fonte

1 risposta

0

Funziona per me usando l'ultima versione di Sierra.

Incolla questo codice AppleScript seguente nello script editor.app, quindi salvalo come applicazione. Puoi giocare con il ritardo e i valori di ripetizione. Ma come è impostato ora, riceverai una notifica quando Google Chrome è stato il front la maggior parte delle applicazioni per cinque minuti.

Apri la tua nuova app ogni volta che vuoi monitorare Google Chrome.

Finora, l'unico problema negativo è ... Poiché ho un ciclo di ripetizione infinito all'interno del codice dello script, l'unico modo per uscire dall'applicazione è forzare la chiusura.

property isGoogleFrontmost : missing value

repeat
    tell application "Google Chrome" to set isGoogleFrontmost to frontmost
    Google_Status()
    if isGoogleFrontmost is true then
        repeat 300 times -- 5 minutes with a delay 1 value
            delay 1
            tell application "Google Chrome" to set isGoogleFrontmost to frontmost
        end repeat
        if isGoogleFrontmost is true then
            displayNotification()
        else
            Google_Status()
        end if
    end if
end repeat

on Google_Status()
    tell application "Google Chrome" to set isGoogleFrontmost to frontmost
    tell application "Google Chrome"
        repeat until isGoogleFrontmost is true
            set isGoogleFrontmost to frontmost
        end repeat
    end tell
end Google_Status

on displayNotification()
    display notification ¬
        "GET BACK TO WORK" with title ¬
        "DUDE...Time To Quit Google Chrome" sound name "Bottle"
    delay 5
end displayNotification
    
risposta data 20.01.2018 - 22:17
fonte

Leggi altre domande sui tag