aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/eshell/em-ls.el16
-rw-r--r--lisp/eshell/esh-util.el9
3 files changed, 21 insertions, 11 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index f754ca0b44d..d81e73f34bd 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12010-02-07 Chong Yidong <cyd@stupidchicken.com>
2
3 * eshell/esh-util.el (eshell-file-attributes): New optional arg
4 ID-FORMAT. Pass it to `file-attributes'.
5
6 * eshell/em-ls.el (eshell-do-ls): Use it (Bug#5528).
7
12010-02-07 sj <prime.wizard+emacs@gmail.com> (tiny change) 82010-02-07 sj <prime.wizard+emacs@gmail.com> (tiny change)
2 9
3 * faces.el (set-face-attribute): Allow calling 10 * faces.el (set-face-attribute): Allow calling
diff --git a/lisp/eshell/em-ls.el b/lisp/eshell/em-ls.el
index 094f3ad9bb3..9b008cebf1a 100644
--- a/lisp/eshell/em-ls.el
+++ b/lisp/eshell/em-ls.el
@@ -393,13 +393,13 @@ Sort entries alphabetically across.")
393 (eshell-glob-regexp ignore-pattern)))) 393 (eshell-glob-regexp ignore-pattern))))
394 ;; list the files! 394 ;; list the files!
395 (eshell-ls-entries 395 (eshell-ls-entries
396 (mapcar (function 396 (mapcar (lambda (arg)
397 (lambda (arg) 397 (cons (if (and (eshell-under-windows-p)
398 (cons (if (and (eshell-under-windows-p) 398 (file-name-absolute-p arg))
399 (file-name-absolute-p arg)) 399 (expand-file-name arg)
400 (expand-file-name arg) 400 arg)
401 arg) 401 (eshell-file-attributes
402 (eshell-file-attributes arg)))) 402 arg (if numeric-uid-gid 'integer 'string))))
403 args) 403 args)
404 t (expand-file-name default-directory))) 404 t (expand-file-name default-directory)))
405 (funcall flush-func))) 405 (funcall flush-func)))
@@ -710,7 +710,7 @@ Each member of FILES is either a string or a cons cell of the form
710 (funcall insert-func need-return "\n")))))) 710 (funcall insert-func need-return "\n"))))))
711 711
712(defun eshell-ls-entries (entries &optional separate root-dir) 712(defun eshell-ls-entries (entries &optional separate root-dir)
713 "Output PATH's directory ENTRIES, formatted according to OPTIONS. 713 "Output PATH's directory ENTRIES.
714Each member of ENTRIES may either be a string or a cons cell, the car 714Each member of ENTRIES may either be a string or a cons cell, the car
715of which is the file name, and the cdr of which is the list of 715of which is the file name, and the cdr of which is the list of
716attributes. 716attributes.
diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el
index 7c21e2e3302..1a4c5e1021b 100644
--- a/lisp/eshell/esh-util.el
+++ b/lisp/eshell/esh-util.el
@@ -701,8 +701,11 @@ If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
701 (forward-line))) 701 (forward-line)))
702 entry)) 702 entry))
703 703
704(defun eshell-file-attributes (file) 704(defun eshell-file-attributes (file &optional id-format)
705 "Return the attributes of FILE, playing tricks if it's over ange-ftp." 705 "Return the attributes of FILE, playing tricks if it's over ange-ftp.
706The optional argument ID-FORMAT specifies the preferred uid and
707gid format. Valid values are 'string and 'integer, defaulting to
708'integer. See `file-attributes'."
706 (let* ((file (expand-file-name file)) 709 (let* ((file (expand-file-name file))
707 entry) 710 entry)
708 (if (string-equal (file-remote-p file 'method) "ftp") 711 (if (string-equal (file-remote-p file 'method) "ftp")
@@ -723,7 +726,7 @@ If NOSORT is non-nil, the list is not sorted--its order is unpredictable.
723 (setq entry (cdr fentry)) 726 (setq entry (cdr fentry))
724 (setq entry nil))))) 727 (setq entry nil)))))
725 entry) 728 entry)
726 (file-attributes file)))) 729 (file-attributes file id-format))))
727 730
728(defalias 'eshell-copy-tree 'copy-tree) 731(defalias 'eshell-copy-tree 'copy-tree)
729 732