Mercurial > emacs
changeset 23188:c8b236bbecad
(dired-mark-files-containing-regexp):
Don't use find-file; instead, insert the file in a temp buffer.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Fri, 04 Sep 1998 20:43:09 +0000 |
parents | 205f3fab9564 |
children | ac0f6ede7b66 |
files | lisp/dired.el |
diffstat | 1 files changed, 12 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/dired.el Fri Sep 04 20:41:33 1998 +0000 +++ b/lisp/dired.el Fri Sep 04 20:43:09 1998 +0000 @@ -2165,17 +2165,20 @@ (and (not (looking-at dired-re-dot)) (not (eolp)) ; empty line (let ((fn (dired-get-filename nil t))) - (and fn (save-excursion + (and fn (let ((prebuf (get-file-buffer fn))) + (message "Checking %s" fn) ;; For now we do it inside emacs ;; Grep might be better if there are a lot of files - (message "Checking %s" fn) - (let* ((prebuf (get-file-buffer fn))) - (find-file fn) - (goto-char (point-min)) - (prog1 - (re-search-forward regexp nil t) - (if (not prebuf) (kill-buffer nil)))) - )))) + (if prebuf + (with-current-buffer prebuf + (save-excursion + (goto-char (point-min)) + (re-search-forward regexp nil t))) + (with-temp-buffer + (insert-buffer-contents fn) + (goto-char (point-min)) + (re-search-forward regexp nil t)))) + ))) "matching file"))) (defun dired-flag-files-regexp (regexp)