Archive for the 'Email' Category

Google App Engine Mail API Development Web Server bug and workaround

I ran into a sneaky little bug when working locally with the Google App Engine Development Web Server and using the Mail API: sending email begins to fail if you change the source code of the class or module that contains the Mail API calls.

The actual error you get is: SystemErrorParent module 'email' not loaded.
Continue reading 'Google App Engine Mail API Development Web Server bug and workaround'

Reply to multiple email messages in Mail

You guys are great! Ninety sites have the Singularity badge on them and the number is growing every day. I couldn't be happier and yet it also means that I now have ninety emails that I need to reply to. While I've started to answer each one personally in turn, what I really need is the ability to respond to all the emails with a single message to say "Hey, I got your email, thanks. You'll be among the first to know what Singularity is in the next few days!"

I've been tagging messages with the label "Singularity Badges" in GMail as the emails were coming in (note to self: next time, also reply to the message at this point and they won't pile up!) So I thought I'd fire up Mail app, select all the messages with the label, hit Reply and Bob's your uncle.

If you've tried yourself in the past, you are probably aware that Bob is most definitely not your uncle! (The reply option is grayed out in Mail when there are multiple messages selected.)

So if you want to work this way, you have to write some AppleScript.

Being an AppleScript newbie, I was happy to see that Jake Albert had already done most of the work for me and shared his solution on Mac OS X Hints. I started with his code in Script Editor and applied the follow-ups suggested by Peter Bukowinski, Matt Harris, and Tom Wible. Instead of putting all the senders in to To field, however, I made the script put your default account's email address in the To field and put all the other recipients in the BCC field.

Here's the final script, released here under the open source MIT license:

set thesenders to {}
set thesenderstext to ""
tell application "Mail"
    set themessage to the selection
    repeat with i from 1 to the number of items in themessage
        set thesender to (extract address from (the sender of (item i of themessage)))
        if thesenders does not contain thesender then
            set thesenders to thesenders & {thesender}
        end if
        set the was replied to of (item i of the themessage) to true
    end repeat
    set AppleScript's text item delimiters to ", "
    set thesenderstext to thesenders as text
    set AppleScript's text item delimiters to ""
    set newMessage to make new outgoing message
    tell newMessage
        set visible to true
        make new bcc recipient with properties {address:thesenderstext}
    end tell
    set toAddress to email addresses of item 1 of accounts as text
    tell newMessage
        make new to recipient with properties {address:toAddress}
    end tell
    activate
end tell

Finally, I saved the script under ~/Library/Scripts as ReplyToMultipleEmails.scpt and used Quicksilver to add a hotkey combination to trigger the script.

To do this, I first made sure that my scripts folder was included and selected under Quicksilver → Catalog...

Quicksilver Catalog Scripts

And added the Trigger from Quicksilver → Triggers... and assigned it to the hotkey ⌃ ⌥ ⌘ R.

Quicksilver Trigger

With this script in place, you can reply to multiple email messages in Mail by selecting them and hitting your chosen hotkey combination. So I'm off to email everyone who put the Singularity badge on their sites with an update.

Hope you find this useful... enjoy!

Update: I noticed that when you use this script to reply to multiple messages, the "was replied to" flag on the messages is not set. I've modified the script so that the flag is now set but be aware of an issue with this: If you use the script to create a new message and then don't send it, the "was replied to" flags on the messages you were replying to will remain set. If you don't like this behavior, remove the line that reads set the was replied to of (item i of the themessage) to true from the script.

Mozilla Thunderbird 2 Alpha 1 Rocks

Thunderbird 2 Alpha 1 I upgraded to Mozilla Thunderbird 2 Alpha 1 the moment it came out and I have been very happy with it so far.

One of the main reasons I upgraded was because I was getting annoyed by the broken Search feature in 1.5 (search by "Subject or Sender" doesn't work correctly.) This bug used to mean that I'd have to either flip back and forth between searching by Subject and searching by Sender or use Google Desktop even if I had the folder I wanted to search in open in Thunderbird. Needless to say, it was quite a pain. Luckily, this has been fixed in the latest release and there are quite a few other improvements too.

I like the new notification alerts and renaming "Labels" to "Tags" just makes it all that much more Web 2.0! :P

On a more serious note, the latest release appears to be much more stable and responsive than before. I haven't had a single crash yet. It is, of course, Alpha software, so use at your own risk!

For a full list of changes in Thunderbird 2 Alpha 1, see the release notes.






Bad Behavior has blocked 0 access attempts in the last 7 days.