[slime-cvs] CVS slime
CVS User nsiivola
nsiivola at common-lisp.net
Tue Aug 31 10:33:16 UTC 2010
Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv477
Modified Files:
ChangeLog swank-sbcl.lisp
Log Message:
sbcl: Better VOP descriptions for XREF buffers
--- /project/slime/cvsroot/slime/ChangeLog 2010/08/29 00:00:09 1.2132
+++ /project/slime/cvsroot/slime/ChangeLog 2010/08/31 10:33:15 1.2133
@@ -1,3 +1,9 @@
+2010-08-31 Nikodemus Siivola <nikodemus at random-state.net>
+
+ * swank-sbcl.lisp (make-dspec): Elide the function name when
+ generating a VOP description, since the VOP name is more useful
+ and is the first part of the source-description list.
+
2010-08-28 Stas Boukarev <stassats at gmail.com>
* swank-cmucl.lisp (*gdb-program-name*): Determine gdb location
--- /project/slime/cvsroot/slime/swank-sbcl.lisp 2010/08/25 08:20:09 1.275
+++ /project/slime/cvsroot/slime/swank-sbcl.lisp 2010/08/31 10:33:15 1.276
@@ -688,9 +688,18 @@
(getf *definition-types* type)))
(defun make-dspec (type name source-location)
- (list* (definition-specifier type name)
- name
- (sb-introspect::definition-source-description source-location)))
+ (let ((spec (definition-specifier type name))
+ (desc (sb-introspect::definition-source-description source-location)))
+ (if (eq :define-vop spec)
+ ;; The first part of the VOP description is the name of the template
+ ;; -- which is actually good information and often long. So elide the
+ ;; original name in favor of making the interesting bit more visible.
+ ;;
+ ;; The second part of the VOP description is the associated compiler note, or
+ ;; NIL -- which is quite uninteresting and confuses the eye when reading the actual
+ ;; name which usually has a worthwhile postfix. So drop the note.
+ (list spec (car desc))
+ (list* spec name desc))))
(defimplementation find-definitions (name)
(loop for type in *definition-types* by #'cddr
More information about the slime-cvs
mailing list