# HG changeset patch # User Dave Love # Date 951937557 0 # Node ID 62d83c24995e628ea2df5695cc282d80a17bcdc3 # Parent c3e8689514c1a9b3855deb8518b5029816184e5f (help-xref-button): Add help-echo arg. (describe-function-1, describe-variable, help-make-xrefs): Use it. diff -r c3e8689514c1 -r 62d83c24995e lisp/help.el --- a/lisp/help.el Wed Mar 01 19:05:24 2000 +0000 +++ b/lisp/help.el Wed Mar 01 19:05:57 2000 +0000 @@ -1,6 +1,6 @@ ;;; help.el --- help commands for Emacs -;; Copyright (C) 1985, 1986, 1993, 1994, 1998, 1999 Free Software Foundation, Inc. +;; Copyright (C) 1985, 1986, 1993, 1994, 1998, 1999, 2000 Free Software Foundation, Inc. ;; Maintainer: FSF ;; Keywords: help, internal @@ -661,7 +661,8 @@ (save-excursion (save-match-data (if (re-search-backward "alias for `\\([^`']+\\)'" nil t) - (help-xref-button 1 #'describe-function def))))) + (help-xref-button 1 #'describe-function def + "mouse-2, RET: describe this function"))))) (or file-name (setq file-name (symbol-file function))) (if file-name @@ -680,7 +681,8 @@ (find-function-noselect arg))) (pop-to-buffer (car location)) (goto-char (cdr location)))) - function))))) + function + "mouse-2, RET: find function's definition"))))) (if need-close (princ ")")) (princ ".") (terpri) @@ -821,7 +823,9 @@ (re-search-backward (concat "\\(" customize-label "\\)") nil t) (help-xref-button 1 #'(lambda (v) - (customize-variable v)) variable) + (customize-variable v)) + variable + "mouse-2, RET: customize variable") )))) ;; Make a hyperlink to the library if appropriate. (Don't ;; change the format of the buffer's initial line in case @@ -834,12 +838,13 @@ (with-current-buffer "*Help*" (save-excursion (re-search-backward "`\\([^`']+\\)'" nil t) - (help-xref-button 1 (lambda (arg) - (let ((location - (find-variable-noselect arg))) - (pop-to-buffer (car location)) - (goto-char (cdr location)))) - variable))))) + (help-xref-button + 1 (lambda (arg) + (let ((location + (find-variable-noselect arg))) + (pop-to-buffer (car location)) + (goto-char (cdr location)))) + variable "mouse-2, RET: find variable's definition"))))) (print-help-return-message) (save-excursion @@ -1031,7 +1036,8 @@ (save-match-data (unless (string-match "^([^)]+)" data) (setq data (concat "(emacs)" data)))) - (help-xref-button 1 #'info data)))) + (help-xref-button 1 #'info data + "mouse-2, RET: read this Info node")))) ;; Quoted symbols (save-excursion (while (re-search-forward help-xref-symbol-regexp nil t) @@ -1042,15 +1048,29 @@ ((match-string 3) ; `variable' &c (and (boundp sym) ; `variable' doesn't ensure ; it's actually bound - (help-xref-button 6 #'describe-variable sym))) + (help-xref-button + 6 #'describe-variable sym + "mouse-2, RET: describe this variable"))) ((match-string 4) ; `function' &c (and (fboundp sym) ; similarly - (help-xref-button 6 #'describe-function sym))) + (help-xref-button + 6 #'describe-function sym + "mouse-2, RET: describe this function"))) ((match-string 5)) ; nothing for symbol - ((or (boundp sym) (fboundp sym)) + ((and (boundp sym) (fboundp sym)) ;; We can't intuit whether to use the ;; variable or function doc -- supply both. - (help-xref-button 6 #'help-xref-interned sym))))))) + (help-xref-button + 6 #'help-xref-interned sym + "mouse-2, RET: describe this symbol")) + ((boundp sym) + (help-xref-button + 6 #'describe-variable sym + "mouse-2, RET: describe this variable")) + ((fboundp sym) + (help-xref-button + 6 #'describe-function sym + "mouse-2, RET: describe this function"))))))) ;; An obvious case of a key substitution: (save-excursion (while (re-search-forward @@ -1059,7 +1079,9 @@ "\\