Newsgroup: it.comp.macintosh
Titolo: [AS] Firma random su Zuppa (datemi una mano a migliorarlo :-D)

Premessa: e' il mio primo script in assoluto e l'ho fatto praticamente
per tentativi. Se ci sono suggerimenti per migliorarlo, ben vengano! :-)
Prendendo come base lo script (di Marco?) per il cambio della riga di
intestazione ho pensato a una cosa del genere, che sembrerebbe
funzionare, permettendo anche di superare il limite delle quattro righe:
---------------------------------------------------------------------
on run
        set the clipboard to "hey"
        set firma to ""
        tell application "MacSOUP" to activate
        tell application "System Events"
                tell process "MacSOUP"
                        set chi to title of window 1
                        set chi to my buildTemplate(chi)
                        set the clipboard to chi
                        keystroke "f"
                        key code 124 using {shift down, command down}
                        keystroke chi
                        key code 125 using {shift down, command down}
                        key code 125
                        key code 36
                        keystroke "-- "
                        key code 36
                        set firma to my lamiaFirma(firma)
                        set the clipboard to firma
                        keystroke "v" using {command down}
                        key code 126 using {shift down, command down}
                        key code 126
                end tell
        end tell
end run
on buildTemplate(n)
        set x to the offset of ":" in n
        set x to (characters 1 thru (x - 1) of n) as text
        set x to "Il buon " & x & ¬
                " ando' farneticando le seguenti parole:"
        -- quella qui sopra e' la stringa da editare
        return x
end buildTemplate
on lamiaFirma(n)
        set y to n
        set f1 to ¬
                "\"As I paint this picture gray and taste the pain... 
 I'll play the optimist!\" (Dane)
 
 STARGAZER: 
www.stargazer.it
 - Le stelle della scena Hard & Heavy!
 
 Firma numero 1 di test"
        -- quella qui sopra e' una mia firma, voi ovviamente
studiatevene una vostra!
 
 
        set f2 to ¬
                "Questa è la firma 2"
 
        set f3 to ¬
                "Questa è la firma 3"
 
        set f4 to ¬
                "Questa è la firma 4"
 
        set f5 to ¬
                "Questa è la firma 5"
 
        set acaso to (random number from 1 to 5)
        if acaso is 1 then set y to f1
        if acaso is 2 then set y to f2
        if acaso is 3 then set y to f3
        if acaso is 4 then set y to f4
        if acaso is 5 then set y to f5
        return y
end lamiaFirma
---------------------------------------------------------------------
Cose da fare (e per cui chiedo aiuto):
1) anziche' inserire le firme all'interno dello script, avrei voluto
pescarle da cinque file (chiamati 1.txt , 2.txt, 3.txt, etc.) poste in
una cartella "miahome/Documenti/Zuppafirme". 
L'idea era utilizzare qualcosa del tipo:
set workingpath to ":purple x:users:purple74:documents:zuppafirme:"
if acaso is 1 then set dausare to workingpath & "1.txt"
.....
set y to text of document dausare of application "TextEdit"
Dopo qualche primo test che sembrava promettere bene, quando ho provato
a sviluppare quanto scritto sopra, non sono mai riuscito a farlo
funzionare. Penso che il problema sia nel passare il path: ci ho provato
in tutte le maniere, usando "alias" o la forma POSIX, ma nulla da fare.
Qualcuno sa come farlo?
2) Per applicare la firma ho optato per l'utilizzo della clipboard e del
Command + V. E' molto piu' veloce del "keystroke".
Avrei voluto fare lo stesso anche per la frase introduttiva (per questo
trovate quel "set the clipboard to chi"), ma sembra che lo script
gestisca la clipboard prima di andare poi ad eseguire le singole
righe... quindi mi andava ad incollare due volte la firma (una in cima e
una in fondo).
3) Qualcuno conosce un modo per associare lo script a una combinazione
di tasti? (Tipo Shift + Command + F) :-)
Daniele

Dimenticavo.
Nelle impostazioni di Zuppa svuotate completamente la firma.
Se notate qualche "bug" fatemelo sapere.
Daniele

Domanda...
perche' sull'iBook funziona perfettamente, mentre sul G4 mi da' errore
al momento  del "set chi to title of window 1"?
 
Mah...
System Events got an error: NSReceiverEvaluationScriptError: 4
(Che poi era lo stesso che mi impediva di caricare i file sull'iBook)
Daniele