Quickloox

Dal mondo Apple all'universo digitale, in visualizzazione rapida dell'ovvio

21 feb 2008

Un passo alla volta, e un passo oltre, in AppleScript

Il computer è stupido, ma vincente nei lavori ripetitivi. Cambiare il nome a un file è stupido, ma cambiare il nome a mille documenti e farlo a mano è più stupido. Non mi soffermo sui programmi che risolvono l’esempio in questione (c’è anche qualche AppleScript di serie dentro Mac OS X che aiuta, dentro /Libreria/Scripts…), così magari chi non se la sente di fare una ricerchina su Google sta qui e scopre come si crea un ciclo in AppleScript. :-)

Un ciclo è, come direbbe un fornaio o una lattaia, un insieme di istruzioni che si ripetono fino a che non è ora di smettere, ossia non si verifica una certa condizione. Un atto alla portata di un bambino di tre anni, contare fino a dieci, è un ciclo:

  1. inizia a contare.
  2. aggiungi uno al conteggio.
  3. smetti di contare quando sei arrivato a dieci.

Il bambino di tre anni dà già per scontate un paio di cose che per il computer non lo sono. Riscrivo la procedura in modo che sia comprensibile persino a un computer:

  1. parti… da zero.
  2. inizia a contare.
  3. aggiungi uno al conteggio.
  4. se sei arrivato a dieci smetti di contare, altrimenti ripeti il punto 2).

E adesso, AppleScript. Apro Script Editor e scrivo le istruzioni una per una. Confrontale con i passi descritti qui sopra:

set conteggio to 0 (in italiano: imposta la variabile, cioè riempi il cassettino, chiamato conteggio con il valore zero)

repeat until conteggio >= 10 (ripeti fino a quando il valore della variabile conteggio non è maggiore o uguale a 10)

set conteggio to conteggio + 1 (imposta il valore della variabile conteggio allo stesso valore di prima più uno, un altro modo di dire aggiungi uno al conteggio. Questa istruzione è quella che viene ripetuta e infatti Script Editor la mostra indentata, sporgente dentro i confini di repeat until e end repeat)

end repeat (fine ripetizione, per quando il conteggio avrà raggiunto il valore prefissato)

Pronto da incollare in Script Editor:

set conteggio to 0 repeat until conteggio ≥ 10 set conteggio to conteggio + 1 end repeat

Nota che il ciclo, ossia la ripetizione delle operazioni fino a che non viene soddisfatta la condizione posta, comprende tutto quello che sta tra i confini di repeat until e end repeat. Finora l’unico effetto pratico dello script è stato visualizzare il valore 10 nella parte bassa della finestra di Script Editor. Rendo un po’ più visibile l’effetto dello script:

set conteggio to 0 repeat until conteggio ≥ 10 set conteggio to conteggio + 1 display dialog “Ora la variabile conteggio vale " & conteggio end repeat

Il dialogo, se premi ogni volta il pulsante Ok, si ripeterà fino a chiusura del conteggio.

I minitutorial su AppleScript continuano ogni sette giorni.

Commenta