Function: vc-rcs-unregister

vc-rcs-unregister is a byte-compiled function defined in vc-rcs.el.gz.

Signature

(vc-rcs-unregister FILE)

Documentation

Unregister FILE from RCS.

If this leaves the RCS subdirectory empty, ask the user whether to remove it.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc-rcs.el.gz
(defun vc-rcs-unregister (file)
  "Unregister FILE from RCS.
If this leaves the RCS subdirectory empty, ask the user
whether to remove it."
  (unless (memq (vc-state file) '(nil unregistered))
    (let* ((master (vc-master-name file))
	   (dir (file-name-directory master))
	   (backup-info (find-backup-file-name master)))
      (if (not backup-info)
	  (delete-file master)
	(rename-file master (car backup-info) 'ok-if-already-exists)
	(dolist (f (cdr backup-info)) (ignore-errors (delete-file f))))
      (and (string= (file-name-nondirectory (directory-file-name dir)) "RCS")
	   ;; check whether RCS dir is empty, i.e. it does not
	   ;; contain any files except "." and ".."
	   (not (directory-files dir nil directory-files-no-dot-files-regexp))
	   (yes-or-no-p (format "Directory %s is empty; remove it? " dir))
	   (delete-directory dir)))))