[slime-cvs] CVS slime
CVS User nsiivola
nsiivola at common-lisp.net
Thu Jun 16 08:29:17 UTC 2011
Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv24494
Modified Files:
ChangeLog swank.lisp
Log Message:
macro-indentation: try to sort it out
* Restore old default.
* Give slime-indentation the more complex one, and try to address the issues
of the previous attempt at complexity.
--- /project/slime/cvsroot/slime/ChangeLog 2011/06/16 08:28:45 1.2202
+++ /project/slime/cvsroot/slime/ChangeLog 2011/06/16 08:29:17 1.2203
@@ -1,5 +1,7 @@
2011-06-16 Nikodemus Siivola <nikodemus at random-state.net>
+ * swank.lisp (macro-indentation): Restore the old simple version.
+
* swank-sbcl.lisp (compiling-from-buffer-p): PROBE-FILE to
handle cases there the tmp-directory is a symlink.
(compiling-from-file-p): Ditto.
--- /project/slime/cvsroot/slime/swank.lisp 2011/06/14 15:34:18 1.747
+++ /project/slime/cvsroot/slime/swank.lisp 2011/06/16 08:29:17 1.748
@@ -3948,22 +3948,9 @@
nil))
(defun macro-indentation (arglist)
- (labels ((walk (list &optional base)
- (when (consp list)
- (let ((head (car list))
- (n (if base 4 1)))
- (cond ((consp head)
- (let ((indent (walk head)))
- (cons (list* "&whole" n indent) (walk (cdr list) base))))
- ((eq '&body head)
- '("&body"))
- ((member head lambda-list-keywords)
- (if (member head '(&rest &key))
- (list "&rest" n)
- (walk (cdr list) base)))
- (t
- (cons n (walk (cdr list) base))))))))
- (walk arglist t)))
+ (if (well-formed-list-p arglist)
+ (position '&body (remove '&optional (clean-arglist arglist)))
+ nil))
(defun clean-arglist (arglist)
"Remove &whole, &enviroment, and &aux elements from ARGLIST."
More information about the slime-cvs
mailing list