From 1fc85daee037058b772d7fa2726bc939fae4720c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Kai=20Gro=C3=9Fjohann?= Date: Sun, 22 Sep 2002 13:01:10 +0000 Subject: [PATCH] * dired.el (dired-insert-directory): Always add "--dired" to to SWITCHES for remote files. * files.el (insert-directory): Comment saying that "--dired" might be in the SWITCHES. * net/ange-ftp.el (ange-ftp-ls): Handle "--dired" in LSARGS. (ange-ftp-insert-directory): Comment explaining "--dired" handling. --- lisp/ChangeLog | 10 ++++++++++ lisp/dired.el | 3 +-- lisp/files.el | 3 +++ lisp/net/ange-ftp.el | 5 +++++ 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0907bc2bdf0..a020a64bc27 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,13 @@ +2002-09-22 Kai Gro,b_(Bjohann + + * dired.el (dired-insert-directory): Always add "--dired" to to + SWITCHES for remote files. + * files.el (insert-directory): Comment saying that "--dired" + might be in the SWITCHES. + * net/ange-ftp.el (ange-ftp-ls): Handle "--dired" in LSARGS. + (ange-ftp-insert-directory): Comment explaining "--dired" + handling. + 2002-09-21 Markus Rost * mail/mailabbrev.el (mail-abbrev-make-syntax-table): Give %!._- diff --git a/lisp/dired.el b/lisp/dired.el index de414e0fdc5..71e4dd35d19 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -677,8 +677,7 @@ If HDR is non-nil, insert a header line with the directory name." (let ((opoint (point)) (process-environment (copy-sequence process-environment)) end) - (if (and dired-use-ls-dired - (not (file-remote-p dir))) + (if (or dired-use-ls-dired (file-remote-p dir)) (setq switches (concat "--dired " switches))) ;; We used to specify the C locale here, to force English month names; ;; but this should not be necessary any more, diff --git a/lisp/files.el b/lisp/files.el index 020249dbf23..4a495aab30c 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -3969,6 +3969,9 @@ program specified by `directory-free-space-program' if that is non-nil." ;; dired-insert-headerline ;; dired-after-subdir-garbage (defines what a "total" line is) ;; - variable dired-subdir-regexp +;; - may be passed "--dired" as the first argument in SWITCHES. +;; Filename handlers might have to remove this switch if their +;; "ls" command does not support it. (defun insert-directory (file switches &optional wildcard full-directory-p) "Insert directory listing for FILE, formatted according to SWITCHES. Leaves point after the inserted text. diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el index 54f954dde05..13c23245439 100644 --- a/lisp/net/ange-ftp.el +++ b/lisp/net/ange-ftp.el @@ -2527,6 +2527,8 @@ which can parse the output from a DIR listing for a host of type TYPE.") FILE is the full name of the remote file, LSARGS is any args to pass to the `ls' command, and PARSE specifies that the output should be parsed and stored away in the internal cache." + (when (string-match "^--dired\\s-+" lsargs) + (setq lsargs (replace-match "" nil t lsargs))) ;; If parse is t, we assume that file is a directory. i.e. we only parse ;; full directory listings. (let* ((ange-ftp-this-file (ange-ftp-expand-file-name file)) @@ -4417,6 +4419,9 @@ NEWNAME should be the name to give the new compressed or uncompressed file.") ;; I have preserved (and modernized) those hooks. ;; So the format conversion should be all that is needed. +;; When called from dired, SWITCHES may start with "--dired". +;; `ange-ftp-ls' handles this. + (defun ange-ftp-insert-directory (file switches &optional wildcard full) (let ((short (ange-ftp-abbreviate-filename file)) (parsed (ange-ftp-ftp-name (expand-file-name file))) -- 2.39.2