changeset 47523:78ff9bcb1a38

(diff-mode): Use compilation-minor-mode. Don't unbind compilation-last-buffer after autoload compile.el. Hide the compilation-minor-mode bindings altogether.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Wed, 18 Sep 2002 12:09:07 +0000
parents a58704d2ce3f
children 95ba2ac51138
files lisp/diff-mode.el
diffstat 1 files changed, 9 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/diff-mode.el	Wed Sep 18 12:05:31 2002 +0000
+++ b/lisp/diff-mode.el	Wed Sep 18 12:09:07 2002 +0000
@@ -889,10 +889,14 @@
   	 (substring buffer-file-name 0 (match-beginning 0))))
   ;; Be careful not to change compilation-last-buffer when we're just
   ;; doing a C-x v = (for example).
-  (let ((compilation-last-buffer
-	 (and (boundp 'compilation-last-buffer)
-	      compilation-last-buffer)))
-    (compilation-shell-minor-mode 1))
+  (if (boundp 'compilation-last-buffer)
+      (let ((compilation-last-buffer compilation-last-buffer))
+	(compilation-minor-mode 1))
+    (compilation-minor-mode 1))
+  ;; M-RET and RET should be done by diff-mode because the `compile'
+  ;; support is significantly less good.
+  (add-to-list 'minor-mode-overriding-map-alist
+  	       (cons 'compilation-minor-mode (make-sparse-keymap)))
 
   (when (and (> (point-max) (point-min)) diff-default-read-only)
     (toggle-read-only t))
@@ -903,7 +907,7 @@
     (add-hook 'after-change-functions 'diff-after-change-function nil t)
     (add-hook 'post-command-hook 'diff-post-command-hook nil t))
   ;; Neat trick from Dave Love to add more bindings in read-only mode:
-  (add-to-list (make-local-variable 'minor-mode-overriding-map-alist)
+  (add-to-list 'minor-mode-overriding-map-alist
   	       (cons 'buffer-read-only diff-mode-shared-map))
   ;; add-log support
   (set (make-local-variable 'add-log-current-defun-function)