From f069d854508946bcc03e4c77ceb430748e3ab6d7 Mon Sep 17 00:00:00 2001 From: Tino Calancha Date: Mon, 25 Apr 2016 19:27:06 +0200 Subject: [PATCH] ; 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 eff5472e1bd..6bdb648a7b0 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 0575ce49f80..b04a9d2dea5 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 7b95e5fb04e..e008698618c 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")))) -- 2.39.2