(let ((keymap (copy-keymap gnus-article-mode-map))
(map (copy-keymap gnus-article-send-map))
(sumkeys (where-is-internal 'gnus-article-read-summary-keys))
+ (summap (make-sparse-keymap))
parent agent draft)
(define-key keymap "S" map)
(define-key map [t] nil)
+ (define-key summap [t] 'undefined)
(with-current-buffer gnus-article-current-summary
+ (dolist (key sumkeys)
+ (define-key summap key (key-binding key (current-local-map))))
(set-keymap-parent
keymap
(if (setq parent (keymap-parent gnus-article-mode-map))
(prog1
(setq parent (copy-keymap parent))
- (set-keymap-parent parent (current-local-map)))
- (current-local-map)))
+ (set-keymap-parent parent summap))
+ summap))
(set-keymap-parent map (key-binding "S"))
(let (key def gnus-pick-mode)
(while sumkeys