[slime-cvs] CVS slime

trittweiler trittweiler at common-lisp.net
Mon Aug 27 15:02:16 UTC 2007


Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv2850

Modified Files:
	swank.lisp 
Log Message:
	* slime.el (slime-sexp-at-point): Fixes a few edge cases were
	Emacs' `(thing-at-point 'sexp)' behaves suboptimally. For example,
	`foo(bar baz)' where point is at the ?\(.
	(slime-internal-scratch-buffer): New. This variable holds an
	internal scratch buffer that can be reused instead of having to
	create a new temporary buffer again and again.
	(slime-make-extended-operator-parser/look-ahead): Uses
	`slime-make-form-spec-from-string' to parse nested expressions
	properly.
	(slime-nesting-until-point): Added docstring.
	(slime-make-form-spec-from-string): Added new optional parameter
	for stripping the operator off the passed string representation of
	a form. Necessary to work in the context of
	`slime-make-extended-operator-parser/look-ahead'. Added safety check
	against a possible endless recursion.

	* swank.lisp (parse-form-spec): Looses restriction for nesting.


--- /project/slime/cvsroot/slime/swank.lisp	2007/08/26 23:34:50	1.500
+++ /project/slime/cvsroot/slime/swank.lisp	2007/08/27 15:02:15	1.501
@@ -1656,7 +1656,7 @@
         ((:type-specifier raw-typespec)
          (parse-extended-spec raw-typespec :type-specifier))
         (t
-         (when (every #'stringp raw-spec)
+         (when (every #'(lambda (x) (or (stringp x) (consp x))) raw-spec)
            (destructuring-bind (raw-operator &rest raw-args) raw-spec
              (multiple-value-bind (operator found?) (parse-symbol raw-operator)
                (when (and found? (valid-operator-symbol-p operator))




More information about the slime-cvs mailing list