[slime-devel] Re: [PATCH] improved display of symbols of a package in the Inspector
Tobias C. Rittweiler
tcr at freebits.de
Tue Apr 17 20:12:20 UTC 2007
"Tobias C. Rittweiler" <tcr at freebits.de> writes:
> To make oneself familiar with someone else's code, it's often desirable
> to see what symbols are defined in a package. I've added a special
> inspector page for that purpose that will pop up if you inspect the
> package, and then click on the links to the external/internal symbols.
> The flags are the same as those that are presented in Fuzzy Completion.
I added a button to that page to group the symbols with respect to their
respective classification, e.g. on #<PACKAGE "SWANK">:
BOUNDP
----------------------------------------------------------------
*ACTIVE-THREADS*
*AFTER-INIT-HOOK*
*AUTO-ABBREVIATE-DOTTED-PACKAGES*
*BUFFER-PACKAGE*
*BUFFER-READTABLE*
...
CLASS
----------------------------------------------------------------
%PACKAGE-SYMBOLS-CONTAINER
CONNECTION
FUZZY-MATCHING
KEYWORD-ARG
OPTIONAL-ARG
SWANK-ERROR
FUNCTION
----------------------------------------------------------------
%%MAKE-PACKAGE-SYMBOLS-CONTAINER
%CONTAINER.DESCRIPTION
%CONTAINER.GROUPING-KIND
%CONTAINER.SYMBOLS
...
GENERIC-FUNCTION
----------------------------------------------------------------
ALL-SLOTS-FOR-INSPECTOR
COMPUTE-ENRICHED-DECODED-ARGLIST
EXTRA-KEYWORDS
...
MACRO
----------------------------------------------------------------
ADD-HOOK
DEFINE-SPECIAL
DEFINE-STEPPER-FUNCTION
DEFSLIMEFUN
...
...
Happy Browsing,
-T.
2007-04-17 Tobias C. Rittweiler <INSERT-EMAIL-HERE>
* swank.lisp: Instead of just having all the symbols of a package
listed alphabetically in the inspector page recently introduced
for that purpose, add a button to that page to group them by their
classification.
(%package-symbols-container): New slot GROUPING-KIND.
(%make-package-symbols-container): New function, wraps around
%%MAKE-PACKAGE-SYMBOLS-CONTAINER, which will actually create the
structure. We need this, to make GROUPING-DEFAULT an entirely
internal affair.
(make-symbols-listing): New generic function to dispatch on
GROUPING-KIND.
(make-symbols-listing :symbol): Just the stuff that was priorly
wired into INSPECT-FOR-EMACS (%PACKAGE-SYMBOLS-CONTAINER).
(make-symbols-listing :classification): New; returns the passed
symbols grouped by their classification.
(inspect-for-emacs %package-symbols-container): Most code split
off into MAKE-SYMBOLS-LISTING.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: slime-inspect-grouped-classification.diff
Type: text/x-diff
Size: 9059 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/slime-devel/attachments/20070417/20ac671a/attachment.diff>
More information about the slime-devel
mailing list