Come posso usare un oggetto Applescript da un programma?

5

Questa domanda C'è un modo per aggiungere tutti i destinatari di un'e-mail a un gruppo / cartella nei contatti da Mail? sembra avere una risposta che sarebbe utile per me, ma in realtà non so come usare lo script da Mail.

In alternativa, sembra che Automator potrebbe essere usato anche, ma sono anche molto estraneo a Automator. Sto cercando di estendere gli strumenti e collegarli per risolvere problemi generali, con il mantenimento dell'appartenenza al gruppo come la mia attuale sfida.

Come posso eseguire un AppleScript da un programma?

    
posta Alan Munn 22.02.2012 - 17:50
fonte

1 risposta

7

Per utilizzare questo (o qualsiasi) script in un programma come Apple Mail, potresti creare un servizio in Automator.

Avvia il programma Automator .

Quando dice Scegli un tipo per il tuo documento , seleziona Servizio e fai clic su Scegli

Nellafinestradidialogoinalto,selezionaServizioricevenessuninputinMail.app(o,ilnomedeltuoprogrammaoqualsiasiapplicazioneseèquellochevuoi).

Inseriraiun'azione:dalgruppoUtilità,faidoppioclicsuEseguiAppleScript.

Seleziona il testo che dice

(* Your script goes here *)

e incollare lo script che si desidera eseguire. Nel tuo caso, lo script che vuoi incollare è

  tell application "Mail"
    set theSelection to selection
    set theMessage to item 1 of theSelection
    set theSubject to subject of theMessage
    tell application "Address Book"
        set theGroup to make new group with properties {name:theSubject}
    end tell
    set theRecipients to to recipients of item 1 of theMessage
    repeat with a from 1 to count theRecipients
        set theRecipient to item a of theRecipients
        tell application "Address Book"
            set theName to name of theRecipient
            tell application "Mail" to set theAddress to address of theRecipient
            set thePerson to make new person with properties {first name:name of theRecipient}
            make new email at end of emails of thePerson with properties {value:theAddress}
            add thePerson to theGroup
        end tell
    end repeat
    set theRecipients to cc recipients of item 1 of theMessage
    repeat with a from 1 to count theRecipients
        set theRecipient to item a of theRecipients
        tell application "Address Book"
            set theName to name of theRecipient
            tell application "Mail" to set theAddress to address of theRecipient
            set thePerson to make new person with properties {first name:name of theRecipient}
            make new email at end of emails of thePerson with properties {value:theAddress}
            add thePerson to theGroup
        end tell
    end repeat
    tell application "Address Book" to save
  end tell

Dopo averlo fatto, vai al menu File e fai clic su Salva .

Assegna al servizio un nome che ricorderai, ad esempio "Aggiungi destinatari al gruppo".

Quindi, quando sei in Mail, puoi selezionare un messaggio o dei messaggi e andare al menu Posta nella barra dei menu, quindi al menu Servizi nel menu Posta e seleziona il servizio Aggiungi destinatari al gruppo .

    
risposta data 23.03.2012 - 18:58
fonte

Leggi altre domande sui tag