aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1997-03-22 03:39:39 +0000
committerRichard M. Stallman1997-03-22 03:39:39 +0000
commitb2a59df0720eec77cf69330f965afc4c940677e2 (patch)
tree5717ebbb833471ca12cc619e7bf3d5486c2da580
parent481d6f8707dade96f02f91e4bedd4de63f4c6582 (diff)
downloademacs-b2a59df0720eec77cf69330f965afc4c940677e2.tar.gz
emacs-b2a59df0720eec77cf69330f965afc4c940677e2.zip
(dired-fun-in-all-buffers): New arg FILE. Don't operate on buffers
whose wildcard pattern does not accept FILE. All callers changed.
-rw-r--r--lisp/dired-aux.el16
1 files changed, 11 insertions, 5 deletions
diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el
index 5d382ed8272..ebab6fee438 100644
--- a/lisp/dired-aux.el
+++ b/lisp/dired-aux.el
@@ -762,10 +762,14 @@ a prefix arg lets you edit the `ls' switches used for the new listing."
762 (subst-char-in-region opoint (1+ opoint) ?\040 char)))) 762 (subst-char-in-region opoint (1+ opoint) ?\040 char))))
763 (dired-move-to-filename)) 763 (dired-move-to-filename))
764 764
765(defun dired-fun-in-all-buffers (directory fun &rest args) 765(defun dired-fun-in-all-buffers (directory file fun &rest args)
766 ;; In all buffers dired'ing DIRECTORY, run FUN with ARGS. 766 ;; In all buffers dired'ing DIRECTORY, run FUN with ARGS.
767 ;; If the buffer has a wildcard pattern, check that it matches FILE.
768 ;; (FILE does not include a directory component.)
769 ;; FILE may be nil, in which case ignore it.
767 ;; Return list of buffers where FUN succeeded (i.e., returned non-nil). 770 ;; Return list of buffers where FUN succeeded (i.e., returned non-nil).
768 (let ((buf-list (dired-buffers-for-dir (expand-file-name directory))) 771 (let ((buf-list (dired-buffers-for-dir (expand-file-name directory)
772 file))
769 (obuf (current-buffer)) 773 (obuf (current-buffer))
770 buf success-list) 774 buf success-list)
771 (while buf-list 775 (while buf-list
@@ -782,7 +786,7 @@ a prefix arg lets you edit the `ls' switches used for the new listing."
782;;;###autoload 786;;;###autoload
783(defun dired-add-file (filename &optional marker-char) 787(defun dired-add-file (filename &optional marker-char)
784 (dired-fun-in-all-buffers 788 (dired-fun-in-all-buffers
785 (file-name-directory filename) 789 (file-name-directory filename) (file-name-nondirectory filename)
786 (function dired-add-entry) filename marker-char)) 790 (function dired-add-entry) filename marker-char))
787 791
788(defun dired-add-entry (filename &optional marker-char) 792(defun dired-add-entry (filename &optional marker-char)
@@ -887,7 +891,8 @@ a prefix arg lets you edit the `ls' switches used for the new listing."
887;;;###autoload 891;;;###autoload
888(defun dired-remove-file (file) 892(defun dired-remove-file (file)
889 (dired-fun-in-all-buffers 893 (dired-fun-in-all-buffers
890 (file-name-directory file) (function dired-remove-entry) file)) 894 (file-name-directory file) (file-name-nondirectory file)
895 (function dired-remove-entry) file))
891 896
892(defun dired-remove-entry (file) 897(defun dired-remove-entry (file)
893 (save-excursion 898 (save-excursion
@@ -899,6 +904,7 @@ a prefix arg lets you edit the `ls' switches used for the new listing."
899;;;###autoload 904;;;###autoload
900(defun dired-relist-file (file) 905(defun dired-relist-file (file)
901 (dired-fun-in-all-buffers (file-name-directory file) 906 (dired-fun-in-all-buffers (file-name-directory file)
907 (file-name-nondirectory file)
902 (function dired-relist-entry) file)) 908 (function dired-relist-entry) file))
903 909
904(defun dired-relist-entry (file) 910(defun dired-relist-entry (file)
@@ -960,7 +966,7 @@ Special value `always' suppresses confirmation.")
960(defun dired-rename-subdir (from-dir to-dir) 966(defun dired-rename-subdir (from-dir to-dir)
961 (setq from-dir (file-name-as-directory from-dir) 967 (setq from-dir (file-name-as-directory from-dir)
962 to-dir (file-name-as-directory to-dir)) 968 to-dir (file-name-as-directory to-dir))
963 (dired-fun-in-all-buffers from-dir 969 (dired-fun-in-all-buffers from-dir nil
964 (function dired-rename-subdir-1) from-dir to-dir) 970 (function dired-rename-subdir-1) from-dir to-dir)
965 ;; Update visited file name of all affected buffers 971 ;; Update visited file name of all affected buffers
966 (let ((expanded-from-dir (expand-file-name from-dir)) 972 (let ((expanded-from-dir (expand-file-name from-dir))