Skip to content

Latest commit

 

History

History
96 lines (79 loc) · 4.12 KB

FAQ.md

File metadata and controls

96 lines (79 loc) · 4.12 KB

FAQ

What is all this about?

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.

Why reinvent the wheel? Why not extend an existing MUA to work nicely with notmuch?

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.

What's with the snotty name?

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

I want feature X!

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.

Why are the default key bindings so counter-intuitive?

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.

How do I do contacts completion?

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+.+
    
  • nottoomuch-addresses:

    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.