[slime-devel] [patch] default parse spec for custom autodoc

Stanisław Halik sthalik at test123.ltd.pl
Wed Aug 19 21:09:26 UTC 2009


Is this change sane? With it in place, adding custom autodoc keyword
specifiers is as simple as specializing SWANK::EXTRA-KEYWORDS. Without
it, modifying slime-extended-operator-name-parser-alist in Emacs is
required.

diff --git a/contrib/slime-parse.el b/contrib/slime-parse.el
index 020e5f9..3a514e1 100644
--- a/contrib/slime-parse.el
+++ b/contrib/slime-parse.el
@@ -64,6 +64,8 @@ If SKIP-BLANKS-P is true, leading whitespaces &c are skipped.
   (buffer-substring-no-properties (save-excursion (backward-up-list n) (point))
                                   (point)))

+(defvar slime-default-extended-operator-spec
+  '(slime-make-extended-operator-parser/look-ahead 1))

 (defun slime-parse-extended-operator-name (user-point forms indices points)
   "Assume that point is directly at the operator that should be parsed.
@@ -78,7 +80,8 @@ parsing, and are then returned back as multiple values."
       (let* ((current-op (first (first forms)))
              (op-name (upcase (slime-cl-symbol-name current-op)))
              (assoc (assoc op-name slime-extended-operator-name-parser-alist))
-             (entry (cdr assoc))
+             (entry (or (cdr assoc)
+                        slime-default-extended-operator-spec))
              (parser (if (and entry (listp entry)) 
                          (apply (first entry) (rest entry))
                          entry)))





More information about the slime-devel mailing list