]> git.eshelyaron.com Git - emacs.git/commitdiff
Improve the shortdoc link action in *Help* buffers
authorLars Ingebrigtsen <larsi@gnus.org>
Thu, 15 Jul 2021 16:29:27 +0000 (18:29 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 15 Jul 2021 16:29:27 +0000 (18:29 +0200)
* lisp/emacs-lisp/shortdoc.el (shortdoc-display-group): Allow
taking an optional parameter to place point on a specific function.
(shortdoc--display-function): Go to the function in question in
the shortdoc buffer.

lisp/emacs-lisp/shortdoc.el
lisp/help-fns.el

index 1d2c52454bea6d4473d955e377aee9d597366f69..dbf16967bcfe940c5954141c26574494f7d56742 100644 (file)
@@ -1141,8 +1141,9 @@ There can be any number of :example/:result elements."
    :eval (sqrt -1)))
 
 ;;;###autoload
-(defun shortdoc-display-group (group)
-  "Pop to a buffer with short documentation summary for functions in GROUP."
+(defun shortdoc-display-group (group &optional function)
+  "Pop to a buffer with short documentation summary for functions in GROUP.
+If FUNCTION is non-nil, place point on the entry for FUNCTION (if any)."
   (interactive (list (completing-read "Show summary for functions in: "
                                       (mapcar #'car shortdoc--groups))))
   (when (stringp group)
@@ -1173,15 +1174,17 @@ There can be any number of :example/:result elements."
          (setq prev t)
          (shortdoc--display-function data))))
      (cdr (assq group shortdoc--groups))))
-  (goto-char (point-min)))
+  (goto-char (point-min))
+  (when function
+    (text-property-search-forward 'shortdoc-function function t)
+    (beginning-of-line)))
 
 (defun shortdoc--display-function (data)
   (let ((function (pop data))
         (start-section (point))
         arglist-start)
     ;; Function calling convention.
-    (insert (propertize "("
-                        'shortdoc-function t))
+    (insert (propertize "(" 'shortdoc-function function))
     (if (plist-get data :no-manual)
         (insert-text-button
          (symbol-name function)
index afdb0d17b26186e63c3a63795fc61c975f895e74..d3fdb47a3484840b6b360eb7557e93bfa4c1d16b 100644 (file)
@@ -752,7 +752,7 @@ FILE is the file where FUNCTION was probably defined."
            (insert-text-button
             (symbol-name group)
             'action (lambda (_)
-                      (shortdoc-display-group group))
+                      (shortdoc-display-group group object))
             'follow-link t
             'help-echo (purecopy "mouse-1, RET: show documentation group")))
          groups)