Re: [PATCH v1 0/3] Address completion entirely in elisp.

Subject: Re: [PATCH v1 0/3] Address completion entirely in elisp.

Date: Fri, 05 Sep 2014 16:29:56 +0100

To: David Edmondson,


From: Mark Walters


On Fri, 05 Sep 2014, David Edmondson <> wrote:
> Address completion entirely in elisp.
> I grew frustrated with having to use an external command to provide
> address completion, as they all had annoyances (up front scanning,
> requiring python bindings, etc.). This is an attempt to provide
> something similar to jkr's (which I was
> previously using) entirely in elisp, relying only on the `notmuch'
> command.

Just a few quick comments: the first is relevant to others trying this

1) You seem to be missing a (require 'std11) somewhere. I did this via M-:
and then it ran fine.

2) It is not quick on a spinning rust disk. This may not be relevant as
the delay is probably notmuch so would also be the case if I were using (i normally just use a trivial script that parses
my .mailrc)

3) Have you tried and do you have
any comments on the comparison?

4) Finally, I wonder if we would be worth approaching the backend
notmuch use slightly differently: if we added a
notmuch_messages_collect_from function which was very similar to
notmuch_messages_collect_tags, and added a corresponding --output=from
to notmuch search then you would get the information you need very
quickly. I think it might be a lot faster as I think the from header is
stored in the database but some other headers are not, so that the
current method the show --body=false needs to look at the actually

I should emphasise that none of the above means I am opposed to the
patch: having respectable built in address-completion support would be
very nice.

Best wishes


> David Edmondson (3):
>   emacs: Allow query to exclude the entire thread and body.
>   emacs: Add `notmuch-user-all-email'.
>   emacs: Add an address completer in elisp.
>  emacs/notmuch-address.el | 49 +++++++++++++++++++++++++++++++++++++++++++-----
>  emacs/notmuch-lib.el     |  4 ++++
>  emacs/notmuch-query.el   |  7 ++++++-
>  3 files changed, 54 insertions(+), 6 deletions(-)
> -- 
> (Apple Git-48)
> _______________________________________________
> notmuch mailing list