]> git.eshelyaron.com Git - emacs.git/commitdiff
* recentf.el (recentf-keep-default-predicate): New defun.
authorMichael Albinus <michael.albinus@gmx.de>
Sun, 15 Jul 2007 19:55:14 +0000 (19:55 +0000)
committerMichael Albinus <michael.albinus@gmx.de>
Sun, 15 Jul 2007 19:55:14 +0000 (19:55 +0000)
(recentf-keep): Use it as initial value.

lisp/ChangeLog
lisp/recentf.el

index f888ffba489e80eab4ea4f77e0d13b968d0ecb87..29e342f94eae9628c87a6e22f6813e7b0e1fffc0 100644 (file)
@@ -1,3 +1,8 @@
+2007-07-15  Michael Albinus  <albinus@localhost>
+
+       * recentf.el (recentf-keep-default-predicate): New defun.
+       (recentf-keep): Use it as initial value.
+
 2007-07-15  Karl Fogel  <kfogel@red-bean.com>
 
        * bookmark.el: Revert 2007-07-13T18:16:17Z!kfogel@red-bean.com,
@@ -35,7 +40,7 @@
        * replace.el (match): Use yellow1 instead of yellow.
 
        * progmodes/gdb-ui.el (breakpoint-enabled): Use red1 instead of
-       red. 
+       red.
 
        * pcvs-info.el (cvs-unknown): Likewise.
 
index c55f15c69e966369a8325188bad9bcef2b2ae555..aea7528b2ce43e36d5e1caabd07344cc74f7a51f 100644 (file)
@@ -89,7 +89,7 @@ file.  See also the function `set-file-modes'."
   :group 'recentf
   :type '(choice (const :tag "Don't change" nil)
           integer))
-  
+
 (defcustom recentf-exclude nil
   "*List of regexps and predicates for filenames excluded from the recent list.
 When a filename matches any of the regexps or satisfies any of the
@@ -99,19 +99,27 @@ must return non-nil to exclude it."
   :group 'recentf
   :type '(repeat (choice regexp function)))
 
+(defun recentf-keep-default-predicate (file)
+  "Return non-nil if FILE should be kept in the recent list.
+It handles the case of remote files as well."
+  (cond
+   ((file-remote-p file t) (file-readable-p file))
+   ((file-remote-p file))
+   ((file-readable-p file))))
+
 (defcustom recentf-keep
-  '(file-readable-p)
+  '(recentf-keep-default-predicate)
   "*List of regexps and predicates for filenames kept in the recent list.
 Regexps and predicates are tried in the specified order.
 When nil all filenames are kept in the recent list.
 When a filename matches any of the regexps or satisfies any of the
 predicates it is kept in the recent list.
-The default is to keep readable files.
+The default is to keep readable files.  Remote files are checked
+for readability only in case a connection is established to that
+remote system, otherwise they are kept in the recent list without
+checking their readability.
 A predicate is a function that is passed a filename to check and that
-must return non-nil to keep it.  For example, you can add the
-`file-remote-p' predicate in front of this list to keep remote file
-names in the recent list without checking their readability through a
-remote access."
+must return non-nil to keep it."
   :group 'recentf
   :type '(repeat (choice regexp function)))