Un paio di giorni fa ho pubblicato un tip, ricevuto via email, che doveva servire per "silenziare" all'occorrenza l'avvio del Mac, evitando il classico chime. Purtroppo la segnalazione si è rivelata imprecisa, e ce ne scusiamo nuovamente, ma l'argomento ha destato più interesse di quanto immaginassimo. Per questo motivo, con la valida collaborazione dell'utente Gabriele, abbiamo deciso di sfruttare questo argomento per creare una delle nostre guide. Nello specifico vedremo come creare un AppleScript che azzera il volume del Mac e mostra una finestra per far decidere all'utente se riavviare o spegnere il computer. Non ci fermeremo qui però, perché realizzeremo una applicazione che riabilita il volume al successivo avvio, in modo da aver così eliminato solo il suono di startup.

Nota: il seguente articolo ha scopo puramente didattico, se vi interessa solo il risultato potete ottenerlo facilmente installando Psst.

Aprite AppleScript Editor (suggerisco di usare Spotlight come metodo veloce):

AppleScriptEditor

Incollate nella finestra il seguente codice:

# Spegni Silenzioso 0.1
# Disattiva il volume e spegne / riavvia il Mac

set fAbort to false
try
	set choice to display alert "Sei sicuro di voler spegnere il computer ? " buttons {"Spegni", "Riavvia", "Annulla"} default button "Spegni" cancel button "Annulla" -- as warning
on error number -128
	set fAbort to true
end try

if not fAbort then
	set volume with output muted
	if button returned of choice is "Spegni" then
		tell application "Finder" to shut down
	else if button returned of choice is "Riavvia" then
		tell application "Finder" to restart
	end if
end if

Ora salvatelo (cmd+S) sulla scrivania con il nome che preferite, ad esempio: "spegni.scpt".

Accedete alle Preferenze di AppleScript Editor (cmd+,) ed attivate il menu degli script per potervi accedere dalla barra in cima in modo semplice e diretto.

MenuScript

Da questo punto, come mostrano le tre immagini di seguito, accedete alla cartella script utente e spostate al suo interno il file "spegni.scpt" creato in precedenza.

procedimento

Prima di testare il risultato, scoprendo anche una cosa molto interessante per gli utenti di Lion, passiamo alla creazione dello script che servirà per riattivare il suono al riavvio, esattamente al livello di volume che aveva prima dello spegnimento.

Tornate ad AppleScript Editor, chiudete il file precedente ed apritene uno nuovo. Il codice da usare in questo caso è veramente corto. Una sola riga in verità, escludendo le due di commento:

# VolumeON 0.1
# Disattiva il "mute" del volume

set volume without output muted

Salvatelo con il nome "VolumeOn" ma questa volta scegliete "Applicazione" come formato documento:

VolumeOn

Aprite le Preferenze di Sistema / Utenti e gruppi / Elementi login ed aggiungete l'applicazione appena creata, magari attivando anche il segno di spunta in corrispondenza di "Nascondi":

ElementiLogin

A questo punto provate a lanciare "spegni.scpt" dal menu AppleScript e vi apparirà la seguente finestra con la possibilità di scegliere riavvio/spegni o annulla.

riavvio

Avevo promesso una sorpresa per gli utenti di Lion ed è che in questo prompt non c'è il check che richiede se riaprire tutte le finestre al login successivo. Moltissimi utenti passando al nuovo OS X si sono lamentati di questa funzione ritenendola inutile e noiosa, anche perché il check è attivo di default e bisogno disattivarlo tutte le volte per avere un successivo avvio "pulito".