Eventi

Automatizzare a costo zero

L'impiego di AutoHotkey nella redazione di testi


In fase di redazione dei testi tecnici possono esserci operazioni che si ripetono con più o meno frequenza: dalla scrittura  del nome di un prodotto a un intero processo composto da singoli passaggi. In linea di principio ogni ripetizione può essere automatizzata; non servono né particolari conoscenze di programmazione né software costosi. AutoHotKey copre moltissime esigenze e grazie all'ottima documentazione di cui è fornito e al suo uso intuitivo, l'investimento di tempo e costi è davvero minimo.
AutoHotkey combina le funzioni di macro e hotkey con un semplice quanto efficace linguaggio di scripting. Per creare dei propri Script esiste un MACRO recorder che trasforma sequenze di tasti e movimenti del mouse in Script eseguibili. A differenza delle macro di Word, la maggior parte degli Script funzionano non solo in uno bensì in tutti i programmi.



AutoHotkey Versione 1.0.47

Produttore: Applicazione Open Source

Licenza: GNU General Public License?Prezzo: gratuito

Requisiti del sistema: Windows 95, 98, Me, NT, 2000, XP, Vista?(Windows 95, 98, Me funzioni limitate)

http://www.autohotkey.it/

Generalmente gli Script eseguono in automatico le funzioni previste premendo una determinata combinazione di tasti (hotkey). Utenti più esperti riescono tramite AutoHotkey addirittura a creare interfacce grafiche (GUI) oppure ad accedere direttamente alle librerie DLL di Windows o ad altre applicazioni. Le possibilità d'uso sono teoricamente illimitate. Vediamo alla luce di tre esempi come funziona il programma:
1.    Correzione/completamento automatici del testo
2.    Ricerca di termini in un dizionario on-line
3.    Inserimento automatico di nomi prodotto con relativa formattazione



1. Correzione e completamento automatici del testo


L'esempio più diffuso di completamento è la formula di saluto al termine di una lettera o di un'e-mail: uno script può completare automaticamente l'abbreviazione "cds" con "cordiali saluti". Un classico esempio di correzione invece è sui refusi: lo script corregge "automaticametne" in "automaticamente". Infine la combinazione di tasti  [Ctrl]+[Alt]+[p] inserisce il nome del "MyProduct".

Con un qualsiasi editor di testo, es. l'editor di Windows, creare il testo in figura 1. Salvarlo con il nome "esempio01.ahk" e avviarlo con Explorer (doppio click sul nome).




Fig. 1: I comandi che AutoHotKey trasformerà in operazioni sono raccolti in un semplice file di testo (*.ahk).


Il vostro Script è già attivo. Provate a digitare in diverse applicazioni "cds" o "automaticametne", seguiti da un segno di interpunzione, uno spazio o un invio... il testo viene immediatamente corretto o integrato in base alle indicazioni.

Con la combinazione di tasti [Ctrl]+[Alt]+[p] viene automaticamente inserito nell'e-mail, in Word, in FrameMaker o qualsiasi altra applicazione il testo precedentemente definito come "MyProduct".

Quando uno Script è attivo, compare l'icona di AutoHotKey sulla barra degli strumenti. Con il tasto destro del mouse si apre un menù a tendina nel quale si può decidere se sospendere o terminare lo Script (v. figura 2).


Se si vuole eseguire permanentemente uno Script, è possibile creare un file eseguibile (con estensione EXE) con il compilatore allegato e creare un collegamento al file nella cartella di avvio automatico di Windows. Il file EXE può essere utilizzato anche dai colleghi sprovvisti di AutoHotKey.




Fig. 2: Di serie l'interprete di AutoHotKey è attivo e visibile nella barra degli strumenti. Agendo con il tasto destro del mouse sull'icona si può interrompere o sospendere la funzione.



2. Cercare un termine in Internet


Il prossimo Script è più complesso. Con la combinazione di tasti [Tasto Win]+[ü] viene avviata automaticamente la ricerca, ad esempio sul dizionario on-line inglese-tedesco, del termine selezionato.


Il contenuto degli appunti viene prima copiato in una variabile; dopo di che negli appunti viene copiato il contenuto della selezione. Il sito del dizionario on-line leo.org viene richiamato impostando come parametro di ricerca il termine copiato negli appunti. Se gli appunti sono vuoti (ovvero se non era stato precedentemente selezionato alcun termine), si apre una finestra di dialogo che chiede di immettere il termine da cercare. Al termine viene ripristinato negli appunti il contenuto precedentemente salvato nella variabile.




