   (define-key svn-status-mode-map [?i] 'svn-status-info)
   (define-key svn-status-mode-map [?=] 'svn-status-show-svn-diff)
   (define-key svn-status-mode-map [?~] 'svn-status-get-specific-revision)
-  (define-key svn-status-mode-map [?E] 'svn-status-ediff-with-revision))
+  (define-key svn-status-mode-map [?E] 'svn-status-ediff-with-revision)
+  (setq svn-status-mode-mark-map (make-sparse-keymap))
+  (define-key svn-status-mode-map "*" svn-status-mode-mark-map)
+  (define-key svn-status-mode-mark-map "!" 'svn-status-unset-all-usermarks))
 
 (when (not svn-status-mode-property-map)
   (setq svn-status-mode-property-map (make-sparse-keymap))

;; m     - svn-status-set-user-mark
;; u     - svn-status-unset-user-mark
;; DEL   - svn-status-unset-user-mark-backwards
;; .     - svn-status-goto-root-or-return
;; f     - svn-status-find-file
;; o     - svn-status-find-file-other-window


(defun svn-status-show-svn-diff (arg)
  (interactive "P")
  (let ((fl (list (svn-status-get-line-information))) ;; was: (svn-status-marked-files))
        (clear-buf t)
        (revision (if arg (svn-status-read-revision-string "Diff with files for version: " "PREV") "BASE")))
    (while fl
