On Fri, Sep 05 2014, Mark Walters wrote: > On Fri, 05 Sep 2014, David Edmondson <dme@dme.org> 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 notmuch-addresses.py (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 > patch. > > 1) You seem to be missing a (require 'std11) somewhere. I did this via M-: > and then it ran fine. My apologies. Will fix (and a compiler warning at the same time). > 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 > notmuch-addresses.py (i normally just use a trivial script that parses > my .mailrc) It's not always as fast as I would like on SSD either :-) The mechanism is very similar to the equivalent Python program, so I think that it's probably about the same. > 3) Have you tried > id:1407771091-12651-1-git-send-email-sojkam1@fel.cvut.cz and do you have > any comments on the comparison? No, I will dig it out and look. > 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 > messages Extending notmuch to help with this was next on my list of things to do. At the moment I just needed a solution that worked. > 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. Cool, thanks!