[slime-cvs] CVS slime/contrib
CVS User nsiivola
nsiivola at common-lisp.net
Fri Apr 13 16:15:40 UTC 2012
Update of /project/slime/cvsroot/slime/contrib
In directory tiger.common-lisp.net:/tmp/cvs-serv32007/contrib
Modified Files:
ChangeLog slime-cl-indent-test.txt slime-cl-indent.el
Log Message:
slime-indentation: correct indentation for &AUX value forms in lambda-lists
--- /project/slime/cvsroot/slime/contrib/ChangeLog 2012/04/13 16:14:57 1.543
+++ /project/slime/cvsroot/slime/contrib/ChangeLog 2012/04/13 16:15:40 1.544
@@ -1,5 +1,13 @@
2012-04-13 Nikodemus Siivola <nikodemus at random-state.net>
+ * slime-cl-indent.el (common-lisp-lambda-list-initial-value-form-p):
+ Handle &AUX as well, and don't signal an error if the we don't
+ have a list where expected.
+ * slime-cl-indent-test.txt (Test 88): Test for indenting &AUX value
+ form.
+
+2012-04-13 Nikodemus Siivola <nikodemus at random-state.net>
+
Wrap long lines.
* slime-cl-indent.el
--- /project/slime/cvsroot/slime/contrib/slime-cl-indent-test.txt 2012/04/04 12:04:42 1.20
+++ /project/slime/cvsroot/slime/contrib/slime-cl-indent-test.txt 2012/04/13 16:15:40 1.21
@@ -926,3 +926,12 @@
&rest rest))
(list foo opt1 opt2
rest))
+
+;;; Test: 88
+
+(defstruct (foo
+ (:constructor make-foo
+ (bar &aux (quux (quux-from-bar bar
+ :for 'foo)))))
+ bar
+ quux)
--- /project/slime/cvsroot/slime/contrib/slime-cl-indent.el 2012/04/13 16:14:58 1.65
+++ /project/slime/cvsroot/slime/contrib/slime-cl-indent.el 2012/04/13 16:15:40 1.66
@@ -1123,9 +1123,10 @@
(point))))
(save-excursion
(backward-sexp)
- (down-list 1)
+ (ignore-errors (down-list 1))
(while (and point (< (point) point))
- (cond ((or (looking-at "&key") (looking-at "&optional"))
+ (cond ((or (looking-at "&key") (looking-at "&optional")
+ (looking-at "&aux"))
(setq state 'key))
((looking-at lisp-indent-lambda-list-keywords-regexp)
(setq state 'x)))
More information about the slime-cvs
mailing list