summaryrefslogtreecommitdiff
path: root/lisp/dired-x.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2011-02-18 19:53:35 -0800
committerGlenn Morris <rgm@gnu.org>2011-02-18 19:53:35 -0800
commit30abce25f2c78c46994f22d60295c40578097b76 (patch)
tree456b892ad3e7e1d5ddfbfaa36f1c09f0edde8f4c /lisp/dired-x.el
parent4d737eb2db5f2847106fa18713381a72895217e5 (diff)
downloademacs-30abce25f2c78c46994f22d60295c40578097b76.tar.gz
Merge dired-x's dired-add-entry modifications into the main definition.
* lisp/dired-aux.el (dired-add-entry): Give it a doc-string. Merge dired-x's dired-omit handling here. (dired-omit-mode, dired-omit-regexp, dired-omit-localp): Declare. * lisp/dired-x.el (dired-omit-new-add-entry): Merge into dired-add-entry. * doc/misc/dired-x.texi (Technical Details): No longer redefines dired-add-entry.
Diffstat (limited to 'lisp/dired-x.el')
-rw-r--r--lisp/dired-x.el41
1 files changed, 1 insertions, 40 deletions
diff --git a/lisp/dired-x.el b/lisp/dired-x.el
index e591bb5d1d9..0bdf4950a58 100644
--- a/lisp/dired-x.el
+++ b/lisp/dired-x.el
@@ -50,7 +50,7 @@
;; When loaded this code redefines the following functions of GNU Emacs:
;; From dired.el: dired-clean-up-after-deletion, dired-find-buffer-nocreate,
;; and dired-initial-position.
-;; From dired-aux.el: dired-add-entry and dired-read-shell-command.
+;; From dired-aux.el: dired-read-shell-command.
;; *Please* see the `dired-x' info pages for more details.
@@ -589,45 +589,6 @@ Optional fourth argument LOCALP is as in `dired-get-filename'."
(and fn (string-match regexp fn))))
msg)))
-;; Compiler does not get fset.
-(declare-function dired-omit-old-add-entry "dired-x")
-
-;; REDEFINE.
-;; Redefine dired-aux.el's version of `dired-add-entry'
-;; Save old defun if not already done:
-(or (fboundp 'dired-omit-old-add-entry)
- (fset 'dired-omit-old-add-entry (symbol-function 'dired-add-entry)))
-
-;; REDEFINE.
-(defun dired-omit-new-add-entry (filename &optional marker-char relative)
- ;; This redefines dired-aux.el's dired-add-entry to avoid calling ls for
- ;; files that are going to be omitted anyway.
- (if dired-omit-mode
- ;; perhaps return t without calling ls
- (let ((omit-re (dired-omit-regexp)))
- (if (or (string= omit-re "")
- (not
- (string-match omit-re
- (cond
- ((eq 'no-dir dired-omit-localp)
- filename)
- ((eq t dired-omit-localp)
- (dired-make-relative filename))
- (t
- (dired-make-absolute
- filename
- (file-name-directory filename)))))))
- ;; if it didn't match, go ahead and add the entry
- (dired-omit-old-add-entry filename marker-char relative)
- ;; dired-add-entry returns t for success, perhaps we should
- ;; return file-exists-p
- t))
- ;; omitting is not turned on at all
- (dired-omit-old-add-entry filename marker-char relative)))
-
-;; Redefine it.
-(fset 'dired-add-entry 'dired-omit-new-add-entry)
-
;;; VIRTUAL DIRED MODE.