# HG changeset patch # User Richard M. Stallman # Date 736268434 0 # Node ID d26f75fd9f5e9a45217f24042fc2a2203e95528a # Parent 019278028c547b0a0825836ecf68ea29ffa65273 (vc-mode-line): Don't alter key bindings. (vc-toggle-read-only): Put on C-x C-q unconditionally. (vc-mode): Add permanent-local property. diff -r 019278028c54 -r d26f75fd9f5e lisp/vc-hooks.el --- a/lisp/vc-hooks.el Sat May 01 14:39:32 1993 +0000 +++ b/lisp/vc-hooks.el Sat May 01 15:00:34 1993 +0000 @@ -44,6 +44,7 @@ minor-mode-alist))) (make-variable-buffer-local 'vc-mode) +(put 'vc-mode 'permanent-local t) ;; We need a notion of per-file properties because the version ;; control state of a file is expensive to derive --- we don't @@ -108,13 +109,15 @@ (vc-file-setprop file 'vc-backend (cdr (vc-registered file)))))) (defun vc-toggle-read-only () - "If the file in the current buffer is under version control, perform the -logical next version-control action; otherwise, just toggle the buffer's -read-only flag." + "Change read-only status of current buffer, perhaps via version control. +If the buffer is visiting a file registered with version control, +then check the file in or out. Otherwise, just change the read-only flag +of the buffer." (interactive) (if (vc-backend-deduce (buffer-file-name)) (vc-next-action nil) (toggle-read-only))) +(define-key global-map "\C-x\C-q" 'vc-toggle-read-only) (defun vc-mode-line (file &optional label) "Set `vc-mode' to display type of version control for FILE. @@ -124,9 +127,6 @@ (let ((vc-type (vc-backend-deduce file))) (if vc-type (progn - (if (null (current-local-map)) - (use-local-map (make-sparse-keymap))) - (define-key (current-local-map) "\C-x\C-q" 'vc-toggle-read-only) (setq vc-mode (concat " " (or label (symbol-name vc-type)))))) ;; force update of mode line