         (find-file file-name-with-revision)
         (setq buffer-read-only nil)
         (delete-region (point-min) (point-max))
-        (svn-revision-normal-mode)
         (svn-run-svn nil t 'cat (append (list "cat" "-r" revision) (list file-name)))
         ;;todo: error processing
         ;;svn: Filesystem has no item

      (svn-run-svn t t 'log "log" "--targets" svn-status-temp-arg-file))
    (save-excursion
      (set-buffer "*svn-process*")
      (log-view-mode))))

(defun svn-status-info ()
  "Run `svn info' on all selected files.

  (set-buffer "*svn-log-edit*")
  (erase-buffer))


;; --------------------------------------------------------------------------------
;; svn-log-view-mode:
;; --------------------------------------------------------------------------------

(defvar svn-log-view-mode-map () "Keymap used in `svn-log-view-mode' buffers.")

(when (not svn-log-view-mode-map)
  (setq svn-log-view-mode-map (make-sparse-keymap))
  (define-key svn-log-view-mode-map (kbd "=") 'svn-log-view-diff)
  (define-key svn-log-view-mode-map (kbd "q") 'bury-buffer))
(easy-menu-define svn-log-view-mode-menu svn-log-view-mode-map
"'svn-log-view-mode' menu"
                  '("SVN-LogView"
                    ["Show Changeset" svn-log-view-diff t]))

(defvar svn-log-view-font-lock-keywords
  '(("^r.+" . font-lock-keyword-face)
  "Keywords in svn-log-view-mode."))

(define-derived-mode svn-log-view-mode log-view-mode "svn-log-view"
  "Major Mode to show the output from svn log.
Commands:
\\{svn-log-view-mode-map}
"
  (use-local-map svn-log-view-mode-map)
  (easy-menu-add svn-log-view-mode-menu)
  (set (make-local-variable 'font-lock-defaults) '(svn-log-view-font-lock-keywords t)))

(defun svn-log-view-diff ()
  (interactive)
  (message "Not yet implemented."))

(provide 'psvn)

;;; psvn.el ends here
