Automatizzare la creazione di una nuova pratica con Hazel

Nel mese di giugno di quest'anno (2016) vi ho parlato di come organizzare i documenti in digitale, dei trucchi su come automatizzare la creazione di una pratica con Automator e, dopo la pausa estiva, ora esaminerò come ulteriormente avvantaggiarsi degli strumenti di automazione con Hazel.

Vi ho già parlato di questo ottimo programma nel dettaglio e del suo utilizzo come strumento per automatizzare l'archiviazione di documenti, nell'articolo che segue vedremo come utilizzare i TAGs di macOS ed Hazel per ulteriormente automatizzare e velocizzare le procedure automatiche spiegate negli articoli precedenti.

Cosa sono i TAGs?

Con Mac OS Maverick, Apple ha introdotto i TAGs.

I TAGs sono un metodo alternativo, rispetto alla struttura a cartelle, per organizzare i file. Il vantaggio maggiore, rispetto all'archiviazione a cartelle dei documenti, fornito dai TAGs è quello di poter attribuire al medesimo file più TAGs. Questo permette di avere un documento, legato a più argomenti o aree di lavoro, salvato in un unico posto ma reperibile per le differenti aree di interesse.

Non entrerò in questo articolo nello specifico e non è un argomento che affronterò a breve perché non uso molto i TAGs per archiviare i documenti ma vi rinvio a questo articolo di Apple per avere maggiori informazioni su come usarli nello specifico.

I TAGs in questo articolo li utilizzeremo solo come condizione per attivare una regola di Hazel.

Il problema di creare le sottocartelle in più pratiche contemporaneamente

Nell'articolo su come automatizzare la struttura delle sottocartelle di una pratica con Automator abbiamo visto come creare un Servizio per macOS utilizzando un Workflow di Automator. Il servizio funziona in maniera egregia se utilizzato una cartella alla volta ma non opera correttamente se si selezionano più cartelle.

Utilizzando Hazel riusciremo a risolvere ulteriormente questo problema ed automatizzare ancora di più il processo. In questo articolo darò per scontato che abbiate già letto "Hazel: il programma che, come una domestica, tiene organizzati i file del vostro Mac" dove vi ho spiegato il funzionamento di base del programma.

Vediamo quindi come!

Creiamo una nuova regola

Per quest'articolo utilizzeremo come cartella da far monitorare ad Hazel la "Scrivania" ma in un caso concreto, dovrete far monitorare la cartella in cui sono contenute le cartelle delle singole pratiche.

Aprite quindi Hazel dalle preferenze di sistema (punto 1), se non avete ancora indicato ad Hazel cla cartella da monitorare, andate in "folders" e premete il tasto + (puto 2), poi selezionate la cartella dove volete creare la nuova regola (nel nostro esempio Scrivania – punto 3).

