[slime-devel] Indentation of &body forms in top-level macros broken

Andreas Fuchs asf at boinkor.net
Sat Apr 11 12:21:26 UTC 2009

Hi there,

This change (via the git repo at http://git.boinkor.net/gitweb/slime)
breaks the slime indentation, with or without slime-indentation-fu

92184f83a36befa4e61079aad8c689c5748bf03e is first bad commit
commit 92184f83a36befa4e61079aad8c689c5748bf03e
Author: Tobias C. Rittweiler <trittweiler at common-lisp.net>
Date:   Mon Mar 9 22:51:24 2009 +0000

        * slime.el (slime-define-channel-type): Indulge in pretty colors.
        (slime-define-channel-method): You, too!

        (slime-handle-indentation-update): Always put an indentation
        update on 'slime-indent; for slime-indentation-fu.

Apparently breaks indentation of globally-defined macros, like so:

In slime-scratch, define:
(defmacro foo (bar &body body)
  `(progn ,bar , at body))

(foo 1 <hit return> -> point is below the first argument, not indented
2 spaces relative to the start of the form.

I'm not entirely sure what this change has to do with anything, but
reverting it seems to restore correct indentation behavior for
top-level macros. I don't know about local macros, as I don't use
slime-indentation-fu, but maybe Tobias can tell me, now that he knows
something's broken (-:

Andreas Fuchs, (http://|im:asf@|mailto:asf@)boinkor.net, antifuchs

More information about the slime-devel mailing list