notmuch is an email indexer that allows you to search through you mails, making traditional folder based access to emails obsolete. It is (email)thread based and makes extensive use of the tagging metaphor. notmuch provides a C-library and bindings for several other languages and a CLI tool. Additionally, there are several interfaces that let you interact with your index and provide additional MUA functionality.
alot is such an interface. It lives in your terminal and tries hard to look and feel like a MUA. It is intended as a notmuch based MUA for people unwilling to use their editor as a mailclient.
alot makes use of existing solutions where possible: It does not fetch, send or edit mails; it lets notmuch handle your mailindex and uses a toolkit to render its display. You are responsible for automatic initial tagging.
This said, there are few CLI MUAs that could be easily and naturally adapted to using notmuch. Rebuilding an interface from scratch using friendly and extensible tools seemed easier and more promising.
It's not meant to be presumptuous. I like the dichotomy; I like to picture the look on someone's face who reads the X-MAILER flag "notmuch/alot"; I like cookies; I like this comic strip: http://hyperboleandahalf.blogspot.com/2010/04/alot-is-better-than-you-at-everything.html
Me too! Feel free to file a new (or comment on an existing) issue if you don't want/have the time/know how to implement it yourself. Be verbose as to how it should look or work when it's finished and give it some thought how you think we should implement it. We'll discuss it from there.
Be aware that the bindings for all modes are fully configurable (see the CUSTOMIZE.md). That said, I choose the bindings to be natural for me. I use vim and pentadactyl a lot. However, I'd be interested in discussing the defaults. If you think your bindings are more intuitive or better suited as defaults for some reason, don't hesitate to send me your config. The same holds for the theme settings you use. Tell me. Let's improve the defaults.
In each account
section you can specify a abook_command
that
is considered the address book of that account and will be used
for address completion where appropriate.
This shell command will be called with the search prefix as only argument.
Its output is searched for email-name pairs using the regular expression given as abook_regexp
,
which must include named groups "email" and "name" to match the email address and realname parts
respectively. See below for an example that uses abook:
[account YOURACCOUNT]
realname = ...
address = ...
abook_command = abook --mutt-query
abook_regexp = (?P<email>.+?@.+?)\s+(?P<name>.+)
See here for alternative lookup commands. The few others I have tested so far are:
-
goobook for cached google contacts lookups:
abook_command = goobook query abook_regexp = (?P<email>.+?@.+?)\s\s+(?P<name>.+)\s\s+.+
-
abook_command = nottoomuch-addresses.sh abook_regexp = \"(?P<name>.+)\"\s*<(?P<email>.*.+?@.+?)>
Don't hesitate to send me your custom abook_regexp
values to list them here.