Function: projectile-dir-files-alien

projectile-dir-files-alien is a byte-compiled function defined in projectile.el.

Signature

(projectile-dir-files-alien DIRECTORY)

Documentation

Get the files for DIRECTORY using external tools.

Source Code

;; Defined in ~/.emacs.d/elpa/projectile-20260310.858/projectile.el
;;; Alien Project Indexing
;;
;; This corresponds to `projectile-indexing-method' being set to hybrid or alien.
;; The only difference between the two methods is that alien doesn't do
;; any post-processing of the files obtained via the external command.
(defun projectile-dir-files-alien (directory)
  "Get the files for DIRECTORY using external tools."
  (let ((vcs (projectile-project-vcs directory)))
    (cond
     ((eq vcs 'git)
      (let* ((files (nconc (projectile-files-via-ext-command directory (projectile-get-ext-command vcs))
                           (projectile-get-sub-projects-files directory vcs)))
             ;; When using git ls-files (not fd), deleted but unstaged
             ;; files are still reported.  Remove them.
             (deleted (unless (and projectile-git-use-fd projectile-fd-executable)
                        (projectile-git-deleted-files directory))))
        (if deleted
            (let ((deleted-set (make-hash-table :test 'equal :size (length deleted))))
              (dolist (f deleted) (puthash f t deleted-set))
              (seq-remove (lambda (f) (gethash f deleted-set)) files))
          files)))
     (t (projectile-files-via-ext-command directory (projectile-get-ext-command vcs))))))