[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: IDO doesn't honor confirm-nonexistent-file-or-buffer
From: |
Kim F. Storm |
Subject: |
Re: IDO doesn't honor confirm-nonexistent-file-or-buffer |
Date: |
Thu, 07 May 2009 13:38:02 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux) |
Tassilo Horn <address@hidden> writes:
> Hi all,
>
> I like the new find-file behavior with the default setting of
> `confirm-nonexistent-file-or-buffer', because I'm a bad but fast
> typist. ;-)
>
> I use ido-mode, but that doesn't respect this variable and opens a new
> file/buffer without any confirmation, even if the last command was a
> completion command. It would be great if the ido commands would behave
> like the standard find-file and switch-to-buffer commands.
>
> Bye,
> Tassilo
>
Does this patch give the desired result?
*** ido.el.~1.155.~ 2009-01-05 16:30:50.000000000 +0100
--- ido.el 2009-05-07 13:36:09.000000000 +0200
***************
*** 1803,1812 ****
DEFAULT if given is the default item to start with.
If REQUIRE-MATCH is non-nil, an existing file must be selected.
If INITIAL is non-nil, it specifies the initial input string."
- ;; Ido does not implement the `confirm' and
- ;; `confirm-after-completion' values of REQUIRE-MATCH.
- (if (memq require-match '(confirm confirm-after-completion))
- (setq require-match nil))
(let
((ido-cur-item item)
(ido-entry-buffer (current-buffer))
--- 1803,1808 ----
***************
*** 2069,2075 ****
((and require-match
(not (if ido-directory-too-big
(file-exists-p (concat ido-current-directory
ido-final-text))
! (ido-existing-item-p))))
(error "Must specify valid item"))
(t
--- 2065,2075 ----
((and require-match
(not (if ido-directory-too-big
(file-exists-p (concat ido-current-directory
ido-final-text))
! (ido-existing-item-p)))
! (cond
! ((memq require-match '(confirm confirm-after-completion))
! (not (y-or-n-p (format "Create '%s'? " ido-final-text))))
! (t t)))
(error "Must specify valid item"))
(t
***************
*** 2158,2164 ****
(ido-current-directory nil)
(ido-directory-nonreadable nil)
(ido-directory-too-big nil)
! (buf (ido-read-internal 'buffer (or prompt "Buffer: ")
'ido-buffer-history default nil initial)))
;; Choose the buffer name: either the text typed in, or the head
;; of the list of matches
--- 2158,2166 ----
(ido-current-directory nil)
(ido-directory-nonreadable nil)
(ido-directory-too-big nil)
! (require-match (confirm-nonexistent-file-or-buffer))
! (buf (ido-read-internal 'buffer (or prompt "Buffer: ")
'ido-buffer-history default
! require-match initial)))
;; Choose the buffer name: either the text typed in, or the head
;; of the list of matches
***************
*** 2195,2204 ****
(ido-visit-buffer buf method t)))
;; buffer doesn't exist
! ((eq ido-create-new-buffer 'never)
(message "No buffer matching `%s'" buf))
((and (eq ido-create-new-buffer 'prompt)
(not (y-or-n-p (format "No buffer matching `%s', create one? "
buf))))
nil)
--- 2197,2208 ----
(ido-visit-buffer buf method t)))
;; buffer doesn't exist
! ((and (eq ido-create-new-buffer 'never)
! (null require-match))
(message "No buffer matching `%s'" buf))
((and (eq ido-create-new-buffer 'prompt)
+ (null require-match)
(not (y-or-n-p (format "No buffer matching `%s', create one? "
buf))))
nil)
***************
*** 2307,2313 ****
(or prompt "Find file: ")
'ido-file-history
(and (eq method 'alt-file)
buffer-file-name)
! nil initial))))
;; Choose the file name: either the text typed in, or the head
;; of the list of matches
--- 2311,2317 ----
(or prompt "Find file: ")
'ido-file-history
(and (eq method 'alt-file)
buffer-file-name)
!
(confirm-nonexistent-file-or-buffer) initial))))
;; Choose the file name: either the text typed in, or the head
;; of the list of matches
***************
*** 2681,2686 ****
--- 2685,2691 ----
"Exit minibuffer, but make sure we have a match if one is needed."
(interactive)
(if (and (or (not ido-require-match)
+ (memq ido-require-match '(confirm confirm-after-completion))
(ido-existing-item-p))
(not ido-incomplete-regexp))
(exit-minibuffer)))
--
Kim F. Storm <address@hidden> http://www.cua.dk
- IDO doesn't honor confirm-nonexistent-file-or-buffer, Tassilo Horn, 2009/05/07
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer,
Kim F. Storm <=
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Tassilo Horn, 2009/05/07
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Kim F. Storm, 2009/05/08
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Tassilo Horn, 2009/05/08
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Kim F. Storm, 2009/05/08
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Tassilo Horn, 2009/05/08
- Re: IDO doesn't honor confirm-nonexistent-file-or-buffer, Kim F. Storm, 2009/05/09