GNU bug report logs - #38231
ido does not respect `ido-read-file-name-non-ido` on directory reads

Previous Next

Package: emacs;

Reported by: JD Smith <jdtsmith <at> gmail.com>

Date: Sat, 16 Nov 2019 15:33:01 UTC

Severity: normal

Tags: fixed

Fixed in version 27.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: JD Smith <jdtsmith <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: ido does not respect `ido-read-file-name-non-ido` on directory reads
Date: Sat, 16 Nov 2019 10:32:39 -0500
[Message part 1 (text/plain, inline)]
While working with the tramp maintainer to implement `tramp-rename-files` (which ido interferes with), I’ve found that ido does not respect `ido-read-file-name-non-ido` when a directory is being read instead of a filename.  This happens for example if the `read-file-name` predicate is `file-directory-p`.  I can’t see a use for ignoring specifically named commands for which the user wishes to disable ido simply because a directory instead of filename is being read.  So this looks like a bug to me. 

This could be solved easily by adding a check to the first `cond` stanza of `ido-read-file-name`:

  (let (filename)
    (cond
     ((and (not (memq this-command ido-read-file-name-non-ido))
	   (or (eq predicate 'file-directory-p)
	       (eq (and (symbolp this-command)
			(get this-command 'ido)) 'dir)
	       (memq this-command ido-read-file-name-as-directory-commands)))
[Message part 2 (text/html, inline)]

This bug report was last modified 5 years and 267 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.