Hai mai desiderato di poter aprire un popup di avviso di dialogo sul Mac tramite il Terminale? Bene, si scopre che è possibile con il sempre utile comando osascript, che consente l’esecuzione di AppleScript dal terminale. Per chi passa molto tempo alla riga di comando di macOS, questo può essere un piccolo grande trucco per ricevere notifiche quando un’attività specifica è stata completata, o anche per essere inclusa come parte di uno script. Questa è una sorta di approccio visivo a uno dei miei trucchi preferiti più semplici del Terminale: annunciare verbalmente quando un compito della riga di comando è stato portato a termine.
Esaminiamo come gli utenti Mac avanzati possono attivare finestre di avviso nella GUI di macOS dalla riga di comando. Puoi scegliere di specificare un’applicazione specifica per far scattare l’avviso pop-up all’interno o, forse ancora meglio, attivare una finestra di avviso in qualsiasi applicazione principale di Mac OS X.
E sì, questo funziona in tutte le versioni di macOS o Mac OS X esistenti, quindi non dovrebbero esserci problemi di compatibilità qui.
Come creare una finestra popup di avviso in Mac OS
Forse l’avviso di finestra di dialogo più utile è quello che è visibile da qualsiasi parte e viene quindi inviato a qualsiasi applicazione principale. Questo assicura che la casella di avviso non venga persa.
La sintassi per attivare una finestra di avviso di dialogo nell’applicazione in primo piano sul Mac è la seguente:
osascript -e ‘tell application (percorso per l’applicazione in primo piano come testo) per visualizzare i pulsanti di dialogo «Ciao da osxdaily.com» {«OK»} con icon stop’
La finestra di avviso pop-up risultante assomiglia a questo:
Ad esempio, puoi utilizzarlo per attivare una finestra di dialogo nell’applicazione in primo piano quando un’attività alla riga di comando è stata completata. Diciamo che stiamo eseguendo uno script Python e vogliamo che una finestra di avviso ci avverta quando è stata completata; la sintassi per tale caso d’uso potrebbe essere simile alla seguente:
python MagicScript.py && osascript -e ‘indica l’applicazione (percorso all’applicazione in primo piano come testo) per visualizzare la finestra di dialogo «Lo script è completato» pulsanti {«OK»} con icona attenzione’
Questo esempio attiverà una finestra di dialogo che dice «Lo script è stato completato» con l’icona gialla di attenzione nell’applicazione in primo piano nella GUI di Mac OS X dopo che Python ha terminato di eseguire «MagicScript.py». Puoi scegliere altre icone come stop, note, cautele o anche specificare un percorso per un’icona personalizzata, se lo desideri.
Mentre è possibile specificare un’applicazione, gli Eventi di sistema o SystemUIServer, scegliere l’applicazione in primo piano più ampia consente di visualizzare la finestra di dialogo di avviso sullo schermo indipendentemente dall’applicazione in primo piano. Esaminiamo l’attivazione degli avvisi di dialogo in app specifiche, poiché ciò potrebbe essere desiderabile.
Attiva un avviso di finestra di dialogo in un’applicazione specifica
Per inviare una finestra di dialogo o un avviso in una specifica applicazione, è sufficiente specificare il nome dell’app in questione, in questo modo:
Attivare una finestra di avviso in Mac OS Finder tramite la riga di comando:
osascript -e ‘tell app «Finder» per visualizzare la finestra di dialogo «Ciao da osxdaily.com»‘
Attivazione di una finestra di avviso nell’app Terminal tramite la riga di comando:
osascript -e ‘tell app «Terminal» per visualizzare la finestra di dialogo «Ciao da osxdaily.com»‘
Attivare una finestra di avviso in Safari tramite la riga di comando:
osascript -e ‘tell app «Safari» per visualizzare la finestra di dialogo «Ciao da osxdaily.com»‘
Attiva una finestra di avviso per gli eventi di sistema tramite la riga di comando:
osascript -e ‘tell app «Eventi di sistema» per visualizzare la finestra di dialogo «Howdy Doo»‘
È possibile specificare qualsiasi applicazione per inviare l’avviso in questo modo, ma per molti di noi, l’opzione più ampia in primo piano o Eventi di sistema sono probabilmente la scelta più utile.
Se una finestra di dialogo generale di pop-up è troppo invadente, potresti ricevere avvisi al Centro di notifica su Mac con il terminale-notificatore; terminale-notificatore è una soluzione di terze parti che consente ai messaggi della riga di comando di apparire nel generale Centro notifiche di macOS. Un’opzione ancora meno invasiva sarebbe quella di attivare un badge di notifica sull’icona del Terminal Dock, anche se potrebbe essere troppo sottile per le esigenze di molti utenti.
Ad ogni modo, questa è una panoramica di base sull’attivazione di finestre di avviso visive nell’interfaccia grafica di macOS tramite la riga di comando. Puoi andare molto più in profondità di questo, se lo desideri, attraverso usi più complessi di AppleScript e OSScript, compreso il fatto che le interazioni con la finestra di dialogo influiscono su ciò che accadrà dopo, ma si tratta di un argomento più complesso che sarebbe meglio trattare in un articolo separato. Gli utenti interessati a saperne di più sugli script con AppleScript possono consultare la documentazione inclusa con l’app Script Editor, che è abbastanza completa e dettagliata.
Hai qualche modo interessante per usare questo suggerimento o conosci un altro metodo per attivare le finestre di dialogo nella GUI di macOS dalla riga di comando? Fateci sapere nei commenti.
Novità nel 2024: Ulteriori possibilità con AppleScript
Nel corso del 2024, Apple ha ampliato le capacità di AppleScript, rendendolo ancora più potente per gli utenti di macOS. Ora puoi integrare notifiche push tramite il Terminale, permettendo all’utente di ricevere avvisi in tempo reale anche quando non è attivamente coinvolto nella sessione Terminal. Questa nuova funzionalità si integra perfettamente con le app di terze parti e il Centro Notifiche, rendendo l’esperienza utente ancora più fluida.
Inoltre, con i recenti aggiornamenti, è possibile personalizzare le finestre di avviso non solo con icone, ma anche con colori e suoni, rendendo ogni notifica unica e coinvolgente. Questo è particolarmente utile per chi utilizza più script e desidera differenziare le notifiche in base al contesto di utilizzo.
Infine, il supporto per l’automazione tramite automazioni di sistema ha reso possibile l’integrazione di avvisi con eventi specifici del sistema, come l’avvio di applicazioni o la connessione di dispositivi esterni. Queste innovazioni offrono un potenziale enorme per migliorare la produttività e la gestione delle attività quotidiane.