Announcing introspector.el, for examining faces, extents, etc.
Stephen J. Turnbull
stephen at xemacs.org
Sun Mar 9 06:40:24 EDT 2008
introspector is a package I've had in a sandbox for a while. It's
basically 21.5-ready, but I wanted to put it in xemacs-base and
xemacs-devel so it could be used with 21.4, too. introspector
consists of
- frame-utils.el, providing two functions to create frames with
minimal decorations, such as would be useful with tooltips and the
like. Unfortunately, under 21.4 I've found a focus problem (the tip
frame should not get keyboard focus, but it does) and a decoration
problem (I can't get the title bar to disappear). These probably
aren't show-stopperse, but they're horribly ugly.
- introspector.el, providing a popup version of `what-cursor-position'
which also provides more extensive information such as extents and
faces touching point. This is based on a general framework for
inspecting buffer objects.
I'm not sure how useful the general framework is, but the frame
utilities and the popup `buffer-position-introspector' are quite
useful as they are.
A git repository may be available later, but for now the package is
available as an XEmacs package at
http://turnbull.sk.tsukuba.ac.jp/Tools/XEmacs/introspector-0.80-pkg.tar.gz
Install it as usual. Sorry for the inconvenience, but you'll have to
explicitly load the introspector library. This does two invasive
things:
(1) it binds C-h = to `buffer-position-introspector', and
(2) adds a pre-command-hook to pop down the introspector popup on any
command.
Possibly this should be set up as a minor mode (comments welcome), and
then it would be no problem to have autoloads for the user-visible
entry points.
Testing and suggestions would be greatly appreciated. I think it
would be appropriate to put frame-utils in xemacs-base, if we can work
out the issues with 21.4. I'm of two minds about introspector, it
could go into xemacs-devel, but maybe it should go into xemacs-base
so that all users can use it to gather information for bug reports.
More information about the XEmacs-Beta
mailing list