[slime-cvs] CVS slime/contrib
trittweiler
trittweiler at common-lisp.net
Sat Sep 15 11:09:36 UTC 2007
Update of /project/slime/cvsroot/slime/contrib
In directory clnet:/tmp/cvs-serv28484
Modified Files:
slime-parse.el
Log Message:
* slime-parse.el: Fix extended arglist display on misbalanced
expressions like `(defun foo | ... (defun bar () 'bar)'
Reported by Ariel Badichi.
(slime-inside-string-p): Use `beginning-of-defun' directly than
relying on `slime-region-for-defun-at-point' (as this one uses
`end-of-defun' which signals an error on misbalanced expressions.)
--- /project/slime/cvsroot/slime/contrib/slime-parse.el 2007/09/11 17:04:17 1.6
+++ /project/slime/cvsroot/slime/contrib/slime-parse.el 2007/09/15 11:09:36 1.7
@@ -220,7 +220,14 @@
representation of a form, the string representation of this form
is stripped from the form. This can be important to avoid mutual
recursion between this function, `slime-enclosing-form-specs' and
-`slime-parse-extended-operator-name'."
+`slime-parse-extended-operator-name'.
+
+Examples:
+
+ \"(foo (bar 1 (baz :quux)) 'toto)\"
+
+ => (\"foo\" (\"bar\" \"1\" (\"baz\" \":quux\")) \"'toto\")
+"
(cond ((slime-length= string 0) "")
((equal string "()") '())
(t
@@ -267,9 +274,9 @@
parens.
\(See SWANK::PARSE-FORM-SPEC for more information about what
-exactly constitutes a ``raw form specs''
+exactly constitutes a ``raw form specs'')
-Example:)
+Examples:
A return value like the following
@@ -355,7 +362,7 @@
(if (listp thing) thing (list thing)))
(defun slime-inside-string-p ()
- (let* ((toplevel-begin (first (slime-region-for-defun-at-point)))
+ (let* ((toplevel-begin (save-excursion (beginning-of-defun) (point)))
(parse-result (parse-partial-sexp toplevel-begin (point)))
(inside-string-p (nth 3 parse-result))
(string-start-pos (nth 8 parse-result)))
More information about the slime-cvs
mailing list