emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master fcdd22d 1/3: Show all known mode-local overrides in


From: Stephen Leake
Subject: [Emacs-diffs] master fcdd22d 1/3: Show all known mode-local overrides in *Help*
Date: Tue, 01 Sep 2015 10:15:48 +0000

branch: master
commit fcdd22dd4be2312aace9cce724f8ae8128b585ac
Author: Stephen Leake <address@hidden>
Commit: Stephen Leake <address@hidden>

    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.
---
 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 287e655..95cf65f 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."
   (when (get symbol 'mode-local-overload)
     (let ((default (or (intern-soft (format "%s-default" (symbol-name symbol)))
                       symbol))
-         (override (and
-                    (boundp 'describe-function-orig-buffer) ;; added in Emacs 
25
-                    describe-function-orig-buffer
-                    (with-current-buffer describe-function-orig-buffer
-                      (fetch-overload symbol)))))
+         (override (with-current-buffer describe-function-orig-buffer
+                      (fetch-overload symbol)))
+          modes)
+
       (insert (overload-docstring-extension symbol) "\n\n")
       (insert (format-message "default function: `%s'\n" default))
       (when (and (boundp 'describe-function-orig-buffer) ;; added in Emacs 25
@@ -651,6 +650,19 @@ SYMBOL is a function that can be overridden."
                                    describe-function-orig-buffer override))
          (insert (format-message "\nno override in buffer '%s'\n"
                                  describe-function-orig-buffer))))
+
+      (mapatoms
+       (lambda (sym) (when (get sym 'mode-local-symbol-table) (push sym 
modes)))
+       obarray)
+
+      (dolist (mode modes)
+       (let* ((major-mode mode)
+              (override (fetch-overload symbol)))
+
+         (when override
+           (insert (format-message "\noverride in mode ā€˜%sā€™: ā€™%sā€™\n"
+                                   major-mode override))
+            )))
       )))
 
 (add-hook 'help-fns-describe-function-functions 'describe-mode-local-overload)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]