From abef340a0c5304054a2a5e6d95e1d825501f0e7a Mon Sep 17 00:00:00 2001
From: Sam Steingold <sds@gnu.org>
Date: Tue, 1 Feb 2011 16:22:21 -0500
Subject: * lisp/simple.el (special-mode-map): Bind "h" to `describe-mode';
 bind "z" to `kill-this-buffer'. (completion-list-mode-map): Bind "z" to
 `kill-this-buffer'. * lisp/apropos.el (apropos-mode-map): Inherit from
 `special-mode-map'. (apropos-mode): Inherit from `special-mode'. *
 lisp/arc-mode.el (archive-mode-map): Inherit from `special-mode-map'. *
 lisp/bookmark.el (bookmark-bmenu-mode): Define using `define-derived-mode'
 inheriting from `special-mode'. * lisp/dired.el (dired-mode-map): Inherit
 from `special-mode-map'. * lisp/image-mode.el (image-mode-map): Ditto. *
 lisp/replace.el (occur-mode): Define using `define-derived-mode' inheriting
 from `special-mode'. * lisp/tar-mode.el (tar-mode): Inherit from
 `special-mode'. * lisp/calendar/diary-lib.el (diary-fancy-display-mode):
 Inherit from `special-mode-map'. * lisp/emacs-lisp/ert.el
 (ert-simple-view-mode, ert-results-mode): Inherit from `special-mode'. *
 lisp/emacs-lisp/package.el (package-menu-mode-map): Copy from
 `special-mode-map'. (package-menu-mode): Define using `define-derived-mode'
 inheriting from `special-mode'. * erc/erc-list.el (erc-list-menu-mode):
 Inherit from `special-mode'. * lisp/net/xesam.el (xesam-mode): Inherit from
 `special-mode'. (xesam-mode-map): Define separately. * lisp/play/solitaire.el
 (solitaire-mode): Inherit from `special-mode'. * lisp/progmodes/compile.el
 (compilation-minor-mode-map) (compilation-mode-map): Inherit from
 `special-mode-map'. * lisp/vc/diff-mode.el (diff-mode-shared-map): Inherit
 from `special-mode-map'. * lisp/vc/log-view.el (log-view-mode-map): Add a
 comment.

---
 lisp/progmodes/compile.el | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

(limited to 'lisp/progmodes/compile.el')

diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index df8e044d20a..e243043d668 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -862,7 +862,7 @@ POS and RES.")
                (< (cdr compilation--previous-directory-cache) pos)))
       ;; No need to call previous-single-property-change.
       (cdr compilation--previous-directory-cache)
-   
+
     (let* ((cache (and compilation--previous-directory-cache
                        (<= (car compilation--previous-directory-cache) pos)
                        (car compilation--previous-directory-cache)))
@@ -1711,6 +1711,7 @@ Returns the compilation buffer created."
 
 (defvar compilation-minor-mode-map
   (let ((map (make-sparse-keymap)))
+    (set-keymap-parent map special-mode-map)
     (define-key map [mouse-2] 'compile-goto-error)
     (define-key map [follow-link] 'mouse-face)
     (define-key map "\C-c\C-c" 'compile-goto-error)
@@ -1721,7 +1722,6 @@ Returns the compilation buffer created."
     (define-key map "\M-{" 'compilation-previous-file)
     (define-key map "\M-}" 'compilation-next-file)
     (define-key map "g" 'recompile) ; revert
-    (define-key map "q" 'quit-window)
     ;; Set up the menu-bar
     (define-key map [menu-bar compilation]
       (cons "Errors" compilation-menu-map))
@@ -1755,6 +1755,7 @@ Returns the compilation buffer created."
     ;; Don't inherit from compilation-minor-mode-map,
     ;; because that introduces a menu bar item we don't want.
     ;; That confuses C-down-mouse-3.
+    (set-keymap-parent map special-mode-map)
     (define-key map [mouse-2] 'compile-goto-error)
     (define-key map [follow-link] 'mouse-face)
     (define-key map "\C-c\C-c" 'compile-goto-error)
@@ -1767,10 +1768,7 @@ Returns the compilation buffer created."
     (define-key map "\t" 'compilation-next-error)
     (define-key map [backtab] 'compilation-previous-error)
     (define-key map "g" 'recompile) ; revert
-    (define-key map "q" 'quit-window)
 
-    (define-key map " " 'scroll-up)
-    (define-key map "\^?" 'scroll-down)
     (define-key map "\C-c\C-f" 'next-error-follow-minor-mode)
 
     ;; Set up the menu-bar
-- 
cgit v1.2.1