Mercurial > emacs
diff lisp/man.el @ 66177:bd98d8a37303
* woman.el (WoMan-xref-man-page): New button type derived
from `Man-abstract-xref-man-page'.
(woman-mode): Pass `WoMan-xref-man-page' to
`Man-highlight-references'.
* man.el (Man-abstract-xref-man-page): New button type.
(Man-xref-man-page): Make it derived from `Man-abstract-xref-man-page'.
(Man-highlight-references): Add new optiolnal argument `xref-man-type'.
author | Masatake YAMATO <jet@gyve.org> |
---|---|
date | Tue, 18 Oct 2005 04:21:51 +0000 |
parents | ed770a0a7846 |
children | 66a34cb7272d 0ca0d9181b5e |
line wrap: on
line diff
--- a/lisp/man.el Tue Oct 18 04:14:36 2005 +0000 +++ b/lisp/man.el Tue Oct 18 04:21:51 2005 +0000 @@ -415,10 +415,18 @@ (define-key Man-mode-map "?" 'describe-mode)) ;; buttons -(define-button-type 'Man-xref-man-page - 'action (lambda (button) (man-follow (button-label button))) +(define-button-type 'Man-abstract-xref-man-page 'follow-link t - 'help-echo "mouse-2, RET: display this man page") + 'help-echo "mouse-2, RET: display this man page" + 'func nil + 'action (lambda (button) (funcall + (button-get button 'func) + (button-label button)))) + +(define-button-type 'Man-xref-man-page + :supertype 'Man-abstract-xref-man-page + 'func 'man-follow) + (define-button-type 'Man-xref-header-file 'action (lambda (button) @@ -903,14 +911,17 @@ 'face Man-overstrike-face))) (message "%s man page formatted" Man-arguments)) -(defun Man-highlight-references () +(defun Man-highlight-references (&optional xref-man-type) "Highlight the references on mouse-over. References include items in the SEE ALSO section, -header file (#include <foo.h>) and files in FILES." +header file (#include <foo.h>) and files in FILES. +If XREF-MAN-TYPE is used as the button type for items +in SEE ALSO section. If it is nil, default type, +`Man-xref-man-page' is used." (let ((dummy 0)) (Man-highlight-references0 Man-see-also-regexp Man-reference-regexp 1 dummy - 'Man-xref-man-page) + (or xref-man-type 'Man-xref-man-page)) (Man-highlight-references0 Man-synopsis-regexp Man-header-regexp 0 2 'Man-xref-header-file)