Function: magit-read-file

magit-read-file is a byte-compiled function defined in magit-files.el.

Signature

(magit-read-file PROMPT &optional TRACKED-ONLY INCLUDE-DIRS)

Source Code

;; Defined in ~/.emacs.d/elpa/magit-20260822.1158/magit-files.el
(defun magit-read-file (prompt &optional tracked-only include-dirs)
  (let* ((files (nconc (magit-list-files)
                       (and (not tracked-only)
                            (magit-untracked-files))))
         (choices
          (if include-dirs
              (let (dirs)
                (dolist (file files)
                  (while (and file
                              (setq file (file-name-parent-directory file))
                              (not (equal file "./")))
                    (if (member file dirs)
                        (setq file nil)
                      (push file dirs))))
                (sort (nconc dirs files) #'string<))
            files)))
    (magit-completing-read
     prompt choices nil t nil nil
     (car (member (or (magit-section-value-if '(file submodule))
                      (magit-file-relative-name nil tracked-only))
                  choices)))))