Fig. 3: In questo caso per la ricerca in un dizionario on-line si utilizzano anche gli appunti.


La modifica dello Script per avviare la ricerca su altri siti, ad esempio Google o Wikipedia, è molto semplice. È possibile anche combinare in un unico Script più routine di ricerca, ad esempio per lanciare contemporaneamente ricerche su più fonti per lo stesso termine.

Lo Script funziona in ogni programma di Windows.


3. Immettere e formattare nomi di prodotti


L'ultimo esempio riguarda l'immissione automatica del nome di un prodotto. Supponiamo di scrivere un testo sull'uso di un software di nome "ColorPicker" e che la prima parte di questo nome (Color) sia composta da caratteri di diversi colori. Per farlo bisogna formattare in modo diverso ogni singolo carattere.??In questo caso risulta più comodo utilizzare AutoScriptWriter, il recorder di AutoHotKey. Basta eseguire le operazioni una volta sola e si salva lo Script registrato da AutoScriptWriter. A questo punto si definisce l'hotkey corrispondente, come descritto nel primo esempio. A questo punto con la combinazione di tasti, il nome comparirà esattamente come lo vogliamo. Poiché comprende comandi di formattazione specifici di una determinata applicazione, questo Script funziona solo nello stesso Editor dal quale è stato registrato.??Ulteriori esempi?Nella pratica non ci sono limiti all'utilizzo delle automazioni di AutoHotKey. Alcuni altri esempi:

  • Creare AutoText
  • Correggere gli errori di battitura più frequenti
  • Effettuare formattazioni
  • Rimappare i tasti della tastiera
  • Avviare programmi, aprire file
  • Creare combinazioni di tasti per sequenze di comandi anche per programmi che non supportano questa funzione
  • Effettuare conversioni
  • Automatizzare processi
  • Rilevamento orari, sicurezza dati

…e molte altre applicazioni legate alle proprie abitudini e alle proprie attività.


Script predefiniti

Internet offre una serie di Script utili già creati. Qui di seguito una selezione di funzioni molto pratiche per le attività di scrittura di ogni giorno, tratte dal forum di AutoHotKey.

  • Accenti e caratteri particolari: www.autohotkey.com/forum/topic570.html
  • Velocizzare il percorso della cartella nella quale si salvano o dalla quale si aprono più spesso i documenti: www.autohotkey.com/forum/topic619.html?www.autohotkey.com/forum/topic1553.html
  • Utilizzo contemporaneo di 10 sezioni degli Appunti: www.autohotkey.com/forum/topic4514.html


Vantaggi di AutoHotkey

Il maggiore vantaggio di AutoHotKey è dato dalla sua versatilità:

  • Gli Script, ad esempio gli Autotext, non funzionano solo in un'unica applicazione, es. Word o FrameMaker, ma in ogni programma del sistema.
  • Le possibilità di automazione non si limitano a semplici operazioni della stessa applicazione ma possono comprendere processi completi, che coinvolgono più programmi.
  • Uno script che si usa in più programmi, viene dunque creato una volta sola.
  • Per essere un programma Open Source, è dotato di documentazione esaustiva, che permette di imparare ad utilizzarlo senza problemi.


Svantaggi di AutoHotkey

Il carattere universale di AutoHotKey nasconde però anche degli svantaggi:

  • Gli Script sono maggiormente sensibili a errori rispetto a soluzioni "interne" come le macro di Word o gli Script di Frame. Se si modifica la versione di un software, è probabile che anche gli script debbano essere adattati.
  • Possono generarsi degli errori se si interviene con mouse o tastiera mentre è in esecuzione uno Script. Nella sezione "Misure di sicurezza" sono riportati i rimedi più diffusi.
  • Possono crearsi dei problemi anche quando si trasferiscono gli Script da un computer a un altro, specialmente se lo Script comprende anche i movimenti del mouse. Se le configurazioni di visualizzazione sono diverse, le coordinate del mouse probabilmente non corrispondono più.


Consigli per creare i propri Script

Il modo più semplice per creare uno Script è il seguente:

  1. Registrare la sequenza di operazioni avvalendosi di AutoScriptWriter (recorder), compreso nella dotazione
  2. Elaborare lo Script con un editor di testo (es. Blocco note)


