Mercurial > emacs
changeset 46450:42a341bf9194
Bind toggle-read-only to C-x C-q.
(toggle-read-only): Display a warning message if the file is under
version control.
author | André Spiegel <spiegel@gnu.org> |
---|---|
date | Tue, 16 Jul 2002 17:40:37 +0000 |
parents | b554160f3810 |
children | 906a7d7104f8 |
files | lisp/files.el |
diffstat | 1 files changed, 20 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/files.el Tue Jul 16 17:37:31 2002 +0000 +++ b/lisp/files.el Tue Jul 16 17:40:37 2002 +0000 @@ -3057,20 +3057,25 @@ With arg, set read-only iff arg is positive. If visiting file read-only and `view-read-only' is non-nil, enter view mode." (interactive "P") - (cond - ((and arg (if (> (prefix-numeric-value arg) 0) buffer-read-only - (not buffer-read-only))) ; If buffer-read-only is set correctly, - nil) ; do nothing. - ;; Toggle. - ((and buffer-read-only view-mode) - (View-exit-and-edit) - (make-local-variable 'view-read-only) - (setq view-read-only t)) ; Must leave view mode. - ((and (not buffer-read-only) view-read-only - (not (eq (get major-mode 'mode-class) 'special))) - (view-mode-enter)) - (t (setq buffer-read-only (not buffer-read-only)) - (force-mode-line-update)))) + (if (and arg + (if (> (prefix-numeric-value arg) 0) buffer-read-only + (not buffer-read-only))) ; If buffer-read-only is set correctly, + nil ; do nothing. + ;; Toggle. + (cond + ((and buffer-read-only view-mode) + (View-exit-and-edit) + (make-local-variable 'view-read-only) + (setq view-read-only t)) ; Must leave view mode. + ((and (not buffer-read-only) view-read-only + (not (eq (get major-mode 'mode-class) 'special))) + (view-mode-enter)) + (t (setq buffer-read-only (not buffer-read-only)) + (force-mode-line-update))) + (if (vc-backend buffer-file-name) + (message (substitute-command-keys + (concat "File is under version-control, " + "consider \\[vc-next-action] to check in/out")))))) (defun insert-file (filename) "Insert contents of file FILENAME into buffer after point. @@ -4144,6 +4149,7 @@ (define-key esc-map "~" 'not-modified) (define-key ctl-x-map "\C-d" 'list-directory) (define-key ctl-x-map "\C-c" 'save-buffers-kill-emacs) +(define-key ctl-x-map "\C-q" 'toggle-read-only) (define-key ctl-x-4-map "f" 'find-file-other-window) (define-key ctl-x-4-map "r" 'find-file-read-only-other-window)