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)))