emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master f069d85: ; Run find-function-after-hook after findi


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] master f069d85: ; Run find-function-after-hook after finding a symbol
Date: Mon, 25 Apr 2016 17:27:45 +0000

branch: master
commit f069d854508946bcc03e4c77ceb430748e3ab6d7
Author: Tino Calancha <address@hidden>
Commit: Lars Magne Ingebrigtsen <address@hidden>

    ; Run find-function-after-hook after finding a symbol
    
    * lisp/emacs-lisp/find-func.el (find-library):
    * lisp/help-mode.el (help-function-def, help-variable-def):
    Run `find-function-after-hook' inside the help-function of the
    buttons (bug#22583).
---
 etc/NEWS                     |    5 ++++-
 lisp/emacs-lisp/find-func.el |    6 +++++-
 lisp/help-mode.el            |    2 ++
 3 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index eff5472..6bdb648 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -56,7 +56,10 @@ affected by this, as SGI stopped supporting IRIX in December 
2013.
 
 * Changes in Emacs 25.2
 
---
+** `find-library', `help-function-def' and `help-variable-def' now run
+`find-function-after-hook'.
+
+---
 ** 'process-attributes' on Darwin systems now returns more information.
 
 +++
diff --git a/lisp/emacs-lisp/find-func.el b/lisp/emacs-lisp/find-func.el
index 0575ce4..b04a9d2 100644
--- a/lisp/emacs-lisp/find-func.el
+++ b/lisp/emacs-lisp/find-func.el
@@ -283,7 +283,11 @@ LIBRARY should be a string (the name of the library)."
                         "Library name: ")
                       table nil nil nil nil def))))
   (let ((buf (find-file-noselect (find-library-name library))))
-    (condition-case nil (switch-to-buffer buf) (error (pop-to-buffer buf)))))
+    (condition-case nil
+        (prog1
+            (switch-to-buffer buf)
+          (run-hooks 'find-function-after-hook))
+      (error (pop-to-buffer buf)))))
 
 ;;;###autoload
 (defun find-function-search-for-symbol (symbol type library)
diff --git a/lisp/help-mode.el b/lisp/help-mode.el
index 7b95e5f..e008698 100644
--- a/lisp/help-mode.el
+++ b/lisp/help-mode.el
@@ -202,6 +202,7 @@ The format is (FUNCTION ARGS...).")
                   (let ((location
                          (find-function-search-for-symbol fun type file)))
                     (pop-to-buffer (car location))
+                        (run-hooks 'find-function-after-hook)
                     (if (cdr location)
                         (goto-char (cdr location))
                       (message "Unable to find location in file"))))
@@ -231,6 +232,7 @@ The format is (FUNCTION ARGS...).")
                     (setq file (help-C-file-name var 'var)))
                   (let ((location (find-variable-noselect var file)))
                     (pop-to-buffer (car location))
+                    (run-hooks 'find-function-after-hook)
                     (if (cdr location)
                       (goto-char (cdr location))
                       (message "Unable to find location in file"))))



reply via email to

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