Function: vc-dir-clean-files

vc-dir-clean-files is an interactive and byte-compiled function defined in vc-dir.el.gz.

Signature

(vc-dir-clean-files)

Documentation

Delete the marked files, or the current file if no marks.

The files will not be marked as deleted in the version control system; see vc-dir-delete-file.

Probably introduced at or before Emacs version 27.1.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc-dir.el.gz
(defun vc-dir-clean-files ()
  "Delete the marked files, or the current file if no marks.
The files will not be marked as deleted in the version control
system; see `vc-dir-delete-file'."
  (interactive)
  (let* ((files (or (vc-dir-marked-files)
                    (list (vc-dir-current-file))))
         (tracked
          (seq-filter (lambda (file)
                        (not (eq (vc-call-backend vc-dir-backend 'state file)
                                 'unregistered)))
                      files)))
    (when tracked
      (user-error (ngettext "Trying to clean tracked file: %s"
                            "Trying to clean tracked files: %s"
                            (length tracked))
                  (mapconcat #'file-name-nondirectory tracked ", ")))
    (map-y-or-n-p "Delete %s? " #'delete-file files)
    (revert-buffer)))