Introduzione
Hazel è un programma per Mac OS di Noodlesoft che, se opportunamente configurato con delle regole, è in grado di automatizzare, silenziosamente ed in background, molte operazione sul proprio Mac. Purtroppo non è localizzato in italiano ma, ad ogni modo, risulta molto comprensibile perché dopo aver appreso le caratteristiche base, tutto sta a quanto complesse sono le regole che impostate in base alle vostre esigenze.
Descrizione
Se siete abituati ad usare le regole di Mail (o in generale di qualsiasi altro programma di posta elettronica) allora dovete immaginare che quelle di Hazel sono simili anche se molto più complete. Infatti, le regole in Hazel, possono specificare due cose:
- Cosa cercare nella cartella selezionata (condizioni)
- Cosa fare quando le condizioni sono soddisfatte (azioni)
Puoi fare in modo che Hazel guardi un numero qualsiasi di cartelle e per ogni cartella, puoi creare un numero qualsiasi di regole. Ogni regola, a sua volta, può avere una o più condizioni che, quando soddisfatte, attivano una o più azioni.
Hazel consente di automatizzare la gestione e l’organizzazione di file e cartelle. Ovviamente i candidati migliori sono le cartelle che tendono a raccogliere file, come Download, Documenti, la Scrivania o una cartella Dropbox condivisa. Hazel può anche utilizzare le Cartelle Smart di Mac Os (che contengono i risultati di una ricerca effettuata dal motore Spotlight).
Il Funzionamento
Per impostazione predefinita, Hazel mostra solo una cartella, quella di Download. Inoltre Hazel, al suo primo avvio, include cinque regole di esempio (tutte disabilitate per impostazione predefinita) che puoi aggiungere a qualsiasi cartella come punto di partenza per creare le tue regole e che puoi modificare per le tue esigenze.
Hazel ha anche la possibilità di creare gruppi di cartelle, che consentono di raggrupparle nel modo che più ti piace. Tenete presente, però, che non è però possibile assegnare regole ai gruppi di cartelle: ciascuna regola deve comunque essere assegnata individualmente a una cartella.
Normalmente, Hazel esegue automaticamente le regole. Ovviamente è anche possibile forzare l’esecuzione delle regole, perché semplicemente potresti voler eseguire le regole una volta su una cartella per la quale tutte le regole sono messe in pausa, oppure, siccome dopo aver modificato una regola Hazel introduce un breve ritardo prima di eseguirla di nuovo, potresti volerla eseguire immediatamente oppure.
E’, ovviamente, possibile interrompere temporaneamente l’esecuzione di Hazel facendo clic sulla sua icona nella barra dei menu.
O sospendere le regole solo su una particolare cartella:
All’aumentare del numero di regole e della loro complessità, potresti incontrare situazioni ambigue in cui Hazel si comporta in modo inaspettato. Per questo motivo, nel caso in cui una cartella ha numerose regole o le condizioni e le azioni sono complesse, è consigliabile effettuare alcune prove e sperimentazioni su cartelle di prova per ottenere esattamente i risultati desiderati.
Un esempio pratico
Personalmente ho iniziato ad usare Hazel per organizzare velocemente le fatture delle bollette da pagare. Oramai non si ricevono più via posta tradizionale ma esclusivamente via posta elettronica o si scaricando da un sito web. Allo stesso modo non si archiviano più le fatture cartacee in voluminosi faldoni separati per fornitore e riposti in armadi, ma bensì nelle molto più snelle cartelle sul proprio pc. Anche se l’attività non risulta così onerosa ho creduto fosse comodo trovare un modo di automatizzare anche questo passaggio in modo che non dovessi per forza spostare a mano le fatture in pdf. Potevo farlo con uno script in bash o con Automator di Apple, ma con Hazel è risultato notevolmente più facile oltre che più flessibile.
Vi riporto un esempio che uso io per spostare una fattura TIM dalla cartella Download nella sua relativa cartella di archiviazione. Dato che il nome delle fatture ha questa sintassi numero_telefono-id_univoco.pdf, come prima regola controllo che l’estensione sia un PDF, quindi verifico che nel nome del file con estensione pdf vi sia il mio numero di telefono e infine, per essere sicuri che il file sia stato scaricato dal sito del mio fornitore di accesso telefonico, controllo che il “Source URL/Address” contenga “tim.it“. Se tutte queste condizioni sono vere allora sposta il file nella cartella “Bollette Telecom Italia”.
Questa è una regola molto semplice, ma potrei anche crearne di altre più complicate. Per esempio invece di verificare l’estensione del file, esiste anche una condizione che controlla il Tipo (Kind) del file , e accertarmi quindi che sia di tipo PDF.
Dato che Hazel permette di leggere e riconoscere parti di testo nei documenti e utilizzare le parti riconosciute come variabili, potrei verificare il contenuto del file PDF per trovare alcune informazioni (come il numero fattura o la data emissione) con la condizione “Contents”
Se, invece, del “contain” usassi “contain match” potrei assegnare ad una variabile un particolare match:
Quindi, quella variabile identificata nel testo del PDF potrebbe poi essere usata per rinominare (ma anche semplicemente taggare) il file con un certo pattern (data la complessità dell’argomento può essere utile fare riferimento alla guida ufficiale):
In alternativa, è possibile creare una regola per archiviare in una cartella tutti i file più vecchi di un mese e non aperti in questo periodo di tempo, oppure aggiungere tag ed etichette, creare archivi, caricare dei contenuti su un server in Cloud o eseguire script più complessi.
Come potrete intuire le potenzialità di Hazel sono davvero infinite e tutto sta alla vostra immaginazione, alle vostre esigenze e alla vostra volontà di rendere complesse le regole.
Qualche Trucco
Aggiungere le Note
Ad ogni regola è possibile aggiungere delle descrizioni, cliccando sull’icona di una nota blu sulla destra.
Continua regole di corrispondenza
Una cosa particolare le funzionamento di Hazel è che solo la prima regola di corrispondenza viene eseguita su un determinato file o cartella. Per questo occorre prestare molta attenzione all’ordine con cui vengono eseguite le regole. Per esempio, se abbiamo su una cartella abbiamo 2 regole, se la prima corrisponde, la seconda regola non viene eseguita, perché una regola ha già trovato una corrispondenza. Se, però, devi applicare entrambe le regole, puoi aggiungere l’azione “Continua regole di corrispondenza” alla prima regola. Tale azione dice ad Hazel di ignorare il suo comportamento normale ed elaborare il file attraverso la regola successiva, anche se si è già verificata una corrispondenza.
Esegui regole sui contenuti delle cartelle
Per impostazione predefinita, Hazel controlla e agisce solo sui file e sulle cartelle al livello superiore della cartella monitorata, mentre le sottocartelle non vengono monitorate di default, a meno che non gli venga espressamente detto di esaminarle. Per farlo è possibile aggiungere quelle sottocartelle come cartelle monitorate e creare regole speciali solo per loro. Ma, come è evidente, non è molto pratico, specialmente se non sai in anticipo quali saranno i nomi delle sottocartelle o se ce ne sono parecchie e desideri che le stesse regole si applichino a tutte. Per risolvere questo problema, è sufficiente aggiungere un’azione speciale: “Esegui regole sui contenuti delle cartelle“.
Condizioni nidificate
La maggior parte delle regole funziona perfettamente quando usi “tutto” per soddisfare tutte le condizioni, “qualsiasi” per soddisfare almeno una condizione o “nessuno” per soddisfare nessuna condizione.
Ma se hai bisogno di combinazioni più elaborate, puoi usare le condizioni nidificate, in cui una singola condizione può contenere una o più condizioni aggiuntive (e così via tanto profonde quanto necessario), con “tutto”, “qualsiasi” o “nessuno” specificato a ogni fare un passo. Questa capacità consente di costruire condizioni altamente specifiche che equivalgono a varie combinazioni di operazioni AND e OR. Per farlo è sufficienti che nel campo delle Condizioni tieni premuto il tasto ALT (o Opzione) e l’icona del + diventerà una icona con tre puntini. Se clicchi sopra verrà aggiunta un’altra condizione IF nidificata a quella precedente.
Sincronizzazione
Hazel dispone anche della azione di sincronizzazione che è in grado di copiare gli elementi dalla cartella monitorata in un’altra cartella, ma a differenza dell’azione Copia, Sincronizza copia solo gli elementi che sono stati aggiunti dall’ultima volta che la regola è stata eseguita. Quindi puoi pensarlo come una copia più intelligente o più efficiente. Occorre però considerare che Hazel non è stato progettato per la sincronizzazione bidirezionale perché non ha la capacità di gestire conflitti che si verrebbero a creare. Quindi la sincronizzazione in Hazel è unidirezionale perché i file modificati nella cartella di destinazione non vengono copiati nella cartella monitorata. Inoltre, per impostazione predefinita, le le eliminazioni dei file non vengono sincronizzate: se una regola sincronizza i file nella cartella monitorata con un’altra cartella e quindi si elimina un file già sincronizzato dalla cartella monitorata, quel file non scomparirà dalla cartella di destinazione. Poiché le regole di sincronizzazione viene eseguita ogni volta che la “Cartella sincronizzata” o qualsiasi cosa al suo interno cambia, può rallentare un po’ il tuo Mac se quella cartella contiene un numero elevato di elementi. Se vuoi limitare la frequenza con cui viene eseguito, puoi farlo aggiungendo “La data dell’ultima corrispondenza non è negli ultimi 10 minuti” (o per quanto tempo desideri che sia l’intervallo tra le corse) in cima all’elenco delle condizioni.
Debug: Preview Rule e Log degli errori
Un’altra cosa da considerare è che se in una regola con tante azioni, una di questa non viene eseguita (per esempio perché si si verifica un errore di autorizzazione durante la copia di un file o manca una cartella di destinazione), le azioni successive non vengono eseguite per quel file.
A tal proposito, trovo comoda la funzione di Preview Rule (attivabile dal tasto con una icona di un occhio nella toolbar) che permette di visualizzare in anteprima una regola per capire a quale azione si è fermata. Infatti ogni condizione che corrisponde al file selezionato mostra un segno di spunta verde, mentre ogni condizione che non corrisponde visualizza una X rossa.
In alternativa puoi visualizzare i log degli errori per vedere cosa è effettivamente successo e se Hazel ha riscontrato errori durante l’esecuzione delle regole. Basta andare dal menu su Help > View Log
Export e Sincronizzazione delle regole
Una caratteristica molto utile è la possibilità di esportare le regole in un file con estensione hazelrules (dal men Folder/Export Rules) e ovviamente importarle. Molto utile anche la sincronizzazione delle regole di Hazel in modo da creare una copia di backup delle nostre azioni oppure sincronizzarle con altri Mac tramite Dropbox o iCloud Drive.
Regola nel caso le altre regole non passino
Infine, è possibile creare una regola generale per file e cartelle che non corrispondono ad altre regole. Se desideri eseguire un’azione predefinita su file e cartelle che non corrispondono a nessuna delle altre regole, assegna all’ultima regola la singola condizione “Any file” (“Qualsiasi file”) e quindi aggiungi le azioni che desideri. Poiché “Any file” corrisponde a qualsiasi file (così come a qualsiasi cartella), allora corrisponderà a tutto ciò che ha superato tutte le regole che lo precedono.
Regole avanzate
Per creare regole più avanzate, Hazel consente agli utenti di integrare Spotlight e script nelle sue regole.
Per esempio è possibile integrare anche uno script bash più o meno complesso:
Oppure, quando si modifica una regola, se si va in fondo all’elenco e si seleziona Other è possibile utilizzare gli attributi Spotlight nelle condizioni della regola.
Come gestire i file nascosti
Per impostazione predefinita, Hazel ignora i file invisibili (come i file che iniziano con un punto). Se hai la necessità di elaborarli, puoi attivarlo da riga di comando in questo modo:
defaults write com.noodlesoft.Hazel ScanInvisibles -bool YES
Conclusione
Hazel è la classica app di cui non ti rendi conto di aver bisogno e poi quando c’è l’hai ti dimentichi che è lì. Ma funziona sempre per te, organizzando i tuoi documenti facendoti risparmiare tempo con operazioni noiose.
Dove trovarla
Hazel per Mac OS è disponibile per l’acquisto direttamente solo dal sito del produttore a questo link (non è disponibile su App Store), al prezzo di 42$ (circa 43€), ma è possibile provare la versione di prova completa in tutte le sue caratteristiche che ha una scadenza di 14 giorni, dopodiché passerà alla versione Demo che consiste nel tenere monitorata una sola cartella con due sole regole attive e con le funzioni di import/export disabilitate.
Commenti Recenti