Subject: Re: bug#34292: 26.1; ido-everywhere interferes with find-file

From: Noam Postavsky <[email-masked]>
Date: Mon, 01 Apr 2019 19:37:10 -0400

severity 34292 minor
quit

Dave Abrahams <[email-masked]> writes:

> emacs -Q
>
> evaluate the following elisp:
>
> (make-directory "/tmp/foo/bar/baz" t)
> (require 'ido)
> (ido-everywhere)
> (find-file "/tmp/foo/bar/baz")
> (call-interactively 'find-file)
>
> Now type DEL C-f RET, which should open "/tmp/foo/bar/"
> Instead, nothing happens

So are you looking for something like this?

diff --git i/lisp/ido.el w/lisp/ido.el
index f9a9607a3a..6dcd5bcd99 100644
--- i/lisp/ido.el
+++ w/lisp/ido.el
@@ -1588,6 +1588,8 @@ (define-minor-mode ido-everywhere
   (remove-function read-file-name-function #'ido-read-file-name)
   (remove-function read-buffer-function #'ido-read-buffer)
   (when ido-everywhere
+    (unless ido-mode
+      (error "Can't turn on `ido-everywhere' without `ido-mode'"))
     (add-function :override read-file-name-function #'ido-read-file-name)
     (add-function :override read-buffer-function #'ido-read-buffer)))