unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* [patch] 21.3 find-dired.el - Add 'g' key to repeat last find command
@ 2005-01-21  8:02 Jari+mail.emacs
  0 siblings, 0 replies; 2+ messages in thread
From: Jari+mail.emacs @ 2005-01-21  8:02 UTC (permalink / raw)



As with dired 'g', the results of find-dired can now be repeated. With log
files and IMAP mail directories, this feature is quite useful.

2005-01-21 Fri  Jari  <jari dot aalto A T cante dot net>

        * find-dired.el (find-dired-revert): New function.
        (find-dir): New variable.
        (find-dired): Added local `revert-buffer-function' and
        restored key 'g' to rerun last find command.


--- find-dired.el	2005-01-21 09:33:59+02	1.1
+++ find-dired.el	2005-01-21 09:56:04+02	1.2
@@ -69,9 +69,23 @@
 (defvar find-args nil
   "Last arguments given to `find' by \\[find-dired].")
 
+(defvar find-dir nil
+  "Last arguments given to `find' by \\[find-dired].")
+
 ;; History of find-args values entered in the minibuffer.
 (defvar find-args-history nil)
 
+(defun find-dired-revert (&optional ignore-auto noconfirm)
+  "Rerun last command `find-dired' command.
+Optional arguments IGNORE-AUTO and NOCONFIRM are not used."
+  (interactive)
+  (let* ((args find-args)
+         (dir  find-dir))
+    (if (and dir args)
+        (find-dired dir args)
+      (message
+       "Find dired: no previous information stored to repeat find."))))
+
 ;;;###autoload
 (defun find-dired (dir args)
   "Run `find' and go into Dired mode on a buffer of the output.
@@ -92,6 +106,7 @@
     ;; Check that it's really a directory.
     (or (file-directory-p dir)
 	(error "find-dired needs a directory: %s" dir))
+    (setq find-dir dir)  ; Save for later use
     (switch-to-buffer (get-buffer-create "*Find*"))
 
     ;; See if there's still a `find' running, and offer to kill
@@ -124,7 +139,8 @@
     ;; This really should rerun the find command, but I don't
     ;; have time for that.
     (use-local-map (append (make-sparse-keymap) (current-local-map)))
-    (define-key (current-local-map) "g" 'undefined)
+    ;; (define-key (current-local-map) "g" 'undefined)
+    (set (make-local-variable 'revert-buffer-function) 'find-dired-revert)
     ;; Set subdir-alist so that Tree Dired will work:
     (if (fboundp 'dired-simple-subdir-alist)
 	;; will work even with nested dired format (dired-nstd.el,v 1.15

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [patch] 21.3 find-dired.el - Add 'g' key to repeat last find command
@ 2005-01-21 21:50 Luc Teirlinck
  0 siblings, 0 replies; 2+ messages in thread
From: Luc Teirlinck @ 2005-01-21 21:50 UTC (permalink / raw)
  Cc: bug-gnu-emacs

(I forgot the subject field in my previous reply.) 

In current CVS, the *Find* buffer can _already_ be reverted using `g'.

Sincerely,

Luc.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-01-21 21:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-01-21 21:50 [patch] 21.3 find-dired.el - Add 'g' key to repeat last find command Luc Teirlinck
  -- strict thread matches above, loose matches on Subject: below --
2005-01-21  8:02 Jari+mail.emacs

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).