4069 |
|
|
4070 |
;;; The Custom Mode. |
;;; The Custom Mode. |
4071 |
|
|
4072 |
(defvar custom-mode-map nil |
(defvar custom-mode-map |
|
"Keymap for `custom-mode'.") |
|
|
|
|
|
(unless custom-mode-map |
|
4073 |
;; This keymap should be dense, but a dense keymap would prevent inheriting |
;; This keymap should be dense, but a dense keymap would prevent inheriting |
4074 |
;; "\r" bindings from the parent map. |
;; "\r" bindings from the parent map. |
4075 |
(setq custom-mode-map (make-sparse-keymap)) |
;; Actually, this misfeature of dense keymaps was fixed on 2001-11-26. |
4076 |
(set-keymap-parent custom-mode-map widget-keymap) |
(let ((map (make-keymap))) |
4077 |
(suppress-keymap custom-mode-map) |
(set-keymap-parent map widget-keymap) |
4078 |
(define-key custom-mode-map " " 'scroll-up) |
(suppress-keymap map) |
4079 |
(define-key custom-mode-map "\177" 'scroll-down) |
(define-key map " " 'scroll-up) |
4080 |
(define-key custom-mode-map "\C-x\C-s" 'Custom-save) |
(define-key map "\177" 'scroll-down) |
4081 |
(define-key custom-mode-map "q" 'Custom-buffer-done) |
(define-key map "\C-x\C-s" 'Custom-save) |
4082 |
(define-key custom-mode-map "u" 'Custom-goto-parent) |
(define-key map "q" 'Custom-buffer-done) |
4083 |
(define-key custom-mode-map "n" 'widget-forward) |
(define-key map "u" 'Custom-goto-parent) |
4084 |
(define-key custom-mode-map "p" 'widget-backward) |
(define-key map "n" 'widget-forward) |
4085 |
(define-key custom-mode-map [mouse-1] 'Custom-move-and-invoke)) |
(define-key map "p" 'widget-backward) |
4086 |
|
(define-key map [mouse-1] 'Custom-move-and-invoke) |
4087 |
|
map) |
4088 |
|
"Keymap for `custom-mode'.") |
4089 |
|
|
4090 |
(defun Custom-move-and-invoke (event) |
(defun Custom-move-and-invoke (event) |
4091 |
"Move to where you click, and if it is an active field, invoke it." |
"Move to where you click, and if it is an active field, invoke it." |