On Mon, 30 Jan 2012 10:21:38 +0000, Mark Walters <markwalters1009@gmail.com> wrote: > On Mon, 30 Jan 2012 09:39:32 +0000, David Edmondson <dme@dme.org> wrote: > > On Sun, 29 Jan 2012 23:17:55 +0000, Mark Walters <markwalters1009@gmail.com> wrote: > > > I have been experimenting with notmuch-always-prompt-for-sender on my > > > debian stable setup (emacs 23.2.1) and it doesn't like > > > ido-completing-read. It goes to the minibuffer and then it seems to be > > > impossible to exit the minibuffer. > > > > > > I can find an emacs bug report #3274 and some discussion > > > http://comments.gmane.org/gmane.emacs.bugs/27856 which indicates that it > > > is a problem with ido initialisation. Unfortunately I can't get from there to a > > > solution (except upgrade emacs). > > > > I'm not sure that notmuch-mua.el should be using `ido-completing-read', > > and certainly not without `require'ing it. > > > > Is there a particular thing required that `completing-read' doesn't do? > > Thanks for the suggestion: I can confirm that with ido-completing-read > replaced by completing-read it works nicely. The "ido" version shows the > possibilities for you which is nice, but this works fine. I hadn't realised before but this also goes wrong if you use the prefix argument to mail (eg ctrl-u m). The current code seems to mess up the mini-buffer and even closing the buffer does not get out of it. Changing ido-completing-read read to completing-read seems to fix the problem entirely. Since this will affect most debian stable users (*) I think we should fix it. The trivial patch below works for me but other solutions may be better as they could maintain the benefits of ido-completing-read (eg that it shows the possibilities). Best wishes Mark (*) Perhaps only those who have more than one email address. diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index 023645e..41f82c2 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -191,7 +191,7 @@ the From: header is already filled in by notmuch." ;; Now prompt the user, either for an email address only or for a full identity. (if one-name-only (let ((address - (ido-completing-read (concat "Sender address for " name ": ") addresses + (completing-read (concat "Sender address for " name ": ") addresses nil nil nil 'notmuch-mua-sender-history (car addresses)))) (concat name " <" address ">")) (ido-completing-read "Send mail From: " notmuch-identities -- 1.7.2.3