Tenere presenti i seguenti punti:

  • In particolar modo se si usa il recorder, è più semplice creare diversi Script brevi piuttosto che uno unico lungo. Una volta che i singoli Script funzionano nel modo desiderato, si possono unificare in uno Script unico.
  • Prima di registrare una sequenza, provarla un paio di volte. Difficilmente riesce in modo perfetto al primo colpo, anche se si ha molta esperienza.
  • Utilizzare possibilmente sempre la tastiera piuttosto che il mouse, ad esempio utilizzare le combinazioni Alt + lettera per scegliere i punti del menù. La combinazione di tasti è più sicura rispetto ai movimenti del mouse ad esempio se variano le impostazioni dello schermo o in presenza di versioni diverse. Se si usa il mouse, impostare la finestra nella dimensione che avrà anche nell'ambiente di lavoro.


In molti casi AutoScriptWriter genera più comandi di quanti si vorrebbe. In particolare aggiunge all'inizio le indicazioni  "Winwait" e "Winwaitactive Events". Nelle righe corrispondenti compare il titolo della finestra e spesso anche il nome documento della finestra nella quale è stata effettuata la registrazione. Se si vuole utilizzare lo Script anche in altre applicazioni/finestre, bisogna adeguare o cancellare queste righe.
Se uno Script non si "comporta" come previsto, si possono aggiungere all'inizio i comandi "setkeydelay, 750" e  "setmousedelay, 750"  che servono per ritardare l'esecuzione in modo da permettere all'utente di riconoscere eventuali errori e alla fine si possono rimuovere. Per facilitare la ricerca di un errore è possibile prevedere una temporanea interruzione dell'esecuzione, ad es. introducendo il comando "Msgbox, Script stopped".


Misure di sicurezza

Una cosa deve essere chiara: AutoHotKey esegue i comandi delle macro "senza pensare" ovvero non è in grado di sapere quello che un programma o il sistema operativo eseguono. Se uno Script viene lanciato al posto sbagliato o sui dati sbagliati, possono verificarsi situazioni indesiderate, ad esempio sovrascrivere o cancellare dati. Una volta lanciata, la macro è talmente veloce da non poter essere bloccata in tempo. E siccome spesso sono più comandi a essere eseguiti in sequenza, la funzione Undo (Annulla) disponibile nella maggior parte delle applicazioni, non è sufficiente. Tenere quindi sempre presenti le seguenti regole di base:

  • Non fidarsi subito di Script che provengono da fonti sconosciute. Gli Script eseguono immediatamente funzioni di sistema sul vostro computer e sono rischiosi tanto quanto qualunque altro programma eseguibile.
  • Studiare combinazioni di tasti che non possano essere lanciate inavvertitamente, preferire ad esempio combinazioni di tre tasti.
  • Se possibile, limitare il funzionamento degli Script a determinate applicazioni/finestre.
  • Testare tutte le macro prima di utilizzarle in veri e propri progetti.
  • Non utilizzare il mouse né la tastiera mentre è in funzione una macro.
Seguendo queste semplici regole non dovrebbe essere un problema sfruttare le grandi potenzialità di automazione offerte da questo strumento.


Applicazioni alternative

Sul mercato esistono degli strumenti simili. Tuttavia la maggior parte si rivelano meno universali rispetto a AutoHotKey e spesso non sono gratuiti.


Alternative gratuite
AutoIt:

  • ha le stesse radici di AutoHotkey e gli Script sono in parte compatibili
  • www.autoitscript.com
RemoteKeys:
  • www.freewarehits.de
EasyTxt:
  • www.geocities.com/easytxt32/
  • Alternative a pagamento
AIM Keys:
  • www.aimsoft.com
Auto Macro Recorder Pro:
  • www.readmesoft.com
Workspace Macro Pro:
  • www.tethyssolutions.com
Jitbit Macro Recorder e Jitbit AutoText:
  • www.jitbit.com
PhraseExpress:
  • www.phraseexpress.com


Sintesi

AutoHotkey è tra gli strumenti per la gestione di macro più adatti per le attività quotidiane di redazione. I suoi punti di forza sono la versatilità, la buona documentazione e l'ampia scelta di Script gratuiti disponibili.
I suoi punti di debolezza sono legati al recorder di macro. Difficilmente si riescono a evitare interventi manuali. Tuttavia alcuni Script sono talmente facili da creare da non rappresentare un problema nemmeno per utenti che non hanno conoscenze di programmazione.


Autore

Marc Achtelig

indoition engineering

ma@indoition.de

www.indoition.de

Dipl. Ing. Marc Achtelig è redattore e consulente aziendale per la comunicazione tecnica. I suoi ambiti di competenza sono documentazione software, principi di documentazione, Single-Source-Publishing e ottimizzazione dei processi di documentazione.