diff options
| author | Chong Yidong | 2010-02-07 01:23:10 -0500 |
|---|---|---|
| committer | Chong Yidong | 2010-02-07 01:23:10 -0500 |
| commit | a4cc44cf0efd240bdcd2ac9013ea0f20067ccd94 (patch) | |
| tree | 4053b7bfd5b3c5068964e50a9cc3bd3ab2993b4f | |
| parent | c917476d6b5069d8c81675bf7f661ee3ebceb84d (diff) | |
| download | emacs-a4cc44cf0efd240bdcd2ac9013ea0f20067ccd94.tar.gz emacs-a4cc44cf0efd240bdcd2ac9013ea0f20067ccd94.zip | |
Fix to uid/gid format in eshell's ls (Bug#5528).
* eshell/esh-util.el (eshell-file-attributes): New optional arg
ID-FORMAT. Pass it to `file-attributes'.
* eshell/em-ls.el (eshell-do-ls): Use it (Bug#5528).
| -rw-r--r-- | lisp/ChangeLog | 7 | ||||
| -rw-r--r-- | lisp/eshell/em-ls.el | 16 | ||||
| -rw-r--r-- | lisp/eshell/esh-util.el | 9 |
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 @@ | |||
| 1 | 2010-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 | |||
| 1 | 2010-02-07 sj <prime.wizard+emacs@gmail.com> (tiny change) | 8 | 2010-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. |
| 714 | Each member of ENTRIES may either be a string or a cons cell, the car | 714 | Each member of ENTRIES may either be a string or a cons cell, the car |
| 715 | of which is the file name, and the cdr of which is the list of | 715 | of which is the file name, and the cdr of which is the list of |
| 716 | attributes. | 716 | attributes. |
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. |
| 706 | The optional argument ID-FORMAT specifies the preferred uid and | ||
| 707 | gid 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 | ||