Ora nella colonna "Rules" (regole) premete il tasto + (punto 4) e vi troverete pronti a creare la nostra regola (come si vede dell'immagine di cui al punto 5).

Diamo un nome alla regola e le condizioni per agire

La prima cosa è dare un nome significativo alla regola come ho fatto io nell'immagine che segue (punto 1).

Ora dobbiamo inserire le condizioni per cui Hazel procederà ad attivare il servizio. Siccome vogliamo operare su delle cartelle il primo discriminante sarà il tipo (kind in inglese) che, è nello specifico, dovrà essere una cartella (ovvero un Folders – punto 2).

Raffiniamo ulteriormente le condizioni

Onde evitare incidenti di percorso è sempre opportuno indicare nel modo più preciso possibile ad Hazel le condizioni per cui agire. In ragione di ciò aggiungiamo due ulteriori condizioni. Creiamo una nuova condizione premendo il tasto + a fianco della condizione che abbiamo creato prima (punto 1).

La prima è ovvia ma non così scontata. Indichiamo ad Hazel che l'azione deve essere svolta solo per le cartelle che non hanno sottocartelle. In questo modo eviteremo che, per errore, selezionando una pratica con già la struttura desiderata vengano creati duplicati.

Per fare ciò utilizziamo la condizione Profondità delle sottocartelle (Subfolder Depth in inglese) ed impostiamola con la condizione che non vi siano sottocartelle, ovvero il numero 0 (punto 2).

Fatto ciò dobbiamo solo indicare ad Hazel l'ultima condizione che sarà anche il modo in cui "attiveremo" l'azione. Creiamo quindi un'ulteriore condizione come mostrato al punto 1 e poi selezioniamo Etichetta Colorata (Color Label in inglese) ed il tipo di coloro che farà scattare la regola, nel nostro esempio il Viola (punto 3).

Segnalo per completezza che le Etichette Colorate come i TAGs sono un unicum in macOS e, per questa ragione, ve ne ho parlato.

Le azioni che svolgerà Hazel

Impostate le nostre condizioni, ci basta indicare cosa deve fare Hazel.

Nel nostro caso ci interessa che Hazel faccia partire il workflow di Automator che vi ho insegnato a creare nello scorso articolo della serie.

Scegliamo quindi la voce Esegui workflow di Automator ("Run Automator workflow", in inglese) e scegliamo il nostro workflow (punto 1). Nel mio caso ho salvato i vari workflow di Automator in iCloud e quindi sono andato lì a selezionare quello opportuno (punto 2).

Cancelliamo il colore della cartella

Ultima operazione che ci rimane da compiere è togliere l'etichetta colorata dalla cartella.

Hazel si può occupare anche di questo in modo molto semplice. Scegliamo quindi un'ulteriore azione premendo il tasto + (punto 1) e scegliamo come azione Attribuisci un etichetta colorata ("Set color label", in inglese) a questo punto selezioniamo la X che toglierà il colore Viola.

Abbiamo finito, ora possiamo premere su OK (punto 3) per salvare la regola.

La regola di Hazel alla prova

Non ci resta che testare la regola! Creiamo quindi una cartella di test sulla scrivania (punto 1), clicchiamo sul tasto destro per far apparire il menù contestuale e diamo il colore Viola (io ho modificato la voce ma non dovrebbe incidere – punto 2). Ci dovremmo quindi trovare in una situazione come al punto 3 e, a questo punto, Hazel dovrebbe fare le sue magie e, il risultato finale sarà come nell'immagine sottostante al punto 4.

Il vero vantaggio è che, creando più cartelle, selezionandole e attribuendo loro il colore che avrete scelto per attivare l'azione di Hazel, in un pochi secondi vi troverete con tutte le sottocartelle popolate. Risparmiando tempo ed evitandovi errori.

In conclusione

Nella serie di articoli abbiamo quindi visto e ragionato sull'importanza di avere una struttura uniforme di cartelle come automatizzare la creazione di sottocartelle. Le regole ed i "trucchi" che ho spiegato posso tuttavia essere implementati in altre e differenti situazioni, l'unico limite è la vostra immaginazione e le vostre necessità.

Lasciate un commento qui sotto se avete personalizzato un vostro specifico flusso di lavoro per questo tipo di attività.

Nelle prossime settimane

Concludo definitivamente segnalando che, nelle prossime settimane, seguiranno alcuni articoli di ulteriore approfondimento dell'argomento, non più incentrati sull'automazione della creazione delle cartelle per contenere i vostri documenti digitali ma incentrati sul perché e come nominare correttamente i vostri documenti digitali e sui trucchi per velocizzare queste operazioni.

In particolare vi parlerò di come utilizzare TextExpander e Keyboard Maestro per automatizzare questi compiti.

Esportazione / importazione automatica in MindNode di altri formati: utile Applescript

Pur essendo il periodo estivo voglio condividere con voi (ed anche con me stesso al fine di memorizzarlo per futuri impieghi) un utile AppleScript di conversione che ho scoperto per MindNode. Mindnode è un app per creare mappe mentali sia per macOS (la guida farò riferimento a questa applicazione) sia per iOS. Recentemente vi ho segnalato le video guide di David Sparks e vi ho parlato dell'utilizzo di questo programma per "cucinare le idee".

Vi anche ho parlato, tempo addietro, della possibilità di utilizzare AppleScript per automatizzare le operazioni ripetitive, ne approfitto quindi per darvi un esempio concerto. MindNode infatti, tra le varie funzioni, supporta AppleScript (non tutte le app per macOS supportano tale linguaggio di programmazione).

Come al solito l'AppleScript non è farina del mio sacco ma l'ho reperito su internet. Mi sono semplicemente dedicato alla modifica di alcuni parametri per ottenere il risultato che volevo.

Il problema

La mia ex praticante voleva utilizzare le mappe mentali create con MindNode su Mac durante il suo periodo di pratica presso il mio ufficio sul suo PC Windows. Legittima richiesta ma complessa da esaudire. Infatti io l'avevo spronata ad utilizzare MindNode in maniera massiccia e questo implicava il reperimento e la conversione di una ventina di file.

Compito di per se semplice, visto che MindNode permette l'esportazione in altri formati (vedi immagine che segue), ma tedioso.

Io dovevo solo convertire i file .mindnode in file .mm ovvero FreeMind (FreeMind è un'applicazione OpenSource per la creazione di mappe mentali per Mac, Windows e Linux - qui trovate il link per il download se vi interessa).

Come al mio solito in questi casi ho procrastinato il tutto per alcuni mesi ...

L'AppleScript trovato su interent

Oggi, mentre scrivo questo articolo, ho deciso di affrontare il problema per le corna ma in maniera intelligente: dovevo automatizzare le operazioni di conversione dei singoli file.

Scrivere un AppleScript da solo era qualcosa di troppo complesso e troppo dispendioso a livello di tempo, per cui ho fatto una veloce ricerca su internet.

Come spesso accade, qualcuno aveva già affrontato un problema simile, nel mio caso addirittura gli stessi sviluppatori di MindNode.

In questa pagina ho quindi trovato l'applescript creato dagli sviluppatori per convertire file OPML in PDF (nell'immagine che segue l'applescript creato e tratto dalla pagina in questione).

Cosa fa l'applescript?

Visto che AppleScript non è semplicissimo e, presumibilmente, molti di voi non conoscono i rudimenti di programmazione vi spiego brevemente cosa fa questo script che, peraltro, è veramente ben fatto.

  1. Anzitutto richiede, attraverso l'apertura di una finestra del Finder, i file che si vogliono convertire (linee da 1 a 7);
  2. Una volta che l'utente ha selezionato i file li passa a MindNode (linea 8);
  3. A questo punto esegue un loop (linea da 9 a 17), ovvero la stessa operazione ripetuta su tutti i file selezionati, in particolare modifica l'estensione del file in .PDF (linea 14) ed esegue il comando di esportazione (linea 15).

Copia incollare lo script nell' Script Editor

Ho quindi selezionato il testo dello script dalla pagina web ed aperto lo Script Editor di Apple pre-installato in tutti i Mac.

Lo Script Editor è collocato nella sottocartella Utility all'interno della cartella Applicazioni (punto 2 immagine) o reperibile utilizzando Spotlight e digitando "script" (punto 3 dell'immagine).

Finestra dello Script Editor

Non entrerò nel dettaglio di come funziona lo Script Editor ma quella che vedete nell'immagine sottostante è la finestra di apertura. Il testo dell'AppleScript va incollato dentro la prima finestra bianca (punto 1 dell'immagine).

Lo script modificato

Veniamo quindi alle modifiche che ho apportato.

Nell'immagine che segue c'è il testo dello script per intero e un dettaglio con le modifiche cerchiate in rosso.

Come potete vedere non ho dovuto lavorare molto; infatti ho modificato solo 3 punti.

  1. L'estensione del file che il Finder cerca (da .OPML a .mindnode);
  2. L'estensione del nuovo file in cui viene salvato il file d'origine (nel caso specifico da PDF a .mm, che è il formato di FreeMind);
  3. infine le modalità di esportazione; invece che esportare in PDF esportare nel formato FreeMind.

Altre opzioni di esportazione per personalizzare lo script

Di seguito allego la schermata del dizionario AppleScript di MindNode (in estrema sintesi i comandi che si possono dare a MindNode attraverso AppleScript) con le opzioni di esportazioni (riquadro rosso).

Potrete quindi modificare a vostro piacimento le opzioni di esportazione dei file e personalizzare lo script a vostro piacere.

In conclusione

Se vi state domandando il risultato finale di questo mio excursus negli AppleScript posso riportarvi che, con questo trucco, ho esportato 19 documenti in poco più di 30 secondi quando, manualmente, ci avrei messo almeno 15 minuti, dovendo aprire e salvare un file alla volta.

Certo, ho investito del tempo per cercare e personalizzare l'appleescript e l'operazione, probabilmente, è un una tantum ma se nel futuro mi dovesse capitare ancora so già come fare (e così anche voi!).

Come automatizzare la creazione di una nuova pratica con Automator

Vi ho parlato nell’articolo precedente di come organizzare i documenti digitali. In particolare ho descritto come creare una struttura di cartelle e sottocartelle dove archiviare i documenti in modo da ritrovare velocemente i documenti. Unico difetto del procedimento è che, ogni volta che dovete creare una nuova posizione, dovete creare 7/8 sottocartelle manualmente.

In questo articolo vedremo come automatizzare la creazione delle sottocartelle di una posizione senza acquistare programmi ulteriori a quelli già forniti nel vostro Mac. 

Il primo metodo, molto basilare, è un trucco che possono utilizzare anche gli utenti Windows, il secondo, più avanzato è solo per utenti Mac e sfrutta Automator ed i Servizi di Mac OS X.

Nel prossimo articolo utilizzeremo lo stesso metodo ma implementandolo in Hazel.

Leggi tutto ...

Read More