emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 9f3f7f1ec4: Make ffap-file-finder work again


From: Lars Ingebrigtsen
Subject: master 9f3f7f1ec4: Make ffap-file-finder work again
Date: Tue, 6 Sep 2022 06:26:05 -0400 (EDT)

branch: master
commit 9f3f7f1ec4fdb7152ec5edd5313924fb3575d44f
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Make ffap-file-finder work again
    
    * lisp/ffap.el (find-file-at-point): Allow people to set
    ffap-file-finder again (bug#50279).
    
    * lisp/ido.el (ido-everywhere): Add an interstitial to fulfil
    ffap-file-handler semantics.
---
 lisp/ffap.el | 6 +++---
 lisp/ido.el  | 7 +++++--
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/lisp/ffap.el b/lisp/ffap.el
index 88b4bce9fd..7ea05dccbd 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -1623,9 +1623,9 @@ and `ffap-url-at-point'."
        ((or (not ffap-newfile-prompt)
            (file-exists-p filename)
            (y-or-n-p "File does not exist, create buffer? "))
-       (find-file
-         ;; expand-file-name fixes "~/~/.emacs" bug
-        (expand-file-name filename)))
+       (funcall ffap-file-finder
+                 ;; expand-file-name fixes "~/~/.emacs" bug
+                (expand-file-name filename)))
        ;; User does not want to find a non-existent file:
        ((signal 'file-missing (list "Opening file buffer"
                                    "No such file or directory"
diff --git a/lisp/ido.el b/lisp/ido.el
index 520513b1d2..1d0082da97 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1507,15 +1507,18 @@ Removes badly formatted data and ignored directories."
   (add-hook 'minibuffer-setup-hook #'ido-minibuffer-setup)
   (add-hook 'choose-completion-string-functions 
#'ido-choose-completion-string))
 
+(defun ido--ffap-find-file (file)
+  (find-file file))
+
 (define-minor-mode ido-everywhere
   "Toggle use of Ido for all buffer/file reading."
   :global t
   (remove-function read-file-name-function #'ido-read-file-name)
   (remove-function read-buffer-function #'ido-read-buffer)
   (when (boundp 'ffap-file-finder)
-    (remove-function ffap-file-finder #'ido-find-file)
+    (remove-function ffap-file-finder #'ido--ffap-find-file)
     (when ido-mode
-      (add-function :override ffap-file-finder #'ido-find-file)))
+      (add-function :override ffap-file-finder #'ido--ffap-find-file)))
   (when ido-everywhere
     (if (not ido-mode)
         (ido-mode 'both)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]