A free software developer adventure

Saturday, September 08, 2007

Offline GMail, Gmail tags and Thunderbird 2

[SPOILER] As this post is quite long, here are the main ideas : (1) create a thunderbird extension to grab GMail tags, (2) standardize the way MUA (GMail, Thunderbird, Zimbra...) share mail tags with each other.

From time to time, I dream of an offline GMail & GCalendar. Those two applications are really nice but lack of an offline mode, which makes them unsuitable for travelling. As I use GMail & GCalendar to implement GTD [1], those two applications are cruical to my daily work. Not being able to access them is really a pain.

Offline Gmail & GCalendar? Yes, I am quite sure that this dream will come true some time in the future as Google announced Gears [2] a few month ago. For thus of you who missed it, Gears is a framework for making web applications work offline. Currently, Gears allows Google Reader users to check RSS feeds offline. Thus, we can easily suppose that GMail and GCalendar will be supported. But before this comes true, I have to find an offline solution.

The offline calendar issue was solved with Thunderbird, lightning and GCalDaemon [3]. This allows me to have access to my Calendar, to modify it and to synchronise everything back once I get an internet connection. It works really nicely.

For the GMail synchronisation, I can use POP to download the content of the mails, but I lose a highly critical part of the mail information: the tags. As each mail in my inbox is categorized with several tags (cf GTD) I can't possibly imagine to apply manually the tags for each mail twice. That would be a complete waste of time. It is also not possible to create filters/rules to automatically because the tags applied to a mail change over the time but not the content of the mail.

As a matter of fact, more and more Mail clients support tagging. For example, GMail, Zimbra [4] and Thunderbird support it. My first question is thus: would it be possible to improve the mail protocols (IMAP, POP) to support new features like tagging or flagging? If anyone has an answer, I would be eager to know it, but as always will well established standards, it would take year before we could see the result in daily used apps.

In the meantime, what I would like to see is a Thunderbird extension to synchronise tags between GMail/Zimbra and Thunderbid. Does anyone knows if such an extension exists? If it does not exists, I think I will try to spend some time working on it. The major issue I currently think of is: Does Google allows access to such an API? Any clue is welcome.

PS 1: BTW, if you don't know GTD, you should really read that book, it might change the way you work.

PS 2: Zimbra already provides a beta of an offline mode.

[1] GTD With GMail
[2] Google Gears
[3] Gmail and Offline Calendar


  • As a note, Zimbra tags on email are exposed to Thunderbird as IMAP keywords.

    By Blogger Dan, at 7:05 PM  

  • dan: interresting. Could you tell me a bit more about those IMAP keywords and how they are work with Zimbra and Tb?

    I have a Zimbra account and managed to create a bunch of tags (action, next-action, finished...). I can connect to it in IMAP with TB. But how do I see the tags? Is there a doc describing it?

    By Blogger Pierre-AndrĂ©, at 7:40 PM  

  • google for the X-Tags and X-Categories headers. They are tagging extensions for the email protocol :).

    By Anonymous Chris, at 6:33 PM  

  • An idea: there is a Thunderbird extension that syncs contacts between Thunderbird and Zimbra (Zindus), maybe it could be extended to sync tags.

    By Anonymous Anonymous, at 9:42 PM  

  • Actually... sharing tags between Thunderbird and Zimbra mostly works. Go create a tag in Zimbra, and use it to tag a few messages. Then go over to Thunderbird, and create a tag with the same name. The tagged messages should automatically appear tagged in Thunderbird too.

    You might want to avoid spaces in your tag names, though. I think they may get converted to underscores and not match up.

    By Anonymous Wunsch, at 12:16 AM  

Post a Comment

<< Home