emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs/lisp dired-aux.el


From: Juri Linkov
Subject: [Emacs-diffs] emacs/lisp dired-aux.el
Date: Sat, 22 Nov 2008 20:40:29 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Juri Linkov <jurta>     08/11/22 20:40:29

Modified files:
        lisp           : dired-aux.el 

Log message:
        (dired-isearch-filenames): Add new context-dependent
        option `dwim'.  Change non-dwim option from `dired-filename' to `t'.
        Doc fix.
        (dired-isearch-filenames-setup): Run filename Isearch only when
        dired-isearch-filenames is t or dired-isearch-filenames is `dwim'
        and the text property `dired-filename' at point is non-nil.
        In this case also set isearch-message-prefix-add to "filename ".
        (dired-isearch-filenames-end): Set isearch-message-prefix-add to nil.
        (dired-isearch-filenames, dired-isearch-filenames-regexp):
        Don't let-bind isearch-message-prefix-add since this is done now
        in dired-isearch-filenames-setup.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/dired-aux.el?cvsroot=emacs&r1=1.182&r2=1.183

Patches:
Index: dired-aux.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/dired-aux.el,v
retrieving revision 1.182
retrieving revision 1.183
diff -u -b -r1.182 -r1.183
--- dired-aux.el        17 Nov 2008 00:43:27 -0000      1.182
+++ dired-aux.el        22 Nov 2008 20:40:28 -0000      1.183
@@ -2304,9 +2304,13 @@
 ;; Search only in file names in the Dired buffer.
 
 (defcustom dired-isearch-filenames nil
-  "*If non-nil, Isearch in Dired matches only file names."
+  "*Non-nil to Isearch in file names only.
+If t, Isearch in Dired always matches only file names.
+If `dwim', Isearch matches file names when initial point position is on
+a file name.  Otherwise, it searches the whole buffer without restrictions."
   :type '(choice (const :tag "No restrictions" nil)
-                (const :tag "Isearch only in file names" dired-filename))
+                (const :tag "When point is on a file name initially, search 
file names" dwim)
+                (const :tag "Always search in file names" t))
   :group 'dired
   :version "23.1")
 
@@ -2329,7 +2333,10 @@
 (defun dired-isearch-filenames-setup ()
   "Set up isearch to search in Dired file names.
 Intended to be added to `isearch-mode-hook'."
-  (when dired-isearch-filenames
+  (when (or (eq dired-isearch-filenames t)
+           (and (eq dired-isearch-filenames 'dwim)
+                (get-text-property (point) 'dired-filename)))
+    (setq isearch-message-prefix-add "filename ")
     (define-key isearch-mode-map "\M-sf" 'dired-isearch-filenames-toggle)
     (setq dired-isearch-filter-predicate-orig
          (default-value 'isearch-filter-predicate))
@@ -2338,6 +2345,7 @@
 
 (defun dired-isearch-filenames-end ()
   "Clean up the Dired file name search after terminating isearch."
+  (setq isearch-message-prefix-add nil)
   (define-key isearch-mode-map "\M-sf" nil)
   (setq-default isearch-filter-predicate dired-isearch-filter-predicate-orig)
   (remove-hook 'isearch-mode-end-hook 'dired-isearch-filenames-end t))
@@ -2354,16 +2362,14 @@
 (defun dired-isearch-filenames ()
   "Search for a string using Isearch only in file names in the Dired buffer."
   (interactive)
-  (let ((dired-isearch-filenames t)
-       (isearch-message-prefix-add "filename "))
+  (let ((dired-isearch-filenames t))
     (isearch-forward)))
 
 ;;;###autoload
 (defun dired-isearch-filenames-regexp ()
   "Search for a regexp using Isearch only in file names in the Dired buffer."
   (interactive)
-  (let ((dired-isearch-filenames t)
-       (isearch-message-prefix-add "filename "))
+  (let ((dired-isearch-filenames t))
     (isearch-forward-regexp)))
 
 




reply via email to

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