From: Katsumi Yamaoka <yamaoka@jpl.org> Date: Thu, 26 Jan 2017 22:43:31 +0000 (+0000) Subject: Make `C-h b' work correctly in Gnus article buffer (bug#18257) X-Git-Tag: emacs-26.0.90~870^2~27 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f15bbbec0b11be7bbcde83cf905875b61f24e8bb;p=emacs.git Make `C-h b' work correctly in Gnus article buffer (bug#18257) * lisp/gnus/gnus-art.el (gnus-article-describe-bindings): Ignore summary commands that aren't bound to gnus-article-read-summary-keys keys (bug#18257). --- diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index a0f14402fbf..43e1231914c 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -6846,17 +6846,21 @@ then we display only bindings that start with that prefix." (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