Turn Turnsole into a generic mail client

Subject: Turn Turnsole into a generic mail client

Date: Sun, 19 Jun 2011 16:44:09 -0400

To: wmorgan-sup@masanjin.net

Cc: notmuch@notmuchmail.org, Sup developer discussion

From: Vivien Didelot


Hi William and others,

As Turnsole is a great mail interface, I was thinking about having it
generic to multiple servers or mail sources, to fit many use cases.

Explicitely, the Turnsole::Client class (
https://github.com/wmorgan/turnsole/blob/master/lib/turnsole/client.rb)
could be turned into a Turnsole::Client module instead,
which implements the necessary abstract methods for the interface, and which
needs to be included in every client adapters (like DataMapper adapters are
working for instance).
Built-in Turnsole adapters would be in lib/turnsole/client/. That way, we
could easily implement Turnsole adapters for many sources, such as:
Heliotrope (for sure, the official adapter),
IMAP (direct connection),
Gmail (simpler adapter using the IMAP adapter),
Maildir/Mbox,
NotMuchMail (which is a great Sup-like email back-end),
upasfs,
etc.

The main reason why I'm posting that, is that I really like the Turnsole
ncurses based interface,
but sometimes I'd like to check emails directly from imap (when not on my
computer for instance).
I also know that NotMuch is missing a good ncurses-based client (that's why
I've Cc'd them).

What do you think? Is there limitations I didn't think about?

-- 
Vivien Didelot,
vivien.didelot.org

Thread: