diff options
| author | Stephen Leake | 2015-09-01 04:36:05 -0500 |
|---|---|---|
| committer | Stephen Leake | 2015-09-01 05:15:26 -0500 |
| commit | fcdd22dd4be2312aace9cce724f8ae8128b585ac (patch) | |
| tree | e567c51c37e7f6ae6b933bc4d6fd728fda39a7de | |
| parent | b62c0e7bee1dcf74c97e7979fe87b81598d4a4b2 (diff) | |
| download | emacs-fcdd22dd4be2312aace9cce724f8ae8128b585ac.tar.gz emacs-fcdd22dd4be2312aace9cce724f8ae8128b585ac.zip | |
Show all known mode-local overrides in *Help*
* lisp/cedet/mode-local.el (describe-mode-local-overload): Assume Emacs
25. Add all known mode-local overrides.
| -rw-r--r-- | lisp/cedet/mode-local.el | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/lisp/cedet/mode-local.el b/lisp/cedet/mode-local.el index 287e6558b2d..95cf65fdda5 100644 --- a/lisp/cedet/mode-local.el +++ b/lisp/cedet/mode-local.el | |||
| @@ -637,11 +637,10 @@ SYMBOL is a function that can be overridden." | |||
| 637 | (when (get symbol 'mode-local-overload) | 637 | (when (get symbol 'mode-local-overload) |
| 638 | (let ((default (or (intern-soft (format "%s-default" (symbol-name symbol))) | 638 | (let ((default (or (intern-soft (format "%s-default" (symbol-name symbol))) |
| 639 | symbol)) | 639 | symbol)) |
| 640 | (override (and | 640 | (override (with-current-buffer describe-function-orig-buffer |
| 641 | (boundp 'describe-function-orig-buffer) ;; added in Emacs 25 | 641 | (fetch-overload symbol))) |
| 642 | describe-function-orig-buffer | 642 | modes) |
| 643 | (with-current-buffer describe-function-orig-buffer | 643 | |
| 644 | (fetch-overload symbol))))) | ||
| 645 | (insert (overload-docstring-extension symbol) "\n\n") | 644 | (insert (overload-docstring-extension symbol) "\n\n") |
| 646 | (insert (format-message "default function: `%s'\n" default)) | 645 | (insert (format-message "default function: `%s'\n" default)) |
| 647 | (when (and (boundp 'describe-function-orig-buffer) ;; added in Emacs 25 | 646 | (when (and (boundp 'describe-function-orig-buffer) ;; added in Emacs 25 |
| @@ -651,6 +650,19 @@ SYMBOL is a function that can be overridden." | |||
| 651 | describe-function-orig-buffer override)) | 650 | describe-function-orig-buffer override)) |
| 652 | (insert (format-message "\nno override in buffer '%s'\n" | 651 | (insert (format-message "\nno override in buffer '%s'\n" |
| 653 | describe-function-orig-buffer)))) | 652 | describe-function-orig-buffer)))) |
| 653 | |||
| 654 | (mapatoms | ||
| 655 | (lambda (sym) (when (get sym 'mode-local-symbol-table) (push sym modes))) | ||
| 656 | obarray) | ||
| 657 | |||
| 658 | (dolist (mode modes) | ||
| 659 | (let* ((major-mode mode) | ||
| 660 | (override (fetch-overload symbol))) | ||
| 661 | |||
| 662 | (when override | ||
| 663 | (insert (format-message "\noverride in mode ā%sā: ā%sā\n" | ||
| 664 | major-mode override)) | ||
| 665 | ))) | ||
| 654 | ))) | 666 | ))) |
| 655 | 667 | ||
| 656 | (add-hook 'help-fns-describe-function-functions 'describe-mode-local-overload) | 668 | (add-hook 'help-fns-describe-function-functions 'describe-mode-local-overload) |