Function: rcs-ediff-view-revision

rcs-ediff-view-revision is an interactive and byte-compiled function defined in ediff-vers.el.gz.

Signature

(rcs-ediff-view-revision &optional REV)

Documentation

View previous RCS revision of current file.

With prefix argument, prompts for a revision name.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-vers.el.gz
;; RCS.el support
(defun rcs-ediff-view-revision (&optional rev)
  "View previous RCS revision of current file.
With prefix argument, prompts for a revision name."
  (interactive (list (if current-prefix-arg
			 (read-string "Revision: "))))
  (let* ((filename (buffer-file-name (current-buffer)))
	 (switches (append '("-p")
			   (if rev (list (concat "-r" rev)) nil)))
	 (buff (concat (file-name-nondirectory filename) ".~" rev "~")))
    (message "Working ...")
    (setq filename (expand-file-name filename))
    (with-output-to-temp-buffer buff
      (ediff-with-current-buffer standard-output
	(fundamental-mode))
      (let ((output-buffer (ediff-rcs-get-output-buffer filename buff)))
	(delete-windows-on output-buffer)
	(with-current-buffer output-buffer
	  (apply #'call-process "co" nil t nil
		 ;; -q: quiet (no diagnostics)
		 (append switches rcs-default-co-switches
			 (list "-q" filename)))))
      (message "")
      buff)))