--- /dev/null
+Return-Path: <tomi.ollila@iki.fi>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by olra.theworths.org (Postfix) with ESMTP id 2193D431FBD\r
+ for <notmuch@notmuchmail.org>; Sun, 26 Jan 2014 03:10:00 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 0\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]\r
+ autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+ by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id 6m96vEAEJfOj for <notmuch@notmuchmail.org>;\r
+ Sun, 26 Jan 2014 03:09:52 -0800 (PST)\r
+Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34])\r
+ by olra.theworths.org (Postfix) with ESMTP id A7CA8431FBC\r
+ for <notmuch@notmuchmail.org>; Sun, 26 Jan 2014 03:09:52 -0800 (PST)\r
+Received: from guru.guru-group.fi (localhost [IPv6:::1])\r
+ by guru.guru-group.fi (Postfix) with ESMTP id 0BDD5100051;\r
+ Sun, 26 Jan 2014 13:09:46 +0200 (EET)\r
+From: Tomi Ollila <tomi.ollila@iki.fi>\r
+To: David Bremner <david@tethera.net>,\r
+ Mark Walters <markwalters1009@gmail.com>, notmuch@notmuchmail.org\r
+Subject: Re: [PATCH] emacs: initialize ido mode in notmuch-mua.el\r
+In-Reply-To: <87y523mtd1.fsf@zancas.localnet>\r
+References: <87y5sipcjn.fsf@qmul.ac.uk>\r
+ <1329900529-16295-1-git-send-email-markwalters1009@gmail.com>\r
+ <87bnyzoqq9.fsf@zancas.localnet>\r
+ <m2a9ejkb05.fsf@guru.guru-group.fi>\r
+ <87y523mtd1.fsf@zancas.localnet>\r
+User-Agent: Notmuch/0.17+41~g8e7fabf (http://notmuchmail.org) Emacs/24.3.1\r
+ (x86_64-unknown-linux-gnu)\r
+X-Face: HhBM'cA~<r"^Xv\KRN0P{vn'Y"Kd;zg_y3S[4)KSN~s?O\"QPoL\r
+ $[Xv_BD:i/F$WiEWax}R(MPS`^UaptOGD`*/=@\1lKoVa9tnrg0TW?"r7aRtgk[F\r
+ !)g;OY^,BjTbr)Np:%c_o'jj,Z\r
+Date: Sun, 26 Jan 2014 13:09:45 +0200\r
+Message-ID: <m2iot7uhhi.fsf@guru.guru-group.fi>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sun, 26 Jan 2014 11:10:00 -0000\r
+\r
+On Sun, Jan 26 2014, David Bremner <david@tethera.net> wrote:\r
+\r
+> Tomi Ollila <tomi.ollila@iki.fi> writes:\r
+>\r
+>>\r
+>> How about doing it with defadvice with something like:\r
+>>\r
+>> (from http://comments.gmane.org/gmane.emacs.bugs/27856 one can notice\r
+>> this happening with emacs 23.3 -- David can check whether 23.4 if\r
+>> affected)\r
+>\r
+> It's fixed in 23.4\r
+>\r
+>>\r
+>> (if (and (= emacs-major-version 23) (< emacs-minor-version 4))\r
+>> (defadvice ido-completing-read (before notmuch-ido-mode-init activate)\r
+>> (unless (ido-mode) (ido-mode t))\r
+>> (ad-disable-advice 'ido-completing-read 'before 'notmuch-ido-mode-init)))\r
+>\r
+> Advice always seems over complex to me, but maybe I'm just\r
+> prejudiced/ignorant.\r
+\r
+With defadvice we can keep "mainline code less messy and less hard to \r
+maintain" ;) -- and only install the advice on versions that need it.\r
+\r
+Also with defadvice the other use of ido-completing-read is covered.\r
+\r
+> Can you decode/reverse-engineer the fix in \r
+>\r
+> http://permalink.gmane.org/gmane.emacs.bugs/41957\r
+>\r
+> ?\r
+>\r
+> Maybe the advice or whatever should call \r
+>\r
+> (ido-init-completion-maps)\r
+> (add-hook 'minibuffer-setup-hook 'ido-minibuffer-setup)\r
+> (add-hook 'choose-completion-string-functions\r
+> 'ido-choose-completion-string))\r
+>\r
+> Although that looks worryingly permanent.\r
+\r
+(emacs-version) -> 24.3.1\r
+\r
+(describe-variable 'minibuffer-setup-hook)\r
+\r
+-> (rfn-eshadow-setup-minibuffer minibuffer-history-isearch-setup minibuffer-history-initialize)\r
+\r
+(ido-completing-read "test" '("foo" "bar"))\r
+\r
+\r
+(describe-variable 'minibuffer-setup-hook)\r
+\r
+-> (ido-minibuffer-setup rfn-eshadow-setup-minibuffer minibuffer-history-isearch-setup minibuffer-history-initialize)\r
+\r
+SO, although permanent, consistent w/ newer emacs versions...\r
+\r
+> d\r
+\r
+\r
+Tomi\r