emacs: Simplify and fix `notmuch-mua-prompt-for-sender'
authorAustin Clements <amdragon@MIT.EDU>
Thu, 27 Feb 2014 18:10:54 +0000 (13:10 -0500)
committerDavid Bremner <david@tethera.net>
Tue, 4 Mar 2014 23:59:35 +0000 (19:59 -0400)
commited720f4e6d18c80381e0e84ff3b5571474c92512
treed2535317ef72055891cdfe3774043626bc54d461
parent7102b8c7827fdb89ae4dba9b498b77e2a28e23da
emacs: Simplify and fix `notmuch-mua-prompt-for-sender'

`notmuch-mua-prompt-for-sender' is over-engineered and often wrong.
It attempts to detect when all identities have the same name and
specialize the prompt to just the email address part.  However, to do
this it uses `mail-extract-address-components', which is meant for
displaying email addresses, not general-purpose parsing, and hence
performs many canonicalizations that can interfere with this use.  For
example, configuring notmuch-identities to ("Austin
<austin@example.com>"), will cause `notmuch-mua-prompt-for-sender' to
lose the name part entirely and return " <austin@example.com>".

This patch rewrites `notmuch-mua-prompt-for-sender' to simply prompt
for a full identity when notmuch-identities is configured, or to
prompt for a sender address when it isn't.

The original code also did several strange things, like using `eval'
and specifying that this function was interactive.  As a side-effect,
this patch fixes these problems.  And it adds a docstring.
emacs/notmuch-mua.el