Applescript per cambiare la riga dell'oggetto


0

Ho cercato gli ultimi due giorni e ho trovato alcuni cenni che hanno affermato di cambiare le righe dell'oggetto. Ma nessuno di loro sembra essere in grado di cambiare / impostare la riga dell'oggetto. Cosa ne pensate che l'errore sia qui?

tell application "Mail"
    set theSubjectList to {}
    set themessages to selection as list
    repeat with msg in themessages
        set thisSubject to (subject of msg as string)
        if thisSubject is not in theSubjectList then
            set theSubjectList to theSubjectList & {thisSubject}
        end if
    end repeat

    set theNewSubject to ¬
        (choose from list theSubjectList with prompt ¬
            "Choose the subject of the merged thread…") as string

    if theNewSubject is in theSubjectList then
        repeat with msg in themessages
            set subject of msg to (theNewSubject)
        end repeat
    else
        display dialog "Action cancelled"
    end if
end tell

Ottengo il seguente errore

error "Mail got an error: Can’t set subject of message to \"CHANGED SUBJECT LINE\"." number -10006 from subject of message

Nessuno degli script è stato effettivamente aggiornato per la versione più recente di Mac / Mail.app. Pensate che questa funzione possa essere deprecata?
Harish Prasanna

Risposte:


1

La semplice risposta è che "soggetto" è di sola lettura. Il dizionario Apple di Applescript mostra:

subject (text, r/o) : The subject of the message

Mi piacerebbe essere in grado di combinare i messaggi in una discussione, ma non riesco a vedere come cambiare argomento senza forse esportare e reimportare messaggi.


Yep Charles. Ho finito per creare un programma python per farlo. Così ora l'app di Automator python può prendere i file .eml come input e cambiare l'oggetto e salvarli nello stesso file .eml che importiamo di nuovo nella casella di posta.
Harish Prasanna
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.