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.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 38231 in the body.
You can then email your comments to 38231 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#38231; Package emacs. (Sat, 16 Nov 2019 15:33:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to JD Smith <jdtsmith <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 16 Nov 2019 15:33:02 GMT) Full text and rfc822 format available.

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)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#38231; Package emacs. (Sun, 17 Nov 2019 09:42:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: JD Smith <jdtsmith <at> gmail.com>
Cc: 38231 <at> debbugs.gnu.org
Subject: Re: bug#38231: ido does not respect `ido-read-file-name-non-ido` on
 directory reads
Date: Sun, 17 Nov 2019 10:41:09 +0100
JD Smith <jdtsmith <at> gmail.com> writes:

> 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. 

Makes sense.  I've now made a change along the lines suggested by your
code snippet.  (In the future, please send patches -- they're easier to
deal with.)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) fixed. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 17 Nov 2019 09:42:02 GMT) Full text and rfc822 format available.

bug marked as fixed in version 27.1, send any further explanations to 38231 <at> debbugs.gnu.org and JD Smith <jdtsmith <at> gmail.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sun, 17 Nov 2019 09:42:04 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 15 Dec 2019 12:24:06 GMT) Full text and rfc822 format available.

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

Previous Next


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