[slime-cvs] CVS slime/contrib

CVS User nsiivola nsiivola at common-lisp.net
Sun May 15 17:18:21 UTC 2011


Update of /project/slime/cvsroot/slime/contrib
In directory common-lisp.net:/tmp/cvs-serv1668/contrib

Modified Files:
	ChangeLog slime-cl-indent.el 
Log Message:
slime-indentation: indent forms following #+foo specially


--- /project/slime/cvsroot/slime/contrib/ChangeLog	2011/05/15 17:17:23	1.443
+++ /project/slime/cvsroot/slime/contrib/ChangeLog	2011/05/15 17:18:21	1.444
@@ -1,3 +1,8 @@
+2011-05-11  Nikodemus Siivola  <nikodemus at random-state.net>
+
+	* slime-cl-indent.el (common-lisp-indent-function-1): Handle
+	#+ and #-. Also support the SBCL idiom of #!+ #!-.
+
 2011-05-10  Nikodemus Siivola  <nikodemus at random-state.net>
 
 	* slime-cl-indent.el: whitespace cleanup.
--- /project/slime/cvsroot/slime/contrib/slime-cl-indent.el	2011/05/15 17:17:23	1.9
+++ /project/slime/cvsroot/slime/contrib/slime-cl-indent.el	2011/05/15 17:18:21	1.10
@@ -334,6 +334,16 @@
                         (not (eq (char-after (- containing-sexp 2)) ?\#)))
                    ;; No indentation for "'(...)" elements
                    (setq calculated (1+ sexp-column)))
+                  ((save-excursion
+                     (goto-char indent-point)
+                     (backward-sexp)
+                     (let ((xxx (buffer-substring-no-properties
+                                 (point) (+ (point) 3))))
+                       (and (eq ?\# (elt xxx 0))
+                            (or (member (elt xxx 1) '(?\+ ?\-))
+                                (and (eq ?\! (elt xxx 1))
+                                     (member (elt xxx 2) '(?\+ ?\-)))))))
+                   normal-indent)
                   ((eq (char-after (1- containing-sexp)) ?\#)
                    ;; "#(...)"
                    (setq calculated (1+ sexp-column)))





More information about the slime-cvs mailing list