From d77dae5c405ca87a46c3cb00cba3a2b3f19919eb Mon Sep 17 00:00:00 2001 From: Dave Love Date: Wed, 1 Mar 2000 19:07:30 +0000 Subject: [PATCH] (help-xref-button): Add help-echo arg. (describe-function-1, describe-variable, help-make-xrefs): Use it. --- lisp/ChangeLog | 11 +++++++++ lisp/help.el | 66 +++++++++++++++++++++++++++++++++++--------------- 2 files changed, 58 insertions(+), 19 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 81532335dfc..b562b091841 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,14 @@ +2000-03-01 Dave Love + + * help.el (help-xref-button): Add help-echo arg. + (describe-function-1, describe-variable, help-make-xrefs): Use it. + + * faces.el (list-faces-display): Supply help-echo with + help-make-xrefs. + + * facemenu.el (list-text-properties-at): Set help-xref-stack to + nil. + 2000-03-01 Gerd Moellmann * image.el (defimage): Look for image files in load-path. diff --git a/lisp/help.el b/lisp/help.el index 672933d42f7..e88e1571fea 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -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 @@ It can also be nil, if the definition is not associated with any file." (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 @@ It can also be nil, if the definition is not associated with any file." (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 @@ Returns the documentation as a string, also." (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 @@ Returns the documentation as a string, also." (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 @@ that." (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 @@ that." ((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 @@ that." "\\