Function: tramp-fuse-handle-directory-files

tramp-fuse-handle-directory-files is a byte-compiled function defined in tramp-fuse.el.gz.

Signature

(tramp-fuse-handle-directory-files DIRECTORY &optional FULL MATCH NOSORT COUNT)

Documentation

Like directory-files for Tramp files.

Source Code

;; Defined in /usr/src/emacs/lisp/net/tramp-fuse.el.gz
(defun tramp-fuse-handle-directory-files
    (directory &optional full match nosort count)
  "Like `directory-files' for Tramp files."
  (let ((result
	 (tramp-skeleton-directory-files directory full match nosort count
	   ;; Some storage systems do not return "." and "..".
	   (delete-dups
	    (append
	     '("." "..")
	     (tramp-fuse-remove-hidden-files
	      (tramp-compat-directory-files
	       (tramp-fuse-local-file-name directory))))))))
    (if full
	;; Massage the result.
	(let ((local (tramp-compat-rx
		      bol
		      (literal
		       (tramp-fuse-mount-point
			(tramp-dissect-file-name directory)))))
	      (remote (directory-file-name
		       (funcall
			(if (tramp-compat-file-name-quoted-p directory)
			    #'tramp-compat-file-name-quote #'identity)
			(file-remote-p directory)))))
	  (mapcar
	   (lambda (x) (replace-regexp-in-string local remote x))
	   result))
      result)))