]> code.delx.au - gnu-emacs/blobdiff - lisp/erc/erc-list.el
* lisp/simple.el (special-mode-map): Bind "h" to `describe-mode';
[gnu-emacs] / lisp / erc / erc-list.el
index 955b654f927793faf4028ee09a2b519256cbc90c..ae579dba3bd39fb49c15166715b1a5c324cb3728 100644 (file)
          (sort-fields col (point-min) (point-max))
        (sort-numeric-fields col (point-min) (point-max))))))
 
-(defvar erc-list-menu-mode-map
-  (let ((map (make-keymap)))
-    (suppress-keymap map)
-    (define-key map "k" 'erc-list-kill)
-    (define-key map "j" 'erc-list-join)
-    (define-key map "g" 'erc-list-revert)
-    (define-key map "n" 'next-line)
-    (define-key map "p" 'previous-line)
-    (define-key map "q" 'quit-window)
-    map)
-  "Local keymap for `erc-list-mode' buffers.")
-
-(defvar erc-list-menu-sort-button-map nil
-  "Local keymap for ERC list menu mode sorting buttons.")
-
-(unless erc-list-menu-sort-button-map
+(defvar erc-list-menu-sort-button-map
   (let ((map (make-sparse-keymap)))
     (define-key map [header-line mouse-1] 'erc-list-menu-sort-by-column)
     (define-key map [follow-link] 'mouse-face)
-    (setq erc-list-menu-sort-button-map map)))
+    map)
+  "Local keymap for ERC list menu mode sorting buttons.")
 
 ;; Helper function that makes a buttonized column header.
 (defun erc-list-button (title column)
                  'mouse-face 'highlight
                  'keymap erc-list-menu-sort-button-map))
 
-(define-derived-mode erc-list-menu-mode nil "ERC-List"
+(define-derived-mode erc-list-menu-mode special-mode "ERC-List"
   "Major mode for editing a list of irc channels."
   (setq header-line-format
        (concat
 
 (put 'erc-list-menu-mode 'mode-class 'special)
 
+(define-key erc-list-menu-mode-map "k" 'erc-list-kill)
+(define-key erc-list-menu-mode-map "j" 'erc-list-join)
+(define-key erc-list-menu-mode-map "g" 'erc-list-revert)
+(define-key erc-list-menu-mode-map "n" 'next-line)
+(define-key erc-list-menu-mode-map "p" 'previous-line)
+
 ;; Handle a "322" response.  This response tells us about a single
 ;; channel.
 (defun erc-list-handle-322 (proc parsed)