 ;; m     - svn-status-set-user-mark
 ;; u     - svn-status-unset-user-mark
 ;; $     - svn-status-toggle-elide
-;; w     - svn-status-copy-filename-as-kill
+;; w     - svn-status-copy-current-line-info
 ;; DEL   - svn-status-unset-user-mark-backwards
 ;; * !   - svn-status-unset-all-usermarks
 ;; * ?   - svn-status-mark-unknown

                (kbd "DEL"))            ; GNU Emacs
              'svn-status-unset-user-mark-backwards)
  (define-key svn-status-mode-map (kbd "$") 'svn-status-toggle-elide)
  (define-key svn-status-mode-map (kbd "w") 'svn-status-copy-filename-as-kill)
  (define-key svn-status-mode-map (kbd ".") 'svn-status-goto-root-or-return)
  (define-key svn-status-mode-map (kbd "I") 'svn-status-parse-info)
  (define-key svn-status-mode-map (kbd "V") 'svn-status-svnversion)


(defun svn-status-line-info->set-repo-locked (line-info value)
  (setcar (nthcdr 11 line-info) value))

(defun svn-status-copy-current-line-info (arg)
  "Copy the current file name at point, using `svn-status-copy-filename-as-kill'.
If no file is at point, copy everything starting from ':' to the end of line."
  (interactive "P")
  (if (svn-status-get-line-information)
      (svn-status-copy-filename-as-kill arg)
    (save-excursion
      (goto-char (line-beginning-position))
      (when (looking-at ".+?: *\\(.+\\)$")
        (kill-new (match-string-no-properties 1))
        (message "Copied: %s" (match-string-no-properties 1))))))

(defun svn-status-copy-filename-as-kill (arg)
  "Copy the actual file name to the kill-ring.
