diff options
| author | Katsumi Yamaoka | 2017-01-26 22:43:31 +0000 |
|---|---|---|
| committer | Katsumi Yamaoka | 2017-01-26 22:43:31 +0000 |
| commit | f15bbbec0b11be7bbcde83cf905875b61f24e8bb (patch) | |
| tree | 23d4e3480a1764bb38669d0209f6744ba22a8b04 | |
| parent | ffdf409ebbab03799da394ba04e2600dfb9fa217 (diff) | |
| download | emacs-f15bbbec0b11be7bbcde83cf905875b61f24e8bb.tar.gz emacs-f15bbbec0b11be7bbcde83cf905875b61f24e8bb.zip | |
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).
| -rw-r--r-- | lisp/gnus/gnus-art.el | 8 |
1 files changed, 6 insertions, 2 deletions
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." | |||
| 6846 | (let ((keymap (copy-keymap gnus-article-mode-map)) | 6846 | (let ((keymap (copy-keymap gnus-article-mode-map)) |
| 6847 | (map (copy-keymap gnus-article-send-map)) | 6847 | (map (copy-keymap gnus-article-send-map)) |
| 6848 | (sumkeys (where-is-internal 'gnus-article-read-summary-keys)) | 6848 | (sumkeys (where-is-internal 'gnus-article-read-summary-keys)) |
| 6849 | (summap (make-sparse-keymap)) | ||
| 6849 | parent agent draft) | 6850 | parent agent draft) |
| 6850 | (define-key keymap "S" map) | 6851 | (define-key keymap "S" map) |
| 6851 | (define-key map [t] nil) | 6852 | (define-key map [t] nil) |
| 6853 | (define-key summap [t] 'undefined) | ||
| 6852 | (with-current-buffer gnus-article-current-summary | 6854 | (with-current-buffer gnus-article-current-summary |
| 6855 | (dolist (key sumkeys) | ||
| 6856 | (define-key summap key (key-binding key (current-local-map)))) | ||
| 6853 | (set-keymap-parent | 6857 | (set-keymap-parent |
| 6854 | keymap | 6858 | keymap |
| 6855 | (if (setq parent (keymap-parent gnus-article-mode-map)) | 6859 | (if (setq parent (keymap-parent gnus-article-mode-map)) |
| 6856 | (prog1 | 6860 | (prog1 |
| 6857 | (setq parent (copy-keymap parent)) | 6861 | (setq parent (copy-keymap parent)) |
| 6858 | (set-keymap-parent parent (current-local-map))) | 6862 | (set-keymap-parent parent summap)) |
| 6859 | (current-local-map))) | 6863 | summap)) |
| 6860 | (set-keymap-parent map (key-binding "S")) | 6864 | (set-keymap-parent map (key-binding "S")) |
| 6861 | (let (key def gnus-pick-mode) | 6865 | (let (key def gnus-pick-mode) |
| 6862 | (while sumkeys | 6866 | (while sumkeys |